一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种拥塞控制方法及装置

2022-08-11 04:34:25 来源:中国专利 TAG:


1.本技术涉及计算机领域,尤其涉及一种拥塞控制方法及装置。该方法实现了在边缘服务器对各链路进行队列控制,以达到合理清理队列的目的,进而保证所有数据发送的公平性和整个拥塞严重网络的通畅性,从而解决了整个网络的严重拥塞问题。


背景技术:

2.随着移动互联网的发展,云计算与边缘计算也相继提出,云计算因为性能强大,数据量充足等特点大大减少了终端计算,存储等压力,而边缘计算因专一性,近终端性使得服务响应速度更快。但由于用户数量的增加以及终端场景的复杂性,因用户的移动以及需求的增长造成用户与云服务器(中心云计算服务器和边缘计算服务器)之间的通信延时增加,最终导致用户服务质量(quality of service,qos)下降。
3.目前,网络的吞吐量(分组数/秒)与通信子网负荷(即,通信子网中正在传输的分组数)有着密切的关系。当通信子网负荷比较小时,网络的吞吐量随网络负荷(每个节点中分组的平均数)的增加而线性增加;当网络负荷增加到某一值后,网络吞吐量反而下降,则表征网络中出现了拥塞现象。在一个出现拥塞现象的网络中,到达某个节点的分组将会遇到无缓冲区可用的情况,从而使这些分组不得不由前一节点重传,或者需要由源节点/源端系统重传。当拥塞比较严重时,通信子网中相当多的传输能力和节点缓冲器都用于这种无谓的重传,从而使通信子网的有效吞吐量下降,由此引起恶性循环,使通信子网的局部甚至全部处于死锁状态,最终导致网络有效吞吐量接近为零。其中,造成用拥塞的原因有:1)由于多条流入线路有分组到达,并需要同一输出线路,此时,如果路由器没有足够的内存来存放所有这些分组,那么有的分组就会丢失;2)又由于路由器的慢带处理器的缘故,以至于难以完成必要的处理工作,如缓冲区排队、更新路由表等。
4.现有的传输控制协议(transmission control protoco,tcp)拥塞控制包括两个重要的控制方法,分别为:流量控制、拥塞控制。其中,在tcp协议中通过滑动窗口来进行流量控制,以通过控制发送方的发送速度从而使接受者来得及接收并处理。而拥塞控制是作用于网络,它是防止过多的包被发送到网络中,避免出现网络负载过大,网络拥塞的情况。
5.现有的在拥塞控制上有四种控制算法:慢启动,拥塞避免,拥塞发生时和快速恢复,如图1所示,为现有技术中的一种tcp状态机转换框图。其中,所谓慢启动,也就是tcp连接刚建立,一点一点地提速,试探一下网络的承受能力,以免直接扰乱了网络通道的秩序,具体过程包括如下:首先,初始化拥塞窗口cwnd大小为1,即可以传一个最大报文长度(maximum segmnet size,mss)大小的数据;其次,每当收到一个确认字符(acknowledge character,ack),cwnd大小加一,呈线性上升;接着,每当过了一个往返延迟时间(round-trip-time,rtt),cwnd大小直接翻倍,乘以2,呈指数上升;最后,还有一个慢启动阈值ssthresh(slow start threshold),是一个指数上升的上限,当cwnd》=ssthresh时,就会进入“拥塞避免”阶段。当拥塞窗口cwnd于等于慢启动阈值ssthresh后,就进入拥塞避免,具体的拥塞避免过程如下:当收到一个确认字符ack,则cwnd=cwnd 1/cwnd;每当过了一个往
返延迟时间rtt,cwnd大小加一,当过了慢启动阈值后,拥塞避免算法可以避免窗口增长过快导致窗口拥塞,集体表现为缓慢的增加调整到网络的最佳值。当拥塞发生时,tcp拥塞控制默认认为网络丢包是由于网络拥塞导致的,所以一般的tcp拥塞控制算法以丢包为网络进入拥塞状态的信号。对于丢包有两种判定方式,一种是超时重传(retransmission timeout,rto),另一个是收到三个重复确认字符ack。超时重传是tcp协议保证数据可靠性的一个重要机制,其原理是在发送一个数据以后就开启一个计时器,在一定时间内,如果没有得到发送数据报的ack报文,那么就重新发送数据,直到发送成功为止;如果发送端接收到3个以上的重复ack,tcp就意识到数据发生丢失,需要重传,这个机制不需要等到重传定时器超时,所以叫做快速重传,而快速重传后没有使用慢启动算法,而是采用拥塞避免算法,所以这又叫做快速恢复算法。快速恢复算法中,最为早期的为tcp拥塞控制算法:tcp tahoe算法就只使用上述处理办法,但是由于一丢包就一切重来,导致cwnd又重置为1,十分不利于网络数据的稳定传递;所以,对tcp拥塞控制算法:tcp tahoe算法进行了改进,得到优化后的tcp拥塞控制算法:tcp reno算法,当收到三个重复确认字符ack时,tcp开启快速重传fast retransmit算法,而不用等到rto超时再进行重传。
6.随着一定范围内用户数量的增加,边缘服务器的压力倍增,当用户越多,产生需要处理的数据也就越大,相应的通信延迟增加,当拥塞的持续增加各分组被填满时,如当前没有很好的控制会经常出现死锁状态,导致部分网络未响应,从而导致整个网络的严重拥塞。


