NS-3实现MPTCP的轮询调度算法

原创 2016年05月31日 12:04:31

NS-3下默认的数据调度算法是Round_Robin算法,但是在Linux的内核中默认的调度算法是最小RTT(Min_RTT),同时在ns-3下默认的子流窗口大小为1,但是在Linux内核中默认的子流窗口数目是10。

ns-3下轮询算法或者说数据包的调度算法流程如下:在子流建立后,子流的默认窗口大小是1,所以轮询算法调度子流时每一次调用都是发送一个窗口大小的数据包,通常这个值得大小等于MSS,这是子流建立后首次发送数据包的情况,然后当子流接收到ACK信息时,根据ACK的信号进行窗口的变化,然后进行数据的调度,每一次调度都是对所有窗口进行一次轮询,发送一个MSS大小的数据包,当有些窗口有空闲时,该窗口并不会一次发送所有窗口大小的数据包,而是每一次发送一个MSS后进入下一个子流进行数据包的发送,每次发送一个MSS,这就相当于是有N个水桶,每个水桶里面的水量不一样,当桶内有水时,每一个桶都取一瓢水,然后一直汲取,直到水桶为空,而不是将其中一个桶的水汲取完后才进行下一个桶的汲取。但是这个会导致两个问题:

1.当一个MPTCP流可以建立多条子流的时候,如果待发送的数据量超过一个MSS,那么会启用至少两条流,因为每一次都给每一条子流调度一个MSS的数据包;

2.当子流之间性能差异很大时,不会选择最好的路径发送数据,如一个MPTCP连接只有2个子流s1与s2,其中s1的RTT为10ms,s2的RTT为100ms,窗口都是10000,发送的总的数据量为10000,那么根据RR算法会选择每一条自流都是发送5000字节的数据(假设每一个包携带的数据为1000),这样就会使得发送时间为百毫秒级别,而如果只是使用s1,那么发送时间为十毫秒级别。

相关文章推荐

NS3系列—8———NS3编译运行

NS3系列—8———NS3编译运行
  • ztguang
  • ztguang
  • 2016年08月31日 16:36
  • 885

C 语言中的回车换行符

#include #include void main(){  char var;  var = getch();  printf("%d/n",var);  //打印 var 的值,应为 13  w...

NS3 build MPTCP出现-werror的解决方法

NS3 build MPTCP出现-werror的解决方法
  • lgcailx
  • lgcailx
  • 2017年03月21日 08:26
  • 296

MPTCP ERROR - 5 - mptcp-tcpdump3.txt

MPTCP ERROR - 5 - mptcp-tcpdump3.txt
  • ztguang
  • ztguang
  • 2016年09月26日 14:53
  • 262

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

ns3编译出现cc1plus: warning being treated as errors的解决方法

由于在configure时出现了三个模块没有编译:click openflow和visualizer,找了几篇帖子,发现都说click跟openflow是根据具体情况看是否编译的,但是visualiz...

(OK) 移植,编译,安装 LineageOS-14.1-kiwi (Android-7.1.1,运行在Huawei honor 5x) for VirtualBox - 90% 成功

(OK) 移植,编译,安装 LineageOS-14.1-kiwi (Android-7.1.1,运行在Huawei honor 5x) for VirtualBox - 90% 成功...
  • ztguang
  • ztguang
  • 2017年03月10日 23:54
  • 409

MPTCP - References

MPTCP - References
  • ztguang
  • ztguang
  • 2017年07月26日 16:05
  • 119

MPTCP - Linux Kernel MultiPath TCP project

MPTCP - Linux Kernel MultiPath TCP project
  • ztguang
  • ztguang
  • 2016年07月25日 17:52
  • 404

NS3 -- TCP拥塞控制跟踪

#include #include #include "ns3/core-module.h" #include "ns3/network-module.h" #include "ns3/inte...
  • Decload
  • Decload
  • 2012年04月18日 15:21
  • 5102
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:NS-3实现MPTCP的轮询调度算法
举报原因:
原因补充:

(最多只允许输入30个字)