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

一种基于差异化QoS需求的工控网络流量调度方法

2022-05-21 11:07:06 来源:中国专利 TAG:

一种基于差异化qos需求的工控网络流量调度方法
技术领域
1.本发明属于工业控制系统中工控网络流量调度技术领域,具体涉及一种基于差异化qos需求的工控网络流量调度方法。


背景技术:

2.随着互联网技术的日趋成熟和“工业4.0”的提出,互联网和工业生产正进行紧密融合。工业控制系统是工业生产中的重要组成部分,其中,工控网络流量是反馈工业控制系统运行状态的重要因素。工控网络流量的合理调度可以使工业控制系统资源得到充分利用,也可以预测异常流量保证网络安全,因此,工控网络流量调度是工业控制系统中一个重要的研究方向。
3.现如今,随着工业控制系统的规模不断增大,工控网络流量种类变得错综复杂,对qos参数也呈现差异化趋势,传统的流量调度方法很多遵循先来先调度原则,出现调度效率下降,实时性下降,成本增高等不利影响。
4.随着群智能算法和深度学习方法逐渐运用在流量调度技术领域,解决了调度效率下降,实时性下降等不利影响,通过智能寻找最优解方法就可以实现最优路径调度,但是还是会导致吞吐量下降,网络拥塞,时延上升,调度的精确性下降的问题。


技术实现要素:

5.针对上述存在的问题,本发明提供了一种基于差异化qos需求的工控网络流量调度方法,本发明结合工控网络流量差异化qos需求的特性和工控网络可预留带宽的状况,使得流量调度时适应度函数构建更加准确,寻找最优路径的效率提高,更加匹配,具有实时、高效、准确的优势。
6.为了实现上述目的,本发明具体技术方案如下:
7.一种基于差异化qos需求的工控网络流量调度方法,包括如下步骤:
8.步骤s1、采集工控网络流量:工业控制系统采集所有工控网络流量,并看作一个流量集合f
t
_list={f1,f2,f3…fk
},其中,f1是第1条流量,f2是第2条流量,f3是第3条流量,fk指第k条流量;
9.步骤s2、分析工控网络流量与qos参数的映射关系;
10.步骤s3、获取截取区间:通过比较区间和区间的倾合度,获取截取区间,记为[w-,w

];
[0011]
步骤s4、提取最优差异化qos参数:使用最优差异化qos参数提取方法在所述截取区间[w-,w

]上提取每条流量的最优差异化qos参数;
[0012]
步骤s5、计算工控网络中链路可预留带宽:使用动态带宽预留方法计算工控网络中链路可预留带宽;
[0013]
步骤s6、构建适应度函数得到最优路径:以粒子群算法为基础,将工控网络流量看作粒子,初始粒子位置与速度,根据工控网络流量的最优差异化qos参数和链路可预留带宽
构建适应度函数,根据适应度函数更新粒子位置与速度,设置粒子位置与速度为迭代更新的结束判定条件,若符合判定条件,则输出最优解,即最优路径,否则继续执行适应度函数计算。
[0014]
上述方案中,所述步骤s3中,区间和区间表示为:
[0015][0016][0017][0018][0019]
其中,分别为工控网络流量的qos需求波动区间和工控网络的qos资源波动区间,q
is
的含义是第i个流量的第s个qos参数,表示第i个工控网络流量的第s个qos需求的平均值,表示第i个工控网络流量的第s个qos需求的方差;q
is
是指第i个工控网络流量映射工控网络第s个qos资源,表示第i个工控网络流量映射工控网络第s个qos资源的平均值,表示第i个工控网络流量映射工控网络第s个qos资源的方差,n指的是当前流量所需的qos参数总和。
[0020]
上述方案中,所述步骤s3中,获取截取区间的过程为:
[0021]
比较两个区间的倾合度,若两个区间相离,则无法确定截取区间,需放入等待队列;若两个区间重合,则会出现以下情况:
[0022]
如果包含选取作为截取区间;如果包含选取作为截取区间;如果左包含使用作为截取区间;如果右包含使用作为截取区间,记截取区间为[w-,w

]。
[0023]
上述方案中,所述步骤s4中,基于截取区间[w-,w

]对工控网络流量提取最优差异化qos参数的过程为:
[0024]
步骤s4.1、在截取区间[w-,w

]上选取正向解x,与工控网络初始最优解s比较;
[0025]
步骤s4.2、若x等于s,则x为最优qos解;
[0026]
步骤s4.3、若x不等于s,则计算截取区间[w-,w

]中点和正向解的反向数比较与x到s的距离,选取距离最短的区间作为新截取区间,区间新端点为中点m和w
′‑
或w


