BattleMeshV5 Tests

General Rules

Tests

Be Quick or Be Stable Test

To be performed on a subset of the nodes and repeated only 1x for each protocol

 +----+
 | L1 |-----(A) : : : : : : (B)
 +----+      :       r1      |
             :               |
             :               |
             : r2            |
             :               |
             :            +----+
            (C)-----------| L2 |
                          +----+

Steps

  1. perform a continuous traceroute (mtr or wathever) from L1 to L2
  2. load the network with TCP (iperf or wathever) from L1 to L2
  3. see how many times (if any) the route flaps in 21 minutes

Goal

The ZooBab Test

To be performed on a subset of the nodes and repeated 3x for each protocol

 +----+
 | L1 |-----(A) : : : : : : (B)
 +----+      :       x       :
             :               :
           x :               : x
             :               :   
             :               :
             :               :
            (C)             (E)       
             |               |        +----+
            (D) : : : : : : (F)-------| L2 |
                     y                +----+

Steps

  1. load the network with TCP (iperf or wathever) from L1 to L2
  2. sleep for 3 minutes
  3. perform a traceroute from L1 to L2 and see if the routing protocol chooses the best route (L1->A->C->D->F->L2)

Goal

Convergence Time Test

To be performed on the whole mesh and repeated 3x for each protocol

           .~.~.~.~.~.~.~.~.~.~.~.       
    (A) : (                       ) 
         (                         )     
          (                       )
         (           (N)           )
          (                       )
         (                         )     
          (                       ) : (B)
         (        MESH CLOUD       )     
          .~.~.~.~.~.~.~.~.~.~.~.~.

Steps - part 1

  1. traceroute from one end (node A) to the other (node B) of the mesh until the path is stable

  2. find a critical node N in the path so that

    1. has good quality links with its neighbors (possibly more than one)
    2. if shut down the network does not split
  3. start a ping from A to B

  4. turn off N

  5. count the number of pings from the first lost ping to the first subsequent successful ping

Steps - part 2

  1. start a continuous traceroute (mtr or wathever) from node A to node B

  2. turn back on node N and start a stopwatch

  3. measure the time needed to get the node N (back) into the traceroute

Goal

Don't Cross the Streams Test

 +----+            .~.~.~.~.~.~.~.~.~.~.~.            +----+
 | L1 |-----(A) : (                       ) : (C)-----| L3 |
 +----+          (                         )          +----+
                  (                       )
                 (          MESH           )
                  (         CLOUD         )
 +----+          (                         )          +----+
 | L4 |-----(D) : (                       ) : (B)-----| L2 |
 +----+          (                         )          +----+
                  .~.~.~.~.~.~.~.~.~.~.~.~.

Steps

  1. start, at the same time:
    1. a TCP stream between L1 to L2
    2. a TCP stream between L3 to L4
    3. a stopwatch
  2. sleep for 21 minutes
  3. measure the total number of bytes transferred

Goal

BattleMeshV5/Tests (last edited 2012-03-01 11:12:55 by Clauz)