3.3.4 TCP流量控制

TCP的滑动窗口机制不仅能够提高网络的吞吐率,而且还解决了端到端流量控制的问题,它允许接收方根据自己接收数据的能力来限制发送方数据的传输。

TCP滑动窗口协议允许窗口的大小动态调整。在TCP确认报文中,除了确认已经收到的数据信息,还可以包含一个窗口通告信息,用于说明接收方当前接收数据的能力(可以最多接收多少个八位组)。由于窗口通告信息包含在确认信息中,确认信息会导致窗口向前滑动,因此,窗口的大小变化在窗口滑动时发生。

流量控制机制是保证互联网络正常工作的重要技术。流量控制体现在两个独立的方面:

一个是源主机和目的主机之间端到端的流量控制,主要用于协调源主机和目的主机的发送和接收速度。

另一个是IP协议层的流量控制,用于中间系统(如路由器)控制源主机的发送数据能力,避免其发送的通信量超过网络中间系统的处理能力。

网络中间系统过载的现象称为拥塞(congestion),因此,解决中间系统过载的机制也称为拥塞控制(congestion control)机制。

其他流量控制技术:比如,可以直接对网络上的数据包进行存储转发,控制速率;还可以对接受方发送的ACK包进行存储转发,从而控制发送方发送数据包的速率。