TCP通信就跟谈对象一样就像这样:
哈哈娱乐一下,下面进行TCP的通信过程讲解(真的很像的,哈哈)。
常用的TCP标志位,有3个:SYN(synchronous,同步位) ,ACK(acknowledgement,确认位) ,FIN(finish,停止位)
两个常用号码为:Acknowledge numbe(确认号),Sequence number(顺序号)
值得注意的是mss(Maximum Segment Size,最大报文长度,每次传输的最大值)经常使用默认值1460。
第一部分:建立连接操作
- 客户端向服务端发送SYN标志,表示想要建立链接,同时发送己方确认号1000和最大传输报文长度1460
- 服务端向客户端回复SYN标志,表示可以建立链接,同时发送己方确认号5000和由对方确认号得到的顺序号5001,最大传输报文长度1024
- 客户端向服务端发送确认号 5001
第二部分:循环传输
- 服务端向客户端发送确认号1001和顺序号5001,并传输198个字节数据。
- 客户端向服务端发送确认号5199和顺序号1001,并,传输20个字节数据。
- 客户端向服务端发送确认号 1021
第三部分:断开连接操作
- 客户端向服务端发送FIN标志,表示想要断开链接,同时发送确认号5199和序列号1021
- 服务端向客户端发送确认号 1022
- 服务端向客户端回复发送FIN标志,表示可以断开链接,同时发送确认号1022和序列号5199
- 客户端向服务端发送确认号 5200
TCP的通信全过程甘特图展示