Jumbo frames truncated at 4084 bytes by virtio-net? (using if_bridge(4) and vtnet(4) with mtu 9000)
freebsd at omnilan.de
Tue Jan 3 17:33:29 UTC 2017
Bezüglich Harry Schmalzbauer's Nachricht vom 21.12.2016 17:40 (localtime):
> Bezüglich Harry Schmalzbauer's Nachricht vom 21.12.2016 17:08 (localtime):
>> Guest flow:
>> 16:57:06.642073 00:a0:98:73:9f:42 > 96:07:e9:78:c6:ac, ethertype IPv4
>> (0x0800), length 4085: 172.21.35.1 > 172.21.35.32: ICMP echo request, id
>> 27401, seq 0, length 4051
>> 16:57:06.642233 96:07:e9:78:c6:ac > 00:a0:98:73:9f:42, ethertype IPv4
>> (0x0800), length 4084: truncated-ip - 1 bytes missing! 172.21.35.32 >
>> 172.21.35.1: ICMP echo reply, id 27401, seq 0, length 405
>> Now my problem is that I can't simply keep guest's mtu at 1500, since
>> the host will send jumbo frames as answer wich never get through virtio-net.
>> Does anybody have an idea how to fix/work arround?
> For the records, replacing virtio-net with e1000 (as bhyve
> PCI-slot-resident) solves the jumbo frame issue!
> It seems 82545EM is fully emulated (not 82545GM which doesn't support
> jumbo frames) :-)
> Thank you very much for this nice work!
> mav's commit (r302504) mentions heavy performance penalties (factor 2).
Real world usage shows slightly heavier penalty.
Simply doing 'make package-depends-list' of x11/kde4 takes 1:22 with
virtio-net and 3:25 with e1000 (nfsv4 mounted ports tree).
I've filed a bug report:
Hopefully fixing that isn't too complicated...
More information about the freebsd-virtualization