CN105991467B - 一种报文转发方法及装置 - Google Patents

一种报文转发方法及装置 Download PDF

Info

Publication number
CN105991467B
CN105991467B CN201510178745.1A CN201510178745A CN105991467B CN 105991467 B CN105991467 B CN 105991467B CN 201510178745 A CN201510178745 A CN 201510178745A CN 105991467 B CN105991467 B CN 105991467B
Authority
CN
China
Prior art keywords
host
token bucket
bandwidth
token
capacity
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
CN201510178745.1A
Other languages
English (en)
Other versions
CN105991467A (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.)
Hangzhou DPTech Technologies Co Ltd
Original Assignee
Hangzhou DPTech Technologies 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 Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN201510178745.1A priority Critical patent/CN105991467B/zh
Publication of CN105991467A publication Critical patent/CN105991467A/zh
Application granted granted Critical
Publication of CN105991467B publication Critical patent/CN105991467B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种报文转发方法及装置,所述方法应用于网关,所述方法包括:收到主机发送的报文时,查找所述主机的保证带宽;为所述主机分配令牌桶,所述令牌桶的容量小于等于所述主机的保证带宽;根据所述令牌桶对所述报文进行转发。因此实现对主机的带宽保证,从而提高了令牌桶的实用性。

Description

一种报文转发方法及装置
技术领域
本发明涉及网络技术领域,尤其涉及一种报文转发方法及装置。
背景技术
随着网技术的发展和网络应用的普及,人们对网络的要求也相应提高。很多用户为了享受更流畅的网络环境,会支付相应的金额从运营商那里获得保证带宽,来提高自己的网络质量。
令牌桶算法是速率限制中最常使用的一种算法。令牌桶算法通常用来控制发送到网络上的流量大小,并允许突发数据的发送。令牌桶中的每一个令牌都相当于一个字节。如果令牌桶中的令牌数大于等于流量字节数时,则允许发送该流量;反之,则不允许发送流量。目前,运营商能够在出口网关上面利用令牌桶进行流量限制,但是无法通过令牌桶实现对用户的带宽保证,因此导致令牌桶的实用性较差。
发明内容
有鉴于此,本发明提供一种报文转发方法及装置,来解决无法通过令牌桶实现用户的带宽报文的问题。
具体地,本发明是通过如下技术方案实现的:
一种报文转发方法,所述方法应用于网关,所述方法包括:
收到主机发送的报文时,查找所述主机的保证带宽;
为所述主机分配令牌桶,所述令牌桶的容量小于等于所述主机的保证带宽;
根据所述令牌桶对所述报文进行转发。
进一步的,所述方法还包括:
按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整。
进一步的,所述按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整,包括:
按照预设时间周期记录所述主机使用所述令牌桶的令牌数;
当令牌数逐渐增大时,增加所述令牌桶的容量,并保证所述令牌桶的容量小于等于所述主机的保证带宽;
当令牌数逐渐减小时,减少所述令牌桶的容量。
进一步的,所述方法还包括:
监测所述主机的会话状态;
当所述主机的所有会话均结束时,删除所述令牌桶。
进一步的,所述方法还包括:
未查找到所述主机的保证带宽时,为所述主机分配令牌桶,所述令牌桶的容量小于等于剩余带宽,所述剩余带宽等于总带宽减去所有保证带宽。
基于相同的构思,本发明还提供一种报文转发装置,所述装置应用于网关,所述装置包括:
查找单元,用于在收到主机发送的报文时,查找所述主机的保证带宽;
第一分配单元,用于为所述主机分配令牌桶,所述令牌桶的容量小于等于所述主机的保证带宽;
转发单元,用于根据所述令牌桶对所述报文进行转发。
进一步的,所述装置还包括:
调整单元,用于按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整。
进一步的,所述调整单元,具体用于:
按照预设时间周期记录所述主机使用所述令牌桶的令牌数;
当令牌数逐渐增大时,增加所述令牌桶的容量,并保证所述令牌桶的容量小于等于所述主机的保证带宽;
当令牌数逐渐减小时,减少所述令牌桶的容量。
进一步的,所述装置还包括:
删除单元,用于监测所述主机的会话状态,当所述主机的所有会话均结束时,删除所述令牌桶。
进一步的,所述装置还包括:
第二分配单元,用于在未查找到所述主机的保证带宽时,为所述主机分配令牌桶,所述令牌桶的容量小于等于剩余带宽,所述剩余带宽等于总带宽减去所有保证带宽。
由此可见,本发明可以根据主机的保证带宽为该主机分配相应容量的令牌桶,并根据该令牌桶对该主机发送的报文进行转发,因此实现对主机的带宽保证,从而提高了令牌桶的实用性。
附图说明
图1是本发明一种示例性实施方式中的组网架构图;
图2是本发明一种示例性实施方式中的一种报文转发方法的处理流程图;
图3是本发明一种示例性实施方式中的另一种报文转发方法的处理流程图;
图4是本发明一种示例性实施方式中报文转发装置所在的网关的硬件结构图;
图5是本发明一种示例性实施方式中的一种报文转发装置的逻辑结构图。
具体实施方式
请参见图1,是本发明一种示例性实施方式中的组网架构图,其中运营商的出口网关设置在网络边缘,主机A和主机B均连接该网关,并可以通过该网关访问外网。假设主机A的用户从该运营商处购买了50M的保证带宽,因此该运营商应该保证主机A在使用网络时的带宽流量。而主机B的用户未购买保证带宽,因此运营商无需对主机B的带宽流量进行保证。该网关上配置有令牌桶机制,运营商可以通过该网关的令牌桶机制对发送的报文进行限速。由于现有技术中每个主机被分配的令牌桶配置均相同,因此该网关无法通过令牌桶在限速的同时对主机A进行带宽保证,导致令牌桶的实用性较差。
为了解决上述问题,本发明可以根据主机的保证带宽为该主机分配相应容量的令牌桶,并根据该令牌桶对该主机发送的报文进行转发,因此实现对主机的带宽保证,从而提高了令牌桶的实用性。
请参考图2,是本发明一种示例性实施方式中的一种报文转发方法的处理流程图,该方法应用于网关,所述方法包括:
步骤201、收到主机发送的报文时,查找所述主机的保证带宽;
在本实施例中,当网关收到主机发送的报文时,可以根据该报文获取该主机的身份标识,例如IP地址,并在运营商的保证用户的记录中查找该主机对应的保证带宽。
步骤202、为所述主机分配令牌桶,所述令牌桶的容量小于等于所述主机的保证带宽;
根据主机的保证带宽为该主机分配令牌桶,其中该令牌桶的容量应小于等于该主机的保证带宽。在可选的实施例中,考虑到用户刚开始发送的报文通常不会占用太多带宽,因此可以将令牌桶的容量设置成该主机保证带宽的一半,以使用户可以在刚开始发送报文时获取可用的带宽流量,并且不因占用大量带宽而造成网络资源的浪费。
步骤203、根据所述令牌桶对所述报文进行转发。
为该主机分配好相应的令牌桶后,网关可以根据该令牌桶的容量对该主机发送的报文进行转发。由于令牌桶一般会通过回填速率和容量来控制报文的转发速率,当回填速率相同时,容量大的令牌桶其转发的速率就高,因此可以保证该主机的报文发送速率与其保证带宽成正比。
由此可见,本发明可以根据主机的保证带宽为该主机分配相应容量的令牌桶,并根据该令牌桶对该主机发送的报文进行转发,因此实现对主机的带宽保证,从而提高了令牌桶的实用性。
在本发明可选的实施例中,网关可以按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整。具体来说:网关可以按照预设时间周期记录所述主机使用所述令牌桶的令牌数,例如设置一个1秒的填桶定时器,当令牌桶初始化后开启定时器,来记录每一秒该主机使用该令牌桶的令牌数。
当通过记录发现令牌数逐渐增大时,说明该主机发送的报文数量逐渐增多,进而说明其需要更多的带宽,因此网关可以增加所述主机的令牌桶的容量上限,并保证所述令牌桶的容量小于等于所述主机的保证带宽。在优选的实施例中,网关可以每个周期以保证带宽的三十二分之一来增加该令牌桶的容量上限,直到增加到令牌桶的容量上限与保证带宽相同为止。至此,网关可以根据用户的带宽实际使用需求来逐步增加令牌桶的容量,从而保证报文的转发效率不受影响。容量的增加量可以视实际情况而定,此处不做限制。
相反的,当发现令牌数逐渐减小时,说明该主机发送的报文数量逐渐减少,进而说明其需要的带宽逐渐变少,因此网关可以减少所述令牌桶的容量上限,具体减少量可以与先前的增加量相同。因此可以使被保证的用户主机在带宽使用效率较低的时候,减少该用户的带宽占用,从而节省网络带宽资源。
在本发明可选的实施例中,网关还可以实时监测所述主机的会话状态。当该主机的所有会话均结束时,说明该主机无需使用带宽,因此可以将其对应的令牌桶删除。从而可以进一步节省网络带宽资源。
另外,本发明对于未承诺保证带宽的主机,或者是未被查找到保证带宽的主机,也会分配相应的令牌桶。其令牌桶的容量一般小于等于剩余带宽,所谓的剩余带宽就是该网关可用的总带宽减去所有已知的保证带宽的结果。对于未承诺保证带宽的用户主机发送的报文,本发明的网关可以根据其对应的令牌桶进行报文转发,并且保证其不会对保证带宽产生影响。
为使本发明的目的、技术方案及优点更加清楚明白,以下基于图1的组网架构,对本发明所述方案作进一步地详细说明。
假设网关的可用带宽为150M,主机A的保证带宽为100M,主机B没有保证带宽,当主机A和主机B同时通过该网关发送报文时,该网关的处理过程如图3所示,其中包括:
步骤301、获取主机的保证带宽;
网关接收到主机A和主机B发送的报文后,分别获取报文中的主机A对应的IP地址IPA,以及主机B对应的IP地址IPB。通过本地存储的保证带宽表查找IPA、IPB分别对应的保证带宽。根据查找可知IPA的保证带宽为100M,IPB未配置保证带宽。
步骤302、根据保证带宽为该主机分配令牌桶;
网关根据查找到的保证带宽分别为主机A和主机B分配令牌桶。其中,主机A的令牌桶容量为主机A的保证带宽的一半,即50M;主机B的令牌桶容量为总带宽减去主机A保证带宽的剩余带宽,即150-100=50M。另外,网关可为主机A的令牌桶设置一个1秒定时器,用来记录主机A使用令牌的数量变化情况。
步骤303、根据令牌桶转发报文;
网关根据主机A和主机B的令牌桶分别转发主机A和主机B发送的报文。转发报文的同时,网关将主机A的1秒定时器开启。
步骤304、记录1秒内主机使用的令牌数;
定时器开启后,记录主机A每1秒内令牌桶消耗的令牌数。
步骤305、根据令牌数调整主机的令牌桶容量,转步骤303。
当令牌数逐渐增大时,主机A的令牌桶容量S=N*t+50≤100。其中,50为该令牌桶的初始容量大小,t为时间,每过一秒t增加1,N为主机A保证带宽的三十二分之一。通过上述公式,主机A的令牌桶会以初始容量50M为基准,每隔一秒容量增加(100/32)M,直到等于其保证带宽100M。之后,可根据容量调整后的令牌桶进行转发报文。
由此可见,本发明可以根据主机的保证带宽为该主机分配相应容量的令牌桶,并根据该令牌桶对该主机发送的报文进行转发,因此实现对主机的带宽保证,从而提高了令牌桶的实用性。
基于相同的构思,本发明还提供一种报文转发装置,所述装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,本发明的报文转发装置作为一个逻辑意义上的装置,是通过其所在网关的CPU读取存储器中对应的计算机程序指令后运行而成。
请参考图4及图5,是本发明一种示例性实施方式中的一种报文转发装置500,所述装置应用于网关,所述装置基本运行环境包括CPU,存储器以及其他硬件,从逻辑层面上来看,所述装置500包括:
查找单元501,用于在收到主机发送的报文时,查找所述主机的保证带宽;
第一分配单元502,用于为所述主机分配令牌桶,所述令牌桶的容量小于所述主机的保证带宽;
转发单元503,用于根据所述令牌桶对所述报文进行转发。
可选的,所述装置还包括:
调整单元504,用于按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整。
可选的,所述调整单元504,具体用于:
按照预设时间周期记录所述主机使用所述令牌桶的令牌数;
当令牌数逐渐增大时,增加所述令牌桶的容量,并保证所述令牌桶的容量小于等于所述主机的保证带宽;
当令牌数逐渐减小时,减少所述令牌桶的容量。
可选的,所述装置还包括:
删除单元505,用于监测所述主机的会话状态,当所述主机的所有会话均结束时,删除所述令牌桶。
可选的,所述装置还包括:
第二分配单元506,用于在未查找到所述主机的保证带宽时,为所述主机分配令牌桶,所述令牌桶的容量小于等于剩余带宽,所述剩余带宽等于总带宽减去所有保证带宽。
综上所述,本发明可以根据主机的保证带宽为该主机分配相应容量的令牌桶,并根据该令牌桶对该主机发送的报文进行转发,因此实现对主机的带宽保证,从而提高了令牌桶的实用性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (6)

