CPU:RK3288
系統:Android 5.1
MTU:通信術語 最大傳輸單元(Maximum Transmission Unit,MTU)是指一種通信協議的某一層上面所能通過的最大數據包大小(以字節為單位)。
查看當前網絡mtu:
8000 已經超出了當前的 mtu,所以報錯,並且后面括號中顯示了當前網絡 mtu 值為 1500
root@rk3288:/ # ping -c 2 -M do -s 8000 www.baidu.com ping -c 2 -M do -s 8000 www.baidu.com PING www.a.shifen.com (14.215.177.38) 8000(8028) bytes of data. From android-59027ac919feb197 (192.168.0.178): icmp_seq=1 Frag needed and DF set (mtu = 1500) From android-59027ac919feb197 (192.168.0.178): icmp_seq=1 Frag needed and DF set (mtu = 1500) --- www.a.shifen.com ping statistics --- 0 packets transmitted, 0 received, +2 errors
臨時修改測試,設備重啟后就恢復原始值
1、4G網絡
# 查看4G網絡mtu root@rk3288:/ # cat /sys/class/net/ppp0/mtu cat /sys/class/net/ppp0/mtu 1500 # 修改mtu root@rk3288:/ # echo 1492 > /sys/class/net/ppp0/mtu echo 1492 > /sys/class/net/ppp0/mtu root@rk3288:/ # cat /sys/class/net/ppp0/mtu cat /sys/class/net/ppp0/mtu 1492
2、WLAN
# 查看wifi網絡mtu root@rk288:/ # cat /sys/class/net/wlan0/mtu cat /sys/class/net/wlan0/mtu 1500 # 修改wifi網絡mtu root@rk3288:/ # echo 1492 > /sys/class/net/wlan0/mtu root@rk3288:/ # cat /sys/class/net/wlan0/mtu 1492
3、以太網
# 查看以太網mtu root@rk3288:/ # cat /sys/class/net/eth0/mtu cat /sys/class/net/eth0/mtu 1500 # 修改以太網mtu root@rk3288:/ # echo 1492 > /sys/class/net/eth0/mtu echo 1492 > /sys/class/net/eth0/mtu 1|root@rk3288:/ # cat /sys/class/net/eth0/mtu cat /sys/class/net/eth0/mtu 1500 # 修改失敗 # 設備上關閉以太網,不要拔掉網線 #修改以太網mtu root@rk3288:/ # echo 1492 > /sys/class/net/eth0/mtu echo 1492 > /sys/class/net/eth0/mtu # 修改成功 root@rk3288:/ # cat /sys/class/net/eth0/mtu cat /sys/class/net/eth0/mtu 1492
固定網絡的 mtu,重啟后不恢復
以太網
diff --git a/kernel/include/uapi/linux/if_ether.h b/kernel/include/uapi/linux/if_ether.h index ade07f1..0b780bf 100755 --- a/kernel/include/uapi/linux/if_ether.h +++ b/kernel/include/uapi/linux/if_ether.h @@ -31,7 +31,7 @@ #define ETH_ALEN 6 /* Octets in one ethernet addr */ #define ETH_HLEN 14 /* Total octets in header. */ #define ETH_ZLEN 60 /* Min. octets in frame sans FCS */ -#define ETH_DATA_LEN 1500 /* Max. octets in payload */ +#define ETH_DATA_LEN 1492 /* Max. octets in payload */ #define ETH_FRAME_LEN 1514 /* Max. octets in frame sans FCS */ #define ETH_FCS_LEN 4 /* Octets in the FCS */
