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 08:59] – [5. [CO1] Connecting the Platform] samer | qos_project [2017/11/30 19:02] – [6. [CO2] Implementing the Applications and Tools] samer | ||
---|---|---|---|
Line 81: | Line 81: | ||
<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 | ||
</ | </ | ||
Line 97: | Line 97: | ||
</ | </ | ||
- | On the two routing devices, the configuration is given in the ''/ | + | We note on the two routers that static routes are used in order to give access to the two LANs. Particularly, the configuration |
+ | As given below, the configuration of the TP-Link router shows the static addressing of the interface '' | ||
+ | |||
<file bash / | <file bash / | ||
- | + | # | |
- | # | + | |
- | + | ||
- | # | + | |
config interface ' | config interface ' | ||
option type ' | option type ' | ||
Line 113: | Line 111: | ||
option ip6assign ' | option ip6assign ' | ||
| | ||
- | # | + | # |
config interface ' | config interface ' | ||
option ifname ' | option ifname ' | ||
Line 129: | Line 126: | ||
option netmask ' | option netmask ' | ||
option gateway ' | option gateway ' | ||
- | |||
</ | </ | ||
- | <file bash / | ||
- | # | ||
- | All the network configuration on both routers (routing & addressing) are taken from / | ||
- | On router | + | Similarly, the configuration of the GL-iNET |
+ | * 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 ' | config interface ' | ||
option force_link ' | option force_link ' | ||
Line 145: | Line 143: | ||
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 153: | Line 150: | ||
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 160: | Line 156: | ||
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 ''/ | ||
+ | <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 ' | ||
</ | </ | ||
- | ===== Extracts | + | |
+ | 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 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 2 flows in for one minute (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 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
qos_project.txt · Last modified: 2021/08/28 09:58 by samer