法律状态公告日
法律状态信息
法律状态
2018-02-02
专利权的转移 IPC(主分类):H04L12/56 登记生效日:20180115 变更前: 变更后:
专利申请权、专利权的转移
2017-11-10
专利权的转移 IPC(主分类):H04L12/56 登记生效日:20171020 变更前: 变更后: 申请日:20110307
专利申请权、专利权的转移
2012-11-28
专利权的转移 IPC(主分类):H04L12/56 变更前: 变更后: 登记生效日:20121024 申请日:20110307
专利申请权、专利权的转移
2012-09-05
授权
授权
2011-07-20
实质审查的生效 IPC(主分类):H04L12/56 申请日:20110307
实质审查的生效
2011-06-01
公开
公开
查看全部
技术领域
本发明涉及数据通信领域,尤其涉及N次弃头的被动队列管理的方法。
背景技术
TCP通过“慢启动”、“拥塞避免”、“快速重传”、“快速恢复”4个算法设置不同的参数来实现不同TCP拥塞控制,就是和式增加积式减少(AIMD,additive increase multiplicativedecrease),TCP根据拥塞窗口来调整发送速度。瓶颈节点中最常用的队列管理策略是“弃尾”(Drop Tail),即随着缓冲区的溢出而丢包,是一种被动队列管理机制。“弃尾”的缺陷包括数据流的全局同步,死锁及持续队满造成的突发数据流被扼杀等。主动队列管理虽然可以有效地解决“全局同步”问题,但存在参数设置敏感,响应相对滞后于实际网络状况的缺陷,其算法比较复杂。在实际使用中,复杂的算法给网络设备带来很大的开销,中间节点的性能下降,反而加重了网络拥塞,所以目前各种主动队列管理算法并没有在网络上大量使用。
发明内容
本发明的目的就是采用N次弃头的被动队列管理的方法,避免全局同步和死锁,提高网络资源的利用率。在网络发生拥塞,瓶颈节点队列满时,丢弃瓶颈节点队列头部N个数据包,。如果N小于2,则N设为2。该方法简单,不会增加瓶颈节点的计算量。由于是在瓶颈节点队列满时才丢弃数据包,所以是一种被动式队列管理的方法。
为了实现上述目的,本发明采用的技术方案是:
当瓶颈节点队列满时,从瓶颈节点队列头部丢弃N个数据包,N为瓶颈节点连接的发送端数目的一半,N至少为2。采用丢包N次(N≥2)的主要是因为:(1)瓶颈节点队列满时,说明拥塞比较严重,因此只丢弃1个数据包是不够的,如果同时丢弃多个数据包,就能尽快地让更多的发送端检测到网络拥塞而减少发送速度,来减轻拥塞状况;(2)网络拥塞时弃尾队列管理丢弃后来的所有数据包而导致“全局同步”,本发明方法丢弃中间节点连接的发送端数目的一半的数据包,让近一半的发送端检测到拥塞而降低发送速度,避免“全局同步”,不至于瓶颈节点队列长度降为0,导致传输效率下降;(3)从队列头部丢弃数据包能尽早地通知发送端网络已经拥塞。瓶颈节点具体操作步骤如下:
Q表示瓶颈节点队列的最大长度,q表示当前瓶颈节点队列长度,N为中间节点所连接的发送端数目的一半,如果N为小数,则取整;如果N<2,则N=2。
(1)瓶颈节点根据连接的发送端数目M,计算N=M/2;
(2)N取整;
(3)判断是否N≥2;如果是则到第(5)步,如果不是则到第(4)步;
(4)N=2;
(5)判断是否有新的数据包要进入瓶颈节点队列,如果否则还是在第(5)步,如果是则到第(6)步;
(6)判断是否q≥Q-1,如果是则到第(7)步,如果否则到第(8)步;
(7)丢弃瓶颈节点队列头部N个数据包;
(8)新的数据包进入到瓶颈节点队列,然后转到第(5)步。
本发明方法能避免全局同步和死锁,改善网络传输的公平性,提高网络资源的利用率。该方法简单,适合在现有的Internet上使用。
附图说明
图1是本发明方法的流程图;
图2是本发明方法进行测试的网络拓扑;
图3是本发明方法与其它队列管理比对结果。
具体实施方式
下面结合附图对本发明作进一步详细说明。
本发明中Q表示队列的最大长度,q表示当前瓶颈节点队列长度,N为中间节点所连接的发送端数目的一半,如果N为小数,则取整;如果N<2,则N=2。瓶颈节点对新数据包的处理方法如图1所示,
(1)瓶颈节点根据连接的发送端数目M,计算N,N=M/2;
(2)N取整;
(3)判断是否N≥2;如果是则到第(5)步,如果不是则到第(4)步;
(4)N=2;
(5)判断是否有新的数据包要进入瓶颈节点队列,如果否则还是在第(5)步,如果是则到第(6)步;
(6)判断是否q≥Q-1,如果是则到第(7)步,如果否则到第(8)步;
(7)丢弃瓶颈节点队列头部N个数据包;
(8)新的数据包进入到瓶颈节点队列,然后转到第(5)步。
图2是本发明方法的测试网络环境,R0为瓶颈节点,瓶颈链路位于节点R0和节点R1之间,链路容量12Mbps,延时15ms,分别采用不同的队列管理,缓存大小为30packets;节点Si均为持久性FTP业务源,他们与节点R0之间的链路容量均为20Mbps,延时15ms,向目标节点Di发送数据;节点Di与节点R1之间的链路容量均为20Mbps,延时15ms;数据包均为1040Byte(包括40Byte包头)。接收端Di的窗口设置足够大,使得TCP发送仅受拥塞窗口Cwnd控制。
图3是本发明方法图1实施例与弃尾被动队列管理、RED主动队列管理、1次弃头被动队列管理方法在图2网络环境下进行比对,设置发送节点S的个数分别为2、4、6、8、10、12,接收节点D的个数与发送节点相同,统计80s内瓶颈链路R0到R1传输的有效包个数。本发明方法的效率要高于弃尾被动队列管理、RED主动队列管理和1次弃头被动队列管理,发送节点S的个数为2、4、6、8、10、12时,N的取值分别为2、2、3、4、5、6。特别是在6个发送节点时,本发明的方法传输有效数据包比弃尾被动队列管理、RED主动队列管理、1次弃头被动队列管理分别高出10.2%、16.1%、5.2%。本发明方法能有效提高网络的传输效率。
本实施例并非构成对本发明的限制,本领域技术人员在通过阅读本实施例后做出的等同变换,也属于本发明的保护范围。
机译: 用所认可的制造方法制造可执行制造的柜台类型的一次性尿布和柜台类型的可弃式尿布的方法
机译: 单次试井弃井方法及装置
机译: 具有主动和被动喷嘴腔结构的喷墨打印头芯片的制造方法