,迭代此过程,直至x、与s重合,则x为最优qos解;
[0027]
进一步的,所述正向解的反向数和获取新端点计算公式分别为:
[0028]
m=(w- w

)/2
[0029][0030]
上述方案中,所述步骤s5中,使用动态带宽预留方法计算工控网络中链路可预留带宽具体为:
[0031]
若调度新工控网络流量时,工控网络中已有链路预留最大带宽sh(l)之和h=∑sh(l)不小于整个工控网络可预留带宽t,则预留最大链路带宽需求量d=sh(l)。
[0032]
上述方案中,若调度新工控网络流量时,工控网络中已有链路预留最大带宽sh(l)之和h=∑sh(l)大于整个工控网络可预留带宽t,则分为以下两种情况:
[0033]
若已预留带宽链路按照链路最小带宽值d
min
(l)计算得到的总带宽d
ext
=∑d
min
(l)不大于整个工控网络可预留带宽t,则在满足所有已预留带宽链路最小带宽值d
min
(l)的情况下,按照带宽预留方式为新链路预留带宽资源,预留方式如下:
[0034]bfree
=t-d
ext
[0035]dext
=∑d
min
(l)
[0036]
h=∑sh(l)
[0037][0038]
其中,b
free
表示整个工控网络可预留带宽减去已预留带宽链路按照链路最小带宽值之和后得到的剩余带宽;d
new
(l)为新链路可预留带宽数;
[0039]
若已预留带宽链路按照链路最小带宽值d
min
(l)计算得到的总带宽d
ext
=∑d
min
(l)大于整个工控网络可预留带宽t,且当前已预留带宽链路上工控网络流量所需的带宽sf(l)之和l=∑sf(l)不大于整个工控网络可预留带宽t,以已预留带宽链路上工控网络流量所需的带宽之和l=∑sf(l)为链路最小带宽之和,按照带宽预留方式为新链路预留带宽资源,预留方式如下:
[0040]bfree
=t-l
[0041]dext
=∑d
min
(l)
[0042]
h=∑sh(l)
[0043][0044]
其中,b
free
表示整个工控网络可预留带宽减去已预留带宽链路上工控网络流量所需的带宽之和后得到的剩余带宽,d
new
(l)为新链路可预留带宽数。
[0045]
上述方案中,所述步骤s6中,粒子的速度、位置和适应度函数分别如下表示:
[0046]
new_v=wv c1r1(pbest-x) c2r2(gbest-x)
[0047]
new_v表示粒子最新的速度,v表示粒子当前速度,r1和r2表示随机数(0~1),pbest表示粒子历史上的最好位置,gbest表示种群中所有粒子中当前最好的位置,x表示粒子当前的位
[0048]
置,c1和c2表示学习因子,分别向本粒子历史最好位置和种群中当前最好位置学习;
[0049]
new_x=x new_v
[0050]
其中,new_x表示粒子最新位置,x表示粒子当前的位置,new_v表示粒子最新的速度
[0051]fi
=f
ncis
l
nd[0052]
其中,c
is
表示工控网络流量的最优差异化qos参数,d表示链路可预留带宽,fi表示第i个粒子的适应度值。
[0053]
与现有技术相比,本发明的有益效果是:本发明结合工控网络流量差异化qos需求的特性和工控网络可预留带宽的状况,使得流量调度时适应度函数构建更加准确,寻找最优路径的效率提高,更加匹配,具有实时、高效、准确的优势。
附图说明
[0054]
图1是本发明一实施方式的基于差异化qos需求的工控网络流量调度方法流程图。
具体实施方式
[0055]
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0056]
图1所示所述基于差异化qos需求的工控网络流量调度方法,包括如下步骤:
[0057]
步骤s1、采集工控网络流量:工业控制系统采集所有工控网络流量,并看作一个流量集合f
t
_list={f1,f2,f3…fk
},其中,f1是第1条流量,f2是第2条流量,f3是第3条流量,fk指第k条流量;
[0058]
步骤s2、通过c4.5算法分析工控网络流量与qos参数的映射关系;
[0059]
步骤s3、获取截取区间:通过比较区间和区间的倾合度,获取截取区间,记为[w-,w

];
[0060]
步骤s4、基于截取区间对工控网络流量提取最优差异化qos参数:使用最优差异化qos参数提取方法在所述截取区间[w-,w

]上提取每条流量的最优差异化qos参数;
[0061]
步骤s5、计算工控网络中链路可预留带宽:使用动态带宽预留方法计算工控网络中链路可预留带宽;
[0062]
步骤s6、构建适应度函数得到最优路径:以粒子群算法为基础,将工控网络流量看作粒子,初始粒子位置与速度,根据工控网络流量的最优差异化qos参数和链路可预留带宽构建适应度函数,根据适应度函数更新粒子位置与速度,设置粒子位置与速度为迭代更新的结束判定条件,若符合判定条件,则输出最优解,即最优路径,否则继续执行适应度函数计算。
[0063]
所述步骤s3中,区间和区间表示为:
[0064][0065][0066][0067][0068]
其中,分别为工控网络流量的qos需求波动区间和工控网络的qos资源波动区间,q
is
的含义是第i个流量的第s个qos参数,表示第i个工控网络流量的
第s个qos需求的平均值,表示第i个工控网络流量的第s个qos需求的方差;q
is
是指第i个工控网络流量映射工控网络第s个qos资源,表示第i个工控网络流量映射工控网络第s个qos资源的平均值,表示第i个工控网络流量映射工控网络第s个qos资源的方差,n指的是当前流量所需的qos参数总和。
[0069]
所述步骤s3中,获取截取区间的过程为:
[0070]
比较两个区间的倾合度,若两个区间相离,则无法确定截取区间,需放入等待队列;若两个区间重合,则会出现以下四种情况:
[0071]
如果包含选取作为截取区间;如果包含选取作为截取区间;如果左包含使用作为截取区间;如果右包含使用作为截取区间,记截取区间为[w-,w

]。
[0072]
所述步骤s4中,基于截取区间[w-,w

]对工控网络流量提取最优差异化qos参数的过程为:
[0073]
步骤s4.1、在截取区间[w-,w

]上选取正向解x,与工控网络初始最优解s比较;
[0074]
步骤s4.2、若x等于s,则x为最优qos解;
[0075]
步骤s4.3、若x不等于s,则计算截取区间[w-,w

]中点和正向解的反向数比较与x到s的距离,选取距离最短的区间作为新截取区间,区间新端点为中点m和w
′‑
或w


