Message: 2
Date: Fri, 15 Apr 2011 18:57:19 -0500
From: Alex Anagnos<[email protected]>
Subject: Networking frame loss in transmission
To: [email protected]
Message-ID:<[email protected]>
Content-Type: text/plain; charset=ISO-8859-1

FreeBSD 8.0-RELEASE w/ VirtualBox 3.2.12.

The setup is a small application in a Guest OS that is sending UDP
Ethernet frames.
I Am capturing on FreeBSD on the device with both Wireshark, and a
custom written program that uses BPF zero copy.

What i'm seeing is that when the application send data that is beyond
the MTU the data is fragmented.
However, sometimes, the first few fragments never show up in the
capture, and indeed the receiving app never gets the message
(reassembly fails).

maybe it was waiting for arp?
So when I call send with an 8192 payload, i see,  frames 1 and 2 go
missing, but 3, 4, and , 5 get out fine. (1500 MTU)
do you see an arp reply wbetween 2 and 3?

When calling send 2 times in rapid succession, all fragments of the
first send go missing as well as 1, and 2 of the 2nd send. 3, 4, and 5
get out fine.
When calling send 3 times in rapid succession, all fragments of send 1
&  2 get lost as well as fragment 1&  2 of the 3rd send. Frags 3, 4,
and 5 are fine.

makes arp less likely but not impossible.
When sending this at like 1 Message per second, things occasionally don't work.
When going at 3000FPS, it has so far always been the first few frames,
after that the rest of the stream gets through ok almost like the
driver has to warm up or something..

The issue happens sending from both a Linux guest and from a Windows Guest.
The issue does not care about the speed of the traffic, it happens at
1FPS and at 3000FPS.
have you tried a freebsd guest? at least we can debug that.. :-)

The issue does seam to occur less often the smaller the message sent.
When the message does not require fragmentation I have not seen the
issue happen but i'm not going to guarantee it does not happen.

The problem happens using Bridged, VDE, and Host-Only.
The problem happens using the FastPCI driver, intel e1000, and para-virtualized.
The problem happens with any number of the above 3 combos.

The problem happens in Version 3.2.6 and inversion 3.2.12.

The problem looks to be somewhere in the VirtualBox box code, or maybe
in the VirtualBox kernel module integration with FreeBSD

_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
To unsubscribe, send any mail to "[email protected]"

Reply via email to