标签:ber tcp 流程 0.00 space ini nbsp break auth
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。
一个生活中的场景。你要打电话给一个朋友,先拨号,朋友听到电话铃声后提起电话,这时你和你的朋友就建立起了连接,就可以讲话了。等交流结束,挂断电话结束此次交谈。 生活中的场景就解释了这工作原理。
先看理论图
这些都是底层实现的,在socket中都不用写这些,只需要明白其中原理就行,
三次握手:
三次握手:客户端先给服务端发送一个syn请求,如果客户端收到就回复一个ack,客户端收到服务端的消息后,也会回复一个ack表示能收到对方的消息:
其实三次握手就是:保证服务端和客户端都能接收到对方的消息
四次挥手:
客户端给服务端发送消息说:自己发送完了,问服务端是否还有消息:
服务端将数据发送完毕
服务端发送消息说自己发送完毕,并准备关闭链接
客户端也关闭链接
通俗的来说就是:
三次握手: 通俗的来讲就是 A和B打电话
第一次握手 : 你好, 我是A, 你能听到我说话吗
第二次握手 : 听到了, 我是B, 你能听到我说话吗
第三次握手 : 听到了, 我们可以开始聊天了
三次握手其实就是为了检测双方的发送和接收能力是否正常, 你说呢?
四次挥手
第一次挥手 : A告诉B, 我没数据发了, 准备关闭连接了, 你要发送数据吗
第二次挥手 : B发送最后的数据
第三次挥手 : B告诉A, 我也要关闭连接了
第四次挥手 : A告诉B你可以关闭了, 我这边也关闭了
scoket编程请看下一篇文章
标签:ber tcp 流程 0.00 space ini nbsp break auth
原文地址:https://www.cnblogs.com/xiaokang01/p/9057004.html