Skip to content

cyrustabatab/mptcp

Repository files navigation

We have developed a model for MultiPath-TCP (MPTCP) in ns-3, which conform to RFC 6824 and closely follows the MPTCP Linux kernel desgin. 

A brief description of our model can be found in our recent short paper, which was presented at the WNS3-2014 workshop, with the following link: http://arxiv.org/abs/1510.07721

You can refer to this code in your paper by citing the above short paper.
Credits: https://github.com/mkheirkhah/mmptcp

Evaluation of congestion control of MPTCP

Create multiple topologies to test congestion. Under tutorial/examples ns-3 provides examples of differing topologies that we can extend.
Create multiple TCP connections between hosts in order to test congestion control.
Use FlowMonitor and built in tracers to evaluate.
Later, once evaluations are done, we can look into tweaking existing algorithm

=======
Added mechanism to create own congestion control algorithm called CS218_ALGO
Set enum_value to the congestion control algorithm we are running.

INSTRUCTIONS
1. Run ./setup.sh
2. Move scripts to scratch folder and rebuild using ./waf to run those scripts
3. Run your scripts using ./waf --run scratch/name-of-script

To do command line arguments
./waf --run "scratch/name-of-script --nWifi=18" depending on the arguments you can pass

To pipe output into a log file:
./waf --run scratch/mptcp-wifi | tee a.txt
./waf --run scratch/mptcp-wifi | awk '$1~/^(SF|RTT)$/{print $3 > $1"_"$2".csv"}'
 
To collect statistics:
python stats.py
vi stats.txt