This is an old revision of the document!
−Table of Contents
A Networking Lab on QoS for Less Than 50 Dollars
-. Context and Alternatives
During my teaching experience at the University, I wanted to deploy a testing platform for a networking lab that enables to explore Quality of Service (QoS) mechanisms. The basic topology is presented in Fig. 1. For years, I used Cisco routers and was (more than) happy with the result. Students captured the concepts of congestion in IP networks, analyzed the difference between UDP and TCP transport, and assessed the impact of DiffServ mechanisms in providing guaranteed performance. Le tour est joué.
Recently, I added some constraints on this networking lab: suppose that it should cost less than 50 dollars. Indeed, I wanted a portable platform students can take home for projects, preferably with low cost material, and ideally with hackable software. Obviously, I started to search for a replacement of the commercial routers. In the following table, I mention some of the many ideas I explored or tested to replace these routers.
Proposed solution | Main advantage | Main drawback |
---|---|---|
Emulated routers with GNS3 | Cisco CLI | Proprietary Cisco IOS |
Mininet emulated Linux routers | Low Cost | Poor performance at high throughput |
NS simulation | Low Cost | Simulated traffic |
Real PCs with Linux OS | Open software | high cost and lack of portability |
Raspberry Pi | Low cost | Single Ethernet interface |
Note that, I already use (extensively) some of these solutions (RPI, Mininet, GNS3) in other courses. However, for my QoS testing platform, none of the proposed solutions met all the criteria.
-. Hardware
-. Software
Install and compile netperf:
wget https://github.com/HewlettPackard/netperf/archive/master.zip unzip master .zip cd netperf-master/ ./configure --enable-demo=yes make make install
Install matplotlib and fping
apt-get install fping apt-get install python-qt4 pip install matplotlib
Install flent
pip install flent
Install VLC as in this tutorial.
-. Addressing