Configuration setups for neutrality inference

Basic setup

 Network parameters

  • Link capacity: In all our emulated topologies, the bandwidth of the bottleneck links is 100Mbps. This is the highest value we can use at the moment without saturating the CPU of the servers running the emulation.
  • Queue size: The queue size of each link is automatically chosen by the emulator according to the maximum RTT of the paths that traverse that link (each queue is large enough to accommodate one RTT’s worth of traffic).
  • RTT: By default 50msec.
  • Traffic differentiation: LINE implements two differentiation mechanisms, shaping and policing. For each non-neutral link, we configure two performance classes, c1 and c2, with c1 always having higher priority. Each class is assigned a weight that indicates how much of the link’s capacity that class may consume. In case of shaping, the two weights always add up to 1. The default weight tuple for shaping is (0.7,0.3), which means that c1 can consume up to 70% of the link’s capacity, while c2 can only consume 30%. The default weight tuple for policing is (1.0,0.3).

 Traffic parameters

  • Parallel connections: Each pair of end-hosts maintains a configurable number of parallel “communication channels” with a default value of 15.
  • TCP flow rate on each communication channel follows a Poisson distribution with a default mean value of 0.1 flows/sec.
  • TCP flow size follows a Pareto distribution with a default exponent parameter of 2 and default scale parameter of 10Mb; these values lead to a default mean flow size of 2*10Mb/(2-1) = 20Mb.
  • Congestion control: LINE implements the CUBIC and NewReno congestion-control algorithms; by default we use CUBIC.

Measurement parameters

  • Experiment duration: by default 10min.
  • Measurement interval: by default 100msec.
  • Loss-rate threshold: by default 5%.

Dumbell topology

Shown in Figure 1. Links 1 and 2 have capacity 100Mbps, and all other links have capacity 1Gbps. Link propagation delay varies per experiment. In some experiments, link 1 implements policing or shaping (with a varying weight tuple).

 

                  

                                                                   Figure 1

 

There is traffic between 4 non-overlapping pairs of end-hosts (between 3, 5, 7, 9 and 4, 6, 8, 10, respectively). Each end-host pair maintains one communication channel with TCP traffic of varying parameters (this is the traffic that we measure and run our algorithm on), as well as a UDP-CBR flow with sending rate 0.5Mbps in each direction (these act as background traffic).

We perform 9 experiment sets for this topology. We show representative results from the first six in the SIGCOMM paper and from the remaining three in our technical report.

The corresponding LINE configuration files are in here.

Larger topology

Shown in Figure 2. Links adjacent to end-hosts have capacity 200Mbps, and links between routers have capacity 100Mbps. All links have propagation delay 10ms. In some experiments, links 5, 14, and 20 implement policing with weight tuple (1.0,0.3).


Figure 2

We generate two types of flow between the end-hosts: short flows of mean size 1Mb, 10Mb or 40Mb, and long flows of mean size 10Gb. In all experiments where there is traffic differentiation, the short flows belong to class c1 and the long flows to class c2.

We generate traffic that we measure and analyze with our algorithm as follows:

  • Each of the following end-host pairs maintain 2 communication channels with long flows: (15,19); (15,23); (15,27); (19,23); (19,27); (23,27); (16,20); (16,24); (16,28); (20,24); (24,28); (24,28).
  • Each of the following end-host pairs maintain 6 communication channels with short flows of mixed sizes: (13,17); (13,21); (13,25); (17,21); (17,25); (21,25); (14,18); (14,22); (14,26); (18,22); (18,26); (22,26).

We generate background traffic as follows:

  • Each of the following end-host pairs maintain 8 communication channels with short flows of mixed sizes: (29,31); (29,33); (31,33).
  • Each of the following end-host pairs maintain 2 communication channels with long flows: (30,32); (30,34); (32,34).

The corresponding LINE configuration files can be found here.