PTP 550 Load Balancing and Throughput Testing

550.jpg

PTP 550 provides up to 1.4 Gbps throughput with ARQ and asymmetric non-contiguous channel aggregation across the 5 GHz band.

PTP 550 utilizes two integrated radio interfaces which are “bonded” together to achieve 1.4 Gbps throughput (with two 80 MHz channels).

This article explains the load balancing mechanism and provides two examples of how to fully test and exercise the link.

lb.jpg

Load Balancing

With Channel Bonding enabled, the PTP 550 applies a load balancing algorithm to balance the traffic on a per-traffic flow basis.

Initially, the load balancing algorithm identifies the following information within each traffic flow:

  • Transport layer protocol – TCP or UDP
  • Source IP address and source TCP / UDP port
  • Destination IP address and destination TCP / UDP port

The algorithm then considers the configured channel bandwidth of each radio and the number of flows passing through each radio.

PTP 550 Channel Bandwidth Configuration

Load Balancing Ratio

Radio 1

Radio 2

Radio 1 Flows : Radio 2 Flows

20 MHz

20 MHz

1:1

20 MHz

40 MHz

1:2

20 MHz

80 MHz

1:4

40 MHz

20 MHz

2:1

40 MHz

40 MHz

1:1

40 MHz

80 MHz

1:2

80 MHz

20 MHz

4:1

80 MHz

40 MHz

2:1

80 MHz

80 MHz

1:1

If both radios are configured with the same channel bandwidth then the load balancing algorithm ensures that the number of flows on each radio interface is equal. If the radio interfaces are configured with different channel bandwidths, then the number of flows on each radio will be based on the ratio of the channel bandwidths in use by the radios.

Throughput Testing

To test the maximum throughput of a PTP 550 link, first estimate the amount of traffic required to fully exercise the link’s capabilities.  This step is important to avoid a highly-overloaded link condition.

Reference the following table for recommended testing rates for your radios’ channel bandwidth configuration:

Channel Bonding Configuration

(MHz)

Radio 1

Maximal

Throughput

(Mbps)

Radio 2

Maximal

Throughput

(Mbps)

Aggregate Throughput

(Mbps)

Minimal recommended number of streams per link direction

20+20

160

160

320

8

20+40

160

350

510

12

40+20

350

160

510

12

40+40

350

350

700

8

20+80

160

700

860

10

40+80

350

700

1050

12

80+20

700

160

860

10

80+40

700

350

1050

12

80+80

700

700

1400

8

As indicated in the table above, multiple traffic flows must be sent in each direction to fully utilize the link and to acquire full-capacity throughput readings.

Example:  Sending eight 100 Mbit/sec uplink streams with iperf

Throughput testing requires two computers and an active PTP 550 link.  The diagram below indicates the setup and commands to conduct a link test.  In this case, PC 2 sends eight 100 Mbit/sec streams to PC 1.

To test both directions of the link concurrently (and fully utilize the link), execute the following commands.  This sequence will result in eight 100 Mbps streams send on the uplink and on the downlink.

  1. (PC 1) iperf –s –u –i 1
  2. (PC 2) iperf –c <server IP address> -i 1 –t 300 –P 8 –b 100m
  3. (PC 2) iperf –s –u –i 1
  4. (PC 1) iperf –c <server IP address> -i 1 –t 300 –P 8 –b 100m

Example result

In the image below PC 1 is sending eight 100 Mbps streams to PC 2 and PC 2 is sending eight 100 Mbps streams to PC 1.

Example:  Throughput testing with Mikrotik Traffic Generator Tool (GUI)

To use the Mikrotik Traffic Generator Tool to test the PTP 550 link, follow this procedure:

In the Traffic Generator Menu, click the Streams button (labeled “1”)

 

Add four new streams as shown right:

 

In the Traffic Generator Menu, click the Packet Templates button (labeled “2”)

 

Configure the packet template as shown right with networking parameters applicable to your test setup:

 

In the Traffic Generator Menu, verify the Streams, Port, Packet Size, and Tx Template then click the Start button

 m5.PNG

Navigate to the Interfaces menu to view applicable statistics.

In this case, ether1 is carrying the streams and displays a rate of 960.6 Mbps.

 m6.PNG

Double-click the ether1 interface to display details and graphs:

 

Example:  Routing throughput testing with Mikrotik Traffic Generator Tool (CLI)

To use the Mikrotik Traffic Generator Tool CLI to test the PTP 550 link, follow this procedure:

Configure the Device Under Test IP addressing

/ip addressadd address=1.1.1.254/24 interface=ether1 network=1.1.1.0

Configure the Traffic Generator IP addressing

/ip addressadd address=1.1.1.1/24 interface=ether1 network=1.1.1.0 

/tool traffic-generator packet-templateadd name=r12 header-stack=mac,ip,udp ip-gateway=1.1.1.254 ip-dst=2.2.2.2 

