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