,迭代此过程,直至x、与s重合,则x为最优qos解;
[0076]
所述正向解的反向数和获取新端点计算公式分别为:
[0077]
m=(w- w

)/2
[0078][0079]
所述步骤s5中,使用动态带宽预留方法计算工控网络中链路可预留带宽具体为:
[0080]
若调度新工控网络流量时,工控网络中已有链路预留最大带宽sh(l)之和h=∑sh(l)不小于整个工控网络可预留带宽t,则预留最大链路带宽需求量d=sh(l)。
[0081]
若调度新工控网络流量时,工控网络中已有链路预留最大带宽sh(l)之和h=∑sh(l)大于整个工控网络可预留带宽t,则分为以下两种情况:
[0082]
若已预留带宽链路按照链路最小带宽值d
min
(l)计算得到的总带宽d
ext
=∑d
min
(l)不大于整个工控网络可预留带宽t,那么调度新工控网络流量时,不会影响整个工控网络的带宽资源预留状态,在满足所有已预留带宽链路最小带宽值d
min
(l)的情况下,按照带宽预留方式为新链路预留带宽资源,预留方式如下:
[0083]bfree
=t-d
ext
[0084]dext
=∑d
min
(l)
[0085]
h=∑sh(l)
[0086][0087]
其中,b
free
表示整个工控网络可预留带宽减去已预留带宽链路按照链路最小带宽值之和后得到的剩余带宽;d
new
(l)为新链路可预留带宽数;
[0088]
若已预留带宽链路按照链路最小带宽值d
min
(l)计算得到的总带宽d
ext
=∑d
min
(l)
大于整个工控网络可预留带宽t,则表明调度新工控网络流量时,会导致已预留带宽链路按照链路最小带宽值的变化。且当前已预留带宽链路上工控网络流量所需的带宽sf(l)之和l=∑sf(l)不大于整个工控网络可预留带宽t,以这些已预留带宽链路上工控网络流量所需的带宽之和l=∑sf(l)为链路最小带宽之和,按照带宽预留方式为新链路预留带宽资源,否则无法预留任何带宽,无法调度,预留方式如下:
[0089]bfree
=t-l
[0090]dext
=∑d
min
(l)
[0091]
h=∑sh(l)
[0092][0093]
其中,b
free
表示整个工控网络可预留带宽减去已预留带宽链路上工控网络流量所需的带宽之和后得到的剩余带宽,d
new
(l)为新链路可预留带宽数。
[0094]
所述步骤s6中,计算粒子的速度、位置和适应度值,根据适应度值更新最优解,当达到最大迭代次数时,算法结束,得到最优粒子位置,即得到最优调度方案,否则重新计算粒子的适应度值,粒子的速度、位置和适应度函数分别如下表示:
[0095]
new_v=wv c1r1(pbest-x) c2r2(gbest-x)
[0096]
new_v表示粒子最新的速度,v表示粒子当前速度,r1和r2表示随机数(0~1),pbest表示粒子历史上的最好位置,gbest表示种群中所有粒子中当前最好的位置,x表示粒子当前的位置,c1和c2表示学习因子,分别向本粒子历史最好位置和种群中当前最好位置学习;new_x=x new_v
[0097]
new_x表示粒子最新位置,x表示粒子当前的位置,new_v表示粒子最新的速度
[0098]fi
=f
ncis
l
nd[0099]
其中,c
is
表示工控网络流量的最优差异化qos参数,d表示链路可预留带宽,fi表示第i个粒子的适应度值。
[0100]
本发明使用最优差异化qos参数提取方法在工控网络流量的qos需求波动区间和工控网络的qos资源波动区间确定的截取区间中提取工控网络流量的最优差异化qos参数,使用动态带宽预留方法计算工控网络中链路可预留带宽,结合最优差异化qos参数和工控网络中链路可预留带宽构建适应度函数,从而寻找最优路径。本发明具有实时、高效、准确的优势,同时规避了传统调度方法无实时性、人工成本大等缺陷。
[0101]
具体实施例:
[0102]
一种基于差异化qos需求的工控网络流量调度方法,包括以下步骤:
[0103]
步骤s1、通过工业控制系统采集工控网络流量f1,f2,f3,并看作一个流量集合f
t
_list={f1,f2,f3};
[0104]
步骤s2、通过c4.5算法分析工控网络流量与qos参数的映射关系,比如f1~q1、q2、f2~q1、q2、q3、f3~q1,其中q1表示带宽需求、q2表示时延需求、q3表示丢包率需求;
[0105]
步骤s3、通过比较f1,f2,f3的区间和区间的倾合度,获取截取区间,计算方式如下:
[0106]
[0107][0108][0109][0110]
其中,分别为工控网络流量的qos需求波动区间和工控网络的qos资源波动区间,q
is
的含义是第i个流量的第s个qos参数,表示第i个工控网络流量的第s个qos需求的平均值,表示第i个工控网络流量的第s个qos需求的方差;q
is
是指第i个工控网络流量映射工控网络第s个qos资源,表示第i个工控网络流量映射工控网络第s个qos资源的平均值,表示第i个工控网络流量映射工控网络第s个qos资源的方差,n指的是当前流量所需的qos参数总和。
[0111]
获取截取区间的过程为:
[0112]
比较两个区间的倾合度,两个区间若两个区间相离,则无法确定截取区间,需放入等待队列;若两个区间重合,则会出现四种情况:
[0113]
如果包含选取作为截取区间;如果包含选取作为截取区间;如果左包含使用作为截取区间;如果右包含使用作为截取区间,记截取区间为[w-,w

]。
[0114]
所述步骤s4中,基于截取区间[w-,w

],对工控网络流量f1,f2,f3进行提取最优差异化qos参数提取,过程为:
[0115]
步骤s4.1、在截取区间[w-,w

]上选取正向解x,与工控网络初始最优解s比较;
[0116]
步骤s4.2、若x等于s,则x为最优qos解;
[0117]
步骤s4.3、若x不等于s,则计算截取区间[w-,w

]中点和正向解的反向数比较与x到s的距离,选取距离最短的区间作为新截取区间,区间新端点为中点m和w
′‑
或w


