Add New Page: You are not allowed to add pages Select section/namespace. New page title.
 

Commotion Lab Testing

Overview

The testbed consists of several RF-isolating enclosures connected together with a special RF switch. Each enclosure contains a single Ubiquity Picostation running Commotion. Wireless connections (and their quality) among the Commotion nodes are determined by the RF switch. We have deployed 8 nodes in this environment, not all of which are online at this time.

The enclosures are made by Ramsey and the RF Switch is a 50PMA-30 made by JFW Industries.

Switch configuration

The RF switch is programmed with a series of XML documents. These XML documents can represent either a) Literal attenuation values for the RF signal between nodes, or b) “Geographic” location of nodes in 2D space where attenuation values are determined using a freespace loss model.

The following is an example of an XML document that configures the switch with literal attenuation values (a):

@
<MESHTEST>
  <PATHLOSS>Switch configuration
    <INPUTS>1 2 3 4 5 6 7 8</INPUTS>
    <MATRIX>
200	25 	200 	200 	200 	200 	200 	200
25	200 	25 	200 	200 	200 	200 	200
200	25 	200 	200 	200 	200 	25 	200
200	200 	200 	200 	200 	200 	200 	200
200	200 	200 	200 	200 	200 	200 	200
200	200 	200 	200 	200 	200 	200 	200
200	200 	25 	200 	200 	200 	200 	25
200	200 	200 	200 	200 	200 	25 	200
    </MATRIX>
  </PATHLOSS>
</MESHTEST>
@

The literal attenuation values must all fall within a particular range. The upper limit of the range is 200. The recommended lower limit of the range is 25. Following these guidelines means that the switch will get attenuation values that fall within its limits (0 to 127) and account for the switch's natural “input loss” (of around 25db). Using anything less than 25db is known to cause the switch to “reflect” the RF signal rather than attenuate it. Be careful.

The following is an example of an XML document that configures the switch using geographic node locations (b):

@
<MESHTEST>
  <PHYSICAL UNITS="meters" DIMENSION="2" MODEL="freespace">
    <NODE INPUT="1" X="400" Y="549"></NODE>
    <NODE INPUT="2" X="806" Y="64"></NODE>
    <NODE INPUT="3" X="919" Y="82" DISABLE="true"></NODE>
    <NODE INPUT="4" X="150" Y="844" DISABLE="true"></NODE>
    <NODE INPUT="5" X="910" Y="151" DISABLE="true"></NODE>
    <NODE INPUT="6" X="582" Y="807" DISABLE="true"></NODE>
    <NODE INPUT="7" X="286" Y="217" DISABLE="true"></NODE>
    <NODE INPUT="8" X="50" Y="285" DISABLE="true"></NODE>
    <NODE INPUT="9" X="26" Y="730" DISABLE="true"></NODE>
    <NODE INPUT="10" X="24" Y="710" DISABLE="true"></NODE>
    <NODE INPUT="11" X="797" Y="110" DISABLE="true"></NODE>
    <NODE INPUT="12" X="105" Y="653" DISABLE="true"></NODE>
  </PHYSICAL>
</MESHTEST>
@

Geographic configuration does not have to be done by hand. Using a Java application, the nodes can be visually placed within an imaginary 2D space.

Remote management

Each of the Commotion nodes is connected to a management LAN via their Ethernet interface. A host machine is also physically connected to the management LAN. Using a series of SSH tunnels, OTI can reach this management host machine to configure the nodes or the RF switch.

First test

For our first test, we configured 5 Commotion nodes in a “line”.

Results for PR3: The link quality between each was excellent: a → b: 1.118

b → c: 1.128

c → g: 1.063

g → h: 1.000

Then, using iperf (tcp), we took performance measurements:

a < - > b < - > c < - > g < - > h: 4.95 Mbps

a < - > b < - > c < - > g: 5.16 Mbps

a < - > b < - > c: 9.10 Mbps

a < - > b: 15.8 Mbps

Rerun results for PR3: The link quality between each was excellent:

a → b: 1.118

b → c: 1.000

c → d: 1.118

d → e: 1.118

Then, using iperf (tcp), we took performance measurements:

a < - > b < - > c < - > d < - > e: 4.78 Mbps

a < - > b < - > c < - > d: 6.04 Mbps

a < - > b < - > c: 8.82 Mbps

a < - > b: 18.1 Mbps

Results for DR1.1: The link quality between each was excellent:

a → b: 1.000

b → c: 1.128

c → d: 1.287

d → e: 1.290

Then, using iperf (tcp), we took performance measurements:

a < - > b < - > c < - > d < - > e: 5.83 Mbps

a < - > b < - > c < - > d: 6.97 Mbps

a < - > b < - > c: 12.4 Mbps

a < - > b: 30.4 Mbps

Results for Version 1.0 (with encryption!): The link quality between each was excellent:

a → b: 1.266

b → c: 1.063

c → d: 1.198

d → e: 1.128

Then, using iperf (tcp), we took performance measurements:

a < - > b < - > c < - > d < - > e: 4.50 Mbps

a < - > b < - > c < - > d: 5.33 Mbps

a < - > b < - > c: 8.91 Mbps

a < - > b: 27.4 Mbps

Results for Version 1.0 (sans encryption!): The link quality between each was excellent:

a → b: 1.063

b → c: 1.198

c → d: 1.202

d → e: 1.287

Then, using iperf (tcp), we took performance measurements:

a < - > b < - > c < - > d < - > e: 5.11 Mbps

a < - > b < - > c < - > d: 6.43 Mbps

a < - > b < - > c: 9.31 Mbps

a < - > b: 28.1 Mbps

Results for Version 1.1

Encrypted

Link Quality:

a → b: 1.220

b → c: 1.427

c → d: 1.886

d → e: 2.440

e → f: 2.639

Performance Measurements:

a < - > b < - > c < - > d < - > e < - > f: 2.63 Mbps

a < - > b < - > c < - > d < - > e: 3.49 Mbps

a < - > b < - > c < - > d: 4.48 Mbps

a < - > b < - > c: 8.01 Mbps

a < - > b: 18.3 Mbps

Results for Version 1.1

Unencrypted

Link Quality:

a → b: 1.128

b → c: 1.466

c → d: 1.346

d → e: 1.570

e → f: 1.099

Performance Measurements:

a < - > b < - > c < - > d < - > e < - > f: 4.92 Mbps

a < - > b < - > c < - > d < - > e: 5.24 Mbps

a < - > b < - > c < - > d: 6.58 Mbps

a < - > b < - > c: 10.4 Mbps

a < - > b: 29.3 Mbps

Besides performance tests, we are hoping to use this environment for regression testing new builds. We are also looking for input from the Commotion dev community about how to integrate this lab environment with real-world test scenarios.

We systematically adjusted the RF attenuation values between two nodes (a, b) to see how it impacted throughput. The Attenuation Value refers to the attenuation values sent to the RF switch. Signal refers to the instantaneous signal strength between the nodes a and b as reported by @iw@ immediately before the test. Throughput is the result of the iperf test.

Here are the results for PR3:

Attenuation Value: Signal: Throughput:
30 -39 dBm 14.0 Mbps
32 -42 dBm 11.1 Mbps
34 -44 dBm 10.5 Mbps
36 -47 dBm 8.43 Mbps
38 -47 dBm 6.29 Mbps
40 -49 dBm 4.73 Mbps
42 -52 dBm 2.71 Mbps
44 -53 dBm 2.83 Mbps

Here are the results for PR3 rerun:

Attenuation Value: Signal: MCS Level: Throughput:
30 -41 dBm 6 17.4 Mbps
32 -42 dBm 7 16.8 Mbps
34 -43 dBm 7 16.5 Mbps
36 -46 dBm 7 16.8 Mbps
38 -47 dBm 7 17.0 Mbps
40 -50 dBm 7 16.6 Mbps
42 -52 dBm 7 17.1 Mbps
44 -55 dBm 7 16.4 Mbps
46 -56 dBm 7 16.2 Mbps
48 -58 dBm 7 16.6 Mbps
50 -61 dBm 7 16.9 Mbps
52 -63 dBm 7 16.0 Mbps
54 -64 dBm 7 16.4 Mbps
56 -67 dBm 7 16.3 Mbps
58 -69 dBm 7 16.1 Mbps
60 -71 dBm 7 13.9 Mbps
62 -73 dBm 6 12.6 Mbps
64 -80 dBm 3 7.71 Mbps
66 -78 dBm 3 11.0 Mbps
68 -81 dBm 3 7.38 Mbps

Here are the results for DR1.1:

Attenuation Value: Signal: MCS Level: Throughput:
30 -39 dBm ? 30.2 Mbps
32 -42 dBm 7 31.0 Mbps
34 -44 dBm 7 30.4 Mbps
36 -47 dBm 7 31.1 Mbps
38 -48 dBm 7 30.9 Mbps
40 -51 dBm 7 30.9 Mbps
42 -53 dBm 7 30.8 Mbps
44 -55 dBm 7 31.1 Mbps
46 -57 dBm 7 31.1 Mbps
48 -60 dBm 7 29.0 Mbps
50 -62 dBm 7 30.6 Mbps
52 -65 dBm 7 30.5 Mbps
54 -67 dBm 7 30.6 Mbps
56 -69 dBm 7 29.3 Mbps
58 -71 dBm 7 25.8 Mbps
60 -73 dBm 5 24.3 Mbps
62 -76 dBm 5 20.1 Mbps
64 -77 dBm 4 20.5 Mbps
66 -79 dBm 4 19.4 Mbps
68 -81 dBm 4 14.1 Mbps

Rerun for the results of DR1.1:

Attenuation Value: Signal: MCS Level: Throughput:
30-39 dBm728.4 Mbps
32-42 dBm728.7 Mbps
34-43 dBm728.8 Mbps
36-45 dBm728.5 Mbps
38-48 dBm728.5 Mbps
40-50 dBm728.7 Mbps
42-52 dBm728.5 Mbps
44-55 dBm728.5 Mbps
46-57 dBm728.3 Mbps
48-61 dBm728.3 Mbps
50-62 dBm728.1 Mbps
52-65 dBm728.5 Mbps
54-66 dBm728.3 Mbps
56-69 dBm727.7 Mbps
58-71 dBm724.5 Mbps
60-71 dBm622.3 Mbps
62-74 dBm519.8 Mbps
64-78 dBm618.2 Mbps
66-79 dBm418.9 Mbps
68-81 dBm413.5 Mbps

Here are the results for DR2:

Attenuation Value: Signal: MCS Level: Throughput:
30-40 dBm30.6 Mbps
32-42 dBm731.4 Mbps
34-44 dBm731.1 Mbps
36-46 dBm631.1 Mbps
38-48 dBm731.5 Mbps
40-50 dBm731.1 Mbps
42-54 dBm731.6 Mbps
44-55 dBm731.3 Mbps
46-59 dBm731.3 Mbps
48-61 dBm731.0 Mbps
50-63 dBm731.3 Mbps
52-66 dBm730.6 Mbps
54-67 dBm730.5 Mbps
56-70 dBm728.1 Mbps
58-72 dBm725.9 Mbps
60-74 dBm622.7 Mbps
62-75 dBm719.7 Mbps
64-77 dBm420.6 Mbps
66-80 dBm418.6 Mbps
68-82 dBm414.3 Mbps

Here are rerun results for DR2:

Attenuation Value: Signal: MCS Level: Throughput:
30-40 dBm29.3 Mbps
32-42 dBm729.7 Mbps
34-43 dBm729.6 Mbps
36-47 dBm729.5 Mbps
38-49 dBm729.8 Mbps
40-52 dBm729.7 Mbps
42-53 dBm729.6 Mbps
44-56 dBm729.4 Mbps
46-59 dBm729.7 Mbps
48-61 dBm729.8 Mbps
50-63 dBm729.5 Mbps
52-66 dBm729.3 Mbps
54-68 dBm728.8 Mbps
56-70 dBm726.7 Mbps
58-73 dBm723.4 Mbps
60-74 dBm521.0 Mbps
62-75 dBm517.8 Mbps
64-78 dBm419.4 Mbps
66-79 dBm417.1 Mbps
68-82 dBm313.3 Mbps

On DR2, with encryption enabled:

Attenuation Value: Signal: MCS Level: Throughput:
30-41 dBm29.5 Mbps
32-42 dBm729.0 Mbps
34-45 dBm729.5 Mbps
36-47 dBm729.2 Mbps
38-49 dBm729.0 Mbps
40-51 dBm629.5 Mbps
42-53 dBm729.6 Mbps
44-56 dBm728.9 Mbps
46-57 dBm729.1 Mbps
48-62 dBm729.3 Mbps
50-63 dBm728.7 Mbps
52-66 dBm729.1 Mbps
54-67 dBm727.0 Mbps
56-70 dBm726.6 Mbps
58-71 dBm724.3 Mbps
60-73 dBm622.1 Mbps
62-75 dBm518.9 Mbps
64-77 dBm419.1 Mbps
66-80 dBm417.3 Mbps
68-82 dBm413.6 Mbps

On DR2, with software encryption on sender and hardware encryption on receiver:

Attenuation Value: Signal: MCS Level: Throughput:
30-41 dBm210.4 Mbps
32-42 dBm710.4 Mbps
34-49 dBm710.7 Mbps
36-47 dBm710.7 Mbps
38-49 dBm710.5 Mbps
40-51 dBm710.7 Mbps
42-52 dBm710.5 Mbps
44-55 dBm710.6 Mbps
46-58 dBm710.3 Mbps
48-62 dBm710.6 Mbps
50-62 dBm710.5 Mbps
52-66 dBm710.5 Mbps
54-68 dBm610.6 Mbps
56-71 dBm710.4 Mbps
58-71 dBm710.2 Mbps
60-74 dBm610.2 Mbps
62-75 dBm59.89 Mbps
64-76 dBm410.3 Mbps
66-80 dBm410.0 Mbps
68-81 dBm48.91 Mbps

On DR2, with hardware encryption on sender and software encryption on receiver:

Attenuation Value: Signal: MCS Level: Throughput:
30-41 dBm211.5 Mbps
32-42 dBm711.2 Mbps
34-44 dBm711.2 Mbps
36-47 dBm711.0 Mbps
38-48 dBm711.1 Mbps
40-50 dBm711.0 Mbps
42-52 dBm711.1 Mbps
44-56 dBm711.1 Mbps
46-58 dBm711.1 Mbps
48-62 dBm711.4 Mbps
50-63 dBm710.9 Mbps
52-65 dBm711.2 Mbps
54-67 dBm711.1 Mbps
56-70 dBm711.2 Mbps
58-72 dBm711.0 Mbps
60-74 dBm611.1 Mbps
62-75 dBm511.3 Mbps
64-77 dBm411.4 Mbps
66-78 dBm411.2 Mbps
68-80 dBm410.8 Mbps

On DR2, with software encryption on sender _and_ receiver:

Attenuation Value: Signal: MCS Level: Throughput:
30-40 dBm27.07 Mbps
32-42 dBm77.06 Mbps
34-44 dBm77.09 Mbps
36-47 dBm77.10 Mbps
38-48 dBm77.03 Mbps
40-52 dBm77.04 Mbps
42-53 dBm77.03 Mbps
44-56 dBm77.06 Mbps
46-57 dBm77.05 Mbps
48-60 dBm77.12 Mbps
50-62 dBm77.09 Mbps
52-65 dBm77.08 Mbps
54-67 dBm77.09 Mbps
56-69 dBm77.06 Mbps
58-72 dBm77.13 Mbps
60-74 dBm67.08 Mbps
62-75 dBm57.10 Mbps
64-77 dBm47.04 Mbps
66-79 dBm47.20 Mbps
68-82 dBm47.10 Mbps

On version 1.0 (with encryption)

Attenuation Value: Signal: MCS Level: Throughput:
30-41 dBm327.6 Mbps
32-42 dBm627.3 Mbps
34-43 dBm727.5 Mbps
36-46 dBm727.6 Mbps
38-49 dBm727.4 Mbps
40-51 dBm627.4 Mbps
42-52 dBm727.4 Mbps
44-56 dBm727.5 Mbps
46-59 dBm727.1 Mbps
48-61 dBm726.8 Mbps
50-62 dBm726.2 Mbps
52-65 dBm726.4 Mbps
54-66 dBm727.0 Mbps
56-68 dBm725.0 Mbps
58-70 dBm723.8 Mbps
60-72 dBm520.7 Mbps
62-74 dBm517.3 Mbps
64-81 dBm311.1 Mbps
66-78 dBm315.0 Mbps
68-81 dBm311.1 Mbps

On Version 1.0 (with power at 0db – a lab testing trick – and encryption):

Attenuation Value: Signal: MCS Level: Throughput:
30-67 dBm413.7 Mbps
32-68 dBm411.8 Mbps
34-71 dBm49.89 Mbps
36-73 dBm38.58 Mbps
38-74 dBm26.57 Mbps
40-77 dBm14.18 Mbps
42-78 dBm13.52 Mbps
44-81 dBm2.92 Mbps
46-83 dBm1.95 Mbps
48-85 dBm
48-85 dBm07.58 Mbps
50-88 dBm47.49 Mbps
52-87 dBm47.51 Mbps
54-90 dBm47.30 Mbps
56-92 dBm47.11 Mbps
58-92 dBm47.25 Mbps
60-96 dBm47.14 Mbps
62-96 dBm46.92 Mbps
64-96 dBm46.96 Mbps

On Version 1.1 (with power at 0db and encryption):

Attenuation Value: Signal: MCS Level: Throughput:
30-37 dBm711.7 Mbps
32-35 dBm611.9 Mbps
34-35 dBm712.6 Mbps
36-35 dBm72.87 Mbps
38-35 dBm510.4 Mbps
40-35 dBm512.5 Mbps
42-35 dBm711.9 Mbps
44-37 dBm712.6 Mbps
46-35 dBm713.1 Mbps
48-35 dBm7537 Mbps
50-36 dBm512.0 Mbps
52-36 dBm78.54 Mbps
54-37 dBm611.3 Mbps
56-35 dBm72.96 Mbps
58-35 dBm610.2 Mbps