PPPoE and UDP fragmentation

Charles Sprickman spork at bway.net
Fri Sep 9 20:38:35 PDT 2005


Hello,

I just recently "fixed" a problem with getting an amanda server to backup 
some remote hosts over a DSL line (6Mb/s down, so it actually works well).

A summation of that is here:

http://groups.yahoo.com/group/amanda-users/message/56264

The gist is setting the backup server's ethernet mtu to 1492 makes things 
work.  The server is connected to the internet via a Netopia/Cayman DSL 
router.  It does use PPPoE even though it has a routed subnet.

Linked in some of those messages are two tcpdumps showing the failure:

http://www.bway.net/~spork/amanda-tcpdump.txt
http://www.bway.net/~spork/amanda-tcpdump2.txt

I'm just trying to understand the problem since it's now hackishly 
"fixed".  I get the whole PMTUD thing for TCP, but I've not been able to 
really grasp how UDP fragmentation works, especially when a cheap-o router 
is involved.

Some of the comments in the amanda-users thread piqued my interest, like:

"I believe you have a UDP fragementation network problem somewhere
inbetween the two hosts, or maybe the devel2 host itself.

Compare these two lines (first: view on devel2, second: view on h13):

00:07:40.444231 devel2.945 > h13.amanda: udp 1465 (ttl 64, id 45642, len
1493)
00:07:40.484232 devel2.945 > h13.amanda: udp 1465 (frag 45642:1472 at 0+)
(ttl 51, len 1492)

The host devel2, sends a packet, claiming length 1493 bytes.
(1465 real payload + 28 bytes UDP packet header = 1493 bytes).
It also seems to be split over many UDP packets, but the following
packet is never seen in the trace. THe packet that is shown is only
1486 bytes long. There should be a second packet with the rest
of 7 bytes, but that is missing from the trace.
>From the content of the first packet, that second packet should
contain "index"+newline, indeed 7 bytes."

Questions:

-In the second trace I do see fragments arriving (if I'm reading that 
tcpdump correctly), but it seems like they don't make it to the 
application.
-Who fragments?
-What happens to the checksum when something is fragmented?
-Are there any tunables at either end (both hosts are FreeBSD 4.11 p11) to 
alter how fragmented packets are re-assembled?

Thanks,

Charles

___
Charles Sprickman
NetEng/SysAdmin
Bway.net - New York's Best Internet - www.bway.net
spork at bway.net - 212.655.9344



More information about the freebsd-net mailing list