Static

These scenarios cover some aspects related to link-aggregation (combining multiple network connections simultaneously to increase throughput, provide redundancy, or both). In OSDx, this can be achieved through bonding interfaces.

../../../../../_images/topology1.svg

Test Static Adaptive Load Balance

Description

A bonding interface is configured in DUT0 using the adaptive load balance in static mode. This mode can be used to achieve load-balancing in transmission and reception. In this scenario, transmission load balancing is performed using a hash policy.

Scenario

Example 1

Step 1: Set the following configuration in DUT0 :

set interfaces bonding bond0 address 192.168.100.10/24
set interfaces bonding bond0 disable-dynamic-lb
set interfaces bonding bond0 hash-policy layer3+4
set interfaces bonding bond0 miimon 100
set interfaces bonding bond0 mode adaptive-load-balance
set interfaces ethernet eth0p0 bond-group bond0
set interfaces ethernet eth0p4 bond-group bond0
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 2: Set the following configuration in DUT1 :

set interfaces bridge br0 address 192.168.100.20/24
set interfaces bridge br0 stp version rstp
set interfaces ethernet eth1 bridge-group bridge br0
set interfaces ethernet eth2 bridge-group bridge br0
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 3: Run the command interfaces bonding show on DUT0 and check whether the output matches the following regular expressions:

bond0\s+192.168.100\.10\/24\s+up\s+up
Show output
---------------------------------------------------------------
Name          IP Address          Admin  Oper  Vrf  Description
---------------------------------------------------------------
bond0  192.168.100.10/24          up     up
fe80::2a0:26ff:fe18:c9/64

Step 4: Run the command interfaces bonding bond0 show ports on DUT0 and check whether the output contains the following tokens:

Bonding Mode: adaptive load balancing
Show output
Ethernet Channel Bonding Driver: v6.12.49

Bonding Mode: adaptive load balancing
Transmit Hash Policy: layer3+4 (1)
Primary Slave: None
Currently Active Slave: eth0p0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Peer Notification Delay (ms): 0

Slave Interface: eth0p0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:a0:26:18:00:c9
Slave queue ID: 0

Slave Interface: eth0p4
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 02:a0:26:18:00:cc
Slave queue ID: 0

Step 5: Ping the IP address 192.168.100.20 from DUT0:

admin@DUT0$ ping 192.168.100.20 count 1 size 56 timeout 1
Show output
PING 192.168.100.20 (192.168.100.20) 56(84) bytes of data.
64 bytes from 192.168.100.20: icmp_seq=1 ttl=64 time=343 ms

--- 192.168.100.20 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 342.584/342.584/342.584/0.000 ms

Step 6: Run the command interfaces bonding bond0 show ports on DUT0 and check whether the output contains the following tokens:

Transmit Hash Policy: layer3+4 (1)
Show output
Ethernet Channel Bonding Driver: v6.12.49

Bonding Mode: adaptive load balancing
Transmit Hash Policy: layer3+4 (1)
Primary Slave: None
Currently Active Slave: eth0p0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Peer Notification Delay (ms): 0

Slave Interface: eth0p0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:a0:26:18:00:c9
Slave queue ID: 0

Slave Interface: eth0p4
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 02:a0:26:18:00:cc
Slave queue ID: 0

Step 7: Run the command interfaces ethernet clear on DUT0.

Step 8: Initiate a bandwidth test from DUT0 to DUT1