技术实现要素:

7.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
8.为此,本发明的第一个目的在于提出一种拥塞控制方法,以实现边缘服务器中出现的整个网络的严重拥塞的问题。
9.本发明的第二个目的在于提出一种拥塞控制装置。
10.本发明的第三个目的在于提出了一种拥塞控制的设备。
11.本发明的第四个目的在于提出一种计算机设备。
12.本发明的第五个目的在于提出一种非易失性存储介质。
13.为达上述目的,本发明第一方面实施例提出了一种方法,包括:
14.获取数据传输网络中的各链路的优先级标记、带宽占比及所述各链路中的下一个数据包出现的下一条件概率;
15.基于所述各链路的所述优先级标记和所述带宽占比及所述下一条件概率,确定所述各链路的丢包指数;
16.将所述丢包指数小于预设的丢包指数阈值时的链路中对应的数据包进行丢包处理。
17.本发明实施例的方法,解决现有技术中的技术问题。
18.可选地,在本技术的一个实施例中,所述确定数据传输网络中的各链路中的下一个数据包出现的下一条件概率,包括:
19.通过各链路中的确认字符反馈信息,确定各所述链路的拥塞信息,其中,所述确认字符反馈信息包括所述链路中的数据包的显式拥塞通知标记;
20.若所述链路的拥塞信息为拥塞状态,则基于所述链路中的当前数据包的当前条件
概率和构造的平均概率,得到所述链路中的下一数据包出现的所述下一条件概率。
21.可选地,在本技术的一个实施例中,所述确定数据传输网络中的各链路的优先级标记,包括:
22.根据所述数据传输网络中的各链路中的数据包对所述链路进行优先级划分,得到各所述链路的优先级标记。
23.可选地,在本技术的一个实施例中,所述确定数据传输网络中的各链路的带宽占比,包括:
24.获取所述数据传输网络中的各链路的传输流量;
25.将各所述链路的传输流量输入至环中的分布式虚拟时间调度算法中进行计算,得到各所述链路的带宽占比。
26.可选地,在本技术的一个实施例中,所述基于所述链路的所述优先级标记和所述带宽占比及所述下一条件概率,确定所述链路的丢包指数,包括:
27.获取所述链路对应预置的调参信息,所述预置的调参信息包括调参参数及其对应的参数值;
28.根据所述链路的所述优先级标记、所述带宽占比、所述下一条件概率及所述链路对应预置的调参信息,计算并得到所述链路的丢包指数。
29.为达上述目的,本发明第二方面实施例提出了一种拥塞控制装置,包括:
30.获取模块,用于获取数据传输网络中的各链路的优先级标记、带宽占比及各所述链路中的下一个数据包出现的下一条件概率;
31.确定模块,用于基于所述链路的所述优先级标记和所述带宽占比及所述下一条件概率,确定所述链路的丢包指数;
32.丢包模块,用于将所述丢包指数小于预设的丢包指数阈值时的链路中对应的数据包进行丢包处理。
33.为达上述目的,本发明第三方面实施例提出了一种拥塞控制的设备,包括:一个或多个处理器;
34.计算机可读介质,用于存储一个或多个计算机可读指令,
35.当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现本技术第一方面实施例所述的一种拥塞控制的方法。
36.为了实现上述目的,本发明第四方面实施例提出了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现本技术第一方面实施例所述的一种拥塞控制的方法。
37.为了实现上述目的,本发明第五方面实施例提出了非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,实现本技术第一方面实施例所述的一种拥塞控制的方法。
38.本发明实施例的利用一种拥塞控制方法及装置,实现了在边缘服务器对各链路进行队列控制,以达到合理清理队列的目的,进而保证所有数据发送的公平性和整个拥塞严重网络的通畅性,从而解决了整个网络的严重拥塞问题。本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
39.本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
40.图1为本发明实施例所提供的一种tcp状态机转换框图;
41.图2为本发明实施例所提供的一种用于拥塞控制的整体的传输流程示意图;
42.图3为本发明实施例所提供的一种拥塞控制方法中随着数据传输网络中的用户增多后的各链路模型的结构示意图;
43.图4为本发明实施例所提供的一种拥塞控制方法的流程示意图;
44.图5为本发明实施例所提供的一种拥塞控制方法中构造的链路的平均概率的置信区间的示意图;
45.图6为本发明实施例所提供的一种拥塞控制装置的结构示意图。
具体实施方式
46.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
47.下面参考附图描述本发明实施例的一种拥塞控制方法和装置。
48.如图2所示,本技术一个方面的实施例中的提供的一种用于拥塞控制的整体的传输流程示意图,具体包括两个部分,分别为:基于偏差-积分-微分(proportion-integral-doifferential,pid)发包率控制的源数据控制单元和由边缘服务器控制的队列平衡单元,下面主要以由边缘服务器控制的队列平衡单元进行详细解释。
49.如图3所示,在整个数据传输网络中,随着用户数量的增多,网络中的链路也增多,路由器压力倍增,当路由器buffer充满时,或者路由器吞吐量下降到一个很低的水平时,根据主队列管理(active queue management,aqm)的原则,一些频率不高,优先级较低或者能力不强的链路就会很大程度上出现较长时间的无响应,即:数据包到达路由器被aqm策略丢弃。
50.以及,针对以上问题,如图4所示,本技术一个方面的实施例提供了一种拥塞控制方法的流程示意图,应用于云边协同的网络系统中的边缘服务器端,来对整个网络系统中的严重网络拥塞进行控制。所述方法包括步骤s1、步骤s2和步骤s3,其中,具体步骤如下:
51.步骤s1,获取数据传输网络中的各链路的优先级标记、带宽占比及各链路中的下一个数据包出现的下一条件概率;
52.在本发明的一个实施例之中,确定数据传输网络中的各链路中的下一个数据包出现的下一条件概率,包括:
53.通过各链路中的确认字符反馈信息,确定各链路的拥塞信息,其中,确认字符反馈信息包括链路中的数据包的显式拥塞通知标记;
54.若链路的拥塞信息为拥塞状态,则基于链路中的当前数据包的当前条件概率和构造的平均概率,得到链路中的下一数据包出现的下一条件概率。
55.示例的,在本公开的一个实施例之中,在数据传输网络中的源数据在发送之初,就对各链路中的数据包进行了显式拥塞通知标记(explicit congestion notification,
ecn),使得通过确认字符(acknowledge character,ack)的反馈就可以了解到对应的链路中的拥塞信息,即通过某一个链路中的确认字符反馈信息就可以确定该链路在网络中的拥塞信息;当网络状态良好时,计算链路中的下一数据包出现的条件概率p
next
,并构造平均概率及其估计参数,随着数据的增多,参数就会越精准,当链路中的确认字符反馈信息中出现拥塞反馈时,链路的拥塞信息为拥塞状态,可以将构造的平均概率p(σ)做置信区间如图5所示,并通过链路中的当前数据包的当前条件概率p
条件
和构造的平均概率p(σ),得到链路中的下一数据包出现的下一条件概率p
next
;其中,条件概率的计算公式如下:
[0056][0057]
通过链路中的当前数据包的当前条件概率p
条件
和构造的平均概率p(σ),得到链路中的下一数据包出现的下一条件概率p
next
的计算公式如下:
[0058]
p
next

