DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Wodkowski, PawelX" <pawelx.wodkowski@intel.com>
To: "Jastrzebski, MichalX K" <michalx.k.jastrzebski@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	Thomas Monjalon <thomas.monjalon@6wind.com>
Subject: Re: [dpdk-dev] [PATCH v5 0/2] bond: mode 4 support
Date: Tue, 25 Nov 2014 09:45:16 +0000	[thread overview]
Message-ID: <F6F2A6264E145F47A18AB6DF8E87425D12B641A9@IRSMSX102.ger.corp.intel.com> (raw)
In-Reply-To: <1416849181-17183-1-git-send-email-michalx.k.jastrzebski@intel.com>

Some information detail about mode mode 4 of link bonding:

This mode is described in IEEE 802.3ad/AX standard described. It is also
described here
https://www.kernel.org/doc/Documentation/networking/bonding.txt.

In this implementation we have an array of mode 4 setting for each slave.
There is also assumption that for every port is one aggregator (it might
be unused if better is found).

Difference in this implementation vs ex Linux implementation:
- this implementation it is not directly based on state machines but current
  state is calculated from actor and partner states (and other things too).

Some implementation details:
- during rx burst every packet Is checked if this is LACP or marker packet.
  If it is LACP frame it is passed to mode 4 logic using slaves rx ring  and 
  removed from rx buffer before it is returned
- in tx burst, packets from mode 4 (if any) are injected into each slave.
- there is a timer running in background to process/produce mode 4 
  frames form rx/to tx functions.

Some requirements for this mode:
- for LACP mode to work rx and tx burst functions must be invoked
  at least in 100ms intervals (testpmd modified to satisfy this requirement)
- provided buffer to rx burst should be at least 2x slave count size. This is
  not needed but might increase performance especially during initial
  handshake.

Please inform me if you need additional information on this.

Pawel

  parent reply	other threads:[~2014-11-25  9:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-24 17:12 Michal Jastrzebski
2014-11-24 17:13 ` [dpdk-dev] [PATCH v5 1/2] bond: add " Michal Jastrzebski
2014-11-24 18:05   ` Thomas Monjalon
2014-11-24 17:13 ` [dpdk-dev] [PATCH v5 2/2] testpmd: " Michal Jastrzebski
2014-11-25  9:45 ` Wodkowski, PawelX [this message]
  -- strict thread matches above, loose matches on Subject: below --
2014-11-24 16:25 [dpdk-dev] [PATCH v5 0/2] bond: " Michal Jastrzebski

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=F6F2A6264E145F47A18AB6DF8E87425D12B641A9@IRSMSX102.ger.corp.intel.com \
    --to=pawelx.wodkowski@intel.com \
    --cc=dev@dpdk.org \
    --cc=michalx.k.jastrzebski@intel.com \
    --cc=thomas.monjalon@6wind.com \
    /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).