admin@DUT1$ monitor test performance server port 5001
admin@DUT0$ monitor test performance client 192.168.100.20 duration 5 port 5001 parallel 10
Expect the following output on DUT0:
Connecting to host 192.168.100.20, port 5001
[  5] local 192.168.100.10 port 37660 connected to 192.168.100.20 port 5001
[  7] local 192.168.100.10 port 37666 connected to 192.168.100.20 port 5001
[  9] local 192.168.100.10 port 37680 connected to 192.168.100.20 port 5001
[ 11] local 192.168.100.10 port 37692 connected to 192.168.100.20 port 5001
[ 13] local 192.168.100.10 port 37700 connected to 192.168.100.20 port 5001
[ 15] local 192.168.100.10 port 37708 connected to 192.168.100.20 port 5001
[ 17] local 192.168.100.10 port 37722 connected to 192.168.100.20 port 5001
[ 19] local 192.168.100.10 port 37734 connected to 192.168.100.20 port 5001
[ 21] local 192.168.100.10 port 37748 connected to 192.168.100.20 port 5001
[ 23] local 192.168.100.10 port 37756 connected to 192.168.100.20 port 5001
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  10.7 MBytes  89.4 Mbits/sec   18   45.2 KBytes
[  7]   0.00-1.00   sec  17.0 MBytes   143 Mbits/sec    9   91.9 KBytes
[  9]   0.00-1.00   sec  10.4 MBytes  87.1 Mbits/sec   22   49.5 KBytes
[ 11]   0.00-1.00   sec  11.1 MBytes  93.5 Mbits/sec   32   41.0 KBytes
[ 13]   0.00-1.00   sec  8.00 MBytes  67.1 Mbits/sec   18   33.9 KBytes
[ 15]   0.00-1.00   sec  9.34 MBytes  78.3 Mbits/sec   24   24.0 KBytes
[ 17]   0.00-1.00   sec  16.1 MBytes   135 Mbits/sec   32   99.0 KBytes
[ 19]   0.00-1.00   sec  15.8 MBytes   133 Mbits/sec   33   49.5 KBytes
[ 21]   0.00-1.00   sec  9.04 MBytes  75.9 Mbits/sec   35   41.0 KBytes
[ 23]   0.00-1.00   sec  8.37 MBytes  70.2 Mbits/sec   26   50.9 KBytes
[SUM]   0.00-1.00   sec   116 MBytes   972 Mbits/sec  249
- - - - - - - - - - - - - - - - - - - - - - - - -
[  5]   1.00-2.00   sec  9.20 MBytes  77.1 Mbits/sec   25   50.9 KBytes
[  7]   1.00-2.00   sec  18.6 MBytes   156 Mbits/sec   21   65.0 KBytes
[  9]   1.00-2.00   sec  10.3 MBytes  86.5 Mbits/sec   34   55.1 KBytes
[ 11]   1.00-2.00   sec  8.33 MBytes  69.8 Mbits/sec   35   28.3 KBytes
[ 13]   1.00-2.00   sec  9.76 MBytes  81.8 Mbits/sec   37   46.7 KBytes
[ 15]   1.00-2.00   sec  7.02 MBytes  58.9 Mbits/sec   36   50.9 KBytes
[ 17]   1.00-2.00   sec  16.9 MBytes   142 Mbits/sec   25   62.2 KBytes
[ 19]   1.00-2.00   sec  11.2 MBytes  94.3 Mbits/sec   22   74.9 KBytes
[ 21]   1.00-2.00   sec  8.14 MBytes  68.3 Mbits/sec   42   48.1 KBytes
[ 23]   1.00-2.00   sec  12.2 MBytes   103 Mbits/sec   30   33.9 KBytes
[SUM]   1.00-2.00   sec   112 MBytes   938 Mbits/sec  307
- - - - - - - - - - - - - - - - - - - - - - - - -
[  5]   2.00-3.00   sec  11.4 MBytes  95.9 Mbits/sec   28   48.1 KBytes
[  7]   2.00-3.00   sec  15.7 MBytes   131 Mbits/sec   15   65.0 KBytes
[  9]   2.00-3.00   sec  7.27 MBytes  61.0 Mbits/sec   19   58.0 KBytes
[ 11]   2.00-3.00   sec  6.65 MBytes  55.8 Mbits/sec   24   17.0 KBytes
[ 13]   2.00-3.00   sec  9.38 MBytes  78.7 Mbits/sec   22   50.9 KBytes
[ 15]   2.00-3.00   sec  12.2 MBytes   102 Mbits/sec   20   46.7 KBytes
[ 17]   2.00-3.00   sec  16.7 MBytes   140 Mbits/sec   23   72.1 KBytes
[ 19]   2.00-3.00   sec  12.8 MBytes   107 Mbits/sec   24   70.7 KBytes
[ 21]   2.00-3.00   sec  10.3 MBytes  86.0 Mbits/sec   32   38.2 KBytes
[ 23]   2.00-3.00   sec  9.69 MBytes  81.3 Mbits/sec   26   73.5 KBytes
[SUM]   2.00-3.00   sec   112 MBytes   940 Mbits/sec  233
- - - - - - - - - - - - - - - - - - - - - - - - -
[  5]   3.00-4.00   sec  9.38 MBytes  78.7 Mbits/sec   22   55.1 KBytes
[  7]   3.00-4.00   sec  14.1 MBytes   118 Mbits/sec   14   67.9 KBytes
[  9]   3.00-4.00   sec  9.07 MBytes  76.1 Mbits/sec   22   52.3 KBytes
[ 11]   3.00-4.00   sec  5.03 MBytes  42.2 Mbits/sec   33   31.1 KBytes
[ 13]   3.00-4.00   sec  13.2 MBytes   111 Mbits/sec   15   42.4 KBytes
[ 15]   3.00-4.00   sec  11.7 MBytes  98.5 Mbits/sec   21   53.7 KBytes
[ 17]   3.00-4.00   sec  12.2 MBytes   103 Mbits/sec   26   56.6 KBytes
[ 19]   3.00-4.00   sec  15.8 MBytes   132 Mbits/sec   16   60.8 KBytes
[ 21]   3.00-4.00   sec  10.5 MBytes  88.1 Mbits/sec   16   28.3 KBytes
[ 23]   3.00-4.00   sec  11.2 MBytes  94.4 Mbits/sec   35   50.9 KBytes
[SUM]   3.00-4.00   sec   112 MBytes   942 Mbits/sec  220
- - - - - - - - - - - - - - - - - - - - - - - - -
[  5]   4.00-5.00   sec  7.77 MBytes  65.1 Mbits/sec   24   66.5 KBytes
[  7]   4.00-5.00   sec  15.8 MBytes   133 Mbits/sec   19   79.2 KBytes
[  9]   4.00-5.00   sec  10.1 MBytes  85.0 Mbits/sec   36   21.2 KBytes
[ 11]   4.00-5.00   sec  8.82 MBytes  74.0 Mbits/sec   38   38.2 KBytes
[ 13]   4.00-5.00   sec  11.6 MBytes  96.9 Mbits/sec   14   45.2 KBytes
[ 15]   4.00-5.00   sec  10.8 MBytes  90.2 Mbits/sec   24   56.6 KBytes
[ 17]   4.00-5.00   sec  13.2 MBytes   111 Mbits/sec   16   53.7 KBytes
[ 19]   4.00-5.00   sec  13.9 MBytes   117 Mbits/sec   13   67.9 KBytes
[ 21]   4.00-5.00   sec  7.89 MBytes  66.2 Mbits/sec   35   32.5 KBytes
[ 23]   4.00-5.00   sec  11.6 MBytes  97.5 Mbits/sec   33   36.8 KBytes
[SUM]   4.00-5.00   sec   112 MBytes   936 Mbits/sec  252
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-5.00   sec  48.4 MBytes  81.3 Mbits/sec  117             sender
[  5]   0.00-5.00   sec  48.2 MBytes  80.8 Mbits/sec                  receiver
[  7]   0.00-5.00   sec  81.3 MBytes   136 Mbits/sec   78             sender
[  7]   0.00-5.00   sec  80.9 MBytes   136 Mbits/sec                  receiver
[  9]   0.00-5.00   sec  47.2 MBytes  79.1 Mbits/sec  133             sender
[  9]   0.00-5.00   sec  46.8 MBytes  78.5 Mbits/sec                  receiver
[ 11]   0.00-5.00   sec  40.0 MBytes  67.1 Mbits/sec  162             sender
[ 11]   0.00-5.00   sec  39.7 MBytes  66.5 Mbits/sec                  receiver
[ 13]   0.00-5.00   sec  51.9 MBytes  87.0 Mbits/sec  106             sender
[ 13]   0.00-5.00   sec  51.3 MBytes  85.9 Mbits/sec                  receiver
[ 15]   0.00-5.00   sec  51.0 MBytes  85.6 Mbits/sec  125             sender
[ 15]   0.00-5.00   sec  50.6 MBytes  84.8 Mbits/sec                  receiver
[ 17]   0.00-5.00   sec  75.2 MBytes   126 Mbits/sec  122             sender
[ 17]   0.00-5.00   sec  74.7 MBytes   125 Mbits/sec                  receiver
[ 19]   0.00-5.00   sec  69.6 MBytes   117 Mbits/sec  108             sender
[ 19]   0.00-5.00   sec  69.1 MBytes   116 Mbits/sec                  receiver
[ 21]   0.00-5.00   sec  45.8 MBytes  76.9 Mbits/sec  160             sender
[ 21]   0.00-5.00   sec  45.5 MBytes  76.3 Mbits/sec                  receiver
[ 23]   0.00-5.00   sec  53.2 MBytes  89.2 Mbits/sec  150             sender
[ 23]   0.00-5.00   sec  52.8 MBytes  88.5 Mbits/sec                  receiver
[SUM]   0.00-5.00   sec   564 MBytes   945 Mbits/sec  1261             sender
[SUM]   0.00-5.00   sec   559 MBytes   938 Mbits/sec                  receiver

iperf Done.

Step 9: Run the command interfaces ethernet show counters on DUT0 and check whether the output matches the following regular expressions:

eth0p0 \s+up\s+\d+\s+\d+\s+0\s+\d{4,}
eth0p4 \s+up\s+\d+\s+\d+\s+0\s+\d{4,}
Show output
-------------------------------------------------------------------------------
Name   Oper  Rx Packets  Rx Bytes  Rx Errors  Tx Packets  Tx Bytes   Tx Errors
-------------------------------------------------------------------------------
eth0p0  up        144488   9612164          0      163102  246893583          0
eth0p1  down           0         0          0           0          0          0
eth0p2  down           0         0          0           0          0          0
eth0p3  down           0         0          0           0          0          0
eth0p4  up             1       150          0      243636  368827541          0
eth0p5  down           0         0          0           0          0          0
eth0p6  down           0         0          0           0          0          0
eth0p7  down           0         0          0           0          0          0
eth1  down           0         0          0           0          0          0
eth2  down           0         0          0           0          0          0