本发明涉及quic传输控制,特别是涉及一种面向移动边缘计算的quic传输控制方法及系统。
背景技术:
1、随着云端环境中quic协议的广泛采纳,已经见证了其在提供低延迟、有效拥塞控制以及对http/3.0应用性能的显著提升等方面的众多优势。在当今时代,随着移动边缘计算技术的兴起,计算和数据处理从中心化的数据中心转移到了网络的边缘。这种转变意味着,从智能设备到传感器,新的数据源层出不穷,为通信网络带来了前所未有的挑战。
2、尽管quic协议在中心化的云环境中表现出色,但当其应用于边缘计算时,协议的一些内在特性可能被放大,从而引发新的问题。当前,quic协议的研究重心尚集中在减小连接延迟、高效数据调度、多路复用和内置拥塞控制算法等领域。然而,与此相比,其在移动边缘计算场景中的表现尚未得到充分探讨,尤其是在队列优化和低延迟传输等关键领域。
3、具体而言,quic的某些特性,如连接迁移和0-rtt连接恢复,虽然在资源充足且网络稳定的云计算环境中效果显著,但在边缘计算环境中,尤其是在网络环境不稳定时,这些特性可能导致资源有限的设备出现缓冲区膨胀。因此,为解决此类问题,提出对quic在边缘计算中的实现进行特定的优化。
4、图1展示了在quic协议支撑下的移动边缘计算架构。显然,由端侧(device)产生的大数据量对边缘网络产生了巨大压力。因此,如何在边缘侧(edge)差异化地支持服务并进行有效的拥塞控制,以及如何通过控制队列时延来减少总体延迟,进而为各种应用和服务提供不同级别的服务质量(qos),是目前研究的关键方向。
技术实现思路
1、本发明提供一种面向移动边缘计算的quic传输控制方法及系统,能够有效地解决缓冲区膨胀问题并增强对队列延迟的控制能力。
2、为实现上述目的,本发明提供了如下方案:
3、一种面向移动边缘计算的quic传输控制方法包括:
4、获取队列中数据包长度和离队速率;
5、根据所述数据包的长度和所述离队速率,得到当前队列延迟;
6、获取设定的目标时延;
7、根据所述设定的目标延迟和所述当前队列延迟,确定控制误差;
8、pid控制器根据所述控制误差动态调整控制策略。
9、可选地,所述根据所述数据包的长度和所述离队速率,得到当前队列延迟,具体包括:
10、根据所述数据包的长度和所述离队速率采用公式得到当前队列延迟;
11、其中,τ(t)为当前队列延迟,queuenbytes为队列中的平均数据包数,avgdqrate为平均的数据包离队速率。
12、可选地,所述根据所述设定的目标延迟和所述当前队列延迟,确定控制误差,具体包括:
13、根据所述设定的目标延迟和所述当前队列延迟采用公式o(t)=τ(t)-τ0,确定控制误差;
14、其中,τ(t)为当前队列延迟,τ0为设定的目标延迟,o(t)为控制误差。
15、可选地,所述pid控制器根据所述控制误差动态调整控制策略,具体包括:
16、初始化网络各项参数,确定前一时刻与当前时刻的控制误差的趋势;
17、根据当前所述控制误差的大小,进行阈值维度的划分,根据所述控制误差的变化趋势细化控制策略。
18、可选地,所述根据当前所述控制误差的大小,进行阈值维度的划分,根据所述控制误差的变化趋势细化控制策略,具体包括:
19、当|o(ti)|>m1时,且此时o(ti)处于较大范围时,对δu(ti)施加z1倍的增益系数,同时剔除积分部分产生的效果;
20、当o(ti)·δo(ti)>0,且|o(ti)|>m2,误差朝着绝对值增大的方向,且此时o(ti)处于较大范围时,对δu(ti)施加z2倍的增益系数,达到逆转误差的趋势;
21、当o(ti)·δo(ti)<0,且o(ti)·δo(ti-1)>0误差朝着绝对值减小的方向,且此时|o(ti)|>m2,对δu(ti)施加较小z2增益系数,同时剔除积分部分对整体系统的影响;
22、当o(ti)·δo(ti)<0,且o(ti)·δo(ti-1)<0误差处于极值时,且此时m2>o(ti)>m1,对δu(ti)施加z3倍的抑制系数,同时剔除积分部分对整体系统的影响;
23、其余情况,可以对整体pid控制保持正常的输出;
24、其中,z1、z2为增益放大系数,z3为抑制系数,满足0<z3<1<z2<z1;m1、m2为两个阈值,m2>m1>>∈,∈为任意小的正实数,δu(ti)=kp*(o(ti)-o(ti-1))+ki*o(ti)+kd*(o(ti)-2*o(ti-1)+o(ti-2))。
25、一种面向移动边缘计算的quic传输控制系统包括:
26、数据包长度和离队速率获取模块,用于获取队列中数据包长度和离队速率;
27、当前队列延迟计算模块,用于根据所述数据包的长度和所述离队速率,得到当前队列延迟;
28、设定的目标时延获取模块,用于获取设定的目标时延;
29、控制误差确定模块,用于根据所述设定的目标延迟和所述当前队列延迟,确定控制误差;
30、控制策略动态调整模块,pid控制器用于根据所述控制误差动态调整控制策略。
31、可选地,所述当前队列延迟计算模块,具体包括:
32、当前队列延迟计算单元,用于根据所述数据包的长度和所述离队速率采用公式得到当前队列延迟;
33、其中,τ(t)为当前队列延迟,queuenbytes为队列中的平均数据包数,avgdqrate为平均的数据包离队速率。
34、可选地,所述控制误差确定模块,具体包括:
35、控制误差确定单元,用于根据所述设定的目标延迟和所述当前队列延迟采用公式o(t)=τ(t)-τ0,确定控制误差;
36、其中,τ(t)为当前队列延迟,τ0为设定的目标延迟,o(t)为控制误差。
37、可选地,所述控制策略动态调整模块,具体包括:
38、初始化单元,用于初始化网络各项参数,确定前一时刻与当前时刻的控制误差的趋势;
39、控制策略动态调整单元,用于根据当前所述控制误差的大小,进行阈值维度的划分,根据所述控制误差的变化趋势细化控制策略。
40、可选地,所述控制策略动态调整单元,具体包括:
41、当|o(ti)|>m1时,且此时o(ti)处于较大范围时,对δu(ti)施加z1倍的增益系数,同时剔除积分部分产生的效果;
42、当o(ti)·δo(ti)>0,且|o(ti)|>m2,误差朝着绝对值增大的方向,且此时o(ti)处于较大范围时,对δu(ti)施加z2倍的增益系数,达到逆转误差的趋势;
43、当o(ti)·δo(ti)<0,且o(ti)·δo(ti-1)>0误差朝着绝对值减小的方向,且此时|o(ti)|>m2,对δu(ti)施加较小z2增益系数,同时剔除积分部分对整体系统的影响;
44、当o(ti)·δo(ti)<0,且o(ti)·δo(ti-1)<0误差处于极值时,且此时m2>o(ti)>m1,对δu(ti)施加z3倍的抑制系数,同时剔除积分部分对整体系统的影响;
45、其余情况,可以对整体pid控制保持正常的输出;
46、其中,z1、z2为增益放大系数,z3为抑制系数,满足0<z3<1<z2<z1;m1、m2为两个阈值,m2>m1>>∈,∈为任意小的正实数,δu(ti)=kp*(o(ti)-o(ti-1))+ki*o(ti)+kd*(o(ti)-2*o(ti-1)+o(ti-2))。
47、根据本发明提供的具体实施例,本发明公开了以下技术效果:
48、本发明提供一种面向移动边缘计算的quic传输控制方法,该方法包括:获取队列中数据包长度和离队速率;根据所述数据包的长度和所述离队速率,得到当前队列延迟;获取设定的目标时延;根据所述设定的目标延迟和所述当前队列延迟,确定控制误差;pid控制器根据所述控制误差动态调整控制策略。本发明能够有效地解决缓冲区膨胀问题并增强对队列延迟的控制能力,在数据包溢出和被丢弃之前适时地减缓发送速率。