-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Trailing junk on the end of packets? #24
Comments
This is easy to repro on a clean build. Interestingly the troublesome assert was added to tcpip recently: was it always the case that mirage-net-xen read trailing junk on the end of ethernet frames? Is this gasp being sent by the backend? Say it isn't so |
Sorry, this seems to be my fault. I submitted mirage/mirage-tcpip#121 to allow trailing bytes for IP packets. I think those packets with trailing bytes simply occur in nowadays systems.. |
Alternative fix for #121 to avoid raising Assert_failure See also mirage/mirage-net-xen#24
I use
|
I agree this should be addressed properly. PR welcome. |
I'm seeing this problem when making a TCP connection from my laptop to a unikernel on a cubieboard 2 (connecting from dom0 doesn't show the problem). The final ack in the syn,syn/ack,ack sequence is seen as having 6 trailing zeros. Mirage then acks the receipt of these phantom bytes, and things don't go well from then on... |
while mirage/mirage-tcpip#145 is a hotfix for this issue, I'd hope someone would investigate whether the xen netif does the proper thing (or whether there is an issue in either xen or mirage-net-xen). closing it by the mirage ip layer doing some byte array cutting feels slightly hackish imho. |
You are right, I didn't want to close that issue (which tracks the underlying bug). Anyway, rescaling the input buffer is always a good thing to do anyway. |
Alternative fix for mirage#121 to avoid raising Assert_failure See also mirage/mirage-net-xen#24
Magnus writes
and then follows up with hex dumps:
It looks like netif is returning trailing junk? Or possibly the peer is sending ethernet frames padded with junk?
The text was updated successfully, but these errors were encountered: