2015年11月9日 星期一

The Mesh Function Test Report


道德經:
信言不美,美言不信。善者不辯,辯者不善。知者不博,博者不知。聖人不積,既以為人己愈有,既以與人己愈多。天之道,利而不害;聖人之道,為而不爭。

1. Background and definition for Robin mesh scheme
"robin mesh" is a stand alone system and concerns all network and transport related topics. Based on OpenWrt kamikaze. B.A.T.M.A.N detects neighbors and distant nodes by broadcasting, receiving, and rebroadcasting originator messages (OGM) according to the rules of the B.A.T.M.A.N. algorithm. These OGMs are flooding through the mesh-cloud until they get lost or nobody has to rebroadcast them any more. Once a node receives an OGM message initiated from a distant node it is aware of the existence of the node.
1.1 Definition
gateway node
The node which offers Internet connectivity is called a gateway node and has to be simply connected to a xDSL router, or also to a device acting as STA (with no AP) in the way of client bridge.
client (repeater) node
A repeater node is simply powered on and palced in good location forward other nodes. A node receive OGMs by other nodes actives in the mesh cloud and knows network topology within one or two minutes; then BATMAN arrange the node routing table in order to discover the best path to an internet gateway.
          
Diagram 1-1 gateway node                    Diagram 1-2 client node
1.2 ROBIN interfaces
node
ath0
ath2
ath1
eth0
gateway
mesh and forward iface
batman WPA-PSK AP iface - default gateawy for private wlan users
batman open AP iface - default gateawy for pubblic wlan users
WAN iface
administratrive tasks on eth0:1
client
mesh and forward iface
batman WPA-PSK AP iface - default gateawy for private wlan users
br0 (ath1-eth0 bridge)
default gateawy for pub.wlan and wired users
node
tun iface (gate0)
Gateway and client
If a gateway is found batman will create a tun device and alters the routing table accordingly by setting a default route. Once you want Internet your traffic will end up in batman which will than contact the gateway and ask for an IP for the tun interface. The gateway will send an IP back so that your tun interface has an IP. Your traffic will be tunnelled to the gateway as long as you need it. At the end your client will release the IP.
2. Getting access to a node
Getting the first access to a node requires that you login via ssh (on windows you would need to install something like Putty). We can ssh to a node through,
(please see below diagram 2, ssh login by account root and password 0p3nm35h)
·         gateway node
o    wifi connection using open_AP IP or WPA-PSK_AP IP addresses
o    wired connection to a "free" ethernet port of the DSL Router (if combo) or via switch which connects DSL router
·         repeater (client) node
o    wired cable or wifi connection using open_AP IP or WPA-PSK_AP IP addresses
Diagram 2 -- ssh login by account root and password 0p3nm35h
3. Mesh Function Test
The mesh function is adopting from ROBIN mesh scheme, for our target board AP51 with 8M flash/16MB RAM, added to OpenWrt trunk code base, surely to play a role of mesh node.
The sources are coming from the open resource site, thanks to all forum developers.
OpenWrt Revision: kamikaze_trunk, or equivalent to Kamikaze 8.x
ROBIN Mesh Revision: beta-1.21.11
OpenWrt:
svn co https://svn.openwrt.org/openwrt/packages packages
ROBIN Mesh:
svn co https://svn2.hosted-projects.com/ansanto/robin/openwrt/kamikaze_8/packages/robin-mesh robin-mesh
3.1 Nodes Deployment -- serial chaining placement
number
Node
Mesh IP addr
MAC id

1
Gateway
5.33.192.154
00:12:cf:21:c0:9b
Internet connectivity
2
Client 1
5.131.126.160
00:12:cf:83:7e:a1
Forward other nodes
3
Client 2
5.28.131.152
00:18:84:1c:83:99
Forward other nodes
The customer’s firmware is a reference sample. So, I do two experiments, the first one is using customer’s one as reference. And the version I built (i.e. accton built version) is our main goal of experiment to practice. The test network diagram, please see below diagram 3.
Diagram 3 -- The AP 51 mesh function test network
3.2 Test considerations – choose a better WIFI bit rate at Taichung office area
The distance is away from 1.18 m between two nodes at various bit rate.
Bit rate
5.5
11
12
18
24
36
48
54
Throughput(avg)
2.35
3.35
3.19
3.20
3.12
3.19
3.21
3.38
The distance is away from 10.5 m between two nodes at various bit rate.
Bit rate
5.5
11
12
18
24
36
48
54
Throughput(avg)
2.32
3.4
3.1
2.6
2.46
2.5
2.57
2.6
So, I judge to use 11Mbps as bit rate for wifi radio 11g mode, and turn off the traffic control function for the mesh function, the testings are performed at the rate of 11 Mbps of this choice.
3.3 Test result
The test case is using Chariot TCP end-to-end throughput script.
The wifi 11g mode bit rate is set to 11Mbps.
Disable the traffic control
The background noise and interference is also existing.
End-to-end throughput
Taichung Office (12F)
Average
Mbps
Max
Mbps
Min
Mbps
Distance
Topology
Changed
Client 1 to gateway node
3.431
4.082
1.684
One hop(10.56m)
Y
Client 2 To Gateway node
2.617
3.941
1.156
Two hops(12.54m)
Y
Table 3-1 -- The action-built-version test result summary (office area,12F)
End-to-end throughput
Taichung Baseroom(B2)
Average
Mbps
Max
Mbps
Min
Mbps
Distance
Topology
Changed
Client 1 to gateway node
3.955
4.145
3.320
One hop(17.25m)
Y
Client 2 To Gateway node
3.639
4.324
1.001
Two hops(12.75m)
Y
Table 3-2 – The action-built-version test result summary (baseroom, B2)
Compressed image
Original raw version
Version With Mesh
Kernel
768KB
768KB
Root file system
1280KB
2560KB
Table 3-3 -- The action-built-version Size changed with compression
4. The result of Accton built firmware
The test settings on AP51 mesh function test are set up as below,
(a)The wifi 11g mode bit rate is set to 11Mbps.
(b) Disable the traffic control
(c)The test case is using
1. Chariot TCP end-to-end throughput script.
   2. Iperf
(d)The test field is at Taichung office area(12 Floor), and baseroom(B2), respectively.
4.1. One hop end-to-end throughput measurement
The data is generated by iperf (see diagram 4-1-1). Meanwhile, we watch on the batman packets activities, by using command “batman –c –d 1” and “batman –c –d 4” on the console command line(see diagram 4-1-2, 4-1-3). And after then, we use chariot to measure the throughput (see diagram 4-1-4).
Diagram 4-1-1: Iperf bandwidth monitoring

 Diagram 4-1-2 hops forwarding


Diagram 4-1-3 neighbors

Diagram 4-1-4 chariot throughput
4.2. Two hops end-to-end measurement(Office area, 12F)
The data is generated by iperf (see diagram 4-2-1). Meanwhile, we watch on the batman packets activities, by use command “batman –c –d 1” and “batman –c –d 4” on the console command line (see diagram 4-2-2, diagram 4-2-3). And then, we use chariot to measure the throughput(see diagram 4-2-4).
Diagram 4-2-1 iperf bandwidth monitoring

Diagram 4-2-2 hops forwarding

Diagram 4-2-3 neighbor

Diagram 4-2-4 chariot throughput


4.3 Remove the middle hop
Remove middle way hop, then add it again after 3 minutes.
1. To see from hop to hop activities
2. To see how fast the changes when recover the throughput if remove the middle hop. Shown as diagram 4-3-1.
Diagram 4-3-1 Remove the middle hop
4.4 Topology changed
We can use command “batman –c –d 1” or “batman –c –d 2”, or “batman –c –d 4”, to see detailed packet forwarding and mesh topology changed.


4.5 The test result in baseroom (B2)
4.5.1. One hop end-to-end throughput measurement


4.5.1. Two hop end-to-end throughput measurement

沒有留言:

張貼留言