TCP

TCP

传输控制协议
4个 512字节的segment以独立的IP报文发送,
接收方将2048字节的数据在 1次read 调用中传递给应用程序。
即使这些数据以1K的大小发送,接收方也按自己的方式读取,都以字节为单位(发送与接收速率大小不同步——类比:蓄水池

1、 TCP连接是字节流 (UDP是数据报message模式)。

2、TCP对传输的每个字节(32位)编号——这32位用确认号和滑动窗口机制

3、段长限制因素:
适合IP协议的65515的有效载荷
每个网络都有一个最大传传输单元(MTU,maximum transfer unit),才能以单个不分段的数据包发送和接收(MTU通常为1500B) 。

TCP Segment Header

1、TCP 段起始是一个固定格式的20B头。
2、数据最多为65535-20-20=65495个字节
3、第一个20是IP头,第二个20是TCP头
4、没有任何数据的TCP段也是合法的,用作确认与控制消息

TCP建立连接

TCP
TCP

TCP连接释放

1、任一方都可发送FIN=1的TCP字段 ——表示它不再发出数据了。
当这个FIN被确认后,这个方向的连接就关闭了。但另一个方向的通信不受影响。
当两个方向都关闭后,该连接才释放。

2、通常释放连接需要4个TCP字段
每个方向一个FIN、一个ACK。
被动方可以将ACK与FIN包含在同一个字段中(3个TCP字段)。

相关文章:

  • 2021-11-07
  • 2021-06-21
  • 2021-10-27
  • 2022-01-09
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-10
  • 2021-10-10
  • 2021-05-20
  • 2022-01-19
  • 2021-12-26
  • 2021-11-28
  • 2022-12-23
相关资源
相似解决方案