Note: To force MAC address re-discovery (on device/configuration change, apply empty "set" command to necessary packet-templates) 

Run the Test

/tool traffic-generatorquick tx-template=r12 packet-size=60 mbps=300

Note: We are specifying 60 byte packet in traffic generator to get a 64 byte packet on the Ethernet

[admin@TrafficGen] > /tool traffic-gen quick tx-template=r12 packet-size=60 mbps=12024     0         185 422  91.9Mbps       185 190  88.8Mbps                     232   3.0Mbps 16us   24     1         213 397 105.8Mbps       212 747 102.1Mbps                     650   3.7Mbps 10.6us 24     2         186 245  92.3Mbps       186 185  89.3Mbps                      60   3.0Mbps 16.4us 24     3         213 685 105.9Mbps       212 961 102.2Mbps                     724   3.7Mbps 10.8us 24     4         249 142 119.5Mbps       180 400  86.5Mbps                  68 742  32.9Mbps 13.2us 24     5         249 141 119.5Mbps       193 158  92.7Mbps                  55 983  26.8Mbps 11.1us 24     TOT     1 297 032 635.3Mbps     1 170 641 561.9Mbps                 126 391  73.4Mbps 10.6us  

Verify Device Under Test forwarding

[admin@DUT] > /interface monitor-traffic aggregate,ether1,ether6,ether11                     name:               ether1    ether6   ether11    rx-packets-per-second:  1 235 620   481 094   487 045   267 469      rx-drops-per-second:          0         0         0         0     rx-errors-per-second:          0         0         0         0       rx-bits-per-second:  593.0Mbps 230.9Mbps 233.7Mbps 128.3Mbps    tx-packets-per-second:  1 233 862   360 750   360 402   512 692      tx-drops-per-second:          0         0         0         0     tx-errors-per-second:          0         0         0         0       tx-bits-per-second:  603.9Mbps 178.9Mbps 178.7Mbps 246.0Mbps 

Note:  After running the test you can see that total throughput of 64 byte packets is  1,170,641 pps which is faster than is shown in the Routerboard results (due to fast-path mode being enabled by default).

Run the Test with Alternate Packet Sizes

/tool traffic-generator

quick tx-template=r12 packet-size=508 mbps=500

/tool traffic-generator

quick tx-template=r12 packet-size=1514 mbps=500

Note:  Tests performed with 1518 byte packet size then max throughput will be 2.9 Gbps (wire speed capacity of all interfaces reached).

Example:  Bridging throughput testing with Mikrotik Traffic Generator Tool (CLI)

To use the Mikrotik Traffic Generator Tool CLI to test the PTP 550 link, follow this procedure:

Configure the Device Under Test IP addressing

/interface bridge add

/interface bridge port

add bridge=bridge1 interface=ether1 

Configure the Traffic Generator IP addressing

/ip address

add address=1.1.1.1/24 interface=ether1 network=1.1.1.0

/tool traffic-generator packet-template

add header-stack=mac,ip,udp ip-src=1.1.1.1/32 ip-dst=2.2.2.2/32 name=b12

add header-stack=mac,ip,udp ip-src=1.1.1.1/32 ip-dst=3.3.3.3/32 name=b13 

Run the Test

/tool traffic-generator

quick tx-template=b12,b13 packet-size=60 mbps=200

/tool traffic-generator

quick tx-template=b12,b13 packet-size=508 mbps=500

/tool traffic-generator

quick tx-template=b12,b13 packet-size=1514 mbps=500 

With 60 byte packet size, transmission speed is about 1,400,000 pps: 

187    0         195 659  97.0Mbps       195 640  93.9Mbps                      19   3.1Mbps 22us   187    1         236 906 117.5Mbps       221 901 106.5Mbps                  15 005  10.9Mbps 18.7us 187    2         202 678 100.5Mbps       202 678  97.2Mbps                       0   3.2Mbps 18.7us 187    3         238 750 118.4Mbps       231 348 111.0Mbps                   7 402   7.3Mbps 12.1us 187    4         263 906 126.6Mbps       256 146 122.9Mbps                   7 760   3.7Mbps 23.9us 187    5         263 906 126.6Mbps       256 030 122.8Mbps                   7 876   3.7Mbps 14.3us 187    TOT     1 401 805 686.8Mbps     1 363 743 654.5Mbps                  38 062  32.2Mbps 12.1us 

With 1518 byte packet size, transmission speed is wire speed maximum, requiring that additional streams are added to fully exercise the link:

11     TOT       243 587   2.9Gbps       241 695   2.9Gbps                   1 892  25.5Mbps 1.04ms

 Reference:

https://wiki.mikrotik.com/wiki/Manual:Performance_Testing_with_Traffic_Generator

6 Likes

A post was split to a new topic: PTP 550 load balancing with single source/destination