CN106170955B - 一种流量控制方法及*** - Google Patents
一种流量控制方法及*** Download PDFInfo
- Publication number
- CN106170955B CN106170955B CN201480016364.7A CN201480016364A CN106170955B CN 106170955 B CN106170955 B CN 106170955B CN 201480016364 A CN201480016364 A CN 201480016364A CN 106170955 B CN106170955 B CN 106170955B
- Authority
- CN
- China
- Prior art keywords
- packet loss
- flow control
- result
- loss reason
- packet
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0882—Utilisation of link capacity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/003—Arrangements for allocating sub-channels of the transmission path
- H04L5/0058—Allocation criteria
- H04L5/006—Quality of the received signal, e.g. BER, SNR, water filling
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Environmental & Geological Engineering (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种流量控制方法及***,所述***包括:丢包原因确定模块,用于确定丢包原因;流量控制模块,用于根据所述丢包原因确定模块所确定的丢包原因,进行流量控制;纠错模块,用于获取所述流量控制模块进行流量控制后的流量控制结果,根据预期的流量控制结果与所获取的流量控制结果的对比,对丢包原因确定模块所确定的丢包原因进行修正。在本发明实施例中建立了纠错机制:在初步进行了流量控制后,会基于流量控制结果进行纠错,即对先前确定的丢包原因进行修正,然后返回去重新进行流量控制。通过这种纠错机制,可以使丢包原因判断出错时能够得到及时纠正,提高丢包原因的判断准确性,从而可以实现对流量的准确控制。
Description
技术领域
本发明涉及网络通讯技术领域,尤其是涉及一种流量控制方法及***。
背景技术
无线通信网络中常常会出现丢包现象。丢包可能是由拥塞所致(即拥塞丢包),也可能是由传输链路比特错误所致(即误码丢包)。业务层的拥塞控制模块在发现出现了丢包时,若一律按拥塞来处理,则可能会导致网络带宽利用率下降。所以为了提高无线通信网络的传输性能,在出现丢包时,拥塞控制模块需要能够获知丢包原因,即判断出是误码丢包还是拥塞丢包。
在相关技术中,一种解决办法是在传输层设置丢包类型判断模块,该模块能根据接收到的包的特性(时延、抖动等)通过算法对丢包原因进行判断,并将判断结果(拥塞丢包/误码丢包)上报给业务层的拥塞控制模块,以使拥塞控制模块及时采取相应的措施来控制流量,例如在发现是误码丢包是提升业务发送速率,在发现是拥塞丢包时降低业务发送速率。
然而,由于无线网络拓扑结构的复杂性,以及网络状态的多变性,相关技术中的这种办法经常会对丢包原因作为误判,导致对流量进行了错误的控制,进而带来了不良的后果。例如,原本是拥塞丢包但误判为误码丢包,然后错误的提升了业务速率,结果导致丢包更加严重;或者,原本是误码丢包但误判为拥塞丢包,然后错误的降低业务速率,结果导致网络带宽利用率下降。
发明内容
本发明实施例中提供了一种流量控制方法及***,以解决因为误判而对流量进行了错误的控制的问题。
本发明实施例公开了如下技术方案:
第一方面,提供一种流量控制***,所述***包括:
丢包原因确定模块,用于确定丢包原因;
流量控制模块,用于根据所述丢包原因确定模块所确定的丢包原因,进行流量控制;
纠错模块,用于获取所述流量控制模块进行流量控制后的流量控制结果,根据预期的流量控制结果与所获取的流量控制结果的对比,对丢包原因确定模块所确定的丢包原因进行修正。
结合第一方面,在第一方面的第一种可能的实现方式中:
所述丢包原因确定模块包括:
丢包原因获取子模块,用于分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包;
联合区分子模块,用于根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因;
所述纠错模块包括:
控制结果获取子模块,用于获取所述流量控制模块进行流量控制后的流量控制结果;
纠错结果获取子模块,用于根据预期的流量控制结果与所述控制结果获取子模块所获取的流量控制结果的对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包;
纠错结果输出子模块,用于将所述纠错结果获取子模块获取的纠错结果输出给所述丢包原因确定模块,以使所述丢包原因确定模块将所述纠错结果加入到所述至少两个判断结果中。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述丢包原因获取子模块用于:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述预设的挑选算法包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
结合第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述流量控制结果包含指定参数;
所述纠错结果获取子模块用于:
通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势;
在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
结合第一方面,在第一方面的第五种可能的实现方式中,所述流量控制模块用于:
当确定的丢包原因为拥塞丢包时,降低业务发送速率;
当确定的丢包原因为误码丢包时,提升业务发送速率。
第二方面,提供一种流量控制方法,所述方法包括:
确定丢包原因;
根据所确定的丢包原因,进行流量控制;
获取流量控制结果;
根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,以重新进行流量控制。
结合第二方面,在第二方面的第一种可能的实现方式中:
所述确定丢包原因,包括:
分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包;
根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因;
所述根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,包括:
根据所述对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包;
将所述纠错结果加入到所述至少两个判断结果中,重新执行根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因的步骤,以得到修正后的丢包原因。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述分别获取至少两个丢包原因的判断结果,包括:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
结合第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述预设的挑选算法包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
结合第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述流量控制结果包含指定参数;
所述根据所述对比,获取丢包原因的纠错结果,包括:
通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势;
在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
结合第二方面,在第二方面的第五种可能的实现方式中,所述根据所确定的丢包原因,进行流量控制,包括:
当确定的丢包原因为拥塞丢包时,降低业务发送速率;
当确定的丢包原因为误码丢包时,提升业务发送速率。
第三方面,提供一种流量控制***,所述***包括至少一个处理器、至少一个存储器;
所述存储器用于存储程序指令;
所述处理器用于调用存储器中存储的程序指令,执行如下操作:
确定丢包原因;
根据所确定的丢包原因,进行流量控制;
获取流量控制结果;
根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,以重新进行流量控制。
本发明的实施例所提供的技术方案可以包括以下有益效果:
在本发明实施例中建立了纠错机制:在初步进行了流量控制后,会基于流量控制结果进行纠错,即对先前确定的丢包原因进行修正,然后返回去重新进行流量控制。通过这种纠错机制,可以使丢包原因判断出错时能够得到及时纠正,提高丢包原因的判断准确性,从而可以实现对流量的准确控制。
此外,在本发明实施例中,在确定丢包原因时,会在多种丢包原因算法基础上做出决定,综合了各个算法的优点,从而尽可能的提高了判断的准确性并能适应更多的场景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种流量控制***的框图;
图2为本发明实施例提供的一种流量控制***的框图;
图3为本发明实施例中得到多个判断结果的示意图;
图4为本发明实施例中将纠错结果加入到先前多个判断结果中的示意图;
图5为本发明实施例所处的网络的示意图;
图6为本发明实施例中***运行时的示意图;
图7为本发明实施例提供的一种流量控制方法的流程图;
图8为本发明实施例提供的一种流量控制方法的流程图;
图9为本发明实施例提供的一种流量控制方法的流程图;
图10为本发明实施例提供的一种流量控制方法的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
图1为本发明实施例提供的一种流量控制***的框图。参见图1所示,该***可以包括:
丢包原因确定模块101,用于确定丢包原因。
在本实施例中,可以根据具体场景选取确定丢包原因的算法,例如可以基于监测到的时延与非拥塞时的时延差值变化趋势来确定丢包原因,等等,对于确定丢包原因的具体办法本实施例并不进行限制。
流量控制模块102,用于根据所述丢包原因确定模块所确定的丢包原因,进行流量控制。
流量控制模块基于输入的丢包原因对网络进行流量控制,作为示例,在本实施例或本发明其他某些实施例中,所述流量控制模块102具体可以用于:
当确定的丢包原因为拥塞丢包时,降低业务发送速率;
当确定的丢包原因为误码丢包时,提升业务发送速率。
纠错模块103,用于获取所述流量控制模块进行流量控制后的流量控制结果,根据预期的流量控制结果与所获取的流量控制结果的对比,对丢包原因确定模块所确定的丢包原因进行修正。
根据确定出的丢包原因对网络进行了相应的流量控制后,会带来一些结果,或者说是引起一些变化,例如一些网络参数的变化,这些结果或变化可以称为流量控制结果。流量控制结果可以具体体现为这些网络参数的变化情况。
假设确定的丢包原因是正确的,那么所带来的结果或引起的变化也应该达到预期,这些预期的结果或变化可称为预期的流量控制结果。
所以,如果先前丢包原因确定模块对丢包原因做了正确判断,那么当前获取的流量控制结果与预期的流量控制结果应该相符合;而如果对比后发现不符合,则预示着先前对丢包原因所做的判断很可能有误,所以应该反馈回去进行修正,从而形成闭环控制。
本实施例中建立了纠错机制:在初步进行了流量控制后,会基于流量控制结果进行纠错,即对先前确定的丢包原因进行修正,然后返回去重新进行流量控制。通过这种纠错机制,可以使丢包原因判断出错时能够得到及时纠正,提高丢包原因的判断准确性,从而可以实现对流量的准确控制。
图2为本发明实施例提供的一种流量控制***的框图。本实施例可基于上一实施例,是对上一实施例中丢包原因确定模块101及纠错模块103所作的进一步细化。
参见图2所示,所述丢包原因确定模块101可以包括:
丢包原因获取子模块1011,用于分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包。
在本实施例中,丢包原因获取子模块获取丢包原因时,并不会仅限于得到一个判断结果(拥塞丢包/误码丢包),而是通过各种不同的方式(例如使用各种不同的算法),得到至少两个判断结果。
作为示例,在本实施例或本发明其他某些实施例中,所述丢包原因获取子模块1011具体可以用于:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
单独使用一种丢包类型区分算法可能会存在误判的可能,或者在某种场景下无法识别丢包原因。因此在本实施例中,使用至少两种丢包类型区分算法,各自得到一个丢包原因的判断结果,然后在此基础上进行后续处理。
作为示例,预设的丢包类型区分算法可以包括:
基于丢包率和时延抖动的丢包类型区分算法,基于包间隔变化剧烈度的丢包类型区分算法,基于时延与非拥塞时的时延差值变化趋势丢包类型区分算法,等等。可以使用这些丢包类型区分算法分别进行计算,从而分别得到一个丢包原因的判断结果。所述预设的丢包类型区分算法可包含任意多种不同的丢包类型区分算法,用于满足不同场景需求,还可以根据具体场景而进行调整,可以增加、减少或更换,对此本实施例并不进行限制。
联合区分子模块1012,用于根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因。
作为示例可参见图3所示,在图3中,位于传输层的丢包原因获取子模块可以使用丢包类型区分算法1、丢包类型区分算法2...丢包类型区分算法n等丢包类型区分算法分别得到丢包原因的判断结果,然后均输入给联合区分子模块。联合区分子模块在得到的这n个判断结果基础上进行综合,最后在误码丢包和拥塞丢包之中确定出一种作为最终的丢包原因判断结果,输入给业务层的流量控制模块。
对于联合区分子模块如何对输入进来的各个判断结果进行综合,或者说是根据什么样的挑选算法对输入进来的各个判断结果进行挑选,本实施例并不进行限制。作为示例,在本实施例或本发明其他某些实施例中,所述预设的挑选算法可以包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
继续参见图2所示,所述纠错模块103可以包括:
控制结果获取子模块1031,用于获取所述流量控制模块进行流量控制后的流量控制结果。
例如,所述流量控制结果可以包含指定参数;获取所述流量控制模块进行流量控制后的流量控制结果即获取当前这些指定参数的值。
纠错结果获取子模块1032,用于根据预期的流量控制结果与所述控制结果获取子模块1031所获取的流量控制结果的对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包。
纠错结果本质上也是丢包原因的判断结果,只不过与其他判断结果的生成方式不同,其他判断结果都是相应的算法算出的,而纠错结果则是通过当前获取的流量控制结果与预期的流量控制结果的对比而得到的。
在本实施例或本发明其他某些实施例中,所述纠错结果获取子模块1032具体可以用于:
通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势;
在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
流量控制模块从丢包原因确定模块那里获得了丢包原因的判断结果后,可以采取相应的流量控制措施,并将所采取的措施及预期的相关网络参数的变化趋势通知给纠错模块。而后,纠错模块可以通过对网络的监测,判断这些网络参数(如时延、抖动、丢包率等)的变化趋势是否符合该预期,进而判断流量控制模块是否做出了正确的控制,也即丢包原因确定模块先前确定的丢包原因是否准确。
举例来讲:
当流量控制模块降低业务层速率后,如果是拥塞丢包,则预期结果应为:丢包率或者时延的变化趋势应该是下降的;而如果是误码丢包,则预期结果应为:丢包率或者时延的变化趋势应该是基本不变的或上升的;
反之,若流量控制模块提升业务层速率后,如果是拥塞丢包,则预期结果应为:丢包率或者时延的变化趋势应该是上升的;而如果是误码丢包,则预期结果应为:丢包率或者时延的变化趋势应该是基本不变的或下降的。
如果纠错模块通过监测相关的网络参数发现这些网络参数的变化没有符合预期,则预示着出现了判断错误。例如,丢包原因确定模块认为出现了误码丢包,于是业务层速率被提高,但是经监测发现丢包率不降返升,与期望不符,则预设着先前的判断有误,判断结果可能为应拥塞丢包,纠错模块会将该判断结果作为纠错结果及时反馈给丢包原因确定模块。
纠错结果输出子模块1033,用于将所述纠错结果获取子模块1302获取的纠错结果输出给所述丢包原因确定模块,以使所述丢包原因确定模块将所述纠错结果加入到所述至少两个判断结果中。
作为示例可参见图4所示,纠错模块给出的纠错结果会输送给丢包原因确定模块中的联合区分子模块,即作为第n+1个判断结果与先前的n个判断结果一起重新进行综合,然后将确定出的丢包原因重新上报给流量控制模块,如此循环。
本实施例中建立了纠错机制:在初步进行了流量控制后,会基于流量控制结果进行纠错,即对先前确定的丢包原因进行修正,然后返回去重新进行流量控制。通过这种纠错机制,可以使丢包原因判断出错时能够得到及时纠正,提高丢包原因的判断准确性,从而可以实现对流量的准确控制。
另外,在本实施例中,在确定丢包原因时,会在多种丢包原因算法基础上做出决定,综合了各个算法的优点,从而尽可能的提高了判断的准确性并能适应更多的场景。
接下来,对上述实施例中各模块的部署情况进行一下说明:
图5为本发明实施例所处的网络的示意图,该网络涉及四部分:
节点1:可以作为源节点,发送数据包;
节点2:可以作为目的节点,接收数据包。
传输网络:用于传输数据包的传输网络。
服务器:用于对本网进行维护。该服务器部署位置不作限制,例如可以有以下五种部署形式:i)独立部署;ii)部署在源节点;iii)部署在目的传输节点;iv)部署在传输网络;v)部署在本网的其它节点上。
在本实施例中,对各模块(包括子模块)的部署位置也不作任何限制。作为示例,可以有以下几种部署形式:
a)各模块均部署在节点1;
b)各模块均部署在节点2;
c)各模块均部署在传输网络;
d)各模块均部署在服务器;
e)丢包原因确定模块部署在节点1,纠错模块和流量控制模块部署在节点2;
f)丢包原因确定模块部署在节点1,纠错模块部署在节点2,流量控制模块部署在服务器。
下面进一步以上述第f)种部署为例,对本发明做进一步说明。
图6为本发明实施例中***运行时的示意图。
1)部署在节点1的丢包原因获取子模块通过外部接口从外部QoS检测***获取时延、抖动、丢包率、业务发送速率等QoS信息,以供各丢包类型区分算法使用。
2)丢包原因获取子模块将各丢包类型区分算法得到的丢包原因判断结果通过Itf1接口上报给同样部署在节点1的联合区分子模块。
3)联合区分子模块采用预设的挑选算法对丢包原因的各种判断结果各进行综合挑选,确定出丢包原因(是拥塞丢包还是误码丢包)。然后,通过Itf2接口将确定出的丢包原因上报给部署在服务器的流量控制模块。
4)流量控制模块根据收到的丢包原因判断结果采取相应的流量控制措施,如:收到的判断结果为拥塞丢包时,降低业务发送速率;收到的判断结果为误码丢包时,提升业务发送速率。流量控制模块还会通过Itf3接口将所采取的流量控制措施及预期的相关网络参数的变化趋势传送给部署在节点2的纠错模块。
5)纠错模块通过外部接口从外部QoS检测***获取当前的QoS参数,并根据流量控制模块采取控制措施后传输网络的QoS参数的变化趋势是否符合预期,来对丢包类型进行纠错,得到纠错结果(拥塞丢包/误码丢包)。然后,通过Itf4接口将该纠错结果传送给联合区分子模块。
6)联合区分子模块将纠错模块发来的纠错结果,以及丢包原因获取子模块上报的各个判断结果一起重新进行综合,重新确定丢包原因,然后上报给流量控制模块,从而循环下去,形成闭环控制。
另外,下面再描述一下本***的各接口情况:
Itf1:丢包原因获取子模块与联合区分子模块之间接口。
丢包原因获取子模块将本模块内各个丢包类型区分算法的判断结果通过本接口传送给联合区分子模块。本接口的接口信息包含各算法对于丢包类型的判断结果:判断结果1、判断结果2,…,判断结果n。判断结果i(1≤i≤n)包含有丢包类型信息(拥塞丢包/误码丢包),但不限于仅包含该丢包类型信息。
Itf2:联合区分子模块与流量控制模块之间的接口。
联合区分子模块将确定出的丢包原因通过本接口传送给流量控制模块。本接口的接口信息包含丢包类型信息(拥塞丢包/误码丢包),但不限于仅包含该丢包类型信息。
Itf3:流量控制模块与纠错模块之间的接口。
流量控制模块将纠错模块进行纠错所需要的一些信息(例如所采取的流量控制措施及预期的相关网络参数的变化趋势)通过本接口传送给纠错模块。本接口的接口信息在本发明中不作限制。
Itf4:纠错模块与联合区分子模块之间的接口。
纠错模块将纠错结果通过本接口传送给联合区分子模块。本接口的接口信息包含丢包类型信息(拥塞丢包/误码丢包),但不限于仅包含该丢包类型信息。
图7为本发明实施例提供的一种流量控制方法的流程图。本实施例可与上述***实施例相对应。参见图7所示,该方法可以包括:
步骤S701,确定丢包原因。
步骤S702,根据所确定的丢包原因,进行流量控制。
其中在一种场景下,所述根据所确定的丢包原因,进行流量控制,可以包括:
当确定的丢包原因为拥塞丢包时,降低业务发送速率;
当确定的丢包原因为误码丢包时,提升业务发送速率。
步骤S703,获取流量控制结果。
步骤S704,根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,以重新进行流量控制。
参见图8所示,在本实施例或本发明其他某些实施例中,所述确定丢包原因,可以包括:
步骤S801,分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包。
在具体实施时,所述分别获取至少两个丢包原因的判断结果,可以包括:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
步骤S802,根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因。
作为示例,在一种场景下,所述预设的挑选算法可以包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
参见图9所示,在本实施例或本发明其他某些实施例中,所述根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,可以包括:
步骤S901,根据所述对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包。
步骤S902,将所述纠错结果加入到所述至少两个判断结果中,重新执行根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因的步骤,以得到修正后的丢包原因。
作为示例,所述流量控制结果可以包含指定参数,参见图10所示,所述根据所述对比,获取丢包原因的纠错结果,可以包括:
步骤S1001,通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势。
步骤S1002,在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
本实施例中建立了纠错机制:在初步进行了流量控制后,会基于流量控制结果进行纠错,即对先前确定的丢包原因进行修正,然后返回去重新进行流量控制。通过这种纠错机制,可以使丢包原因判断出错时能够得到及时纠正,提高丢包原因的判断准确性,从而可以实现对流量的准确控制。
此外,本实施例中,在确定丢包原因时,会在多种丢包原因算法基础上做出决定,综合了各个算法的优点,从而尽可能的提高了判断的准确性并能适应更多的场景。
关于上述方法实施例,其各步骤所涉及的具体内容已经在有关***实施例中进行了详细描述,此处不再做详细阐述说明。
本发明实施例还公开了一种流量控制***。本实施例与上述***及方法实施例相对应。在本实施例中,所述***包括至少一个处理器、至少一个存储器;
所述存储器用于存储程序指令;
所述处理器用于调用存储器中存储的程序指令,执行如下操作:
确定丢包原因;
根据所确定的丢包原因,进行流量控制;
获取流量控制结果;
根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,以重新进行流量控制。
需要说明的是,通过上文对各模块的部署情况所作的说明可知,本实施例中的处理器或存储器可以有两个甚至更多,此时这些处理器或存储器可以分布在相同的节点上或分布在不同的节点上,共同分担上述至少一个处理器或至少一个存储器所起的作用。
在本实施例或本发明其他某些实施例中:
当所述至少一个处理器用于确定丢包原因时,具体包括:所述至少一个处理器:
分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包;
根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因;
相应的,当所述至少一个处理器用于根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正时,用于:
根据所述对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包;
将所述纠错结果加入到所述至少两个判断结果中,重新执行根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因的步骤,以得到修正后的丢包原因。
在本实施例或本发明其他某些实施例中,当所述至少一个处理器用于分别获取至少两个丢包原因的判断结果时,具体包括:所述至少一个处理器:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
所述预设的挑选算法包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
在本实施例或本发明其他某些实施例中,所述流量控制结果包含指定参数,当所述至少一个处理器用于根据所述对比,获取丢包原因的纠错结果时,用于:
通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势;
在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
本实施例中建立了纠错机制:在初步进行了流量控制后,会基于流量控制结果进行纠错,即对先前确定的丢包原因进行修正,然后返回去重新进行流量控制。通过这种纠错机制,可以使丢包原因判断出错时能够得到及时纠正,提高丢包原因的判断准确性,从而可以实现对流量的准确控制。
此外,本实施例中,在确定丢包原因时,会在多种丢包原因算法基础上做出决定,综合了各个算法的优点,从而尽可能的提高了判断的准确性并能适应更多的场景。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1.一种流量控制***,其特征在于,所述***包括:
丢包原因确定模块,用于确定丢包原因;
流量控制模块,用于根据所述丢包原因确定模块所确定的丢包原因,进行流量控制;
纠错模块,用于获取所述流量控制模块进行流量控制后的流量控制结果,根据预期的流量控制结果与所获取的流量控制结果的对比,对丢包原因确定模块所确定的丢包原因进行修正,其中,所述流量控制结果包含指定参数;
所述纠错模块对比预期的流量控制结果与所获取的流量控制结果,具体为通过对网络的监测,判断所述指定参数的变化趋势是否符合预期,进行判断所述流量控制模块是否作出正确的流量控制。
2.根据权利要求1所述的***,其特征在于:
所述丢包原因确定模块包括:
丢包原因获取子模块,用于分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包;
联合区分子模块,用于根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因;
所述纠错模块包括:
控制结果获取子模块,用于获取所述流量控制模块进行流量控制后的流量控制结果;
纠错结果获取子模块,用于根据预期的流量控制结果与所述控制结果获取子模块所获取的流量控制结果的对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包;
纠错结果输出子模块,用于将所述纠错结果获取子模块获取的纠错结果输出给所述丢包原因确定模块,以使所述丢包原因确定模块将所述纠错结果加入到所述至少两个判断结果中。
3.根据权利要求2所述的***,其特征在于,所述丢包原因获取子模块用于:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
4.根据权利要求2所述的***,其特征在于,所述预设的挑选算法包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
5.根据权利要求2所述的***,其特征在于,
所述纠错结果获取子模块用于:
通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势;
在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
6.根据权利要求1所述的***,其特征在于,所述流量控制模块用于:
当确定的丢包原因为拥塞丢包时,降低业务发送速率;
当确定的丢包原因为误码丢包时,提升业务发送速率。
7.一种流量控制方法,其特征在于,所述方法包括:
确定丢包原因;
根据所确定的丢包原因,进行流量控制;
获取流量控制结果;
根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,以重新进行流量控制,其中,所述流量控制结果包含指定参数;
所述根据预期的流量控制结果与所获取的流量控制结果的对比,包括:
通过对网络的监测,判断所述指定参数的变化趋势是否符合预期,以判断所述流量控制模块是否作出正确的流量控制。
8.根据权利要求7所述的方法,其特征在于:
所述确定丢包原因,包括:
分别获取至少两个丢包原因的判断结果,所述丢包原因的判断结果为误码丢包或拥塞丢包;
根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因;
所述根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,包括:
根据所述对比,获取丢包原因的纠错结果,所述纠错结果为误码丢包或拥塞丢包;
将所述纠错结果加入到所述至少两个判断结果中,重新执行根据所述至少两个判断结果及预设的挑选算法,在误码丢包和拥塞丢包之中选出一种作为丢包原因的步骤,以得到修正后的丢包原因。
9.根据权利要求8所述的方法,其特征在于,所述分别获取至少两个丢包原因的判断结果,包括:
根据预设的至少两种丢包类型区分算法分别获取一个丢包原因的判断结果。
10.根据权利要求8所述的方法,其特征在于,所述预设的挑选算法包括:
若所述至少两个判断结果中有大于一半的判断结果为拥塞丢包,则确定丢包原因为拥塞丢包,否则确定丢包原因为误码丢包。
11.根据权利要求8所述的方法,其特征在于,
所述根据所述对比,获取丢包原因的纠错结果,包括:
通过对比所述指定参数的获取值与所述指定参数的预期值,获取所述指定参数的变化趋势;
在误码丢包和拥塞丢包之中选出与所述变化趋势相符合的作为所述纠错结果。
12.根据权利要求7所述的方法,其特征在于,所述根据所确定的丢包原因,进行流量控制,包括:
当确定的丢包原因为拥塞丢包时,降低业务发送速率;
当确定的丢包原因为误码丢包时,提升业务发送速率。
13.一种流量控制***,其特征在于,所述***包括至少一个处理器、至少一个存储器;
所述存储器用于存储程序指令;
所述处理器用于调用存储器中存储的程序指令,执行如下操作:
确定丢包原因;
根据所确定的丢包原因,进行流量控制;
获取流量控制结果;
根据预期的流量控制结果与所获取的流量控制结果的对比,对所确定的丢包原因进行修正,以重新进行流量控制,其中,所述流量控制结果包含指定参数;
所述根据预期的流量控制结果与所获取的流量控制结果的对比,包括:
通过对网络的监测,判断所述指定参数的变化趋势是否符合预期,以判断所述流量控制模块是否作出正确的流量控制。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/087787 WO2016049809A1 (zh) | 2014-09-29 | 2014-09-29 | 一种流量控制方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106170955A CN106170955A (zh) | 2016-11-30 |
CN106170955B true CN106170955B (zh) | 2019-10-25 |
Family
ID=55629236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480016364.7A Active CN106170955B (zh) | 2014-09-29 | 2014-09-29 | 一种流量控制方法及*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US20170201439A1 (zh) |
EP (1) | EP3190749B1 (zh) |
CN (1) | CN106170955B (zh) |
WO (1) | WO2016049809A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10178008B2 (en) * | 2014-11-14 | 2019-01-08 | Bigleaf Networks, Inc. | Circuit-aware load balancing with dynamic quality of service |
US10462078B2 (en) * | 2017-11-17 | 2019-10-29 | Whatsapp Inc. | Using signals extracted from a VOIP data stream to distinguish between network congestion and link losses |
CN109688064B (zh) * | 2018-12-19 | 2022-11-11 | 北京达佳互联信息技术有限公司 | 数据传输方法、装置、电子设备和存储介质 |
CN110677355A (zh) * | 2019-10-08 | 2020-01-10 | 香港乐蜜有限公司 | 一种丢包应对方法、装置、电子设备及存储介质 |
CN112953847B (zh) * | 2021-01-27 | 2022-11-11 | 北京字跳网络技术有限公司 | 网络的拥塞控制方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002019654A3 (en) * | 2000-08-31 | 2002-08-01 | Univ California | Method for improving tcp performance over wireless links |
CN101557607A (zh) * | 2009-05-15 | 2009-10-14 | 东南大学 | 无线传感器网络中汇聚节点的传输控制方法 |
CN101645765A (zh) * | 2009-08-03 | 2010-02-10 | 四川大学 | 面向高误码率、长时延特性网络的可靠传输加速方法 |
CN101938400A (zh) * | 2009-06-30 | 2011-01-05 | 华为技术有限公司 | 网络拥塞控制的方法和装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7184401B2 (en) * | 2001-02-05 | 2007-02-27 | Interdigital Technology Corporation | Link-aware transmission control protocol |
JP2004112113A (ja) * | 2002-09-13 | 2004-04-08 | Matsushita Electric Ind Co Ltd | リアルタイム通信の適応制御方法、受信報告パケットの連続消失に対する対策方法、受信報告パケットの送出間隔の動的決定装置、リアルタイム通信の適応制御装置、データ受信装置およびデータ配信装置 |
US7177272B2 (en) * | 2003-06-25 | 2007-02-13 | Nokia Corporation | System and method for optimizing link throughput in response to non-congestion-related packet loss |
KR100843073B1 (ko) * | 2005-06-10 | 2008-07-03 | 삼성전자주식회사 | 오류 정정 패킷을 이용한 전송률 제어 방법 및 이를 이용한통신 장치 |
US8670309B2 (en) * | 2005-09-30 | 2014-03-11 | Alcatel Lucent | Method and apparatus for preventing activation of a congestion control process |
JP4654926B2 (ja) * | 2006-02-01 | 2011-03-23 | 日本電気株式会社 | 通信システム、通信装置及びそれらに用いる輻輳制御方法並びにそのプログラム |
-
2014
- 2014-09-29 EP EP14903004.1A patent/EP3190749B1/en active Active
- 2014-09-29 CN CN201480016364.7A patent/CN106170955B/zh active Active
- 2014-09-29 WO PCT/CN2014/087787 patent/WO2016049809A1/zh active Application Filing
-
2017
- 2017-03-28 US US15/472,170 patent/US20170201439A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002019654A3 (en) * | 2000-08-31 | 2002-08-01 | Univ California | Method for improving tcp performance over wireless links |
CN101557607A (zh) * | 2009-05-15 | 2009-10-14 | 东南大学 | 无线传感器网络中汇聚节点的传输控制方法 |
CN101938400A (zh) * | 2009-06-30 | 2011-01-05 | 华为技术有限公司 | 网络拥塞控制的方法和装置 |
CN101645765A (zh) * | 2009-08-03 | 2010-02-10 | 四川大学 | 面向高误码率、长时延特性网络的可靠传输加速方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3190749A4 (en) | 2017-10-11 |
EP3190749B1 (en) | 2019-11-06 |
US20170201439A1 (en) | 2017-07-13 |
WO2016049809A1 (zh) | 2016-04-07 |
EP3190749A1 (en) | 2017-07-12 |
CN106170955A (zh) | 2016-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106170955B (zh) | 一种流量控制方法及*** | |
CN107466079B (zh) | 自动中继切换方法及装置 | |
US9853906B2 (en) | Network prioritization based on node-level attributes | |
US10972392B2 (en) | Path switching | |
CN106789264B (zh) | 一种链路聚合组通道快速切换的方法和装置 | |
CN112866042B (zh) | 网络质量检测方法、装置、计算机设备和计算机可读介质 | |
CN110149220A (zh) | 一种管理数据传输通道的方法及装置 | |
CN113923125B (zh) | 工业异构网络中多业务流融合通信的容限分析方法及装置 | |
CN106878164A (zh) | 一种报文传输方法和装置 | |
CN108476175B (zh) | 使用对偶变量的传送sdn流量工程方法与*** | |
CN105743801A (zh) | 一种堆叠***的流量转发的方法及装置 | |
CN106656791A (zh) | 一种设备状态切换的方法、设备及*** | |
CN104852828A (zh) | 一种网络时延检测方法,装置及*** | |
CN105991458A (zh) | 一种负载均衡的方法及负载均衡装置 | |
CN109660624A (zh) | 内容分发网络资源的规划方法、服务器及存储介质 | |
EP3048778B1 (en) | Techniques for synchronized execution of a command at network fabric nodes | |
EP3742682A1 (en) | Peer-to-peer rerouting method and device | |
CN105763463A (zh) | 一种链路探测报文的传输方法和装置 | |
CN107733681B (zh) | 一种调度方案配置方法和装置 | |
CN105765909A (zh) | 一种链路切换方法及装置 | |
CN105282025A (zh) | 一种确定端到端路由的方法及装置 | |
US10250506B2 (en) | Link control method and apparatus | |
EP2693706A1 (en) | Method and device for implementing multi-protection overlapped protection groups | |
CN102821423A (zh) | 报文接收方法及装置 | |
US20210288899A1 (en) | Method and device for detecting network reliability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |