CN113568303B - 一种基于pid控制算法的网络流量抓包限流丢包方法 - Google Patents

一种基于pid控制算法的网络流量抓包限流丢包方法 Download PDF

Info

Publication number
CN113568303B
CN113568303B CN202111127295.5A CN202111127295A CN113568303B CN 113568303 B CN113568303 B CN 113568303B CN 202111127295 A CN202111127295 A CN 202111127295A CN 113568303 B CN113568303 B CN 113568303B
Authority
CN
China
Prior art keywords
value
fusion
packet loss
pid control
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
Application number
CN202111127295.5A
Other languages
English (en)
Other versions
CN113568303A (zh
Inventor
田红伟
李王成
徐文勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Shumo Technology Co ltd
Original Assignee
Chengdu Shumo Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Shumo Technology Co ltd filed Critical Chengdu Shumo Technology Co ltd
Priority to CN202111127295.5A priority Critical patent/CN113568303B/zh
Publication of CN113568303A publication Critical patent/CN113568303A/zh
Application granted granted Critical
Publication of CN113568303B publication Critical patent/CN113568303B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/36Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
    • G05B11/42Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P. I., P. I. D.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及信息技术处理领域,公开了一种基于PID控制算法的网络流量抓包限流丢包方法,本方法采集NTA应用所在系统的CPU使用率、IO使用率以及内存使用率这3个系统负荷指标量,再将这3个指标量通过归一化、均值滤波、加权融合处理后得到单一表征量,然后把该表征量与PID期望值之差作为PID控制系统的输入,最终得到丢包控制比例,并最终以此比例丢弃过载数据包,从而维持系统的稳定运行。本发明与传统的固定门限控制方法相比具有更高的灵活性,能够实时追踪系统的负荷变化,实现了根据负荷不同丢包比例不同的动态丢包能力,能够更少的丢包提供更高服务质量。

Description

一种基于PID控制算法的网络流量抓包限流丢包方法
技术领域
本发明涉及信息技术处理领域,具体涉及一种基于PID控制算法的网络流量抓包限流丢包方法。
背景技术
在NTA系统中,为了保证系统的稳定运行,当突发流量到达时,将消耗过高的系统硬件资源,造成超负荷运行。系统如果长时间在超负荷状态下工作会增加崩溃的概率。为了保证用户网络中出现突发流量时,系统能够平稳过渡,通常会选择丢弃过载的数据包。丢弃数据包是QOS中最重要的技术应对手段。NTA的QOS中最常使用的策略是固定门限的超限控制,当系统硬件确定后,每个时间单位能够处理的数据包总数上限值便可以确定,当进入NTA系统的网络流量超过上限值时便丢弃数据包。
固定门限的超限控制方法简单可靠,但是也存在如下问题:由于要为不同的硬件维护不同的门限,新增加硬件是需要测试门限值,因此增加了维护的复杂度,并且可能过早或过晚动作,导致出现丢弃了不应该丢弃的数据包或者在资源消耗尽时仍不动作,进一步地,由于硬门限并不考察实时硬件资源消耗情况,仅以门限为唯一控制指标,所以在实时响应上能力也不足。
发明内容
为了克服上述现有技术中存在的问题和不足,本发明提出了一种基于PID控制算法的网络流量抓包限流丢包方法,相比传统的固定门限控制方法具有更高的灵活性,能够实时追踪系统的负荷变化,实现了根据负荷不同丢包比例不同的动态丢包能力,能够更少的丢包提供更高服务质量。
为了实现上述发明目的,本发明的技术方案如下:
一种基于PID控制算法的网络流量抓包限流丢包方法,包括以下步骤:
S1、采集系统的CPU使用率、
Figure 641235DEST_PATH_IMAGE001
使用率以及内存使用率;
S2、将上述3个采样值归一化到统一值区间内,得到3个指标量;
S3、将3个指标量进行平均滤波处理;
S4、对滤波后的3个指标量进行加权融合,得到系统当前的融合实际值,通过测试系统的融合值变化范围,得到系统具有一定裕量能够应对突发流量的融合期望值,将融合实际值与融合期望值的差值作为PID控制的输入值;
S5、使用整定后的比例控制参数
Figure 284575DEST_PATH_IMAGE002
、积分控制参数
Figure 243303DEST_PATH_IMAGE003
以及微分控制参数
Figure 976904DEST_PATH_IMAGE004
作为PID控制算法的控制参数;
S6、通过PID的控制输出调整丢包比例,NTA的数据包采集模块接收到丢包比例后,根据丢包比例丢弃对应数量的数据包。
进一步地,所述步骤S3中,3个指标量采用相同的滤波算法进行平均滤波处理,具体如下:
维护一个长度为10的列表,该列表存放最近的10秒数据,
Figure 247873DEST_PATH_IMAGE005
表示单个指标量在当前t时刻时的归一化指标量值,列表如下:
Figure 332504DEST_PATH_IMAGE006
式(1);
Figure 829344DEST_PATH_IMAGE007
为滤波后的结果,计算公式如下:
Figure 994615DEST_PATH_IMAGE008
式(2);
进一步地,所述步骤S4具体如下:
加权融合数值
Figure 856392DEST_PATH_IMAGE009
式(3);
其中,
Figure 225056DEST_PATH_IMAGE010
表示
Figure 774855DEST_PATH_IMAGE011
时刻3个指标量加权融合后的融合实际值;0.4、0.3以及0.3分别表示3个指标量的权重值;
Figure 545365DEST_PATH_IMAGE012
表示
Figure 578043DEST_PATH_IMAGE011
时刻 CPU使用率滤波归一化值;
Figure 948850DEST_PATH_IMAGE013
表示
Figure 990756DEST_PATH_IMAGE011
时刻
Figure 350193DEST_PATH_IMAGE001
使用率滤波归一化值;
Figure 133866DEST_PATH_IMAGE014
表示
Figure 414805DEST_PATH_IMAGE011
时刻内存使用率滤波归一化值。
进一步地,所述步骤S6体如下:
系统每1秒采样一次数据,控制一次系统,得到简化后的PID模型,得到如下的控制算法
Figure 57139DEST_PATH_IMAGE015
式(4);
其中,
Figure 51509DEST_PATH_IMAGE016
表示PID控制在
Figure 691569DEST_PATH_IMAGE011
时刻时的输出值,
Figure 381176DEST_PATH_IMAGE017
表示当前采样时间
Figure 76469DEST_PATH_IMAGE011
时刻的融合实际值与融合期望值之间的差值;
Figure 410498DEST_PATH_IMAGE018
表示上一个采样时间
Figure 221459DEST_PATH_IMAGE019
时刻的融合实际值与融合期望值的差值;
Figure 248628DEST_PATH_IMAGE002
表示通过实验得到的整定后的比例控制参数;
Figure 170448DEST_PATH_IMAGE003
表示通过实验得到的整定后的积分控制参数;
Figure 873830DEST_PATH_IMAGE004
表示通过实验得到的整定后的微分控制参数。
本发明的有益效果:
(1)本发明相比传统的固定门限控制方法具有更高的灵活性,能够实时追踪系统的负荷变化,实现了根据负荷不同丢包比例不同的动态丢包能力,能够更少的丢包提供更高服务质量。
(2)本发明相较于传统的固定门限控制方法,在门限设置上更为通用,仅需整定一次PID参数,便可以在不同的场景下自动工作,省去了较多的现场维护成本,即便在不重新整定参数时,也能在不同的硬件上工作,省去了新硬件适配的成本。
附图说明
图1为本发明流程图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
参照说明书附图1,本实施例公开了一种基于PID控制算法的网络流量抓包限流丢包方法,具体包括以下步骤:
S1、采集系统的CPU使用率、
Figure 121272DEST_PATH_IMAGE001
使用率以及内存使用率;
CPU使用率采集方法如下:
读取操作系统/proc/self/stat文件中的cpu使用率字段即可获取到CPU消耗的百分比比值;
Figure 926417DEST_PATH_IMAGE001
使用率采集方法如下:
调用命令iostat, 获取到数据磁盘分区的%util字段,即可获取到
Figure 166775DEST_PATH_IMAGE001
消耗的百分比比值;
内存使用率采集方法如下:
读取操作系统/proc/self/status文件中的“VmRSS”字段数值,获取到当前程序的实际物理内存使用值Mrss;再读取操作系统/proc/meminfo文件中的MemTotal字段数值,获取到系统的总内存容量Mrss,内存使用率=Mrss / Mrss * 100%;
S2、将上述3个采样值归一化到统一值区间内,得到3个指标量;
S3、将3个指标量进行平均滤波处理,3个指标量采用相同的滤波算法进行平均滤波处理,具体如下:
维护一个长度为10的列表,该列表存放最近的10秒数据,
Figure 678658DEST_PATH_IMAGE005
表示单个指标量在当前t时刻时的归一化指标量值,列表如下:
Figure 877427DEST_PATH_IMAGE006
式(1);
Figure 107552DEST_PATH_IMAGE007
为滤波后的结果,计算公式如下:
Figure 699070DEST_PATH_IMAGE008
式(2);
使用上述方法得到3个滤波后的值,分别为CPU使用率滤波归一化值
Figure 317658DEST_PATH_IMAGE020
Figure 906902DEST_PATH_IMAGE001
使用率滤波归一化值
Figure 935907DEST_PATH_IMAGE021
,内存使用率滤波归一化值
Figure 127854DEST_PATH_IMAGE022
S4、对滤波后的3个指标量进行加权融合,得到系统当前的融合实际值,然后通过反复测试系统,得到系统的融合值变化范围,并最终得到一个系统具有一定裕量来应对突发流量的融合期望值,然后将融合实际值与融合期望值的差值作为PID控制的输入值,具体如下:
通过下列公式计算3个指标量的加权融合实际值:
Figure 801280DEST_PATH_IMAGE009
式(3);
其中,
Figure 358164DEST_PATH_IMAGE010
表示
Figure 815077DEST_PATH_IMAGE011
时刻3个指标量加权融合后的融合实际值,0.4、0.3以及0.3分别表示3个指标量的权重值,
Figure 482819DEST_PATH_IMAGE012
表示
Figure 620539DEST_PATH_IMAGE011
时刻 CPU使用率滤波归一化值,
Figure 800854DEST_PATH_IMAGE013
表示
Figure 289604DEST_PATH_IMAGE011
时刻
Figure 947987DEST_PATH_IMAGE001
使用率滤波归一化值,
Figure 940214DEST_PATH_IMAGE014
表示
Figure 104479DEST_PATH_IMAGE011
时刻内存使用率滤波归一化值。
S5、使用整定后的比例控制参数
Figure 549367DEST_PATH_IMAGE002
、积分控制参数
Figure 11441DEST_PATH_IMAGE003
以及微分控制参数
Figure 123754DEST_PATH_IMAGE004
作为PID控制算法的控制参数,整定方式为本领域的常规手段;
S6、通过PID的控制输出调整丢包比例,NTA的数据包采集模块接收到丢包比例后,根据丢包比例丢弃对应数量的数据包,具体如下:
系统每1秒采样一次数据,控制一次系统,得到简化后的PID模型,得到如下的控制算法
Figure 193341DEST_PATH_IMAGE015
式(4);
其中,
Figure 112143DEST_PATH_IMAGE016
表示PID控制在
Figure 863061DEST_PATH_IMAGE011
时刻时的输出值,
Figure 79148DEST_PATH_IMAGE017
表示当前采样时间
Figure 319636DEST_PATH_IMAGE011
时刻的融合实际值与融合期望值之间的差值,
Figure 207958DEST_PATH_IMAGE018
表示上一个采样时间
Figure 74152DEST_PATH_IMAGE019
时刻的融合实际值与融合期望值的差值,
Figure 895477DEST_PATH_IMAGE002
表示通过实验得到的整定后的比例控制参数,
Figure 510129DEST_PATH_IMAGE003
表示通过实验得到的整定后的积分控制参数,
Figure 931752DEST_PATH_IMAGE004
表示通过实验得到的整定后的微分控制参数。
在本实施例中,所述步骤S2中,CPU使用率归一化具体为:
将得到的“CPU使用率” ×100,得到0-100的CPU使用率归一化值;
Figure 821211DEST_PATH_IMAGE001
使用率归一化具体为:
将得到的“
Figure 965884DEST_PATH_IMAGE001
使用率” ×100,得到0-100的
Figure 546512DEST_PATH_IMAGE001
使用率归一化值;
内存使用率归一化具体为:
将得到的“内存使用率” × 100,得到0-100的内存使用率归一化值。
在本实施例中,所述步骤S4中,由于普通系统的硬件配比都比较均衡,所以这个融合值的变化范围往往在0到100之间,一般情况下,我们为了保证系统有20%的裕量来应对突发流量,就将融合期望值设置为80,当然这个期望值也可以根据系统特点调整为其他值。
在本发明中,PID (Proportional, Integral, Derivative)表示比例,积分,微分控制算法;NTA(Network Traffic Analysis)表示网络流量分析;QOS(Quality ofService)表示服务质量;CPU(central processing unit)表示中央处理器;IO(Input/Output)表示输入/输出。
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

Claims (3)

1.一种基于PID控制算法的网络流量抓包限流丢包方法,其特征在于:包括以下步骤:
S1、采集系统的CPU使用率、
Figure 939074DEST_PATH_IMAGE001
使用率以及内存使用率;
S2、将上述3个采样值归一化到统一值区间内,得到3个指标量;
S3、将3个指标量进行平均滤波处理;
S4、对滤波后的3个指标量进行加权融合,得到系统当前的融合实际值,通过测试系统的融合值变化范围,测定到达一个系统具有一定裕量的融合期望值,将融合实际值与融合期望值的差值作为PID控制的输入值;
S5、使用整定后的比例控制参数
Figure 751041DEST_PATH_IMAGE002
、积分控制参数
Figure 485779DEST_PATH_IMAGE003
以及微分控制参数
Figure 780101DEST_PATH_IMAGE004
作为PID控制算法的控制参数;
S6、通过PID的控制输出调整丢包比例,NTA的数据包采集模块接收到丢包比例后,根据丢包比例丢弃对应数量的数据包;
所述步骤S6具体如下:
系统每1秒采样一次数据,控制一次系统,得到简化后的PID模型,得到如下的控制算法:
Figure 891276DEST_PATH_IMAGE005
式(4);
其中,
Figure 88908DEST_PATH_IMAGE006
表示PID控制在
Figure 994547DEST_PATH_IMAGE007
时刻时的输出值,
Figure 779095DEST_PATH_IMAGE008
表示当前采样时间
Figure 349754DEST_PATH_IMAGE007
时刻的融合实际值与融合期望值之间的差值,
Figure 152625DEST_PATH_IMAGE009
表示上一个采样时间
Figure 557061DEST_PATH_IMAGE010
时刻的融合实际值与融合期望值的差值,
Figure 763658DEST_PATH_IMAGE011
表示通过实验得到的整定后的比例控制参数,
Figure 872428DEST_PATH_IMAGE012
表示通过实验得到的整定后的积分控制参数,
Figure 811697DEST_PATH_IMAGE013
表示通过实验得到的整定后的微分控制参数。
2.根据权利要求1所述的一种基于PID控制算法的网络流量抓包限流丢包方法,其特征在于:所述步骤S3中,3个指标量采用相同的滤波算法,具体如下:
维护一个长度为10的列表,该列表存放最近的10秒数据,
Figure 980510DEST_PATH_IMAGE014
表示单个指标量在当前
Figure 988917DEST_PATH_IMAGE015
时刻时的归一化指标量值,列表如下:
Figure 751247DEST_PATH_IMAGE016
式(1);
Figure 528710DEST_PATH_IMAGE017
为指标量滤波后的结果,计算公式如下:
Figure 196321DEST_PATH_IMAGE018
式(2)。
3.根据权利要求1所述的一种基于PID控制算法的网络流量抓包限流丢包方法,其特征在于:所述步骤S4具体如下:
通过下列公式计算系统当前的加权融合实际值
Figure 426445DEST_PATH_IMAGE019
式(3);
其中,
Figure 644062DEST_PATH_IMAGE020
表示
Figure 525299DEST_PATH_IMAGE015
时刻3个指标量加权融合后的融合实际值,0.4、0.3以及0.3分别表示3个指标量的权重值,
Figure 114544DEST_PATH_IMAGE021
表示
Figure 642083DEST_PATH_IMAGE015
时刻 CPU使用率滤波归一化值,表示
Figure 974976DEST_PATH_IMAGE015
时刻
Figure 117244DEST_PATH_IMAGE022
使用率滤波归一化值,
Figure 628122DEST_PATH_IMAGE023
表示
Figure 285369DEST_PATH_IMAGE015
时刻内存使用率滤波归一化值。
CN202111127295.5A 2021-09-26 2021-09-26 一种基于pid控制算法的网络流量抓包限流丢包方法 Active CN113568303B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111127295.5A CN113568303B (zh) 2021-09-26 2021-09-26 一种基于pid控制算法的网络流量抓包限流丢包方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111127295.5A CN113568303B (zh) 2021-09-26 2021-09-26 一种基于pid控制算法的网络流量抓包限流丢包方法

Publications (2)

Publication Number Publication Date
CN113568303A CN113568303A (zh) 2021-10-29
CN113568303B true CN113568303B (zh) 2021-12-14

Family

ID=78174518

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111127295.5A Active CN113568303B (zh) 2021-09-26 2021-09-26 一种基于pid控制算法的网络流量抓包限流丢包方法

Country Status (1)

Country Link
CN (1) CN113568303B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761448A (zh) * 2012-08-07 2012-10-31 中国石油大学(华东) 机群监控与预警方法
CN104486248A (zh) * 2014-12-04 2015-04-01 南京邮电大学 基于广义pid的随机早期检测算法的aqm系统和方法
CN106713468A (zh) * 2016-12-29 2017-05-24 深圳云天励飞技术有限公司 一种分布式集群服务结构及其节点协同方法
CN108196788A (zh) * 2017-12-28 2018-06-22 新华三技术有限公司 QoS指标监测方法、装置、存储介质
CN109995653A (zh) * 2019-04-15 2019-07-09 深圳市迅雷网络技术有限公司 跨节点的数据传输方法、装置、系统及可读存储介质
CN112217741A (zh) * 2020-09-30 2021-01-12 上海商米科技集团股份有限公司 一种动态带宽调整方法
CN112311564A (zh) * 2019-07-23 2021-02-02 华为技术有限公司 应用mos模型的训练方法、设备及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9007909B2 (en) * 2011-03-09 2015-04-14 International Business Machines Corporation Link layer reservation of switch queue capacity
KR101507270B1 (ko) * 2014-01-23 2015-04-01 순천대학교 산학협력단 무선 멀티미디어 센서 네트워크에서 혼잡을 고려한 QoS 라우팅 방법
US10644978B2 (en) * 2017-11-22 2020-05-05 Hughes Network Systems, Llc Latency increase estimated rate limiter adjustment
CN112000422B (zh) * 2020-07-17 2022-08-05 苏州浪潮智能科技有限公司 一种防止容器编排框架中pod内存溢出的方法、装置
CN112492646B (zh) * 2020-11-27 2022-04-08 清华大学 基于拥塞成因识别的拥塞控制方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761448A (zh) * 2012-08-07 2012-10-31 中国石油大学(华东) 机群监控与预警方法
CN104486248A (zh) * 2014-12-04 2015-04-01 南京邮电大学 基于广义pid的随机早期检测算法的aqm系统和方法
CN106713468A (zh) * 2016-12-29 2017-05-24 深圳云天励飞技术有限公司 一种分布式集群服务结构及其节点协同方法
CN108196788A (zh) * 2017-12-28 2018-06-22 新华三技术有限公司 QoS指标监测方法、装置、存储介质
CN109995653A (zh) * 2019-04-15 2019-07-09 深圳市迅雷网络技术有限公司 跨节点的数据传输方法、装置、系统及可读存储介质
CN112311564A (zh) * 2019-07-23 2021-02-02 华为技术有限公司 应用mos模型的训练方法、设备及系统
CN112217741A (zh) * 2020-09-30 2021-01-12 上海商米科技集团股份有限公司 一种动态带宽调整方法

Also Published As

Publication number Publication date
CN113568303A (zh) 2021-10-29

Similar Documents

Publication Publication Date Title
CN111198764B (zh) 一种基于sdn的负载均衡实现系统及方法
CN102916908B (zh) 网络应用中的带宽优化方法及系统
EP4082174B1 (en) System and method for estimation of quality of experience (qoe) for video streaming
EP2278502A1 (en) Deleting data stream overload
US20090257352A1 (en) Apparatus and method for monitoring network
CN108989880B (zh) 一种码率自适应切换方法及系统
CN107423433A (zh) 一种数据采样率控制方法及装置
WO2021179958A1 (zh) 空调器的智能控制方法与空调器的智能控制设备
CN108449232B (zh) 一种网速自适应控制的方法
CN104780004A (zh) 一种家庭网关的带宽测速系统及方法
US9270565B2 (en) System for estimating download speed from passive measurements
CN113568303B (zh) 一种基于pid控制算法的网络流量抓包限流丢包方法
CN107592274A (zh) 一种计算机网络服务器的控制管理方法
CN110381555A (zh) 一种用于5g终端的数据传输开关管理系统
CN108390793A (zh) 一种分析系统稳定性的方法及装置
CN111800829A (zh) LoRaWAN通信自适应速率调整方法、系统及网络服务器
CN116633798A (zh) 一种基于数据分析的物联网卡数据流量监控预警系统
CN109688065B (zh) 参数的处理方法、装置及存储介质
US11589299B2 (en) Method of implementing self-organizing network for plurality of access network devices and electronic device for performing the same
CN112153702A (zh) 一种局域网带宽资源分配方法、存储装置及设备
US20230171649A1 (en) Adaptive wireless connections in multi-mode devices
AT&T CMSY8
CN111365764A (zh) 智能供热系统温度参数设定方法及系统
CN110727518B (zh) 一种数据处理方法及相关设备
CN110572356B (zh) 基于边缘网关数据质量评价的计算能力迁移方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant