CN101917342A - 一种面向普适服务的自适应网络拥塞控制方法 - Google Patents
一种面向普适服务的自适应网络拥塞控制方法 Download PDFInfo
- Publication number
- CN101917342A CN101917342A CN2010102620369A CN201010262036A CN101917342A CN 101917342 A CN101917342 A CN 101917342A CN 2010102620369 A CN2010102620369 A CN 2010102620369A CN 201010262036 A CN201010262036 A CN 201010262036A CN 101917342 A CN101917342 A CN 101917342A
- Authority
- CN
- China
- Prior art keywords
- network
- congestion
- packet
- source node
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种面向普适服务的自适应网络拥塞控制方法。该方法通过发送信息的源节点测量到接收信息的目标节点的RTT,当最近的测量值和历史上往返时间的最低记录之比CSRTT增大时,说明网络中间节点排队的包太多而造成拥塞;目标节点区分接收到的数据包是正常的数据包和还是用于探测带宽的包对,同时将估算的可用带宽反馈给源节点;根据反馈的信号,源节点将根据本发明预设的规则区分四种程度的拥塞状态,并将此作为速率调整的依据;当有新连接后,目标节点发送对应于切换之前最后收到数据的三个重复的ACK,源节点收到确认包之后,它并不是突发一个窗口的数据,而是仅仅发送两个背靠背的包来探测新路径上的可用带宽,源节点利用该结果重新设置慢启动门限。
Description
【技术领域】
本发明属于计算机应用与移动互联网结合的技术领域。
【背景技术】
随着计算技术的发展,各种各样的新型计算设备被广泛的应用在计算机网络上、并全面渗透到社会生活的方方面面,在这个背景下,人类进入了普适计算时代。它构想出一个将计算机、手持设备、传感器以及一些其他的物理设备如家用电器等无缝的结合在一起的世界,从而提供无处不在的服务。这种服务模式被称之为普适服务。普适服务的主要特点是环境中设备的多样性、自主性和环境自身的可变性、上下文相关性。
普适服务的网络环境是一个由宽带网,窄带网、无线网等组成的一个混合式网络环境。这个异常复杂的异构网络,包括对称的、支持多对多的多播局域网,高宽带、高延迟的卫星网,高丢失率的无线网,以及只有一个节点可以多播的非对称网等,在这种异构的网络环境中,一个节点上的数据在迁移到另一个不同的节点的链路可能在带宽、延迟等特性上有很大的差异,这样势必会造成节点的拥塞。其次,用户终端处理能力也有很大差异,低性能终端在重载下会来不及处理来自网络数据而形成拥塞。因此可以看出任务迁移过程中拥塞的产生是不可避免的,由于网络的异构性(如从宽带网络环境迁移到窄带网、无线网环境)和终端节点的不一致性(如从PC环境迁移到PDA环境)直接影响任务迁移的重要性,所以拥塞控制成为普适服务有效运行的关键。
拥塞控制算法的分布性、网络的复杂性和对拥塞控制算法的性能要求又使拥塞控制算法的设计具有很高的难度,虽然学术界在拥塞控制领域已经开展了大量的研究工作,但是目前为止拥塞的问题还没有得到很好的解决。自1988年Jacobson提出端对端的基于窗口的拥塞控制算法以来,TCP的流量控制算法已经得到了改进,然而,由于有线网中的链路的可靠性前提在无线网中并不成立,传输介质固有的特性差异使得现存的传输控制机制难以同时在两种信道上都获得满意的性能,因此在异构网中数据传输往往导致传统TCP的性能急剧下降。国内外的许多研究小组已经致力于异构网络的传输控制技术的研究,提出了各种改进机制。但是由于这些机制不同程度地存在缺陷,目前仍未得到公认的解决方案。
由于网络的异构性和终端节点的不一致性,任务迁移过程中产生拥塞是不可避免的,网络的性能直接影响任务迁移的效率。
当网络中存在过多的数据包时,网络的性能就会下降,这种现象称为拥塞。网络的拥塞导致了分组丢失率的增加,同时增加了端到端的延迟,严重时甚至使整个网络系统发生崩溃(congestion collapse)。当网络处于拥塞崩溃状态时,微小的负载增量都将使网络的有效吞吐量(Goodput)急剧下降。有人总结出拥塞崩溃主要包括以下几种:传统的崩溃、未传送数据包导致的崩溃、由于数据包分段造成的崩溃、日益增长的控制信息流造成的崩溃等。
拥塞控制机制包括两种策略,拥塞避免和拥塞控制。拥塞避免是由网络节点采取措施避免拥塞的发生或者对拥塞的发生做出反应,使网络运行在Knee附近,使网络能够传输较大的有效吞吐量,避免发生拥塞现象;拥塞控制是使网络运行在Cliff的左侧区域。拥塞避免是一种“预防”措施,使网络保持在高吞吐量、低延迟的状态,避免拥塞发生;拥塞控制是一种“恢复”措施,使网络从拥塞中恢复过来,进入正常的工作状态。
拥塞是网络中的一种中间状态。当用户所期望占有的网络资源与对应的网络资源接近,甚至超过网络所能提供的资源时,则出现网络拥塞,主要表现为数据包延时增大、丢弃率增加、上层应用系统性能下降等。拥塞产生的直接原因有:
1.路由器缓存空间不足。当多个分组突然从不同输入线路涌入路由器时,这些分组就要在路由器进行排队。如果路由器没有足够的缓存存储分组,就会使一些分组被丢弃,对突发的数据流更是如此。虽然增加存储空间在一定程度上可以缓解这一问题对这一问题,但是研究表明:过大的缓存反而会导致拥塞的恶化。因为网络里数据包经过长时间排队后才通过路由器完成转发,会浪费网络资源,加重网络拥塞。
2.链路带宽容量不足。高速链路和低速链路的不匹配,这种情况一般在异构网络中表现;或者多条输入带宽总和大于带宽容量,都会使路由器中数据到达率远远大于发送速率,从而导致缓冲区容量有限,引起网络拥塞。
3.处理器处理能力弱、速度慢。如果路由器的CPU在执行排队缓存,更新路由器等功能时处理速度跟不上高速链路,也会产生网络拥塞。同样,低速链路对高速CPU也会产生拥塞。
因此,网络中拥塞现象发生的原因是“需求”大于“供给”。网络中有限的资源由多个用户共享使用。由于没有“接纳控制”策略,网络无法根据资源的情况限制用户的数量;同时,互联网络是一个分散控制系统,由于缺乏中央集成控制,网络无法控制用户使用资源的数量。
根据网络协议的层次结构、以及控制策略实现的位置,网络拥塞控制策略可以分为两类:基于端主机的拥塞控制策略和基于通信子网的拥塞控制策略。两种策略存在着相互影响、相互作用的关系。
1、基于端主机的拥塞控制策略是基于TCP层的,拥塞状态检测点和拥塞控制点是在发送信息的源节点上,所形成的拥塞控制算法称为源端算法。源端算法在主机和网络边缘设备中执行,作用是根据反馈信息调整发送速率。拥塞控制算法设计的关键问题是如何产生反馈信息和如何对反馈信息进行响应。该拥塞控制是发送端基于窗口的端到端的闭环控制。拥塞状态信息时超时重传(RTO)或从接收端反馈的重复的确认(ACK);拥塞控制作用是发送端的TCP窗口尺寸(发送的数据包数)。它适用于设计和分析源端的速率控制算法,目前最为熟悉的是TCP拥塞控制策略。基于端主机的拥塞控制策略可以改善源端发送速率的抖动性和平滑性,以及提高效率。但是这种机制也有几点不足:第一,它利用网络层协议来传送反馈,利用传输层协议来减少拥塞,这些层上多种协议共存会造成数据流之间资源享用的不公平。第二,某些策略中反馈需要在网络中增加额外的反馈分组。但这些缺点是可以解决的,例如可以研究基于RTP/RTCP协议的TCP友好的拥塞控制策略,它是利用已有的协议,不会产生额外的反馈分组,还可以保证资源之间的公平性。
2、基于通信子网的拥塞控制策略是基于IP层的,拥塞状态检测点和拥塞控制点是在链接节点(路由器)上,所形成的拥塞控制算法称为IP链路算法(link algorithm)。IP链路算法在网络设备中实行,作用是检测网络拥塞的发生,产生拥塞反馈信息。队列管理策略是主要的基于通信子网的拥塞控制策略。路由器的主动队列管理策略(AQM)根据队列长度的变化情况,在队列缓存溢出之前,对到达的分组数据以概率P丢弃/标记,分组的丢弃/标记概率经过一些延迟后被源端检测到,源端由此判断网络的状态,根据控制算法调节发送速率,从而路由器队列缓存的队列长度得到控制。从这个角度看,AQM才是系统的控制器,其输出P为系统的控制信号,而基于通信子网的源端的速率控制算法是系统的执行器,它和路由器的队列长度特性以及链路延迟一起,组成系统的广义对象。这适合用来设计和分析路由器的队列管理策略。基于通信子网的拥塞控制策略不必依赖信源来均匀分配资源,所以不存在公平性问题。主要问题在于增加共享资源(主要是路由器)的复杂性,当网络发生拥塞时,可以改进路由器的队列管理策略以提高网络的性能,例如增加网络带宽、进行资源预留,但这种方法需要网络中的所有节点给予支持,实现起来比较困难。
相比之下,采用基于端主机的拥塞控制策略通过调节发送速率应对网络拥塞这种方法更为可行。
现有的Freeze-TCP方法是针对无线移动网络设计的,在网络切换的时候,无论切换到什么环境中,切换结束后,发送端都会以切换之前的窗口大小发送数据,但是应用于异构网络环境时,会因为对网络状态的无知造成不必要的网络拥塞,从而导致网络性能下降。例如,假设移动设备从无线局域网切换到GPRS网络,如果发送者在GPRS网中按照无线局域网中的发送窗口大小发送一个窗口的数据,很可能会由于网络带宽的骤减导致GPRS网络的拥塞,造成大量数据包的丢失,影响TCP的性能。同样当移动设备从GPRS网络切换到无限局域网的时候,尽管不会出现上述情况,无线局域网以它的高带宽能够承受突发的数据,但是同时也会带来另一个问题,因为可能切换之前,发送端的已经进入了拥塞避免阶段,缓慢的窗口增长速度在短时间内无法获得可用的网络带宽,导致了大量网络资源的浪费。
本发明提供的面向普适服务的网络拥塞控制方法是基于带宽预测的自适应Freeze-TCP方法。
【发明内容】:
本发明目的是克服现有的Freeze-TCP方法存在的上述不足,提供一种面向普适服务的自适应网络拥塞控制方法,使它能够适应普适服务中移动设备在复杂的异构网络环境中在保证服务质量前提下的任意切换。
本发明提供的面向普适服务的自适应网络拥塞控制方法的具体步骤包括:
第1、发送信息的源节点都在不停地测量到接收信息的目标节点的RTT,当最近的测量值RTTlatest和历史上往返时间的最低记录RTTmin之比CSRTT=RTTlatest/RTTmin增大时,说明网络中间节点排队的包太多而造成拥塞。基于CSRTT反馈的拥塞信号,源节点降低发送速率而不必等丢失发生时再降低;
第2、接收信息的目标节点区分接收到的数据包是正常的数据包还是用于探测带宽的包对,同时将估算的可用带宽反馈给发送信息的源节点;TCP报文结构头部预留了6比特的保留位,在正常数据包中该6位都被置0,我们只要一位就可以分区接收到的数据包是正常的数据包还是用于探测带宽的包对,所以本方法将预留的第六位设置为1即000001,这样接收信息的目标节点在收到报文时,可以通过检测报文头中该位是否为1来进行探测包对的判断;由于接收信息的目标节点对收到的每一个数据包,都会发一个肯定的确认,我们可以将可用带宽存放在确认包的数据域里边一起发送给源节点,这样就不需要额外的数据包占据网络带宽,接收信息的目标节点将估计的可用带宽反馈给了源节点;
第3、根据反馈的信号,发送信息的源节点将根据本发明预设的如附表(表1)所示的判定规则区分无拥塞、轻度拥塞、中度拥塞、重度拥塞四种程度的拥塞状态,并将此作为速率调整的依据;即它将根据上述四种程度的拥塞状态自动地做出评估判定,自适应地做出应对策略;如果可能出现轻度以上的拥塞现象,它将向发送端发送一个通告为0的消息迫使发送信息的源节点进入ZWP(zero window probe)窗口冻结模式,从而阻止它降低拥塞窗口;
第4、当有新连接之后,接收信息的目标节点发送对应于切换之前最后收到数据的三个重复的ACK,源节点收到确认包之后,它开始发送数据;此时发送信息的源节点并不是突发一个窗口的数据,而是仅仅发送两个背靠背的包来探测新路径上的可用带宽,发送信息的源节点利用该探测结果重新设置慢启动门限ssthresh,这是新路径上的可用带宽或新路径上的环回时延;
第5、设置慢启动的初始窗口为2,发送窗口按照慢启动方式指数性增长;在网络建立后,如果立刻就发生拥塞,那发送一个数据包和两个数据包的效果是一样的,都会因为超时而导致无法传输数据包;如果当网络资源允许传输两个数据包,在慢启动阶段,发送窗口是指数增长的(1,2,4,8,......),这样很快到达门启动阈值,进入网络传输的最佳状态。
本发明的优点和积极效果:
本发明方法解决了无线网络与有线网络共存的异构网络环境中出现的拥塞问题,满足了普适服务的要求。即基于带宽预测的自适应Freeze-TCP方法在无线网络与有线网络共存的异构网络环境中表现出良好的性能,且吞吐量一直保持较好,网络资源利用率高,变化平稳,网络的发送速度稳定,对突发的网络流量做出了及时的拥塞控制处理。
【附图说明】:
图1是现有的Freeze-TCP方法。
图2是基于网络带宽的自适应Freeze-TCP算法流程图。
【具体实施方式】:
实施例1:
本发明的具体技术方案如下:
第1、发送信息的源节点都在不停地测量到接收信息的目标节点的RTT,当最近的测量值RTTlatest和历史上往返时间的最低记录RTTmin之比CSRTT=RTTlatest/RTTmin增大时,说明网络中间节点排队的包太多而造成拥塞,CSRTT作为一个拥塞信号将报告给源节点,以便发送信息的源节点降低发送速率而不必等丢失发生时再降低。
现有的Freeze-TCP方法的工作流程,如图1所示:当移动设备在网络中移动时,监测无线信号的能量,并及时监测出即将发生的移动设备网络切换事件。当切换即将发生的时候,移动设备向信息发送端发送一个通告为零的反馈,发送端接收到反馈信息后,迫使自己进入ZWP(zero window probe)窗口冻结模式,在ZWP模式中,发送者不会进入慢启动状态,降低它的拥塞窗口和增加超时计时器的时长。一旦移动设备的切换操作结束后,连接到新的网络,它会向发送者发送切换之前最后收到数据的三个重复的ACK,发送者接收到数据包后,解除ZWP模式并以切换之前的发送窗口迅速发送数据。而在普通的TCP拥塞控制算法中,发送者在发生切换结束后进入慢启动状态,进入慢启动,只能发送一个数据包,所以可以看出,在移动网络中Freeze-TCP在移动设备频繁切换时性能大大提高了。
但Freeze-TCP方法是针对无线移动网络设计的,在网络切换的时候,无论切换到什么环境中,切换结束后,发送端都会以切换之前的窗口大小发送数据,但是应用于异构网络环境时,会因为对网络状态的无知造成不必要的网络拥塞,从而导致网络性能下降。
假设移动设备从无线局域网切换到GPRS网络,如果发送者在GPRS网中按照无线局域网中的发送窗口大小发送一个窗口的数据,很可能会由于网络带宽的骤减导致GPRS网络的拥塞,造成大量数据包的丢失,影响TCP的性能。同样当移动设备从GPRS网络切换到无限局域网的时候,尽管不会出现上述情况,无线局域网以它的高带宽能够承受突发的数据,但是同时也会带来另一个问题,因为可能切换之前,发送端的已经进入了拥塞避免阶段,缓慢的窗口增长速度在短时间内无法获得可用的网络带宽,导致了大量网络资源的浪费,因此,改善现有的Freeze-TCP方法,使它能够适应普适服务中移动设备在复杂的异构网络环境的切换是非常必要的。
我们的发明解决了如何预测异构网络环境中网络的状态这个核心问题。在端到端的网络测量方法中,TCP协议通过在线测量网络带宽获得网络容量及可用带宽资源、网络延迟、链路队列长度等网络参数和状态,许多研究者已经将该技术应用于有线网络的拥塞控制之中,对于此问题,国内外很多研究学者都做出了努力,大致分为两类:一类是基于往返延迟RTT(Round Trip Time)的网络状态预测,TCP Vegas算法就是基于对RTT的精确估计来确定是否重传,因为数据包的往返延迟的变化在一定程度上能表明网络的实时状态,但是这是建立在对RTT的精确估计的基础上的,然而在普适服务网络环境中,网络时动态频繁变化的,这对于RTT的估计也是一个很大的挑战;一类是基于网络带宽的,网络带宽是网络状态最直接的反应,我们采用了基于带宽估计的方法来预测网络的状态。
第2、接收信息的目标节点区分接收到的数据包是正常的数据包还是用于探测带宽的包对,同时将估算的可用带宽反馈给发送信息的源节点。
实现该方法时,我们需要解决两个重要的问题:首先是接收端如何区分接收到的数据包是正常的数据包和还是用于探测带宽的包对;其次是接收端如何将估算的可用带宽反馈给发送端。
通过分析TCP报文结构,我们不难发现TCP报文结构早就考虑了以后的研究的扩展,所以在头部预留了6比特的保留位,我们知道在正常数据包中该6位都被置0(000000),我们只要一位就可以分区这两种情况了,所以在本算法中我们将预留的第六位设置为1(000001),这样接收端在收到报文时,可以通过检测报文头中该为是否为1来进行探测包对的判断。所以对于上述的第二个问题,我们可以将计算机网络可用带宽存放在确认包的数据域里边一起发送给发送端,这样既不需要额外的数据包占据网络带宽就达到了我们预期的设想,成功的将估计的可用带宽反馈给了发送端,从而发送端可以根据该值来重新设置慢启动门限。
基于带宽估计的方法是利用TCP连接的历史信息估计网络的可用带宽,可利用的信息量越多,可利用带宽的估计就会越准确,因而就能够更好更公平的利用网络资源,这是现有的各种带宽估计技术所秉承的一个原则。一般来说链路上可利用带宽的大小主要取决于:(1)传输路径上瓶颈链路的物理带宽;(2)竞争同意链路的链接的数量。
目前比较有效的测量网络可用带宽的方案主要如下:
(1)Cprobe技术。Cprobe技术是以前最常用的一种主动地启发式的网络带宽探测技术。然而后来的研究学者M.Kazantzidis证明出Cprobe技术不能精确地测量出网络的可用带宽,尤其是当网络负载很大的时候,性能更是很低。
(2)包对技术。S.Keshav最早提出了包对技术,它最初的目的是让业务源在路由器使用先进先出的排队机制的情况下探测出路径上的物理带宽。当业务源向路径上发送2个背靠背的包对时,接收者可以通过包对之间的间隔以及分组的大小推测书路径的物理带宽。实验证明了如果传输路径上的所有路由器都使用了公平排队机制,包对技术可用于测量一条路径上的可用带宽。
(3)M.Jain提出了一种利用数据流的速率大于可用带宽时,分组的单向时延就会呈现逐渐增长的趋势的特性来测量可用带宽的方案,但是也不难发现这种方案要想测出可用带宽需要足够长的时间。
(4)最经好多研究学者发现可以通过路由管理软件得到链路的可用带宽。但是这种方案只有获得路由器的许可才能执行,然而对于路由器的访问许可只有网络管理员和一些被授权的用户才可以,因此该算法在现实中也没有得到广泛的应用。
由上可知,方案一的探测结果不准确,方案二使用的前提是所有的路由器都使用了公平的排队机制,方案三需要很长的计算时间,方案四只有网络管理员才能够使用,通过分析比较我选择了方案二作为本算法的网络测量方法,因为随着下一代网络对服务质量的需求,使用公平排队的路由器会越来越多。
我们采用包对技术计算可用网络带宽的方法(假设路由器的排队规则为公平排队机制)如下:
其中,a代表网络的可用带宽,p表示分组的大小,t1是接受者收到第一个分组的时间,t2是接受者收到第二个分组的时间。
第3、根据反馈的信号,发送信息的源节点将根据本发明预设的判定规则(见表1)区分无拥塞、轻度拥塞、中度拥塞、重度拥塞四种程度的拥塞状态,并将此作为速率调整的依据。即它将根据上述四种程度的拥塞状态自动地做出评估判定,自适应地做出应对策略。
因为TCP在往返时间增加时会因为ACK不能及时到达而自然降低发送速率,所以如果此时源节点不相应地降低发送速率就会逐渐侵占TCP流的带宽而造成不公平现象。当拥塞比较严重时就会出现数据丢失,接收者把单位时间内丢失段的个数CSLoss作为另一个拥塞信号报告给源节点,以便源节点相应地调整速率。根据反馈的拥塞信号,源节点将区分如表1所示的四种程度的拥塞状态,并将此作为速率调整的依据。
表1 预设的四种程度拥塞状态的判定规则
第4、当有新连接之后,接收信息的目标节点发送对应于切换之前最后收到数据的三个重复的ACK,源节点收到确认包之后,它开始发送数据。此时发送者并不是突发一个窗口的数据,而是仅仅发送两个背靠背的包来探测新路径上的可用带宽,TCP发送端利用该计算结果重新设置慢启动门限ssthresh。
TCP必须把估计的带宽传送给拥塞控制机制的参数慢启动阈值ssthresh,ssthresh的最优值等于链路所能容纳的包的数量(此时TCP发送速率等于可利用带宽,发送窗口等于带宽延迟乘积),即:
ssthresh=BWE×RTTmin
但是,TCP使用粗粒度时钟来测量RTT,结果RTTmin估计的准确度很大程度上取决于TCP的间隔力度G。例如TCP运行在传输延迟等于G/10的局域网中,RTTmin的值却被设为G,是正确值的10倍,这时可以想象,即使估计的带宽是正确的,ssthresh的值却是正确值的10倍,发送端会以高出实际可利用带宽的速率发送报文段。
发送信息的源节点将根据上述四种程度的拥塞状态自动地做出评估判定,自适应地做出应对策略。如果可能出现轻度以上的拥塞现象,它将向发送信息的源节点发送一个通告为0的消息迫使发送信息的源节点进入ZWP模式,从而阻止它降低拥塞窗口。而网络中有新连接之后,接收信息的目标节点发送对应于切换之前最后收到数据的三个重复的ACK,发送信息的源节点收到确认包之后,它开始发送数据。此时发送信息的源节点并不是突发一个窗口的数据,而是仅仅发送两个背靠背的包来探测新路径上的可用带宽,发送信息的源节点利用该探测结果重新设置慢启动门限ssthresh,
是新路径上的可用带宽或新路径上的环回时延。
第5、设置慢启动的初始窗口为2,发送窗口按照慢启动方式指数性增长,进入网络传输的最佳状态。
设置慢启动的初始窗口为2,在网络建立后,如果立刻就发生拥塞,那发送一个数据包和两个数据包的效果是一样的,都会因为超时而导致无法传输数据包。如果当网络资源允许传输两个数据包,在慢启动阶段,发送窗口是指数增长的(1,2,4,8,......),这样很快到达门启动阈值,进入网络传输的最佳状态。
基于带宽预测的自适应Freeze-TCP协议时一种可靠的数据传输协议,其中最重要的一点就是该协议是基于确认的,接收信息的目标节点对收到的每一个数据包,都会发一个肯定的确认,这样就可以保证数据的可靠传输了。
算法流程如图2所示:
应用方式
我们发明的一种面向普适服务的网络拥塞控制方法-----基于带宽预测的自适应Freeze-TCP方法是一种基于端主机的拥塞控制策略,它应用于端主机,在发送端上运行。本发明正在与中国移动、中国联通等单位进行推广应用。
在异构网络环境下,网络拥塞发生的根本原因在于网络的异构性,由于网络的切换,链路中的路由器来不及处理网络中突发的数据包,而造成数据包的丢失。所以作为源端拥塞控制算法,本方法主要是考虑的问题是根据网络的情况控制好发送端的发送窗口大小,避免拥塞的发生。为此,应用测试实验设置了有线和无线网络组成的混合式网络拓扑结构,如图3所示:w0和w1是有线网络节点,w1分别与基站bs0和bs1连接,其中无线网络节点n0通过与基站的连接进行数据的传输。在160s时,w0开始向n0发送TCP数据流,在180s,w1开始向n0发送TCP数据流,且整个过程在250s结束。
在异构网络环境下分别应用传统的TCP拥塞控制算法、Freeze-TCP算法和基于网络带宽预测的自适应Freeze-TCP拥塞控制算法,我们得到网络的吞吐量和拥塞窗口随时间的变化如下:
在这种异构网络环境下,在应用传统TCP算法、Freeze-TCP算法和改进的基于网络带宽的自适应Freeze-TCP算法后,我们得到了网络吞吐量变化曲线。从变化曲线中可以看出,结果中显示了160秒开始网络中开始发送数据,吞吐量呈上升趋势,在170秒的时候,由于网络中数据包达到了网络带宽,网络开始拥塞,不同的算法都采用了各自的拥塞避免机制,其中可以看出新算法性能最好,在180秒的时候,由于网络中增加的TCP流,增加了网络负载,网络出现拥塞,吞吐量急剧下降,而新算法比较稳定,且吞吐量一直保持在一个较高的水平。
在这种异构网络环境下,在应用传统TCP算法、现有的Freeze-TCP算法和改进的基于网络带宽的自适应Freeze-TCP算法后,我们得到了网络拥塞窗口变化曲线。从变化曲线中可以看出,在刚开始在异构网络发送数据的时候,新算法的拥塞窗口为2,但是很快又能够迅速增加拥塞窗口的大小,在180秒的时候,网络出现了拥塞,但是可以看出这时基于网络带宽预测的自适应Freeze-TCP算法的拥塞窗口开始超越Freeze-TCP的拥塞窗口,但是它是按照拥塞避免机制增加窗口大小,而新算法由于重新设置了慢启动门限,窗口按照慢启动方式指数性增长。
从应用实验结果可知,基于网络带宽的自适应Freeze-TCP算法在有线-无线共存的异构网络环境中表现出更好的性能,且吞吐量一直保持较好,网络资源利用率高,变化平稳,说明网络的发送速度比较稳定,对突发的网络流量做出了及时地拥塞控制处理,满足了普适服务的性能需求。
Claims (2)
1.一种面向普适服务的自适应网络拥塞控制方法,其特征在于该方法的具体步骤包括:
第1、发送信息的源节点都在不停地测量到接收信息的目标节点的RTT,当最近的测量值RTTlatest和历史上往返时间的最低记录RTTmin之比CSRTT=RTTlatest/RTTmin增大时,说明网络中间节点排队的包太多而造成拥塞;基于CSRTT反馈的拥塞信号,源节点降低发送速率而不必等丢失发生时再降低;
第2、接收信息的目标节点区分接收到的数据包是正常的数据包还是用于探测带宽的包对,同时将估算的可用带宽反馈给发送信息的源节点;TCP报文结构头部预留了6比特的保留位,在正常数据包中该6位都被置0,我们只要一位就可以分区接收到的数据包是正常的数据包还是用于探测带宽的包对,所以本方法将预留的第六位设置为1即000001,这样接收信息的目标节点在收到报文时,可以通过检测报文头中该位是否为1来进行探测包对的判断;由于接收信息的目标节点对收到的每一个数据包,都会发一个肯定的确认,我们可以将可用带宽存放在确认包的数据域里边一起发送给源节点,这样就不需要额外的数据包占据网络带宽,接收信息的目标节点将估计的可用带宽反馈给了源节点;
第3、根据反馈的信号,发送信息的源节点将根据本发明预设的如附表所示的判定规则区分无拥塞、轻度拥塞、中度拥塞、重度拥塞四种程度的拥塞状态,并将此作为速率调整的依据;即它将根据上述四种程度的拥塞状态自动地做出评估判定,自适应地做出应对策略;如果可能出现轻度以上的拥塞现象,它将向发送端发送一个通告为0的消息迫使发送信息的源节点进入ZWP(zero window probe)窗口冻结模式,从而阻止它降低拥塞窗口;
第4、当有新连接之后,接收信息的目标节点发送对应于切换之前最后收到数据的三个重复的ACK,源节点收到确认包之后,它开始发送数据;此时发送信息的源节点并不是突发一个窗口的数据,而是仅仅发送两个背靠背的包来探测新路径上的可用带宽,发送信息的源节点利用该探测结果重新设置慢启动门限ssthresh,这是新路径上的可用带宽或新路径上的环回时延;
第5、设置慢启动的初始窗口为2,发送窗口按照慢启动方式指数性增长;在网络建立后,如果立刻就发生拥塞,那发送一个数据包和两个数据包的效果是一样的,都会因为超时而导致无法传输数据包;如果当网络资源允许传输两个数据包,在慢启动阶段,发送窗口是指数增长的(1,2,4,8,......),这样很快到达门启动阈值,进入网络传输的最佳状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102620369A CN101917342A (zh) | 2010-08-25 | 2010-08-25 | 一种面向普适服务的自适应网络拥塞控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102620369A CN101917342A (zh) | 2010-08-25 | 2010-08-25 | 一种面向普适服务的自适应网络拥塞控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101917342A true CN101917342A (zh) | 2010-12-15 |
Family
ID=43324736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102620369A Pending CN101917342A (zh) | 2010-08-25 | 2010-08-25 | 一种面向普适服务的自适应网络拥塞控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101917342A (zh) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011144061A2 (zh) * | 2011-05-20 | 2011-11-24 | 华为技术有限公司 | 移动网络小区的拥塞检测方法和装置 |
CN102664867A (zh) * | 2012-03-15 | 2012-09-12 | 南京邮电大学 | 一种卫星通信系统中的传输协议的增强方法 |
CN102946360A (zh) * | 2012-12-03 | 2013-02-27 | 深圳中兴网信科技有限公司 | 网络流量控制系统和网络流量控制方法 |
CN103368861A (zh) * | 2013-07-30 | 2013-10-23 | 迈普通信技术股份有限公司 | 一种处理网络拥塞的系统及方法 |
CN104038438A (zh) * | 2013-12-03 | 2014-09-10 | 江苏达科信息科技有限公司 | 一种基于传统传输控制协议改进的显式拥塞控制方法 |
CN104507119A (zh) * | 2014-11-26 | 2015-04-08 | 无锡儒安科技有限公司 | 一种基于并发传输的无线传感器网络数据收集方法 |
CN104869591A (zh) * | 2014-02-25 | 2015-08-26 | 北京随锐科技有限公司 | 一种网络拥塞控制的方法和装置 |
CN105307211A (zh) * | 2014-07-25 | 2016-02-03 | 北京信威通信技术股份有限公司 | 一种用于多跳网络的流量控制方法 |
WO2016112728A1 (zh) * | 2015-01-12 | 2016-07-21 | 华为技术有限公司 | 一种数据传输的方法、网络服务器、用户终端及系统 |
CN106941425A (zh) * | 2016-01-04 | 2017-07-11 | 中国科学院声学研究所 | 一种基于rtt监测的链路健康检测系统及方法 |
CN107710811A (zh) * | 2015-06-01 | 2018-02-16 | 高通股份有限公司 | 连通模式中的用于数据通信的因应用而异的拥塞控制(acdc) |
CN108322401A (zh) * | 2017-01-17 | 2018-07-24 | 网宿科技股份有限公司 | 网络传输拥塞的控制方法及装置 |
CN109327716A (zh) * | 2018-10-31 | 2019-02-12 | 北京达佳互联信息技术有限公司 | 延迟控制方法、延迟控制装置和计算机可读存储介质 |
CN110149496A (zh) * | 2019-04-09 | 2019-08-20 | 视联动力信息技术股份有限公司 | 一种视联网的控制方法及装置 |
CN110166370A (zh) * | 2019-05-15 | 2019-08-23 | 浙江启程电子科技股份有限公司 | 一种基于拥塞因子预判的传输方法 |
CN110290030A (zh) * | 2019-08-12 | 2019-09-27 | 北京字节跳动网络技术有限公司 | 网络状态检测方法、装置、电子设备及计算机可读介质 |
CN110391992A (zh) * | 2019-07-11 | 2019-10-29 | 清华大学 | 基于交换机主动队列管理的拥塞控制方法和装置 |
CN110391956A (zh) * | 2019-07-23 | 2019-10-29 | 中国工商银行股份有限公司 | 网络服务进程状态的识别监控方法及装置 |
CN111314961A (zh) * | 2020-02-19 | 2020-06-19 | 航天恒星科技有限公司 | Tcp传输方法、装置和系统 |
CN112202686A (zh) * | 2020-09-07 | 2021-01-08 | 鹏城实验室 | 一种差分流量控制的自适应接入识别方法及终端设备 |
CN113759698A (zh) * | 2021-08-25 | 2021-12-07 | 中通服公众信息产业股份有限公司 | 一种源端网络拥塞传输控制方法 |
CN113839840A (zh) * | 2021-11-24 | 2021-12-24 | 北京航空航天大学 | 一种卫星网络瓶颈链路的带宽自适应估计方法和系统 |
CN113950099A (zh) * | 2020-07-17 | 2022-01-18 | 华为技术有限公司 | 一种网络拥塞控制方法及设备 |
CN115277564A (zh) * | 2022-07-21 | 2022-11-01 | 深圳证券通信有限公司 | 一种自适应带宽的数据传输机制 |
CN115918043A (zh) * | 2020-08-18 | 2023-04-04 | 瑞典爱立信有限公司 | 用于支持通信网络中的通信路径上的延时的估计的方法和装置 |
-
2010
- 2010-08-25 CN CN2010102620369A patent/CN101917342A/zh active Pending
Cited By (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102893654B (zh) * | 2011-05-20 | 2016-06-08 | 华为技术有限公司 | 移动网络小区的拥塞检测方法和装置 |
WO2011144061A3 (zh) * | 2011-05-20 | 2012-04-19 | 华为技术有限公司 | 移动网络小区的拥塞检测方法和装置 |
CN102893654A (zh) * | 2011-05-20 | 2013-01-23 | 华为技术有限公司 | 移动网络小区的拥塞检测方法和装置 |
WO2011144061A2 (zh) * | 2011-05-20 | 2011-11-24 | 华为技术有限公司 | 移动网络小区的拥塞检测方法和装置 |
CN102664867A (zh) * | 2012-03-15 | 2012-09-12 | 南京邮电大学 | 一种卫星通信系统中的传输协议的增强方法 |
CN102664867B (zh) * | 2012-03-15 | 2014-11-19 | 南京邮电大学 | 一种卫星通信系统中的传输协议的增强方法 |
CN102946360A (zh) * | 2012-12-03 | 2013-02-27 | 深圳中兴网信科技有限公司 | 网络流量控制系统和网络流量控制方法 |
CN102946360B (zh) * | 2012-12-03 | 2016-04-13 | 深圳中兴网信科技有限公司 | 网络流量控制系统和网络流量控制方法 |
CN103368861A (zh) * | 2013-07-30 | 2013-10-23 | 迈普通信技术股份有限公司 | 一种处理网络拥塞的系统及方法 |
CN104038438A (zh) * | 2013-12-03 | 2014-09-10 | 江苏达科信息科技有限公司 | 一种基于传统传输控制协议改进的显式拥塞控制方法 |
CN104869591A (zh) * | 2014-02-25 | 2015-08-26 | 北京随锐科技有限公司 | 一种网络拥塞控制的方法和装置 |
CN104869591B (zh) * | 2014-02-25 | 2018-09-21 | 随锐科技股份有限公司 | 一种网络拥塞控制的方法和装置 |
CN105307211B (zh) * | 2014-07-25 | 2019-02-22 | 北京信威通信技术股份有限公司 | 一种用于多跳网络的流量控制方法 |
CN105307211A (zh) * | 2014-07-25 | 2016-02-03 | 北京信威通信技术股份有限公司 | 一种用于多跳网络的流量控制方法 |
CN104507119B (zh) * | 2014-11-26 | 2018-09-14 | 无锡儒安科技有限公司 | 一种基于并发传输的无线传感器网络数据收集方法 |
CN104507119A (zh) * | 2014-11-26 | 2015-04-08 | 无锡儒安科技有限公司 | 一种基于并发传输的无线传感器网络数据收集方法 |
WO2016112728A1 (zh) * | 2015-01-12 | 2016-07-21 | 华为技术有限公司 | 一种数据传输的方法、网络服务器、用户终端及系统 |
CN107710811A (zh) * | 2015-06-01 | 2018-02-16 | 高通股份有限公司 | 连通模式中的用于数据通信的因应用而异的拥塞控制(acdc) |
CN106941425A (zh) * | 2016-01-04 | 2017-07-11 | 中国科学院声学研究所 | 一种基于rtt监测的链路健康检测系统及方法 |
CN106941425B (zh) * | 2016-01-04 | 2019-11-19 | 中国科学院声学研究所 | 一种基于rtt监测的链路健康检测系统及方法 |
CN108322401A (zh) * | 2017-01-17 | 2018-07-24 | 网宿科技股份有限公司 | 网络传输拥塞的控制方法及装置 |
CN108322401B (zh) * | 2017-01-17 | 2022-01-25 | 网宿科技股份有限公司 | 网络传输拥塞的控制方法及装置 |
CN109327716A (zh) * | 2018-10-31 | 2019-02-12 | 北京达佳互联信息技术有限公司 | 延迟控制方法、延迟控制装置和计算机可读存储介质 |
US11490156B2 (en) | 2018-10-31 | 2022-11-01 | Beijing Dajia Internet Information Technology Co., Ltd. | Delay control method, delay control apparatus, terminal device and storage medium |
CN109327716B (zh) * | 2018-10-31 | 2020-09-11 | 北京达佳互联信息技术有限公司 | 延迟控制方法、延迟控制装置和计算机可读存储介质 |
CN110149496A (zh) * | 2019-04-09 | 2019-08-20 | 视联动力信息技术股份有限公司 | 一种视联网的控制方法及装置 |
CN110166370A (zh) * | 2019-05-15 | 2019-08-23 | 浙江启程电子科技股份有限公司 | 一种基于拥塞因子预判的传输方法 |
CN110391992A (zh) * | 2019-07-11 | 2019-10-29 | 清华大学 | 基于交换机主动队列管理的拥塞控制方法和装置 |
CN110391956A (zh) * | 2019-07-23 | 2019-10-29 | 中国工商银行股份有限公司 | 网络服务进程状态的识别监控方法及装置 |
CN110391956B (zh) * | 2019-07-23 | 2021-08-13 | 中国工商银行股份有限公司 | 网络服务进程状态的识别监控方法及装置 |
CN110290030A (zh) * | 2019-08-12 | 2019-09-27 | 北京字节跳动网络技术有限公司 | 网络状态检测方法、装置、电子设备及计算机可读介质 |
CN111314961A (zh) * | 2020-02-19 | 2020-06-19 | 航天恒星科技有限公司 | Tcp传输方法、装置和系统 |
CN113950099A (zh) * | 2020-07-17 | 2022-01-18 | 华为技术有限公司 | 一种网络拥塞控制方法及设备 |
CN113950099B (zh) * | 2020-07-17 | 2024-06-25 | 华为技术有限公司 | 一种网络拥塞控制方法及设备 |
CN115918043A (zh) * | 2020-08-18 | 2023-04-04 | 瑞典爱立信有限公司 | 用于支持通信网络中的通信路径上的延时的估计的方法和装置 |
CN112202686A (zh) * | 2020-09-07 | 2021-01-08 | 鹏城实验室 | 一种差分流量控制的自适应接入识别方法及终端设备 |
CN113759698A (zh) * | 2021-08-25 | 2021-12-07 | 中通服公众信息产业股份有限公司 | 一种源端网络拥塞传输控制方法 |
CN113839840A (zh) * | 2021-11-24 | 2021-12-24 | 北京航空航天大学 | 一种卫星网络瓶颈链路的带宽自适应估计方法和系统 |
CN113839840B (zh) * | 2021-11-24 | 2022-02-18 | 北京航空航天大学 | 一种卫星网络瓶颈链路的带宽自适应估计方法和系统 |
CN115277564A (zh) * | 2022-07-21 | 2022-11-01 | 深圳证券通信有限公司 | 一种自适应带宽的数据传输机制 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101917342A (zh) | 一种面向普适服务的自适应网络拥塞控制方法 | |
Jiang et al. | When machine learning meets congestion control: A survey and comparison | |
US11936561B2 (en) | Rate-optimized congestion management | |
EP2754274B1 (en) | A method for avoiding network congestion and an apparatus thereof | |
Chen et al. | The utility of explicit rate-based flow control in mobile ad hoc networks | |
Chowdhury et al. | TCP CRAHN: A transport control protocol for cognitive radio ad hoc networks | |
Flora et al. | A survey on congestion control techniques in wireless sensor networks | |
JP2011061699A (ja) | 輻輳制御装置及び輻輳制御方法 | |
Bolettieri et al. | Highlighting some shortcomings of the CoCoA+ congestion control algorithm | |
Jeyasekar et al. | Congestion avoidance algorithm using ARIMA (2, 1, 1) model-based RTT estimation and RSS in heterogeneous wired-wireless networks | |
Muhammad et al. | Study on performance of AQM schemes over TCP variants in different network environments | |
Hoang et al. | RCOAP: A rate control scheme for reliable bursty data transfer in IoT networks | |
Asmaa et al. | EC-elastic an explicit congestion control mechanism for named data networking | |
Pu et al. | Enhancements on router-assisted congestion control for wireless networks | |
Xue et al. | LTRES: A loss-tolerant reliable event sensing protocol for wireless sensor networks | |
Patel et al. | Congestion control techniques in networking | |
Wallace | Concurrent multipath transfer: Scheduling, modelling, and congestion window management | |
Shihada et al. | BAIMD: a responsive rate control for TCP over optical burst switched (OBS) networks | |
Meng et al. | Research on TCPW improvement in hybrid network | |
Harsoor | An Effective Congestion Control Approach through Route Delay Estimation Using Packet Loss in Wireless Sensor Network | |
Santhi et al. | A new approach to Active Queue Management for TCP with ECN | |
Kanellopoulos et al. | Packet Loss Differentiation Over Manet Based on a BP Neural Network | |
Uddin et al. | Reliability of mobile ad hoc networks through performance analysis of TCP variants over AODV | |
Cheng et al. | Improving the ramping up behavior of TCP slow start | |
Ibom | Tcp performance over manet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20101215 |