wikiroute

networking recipes

User Tools

Site Tools


qos_project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
qos_project [2017/11/29 09:30] – [Extracts] carineqos_project [2017/11/30 18:55] – [6. [CO2] Implementing the Applications and Tools] samer
Line 128: Line 128:
 </file> </file>
  
-Similarly, the configuration of the GL-iNET router +Similarly, the configuration of the GL-iNET router below shows the following: 
 + 
 +  * The WiFi interface is configured with a static IP address 192.168.8.1/24 
 +  * The WAN interface is configured with a static IP address 10.0.0.1/24 
 +  * A static route enables GL-iNET to reach the network 192.168.200.0/24 via 10.0.0.2 of the other router.
  
 <file bash /etc/config/network> <file bash /etc/config/network>
Line 139: Line 143:
         option _orig_ifname 'eth1'         option _orig_ifname 'eth1'
         option _orig_bridge 'false'         option _orig_bridge 'false'
-This interface (wifi) is configured with a static IP address 192.168.8.1/24 
  
 config interface 'wan' config interface 'wan'
Line 147: Line 150:
         option ipaddr '10.0.0.1'         option ipaddr '10.0.0.1'
         option netmask '255.255.255.0'         option netmask '255.255.255.0'
-This interface (connected to the other router) is configured with a static IP address 10.0.0.1/24 
  
 config route config route
Line 154: Line 156:
         option netmask '255.255.255.0'         option netmask '255.255.255.0'
         option gateway '10.0.0.2'         option gateway '10.0.0.2'
-This route enables GL-iNET to reach the network 192.168.200.0/24 via 10.0.0.2 of the other router. +  
 +</file>
  
 +The two routers allocate IP addresses using DHCP. In order to facilitate the usage of the platform, fixed allocations are configured for the end hosts. This is configured in ''/etc/config/dhcp'' on each router as in the following.  
  
-</file> 
-===== Extracts ===== 
-#On TPlink router 
 <file /etc/config/dhcp> <file /etc/config/dhcp>
-config dnsmasq 
-        option domainneeded '1' 
-        option boguspriv '1' 
-        option filterwin2k '0' 
-        option localise_queries '1' 
-        option rebind_protection '1' 
-        option rebind_localhost '1' 
-        option local '/lan/' 
-        option domain 'lan' 
-        option expandhosts '1' 
-        option nonegcache '0' 
-        option authoritative '1' 
-        option readethers '1' 
-        option leasefile '/tmp/dhcp.leases' 
-        option resolvfile '/tmp/resolv.conf.auto' 
-        option localservice '1' 
- 
 config dhcp 'lan' config dhcp 'lan'
         option interface 'lan'         option interface 'lan'
Line 185: Line 169:
         option dhcpv6 'server'         option dhcpv6 'server'
         option ra 'server'         option ra 'server'
- 
-config dhcp 'wan' 
-        option interface 'wan' 
-        option ignore '1' 
- 
-config odhcpd 'odhcpd' 
-        option maindhcp '0' 
-        option leasefile '/tmp/hosts/odhcpd' 
-        option leasetrigger '/usr/sbin/odhcpd-update' 
  
 config host config host
Line 205: Line 180:
         option ip '192.168.200.193'         option ip '192.168.200.193'
 </file> </file>
-# DHCP configuration on router GL-iNet: 
-<file /etc/config/dhcp> 
-config dnsmasq 
- option domainneeded '1' 
- option boguspriv '1' 
- option localise_queries '1' 
- option rebind_protection '1' 
- option rebind_localhost '1' 
- option local '/lan/' 
- option domain 'lan' 
- option expandhosts '1' 
- option authoritative '1' 
- option readethers '1' 
- option leasefile '/tmp/dhcp.leases' 
- option resolvfile '/tmp/resolv.conf.auto' 
- 
-config dhcp 'lan' 
- option interface 'lan' 
- option start '100' 
- option limit '150' 
- option leasetime '12h' 
- option dhcpv6 'server' 
- option ra 'server' 
- option ra_management '1' 
- 
-config dhcp 'wan' 
- option interface 'wan' 
- option ignore '1' 
- 
-config odhcpd 'odhcpd' 
- option maindhcp '0' 
- option leasefile '/tmp/hosts/odhcpd' 
- option leasetrigger '/usr/sbin/odhcpd-update' 
  
-config dhcp +Finally, we verify the routing and addressing on the Raspberry Pi devices using ''ifconfig'' (or ''ip addr show'') and ''ip route'' commands
- option start '100' +
- option leasetime '12h' +
- option limit '150' +
- option interface 'eth1' +
- +
-config domain 'localhost' +
- option name 'console.gl-inet.com' +
- option ip '192.168.8.1' +
-</file> +
- +
-#ifconfig on raspberry pi2+
  
 <code bash>  <code bash> 
