[dpdk-dev] [PATCH v7 1/1] bond: add mode 4 support v7

Thomas Monjalon thomas.monjalon at 6wind.com
Thu Nov 27 19:09:20 CET 2014


2014-11-27 18:01, Michal Jastrzebski:
> From: Pawel Wodkowski <pawelx.wodkowski at intel.com>
> 
> This patch set add support for dynamic link aggregation (mode 4) to the
> librte_pmd_bond library. This mode provides auto negotiation/configuration 
> of peers and well as link status changes monitoring using out of band 
> LACP (link aggregation control protocol) messages. For further details of
> LACP specification see the IEEE 802.3ad/802.1AX standards. It is also
> described here
> https://www.kernel.org/doc/Documentation/networking/bonding.txt.
> 
> In this implementation we have an array of mode 4 settings 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 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.
> 
> Signed-off-by: Pawel Wodkowski <pawelx.wodkowski at intel.com>

I guess it is acked by Declan?

-- 
Thomas


More information about the dev mailing list