Have questions? Stuck? Please check our FAQ for some common questions and answers.

Description

In a network environment, reliability plays a very important role. If one link fails, the traffic flowing through the link will switch to other paths. This test case is used to test the time it takes for the path to switch. If the time is more than 5 minutes, then it was deemed to can't support so many switches.

In this test, we chose two types of topologies, ring, and full mesh. In the ring topology, we select any two adjacent switches, and create one host in each switch, enable traffic between this two host, and then disconnect the link of this two switches to observe the traffic recovery time. In full mesh topology, the steps are consistent with the above, except that you can select any other two switches and disconnect them.

This test will create multiple switches with ring or full mesh topology connected to one controller. Datapath depends on the flow tables needed, after the link disconnectd, the flows download to the switches in another path will start, when all the switches have these flow table entries, datapath can be recovery successfully.

By capture, the time can be caculated by the packets below

      1、The port status packet

      2、The last flow_mod packet

The test was done by different number of switches with the sequence of 100、200、300、400 ... ...(ring), and 10、20、30、40 ... ...(full mesh)

Suggestions

  1. The traffic enable mode
    Through the two hosts to do the operation of ping can trigger the flow download.
  2. The default datapath 
    The default datapath should be the optimal path that should be disconnected.

Preparation

  • Features install

    onos> feature:install onos-drivers
    onos> feature:install onos-openflow
    onos> feature:install onos-openflow-base
    onos> feature:install onos-app-fwd
    onos> feature:install onos-lldp-provider
    onos> feature:install onos-host-provider



Test steps

      1. Config IxNetwork with switches (first with 100 (ring) or 10 (full mesh) ) with ring or full mesh topology and two hosts in the adjacent switches (ring) or any other two switches (full mesh).

      2. Start the controller with the features install.

      3. Start the OF protocol of the switch.

      4. Wait until the channel is established and Echo message interaction started.

      5. Enable the traffic between this two hosts, wait until the hosts can ping through each other.

      6. Start the capture of IxNetwork.

      7. Disconnect the link of this two switches, and wait until the traffic recovery

      8. Stop the capture, analyse the messages captured. Write down the time of the port status message T1 and the time of the last flow mod message T2. Caculate the time of Datapath recovery time T=T2-T1

      9. Clean the configuration of controllers and IxNetwork.

      10. Repeat test step 1-9 for three times.

      11. Restart the test with another number of switches.

Test Results

  • Datapath Failure Recovery Time (ring)

    SwitchesFirst (ms)Second (ms)Third (ms)Avg (ms)
    10013819518571063
    2002365212818442112
    3005556510345315063
    4001052790631200710532
    50018281225231814219649
    60035883452973556838916
    70095209767595943977136
  • Datapath Failure Recovery Time (full mesh)

    SwitchesFirst (ms)Second (ms)Third (ms)Avg (ms)
    10702704857739
    20304443336361
    30488334341388
    40375387700487
    50311691706569
    60971587522660
    70512483721572
    80524794776698
  • Histogram of Datapath Failure Recovery Time

As the result shown, in ring topology, datapath failure recovery time increase significantly with the number of switches. But in full mesh topology, the time is no diffenence with the number of switches.

 

 

 

 

 

  • No labels