From 78d375a3a354b0cc93bdfc36fd828c691f9ccb56 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Thu, 13 May 2021 10:49:39 +0200 Subject: bonding: T3543: add support to configure lacp-rate (slow or fast) Option specifying the rate in which we'll ask our link partner to transmit LACPDU packets in 802.3ad mode. set interfaces bonding bond0 lacp-rate slow: Request partner to transmit LACPDUs every 30 seconds (default) fast: Request partner to transmit LACPDUs every 1 second (cherry picked from commit 8e392a3dbc16f7b80a979f7b4e9c11408d700e6f) --- smoketest/scripts/cli/test_interfaces_bonding.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'smoketest/scripts/cli') diff --git a/smoketest/scripts/cli/test_interfaces_bonding.py b/smoketest/scripts/cli/test_interfaces_bonding.py index b98cc30f9..9480263d8 100755 --- a/smoketest/scripts/cli/test_interfaces_bonding.py +++ b/smoketest/scripts/cli/test_interfaces_bonding.py @@ -111,5 +111,24 @@ class BondingInterfaceTest(BasicInterfaceTest.BaseTest): # check LACP default rate self.assertEqual('slow', tmp['linkinfo']['info_data']['ad_lacp_rate']) + def test_bonding_lacp_rate(self): + # configure member interfaces + lacp_rate = 'fast' + for interface in self._interfaces: + for option in self._options.get(interface, []): + self.session.set(self._base_path + [interface] + option.split()) + + self.session.set(self._base_path + [interface, 'lacp-rate', lacp_rate]) + + self.session.commit() + + # verify config + for interface in self._interfaces: + tmp = get_json_iface_options(interface) + + # check LACP minimum links (default value) + self.assertEqual(0, tmp['linkinfo']['info_data']['min_links']) + self.assertEqual(lacp_rate, tmp['linkinfo']['info_data']['ad_lacp_rate']) + if __name__ == '__main__': unittest.main(verbosity=2) -- cgit v1.2.3