1.一种报文转发方法,其特征在于,所述方法应用于网关,所述方法包括:
收到主机发送的报文时,查找所述主机的保证带宽;
为所述主机分配令牌桶,所述令牌桶的容量小于等于所述主机的保证带宽;
根据所述令牌桶对所述报文进行转发;
按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整,具体包括:
按照预设时间周期记录所述主机使用所述令牌桶的令牌数;当令牌数逐渐增大时,增加所述令牌桶的容量,并保证所述令牌桶的容量小于等于所述主机的保证带宽;当令牌数逐渐减小时,减少所述令牌桶的容量。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
监测所述主机的会话状态;
当所述主机的所有会话均结束时,删除所述令牌桶。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
未查找到所述主机的保证带宽时,为所述主机分配令牌桶,所述令牌桶的容量小于等于剩余带宽,所述剩余带宽等于总带宽减去所有保证带宽。
4.一种报文转发装置,其特征在于,所述装置应用于网关,所述装置包括:
查找单元,用于在收到主机发送的报文时,查找所述主机的保证带宽;
第一分配单元,用于为所述主机分配令牌桶,所述令牌桶的容量小于等于所述主机的保证带宽;
转发单元,用于根据所述令牌桶对所述报文进行转发;
调整单元,用于按照预设时间周期记录所述主机使用所述令牌桶的令牌数,根据所述令牌数对所述令牌桶的容量进行调整;
进一步的,所述调整单元,具体用于:按照预设时间周期记录所述主机使用所述令牌桶的令牌数;当令牌数逐渐增大时,增加所述令牌桶的容量,并保证所述令牌桶的容量小于等于所述主机的保证带宽;当令牌数逐渐减小时,减少所述令牌桶的容量。
5.根据权利要求4所述的装置,其特征在于,所述装置还包括:
删除单元,用于监测所述主机的会话状态,当所述主机的所有会话均结束时,删除所述令牌桶。
6.根据权利要求4所述的装置,其特征在于,所述装置还包括:
第二分配单元,用于在未查找到所述主机的保证带宽时,为所述主机分配令牌桶,所述令牌桶的容量小于等于剩余带宽,所述剩余带宽等于总带宽减去所有保证带宽。
CN201510178745.1A 2015-04-15 2015-04-15 一种报文转发方法及装置 Active CN105991467B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510178745.1A CN105991467B (zh) 2015-04-15 2015-04-15 一种报文转发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510178745.1A CN105991467B (zh) 2015-04-15 2015-04-15 一种报文转发方法及装置