Line 264: Line 195:
           collisions:0 txqueuelen:1000           collisions:0 txqueuelen:1000
           RX bytes:229130 (223.7 KiB)  TX bytes:121127 (118.2 KiB)           RX bytes:229130 (223.7 KiB)  TX bytes:121127 (118.2 KiB)
- 
-lo        Link encap:Local Loopback 
-          inet addr:127.0.0.1  Mask:255.0.0.0 
-          inet6 addr: ::1/128 Scope:Host 
-          UP LOOPBACK RUNNING  MTU:65536  Metric:1 
-          RX packets:221 errors:0 dropped:0 overruns:0 frame:0 
-          TX packets:221 errors:0 dropped:0 overruns:0 carrier:0 
-          collisions:0 txqueuelen:1 
-          RX bytes:20606 (20.1 KiB)  TX bytes:20606 (20.1 KiB) 
- 
- 
 </code> </code>
-#ifconfig on raspberry pi3 
- 
-<code bash> 
-pi@raspberrypi:~ $ ifconfig 
-eth0      Link encap:Ethernet  HWaddr b8:27:eb:20:aa:54   
-          inet addr:192.168.200.193  Bcast:192.168.200.255  Mask:255.255.255.0 
-          inet6 addr: fe80::c7d8:36cf:a404:2c5/64 Scope:Link 
-          inet6 addr: fdd5:bc83:a776:0:7379:7bf5:f8c5:b6ff/64 Scope:Global 
-          inet6 addr: fdd5:bc83:a776::193/128 Scope:Global 
-          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 
-          RX packets:745 errors:0 dropped:3 overruns:0 frame:0 
-          TX packets:394 errors:0 dropped:0 overruns:0 carrier:0 
-          collisions:0 txqueuelen:1000  
-          RX bytes:66979 (65.4 KiB)  TX bytes:48816 (47.6 KiB) 
- 
-lo        Link encap:Local Loopback   
-          inet addr:127.0.0.1  Mask:255.0.0.0 
-          inet6 addr: ::1/128 Scope:Host 
-          UP LOOPBACK RUNNING  MTU:65536  Metric:1 
-          RX packets:256 errors:0 dropped:0 overruns:0 frame:0 
-          TX packets:256 errors:0 dropped:0 overruns:0 carrier:0 
-          collisions:0 txqueuelen: 
-          RX bytes:20736 (20.2 KiB)  TX bytes:20736 (20.2 KiB) 
-</code> 
-#ip route on raspberry pi2 
  
 <code bash>  <code bash> 
Line 307: Line 202:
 192.168.200.0/24 dev eth0  proto kernel  scope link  src 192.168.200.192  metric                                                                                                                                                              202 192.168.200.0/24 dev eth0  proto kernel  scope link  src 192.168.200.192  metric                                                                                                                                                              202
 </code> </code>
-#ip route on raspberry pi3+===== -. [CO2] Implementing the Applications and Tools ===== 
 +In order to describe and analyze the basic steps for installing and using the tools and client/server applications, we need to look carefully to these four applications: iperf, flent, VLC, HTTP. 
 + 
 +Let us start with the application iperf. In the following, we present a short tutorial on the main functions of the perf tool. 
 + 
 +- To activate iperf3: 
 +  * On the server side: ''iperf3 -s'' 
 +  * On the client side: ''iperf3 -c 192.168.200.192'', where 192.168.200.192is the IP address of the server. 
 + 
 +- To visualize UDP trafic with a specific bandwidth: 
 + 
 +  * On the client side: iperf3 -c 192.168.200.192 -u -b 2M 
 + 
 +Here we set the bandwidth with UDP to 2Mbit/s. 
 +Note that by default ,UDP sets the bandwidth to 1Mbit/s 
 + 
 +- To extend the transmission time(second) as well as the number packets sent: 
 +     * On the Client side: iperf3 -c 192.168.200.192 -t 15 
 +Note that  by default, iperf3 sets the time to 10 seconds 
 + 
 +- To reverse mode(server sends, client receives): 
 +     * On the Client side: iper3 -c 192.168.200.192 -R  
 + 
 +- To end multiple flows: 
 +     * On the Client side: iper3 -c 192.168.200.192 -P 2 -t 60 
 + 
 +Here we are sending 2 flows in 1 min(60 seconds) 
 +Note that we need to extend more the tx time in order to have similar throughput for the 2 flows so that we don't consider it as a fairness issue. 
 + 
 +Let's analyze flent application: 
 +            * On the Server side: netserver & 
 +-To visualize one TCP stream: 
 +            * On the Client side:  flent tcp_upload -p totals -l 60 -H 192.168.200.192 -t title2 -o test2.png 
 +-To visualize 12 TCP streams: 
 +            * On the Client side:  flent tcp_12up -p totals -l 60 -H 192.168.200.192 -t title3 -o test3.png 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
  
-<code bash> 
  
-</code> 
  
  
qos_project.txt · Last modified: 2021/08/28 09:58 by samer