Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Linux或Windows中更改MTU无效_Linux_Windows_Tcp_Mtu - Fatal编程技术网

在Linux或Windows中更改MTU无效

在Linux或Windows中更改MTU无效,linux,windows,tcp,mtu,Linux,Windows,Tcp,Mtu,我正在调查widows上运行的软件(客户端)的一个问题,该软件将数据上传到linux上运行的控制器(服务器)。软件一次上载1024字节,并等待应用层ACK(send and wait)。然而,一些客户在通过调制解调器上传文件时遇到了一些问题,因为TCP数据包变得支离破碎。我试图在没有调制解调器的情况下重现同样的行为。我尝试使用以下方法将控制器的MTU设置为500: ifconfig eth0 mtu 500 up 但这并没有迫使数据包变得支离破碎(在wireshark中观察到)。当我在wind

我正在调查widows上运行的软件(客户端)的一个问题,该软件将数据上传到linux上运行的控制器(服务器)。软件一次上载
1024
字节,并等待应用层
ACK
send and wait
)。然而,一些客户在通过调制解调器上传文件时遇到了一些问题,因为
TCP数据包
变得支离破碎。我试图在没有调制解调器的情况下重现同样的行为。我尝试使用以下方法将控制器的MTU设置为500:

ifconfig eth0 mtu 500 up
但这并没有迫使数据包变得支离破碎(在wireshark中观察到)。当我在windows中使用

netsh interface ipv4 set subinterface <my_interface> mtu=500 store=persistent

我认为您需要在网络交换机上进行此更改,而不是在机器上进行此更改。@HarryJohnston实际上,我认为
Wireshark
只会在数据包被NIC分割之前显示数据包,如下所述:
MTU path scan to 172.20.35.101, ttl=64, limit=48
# 16 processing - best MSS 1472 (estimated MTU 1500) [pPPPPpPppPpppppp]


        #1 MSS IN RANGE     1 <==  1471 ==>  1472
        #2 MSS EXCEEDED  1473 <== 14911 ==> 16384
ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 30:18:CF:00:10:CC
          inet addr:172.20.35.101  Bcast:172.20.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:576  Metric:1
          RX packets:5281739 errors:1 dropped:0 overruns:0 frame:1
          TX packets:184845 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:378840649 (361.2 MiB)  TX bytes:19017453 (18.1 MiB)