[dpdk-dev] DPDK Port Mirroring

Sanford, Robert rsanford at akamai.com
Fri Jul 10 15:46:21 CEST 2015


Silly questions: Why use rte_pktmbuf_clone()? Assuming that one is not
going to modify the mbuf at all, why not just increment the reference
count with rte_mbuf_refcnt_update()?

--
Thanks,
Robert


>Keith speaks truth.  If I were going to do what you're describing, I would
>do the following:
>
>1. Start with the l2fwd example application.
>2. Remove the part where it modifies the ethernet MAC address of received
>packets.
>3. Add a call in to clone mbufs via rte_pktmbuf_clone() and send the
>cloned
>packets out of the port of your choice
>
>As long as you don't need to modify the packets - and if you're mirroring,
>you shouldn't - simply cloning received packets and sending them out your
>mirror port should get you most of the way there.
>
>On Thu, Jul 9, 2015 at 3:17 PM, Wiles, Keith <keith.wiles at intel.com>
>wrote:
>
>>
>>
>> On 7/9/15, 12:26 PM, "dev on behalf of Assaad, Sami (Sami)"
>> <dev-bounces at dpdk.org on behalf of sami.assaad at alcatel-lucent.com>
>>wrote:
>>
>> >Hello,
>> >
>> >I want to build a DPDK app that is able to port-mirror all ingress
>> >traffic from two 10G interfaces.
>> >
>> >1.       Is it possible in port-mirroring traffic consisting of 450byte
>> >packets at 20G without losing more than 5% of traffic?
>> >
>> >2.       Would you have any performance results due to packet copying?
>>
>> Do you need to copy the packet if you increment the reference count you
>> can send the packet to both ports without having to copy the packet.
>> >
>> >3.       Would you have any port mirroring DPDK sample code?
>>
>> DPDK does not have port mirroring example, but you could grab the l2fwd
>>or
>> l3fwd and modify it to do what you want.
>> >
>> >Thanks in advance.
>> >
>> >Best Regards,
>> >Sami Assaad.
>>
>>



More information about the dev mailing list