linux-um archives
 help / color / mirror / Atom feed
* [uml-devel] question about udp fragmentation under UML
@ 2005-01-18  6:28 Yari Adán Petralanda
  2005-01-19 21:54 ` Blaisorblade
  0 siblings, 1 reply; 3+ messages in thread
From: Yari Adán Petralanda @ 2005-01-18  6:28 UTC (permalink / raw)
  To: user-mode-linux-devel

[-- Attachment #1: Type: text/plain, Size: 1219 bytes --]

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. 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 don't know if it's a UML problem, but when I saw that not only my code, but 
netcat also drops frames, it stranged me.

Thank you very much

-- 
   .-.    
    oo|    Yari Adán Petralanda, a.k.a. mustang
   /`'\          
  (\_;/)           http://www.yadan.org
              Registered Linux User #257290                     
--
Nothing so needs reforming as other people's habits.
  -- Mark Twain, "Pudd'nhead Wilson's Calendar"

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [uml-devel] question about udp fragmentation under UML
  2005-01-18  6:28 [uml-devel] question about udp fragmentation under UML Yari Adán Petralanda
@ 2005-01-19 21:54 ` Blaisorblade
  2005-01-20 22:11   ` Yari Adán Petralanda
  0 siblings, 1 reply; 3+ messages in thread
From: Blaisorblade @ 2005-01-19 21:54 UTC (permalink / raw)
  To: user-mode-linux-devel; +Cc: Yari Adán Petralanda

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [uml-devel] question about udp fragmentation under UML
  2005-01-19 21:54 ` Blaisorblade
@ 2005-01-20 22:11   ` Yari Adán Petralanda
  0 siblings, 0 replies; 3+ messages in thread
From: Yari Adán Petralanda @ 2005-01-20 22:11 UTC (permalink / raw)
  To: Blaisorblade; +Cc: user-mode-linux-devel

[-- Attachment #1: Type: text/plain, Size: 2097 bytes --]

Hi again,

Problem solved with 2.6.9 vanilla and 2.6.9-bb4. Thank you very much for your 
answer, and sorry for not testing it on the latest kernels before. I thought 
there were no new versions when I saw 2.6.8.1 last on the website. Didnt knew 
2.6.9 works right out of the box,

Thank you again

El Miércoles, 19 de Enero de 2005 22:54, escribió:
> 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

-- 
   .-.    
    oo|    Yari Adán Petralanda, a.k.a. mustang
   /`'\          
  (\_;/)           http://www.yadan.org
              Registered Linux User #257290                     
--
You will be audited by the Internal Revenue Service.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-01-20 22:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-01-18  6:28 [uml-devel] question about udp fragmentation under UML Yari Adán Petralanda
2005-01-19 21:54 ` Blaisorblade
2005-01-20 22:11   ` Yari Adán Petralanda

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox