Hi, guys

These days I tested the bandwidth isolation function in my
router(tl-wr841n), in which has been implemented the openflow1.0. By taking
the reference in
http://archive.openflow.org/wk/index.php/Slicing#Testing_without_FlowVisor,
I make the configuration well, but the result seems to tell me the
bandwidth function has nothing to do with the tl-wr841n. I wonder if the
equipment is the cause or not.

The test topology is follow: three PCs with Ubuntu 13.04, two for the iperf
clients(PC1 is 192.168.0.12(switch port 1), PC2 is 192.168.0.35(switch port
2), both mask is 255.255.255.0), and the other for iperf server(PC3 is
192.168.0.2(switch port 3), with tcp server at port 5001 and udp server at
port 5002). Here is the test result:

1. Without the the enqueue actions.
Add the following flows by using dpctl CLI:

arp,in_port=1,idle_timeout=0,actions=output:3
arp,in_port=2,idle_timeout=0,actions=output:3
arp,in_port=3,idle_timeout=0,actions=output:1,output:2
icmp,in_port=1,idle_timeout=0,actions=output:3
icmp,in_port=2,idle_timeout=0,actions=output:3
icmp,in_port=3,nw_dst=192.168.0.12,idle_timeout=0,actions=output:1
icmp,in_port=3,nw_dst=192.168.0.35,idle_timeout=0,actions=output:2
ip,in_port=1,nw_dst=192.168.0.2,idle_timeout=0,actions=output:3
ip,in_port=2,nw_dst=192.168.0.2,idle_timeout=0,actions=output:3
ip,in_port=3,nw_dst=192.168.0.12,idle_timeout=0,actions=output:1
ip,in_port=3,nw_dst=192.168.0.35,idle_timeout=0,actions=output:2

Then run the iperf server at PC3:

iperf -s
iperf -s -u -p 5002

run iperf client generating the tcp traffice at PC1:

iperf -c 192.168.0.2 -t 20 -i 2

run iperf client generating the udp traffice at PC2:

iperf -c 192.168.0.2 -p 5002 -u -b 60M -t 20 -i 2

The result shows that both client get the same bandwidth at about 27M/s.
Here comes the problem, generally, as an unfriendly CBR traffice, the udp
could grab more bandwidth, but the result shows udp and tcp share the
bandwidth friendly.

Then I make another test with the enqueue action:

2. With the enqueue actions:
The steps is similar to the above test. Before adding the flows, I add the
queue as:

dpctl add-queue tcp:localhost:6634 3 1 700
dpctl add-queue tcp:localhost:6634 3 2 300

Note that in the reference website, the command is "dpctl add-queue
tcp:localhost 3 1 6", the last parameter is 6 while the help of dpctl shows
the last parameter is perthousand bandwidth, which means the 1000 is the
full bandwidth. I think the perthousand bandwidth is reasonable.
then add the flows as:

ip,in_port=1,nw_dst=192.168.0.12,idle_timeout=0,actions=enqueue:3:1
ip,in_port=2,nw_dst=192.168.0.35,idle_timeout=0,actions=enqueue:3:2

Then run the iperf clients and server. The result is example the same as
without the enqueue actions. There must be something wrong with the
bandwidth isolation function in the router.

Has anyone tested this function in the openwrt equipment? Your any
suggestion will be thankful.
thans

Regards,
Lixu
_______________________________________________
openflow-discuss mailing list
openflow-discuss@lists.stanford.edu
https://mailman.stanford.edu/mailman/listinfo/openflow-discuss

Reply via email to