,迭代此过程,直至x、与s重合,则x为最优qos解;
[0118]
其中,计算正向解的反向数和获取新端点计算公式分别为:
[0119]
m=(w- w

)/2
[0120][0121]
最终,形成最优差异化qos参数矩阵c
[0122][0123]
其中,行表示每条流量的最优qos参数,列表示流量条数。
[0124]
所述步骤s5根据工控网络流量f1,f2,f3的带宽需求,计算工控网络中链路可预留带宽,动态带宽预留方法步骤如下:
[0125]
步骤s5.1、若调度f1,f2,f3时,此时整个工控网络可预留带宽t是20m,现在给l1、l2链路预留了10m,l1、l2上的流量最高带宽需求h=∑sh(l)是10m,需要调度f1,f2,f3流量时,需要给相应链路预留带宽,需要预留8m,则直接预留;
[0126]
步骤s5.2、若调度f1,f2,f3时,此时整个工控网络可预留带宽t是20m,现在给l1、l2链路预留了30m,l1、l2上的流量最高带宽需求h=∑sh(l)是30m,需要调度f1,f2,f3流量时,需要给相应链路预留带宽,需要预留8m,带宽不够分配,则分为以下两种情况处理:
[0127]
步骤s5.2.1、那些已预留过带宽的链路的预留带宽是可以浮动的,将这些链路的带宽d
min
(l)压缩到最小,并加起来所得之和d
ext
=∑d
min
(l)不大于整个工控网络可预留带宽,整个工控网络可预留带宽减去所得之和,再给新链路预留,比如l1、l2最小带宽之和d
min
(l)为10m,整个工控网络可预留带宽t为20m,而新链路要8m,则可以预留,预留方式如下:
[0128]bfree
=t-d
ext
[0129]dext
=∑d
min
(l)
[0130]
h=∑sh(l)
[0131][0132]
其中,b
free
表示整个工控网络可预留带宽减去已预留带宽链路按照链路最小带宽值之和后得到的剩余带宽;d
new
(l)为新链路可预留带宽数;
[0133]
步骤s5.2.2、那些已预留过带宽的链路,将这些链路的带宽d
min
(l)压缩到最小,并加起来所得之和d
ext
=∑d
min
(l)大于整个工控网络可预留带宽t,比如l1、l2最小带宽之和为25m,整个工控网络可预留带宽为20m,则表明调度新工控网络流量时,会导致已预留带宽链路按照链路最小带宽值的变化。若当前已预留带宽链路上工控网络流量所需的带宽之和l=∑sf(l)不大于整个工控网络可预留带宽t,以这些已预留带宽链路上工控网络流量所需的带宽之和l=∑sf(l)为链路最小带宽之和,按照带宽预留方式为新链路预留带宽资源。否则无法预留任何带宽,无法调度,带宽预留方式如下:
[0134]bfree
=t-l
[0135]dext
=∑d
min
(l)
[0136]
h=∑sh(l)
[0137][0138]
其中,b
free
表示整个工控网络可预留带宽减去已预留带宽链路上工控网络流量所需的带宽之和后得到的剩余带宽,d
new
(l)为新链路可预留带宽数。
[0139]
所述步骤s6中,计算粒子的速度、位置和适应度值,根据适应度值更新最优解,当达到最大迭代次数时,算法结束,得到最优粒子位置,即得到最优调度方案,否则重新计算粒子的适应度值,粒子的速度、位置和适应度函数分别如下表示:
[0140]
new_v=wv c1r1(pbest-x) c2r2(gbest-x)
[0141]
new_v表示粒子最新的速度,v表示粒子当前速度,r1和r2表示随机数(0~1),pbest表示粒子历史上的最好位置,gbest表示种群中所有粒子中当前最好的位置,x表示粒子当前的位置,c1和c2表示学习因子,分别向本粒子历史最好位置和种群中当前最好位置学习;
[0142]
new_x=x new_v
[0143]
其中,new_x表示粒子最新位置,x表示粒子当前的位置,new_v表示粒子最新的速

[0144]fi
=f
ncis
l
nd[0145]
其中,c
is
表示工控网络流量的最优差异化qos参数,d表示链路可预留带宽,fi表示第i个粒子的适应度值。
[0146]
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施例的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施例或变更均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献