CN1412999A - 网络设备中带流量控制的快速分发网帧的方法 - Google Patents

网络设备中带流量控制的快速分发网帧的方法 Download PDF

Info

Publication number
CN1412999A
CN1412999A CN 02117842 CN02117842A CN1412999A CN 1412999 A CN1412999 A CN 1412999A CN 02117842 CN02117842 CN 02117842 CN 02117842 A CN02117842 A CN 02117842A CN 1412999 A CN1412999 A CN 1412999A
Authority
CN
China
Prior art keywords
frame
ethernet
ethernet frame
interface
network
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
Application number
CN 02117842
Other languages
English (en)
Other versions
CN1192577C (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN 02117842 priority Critical patent/CN1192577C/zh
Publication of CN1412999A publication Critical patent/CN1412999A/zh
Application granted granted Critical
Publication of CN1192577C publication Critical patent/CN1192577C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

本发明涉及一种网络设备中带流量控制的快速分发网帧的方法。包括:对于网络设备接收的网帧,首先,根据网帧的入接口信息将其计入对应的虚拟接口队列,并调整与该虚拟接口队列对应的网络设备接口的工作状态;然后,将网帧加入相应的协议队列进行分析处理后取出并分发,并对该网帧对应的虚拟接口队列中的网帧总量进行调整,同时调整与该虚拟接口队列对应的网络设备接口的工作状态。本发明可避免路由器因流量超过自身的处理能力而使其无法正常工作,提高了路由器在大流量数据长时间冲击下的稳定性。同时,本发明还可以减少对以太网帧进行分发过程中的处理环节,增加网络设备对以太网帧的分发速度,从而提高路由器的处理速度。

Description

网络设备中带流量控制的快速分发网帧的方法
技术领域
本发明涉及一种网络数据传输技术,尤其涉及一种网络设备中带流量控制的快速分发网帧的方法。
背景技术
以太网协议属于链路层协议,它在接收来自以太网物理层的以帧为单位的数据后,对其进行处理并分发到网络层或其他链路层协议模块。其中,以太网链路层对以太网帧的处理和分发方式将会影响路由器对数据的处理速度;而且当以太网上的以“帧/秒”为单位的流量超过了路由器的处理能力时,路由器需要进行自我保护,否则会产生不可预料的后果,如报文传输速率降低、出现丢包现象等。所以如何对以太网帧进行快速分发及对以太网接口实行流量控制是决定路由器基本性能的重要因素。
目前技术中,处理分发以太网帧的过程主要有两种:
一种处理过程如图1所示,该方法在每个以太网接口都设有一个接收队列,以对以太网接口接收的以太网帧进行流量统计,进而便于路由器进行流量控制,然后,该以太网帧再加入相应的协议队列。这种处理方法使每个以太网帧到达协议层之前必须入两次队列,产生两次软件中断,因此,增加了以太网帧的处理环节,影响了以太网帧的分发速度。
另一种以太网帧的处理过程如图2所示,相对于上述方法,该方法没有针对以太网接口的接收队列,而是直接将分析后的以太网帧加入协议队列;每个以太网帧到达协议层之前只要入一次队列,产生一次软件中断。虽然该方法没有增加以太网帧的处理环节,但却无法实现对以太网接口进行可靠的流量控制,进而不能有效保护路由器,使之不处于超负荷工作状态。
发明内容
本发明的目的是提供一种网络设备中带流量控制的快速分发网帧的方法,从而使路由器等网络设备可在正常工作状态下将从以太网接口接收的以太网帧进行快速分发。
本发明的目的是这样实现的:网络设备中带流量控制的快速分发网帧的方法包括如下步骤:
(1)网络设备接收网帧;
(2)将该网帧计入对应的虚拟接口队列,并根据需要调整与该虚拟接口队列对应的网络设备接口的工作状态;
(3)根据网帧的协议类型将其加入相应的协议队列;
(4)将该网帧进行分析处理后从协议队列中取出并分发;
(5)对该网帧对应的虚拟接口队列中的网帧总量进行调整,并根据需要调整与该虚拟接口队列对应的网络设备接口的工作状态。
所述步骤(1)中的网络设备为路由器的以太网设备,所接收的网帧为以太网帧,步骤(5)中的网帧总量为以太网帧总量。
所述的步骤(2)具体步骤为:
(21)读取以太网帧的入接口信息;
(22)根据该以太网帧的入接口信息确定与其对应的虚拟接口队列;
(23)判断虚拟接口队列中的以太网帧的总量是否大于设定的关阈值;
(24)如果大于设定的关阈值,则丢弃该以太网帧,并禁止网络设备中该虚拟接口队列对应的以太网接口继续接收以太网帧;
(25)如果小于设定的阈值,则允许该以太网帧加入虚拟接口队列,并将该虚拟接口队列中的以太网帧的总量加1。
所述的步骤(5)具体步骤为:
(51)确定所分发的以太网帧的入接口信息;
(52)根据该入接口信息确定与该以太网帧对应的虚拟接口队列;
(53)将该虚拟接口队列中的以太网帧的总量减1;
(54)判断该虚拟接口队列中的以太网帧总量是否小于设定的开阈值,如果小于设定的开阈值,则令该以太网接口为允许接收以太网帧状态,否则,不做处理。
所述的虚拟接口队列为针对网络设备的以太网接口所创建的计数器。
步骤(3)所述的将以太网帧加入相应的协议队列是将结构形式为MBUF(一种存贮数据信息的数据结构)的以太网帧加入相应的协议队列。
MBUF结构的以太网帧中保存着以太网帧的内容及以太网帧的入接口信息。
步骤(5)中的以太网帧总量是指从以太网接口接收的并且被加入到各协议队列的,但还未从协议队列中取出的以太网帧总量。
由上述技术方案可以看出,本发明针对路由器等网络设备的以太网接口建立了一个虚拟接口队列,利用该虚拟接口队列对从该以太网接口接收的以太网帧进行流量统计,使路由器可以根据自身的处理能力控制以太网帧始终处于合理的流量状态,从而可避免路由器因流量超过了自身的处理能力而导致无法正常工作,提高了路由器在大流量数据长时间冲击下的稳定性。本发明中采用了虚拟接口队列对以太网帧的流量进行统计的方法使以太网帧在到达协议层之前只需入一次队列,产生一次软件中断,减少了对以太网帧进行分发过程中的处理环节,从而增加网络设备对以太网帧的分发速度,即提高了路由器的处理速度。
附图说明
图1为现有技术中处理分发以太网帧的方法示意图A;
图2为现有技术中处理分发以太网帧的方法示意图B;
图3为本发明中处理分发以太网帧的方法示意图;
图4为本发明处理分发以太网帧的工作流程图。
具体实施方式
本发明所述的网络设备中带流量控制的快速分发网帧的方法的具体实施方式结合附图叙述如下,参见图3、图4,路由器的以太网设备收到完整的一帧后,产生以太网接收中断,这是一种硬件中断;在硬件接收中断中,要分析以太网帧的帧头,读出被封装成以太网帧的协议层数据的协议类型,然后依据得到的协议类型将分析完的以太网帧加入到对应协议的接收队列,同时产生这种协议对应的软件中断;被分析完的以太网帧到达协议层之后被称为报文,在协议层的软件中断中,把报文从协议队列中取出。至此本发明便完成了以太网输入的帧在以太网接口层和协议层之间的分发。
本发明所提供的技术方案实现流量控制策略的关键在于提出了以太网虚拟接口队列的机制。
图3中的协议队列不是针对接口的队列,而是针对协议的队列,即来自不同以太网接口的同一种协议的报文将进入同一个协议队列;并且,加入到协议队列的以太网帧是以MBUF(一种存贮数据信息的数据结构)的结构形式进行加入的,MBUF结构不仅可以保存以太网帧,同时还标明了该帧来自哪个接口。
为了实现以太网虚拟的接口队列,我们在每个接口上创建一个全局的计数器,即接口虚拟队列长度,用于纪录从该以太网接口接收的并且被加入到各协议队列的同时还未从协议队列中取出的以太网帧的总量。每当把帧加入到协议队列时,接口虚拟队列长度就加1;每当把帧从协议队列中取出时,即从MBUF结构中取出,根据MBUF结构所标明的该帧的入接口信息,即该帧来自哪个接口,将该帧对应的接口虚拟队列长度减1。有了这个计数器,我们就知道当前从某个以太网接口接收的没有被协议层及时处理被保存在队列中的帧的数量,这样便有了一个针对接口的接收队列,但是实际上该队列并不存在,因此称这个队列是接口虚拟队列,所创建的计数器统计的是接口虚拟队列长度。
有了虚拟接口队列和虚拟接口队列长度,针对接口进行流量控制就可以实现了。我们可以通过最简单的阈值流控实现本发明:每个接口都有一个开阈值和一个关阈值;每当在硬件中断中,把帧加入到协议队列之前,判断虚拟接口队列长度是否大于关阈值,如果虚拟接口队列长度大于关阈值,就丢弃该帧,并且禁止相应以太网接口接收,这样该接口就暂时不会再产生以太网硬件接收中断;每当在协议层软件中断中,把帧从协议队列中取出后,判断虚拟接口队列长度是否小于开阈值,如果接口队列长度小于开阈值,就允许以太网接口接收,这样就可重新产生以太网硬件接收中断,这样便在接口虚拟队列上实现了真实而有效的的流量控制。
本发明中针对路由器的以太网设备所接收的以太网帧的具体处理流程如下,参见图4:
步骤1:路由器的以太网设备接收到完整的以太网帧;
步骤2:读取所接收的以太网帧的入接口信息;
步骤3:根据以太网帧的入接口信息确定与其对应的虚拟接口队列;
步骤4:判断虚拟接口队列中的以太网帧的总量是否大于设定值,即关阈值,如果大于关阈值,执行步骤5,否则,执行步骤6;
步骤5:丢弃该以太网帧,并禁止网络设备中该以太网接口继续接收以太网帧;
步骤6:将该虚拟接口队列中的以太网帧的总量加1
步骤7:根据以太网帧的协议类型将其加入相应的协议队列;
步骤8:将该以太网帧进行分析处理后从协议队列中取出并分发;
步骤9:读取所分发的以太网帧的入接口信息;
步骤10:根据该入接口信息确定与该以太网帧对应的虚拟接口队列;
步骤11:将该虚拟接口队列中的以太网帧的总量减1;
步骤12:判断该虚拟接口队列的以太网帧总量是否小于开阈值,如果小于开阈值,则执行步骤13,否则,执行步骤14;
步骤13:令该以太网接口为允许接收以太网帧状态;
步骤14:不做处理,令该以太网接口保持禁止接收以太网帧的状态。
通过上述针对路由器的以太网设备所接收的完整的以太网帧的具体处理过程,实现了对带流量控制的以太网帧的快速分发。另外,上述处理过程中的关阈值和开阈值可以采用相同的值,也可以采用不同的值。

Claims (8)

1、一种网络设备中带流量控制的快速分发网帧的方法,其特征在于,该方法包括如下步骤:
(1)网络设备接收网帧;
(2)将该网帧计入对应的虚拟接口队列,并根据需要调整与该虚拟接口队列对应的网络设备接口的工作状态;
(3)根据网帧的协议类型将其加入相应的协议队列;
(4)将该网帧进行分析处理后从协议队列中取出并分发;
(5)对该网帧对应的虚拟接口队列中的网帧总量进行调整,并根据需要调整与该虚拟接口队列对应的网络设备接口的工作状态。
2、根据权利要求1所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:所述步骤(1)中的网络设备为路由器的以太网设备,所接收的网帧为以太网帧,步骤(5)中的网帧总量为以太网帧总量。
3、根据权利要求2所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:所述的步骤(2)具体步骤为:
(21)读取以太网帧的入接口信息;
(22)根据该以太网帧的入接口信息确定与其对应的虚拟接口队列;
(23)判断虚拟接口队列中的以太网帧的总量是否大于设定的关阈值,
(24)如果大于设定的关阈值,则丢弃该以太网帧,并禁止网络设备中该虚拟接口队列对应的以太网接口继续接收以太网帧;
(25)如果小于设定的阈值,则允许该以太网帧加入虚拟接口队列,并将该虚拟接口队列中的以太网帧的总量加1。
4、根据权利要求3所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:所述的步骤(5)具体步骤为:
(51)确定所分发的以太网帧的入接口信息;
(52)根据该入接口信息确定与该以太网帧对应的虚拟接口队列;
(53)将该虚拟接口队列中的以太网帧的总量减1;
(54)判断该虚拟接口队列中的以太网帧总量是否小于设定的开阈值,如果小于设定的开阈值,则令该以太网接口为允许接收以太网帧状态,否则,不做处理。
5、根据权利要求2所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:所述的虚拟接口队列为针对网络设备的以太网接口所创建的计数器。
6、根据权利要求2所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:步骤(3)所述的将以太网帧加入相应的协议队列是将结构形式为MBUF(一种存贮数据信息的数据结构)的以太网帧加入相应的协议队列。
7.根据权利要求6所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:MUBF结构的以太网帧中保存着以太网帧的内容及以太网帧的入接口信息。
8.根据权利要求2所述的网络设备中带流量控制的快速分发网帧的方法,其特征在于:步骤(5)中的以太网帧总量是指从以太网接口接收的并且被加入到各协议队列的,但还未从协议队列中取出的以太网帧总量。
CN 02117842 2002-05-22 2002-05-22 网络设备中带流量控制的快速分发网帧的方法 Expired - Fee Related CN1192577C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 02117842 CN1192577C (zh) 2002-05-22 2002-05-22 网络设备中带流量控制的快速分发网帧的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 02117842 CN1192577C (zh) 2002-05-22 2002-05-22 网络设备中带流量控制的快速分发网帧的方法

Publications (2)

Publication Number Publication Date
CN1412999A true CN1412999A (zh) 2003-04-23
CN1192577C CN1192577C (zh) 2005-03-09

Family

ID=4744538

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 02117842 Expired - Fee Related CN1192577C (zh) 2002-05-22 2002-05-22 网络设备中带流量控制的快速分发网帧的方法

Country Status (1)

Country Link
CN (1) CN1192577C (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1298149C (zh) * 2003-07-31 2007-01-31 中兴通讯股份有限公司 基于包模式的流量控制装置及方法
CN100433702C (zh) * 2003-09-01 2008-11-12 日本电信电话株式会社 分组通信方法
CN100464511C (zh) * 2004-01-05 2009-02-25 联想(北京)有限公司 一种以太网通信系统及方法
CN101958843A (zh) * 2010-11-01 2011-01-26 南京邮电大学 基于流量分析和节点信任度的智能路由选择方法
CN102546412A (zh) * 2012-01-04 2012-07-04 深圳市共进电子股份有限公司 一种流量控制方法以及流量控制器

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1298149C (zh) * 2003-07-31 2007-01-31 中兴通讯股份有限公司 基于包模式的流量控制装置及方法
CN100433702C (zh) * 2003-09-01 2008-11-12 日本电信电话株式会社 分组通信方法
CN100464511C (zh) * 2004-01-05 2009-02-25 联想(北京)有限公司 一种以太网通信系统及方法
CN101958843A (zh) * 2010-11-01 2011-01-26 南京邮电大学 基于流量分析和节点信任度的智能路由选择方法
CN102546412A (zh) * 2012-01-04 2012-07-04 深圳市共进电子股份有限公司 一种流量控制方法以及流量控制器

Also Published As

Publication number Publication date
CN1192577C (zh) 2005-03-09

Similar Documents

Publication Publication Date Title
CN1210653C (zh) 保护网络避免数据分组过载的方法
CN1297097C (zh) 提高网络拥塞时数据传输性能的方法
CN101060531A (zh) 网络设备攻击防范的方法和装置
CN1282331C (zh) 一种实现异常流量控制的装置及方法
CN1878082A (zh) 网络攻击的防护方法
CN101052043A (zh) 一种基于发送窗口与往返时间的tcp发送算法
CN1725732A (zh) 一种报文限速方法
CN1859207A (zh) 一种剩余带宽复用的方法及网络设备
CN1889510A (zh) 一种通过报文处理提高网络安全性的方法
CN101170402A (zh) 一种采用网流技术防御tcp攻击的方法和系统
CN1487698A (zh) 一种适合有线/无线混合网络的自适应拥塞控制方法
CN1859206A (zh) 一种剩余带宽复用的方法及网络设备
CN1192577C (zh) 网络设备中带流量控制的快速分发网帧的方法
CN1992595A (zh) 在计算机网络中检测不良企图的数据的终端机与相关方法
CN1194509C (zh) 一种控制路由器接口报文发送速率的方法
CN1741473A (zh) 一种网络数据包有效性判定方法及系统
CN102299850A (zh) 保护cpu的方法和装置
US20080256247A1 (en) Protection of data transmission network systems against buffer oversizing
CN1549496A (zh) 一种网际协议报文的统计方法
CN1221099C (zh) 通用分组无线业务中隧道数据包业务优先级控制方法
CN1317855C (zh) 一种入侵检测系统及其入侵检测方法
CN1738287A (zh) 上送控制器通道限流方法
CN1691601A (zh) 一种实现合法监听的系统及方法
CN1992720A (zh) 抵抗各种网络攻击的自适应防御
CN1956410A (zh) 实现单板间信息交互的方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050309

Termination date: 20150522

EXPY Termination of patent right or utility model