CN106375130A - 基于Linux的智能带宽管理方法及系统 - Google Patents
基于Linux的智能带宽管理方法及系统 Download PDFInfo
- Publication number
- CN106375130A CN106375130A CN201610856898.1A CN201610856898A CN106375130A CN 106375130 A CN106375130 A CN 106375130A CN 201610856898 A CN201610856898 A CN 201610856898A CN 106375130 A CN106375130 A CN 106375130A
- Authority
- CN
- China
- Prior art keywords
- node
- message
- circle queue
- active ues
- bandwidth management
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- 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/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2491—Mapping quality of service [QoS] requirements between different networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6215—Individual queue per QOS, rate or priority
-
- 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
- H04L47/805—QOS or priority aware
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明揭示了基于Linux的带宽管理方法及系统,包括报文与结点绑定步骤以及报文出队列步骤,报文与结点绑定步骤包括如下过程:获取报文的内网用户IP,查询该内网用户IP对应的结点;查询到结点时,判断该结点是否位于活跃用户环形队列中,当位于活跃用户环形队列中,将报文加入该结点;当不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点;当未查询到结点时,则创建一个新的结点,同时将该结点加入活跃用户环形队列中并将报文加入该结点。本发明报文与结点的匹配容易,内网用户按照IP地址公平调度,从宏观角度来看就是所有在线用户共享带宽,即可以做到一个人在线时可以独占带宽,N个人在线时公平分配带宽。
Description
技术领域
本发明涉及带宽管理方法及系统,尤其涉及一种基于Linux的智能带宽管理方法及系统。
背景技术
企业级的网络设备限速是一个基本功能,一般情况下会为一个或一组员工设定一个带宽上限,但是客户的真实需求一般是所有员工或者一部分员工共享一个带宽,同时这些员工均匀分配带宽。
目前在Linux设备上一般使用iptables加TC实现,即限制每个用户的带宽上限,但
这种方法有一个明显缺点,即使某员工不在线他的带宽也不能被其他员工分享,同时必须
对每个员工都下一条TC规则,如果员工数目很多则规则数目也会很多,造成性能问题,同时
维护也非常困难。
发明内容
本发明的目的就是为了解决现有技术中存在的上述问题,基于Linux的QoS机制,实现一种调度方式,实现报文入、出过程,从而提供一种基于Linux的智能带宽管理方法及系统。
本发明的目的将通过以下技术方案得以实现:
基于Linux的智能带宽管理方法,包括S1,报文与结点绑定步骤以及S2,报文出队列步骤,
所述S1,报文与结点绑定步骤包括如下过程:
S11,接收报文后,获取报文的内网用户IP,并查询该内网用户IP对应的结点;
S12,当查询到结点时,判断该结点是否位于活跃用户环形队列中,当判断该结点位于所述活跃用户环形队列中,则将报文加入该结点;当判断该结点不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点;
S13,当未查询到结点时,则创建一个与该报文对应的内网用户IP匹配的新的结点并插入HASH链表,同时将该结点加入活跃用户环形队列中并将报文加入该结点。
优选的,所述的基于Linux的智能带宽管理方法,其中:每个结点对应一个内网用户IP,所有结点使用一个HASH链表存储。
优选的,所述的基于Linux的智能带宽管理方法,其中:当所述HASH链表中的结点在15分钟内没有报文到达时,将所述结点从所述HASH链表中删除。
优选的,所述的基于Linux的智能带宽管理方法,其中:当一个结点接收到一个报文时,则重新开始计算15分钟的时间。
优选的,所述的基于Linux的智能带宽管理方法,其中:所述HASH链表中的每个结点可配置报文接收量的上限,当一个结点接收报文的数量超过所述上限,超出上限部分的报文被丢弃。
优选的,所述的基于Linux的智能带宽管理方法,其中:所述S2,包括如下过程:
S21,获取待转发结点;
S22,从该结点中提取一个报文发送,并在该结点中没有报文时,将所述结点从活跃用户环形队列中移出;
S23,修改待转发结点为所述活跃用户环形队列中上述结点的下一个结点;
S24,重复S22步骤和S23步骤。
基于Linux的智能带宽管理系统,包括
报文与结点绑定单元,用于在接收报文后,获取报文的内网用户IP,并查询该内网用户IP对应的结点;当查询到结点时,判断该结点是否位于活跃用户环形队列中,当判断该结点位于所述活跃用户环形队列中,则将报文加入该结点;当判断该结点不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点;当未查询到结点时,则创建一个与该报文对应的内网用户IP匹配的新的结点并插入HASH链表,同时将该结点加入活跃用户环形队列中并将报文加入该结点;
以及,报文出队列单元,用于获取待转发结点,从该结点中提取一个报文发送,并在该结点中没有报文时,将所述结点从活跃用户环形队列中移出,修改待转发结点为所述活跃用户环形队列中上述结点的下一个结点,重复报文发送及修改待转发结点。
优选的,所述的基于Linux的智能带宽管理系统,其中,所述报文与结点绑定单元包括为每个结点分别配置的定时器。
本发明技术方案的优点主要体现在:
本发明构思精巧,过程简单,报文与结点的匹配容易,内网用户按照IP地址公平调度,所有存在报文的结点轮流发送报文,从宏观角度来看就是所有在线用户共享带宽,即可以做到一个人在线时可以独占带宽,N个人在线时公平分配带宽。
采用HASH链表存储所有结点,如此可以快速查找报文所属于的结点,因此报文入队列效率很高;报文出队列时直接从待转发结点获取报文,效率非常高;即使内网用户数目上万,此算法效率也很高,对性能影响有限。
附图说明
图1 是本发明的报文与结点绑定步骤过程示意图;
图2是本发明的报文出队列步骤过程示意图;
图3是本发明中活跃用户环形队列及按序发送结点中报文的结构示意图。
具体实施方式
本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而形成的技术方案,均落在本发明要求保护的范围之内。
本发明揭示的基于Linux的智能带宽管理系统,包括报文与结点绑定单元及报文出队列单元。
所述报文与结点绑定单元用于在接收报文后,获取报文的内网用户IP,并查询该内网用户IP对应的结点,当查询到存在与该内网用户IP匹配的结点时,判断该结点是否位于活跃用户环形队列中,当判断该结点位于所述活跃用户环形队列中,则将报文加入该结点;当判断该结点不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点;当未查询到结点时,则创建一个与该报文对应的内网用户IP匹配的新的结点,同时将该结点插入HASH链表以及加入活跃用户环形队列中,并将报文加入该结点,此时新的结点中只有一个报文。
其中,每个结点对应一个内网用户IP,每个结点用于存储与该结点对应的内网用户IP所发出的报文,所有结点使用一个HASH链表存储,以方便报文快速查询;而所述活跃用户环形队列是将所有发出报文的在线用户的内网用户IP对应的结点按照指定顺序形成的按照上述顺序发送报文的循环链,以附图3为例,结点B=>C=>F=>E=>D=>H=>K=>B形成了一个活跃用户环形队列,所述活跃用户环形队列中的每个结点均有待发送报文,所有拥有待发送报文的结点均在“活跃用户环形队列”中,即活跃用户环形队列和所有拥有待发送报文结点集合完全相同;如果只有一个用户在线并发送报文,则所述活跃用户环形队列中只有该在线用户对应的节点。
所述报文出队列单元以及用于获取待转发结点,从该结点中提取一个报文发送,并在该结点中没有报文时,将所述结点从活跃用户环形队列中移出,修改待转发结点为所述活跃用户环形队列中上述结点的下一个结点,重复报文发送及修改待转发结点。
其中,所述待转发结点由待转发结点指针确定,即待转发结点指针指向的结点就是当前要发送报文的结点,当某一结点发送过一次报文后,则所述待转发结点指针则指向上述活跃用户环形队列中按照顺序确定的上述结点后续的一个结点,并且,若一个结点中没有报文需要发送,则该结点被移出所述活跃用户环形队列,如此就能够保证内网用户轮流发送报文,从宏观角度来看不同用户共享带宽。
以上述的活跃用户环形队列为例,则当前待发送报文的结点为B,即待发送报文指针指向结点B,当结点B发送一个报文后,待转发结点指针指向结点C,并从结点C中提取一个报文并发送,且待转发结点指针指向结点F,从而依照活跃用户环形队列中的结点顺序发送报文,并且若结点B在发送一个报文后已没有待转发报文,则将所述结点B从上述的活跃用户环形队列中移出。
因此,如果当前总带宽是20Mbps,如果仅有一个用户在线,则此用户独享20Mbps,如果有两个用户则分别占用10Mbps,如果有10个用户则分别占用2Mbps,即根据内网用户的在线数目智能分配带宽。
并且,所述报文与结点绑定单元包括为每个结点分别配置的定时器,用于计算每个结点未收到报文的时间,以实现周期性释放过期结点,当所述HASH链表中的某个结点在15分钟内没有报文到达时,将所述结点从所述HASH链表中删除,在具体实现过程中,当一个结点接收到一个报文时,就更改定时器的到期时间为当前时间15分钟后,即,每接收到一个报文,就重新开始计算15分钟的时间。
基于Linux的智能带宽管理系统,具体实现时需要在接口上进行调度,即对于lan/wan都需要实施此系统的过程。
并且,所述HASH链表中的每个结点可配置报文接收量的上限,当一个结点接收的报文数量超过所述上限,超出上限部分的报文被丢弃。
本发明进一步揭示了基于Linux的智能带宽管理系统的管理方法,包括S1,报文与结点绑定步骤以及S2,报文出队列步骤。
所述S1,报文与结点绑定步骤,如附图1所示,包括如下过程:
S11,接收报文后,获取报文的内网用户IP,并查询该内网用户IP对应的结点。
S12,当查询到结点时,判断该结点是否位于活跃用户环形队列中,当判断该结点位于所述活跃用户环形队列中,则将报文加入该结点;当判断该结点不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点。
S13,当未查询到结点时,则创建一个与该报文对应的内网用户IP匹配的新的结点并插入HASH链表,同时将该结点加入活跃用户环形队列中并将报文加入该结点。
所述S2,报文出队列步骤,如附图2所示,包括如下过程:
S21,获取待转发结点;
S22,从该结点中提取一个报文发送,并在该结点中没有报文时,将所述结点从活跃用户环形队列中移出;
S23,修改待转发结点为所述活跃用户环形队列中上述结点的下一个结点;
S24,重复S22步骤和S23步骤。
当然上述过程中,每个步骤的顺序号并不造成对本发明的唯一限定,例如,报文与结点的绑定以及报文的发送过程可能是同时进行,也可能是交叉进行。
本发明尚有多种实施方式,凡采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。
Claims (7)
1.基于Linux的智能带宽管理方法,其特征在于:包括S1,报文与结点绑定步骤以及S2,报文出队列步骤,所述S1,报文与结点绑定步骤包括如下过程:
S11,接收报文后,获取报文的内网用户IP,并查询该内网用户IP对应的结点;其中,每个结点对应一个内网用户IP,所有结点使用一个HASH链表存储;
S12,当查询到结点时,判断该结点是否位于活跃用户环形队列中,当判断该结点位于所述活跃用户环形队列中,则将报文加入该结点;当判断该结点不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点;
S13,当未查询到结点时,则创建一个与该报文对应的内网用户IP匹配的新的结点并插入HASH链表,同时将该结点加入活跃用户环形队列中并将报文加入该结点。
2.根据权利要求1所述的基于Linux的智能带宽管理方法,其特征在于:当所述HASH链表中的结点在15分钟内没有报文到达时,将所述结点从所述HASH链表中删除。
3.根据权利要求2所述的基于Linux的智能带宽管理方法,其特征在于:当一个结点接收到一个报文时,则重新开始计算15分钟的时间。
4.根据权利要求1所述的基于Linux的智能带宽管理方法,其特征在于:所述HASH链表中的每个结点可配置报文接收量的上限,当一个结点接收报文的数量超过所述上限,超出上限部分的报文被丢弃。
5.根据权利要求1所述的基于Linux的智能带宽管理方法,其特征在于:所述S2,报文出队列步骤包括如下过程:
S21,获取待转发结点;
S22,从该结点中提取一个报文发送,并在该结点中没有报文时,将所述结点从活跃用户环形队列中移出;
S23,修改待转发结点为所述活跃用户环形队列中上述结点的下一个结点;
S24,重复S22步骤和S23步骤。
6.基于Linux的智能带宽管理系统,其特征在于:包括
报文与结点绑定单元,用于在接收报文后,获取报文的内网用户IP,并查询该内网用户IP对应的结点;当查询到结点时,判断该结点是否位于活跃用户环形队列中,当判断该结点位于所述活跃用户环形队列中,则将报文加入该结点;当判断该结点不在活跃用户环形队列中,将该结点加入活跃用户环形队列中,并将报文加入该结点;当未查询到结点时,则创建一个与该报文对应的内网用户IP匹配的新的结点并插入HASH链表,同时将该结点加入活跃用户环形队列中并将报文加入该结点;
以及,报文出队列单元,用于获取待转发结点,从该结点中提取一个报文发送,并在该结点中没有报文时,将所述结点从活跃用户环形队列中移出,修改待转发结点为所述活跃用户环形队列中上述结点的下一个结点,重复报文发送及修改待转发结点。
7.根据权利要求6所述的基于Linux的智能带宽管理系统,其特征在于:所述报文与结点绑定单元包括为每个结点分别配置的定时器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610856898.1A CN106375130A (zh) | 2016-09-28 | 2016-09-28 | 基于Linux的智能带宽管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610856898.1A CN106375130A (zh) | 2016-09-28 | 2016-09-28 | 基于Linux的智能带宽管理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106375130A true CN106375130A (zh) | 2017-02-01 |
Family
ID=57898372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610856898.1A Pending CN106375130A (zh) | 2016-09-28 | 2016-09-28 | 基于Linux的智能带宽管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106375130A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009646A (zh) * | 2006-12-22 | 2007-08-01 | 清华大学 | 按每流排队的物理队列动态共享装置 |
CN101184016A (zh) * | 2007-12-10 | 2008-05-21 | 华中科技大学 | 混杂式对等网络环境下的通用资源管理方法 |
CN101964752A (zh) * | 2010-10-19 | 2011-02-02 | 杨忠明 | 一种动态调节资源分配的宽带网络接入方法 |
CN102624625A (zh) * | 2012-03-13 | 2012-08-01 | 网经科技(苏州)有限公司 | 大用户量的QoS公平调度方法 |
-
2016
- 2016-09-28 CN CN201610856898.1A patent/CN106375130A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009646A (zh) * | 2006-12-22 | 2007-08-01 | 清华大学 | 按每流排队的物理队列动态共享装置 |
CN101184016A (zh) * | 2007-12-10 | 2008-05-21 | 华中科技大学 | 混杂式对等网络环境下的通用资源管理方法 |
CN101964752A (zh) * | 2010-10-19 | 2011-02-02 | 杨忠明 | 一种动态调节资源分配的宽带网络接入方法 |
CN102624625A (zh) * | 2012-03-13 | 2012-08-01 | 网经科技(苏州)有限公司 | 大用户量的QoS公平调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103309738B (zh) | 用户作业调度方法及装置 | |
KR102271639B1 (ko) | Avb 스트림의 모듈식 배향을 위한 방법 및 디바이스 | |
CN103618679A (zh) | 服务质量控制方法、装置和系统 | |
CN105978940B (zh) | 一种智能穿戴设备的好友添加方法及系统 | |
CN102523179B (zh) | 基于即时通讯的话题群组业务实现方法 | |
WO2011101741A3 (en) | Handling of expired message for generation of policy and charging rules node | |
CN103152284A (zh) | 一种路由器多径输出智能负载均衡的方法及路由器 | |
CN103957267A (zh) | 一种多网络多任务多节点数据分发方法 | |
CN109657830A (zh) | 一种会议室预约方法和装置 | |
CN105635124B (zh) | 流量控制方法和装置 | |
Kim et al. | Enhanced industrial message protocol for real-time IoT platform | |
CN103368838B (zh) | 一种基于加权社交图的容迟网络转发方法 | |
CN117596618A (zh) | 适用于5g全连接工厂的确定性upf设备 | |
CN106375130A (zh) | 基于Linux的智能带宽管理方法及系统 | |
CN100583817C (zh) | 一种数字家庭网络QoS保障的方法 | |
CN107402826B (zh) | 一种以异步方式进行远程过程调用的方法及装置 | |
WO2012159535A1 (zh) | 一种实现用户信息共享的即时通讯系统及方法 | |
Wang | SIP overload control: a backpressure-based approach | |
CN102638359A (zh) | 一种视频会议来宾邀请方法及系统 | |
CN105429820B (zh) | 基于软件定义网络的深度包检测系统及方法 | |
CN105049255B (zh) | 一种网元数据同步的方法及其装置 | |
CN103929487B (zh) | 主题包更新方法、系统和装置 | |
CN110502342A (zh) | 一种间歇网络环境下机动边缘信息服务网络 | |
Mohsenian-Rad et al. | Inter-session network coding with strategic users: A game-theoretic analysis of the butterfly network | |
CN102624625A (zh) | 大用户量的QoS公平调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170201 |