Publications (2)

Publication Number Publication Date
CN105991467A CN105991467A (zh) 2016-10-05
CN105991467B true CN105991467B (zh) 2019-05-07

Family

ID=57039942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510178745.1A Active CN105991467B (zh) 2015-04-15 2015-04-15 一种报文转发方法及装置

Country Status (1)

Country Link
CN (1) CN105991467B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110380986B (zh) * 2019-07-23 2022-05-10 中南民族大学 基于Zuul的流量限制方法、装置、设备及存储介质
CN114172848B (zh) * 2021-11-18 2024-02-09 新华三技术有限公司合肥分公司 通信方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6373824B1 (en) * 2000-12-29 2002-04-16 Intel Corporation Network traffic specification
CN1835447A (zh) * 2005-03-16 2006-09-20 华为技术有限公司 一种数据流量约束控制的实现方法
CN101557348A (zh) * 2009-05-25 2009-10-14 杭州华三通信技术有限公司 一种基于令牌桶的报文转发方法及装置
CN101674247A (zh) * 2009-10-21 2010-03-17 中兴通讯股份有限公司 一种对业务流量进行监管的方法及其装置
CN102082693A (zh) * 2011-02-15 2011-06-01 中兴通讯股份有限公司 网络流量监管方法及装置
CN102118269A (zh) * 2011-02-28 2011-07-06 华为技术有限公司 一种令牌发放方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7627675B2 (en) * 2003-05-01 2009-12-01 Cisco Technology, Inc. Methods and devices for regulating traffic on a network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6373824B1 (en) * 2000-12-29 2002-04-16 Intel Corporation Network traffic specification
CN1835447A (zh) * 2005-03-16 2006-09-20 华为技术有限公司 一种数据流量约束控制的实现方法
CN101557348A (zh) * 2009-05-25 2009-10-14 杭州华三通信技术有限公司 一种基于令牌桶的报文转发方法及装置
CN101674247A (zh) * 2009-10-21 2010-03-17 中兴通讯股份有限公司 一种对业务流量进行监管的方法及其装置
CN102082693A (zh) * 2011-02-15 2011-06-01 中兴通讯股份有限公司 网络流量监管方法及装置
CN102118269A (zh) * 2011-02-28 2011-07-06 华为技术有限公司 一种令牌发放方法和系统

