qos_project
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
qos_project [2017/11/29 09:30] – [Extracts] carine | qos_project [2017/12/03 13:05] – [2. Software] samer | ||
---|---|---|---|
Line 12: | Line 12: | ||
- | [{{ :tp-link.jpg? | + | [{{ :glinet.jpg? |
- | + | ||
- | [{{ :glinet.jpg? | + | |
===== -. Software ===== | ===== -. Software ===== | ||
The following tools can help in assessing the QoS on the platform: | The following tools can help in assessing the QoS on the platform: | ||
- | Install and compile netperf: | + | * Install and compile netperf: |
<code bash> | <code bash> | ||
wget https:// | wget https:// | ||
Line 29: | Line 27: | ||
</ | </ | ||
- | Install matplotlib and fping | + | * Install matplotlib and fping |
<code bash> | <code bash> | ||
Line 42: | Line 40: | ||
</ | </ | ||
- | Install VLC as in this | + | * Install VLC as in this |
[[https:// | [[https:// | ||
Line 128: | Line 126: | ||
</ | </ | ||
- | Similarly, the configuration of the GL-iNET router | + | Similarly, the configuration of the GL-iNET router |
+ | |||
+ | * The WiFi interface is configured with a static IP address 192.168.8.1/ | ||
+ | * The WAN interface is configured with a static IP address 10.0.0.1/ | ||
+ | * A static route enables GL-iNET to reach the network 192.168.200.0/ | ||
<file bash / | <file bash / | ||
Line 139: | Line 141: | ||
option _orig_ifname ' | option _orig_ifname ' | ||
option _orig_bridge ' | option _orig_bridge ' | ||
- | This interface (wifi) is configured with a static IP address 192.168.8.1/ | ||
config interface ' | config interface ' | ||
Line 147: | Line 148: | ||
option ipaddr ' | option ipaddr ' | ||
option netmask ' | option netmask ' | ||
- | 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 154: | ||
option netmask ' | option netmask ' | ||
option gateway ' | option gateway ' | ||
- | 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 ''/ | ||
- | </ | ||
- | ===== Extracts ===== | ||
- | #On TPlink router | ||
<file / | <file / | ||
- | config dnsmasq | ||
- | option domainneeded ' | ||
- | option boguspriv ' | ||
- | option filterwin2k ' | ||
- | option localise_queries ' | ||
- | option rebind_protection ' | ||
- | option rebind_localhost ' | ||
- | option local '/ | ||
- | option domain ' | ||
- | option expandhosts ' | ||
- | option nonegcache ' | ||
- | option authoritative ' | ||
- | option readethers ' | ||
- | option leasefile '/ | ||
- | option resolvfile '/ | ||
- | option localservice ' | ||
- | |||
config dhcp ' | config dhcp ' | ||
option interface ' | option interface ' | ||
Line 185: | Line 167: | ||
option dhcpv6 ' | option dhcpv6 ' | ||
option ra ' | option ra ' | ||
- | |||
- | config dhcp ' | ||
- | option interface ' | ||
- | option ignore ' | ||
- | |||
- | config odhcpd ' | ||
- | option maindhcp ' | ||
- | option leasefile '/ | ||
- | option leasetrigger '/ | ||
config host | config host | ||
Line 204: | Line 177: | ||
option mac ' | option mac ' | ||
option ip ' | option ip ' | ||
- | </ | ||
- | # DHCP configuration on router GL-iNet: | ||
- | <file / | ||
- | config dnsmasq | ||
- | option domainneeded ' | ||
- | option boguspriv ' | ||
- | option localise_queries ' | ||
- | option rebind_protection ' | ||
- | option rebind_localhost ' | ||
- | option local '/ | ||
- | option domain ' | ||
- | option expandhosts ' | ||
- | option authoritative ' | ||
- | option readethers ' | ||
- | option leasefile '/ | ||
- | option resolvfile '/ | ||
- | |||
- | config dhcp ' | ||
- | option interface ' | ||
- | option start ' | ||
- | option limit ' | ||
- | option leasetime ' | ||
- | option dhcpv6 ' | ||
- | option ra ' | ||
- | option ra_management ' | ||
- | |||
- | config dhcp ' | ||
- | option interface ' | ||
- | option ignore ' | ||
- | |||
- | config odhcpd ' | ||
- | option maindhcp ' | ||
- | option leasefile '/ | ||
- | option leasetrigger '/ | ||
- | |||
- | config dhcp | ||
- | option start ' | ||
- | option leasetime ' | ||
- | option limit ' | ||
- | option interface ' | ||
- | |||
- | config domain ' | ||
- | option name ' | ||
- | option ip ' | ||
</ | </ | ||
- | # | + | Finally, we verify the routing and addressing |
<code bash> | <code bash> | ||
Line 264: | Line 193: | ||
collisions: | collisions: | ||
RX bytes: | RX bytes: | ||
- | |||
- | lo Link encap:Local Loopback | ||
- | inet addr: | ||
- | inet6 addr: ::1/128 Scope:Host | ||
- | UP LOOPBACK RUNNING | ||
- | RX packets:221 errors:0 dropped:0 overruns:0 frame:0 | ||
- | TX packets:221 errors:0 dropped:0 overruns:0 carrier:0 | ||
- | collisions: | ||
- | RX bytes:20606 (20.1 KiB) TX bytes:20606 (20.1 KiB) | ||
- | |||
- | |||
</ | </ | ||
- | #ifconfig on raspberry pi3 | ||
- | |||
- | <code bash> | ||
- | pi@raspberrypi: | ||
- | eth0 Link encap: | ||
- | inet addr: | ||
- | inet6 addr: fe80:: | ||
- | inet6 addr: fdd5: | ||
- | inet6 addr: fdd5: | ||
- | UP BROADCAST RUNNING MULTICAST | ||
- | RX packets:745 errors:0 dropped:3 overruns:0 frame:0 | ||
- | TX packets:394 errors:0 dropped:0 overruns:0 carrier:0 | ||
- | collisions: | ||
- | RX bytes:66979 (65.4 KiB) TX bytes:48816 (47.6 KiB) | ||
- | |||
- | lo Link encap:Local Loopback | ||
- | inet addr: | ||
- | inet6 addr: ::1/128 Scope:Host | ||
- | UP LOOPBACK RUNNING | ||
- | RX packets:256 errors:0 dropped:0 overruns:0 frame:0 | ||
- | TX packets:256 errors:0 dropped:0 overruns:0 carrier:0 | ||
- | collisions: | ||
- | RX bytes:20736 (20.2 KiB) TX bytes:20736 (20.2 KiB) | ||
- | </ | ||
- | #ip route on raspberry pi2 | ||
<code bash> | <code bash> | ||
Line 307: | Line 200: | ||
192.168.200.0/ | 192.168.200.0/ | ||
</ | </ | ||
- | #ip route on raspberry pi3 | + | ===== -. [CO2] Implementing the Applications and Tools ===== |
+ | |||
+ | <WRAP center round info 100%> | ||
+ | * Accomplished | ||
+ | * Using the tools to obtain performance results of basic tests | ||
+ | * Wiki tutorial | ||
+ | * Exceeded | ||
+ | * Installing tools on a new device | ||
+ | </ | ||
+ | |||
+ | In order to describe and analyze the basic steps for installing and using the tools and client/ | ||
+ | ==== -. iperf tool ==== | ||
+ | |||
+ | Let us start with the application iperf. In the following, we present a short tutorial on the main functions of the perf tool. | ||
+ | |||
+ | * To launch iperf3: | ||
+ | * On the server side: '' | ||
+ | * On the client side: '' | ||
+ | |||
+ | * By default, the trafic sent by iperf uses TCP. In order to send 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: '' | ||
+ | |||
+ | Note that by default, iperf3 sets the time to 10 seconds. | ||
+ | |||
+ | * To use reverse mode (server sends the trafic and client receives): | ||
+ | * On the Client side: '' | ||
+ | |||
+ | * To send multiple flows: | ||
+ | * On the Client side: '' | ||
+ | |||
+ | Here we are sending two flows for one minute (60 seconds). We note that the average rate for the two flows can be different. However, this is not a fairness issue: we only need to extend the transmit time in order to have similar throughput for the two flows. | ||
+ | |||
+ | ==== -. Flent Tool ==== | ||
+ | |||
+ | Let us now analyze [[ https:// | ||
+ | |||
+ | * On the Server side: '' | ||
+ | * To sent one TCP stream from the client to the server: | ||
+ | * On the Client side: '' | ||
+ | * To send 12 TCP streams: | ||
+ | * On the Client side: '' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
- | <code bash> | ||
- | </ | ||
qos_project.txt · Last modified: 2021/08/28 09:58 by samer