The linux kernel IP stack won't deliver multicast packets unless you
open the appropriate listener socket.  Obviously, without looking at
your application code I have no idea if that's your problem, but from
the sounds of it that is the most likely issue.  Nothing you've said
sounds like a tcpreplay bug to me.
--
Aaron Turner
https://synfin.net/         Twitter: @synfinatic
Those who would give up essential Liberty, to purchase a little temporary
Safety, deserve neither Liberty nor Safety.
    -- Benjamin Franklin


On Fri, Jul 8, 2016 at 1:53 PM, James deCocq <dotmar...@hotmail.com> wrote:
> Hi all,
>
> NICETIES
> tcpreplay version: 4.1.0;  CentOS 6.7; x86_64
> Multiple Solarflare SFC9120
>
> BACKGROUND:
> Our application can be built to use one of:
> * kernel sockets
> * OpenOnload (bespoke network stack, kernel bypass)
> * ef_vi (direct to/from VNICs, no stack)
>
> PROBLEM:
> * We test using tcpreplay of captured live multicast packets.
> * Replayed packets go out eth1 to the switch and back to eth2.
> * When application is built to use onload or ef_vi, it works as expected.
> * However when built for kernel stack, replayed packets arrive at eth2
>   as expected, but are subsequently dropped by kernel.
>
> DETAIL:
> * Multicast drops appear to originate from 2 spots in the linux stack:
>   most from ip_rcv(), and some in tpacket_rcv() (the AF_PACKET stuff)
> * Captured live data is massaged for playback thusly, addresses redacted:
>   tcprewrite -C --srcipmap=nnn.nnn.nnn.nnn/26:nnn.nnn.nnn.nnn
>   --dstipmap=nnn.nnn.nnn.nnn/24:nnn.nnn.nnn.nnn/24
>   --enet-smac=00:0F:53:xx:yy:zz --enet-vlan=del -i in.pcap -o out.pcap
> * All mods and IP checksums look good in Wireshark, and again,
>   the application receives expected flow if the kernel stack is not involved.
>
> QUESTION:
> * Of course I noted the caveat about replay on the same box; however
>   I was not certain that the caveat applied to our use case,
>   tcpreplay -> eth1 -> switch -> eth2 ->kernel;
>   however drops from kernel's tpacket_rcv() would seem to suggest yes?
> * So is tcpreplay running concurrently with our application likely to be
>    the cause of the kernel dropping multicast packets in this situation?
>
> Thanks very much for any assistance you can provide.
>
> james
>
> ------------------------------------------------------------------------------
> Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
> Francisco, CA to explore cutting-edge tech and listen to tech luminaries
> present their vision of the future. This family event has something for
> everyone, including kids. Get more information and register today.
> http://sdm.link/attshape
> _______________________________________________
> Tcpreplay-users mailing list
> Tcpreplay-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/tcpreplay-users
> Support Information: http://tcpreplay.synfin.net/trac/wiki/Support

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Tcpreplay-users mailing list
Tcpreplay-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tcpreplay-users
Support Information: http://tcpreplay.synfin.net/trac/wiki/Support

Reply via email to