![“iproute”没有“rwnd”选项来管理接收窗口?](https://linux22.com/image/62203/%E2%80%9Ciproute%E2%80%9D%E6%B2%A1%E6%9C%89%E2%80%9Crwnd%E2%80%9D%E9%80%89%E9%A1%B9%E6%9D%A5%E7%AE%A1%E7%90%86%E6%8E%A5%E6%94%B6%E7%AA%97%E5%8F%A3%EF%BC%9F.png)
语境:
我正在对 TCP 窗口整形进行一些自学。我试图控制的场景是,除了正常工作负载之外,客户端还将提取大量数据。我无法真正使用,tc
因为我位于大多数数据的接收端,因此数据包分类/调度/整形是一个没有实际意义的问题。trickle
不像我想要的那样工作(添加了抽象层,并且有多种类型的程序无法使用它)。iptables
尽管有几个模块看起来很接近我想要实现的目标,但我也无法找到一种方法来实现此目的。
问题:
我正在查看该ip route add
命令的手册页,其中包含用于控制 TCP 窗口大小的选项。相关选项有:
window NUMBER
the maximal window for TCP to advertise to these destinations, measured in bytes. It limits maximal data bursts that our TCP
peers are allowed to send to us.
cwnd NUMBER (2.3.15+ only)
the clamp for congestion window. It is ignored if the lock flag is not used.
initcwnd NUMBER
the maximum initial congestion window (cwnd) size in MSS of a TCP connection.
initrwnd NUMBER (2.6.33+ only)
the initial receive window size for connections to this destination. Actual window size is this value multiplied by the MSS of
the connection. The default value is zero, meaning to use Slow Start value.
我的问题是:
- 为什么有一个选项可以在拥塞窗口(即
cwnd
)上显式设置限制,而不是在接收窗口(例如rwnd
)上显式设置限制? window
如果我想控制接收窗口,我将设置的想法(其描述读起来就像它同样影响拥塞和接收窗口)?