学习内容
1.TCP建立链接的3次握手,断开连接的4次挥手
2.TCP报文段组成
内容
1.TCP 建立连接的3次握手?
假设主动方是客户端,被动方是服务端。
第一次 客户端给服务端发送 “hello,我是客户端” (TCP段中 SYN=1)
第二次 服务端给客户端发送"我接收到了。hello,我是客户端" (TCP段中 SYN=1,ACK=1)
第三次 客户端给服务端发送"我接收到了。"(TCP段中ACK=1)
然后连接就建立成功了。
2. TCP断开连接的4次挥手?
假设主动方是客户端,被动方是服务端。
第一次 客户端给服务端发送 “我已经发完,我的发送任务结束了” (TCP段FIN=1,)
第二次 服务端给客户端发送”收到“(TCP段 ACK=1)
第三次 服务端发完要发的,给客户端发送 “我已经发完,我的发送任务结束了” (TCP段 FIN=1)
第四次 客服端给服务端发送"收到"(TCP段 ACK=1),然后客户端等待2MSL的时间后关闭连接。
(如果第二次服务端发给客户端ACK时,也已经发完了,那可以第二次和第三次合并)
3.TCP段结构?
TCP段其实叫TCP报文段,一个TCP报文段包含首部和数据两部分。而首部最短是20个字节,最长是40个字节。
下图中1个字节8位,总共加起来是20个字节。
UDP 头部格式?
UDP的头部是8个字节,是下面图中黄色的部分。但是它有个12个字节的伪首部,而这个伪首部只是临时存在的,既不向下传也不向上递交,只是为了计算校验和。
TCP和IP的关系?
IP包是一种适合运送的车辆,IP协议规定了如何将货物拆分装到车上。车辆从出发地A到目的地B的过程要经过很多站点,IP协议还规定了路线,要经过哪些站点,过站的时候货物不用卸载、检验和重新装车。而TCP像是A、B两地的管理者,它们通过装箱单等手段监测发的货物少了没有,如果少了,就要求A地重新发。
参考书籍:
《网络是怎样连接的 (图灵程序设计丛书)》
《一本书读懂TCP/IP》
https://blog.csdn.net/weixin_43142797/article/details/105648071