条件
*p(σ)
[0059]
实现了对数据传输网络中的各链路中的下一数据包出现时对应的下一条件概率p
next
的计算和确定,以便在边缘服务器中能够通过各链路中的下一数据包出现的所述下一条件概率p
next
进行对应链路的丢包指数的计算。
[0060]
示例的,在本发明的一个实施例之中,根据数据传输网络中的各链路中的数据包的标志flag来对对应的链路的数据包做优先级划分(比如优先级划分为0~100%),从而得到各链路的优先级标记pf;比如,当处于低级别优先级的数据包的划分权值为50%以下,如视屏流中的非关键帧,音频中在脉冲编码调制(pulse code modulation,pcm)的基础上对数据包做低级别的优先级标记,如30%,最后将各个链路优先级标记及对应的优先级权值上报至数据传输网络中,从而实现对各个链路中的数据包的优先级划分,以便在边缘服务器中能够通过各链路的优先级标记pf进行对应链路的丢包指数的计算。
[0061]
在本发明的一个实施例之中,确定数据传输网络中的各链路的优先级标记,包括:
[0062]
根据数据传输网络中的各链路中的数据包对链路进行优先级划分,得到各链路的优先级标记。
[0063]
在本发明的一个实施例之中,确定数据传输网络中的各链路的带宽占比,包括:
[0064]
获取数据传输网络中的各链路的传输流量;
[0065]
将各链路的传输流量输入至环中的分布式虚拟时间调度算法中进行计算,得到各链路的带宽占比。
[0066]
需要说明的是,所述环中的分布式虚拟时间调度算法(distributed virtual-time schedulingin rings,dvsr)是基于rias(ring ingress aggregated with spatial reuse)公平模型设计的一种新的弹性分组换(resilient racket ping,rpr)带宽分配算法,其中,所述rias公平模型由两个关键部分组成,第一部分定义了ia(ingress-aggregate)流在链路上的公平性需求流量粒度,第二部分确保在第一部分限制下的最大化空间复用,即ia流可以使用那些由于各种原因导致其他流暂时无法使用的带宽。
[0067]
示例的,在本公开的一个实施例之中,在计算数据传输网络中的各链路的带宽占比时,先获取数据传输网络中的各链路的传输流量,然后再将各个链路的传输流量实时输入到环中的分布式虚拟时间调度算法dvsr中进行计算,得到通过环中的分布式虚拟时间调
度算法dvsr计算出来的各链路的带宽占比pw,以便在边缘服务器中能够通过各链路的带宽占比pw进行对应链路的丢包指数的计算。
[0068]
步骤s2,基于各链路的优先级标记和所述带宽占比及下一条件概率,确定各链路的丢包指数;
[0069]
在本发明的一个实施例之中,基于链路的优先级标记和带宽占比及下一条件概率,确定链路的丢包指数,包括:
[0070]
获取链路对应预置的调参信息,预置的调参信息包括调参参数及其对应的参数值;
[0071]
根据链路的优先级标记、带宽占比、下一条件概率及链路对应预置的调参信息,计算并得到链路的丢包指数。
[0072]
示例的,在本公开的一个实施例之中,当确定是否对数据传输网络中的链路中的数据包进行丢弃时,先获取链路对应预置的调参信息,该预置的调参信息包括调参参数,比如参数a、参数b及参数c等,并获取确定的各个调参参数对应的参数值,比如参数a对应的参数值为链路中的下一数据包出现的下一条件概率p
next
,参数b对应的参数值为链路的优先级标记pf,及参数c对应的参数值为链路的带宽占比pw;然后根据链路中的下一数据包出现的下一条件概率p
next
、优先级标记p、带宽占比pw及链路对应预置的调参信息(参数a、参数b及参数c),计算并得到链路的丢包指数p
loss
,其中,计算链路的丢包指数p
loss
的计算公式如下:
[0073]
p
loss
=a*p
next
b*pf c*pw[0074]
实现了对数据传输网络中的各链路的丢包指数的计算,以便后续根据丢包指数来确定是都将链路中的数据包进行丢弃。
[0075]
步骤s3,将丢包指数小于预设的丢包指数阈值时的链路中对应的数据包进行丢包处理。
[0076]
本技术的优点:实现了在边缘服务器对各链路进行队列控制,以达到合理清理队列的目的,进而保证所有数据发送的公平性和整个拥塞严重网络的通畅性,从而解决了整个网络的严重拥塞问题。
[0077]
图6为本发明实施例所提供的一种拥塞控制装置的结构示意图。
[0078]
如图6所示,该拥塞控制装置包括以下模块:
[0079]
获取模块,用于获取数据传输网络中的各链路的优先级标记、带宽占比及各链路中的下一个数据包出现的下一条件概率;
[0080]
确定模块,用于基于链路的优先级标记和带宽占比及下一条件概率,确定链路的丢包指数;
[0081]
丢包模块,用于将丢包指数小于预设的丢包指数阈值时的链路中对应的数据包进行丢包处理。
[0082]
在本公开的一个实施例之中,进一步而言,还包括:
[0083]
确定模块,还用于:
[0084]
获取链路对应预置的调参信息,预置的调参信息包括调参参数及其对应的参数值;
[0085]
根据链路的优先级标记、带宽占比、下一条件概率及链路对应预置的调参信息,计
算并得到链路的丢包指数。
[0086]
本技术的优点:实现了在边缘服务器对各链路进行队列控制,以达到合理清理队列的目的,进而保证所有数据发送的公平性和整个拥塞严重网络的通畅性,从而解决了整个网络的严重拥塞问题。
[0087]
为达上述目的,本技术第三方面实施例提出了一种拥塞控制的设备,该设备包括:
[0088]
一个或多个处理器;
[0089]
计算机可读介质,用于存储一个或多个计算机可读指令,
[0090]
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现本技术第一方面实施例所述的一种拥塞控制的方法。
[0091]
为了实现上述目的,本发明第四方面实施例提出了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现本技术第一方面实施例所述的一种拥塞控制的方法。
[0092]
为了实现上述目的,本发明第五方面实施例提出了非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,实现本技术第一方面实施例所述的一种拥塞控制的方法。
[0093]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0094]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0095]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0096]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器
(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0097]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0098]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0099]
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0100]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献