一种IP数据流流量的监管方法 【技术领域】
本发明涉及一种IP数据流流量的监管方法,尤其是一种与精确路由搜索相结合的IP数据流流量的监管方法。
背景技术
IP网络通信通常具有突发性和间歇性。在IP网络上,数据流的突发速率是远远高于平均速率的,数据流的突发很容易产生IP网络的拥塞,致使IP网络的吞吐量急剧下降。
IP QoS的一个重要且必备的功能是在链路上通过物理手段,在网络应用边界提供限制进出某一网络连接的流量与突发,为核心网络的正常运行提供保证。除了在链路上通过物理手段加以限制外,流量限制还可以通过流量监管技术来实现。
流量监管:是通过把超出设定速度的流量进行丢弃,来保证流量的速度不超过给定的带宽。流量监管一般是通过一种称为CAR(约定访问速度)的技术来实现的。CAR模块主要由分类器、度量(染色)器和动作机构三部分组成,当数据报文到来时,由分类器决定对报文进行分类,决定应用哪一类的监管标准,然后由度量(染色)器根据是否超出门限来染色,最后由动作机构根据染色的结果决定执行的动作,流量监管模块的原理框图如图1所示。
1、分类器
分类器的作用是根据数据的特征对数据流进行相应的分类,使不同类型的数据分别进入不同的队列。在这些不同的队列上分别设置了不同的CAR,使不同特征的数据数据流得到不同的速率控制。分类器依据的数据特征有以下几种情形:
1)、地址:在IP网络中,数据报文中一定携带有收方和发方的地址信息,即MAC地址或IP地址信息。通过对目的地址和源地址进行匹配,可以限制某一类网络用户的访问,也可以使对某些服务节点的访问可控。
2)、优先级:通过对数据报文携带的优先级进行分类,可以按照网络用户的意愿提供区分服务的服务。不同类型的数据报文具有不同的优先级类型。IP报文一般至少包含3个比特位的优先级信息,可以区分8种不同的优先级。
3)、数据流:根据数据报文携带的五元组信息(目的IP地址、源IP地址、目的端口号、源端口号、协议类型)可以将数据报文区分至分类的最小单位-数据流,并针对每一条数据流进行不同的处理。
2、度量器
CAR模块中的度量器一般采用令牌桶的机制来实现。数据流要想通过交换机进行转发,必须要从预置的令牌桶中取得足够的令牌,每个令牌代表一定数量的转发“通行证”。目前IP网络中使用较多的是双桶三色标记算法,双桶三色标记算法的原理如图2所示,该算法主要包含三个参数:承诺访问速率(CIR),即向令牌桶中填充令牌的速率;承诺突发尺寸(CBS),即令牌桶尺寸,每次突发所允许的最大流量尺寸;超额突发尺寸(EBS)。
双桶结构包括:承诺桶(C桶),超额桶(E桶)。我们以Tc表示C桶中的令牌数,以Te表示E桶中令牌数,两个桶的总容量分别为CBS和EBS。初始状态时两桶是满的,即Tc和Te初始值分别等于CBS和EBS。令牌的产生速率是CIR,通常是先往C桶中添加令牌,等C桶满了,再往E桶中添加令牌,当两桶都被填满时,新产生的令牌将会被丢弃。
假设到达的报文长度为L,若入口报文已被前一节点标记为绿色或报文长度L小于C桶中的令牌数Tc,则报文被标记为绿色,Tc减少L;若报文已被标记为黄色或Tc<L<Te,则标记为黄色,且Te减少L;若报文已被标记为红色或L>Te,则标记为红色,Tc和Te都不减少。
3、动作机构
动作机构是根据数据报文被标记的颜色来决定其最终处理动作的,最终处理动作包括三种:通过、拒绝和继续判断。通过,是对数据报文直接转发,一般针对绿色报文;拒绝,是对报文直接丢弃,实现CAR的流量限速功能,一般针对红色报文;继续判断,是使用其他流量控制方式进一步判断数据报文的处理方式(也可直接设置为通过或拒绝),一般针对黄色报文。
目前,有一种具备路由搜索功能的精确路由器,这种精确路由器具备一个路由搜索模块,其路由搜索的一般流程可分为路由查找、报文头处理和后续操作。数据报文进入路由搜索模块后,首先根据事先设置好的关键字进行路由查找,这部分工作一般由专用路由搜索引擎完成;找到匹配项后,再根据设置条件对数据报文的报文头进行更改、替换等操作;最后再进行过滤、转发等后续操作,此流程如图3所示。
目前,常规的对IP数据流的流量监管方法,一般采用普通流量监管和路由搜索直接叠加设计,这种对IP数据流的流量监管技术的实施难度非常大,按照这种常规的设计方法会极大增加设备成本,提高设备价格。究其原因,造成基于数据流的流量监管技术实施困难的原因主要有以下三个方面:
1)、按照数据流的方式对数据报文进行区分,需要判断报文的五元组信息,匹配关键字高达104bit,常规设计方式会占用大量逻辑资源。
2)、物理线路中的IP数据流数量非常庞大,需要大量的度量器,对度量器的分配和管理较为复杂。
3)、IP数据长度可变,在报文长度统计上存在一定的难度。
在进行IP数据业务传输的时候,大多IP数据业务都希望IP网络能够提供一种针对每一条数据流的流量监管服务,但绝大多数路由交换设备都只能提供基于优先级或网络地址的服务。我们不难发现,路由搜索流程和按数据流量方式的流量监管流程具有相似相,基于此观点,本发明提出了一种与精确路由搜索项结合的IP数据流流量监管的方法,以解决现有技术在IP数据流的流量监管上存在的缺点。
【发明内容】
本发明的目的是提供一种IP数据流流量的监管方法,本方法依托精确路由搜索和流量监管的相似性,将流量监管和精确路由搜索进行相互结合的一体设计,可以达到以下的有益效果:
①、直接使用路由搜索的查找结果,无需设计分类器,减少了硬件设计的成本和系统设计的复杂度;
②、度量器表项的建立、删除等维护操作由路由搜索模块的维护管理机构同时完成,无需增加额外的度量器维护管理机构;
③、路由搜索要对数据报文的报文头进行处理,度量器可以轻易从中获取数据长度信息,减少报文长度统计的开销;
总之,本发明的方法可以在具备精确路由搜索功能的路由交换设备上极大简化针对IP数据流的流量监管功能的设计难度,降低设计和生产成本,是一种较好的流量监管方法。
本发明的目的是通过以下技术方案实施的:
一种IP数据流流量的监管方法,包括
步骤1,根据事先设置好的关键字对数据报文进行路由和流量分类查找;
步骤2,根据查找结果的匹配表项进行报文头处理和染色操作;
步骤3,后续动作操作;
所述匹配表项包括下一跳出口、数据类型、生存时间,其特征在于,所述匹配表项还包括承诺访问速率CIR、C桶中的令牌数Tc、E桶中令牌数Te、承诺突发尺寸CBS、超额突发尺寸EBS。所述步骤2还包括通过度量器对报文数据进行染色,具体的是通过执行以下步骤完成的:
步骤S21,度量器从报文头中取得数据长度信息L;
步骤S22,根据L的大小,对数据报文染色。
具体的步骤S22是通过以下步骤完成的:步骤S221,判断L是否小于Tc,若是,则Tc=Tc-L,且将数据报文标记为绿色,否则执行步骤:步骤S222,判断L是否大于Tc且小于Te,若是,则Te=Te-L,且将数据报文标记为黄色,否则将数据报文标记为红色。
具体的步骤3包括:
步骤S31,对数据报文进行数据流量监管;具体是判断数据报文颜色,跟据报文颜色对报文执行相应的动作处理,其具体的执行方法为:
如果数据报文被标记为绿色,则对数据报文直接转发;
如果数据报文被标记为红色,则对数据报文进行丢弃;
如果数据报文被标记为黄色,则按约设置定进行处理;所述约定设置包括:对数据报文直接转发,对数据报文进行丢弃,对数据报文进行再判断。
步骤S32,执行路由搜索后续动作。
【附图说明】
本发明将通过例子并参照附图的方式说明,其中:
图1是一般的按数据流量方式的流量监管流程框图;
图2是双桶三色标记算法原理框图;
图3是一般路由搜索流程框图;
图4是本发明的IP数据流流量的监管框图。
【具体实施方式】
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
下面结合附图对本发明做进一步详细的描述。
如图4所示,是本发明的数据流流量监管的框图。包括:
步骤1,根据事先设置好的关键字对数据报文进行路由和流量分类查找
精确路由搜索需要进行路由查找,路由查找本质上也是一种分类操作,即按五元组信息进行路由查找的搜索引擎恰好能够满足按数据流方式进行流量监管的分类器要求。因此,在本方法中直接省略掉了流量监管的分类器,而借用路由搜索引擎完成本功能。这种将流量监管和精确路由搜索进行相互结合的一体设计可以节省分类器,直接使用精确路由搜索的查找结果,节省大量资源。
当数据报文到来后,首先根据事先设置好的关键字进行路由和流量分类查找,这部分工作一般由专用路由搜索引擎完成。由于这部分是现有技术,在本发明中不再重复赘述。
步骤2,根据查找结果的匹配表项进行报文头处理操作
在本发明中,对流量监管和路由搜索进行了一体化设计,分类器功能借用路由搜索引擎来完成。因此,度量器也采用路由搜索中查找表项的思路进行设计,以便和路由表项融合处理,节省开销。
传统路由设备主要是在完成路由搜索后,根据查找结果的匹配表项进行报文头处理操作。其匹配表项中主要包含下一跳出口、数据类型、生存时间等内容。本方法就是要在表项中加入CIR、Tc、Te、CBS、EBS等与流量监管的度量器相关的内容。其实现步骤为:
步骤S21,度量器从报文头中取得数据长度信息L;
步骤S22,根据L的大小,对数据报文染色。
具体的步骤S22是通过以下步骤完成的:步骤S221,判断L是否小于Tc,若是,则Tc=Tc-L,且将数据报文标记为绿色,否则执行步骤:步骤S222,判断L是否大于Tc且小于Te,若是,则Te=Te-L,且将数据报文标记为黄色,否则将数据报文标记为红色。
当路由搜索引擎查找到匹配表项后,首先进行流量监管操作——度量器从报文头中取得数据长度信息L,再从表项中取得CIR、Tc、Te、CBS、EBS等参数,按照下列算法进行操作:
If(L<Tc)
{Tc=Tc-L;
报文标记为绿色};
If(Tc<L<Te)
{Te=Te-L;
报文标记为黄色};
Else
{报文标记为红色};
当系统时钟到达令牌桶更新粒度时,执行下列算法操作:
Tc=Tc+CIR;
If(Tc>CBS)
{Te=Te+Tc-CBS;
Tc=CBS;
If(Te>EBS)
{Te=EBS};
};
度量器表项的建立、删除等维护操作可以由路由搜索模块的维护管理机构同时完成,无需增加额外的维护机制。
步骤3,后续动作操作
本步中包括:
步骤S31,对数据报文进行数据流量监管;具体是判断数据报文颜色,跟据报文颜色对报文执行相应的动作处理,其具体的执行方法为:
如果数据报文被标记为绿色,则对数据报文直接转发;
如果数据报文被标记为红色,则对数据报文进行丢弃;
如果数据报文被标记为黄色,则按约设置定进行处理;所述约定设置包括:对数据报文直接转发,对数据报文进行丢弃,对数据报文进行再判断。
在本方法中流量监管的动作机构与标准设计相同,具体操作算法如下:
If(报文标记为绿色)
{转发报文};
If(报文标记为红色)
{丢弃报文};
If(报文标记为黄色)
{按约定条件处理};
通过动作机构转发的报文将进行后续操作。
步骤S32,执行路由搜索后续动作。本步主要完成原路由搜索的后续操作的任务,具体操作方式与标准路由设备相同,在本发明中不再重复赘述。
在进行路由搜索的后续操作之前先进行流量监管的动作处理,就不会对路由搜索的后续操作造成任何的影响。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。