3 ms·
> am I missing some packet header overhead ? Yes: Ethernet adds 20 bytes: 8 byte preamble/start of frame delimiter + 12 byte interframe gap => the "on-the-wir
by benou 7y ago
> am I missing some packet header overhead ?
Yes: Ethernet adds 20 bytes: 8 byte preamble/start of frame delimiter + 12 byte interframe gap
=> the "on-the-wire" size is actually 84-bytes
=> 20Gbps/84-bytes = 29.76Mpps
> Did you try bigger that 64-byte packets ? I'm curious how various runtimes would handle that.
In typical forwarding, packet size does not impact forwaring that much until you hit some bandwidth limit (PCIe, DDR and/or L3 cache) because you only touch the packet header (typically the 1st 64-bytes cacheline in the packet). The data transfer itself will be done by NIC DMA.
- emmericp 7y agoPCIe bandwidth also decreases with increasing packet size as there's a lot of overhead per packet. Memory isn't used, it's all handled in cache, hitting main memory is super slow.