CN100579079C - 多对多可靠组播拥塞控制方法 - Google Patents
多对多可靠组播拥塞控制方法 Download PDFInfo
- Publication number
- CN100579079C CN100579079C CN200710176826A CN200710176826A CN100579079C CN 100579079 C CN100579079 C CN 100579079C CN 200710176826 A CN200710176826 A CN 200710176826A CN 200710176826 A CN200710176826 A CN 200710176826A CN 100579079 C CN100579079 C CN 100579079C
- Authority
- CN
- China
- Prior art keywords
- multicast
- congested
- reliable
- inhibition
- speed
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种多对多可靠组播拥塞控制方法,该方法包含以下步骤:1)组播接收节点判断是否发生拥塞,若拥塞,则向可靠服务器发送拥塞抑制请求;2)可靠服务器按计时周期接收组播节点拥塞抑制请求;3)若可靠服务器持续未收到拥塞抑制请求,则通知组播发送方提高发送速率;若可靠服务器收到拥塞抑制请求,则根据拥塞判断策略确定是否需要抑制;4)若可靠服务器判断需要抑制,则向组播发送方发送速率抑制请求,组播发送方进行速率抑制。本发明通过可靠服务器被动收集组播节点拥塞信息,对发送方进行统一的拥塞控制,保证了拥塞发生时及时对其进行反应,避免了因主机节点拥塞导致的丢包率上升问题。
Description
技术领域
本发明涉及一种应用于计算机网络的多对多可靠组播的拥塞控制方法,属于计算机网络可靠组播技术领域。
背景技术
随着网络技术的发展及大量新兴业务的出现,传统的数据通信方式已经不能满足应用的需求。在视频会议、远程教学、网络交互式游戏、远程虚拟现实等应用中,若用传统的点到点通信方式,不仅浪费大量的网络带宽,而且效率很低。组播作为一种组传输机制,采用一对多的消息分发方式,能够有效节省带宽,但由于它是一种尽力传输方式,不能够对传输过程中的差错进行处理,无法保证数据报文的可靠性。为了满足应用需求,怎样设计一种能够完成类似单播服务中TCP的可靠传输功能的可靠组播(Reliable Multicast)机制,使其在组播通信过程中,能够根据网络丢失分组报文的情况,迅速、高效地恢复丢失的报文,使接收者接收到正确、有序的报文,正成为当前的研究热点。
可靠组播中最主要解决的是两方面的问题,第一是错误恢复,第二就是拥塞控制。而由于错误恢复机制的引入,往往会增加网络通信传输量,因此如果没有适当的拥塞控制机制,则会加重网络拥塞情况,增大丢包率,不利于组播通信的可靠性保证。由于多对多可靠组播的通信量和节点负载往往比一对多可靠组播高,因此对拥塞控制的需求则更加突出。
多对多可靠组播中的拥塞控制主要为了解决有限的网络资源与多用户需求之间的矛盾,是对用户使用网络资源动态协调和控制的机制和策略。通常拥塞控制又可进一步细分为流量控制(Flow Control)和网络拥塞控制。流控制指接收方控制发送方发送数据数量的机制。当数据超过网络的处理能力时,网络拥塞就会产生。TCP采用一种基于窗口的拥塞控制机制通过在发送方维护接收方允许的窗口和拥塞窗口实现。分布交互仿真领域的拥塞与传统网络通信中的拥塞是有区别的。网络拥塞发生于包交换机或路由器,而在分布交互仿真的多对多可靠组播中,主机节点往往需要占用大量的计算资源构建仿真环境,因此拥塞常由主机节点开始。
发明内容
本发明的目的是提供一种多对多可靠组播拥塞控制方法,它可使可靠服务器根据组播节点的状态进行拥塞检测和拥塞抑制请求的发送,对发送方进行有效的速率抑制,保证组播传输的可靠性。
本发明采取的技术方案是:
一种多对多可靠组播拥塞控制方法,包含以下步骤:
1)组播接收方判断是否拥塞,若拥塞,则向可靠服务器发送拥塞抑制请求;
2)可靠服务器通过计时,判断是否收到拥塞抑制请求;
3)若可靠服务器未收到拥塞抑制请求,则通知组播发送方提高发送速率;
4)若可靠服务器收到拥塞抑制请求,则判断是否发生拥塞;
5)若可靠服务器判断已发生拥塞,则向组播发送方发送速率抑制请求,组播发送方进行速率抑制。
在所述步骤1)中,组播接收方通过以下方法判断是否拥塞:监测组播节点缓冲队列变化趋势及空闲率;若缓冲队列呈加速减少,则认为发生拥塞;若缓冲队列呈减速减少,且剩余大小<阈值,则认为发生拥塞。
在所述步骤1)中,组播接收方还可通过以下方法判断是否拥塞:根据缓冲区当前和上一时刻的占用量变化,和这期间的处理速度相比,加权求均值,得出缓冲区占用量变化趋势;当缓冲区占用量变化趋势超过一定阈值时,说明拥塞发生。
所述步骤3)可进一步分为:
3.1)当可靠服务器在多个周期时间内未收到拥塞抑制请求时,按以下方法计算发送速率并将发送速率发给组播发送方;
3.2)比较当前速率与上次抑制的速率,差距较大时按正常策略提升速率;
3.3)当速率接近上次抑制的速率时,缩小速率提升比例。
所述步骤4)可进一步分为:
4.1)可靠服务器对所接收到的组播节点的NACK反馈进行保存;
4.2)计算丢包趋势函数;
4.3)当丢包趋势函数大于一定阈值时,判断组播节点发生拥塞,需要进行速率抑制。
所述步骤5)可进一步分为:
5.1)可靠服务器按以下方法计算速率抑制比例,并发送给发送方;
5.2)丢弃1个周期内收到同组播组内不同节点的拥塞抑制信息;
5.3)1个周期内第i次收到同一节点的拥塞抑制信息,根据i计算新的速率抑制比例。
与现有技术相比,本发明的有益效果是:(1)通过可靠服务器解决了多对多可靠组播中拥塞控制的问题,统一进行拥塞决策,减轻了组播节点的负载,组播节点只需监测自身的缓冲区状况,并将拥塞信息发送给可靠服务器即可;(2)引入丢包趋势函数,有效的判断拥塞状况,避免了网络正常抖动带来多余的拥塞控制开销;(3)对组播节点的拥塞抑制请求进行筛选,避免过度抑制导致的drop-to-zero问题。
附图说明
图1是拥塞控制***整体结构图;
图2是组播节点拥塞判断算法示意图;
图3是拥塞控制速率提升流程图;
图4是拥塞控制速率抑制流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细的描述。
首先给出以下定义:
缓冲区--指各组播节点接收报文队列保存的预留内存空间,组播节点从网络中接收的报文保存在缓冲区中,处理进程从其中读取报文,缓冲队列清除已处理的报文;
NACK--指报文丢失反馈信息,当组播节点发现丢包时向可靠服务器发送NACK信息请求恢复;
拥塞程度级别-为拥塞程度划分多个级别,根据相应的级别进行拥塞控制。
丢包趋势函数-表示组播节点丢失报文的数量和次数的变化趋势的函数,其确定因素包括:丢包事件、丢失报文数及丢包事件之间接收到的报文数。
请参阅图1。本发明采取可靠服务器集群统一调控的拥塞控制方法,通过可靠服务器集群对拥塞反馈进行处理。可靠服务器集群和组播节点向主控服务器注册,由主控服务器为它们分配相应的负责对象。组播节点负责监控自身状态,发现拥塞时及时向可靠服务器集群汇报。可靠服务器集群负责接收自己负责的组播节点发送的拥塞反馈信息,并进行处理,判断是否需要进行拥塞控制。同时可靠服务器集群通过接收统计组播节点丢包反馈NACK报文,对拥塞情况进行判断,当需要对发送方组播节点进行速率抑制或提升时,向发送方发送控制信息。
本发明是一种多对多可靠组播拥塞控制方法,该方法包含以下步骤:
1)组播接收方判断是否拥塞,若拥塞,则向可靠服务器发送拥塞抑制请求;
2)可靠服务器设置计时周期,等待接收拥塞抑制请求;
3)若可靠服务器持续未收到拥塞抑制请求,则通知组播发送方提高发送速率;
4)若可靠服务器收到拥塞抑制请求,则判断是否发生拥塞;
5)若可靠服务器判断已发生拥塞,则向组播发送方发送速率抑制控制报文,组播发送方进行速率抑制。
上述步骤1)中,组播接收节点通过两种方法判断是否拥塞,组播节点缓冲区如图2所示:
(1)监测组播节点缓冲队列变化趋势及空闲率:
缓冲区当前i时刻的占用量Bufferi,缓冲区上一时刻占用量Bufferi-1,时间间隔t,缓冲队列变化速度 缓冲队列加速度
若缓冲队列呈加速增长,即 则说明当前的缓冲队列的处理速度远小于报文接收速度,报文在缓冲区中占用的资源急剧增大,发生拥塞的趋势明显,需要进行拥塞抑制;
若缓冲队列呈减速增长,即 则说明当前缓冲队列的处理速度小于报文接收速度,报文在缓冲区中占用的资源缓慢增大,该表现在缓冲区占用Bufferi/cacheSize(cacheSize为缓冲区大小)未达到阀值之前是正常的,不需要进行拥塞抑制。当缓冲区剩余大小<阈值(该阀值与具体缓冲区设置相关)时,说明当前缓冲区占用率大于设定的大小,如果持续增长则将发生拥塞,因此需要进行拥塞抑制;
若缓冲队列呈减少,即 则说明当前缓冲队列的处理速度大于报文接收速度,没有发生缓冲区溢出的危险,不需要进行拥塞抑制。
(2)根据缓冲区当前和上一时刻的占用量变化,和这期间的处理速度相比,加权求均值,得出缓冲区淹没度:
缓冲区当前占用量Bufferi,缓冲区上一时刻占用量Bufferi-1,时间间隔t,处理速度vp i,湮没度Floodi,令 当αi<0时,Floodi取0;当0<αi<1时,Floodi取1,当αi>1时,Floodi取αi。
当均方差 大于一定阈值(该值为实验经验值)时,表示组播节点预测到拥塞发生。
组播接收方向可靠服务器发送的拥塞抑制请求中包括:拥塞发生节点ID、拥塞发生的组播组ID、拥塞程度级别g(Bufferi),其中
上述步骤3)中的可靠服务器未收到拥塞抑制请求,通知组播发送方提高发送速率的步骤如图3所示,进一步分为:
3.1)当可靠服务器在n个周期时间内未收到组播节点的拥塞抑制请求时,根据速率增长比例和1/n的值按参数(实验经验值)计算下一时刻发送速率;
3.2)比较当前速率与上次抑制的速率,如果速率差>阀值m(m为经验值,表示当前速率未与上次抑制速率的接近),则按3.1)计算提升速率,将计算出的速率抑制比例发送给组播发送方;
3.3)如果速率差<m(即速率接近上次抑制的速率),则缩小速率提升比例,即根据速率增长比例和1/n、m的值按参数(实验经验值)计算下一时刻速率抑制比例,将计算出的速率抑制比例发送给组播发送方。
可靠服务器向组播发送方法送的速率抑制请求中包含:发送节点,组播组ID,目标抑制速率。
上述步骤4)中的可靠服务器基于丢包检测的拥塞控制算法步骤,进一步分为:
4.1)可靠服务器对所接收到的组播节点NACK反馈进行保存和记录;
4.2)计算丢包趋势函数;
4.3)当丢包趋势函数大于一定阈值时,判断组播节点发生拥塞,需要进行速率抑制。
在这里,给出丢包趋势函数LT概念,其确定因素包括:丢包事件、丢失报文数及丢包事件之间接收到的报文数。LEk,……,LEk-m+1是最近m次连续的丢包事件,其值为丢失报文数和丢包事件之间接收到的报文数的比值,设wi为加权,距离近的丢包事件加权越大,例如:{6,5,4,3,2,1},丢包趋势函数定义为:
当LT(k)大于一定阈值(实验经验值)时,判断组播节点发生拥塞,需要进行拥塞抑制。上述步骤5)中的可靠服务器判断已发生拥塞,向组播发送方发送速率抑制请求的步骤如图4所示,进一步分为:
5.1)可靠服务器接收到组播节点的拥塞抑制信息后,记录当前速率,根据拥塞程度级别和当前LT(k)按参数(实验经验值)计算速率抑制比例,将计算出的速率抑制比例发送给发送方;
5.2)若1个周期内收到同组播组内不同节点速率抑制信息,则丢弃该抑制信息,不向发送方发送;
5.3)1个周期内第i次收到同一节点速率抑制信息,首先记录当前速率,速率抑制比例需要乘以1/i,将计算出的速率抑制比例发送给发送方。
以上所述是本发明的基本实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明的原理前提下,还可以进行若干改进和润饰,这些改进和润饰也应视为本发明方法的保护范围之内。
Claims (9)
1.一种多对多可靠组播拥塞控制方法,其特征在于包含以下步骤:
1)组播接收方判断是否拥塞,若拥塞,则向可靠服务器发送拥塞抑制请求;
2)可靠服务器设置计时周期,等待接收拥塞抑制请求;
3)若可靠服务器持续未收到拥塞抑制请求,则通知组播发送方提高发送速率;
4)若可靠服务器收到拥塞抑制请求,则判断是否发生拥塞;
5)若可靠服务器判断已发生拥塞,则向组播发送方发送速率抑制控制报文,组播发送方进行速率抑制。
2.如权利要求1所述的多对多可靠组播拥塞控制方法,其特征在于:
在所述步骤1)中,组播接收方通过以下方法判断是否拥塞:
监测组播节点缓冲队列变化趋势及空闲率;
若缓冲队列呈加速减少,则认为发生拥塞;
若缓冲队列呈减速减少,且剩余大小<阈值,则认为发生拥塞。
3.如权利要求1所述的多对多可靠组播拥塞控制方法,其特征在于:
在所述步骤1)中,组播接收方通过以下方法判断是否拥塞:
根据缓冲区当前和上一时刻的占用量变化,和这期间的处理速度相比,加权求均值,得出缓冲区占用量变化趋势;
当缓冲区占用量变化趋势超过一定阈值时,说明拥塞发生。
4.如权利要求1-3之一所述的多对多可靠组播拥塞控制方法,其特征在于:
所述步骤3)进一步分为:
3.1)当可靠服务器在多个周期时间内未收到拥塞抑制请求时,按以下方法计算发送速率并将发送速率发给组播发送方;
3.2)比较当前速率与上次抑制的速率,差距较大时按正常策略提升速率;
3.3)当当前速率接近上次抑制的速率时,缩小速率提升比例。
5.如权利要求1-3之一所述的多对多可靠组播拥塞控制方法,其特征在于:
所述步骤4)进一步分为:
4.1)可靠服务器对所接收到的组播节点的NACK反馈进行保存;
4.2)计算丢包趋势函数;
4.3)当丢包趋势函数大于一定阈值时,判断组播节点发生拥塞,需要进行速率抑制。
6.如权利要求1-3之一所述的多对多可靠组播拥塞控制方法,其特征在于:
所述步骤5)进一步分为:
5.1)可靠服务器按以下方法计算速率抑制比例,并发送给发送方;
5.2)丢弃1个周期内收到的同组播组内不同节点的拥塞抑制信息;
5.3)1个周期内第i次收到同一节点的拥塞抑制信息,根据i计算新的速率抑制比例。
7.如权利要求4所述的多对多可靠组播拥塞控制方法,其特征在于:
所述步骤4)进一步分为:
4.1)可靠服务器对所接收到的组播节点的NACK反馈进行保存;
4.2)计算丢包趋势函数;
4.3)当丢包趋势函数大于一定阈值时,判断组播节点发生拥塞,需要进行速率抑制。
8.如权利要求4所述的多对多可靠组播拥塞控制方法,其特征在于:
所述步骤5)进一步分为:
5.1)可靠服务器按以下方法计算速率抑制比例,并发送给发送方;
5.2)丢弃1个周期内收到的同组播组内不同节点的拥塞抑制信息;
5.3)1个周期内第i次收到同一节点的拥塞抑制信息,根据i计算新的速率抑制比例。
9.如权利要求5所述的多对多可靠组播拥塞控制方法,其特征在于:
所述步骤5)进一步分为:
5.1)可靠服务器按以下方法计算速率抑制比例,并发送给发送方;
5.2)丢弃1个周期内收到的同组播组内不同节点的拥塞抑制信息;
5.3)1个周期内第i次收到同一节点的拥塞抑制信息,根据i计算新的速率抑制比例。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710176826A CN100579079C (zh) | 2007-11-05 | 2007-11-05 | 多对多可靠组播拥塞控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710176826A CN100579079C (zh) | 2007-11-05 | 2007-11-05 | 多对多可靠组播拥塞控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101150521A CN101150521A (zh) | 2008-03-26 |
CN100579079C true CN100579079C (zh) | 2010-01-06 |
Family
ID=39250870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710176826A Expired - Fee Related CN100579079C (zh) | 2007-11-05 | 2007-11-05 | 多对多可靠组播拥塞控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100579079C (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2200230B1 (en) * | 2008-12-16 | 2014-03-12 | Alcatel Lucent | Method and device for performing traffic control in telecommunication networks |
CN101582852B (zh) * | 2009-06-10 | 2012-04-11 | 中兴通讯股份有限公司 | 一种网络拥塞管理的方法及*** |
CN101938400B (zh) * | 2009-06-30 | 2012-05-23 | 华为技术有限公司 | 网络拥塞控制的方法和装置 |
CN101853476B (zh) * | 2010-05-18 | 2015-11-25 | 宁波高新区宇善科技有限公司 | 一种金融业客户身份自动联网核查***及方法 |
CN101938484B (zh) * | 2010-09-09 | 2013-05-15 | 奇智软件(北京)有限公司 | 一种分布式流量控制方法及*** |
CN101984601B (zh) * | 2010-11-04 | 2012-03-28 | 中国人民解放军空军工程大学 | 混合型多目标优化组播拥塞控制方法 |
CN101977158A (zh) * | 2010-11-22 | 2011-02-16 | 北京理工大学 | 一种在多源应用层组播中实现拥塞控制的方法 |
CN102137023B (zh) * | 2011-04-14 | 2014-01-29 | 中国人民解放军空军工程大学 | 基于可用带宽预测的组播拥塞控制方法 |
CN103368861A (zh) * | 2013-07-30 | 2013-10-23 | 迈普通信技术股份有限公司 | 一种处理网络拥塞的***及方法 |
CN105245368A (zh) * | 2015-10-09 | 2016-01-13 | 烽火通信科技股份有限公司 | 一种控制实体与多个传输实体间数据同步的方法 |
CN107231341B (zh) * | 2016-12-27 | 2020-09-15 | 深圳市万网博通科技有限公司 | 报文处理方法和装置 |
CN112073331A (zh) | 2017-05-31 | 2020-12-11 | 华为技术有限公司 | 一种流量控制方法、设备及*** |
CN107566291B (zh) * | 2017-09-26 | 2021-03-12 | 恒生电子股份有限公司 | 组播传输方法、装置、电子设备及存储介质 |
CN109889450B (zh) * | 2019-03-13 | 2021-12-21 | 西南交通大学 | 组播速率控制方法以及组播传输设备 |
CN110120896B (zh) * | 2019-04-15 | 2020-12-25 | 北京达佳互联信息技术有限公司 | 网络延迟控制方法、装置、电子设备及存储介质 |
-
2007
- 2007-11-05 CN CN200710176826A patent/CN100579079C/zh not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
一种基于兴趣约束的新型组播地址分配方法. 周忠,赵沁平.计算机学报,第29卷第3期. 2006 |
一种基于兴趣约束的新型组播地址分配方法. 周忠,赵沁平.计算机学报,第29卷第3期. 2006 * |
Also Published As
Publication number | Publication date |
---|---|
CN101150521A (zh) | 2008-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100579079C (zh) | 多对多可靠组播拥塞控制方法 | |
Song et al. | Smart collaborative automation for receive buffer control in multipath industrial networks | |
CN104580222B (zh) | 基于信息熵的DDoS攻击分布式检测与响应方法 | |
CN102045362B (zh) | 一种基于udp协议的数据传输方法和*** | |
Thompson et al. | Retiring replicants: Congestion control for intermittently-connected networks | |
Ben-Othman et al. | An energy efficient priority-based QoS MAC protocol for wireless sensor networks | |
Fu et al. | Modeling and analyzing cascading dynamics of the clustered wireless sensor network | |
CN108616458A (zh) | 客户端设备上调度分组传输的***和方法 | |
CN105515912B (zh) | 一种多节点之间链路有效性检测和处理方法 | |
CN104202254A (zh) | 一种基于云计算平台服务器智能负载均衡方法 | |
CN102291389A (zh) | 一种卫星网络中跨层拥塞控制方法 | |
CN105227484B (zh) | 一种面向卫星网络的数据传输控制方法 | |
Casetti et al. | An analytical framework for the performance evaluation of TCP Reno connections | |
Ganjalizadeh et al. | Interplay between distributed AI workflow and URLLC | |
CN104394074B (zh) | 一种容迟网中基于能效的消息转发方法 | |
Hua et al. | Modeling and control for wireless networked control system | |
Zou et al. | RMC: Reordering marking and coding for fine-grained load balancing in data centers | |
CN103944781B (zh) | 一种防止堆叠***单边***的方法及*** | |
Liang et al. | Queue‐based congestion detection and multistage rate control in event‐driven wireless sensor networks | |
Chlamtac et al. | Energy-conserving selective repeat ARQ protocols for wireless data networks | |
Cabacas et al. | A novel energy-aware priority transmission scheme based on context-metric queuing for delay tolerant networks | |
Wang | Achieving 100% throughput in TCP/AQM under aggressive packet marking with small buffer | |
WO2016169251A1 (zh) | 虚拟机的tcp数据传输方法和虚拟机*** | |
CN109348259A (zh) | 一种无线网络视频的发送码率调整方法及*** | |
CN103118123B (zh) | 基于分布式服务器的数据回写方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100106 Termination date: 20131105 |