DPDK patches and discussions
 help / color / mirror / Atom feed
From: Kyle Larose <klarose@sandvine.com>
To: "users@dpdk.org" <users@dpdk.org>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "declan.doherty@intel.com" <declan.doherty@intel.com>
Subject: Re: [dpdk-dev] active_backup link bonding and mac address
Date: Fri, 12 May 2017 14:31:45 +0000	[thread overview]
Message-ID: <D76BBBCF97F57144BB5FCF08007244A7705D4ABC@wtl-exchp-1.sandvine.com> (raw)

I'm adding the dev mailing list/link bonding maintainer, because I've done some more investigation and I'm beginning to think something is wrong.

> -----Original Message-----
> From: Kyle Larose
> Sent: Thursday, May 11, 2017 4:55 PM
> To: users@dpdk.org
> Subject: active_backup link bonding and mac address
> 
> Hey fellow DPDK users,
> 
> I have a question about the link bond pmd.
> 
> I am running  4 X710 interfaces in a link bond pmd for my application. In
> LACP mode, everything works fine. But, in active_backup mode, if the primary
> link fails, my application stops working. The reason is that I'm still
> sending packets with the original MAC address of the link bond pmd, which is
> that of the original primary slave. However, the new primary is not in
> promiscuous mode, so traffic coming back with that MAC address drops.
> 
> What should I be doing here:
> 
> 1) Should I be listening for the changes in the state of the primary, and
> updating the MAC address I use to send? (I have it cached for efficiency)
> 2) Should the driver be placing the interface into promiscuous mode to allow
> for this, similar to what LACP does?
> 3) Should the driver be overwriting the MAC on egress, similar to what the
> tlb driver seems to do (in bond_ethdev_tx_burst_tlb)
> 
> I'm fine with #1, but it seems to break the goal of having the link bond pmd
> be transparent to the application.
> 

I checked the mac address of the link bond interface after the failover, and it did not change.
It still had the MAC address of the first slave that was added. This seems incompatible with
solution number 1 that I suggested above, which means either it the link bond device should
update its address, or it should be promiscuous at the slave level.

FWIW, I'm using 16.07. I have reproduced this on testpmd by looking at port state. (with some
fiddling -- needed to prevent it from starting the slave interfaces, and turn off its default
promiscuous mode.)

Does anyone have any input on this problem?

Thanks,

Kyle

             reply	other threads:[~2017-05-12 14:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-12 14:31 Kyle Larose [this message]
2017-05-12 14:55 ` Declan Doherty
2017-05-12 15:34   ` Kyle Larose
2017-05-12 15:46     ` Declan Doherty
2017-05-12 19:02       ` Kyle Larose

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=D76BBBCF97F57144BB5FCF08007244A7705D4ABC@wtl-exchp-1.sandvine.com \
    --to=klarose@sandvine.com \
    --cc=declan.doherty@intel.com \
    --cc=dev@dpdk.org \
    --cc=users@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).