CN112087395A - 一种服务形式的分级流量控制方法 - Google Patents
一种服务形式的分级流量控制方法 Download PDFInfo
- Publication number
- CN112087395A CN112087395A CN202010882388.8A CN202010882388A CN112087395A CN 112087395 A CN112087395 A CN 112087395A CN 202010882388 A CN202010882388 A CN 202010882388A CN 112087395 A CN112087395 A CN 112087395A
- Authority
- CN
- China
- Prior art keywords
- flow control
- flow
- service
- address
- source
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000004891 communication Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
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
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种服务形式的分级流量控制方法,涉及网络通信技术领域,包括:建立流控服务,在流控服务中标记被管理的网络设备;客户端程序配置流控规则,同时,向流控服务发送配置流控规则的请求;流控服务接收客户端程序的请求,并形成流控指令;流控服务根据流控指令查询路由表获得具体网络设备的名称,随后再根据流控指令设置该网络设备的流控规则。本发明可以确保计算机外发流量既能在不超过网络物理限额的前提下获得额定速率,又能在网络速率富余的情况下按照优先级依序分配流量,使得各网络连接既能满足基本需求,又能协调的充分利用总体流量。
Description
技术领域
本发明涉及网络通信技术领域,具体的说是一种服务形式的分级流量控制方法。
背景技术
在共享网络流量的环境中,高性能网络程序在发送数据时可能使用过多流量,以致影响其他网络程序运行。另一方面,如果发送的数据超出接收方处理能力,也会对接收方形成冲击。因此建立有效的流量控制方法是非常必要的。
现有文献公开了一种实现业务流量控制的方法及系统,专利号200610127692.1,该文献通过业务成功率阈值,根据发送节点与接收节点之间的业务成功率与业务成功率阈值,调整接收节点对应的流控参数。
现有Linux内核自2.2版起提供了流量控制手段,但需要通过命令设置流控规则,需要用户维护以十六进制数字标识的分类标识,使用较为不便。
基于此,确保计算机外发流量既能在不超过网络物理限额的前提下获得额定速率,又能在网络速率富余的情况下按照优先级依序分配流量,研发人员设计了一种服务形式的分级流量控制方法。
发明内容
本发明针对目前技术发展的需求和不足之处,提供一种服务形式的分级流量控制方法,确保计算机外发流量既能在不超过网络物理限额的前提下获得额定速率,又能在网络速率富余的情况下按照优先级依序分配流量,使得各网络连接既能满足基本需求,又能协调的充分利用总体流量。
本发明的一种服务形式的分级流量控制方法,解决上述技术问题采用的技术方案如下:
一种服务形式的分级流量控制方法,包括如下步骤:
步骤S1、建立流控服务,在流控服务中标记被管理的网络设备,
步骤S2、客户端程序配置流控规则,同时,向流控服务发送配置流控规则的请求,
步骤S3、流控服务接收客户端程序的请求,并形成流控指令,
步骤S4、流控服务根据流控指令查询路由表获得具体网络设备的名称,随后再根据流控指令设置该网络设备的流控规则。
进一步的,步骤S1中,所涉及流控服务将被标记的网络设备组织为二叉树链表的形式,形成设备链表;设备链表中的每个节点对应一个网络设备,基于步骤S3形成的流控指令,每个网络设备的节点下挂一棵根据流控指令形成的流控分类树,每棵流控分类树有唯一的根节点,代表从该网络设备发出的全部流量。
更进一步的,步骤S2中,基于被标记网络设备的源地址、目标地址、源端口、目的端口,客户端程序配置三级流控规则,三级流控规则包括:
基于源地址的第一级控制源端流量规则,
基于源地址和目标地址的第二级控制路由流量规则,
基于源地址、目标地址、源端口、目的端口的第三级控制连接流量规则。
更进一步的,所涉及根节点、第一级控制源端流量规则的节点、第二级控制路由流量规则的节点设有过滤器,过滤器通过源地址、目标地址、源端口、目的端口的参数过滤流量导向至下级节点,下级节点的封顶速率之和不超过父节点的封顶速率。
更进一步的,步骤S3中,所涉及流控指令的内容包含源IP地址、目的IP地址、源端口、目的端口、额定速率、封顶速率、优先级;其中,
流控指令内部统一使用128位表示源IP地址、目的IP地址,兼容IPv4和IPv6,
速率参数单位为kBps,参数类型为64位整数,
优先级设计为1~10共10级,数字越小越优先分配额外内存,内部使用16位无符号整数表示优先级,具备扩展至65535级的能力。
更进一步的,步骤S4中,所涉及流控服务根据流控指令的源IP地址和/或目的IP地址查询路由表获得具体网络设备的名称。
更进一步的,所涉及流控服务根据流控指令查询路由表获得具体网络设备的名称后,进一步查询网络设备和流量分类节点,
在不具备网络设备和流量分类节点时,创建并添加网络设备到设备链表中,创建并添加流量分类节点到流量分类树中,同时,创建过滤器,实现流量导向,
在具备网络设备和流量分类节点时,直接更新网络设备和流量分类节点的参数。
更进一步的,所涉及流控服务根据流控指令设置该网络设备的流控规则时,
首先向网络设备的各连接分配额定流量,
然后在流量富裕的情况下,按照流控指令设置的优先级依次为各连接分配流量,直至各连接达到所设封顶流量或上级流量已全部分配为止。
优选的,所涉及流控服务内置多个消息队列,
其中一个消息队列接收客户端程序的请求,并形成流控指令,
另一个消息队列接收并存储该流控指令。
优选的,所涉及流控服务和所述流控规则使用共享内存保存;
流控服务具有唯一实例约束。
本发明的一种服务形式的分级流量控制方法,与现有技术相比具有的有益效果是:
本发明可以确保计算机外发流量既能在不超过网络物理限额的前提下获得额定速率,又能在网络速率富余的情况下按照优先级依序分配流量,使得各网络连接既能满足基本需求,又能协调的充分利用总体流量;无需客户端程序依赖网络管理权限,降低了安全风险。
附图说明
附图1是本发明的方法流程图。
具体实施方式
为使本发明的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本发明的技术方案进行清楚、完整的描述。
实施例一:
结合附图1,本实施例提出一种服务形式的分级流量控制方法,包括如下步骤:
步骤S1、建立流控服务,将其部署于计算机,在流控服务中标记被管理的网卡设备。
本步骤中,流控服务将被标记的网卡设备组织为二叉树链表的形式,形成设备链表,设备链表中的每个节点对应一个网卡设备。
步骤S2、客户端程序配置流控规则,同时,向流控服务发送配置流控规则的请求。
本步骤中,根据被标记网卡设备的源地址、目标地址、源端口、目的端口,客户端程序配置三级流控规则,三级流控规则包括:
基于源地址的第一级控制源端流量规则,
基于源地址和目标地址的第二级控制路由流量规则,
基于源地址、目标地址、源端口、目的端口的第三级控制连接流量规则。
步骤S3、控服务接收客户端程序的请求,并形成流控指令。具体实现时,在流控服务内置多个消息队列,通过其中一个消息队列接收客户端程序的请求,并形成流控指令,通过另一个消息队列接收并存储该流控指令。
本步骤中,流控指令的内容包含源IP地址、目的IP地址、源端口、目的端口、额定速率、封顶速率、优先级。其中,
流控指令内部统一使用128位表示源IP地址、目的IP地址,兼容IPv4和IPv6;
速率参数单位为kBps,即流控最小粒度为千字节每秒,参数类型为64位整数,即足以容纳PB级流量,满足相当长时间内的扩展要求。
优先级设计为1~10共10级,数字越小越优先分配额外内存,内部使用16位无符号整数表示优先级,具备扩展至65535级的能力。
本步骤中,基于设备链表中的每个节点对应一个网卡设备,将每个网卡设备的节点下挂一棵根据流控指令形成的流控分类树,每棵流控分类树有唯一的根节点,代表从该网卡设备发出的全部流量。
根节点、第一级控制源端流量规则的节点、第二级控制路由流量规则的节点设有过滤器,过滤器通过源地址、目标地址、源端口、目的端口的参数过滤流量导向至下级节点。下级节点除了自身速率设置外,还受上级流量控制规则的约束,即下级节点的封顶速率之和不超过父节点的封顶速率。
步骤S4、流控服务根据流控指令的源IP地址和/或目的IP地址查询路由表获得具体网卡设备的名称,随后再根据流控指令设置该网卡设备的流控规则。
本步骤中,流控服务根据流控指令查询路由表获得具体网卡设备的名称后,进一步查询网卡设备和流量分类节点,
在不具备网卡设备和流量分类节点时,创建并添加网卡设备到设备链表中,创建并添加流量分类节点到流量分类树中,同时,创建过滤器,实现流量导向;
在具备网卡设备和流量分类节点时,直接更新网卡设备和流量分类节点的参数。
本步骤中,流控服务根据流控指令设置该网卡设备的流控规则时,
首先向网卡设备的各连接分配额定流量,
然后在流量富裕的情况下,按照流控指令设置的优先级依次为各连接分配流量,直至各连接达到所设封顶流量或上级流量已全部分配为止。
本实施例具体实施过程中,具体网络连接所发数据如果低于设定速率,可以积累一定“配额”,后期有数据发送需求时,可通过消耗配额临时突破速率限制,以便尽快完成网络发送。配额耗尽后速率即回落到设定速率。
本实施例具体实施过程中,流控服务和所述流控规则使用共享内存保存,与计算机内核具有相同的持久性,即使流控服务重启后也能保持对原有流控规则的感知并继续处理新流控指令。
本实施例具体实施过程中,流控服务具有唯一实例约束,避免计算机的多个网卡设备同时启动时造成网卡上各连接的冲突。
本实施例以在Linux环境中的应用进行举例,实际上,本实施例的思想也可拓展到Unix、Windows等操作系统环境中。
综上可知,采用本发明的一种服务形式的分级流量控制方法,可以确保计算机外发流量既能在不超过网卡物理限额的前提下获得额定速率,又能在网卡速率富余的情况下按照优先级依序分配流量,使得各网卡连接既能满足基本需求,又能协调的充分利用总体流量。
以上应用具体个例对本发明的原理及实施方式进行了详细阐述,这些实施例只是用于帮助理解本发明的核心技术内容。基于本发明的上述具体实施例,本技术领域的技术人员在不脱离本发明原理的前提下,对本发明所作出的任何改进和修饰,皆应落入本发明的专利保护范围。
Claims (10)
1.一种服务形式的分级流量控制方法,其特征在于,包括如下步骤:
步骤S1、建立流控服务,在流控服务中标记被管理的网络设备,
步骤S2、客户端程序配置流控规则,同时,向流控服务发送配置流控规则的请求,
步骤S3、流控服务接收客户端程序的请求,并形成流控指令,
步骤S4、流控服务根据流控指令查询路由表获得具体网络设备的名称,随后再根据流控指令设置该网络设备的流控规则。
2.根据权利要求1所述的一种服务形式的分级流量控制方法,其特征在于,步骤S1中,所述流控服务将被标记的网络设备组织为二叉树链表的形式,形成设备链表;设备链表中的每个节点对应一个网络设备,基于步骤S3形成的流控指令,每个网络设备的节点下挂一棵根据流控指令形成的流控分类树,每棵流控分类树有唯一的根节点,代表从该网络设备发出的全部流量。
3.根据权利要求2所述的一种服务形式的分级流量控制方法,其特征在于,步骤S2中,基于被标记网络设备的源地址、目标地址、源端口、目的端口,客户端程序配置三级流控规则,三级流控规则包括:
基于源地址的第一级控制源端流量规则,
基于源地址和目标地址的第二级控制路由流量规则,
基于源地址、目标地址、源端口、目的端口的第三级控制连接流量规则。
4.根据权利要求3所述的一种服务形式的分级流量控制方法,其特征在于,所述根节点、第一级控制源端流量规则的节点、第二级控制路由流量规则的节点设有过滤器,过滤器通过源地址、目标地址、源端口、目的端口的参数过滤流量导向至下级节点,下级节点的封顶速率之和不超过父节点的封顶速率。
5.根据权利要求3所述的一种服务形式的分级流量控制方法,其特征在于,步骤S3中,所述流控指令的内容包含源IP地址、目的IP地址、源端口、目的端口、额定速率、封顶速率、优先级;其中,
所述流控指令内部统一使用128位表示源IP地址、目的IP地址,兼容IPv4和IPv6,
速率参数单位为kBps,参数类型为64位整数,
优先级设计为1~10共10级,数字越小越优先分配额外内存,内部使用16位无符号整数表示优先级,具备扩展至65535级的能力。
6.根据权利要求5所述的一种服务形式的分级流量控制方法,其特征在于,步骤S4中,所述流控服务根据流控指令的源IP地址和/或目的IP地址查询路由表获得具体网络设备的名称。
7.根据权利要求6所述的一种服务形式的分级流量控制方法,其特征在于,步骤S4中,所述流控服务根据流控指令查询路由表获得具体网络设备的名称后,进一步查询网络设备和流量分类节点,
在不具备网络设备和流量分类节点时,创建并添加网络设备到设备链表中,创建并添加流量分类节点到流量分类树中,同时,创建过滤器,实现流量导向,
在具备网络设备和流量分类节点时,直接更新网络设备和流量分类节点的参数。
8.根据权利要求6所述的一种服务形式的分级流量控制方法,其特征在于,步骤S4中,所述流控服务根据流控指令设置该网络设备的流控规则时,
首先向网络设备的各连接分配额定流量,
然后在流量富裕的情况下,按照流控指令设置的优先级依次为各连接分配流量,直至各连接达到所设封顶流量或上级流量已全部分配为止。
9.根据权利要求1-8中任一项所述的一种服务形式的分级流量控制方法,其特征在于,所述流控服务内置多个消息队列,
其中一个消息队列接收客户端程序的请求,并形成流控指令,
另一个消息队列接收并存储该流控指令。
10.根据权利要求1-8中任一项所述的一种服务形式的分级流量控制方法,其特征在于,所述流控服务和所述流控规则使用共享内存保存;
所述流控服务具有唯一实例约束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010882388.8A CN112087395B (zh) | 2020-08-28 | 2020-08-28 | 一种服务形式的分级流量控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010882388.8A CN112087395B (zh) | 2020-08-28 | 2020-08-28 | 一种服务形式的分级流量控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112087395A true CN112087395A (zh) | 2020-12-15 |
CN112087395B CN112087395B (zh) | 2022-06-24 |
Family
ID=73728310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010882388.8A Active CN112087395B (zh) | 2020-08-28 | 2020-08-28 | 一种服务形式的分级流量控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112087395B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513464A (zh) * | 2021-12-31 | 2022-05-17 | 深圳市联洲国际技术有限公司 | 流量负载均衡调度方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167445A (en) * | 1998-10-26 | 2000-12-26 | Cisco Technology, Inc. | Method and apparatus for defining and implementing high-level quality of service policies in computer networks |
CN101064637A (zh) * | 2006-04-30 | 2007-10-31 | 华为技术有限公司 | 保证操作维护数据流服务质量的方法 |
CN102075423A (zh) * | 2011-01-10 | 2011-05-25 | 中国人民解放军国防科学技术大学 | 基于硬件多级表的输出流量控制方法 |
CN106911778A (zh) * | 2017-02-27 | 2017-06-30 | 网宿科技股份有限公司 | 一种流量引导方法和系统 |
CN109246023A (zh) * | 2018-11-16 | 2019-01-18 | 锐捷网络股份有限公司 | 流量控制方法、网络设备及存储介质 |
CN109660400A (zh) * | 2018-12-24 | 2019-04-19 | 苏州思必驰信息科技有限公司 | 流控配置方法及系统 |
CN111130838A (zh) * | 2019-10-17 | 2020-05-08 | 国电南瑞科技股份有限公司 | 一种进程级服务实例动态扩展及网络带宽限制方法及装置 |
CN111490939A (zh) * | 2020-03-30 | 2020-08-04 | 苏州瑞立思科技有限公司 | 一种支持高级策略配置高性能的windows网卡驱动方法 |
-
2020
- 2020-08-28 CN CN202010882388.8A patent/CN112087395B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167445A (en) * | 1998-10-26 | 2000-12-26 | Cisco Technology, Inc. | Method and apparatus for defining and implementing high-level quality of service policies in computer networks |
CN101064637A (zh) * | 2006-04-30 | 2007-10-31 | 华为技术有限公司 | 保证操作维护数据流服务质量的方法 |
CN102075423A (zh) * | 2011-01-10 | 2011-05-25 | 中国人民解放军国防科学技术大学 | 基于硬件多级表的输出流量控制方法 |
CN106911778A (zh) * | 2017-02-27 | 2017-06-30 | 网宿科技股份有限公司 | 一种流量引导方法和系统 |
CN109246023A (zh) * | 2018-11-16 | 2019-01-18 | 锐捷网络股份有限公司 | 流量控制方法、网络设备及存储介质 |
CN109660400A (zh) * | 2018-12-24 | 2019-04-19 | 苏州思必驰信息科技有限公司 | 流控配置方法及系统 |
CN111130838A (zh) * | 2019-10-17 | 2020-05-08 | 国电南瑞科技股份有限公司 | 一种进程级服务实例动态扩展及网络带宽限制方法及装置 |
CN111490939A (zh) * | 2020-03-30 | 2020-08-04 | 苏州瑞立思科技有限公司 | 一种支持高级策略配置高性能的windows网卡驱动方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513464A (zh) * | 2021-12-31 | 2022-05-17 | 深圳市联洲国际技术有限公司 | 流量负载均衡调度方法、装置、设备及存储介质 |
CN114513464B (zh) * | 2021-12-31 | 2024-03-29 | 深圳市联洲国际技术有限公司 | 流量负载均衡调度方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112087395B (zh) | 2022-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106416132B (zh) | 使用控制器处的交换机建模接口控制网络交换机的系统和方法 | |
EP1142213B1 (en) | Dynamic assignment of traffic classes to a priority queue in a packet forwarding device | |
US8619793B2 (en) | Dynamic assignment of traffic classes to a priority queue in a packet forwarding device | |
US6980555B2 (en) | Policy change characterization method and apparatus | |
JP3734704B2 (ja) | パケット分類エンジン | |
EP3664420B1 (en) | Managing address spaces across network elements | |
JP5850131B2 (ja) | ネットワークシステム、リソース使用率改善方法 | |
US20020007360A1 (en) | Apparatus and method for classifying information received by a communications system | |
CN110505152B (zh) | 路由过滤方法、装置及电子设备 | |
EP1982481A2 (en) | Method and system for improving traffic distribution across a communication network | |
CN114070822B (zh) | 一种Kubernetes Overlay IP地址管理方法 | |
US20140122743A1 (en) | Shared interface among multiple compute units | |
US8630296B2 (en) | Shared and separate network stack instances | |
WO2018045992A1 (zh) | 地址管理方法及装置 | |
CN112087395B (zh) | 一种服务形式的分级流量控制方法 | |
CN113543234A (zh) | 端口资源预留方法、电子设备及存储介质 | |
CN116982307A (zh) | 用于在群聚基础设施中强制实施功能过滤规则的方法和计算设备 | |
CN111464443B (zh) | 基于服务功能链的报文转发方法、装置、设备及存储介质 | |
KR20210016802A (ko) | 소프트웨어 정의 네트워킹 환경에서 서버-클라이언트 기반의 네트워크 서비스를 위한 플로우 테이블을 최적화하는 방법 및 이를 위한 sdn 스위치 | |
CN112165371B (zh) | Bier自动配置管理bsl的方法、介质、设备及装置 | |
CN111294406B (zh) | 软件定义网络控制器混合映射方法 | |
CN113411211B (zh) | 一种主从集群控制方法、装置及系统 | |
CN116233014A (zh) | 一种实现容器网络中集群服务的方法及装置 | |
CN115834493A (zh) | 网络流量差异化分配方法及装置 | |
CN117336246A (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 |