基本原理

两个缓冲区:

  • TCP发送缓冲区
  • TCP接收缓冲区
    三个窗口:

  • 接收窗口

  • 发送窗口
  • 拥塞窗口(cwnd, congestion window)
    tcp_wnds

概念

名词

定义

缓冲区

操作系统需要为每个TCP连接分配相对应的接收缓冲区和发送缓冲区。

发送窗口

发送缓冲区能接收数据的字节数(包括已发送但未确认的数据),实际上就是发送缓冲区的大小。

接收窗口

接收缓冲区能接收数据的字节数(不包括未送往应用层的数据),实际上就是接收缓冲区的大小减去未送往应用层数据那部分。

接收窗口的最大值就是接收缓冲区的大小。

拥塞窗口

发送端站在避免拥塞的角度,根据收到的ACK数量计算的发送端应发送的字节数。TCP收到每个ACK都会对拥塞窗口进行更新。