On Tuesday 18 January 2005 07:28, Yari Adán Petralanda wrote: > Hi, > > I'm developing a network block device, which uses both TCP and UDP sockets > to transmit it's data. When I try to send UDP frames bigger than the MTU, > they are dropped before they hit the wire.
This exact problem (a checksum corruption in fragmented UDP packets) was already debugged and solved, and even vanilla 2.6.9 includes the fix... currently the recommended tree is 2.6.9-bb4 on my homepage. I assume that you should first try 2.6.9-bb and, if you still have problems, ask again... Anyway please post an ack about whether 2.6.9-bb solves this bug, ok? Thanks. > Trying to debug the problem, I > ran netcat using udp under a UML. It uses writes of 8192 bytes over a UDP > socket. The scenario that made me post here is this: > running UML on tracing thread mode, host kernel is 2.6.10, uml kernel is > 2.6.8.1-1um, > if I set the MTU of the localhost device (same problem on > tun/tap) to 1500 bytes, netcat doesn't receive any frames sent to the > loopback interface. path_mtu_no_discover is 0. The same scenario, on my > host computer, runs fine. > Seems to me that IP is refusing to fragment the udp datagrams, and drops > them. I've debugged this with ethereal and the result was that the checksum, in the case of fragmented packets, was wrong - so the receiving side dropped the packets... Bye -- Paolo Giarrusso, aka Blaisorblade Linux registered user n. 292729 http://www.user-mode-linux.org/~blaisorblade ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel