1 |
>>> MTU is per network interface but you really don't want to end up having |
2 |
>>> your router fragment every IP packet because systems on your subnet are |
3 |
>>> using a larger MTU. |
4 |
>>> |
5 |
>>> Todd |
6 |
>> |
7 |
>>That makes sense. So in my case, I'm thinking 1492 MTU on every |
8 |
>>interface in the network. |
9 |
>> |
10 |
>>So I'm sure I understand, should everyone with a DSL connection set an |
11 |
>>MTU of 1492 (or potentially lower) on all of their network interfaces |
12 |
>>to avoid packet fragmentation? |
13 |
> |
14 |
> That depends on your traffic flow. But, then again, 8 bytes out of |
15 |
> 1500 means that you're "losing" just 0.533% of the maximum payload and |
16 |
> fragmenting can mean you have to send/recv 2 Frames for each 1500 Byte |
17 |
> packet you see locally. |
18 |
> |
19 |
> |
20 |
> I've just tested that (with the MTU set at 1492, so with the ping |
21 |
> overhead of 28 bytes, that leaves 1464 ping-payload without fragmenting) |
22 |
> ("ping -M do" disallows, "-M dont" allows fragmenting). |
23 |
> |
24 |
> |
25 |
> $ ping -n -c 1 -M do -s 1465 www.dslreports.com |
26 |
> PING www.dslreports.com (64.91.255.98) 1465(1493) bytes of data. |
27 |
> From 192.168.178.11 icmp_seq=1 Frag needed and DF set (mtu = 1492) |
28 |
> |
29 |
> --- www.dslreports.com ping statistics --- |
30 |
> 0 packets transmitted, 0 received, +1 errors |
31 |
> |
32 |
> ==== corresponding tcpdump -n -i eth0 icmp ==== |
33 |
> [nothing] |
34 |
> ==== |
35 |
> |
36 |
> |
37 |
> Ok, go down a byte: |
38 |
> |
39 |
> |
40 |
> $ ping -n -c 1 -M do -s 1464 www.dslreports.com |
41 |
> PING www.dslreports.com (64.91.255.98) 1464(1492) bytes of data. |
42 |
> 1472 bytes from 64.91.255.98: icmp_seq=1 ttl=51 time=136 ms |
43 |
> |
44 |
> --- www.dslreports.com ping statistics --- |
45 |
> 1 packets transmitted, 1 received, 0% packet loss, time 0ms |
46 |
> rtt min/avg/max/mdev = 136.638/136.638/136.638/0.000 ms |
47 |
> |
48 |
> ==== corresponding tcpdump -n -i eth0 icmp ==== |
49 |
> 15:48:39.587143 IP 192.168.178.11 > 64.91.255.98: ICMP echo request, id 3656, seq 1, length 1472 |
50 |
> 15:48:39.723751 IP 64.91.255.98 > 192.168.178.11: ICMP echo reply, id 3656, seq 1, length 1472 |
51 |
> ==== |
52 |
> |
53 |
> |
54 |
> One packet sent and received for 1492 bytes packet size / 1464 bytes payload. |
55 |
> |
56 |
> |
57 |
> $ ping -n -c 1 -M dont -s 1465 www.dslreports.com |
58 |
> PING www.dslreports.com (64.91.255.98) 1465(1493) bytes of data. |
59 |
> 1473 bytes from 64.91.255.98: icmp_seq=1 ttl=51 time=137 ms |
60 |
> |
61 |
> --- www.dslreports.com ping statistics --- |
62 |
> 1 packets transmitted, 1 received, 0% packet loss, time 0ms |
63 |
> rtt min/avg/max/mdev = 137.888/137.888/137.888/0.000 ms |
64 |
> |
65 |
> ==== corresponding tcpdump -n -i eth0 icmp ==== |
66 |
> 15:47:07.983484 IP 192.168.178.11 > 64.91.255.98: ICMP echo request, id 3595, seq 1, length 1472 |
67 |
> 15:47:07.983494 IP 192.168.178.11 > 64.91.255.98: icmp |
68 |
> 15:47:08.121308 IP 64.91.255.98 > 192.168.178.11: ICMP echo reply, id 3595, seq 1, length 1472 |
69 |
> 15:47:08.121343 IP 64.91.255.98 > 192.168.178.11: icmp |
70 |
> ==== |
71 |
> |
72 |
> |
73 |
> Two packets sent and received for 1493 bytes packet size / 1465 bytes |
74 |
> ping-payload. |
75 |
> |
76 |
> Try with e.g. 'ping -c 4 -M dont -s 1472 www.dslreports.com' for |
77 |
> yourself to see, that you'll send/recv 2 packets for each ping-packet |
78 |
> (and 1472 bytes is the ping-payload that just fits into the standard |
79 |
> 1500 bytes MTU). |
80 |
|
81 |
|
82 |
Strangely, I'm able to ping with that command even with a very high -s value: |
83 |
|
84 |
$ ping -c 4 -M dont -s 9999 www.dslreports.com |
85 |
PING www.dslreports.com (64.91.255.98) 9999(10027) bytes of data. |
86 |
10007 bytes from www.dslreports.com (64.91.255.98): icmp_seq=1 ttl=54 |
87 |
time=331 ms |
88 |
10007 bytes from www.dslreports.com (64.91.255.98): icmp_seq=2 ttl=54 |
89 |
time=329 ms |
90 |
10007 bytes from www.dslreports.com (64.91.255.98): icmp_seq=3 ttl=54 |
91 |
time=329 ms |
92 |
10007 bytes from www.dslreports.com (64.91.255.98): icmp_seq=4 ttl=54 |
93 |
time=329 ms |
94 |
|
95 |
--- www.dslreports.com ping statistics --- |
96 |
4 packets transmitted, 4 received, 0% packet loss, time 3003ms |
97 |
rtt min/avg/max/mdev = 329.159/329.877/331.612/1.158 ms |
98 |
|
99 |
- Grant |