Open GoogleCodeExporter opened 9 years ago
Hi morphyno,
we fixed the problem with jumbo frames and ixgbe, but without libpcap.
This fixes are into "next" branch of netmap. Maybe this problem is related.
Can you try with "next" branch?
Thanks,
Stefano
Original comment by stefanog...@gmail.com
on 22 Oct 2014 at 11:45
Hi Stefano:
Jumbo packets does seem to work with the "next" branch of netmap. However,
here's my observation.
I set "buf_size" to 9000, in dmesg, I see bufsz is set to 9088
[ 2834.998629] 050.285168 [ 460] ixgbe_netmap_configure_srrctl bufsz: 9088
srrctl: 8
However, I see actual MTU is 8196 Bytes.
Because as soon as I send packets bigger than 8196 bytes, I see fragmentation.
892 bytes is a pretty big difference.
Is buf_size a software buffer size that includes other objects other than skb?
Original comment by morph...@gmail.com
on 27 Oct 2014 at 8:06
Hi morphyno,
bufsz is set to 9088 for alignment reason.
For the MTU, I don't understand if you are set it up to 9000 in both side (tx
and rx).
Can you explain the test environment? (tools for traffic generation, NIC set
up, tx and rx NIC interconnection)
Cheers,
Stefano
Original comment by stefanog...@gmail.com
on 31 Oct 2014 at 2:17
Original comment by stefanog...@gmail.com
on 31 Oct 2014 at 2:19
Hi Stefano:
I actually avoided using jumbo packets for some time. I'm using tcpreplay over
netmap to play pcaps that contain jumbo packets (largest is 9200 bytes). I'm
able to do so when I set /sys/module/netmap/parameters/buf_size to 9300. I also
use tcpdump over netmap-libpcap to capture the packets in a loopback (from my
device under test).
tcpeplay -> Netmap:ethX -> DUT > Netmap:eth7 -> tcpdump
I'm noticing something very interesting. When I attempt to invoke but tcpreplay
and tcpdump both in netmap mode(they both use difference interfaces). I see the
following errors in dmesg.
[2549737.221434] 057.187385 [ 798] generic_netmap_dtor Restored native NA
(null)
[2549738.286908] 058.252026 [1786] netmap_interp_ringid eth0: tx [0,12) rx
[0,12) id 0
[2549738.350512] 058.315582 [ 356] nm_mem_assign_group iommu_group 0
[2549738.416472] 058.381491 [ 507] netmap_obj_malloc no more netmap_buf
objects
[2549738.482315] 058.447283 [ 672] netmap_new_bufs no more buffers
after 444 of 512
[2549738.548963] 058.513879 [1360] netmap_mem_rings_create Cannot allocate
buffers for tx_ring
[2549738.617586] 058.582448 [1516] netmap_mem_global_deref refcount = 1
This only happens if I have a buffer size set to a very large number. Is there
any other parameter I need to adjust accordingly with buff_size?
Original comment by morgan.y...@gmail.com
on 4 Feb 2015 at 8:06
Attached is the dmesg, tcpdump over netmap-libpcap is using eth13, tcpreplay
over netmap is using eth12
Original comment by morgan.y...@gmail.com
on 4 Feb 2015 at 8:08
Attachments:
Original issue reported on code.google.com by
morph...@gmail.com
on 21 Oct 2014 at 10:17