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/23 15:16] – [5. [CO1] Connecting the Platform] enwan | qos_project [2017/11/30 18:48] – [5. [CO1] Connecting the Platform] samer | ||
---|---|---|---|
Line 75: | Line 75: | ||
| | ||
</ | </ | ||
- | Routing | + | |
+ | In order to analyse the addressing and routing on the platform, we need to look carefully on the interface configuration and routing tables of the different devices. | ||
+ | |||
+ | Let us start with the routing devices. The routing | ||
<code bash> | <code bash> | ||
- | 10.0.0.0/24 dev eth0 proto kernel | + | 10.0.0.0/24 dev eth0 proto kernel |
192.168.8.0/ | 192.168.8.0/ | ||
- | 192.168.100.0/ | + | 192.168.100.0/ |
192.168.200.0/ | 192.168.200.0/ | ||
10.0.0.2 of the TP-LINK router | 10.0.0.2 of the TP-LINK router | ||
</ | </ | ||
+ | |||
+ | Similarly, the routing table of the TP-LINK router shows the following: | ||
<code bash> | <code bash> | ||
- | |||
- | Routing table of GL-iNet: | ||
- | |||
10.0.0.0/24 dev eth1 src 10.0.0.2 # connection to directly connected network 10.0.0.0/24 | 10.0.0.0/24 dev eth1 src 10.0.0.2 # connection to directly connected network 10.0.0.0/24 | ||
192.168.100.0/ | 192.168.100.0/ | ||
10.0.0.1 of the GL-iNet router | 10.0.0.1 of the GL-iNet router | ||
192.168.200.0/ | 192.168.200.0/ | ||
- | |||
</ | </ | ||
- | <code bash> | + | We note on the two routers that static routes are used in order to give access to the two LANs. Particularly, |
- | + | ||
- | # | + | |
+ | As given below, the configuration of the TP-Link router shows the static addressing of the interface '' | ||
+ | |||
+ | <file bash / | ||
+ | # | ||
config interface ' | config interface ' | ||
option type ' | option type ' | ||
Line 108: | Line 111: | ||
option ip6assign ' | option ip6assign ' | ||
| | ||
- | # | + | # |
config interface ' | config interface ' | ||
option ifname ' | option ifname ' | ||
Line 124: | Line 126: | ||
option netmask ' | option netmask ' | ||
option gateway ' | option gateway ' | ||
+ | </ | ||
+ | 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/ | ||
+ | * 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/ | ||
+ | |||
+ | <file bash / | ||
+ | config interface ' | ||
+ | option force_link ' | ||
+ | option proto ' | ||
+ | option ipaddr ' | ||
+ | option netmask ' | ||
+ | option ip6assign ' | ||
+ | option _orig_ifname ' | ||
+ | option _orig_bridge ' | ||
+ | |||
+ | config interface ' | ||
+ | option ifname ' | ||
+ | option hostname ' | ||
+ | option proto ' | ||
+ | option ipaddr ' | ||
+ | option netmask ' | ||
+ | |||
+ | config route | ||
+ | option interface ' | ||
+ | option target ' | ||
+ | option netmask ' | ||
+ | option gateway ' | ||
+ | |||
+ | </ | ||
+ | |||
+ | 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 ''/ | ||
+ | |||
+ | <file / | ||
+ | config dhcp ' | ||
+ | option interface ' | ||
+ | option start ' | ||
+ | option limit ' | ||
+ | option leasetime ' | ||
+ | option dhcpv6 ' | ||
+ | option ra ' | ||
+ | |||
+ | config host | ||
+ | option name ' | ||
+ | option mac ' | ||
+ | option ip ' | ||
+ | |||
+ | config host | ||
+ | option name ' | ||
+ | option mac ' | ||
+ | option ip ' | ||
+ | </ | ||
+ | |||
+ | Finally, we verify the routing and addressing on the Raspberry Pi devices using '' | ||
+ | |||
+ | <code bash> | ||
+ | pi@raspberrypi: | ||
+ | eth0 Link encap: | ||
+ | inet addr: | ||
+ | inet6 addr: fdd5: | ||
+ | inet6 addr: fe80:: | ||
+ | inet6 addr: fdd5: | ||
+ | UP BROADCAST RUNNING MULTICAST | ||
+ | RX packets: | ||
+ | TX packets:983 errors:0 dropped:0 overruns:0 carrier:0 | ||
+ | collisions: | ||
+ | RX bytes: | ||
</ | </ | ||
+ | |||
+ | <code bash> | ||
+ | pi@raspberrypi: | ||
+ | default via 192.168.200.1 dev eth0 metric 202 | ||
+ | 192.168.200.0/ | ||
+ | </ | ||
+ | ===== -. [CO2] Implementing the Applications and Tools ===== | ||
+ | In order to describe and analyze the basic steps for installing and using the tools and client/ | ||
+ | |||
+ | Let's start with the application iperf: | ||
+ | |||
+ | - To activate iperf3: | ||
+ | * On the server side: iperf3 -s | ||
+ | * On the client side: iperf3 -c 192.168.200.192 | ||
+ | |||
+ | - 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 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Extracts ===== | ||
+ | |||
+ | |||
+ | |||
qos_project.txt · Last modified: 2021/08/28 09:58 by samer