在Linux中,如何设置TCP连接允许的最大段大小?我需要为一个我没有编写的应用程序进行设置(因此我不能使用
我有两个共享同一网络连接的流。一个定期发送小数据包,需要绝对最小的延迟。另一个发送大量数据 - 我正在使用SCP模拟该链接。
我已经设置了流量控制(tc)以使最低延迟的流量具有高优先级。然而,我遇到的问题是,从SCP下来的TCP数据包的大小可以达到64K字节。是的,这些数据包基于MTU被分成更小的数据包,但不幸的是,在tc优先处理数据包之后才会发生这种情况。因此,我的低延迟数据包会被卡在多达64K字节的SCP流量后面。 本文表明在Windows上可以设置此值。
setsockopt
来执行此操作)。我需要将其设置在网络堆栈中的MTU之上。我有两个共享同一网络连接的流。一个定期发送小数据包,需要绝对最小的延迟。另一个发送大量数据 - 我正在使用SCP模拟该链接。
我已经设置了流量控制(tc)以使最低延迟的流量具有高优先级。然而,我遇到的问题是,从SCP下来的TCP数据包的大小可以达到64K字节。是的,这些数据包基于MTU被分成更小的数据包,但不幸的是,在tc优先处理数据包之后才会发生这种情况。因此,我的低延迟数据包会被卡在多达64K字节的SCP流量后面。 本文表明在Windows上可以设置此值。
有没有在Linux上可以设置的东西?我尝试过ip route和iptables,但这些都应用于网络堆栈的较低层。我需要在tc之前限制TCP数据包大小,以便它可以适当地优先处理高优先级数据包。