Also Published As

Publication number Publication date
CN105991467A (zh) 2016-10-05

Similar Documents

Publication Publication Date Title
CN106412628B (zh) 一种带宽调整方法及相关设备
CN104038442B (zh) 一种带宽分配的方法及路由器
Feng et al. Provisioning on-line games: A traffic analysis of a busy counter-strike server
US7933274B2 (en) Quality of service in a home network
CN107431719B (zh) 响应abr客户端的工作循环而用于管理带宽的系统和方法
US20040095949A1 (en) System and method for receive queue provisioning
US11582146B2 (en) High-quality adaptive bitrate video through multiple links
US20050091395A1 (en) Method and system for transferring data files
CN118433113A (zh) 基于接收方的精密拥塞控制
WO2015096692A1 (zh) 数据接收流量控制方法及其系统、计算机存储介质
EP2362589A1 (en) Priority and source aware packet memory reservation and flow control
US7991905B1 (en) Adaptively selecting timeouts for streaming media
CN109995668B (zh) 流量控制方法及装置、存储介质
US20120303795A1 (en) Qos control in wireline subscriber management
CN105898388A (zh) 一种节点下载调度方法和装置
CN101394362A (zh) 基于流分片的对多核网络处理器进行负载均衡的方法
CN105991467B (zh) 一种报文转发方法及装置
CN107222358A (zh) 包每秒流量监管方法及装置
US20130262625A1 (en) Pipelining for parallel network connections to transmit a digital content stream
CN105991456A (zh) 一种OpenFlow交换机、网络系统及带宽共享方法
CN103905327B (zh) 一种基于流状态信息的内容中心网络拥塞控制方法及系统
CN109428842A (zh) 一种QoS信息传送方法和装置
US20130311668A1 (en) Methods And Systems For Providing Fairness And Stability To Video Streams
CN103152649B (zh) 一种流媒体分发传输分级别自动减帧控制方法
CN103532868B (zh) 电力系统网络带宽和流量控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Binjiang District and Hangzhou city in Zhejiang Province Road 310051 No. 68 in the 6 storey building

Applicant after: Hangzhou Dipu Polytron Technologies Inc

Address before: Binjiang District and Hangzhou city in Zhejiang Province Road 310051 No. 68 in the 6 storey building

Applicant before: Hangzhou Dipu Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant