|
|
|
|
||||||
| comp.protocols.tcp-ip TCP and IP network protocols. |
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Hi,
I have two windows XP machine on a LAN. I needed to generate HTTP traffic with small TCP Segments (< 40 Bytes) between these two machines. Both PCs have a http server running. I tweaked into the registry to set the path mtu discovery to off and setup the MTU for interfaces to be 72 on both PCs. Using IE from one machine I tried to access the second machine and used the ethereal to capture the traffic. What I observed was: TCP MSS negotiated for the connection is 32 from both sides, which is as expected (72 minus 40). After this I was expecting subsequent TCP segments NOT to be larger than 32 bytes, but this was not the case. Instead HTTP GET request contained IP Packet of length 84 bytes (=> TCP Segment of 44 bytes). This resulted into fragmentation at IP level (probably due to low MTU of 72 bytes). Is this the expected behavior? I feel this is not the correct behavior, since the TCP layer has negotiated MSS of 32 bytes, it should not try to generate TCP segment larger than 32 bytes. Can someone please explain what is going here and how can I generate the HTTP traffic with small TCP segments (< 40 Bytes). Thanks, Ashok |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
Hi,
My best guess is that Options are missing from TCP MSS calculation. Do you see any other TCP options in the Ethereal capture ? Specifically are there other options being sent along with the HTTP GET. Regards, Vivek Rajan http://www.unleashnetworks.com Ashok Kumar wrote: > Hi, > > I have two windows XP machine on a LAN. I needed to generate HTTP > traffic with small TCP Segments (< 40 Bytes) between these two > machines. Both PCs have a http server running. > I tweaked into the registry to set the path mtu discovery to off and > setup the MTU for interfaces to be 72 on both PCs. > Using IE from one machine I tried to access the second machine and used > the ethereal to capture the traffic. What I observed was: > TCP MSS negotiated for the connection is 32 from both sides, which is > as expected (72 minus 40). After this I was expecting subsequent TCP > segments NOT to be larger than 32 bytes, but this was not the case. > Instead HTTP GET request contained IP Packet of length 84 bytes (=> TCP > Segment of 44 bytes). This resulted into fragmentation at IP level > (probably due to low MTU of 72 bytes). Is this the expected behavior? I > feel this is not the correct behavior, since the TCP layer has > negotiated MSS of 32 bytes, it should not try to generate TCP segment > larger than 32 bytes. > > Can someone please explain what is going here and how can I generate > the HTTP traffic with small TCP segments (< 40 Bytes). > > Thanks, > Ashok |
|
![]() |
| Outils de la discussion | |
|
|