如何在 TCP/IP 模型中发送速率控制数据包?

网络工程 tcp 网络核心 sdn
2022-02-10 06:33:27

如何在 TCP/IP 堆栈中发送速率控制(250Kb/s、500Kb/s)数据包?因为据我了解,在 tcp 缓冲区填满之后,Tx 数据包就会发生。我的理解是否正确然后如何在缓冲区满之前发送数据包?

1个回答

即使缓冲区未满,您也需要设置 PSH 标志来告诉接收器处理数据。 这是一个很好的解释

考虑一下 Telnet 会话会发生什么,例如,如果 TCP 等到有足够的数据来填充一个数据包才发送一个数据包:在第一个数据包发送到远程设备之前,您必须输入超过一千个字符. 不是很有用。

这就是 PSH 标志的用武之地。TCP 在会话级别提供的套接字可以由应用程序写入,并选择立即“推出”数据,而不是等待其他数据进入缓冲区。发生这种情况时,传出 TCP 数据包中的 PSH 标志设置为 1(打开)。在接收到设置了 PSH 标志的数据包后,连接的另一端知道立即将该段转发给应用程序。