Tbf

The following scenario shows how to configure a Token Bucket Filter qdisc.

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

Test TBF QDisc

Description

In this scenario, a Token Bucket Filter (TBF) qdisc is configured in DUT0 (‘eth0’ interface) to slow traffic down to a configured rate.

Scenario

Step 1: Set the following configuration in DUT0:

set interfaces ethernet eth0 address 10.0.0.2/24
set interfaces ethernet eth0 traffic control out QDISC
set traffic control QDISC type tbf bandwidth 100
set traffic control QDISC type tbf burst 105
set traffic control QDISC type tbf latency 1

Step 2: Set the following configuration in DUT1:

set interfaces ethernet eth0 address 10.0.0.1/24

Step 3: Ping IP address 10.0.0.1 from DUT0:

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

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

Step 4: Initiate a bandwidth test from DUT0 to DUT1

admin@DUT1$ monitor test performance server port 8080
admin@DUT0$ monitor test performance client 10.0.0.1 duration 5 port 8080
Expect this output in DUT0:
Connecting to host 10.0.0.1, port 8080
[  5] local 10.0.0.2 port 44468 connected to 10.0.0.1 port 8080
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  26.1 MBytes   219 Mbits/sec    0    516 KBytes
[  5]   1.00-2.00   sec  11.6 MBytes  97.5 Mbits/sec    0    516 KBytes
[  5]   2.00-3.00   sec  10.6 MBytes  88.6 Mbits/sec    0    516 KBytes
[  5]   3.00-4.00   sec  11.6 MBytes  97.5 Mbits/sec    0    516 KBytes
[  5]   4.00-5.00   sec  11.6 MBytes  97.5 Mbits/sec    0    516 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-5.00   sec  71.5 MBytes   120 Mbits/sec    0             sender
[  5]   0.00-5.01   sec  69.1 MBytes   116 Mbits/sec                  receiver

iperf Done.

Step 5: Run command traffic control show at DUT0 and check if output contains the following tokens:

tbf
Show output
Traffic control for interface 'eth0' - 'egress' mode

-----------------------------------------------------------------------
ID   traffic control  type  parent  bytes sent  pkts sent  pkts dropped
-----------------------------------------------------------------------
1:0  QDISC            tbf   root      75879872      50146             0