一种实现灵活QinQ的方法及装置的制作方法

文档序号:7742538阅读:295来源:国知局
专利名称:一种实现灵活QinQ的方法及装置的制作方法
技术领域
本发明涉及二层交换技术领域,尤其涉及一种实现灵活QinQ的方法及装置。
背景技术
QinQ技术是对基于两层802. IQ封装的隧道协议的一种形象化称呼,其核心思想 是将用户网络的虚拟局域网标签(VLAN Tag)封装到运营商网络或者服务提供商网络等骨 干网络的VLAN Tag上,报文带着两层VLAN Tag穿越骨干网。骨干网上用于接入用户的端口称为用户端口,当源用户网络通过骨干网与目的用 户网络进行互联时,用户端口在接收到用户报文(普通形式的报文)后,在报文的原VLAN Tag (用户网络的VLAN Tag)的基础上,再封装一层新的VLAN Tag (骨干网络的VLAN Tag), 即对报文“添QinQ”封装。在此之后,再将QinQ封装后的报文进行传输,骨干网的其它用户 端口在将报文发送给目的用户网络之前,将添加的骨干网络的VLAN Tag封装去掉,还原成 普通形式的报文,即“去QinQ”封装。此时,目的用户网络接收到的报文与源用户网络发送 的报文一致。由于骨干网在传输过程中,有可能遇到链路切换的情况,为了在切换后的链路中 继续传输报文,需要对VLAN Tag进行变换;此外,需要对报文进行不同的处理时,也需要对 VLAN Tag进行变换,即变换QinQ封装,以适应新的链路。如图1所示,QinQ封装格式中包括目的媒体接入控制(MAC)地址(DA)、源MAC 地址(SA)、外层 VLAN Tag(Stag)、内层 VLAN Tag(Ctag)、类型 / 长度(Type/Length)、净荷 (Payload)以及校验位(CRC)。其中,Stag和Ctag均包括标签协议标识(TPID)和标签控 制信息(TCI)。TPID用于网络互联中,不同网络设备之间对所接收报文进行识别的标号,在成熟 的协议中,TPID可以是标准的协议号,如QinQ协议的内层VLANTag中的TPID具有标准协 议号8100,QinQ协议的外层VLAN Tag中的TPID目前没有固定的标准协议号。TCI 一般包 括三方面的内容优先级(Priority)、VLAN标识(VLAN ID)以及格式指示(CFI)。其中,优 先级用于指明当前报文帧的优先级别,一般有8个级别;VLAN ID用于指明当前报文所属的 VLAN。通常,在QinQ中只支持基于外层VLAN Tag或者外层VLAN Tag与用户端口的组合 等简单的配置策略,即根据所接收报文的外层VLAN Tag或者外层VLAN Tag与用户端口的 组合作为标识,对该报文进行添封装、去封装或变换封装等操作,然而,实际应用中,可能需 要对QinQ实现更多的配置策略,如,根据报文的外层VLAN Tag以及优先级,或者根据外层 VLAN Tag和内层VLAN Tag,或者根据外层VLAN Tag、内层VLAN Tag以及优先级等进行添封 装、去封装或变换封装等操作,因此,出现了灵活QinQ的概念,灵活QinQ支持丰富的配置策 略。目前,灵活QinQ没有固定的外层TPID标准协议号,因此,现有技术中在实现灵活 QinQ时,不同厂家对于外层TPID设置的数值通常不同,这样在实际应用中,会出现彼此无法兼容的情况。并且,为了实现灵活QinQ技术,现有技术中一般采用网络处理器(NP)来 实现QinQ配置策略的部署和存储所需的各种数据信息,NP采用特殊的存储器,将所需的数 据信息放置在一张表中,并且支持根据内容查找地址,可进行长度较长的信息的检索,但NP 本身价格比较昂贵,因此这种实现方式成本比较高,不利于市场竞争。中国专利公开说明书2006101380234公开了一种实现灵活QinQ的方法及设备,预 先在芯片中设置QinQ表,保存灵活QinQ配置策略所需数据,接收报文,根据所接收报文的 内、外层VLAN ID以及优先级从灵活QinQ配置策略所需数据中进行查询;通过查询从灵活 QinQ配置策略数据中获取所需数据,使用所获取的数据对报文进行QinQ操作。上述方法的缺陷在于对于接收到的每个报文均要使用内、外层VLANID及优先级 的线性组合或哈希(HASH)运算的结果作为索引查找灵活QinQ配置策略所需数据,线性组 合的方式会增大内存的占用量,因为,两个VLANID和优先级共占用27bits,而线性索引表 又需要占用134M bytes的内存空间;Hash运算的方式比较可行,但是QinQ表的数据在处 理报文之前已经存入芯片,不论表项要不要使用,查找表的时候,都会轮询到,所以实际应 用中查询QinQ表是一种海量的查询,若对接收到的每个报文均到QinQ表中进行一次海量 查询,将会极大地消耗处理器及内存资源,且工作效率低下,不仅如此,不论用什么方式查 询QinQ表,如果要达到大流量线速转发报文的目的都是比较困难的。

发明内容
本发明要解决的技术问题是提供一种实现灵活QinQ的方法及装置,解决现有方 法占用大量资源且效率低下的问题,实现以较少的资源占用量,高效地实现灵活QinQ功 能,以对报文进行快速转发。为解决上述技术问题,本发明的一种实现灵活QinQ的方法,包括接收到报文后,查找该报文在媒体接入控制(MAC)地址表中对应的MAC地址条目, 如果查找到对应的MAC地址条目,则根据该MAC地址条目中包含的灵活QinQ信息对接收到 的报文进行灵活QinQ变换,完成灵活QinQ变换后转发报文。进一步地,该方法还包括当所接收到的报文为上行报文时,如果未查找到对应的MAC地址条目,则在MAC地 址表中增加MAC地址条目,记录从该上行报文中提取出的MAC地址、优先级和内、外层虚拟 局域网标识(VLAN ID),并从预先配置的灵活QinQ表中查询相应的灵活QinQ信息,记录到 所增加的MAC地址条目中。进一步地,该方法还包括增加MAC地址条目后,根据从灵活QinQ表中查询到的灵活QinQ信息对接收到的 上行报文进行灵活QinQ变换,完成灵活QinQ变换后转发报文。进一步地,该方法还包括当所接收到的报文为上行报文时,在查找到对应的MAC地址条目后,进行灵活 QinQ变换前,将从该上行报文中提取出的MAC地址、优先级和内、外层VLAN ID与所查找到 的对应的MAC地址条目中的MAC地址、优先级和内、外层VLAN ID进行比较,若比较的结果 为不相同,则结束。进一步地,若比较的结果为相同,则检查对应的MAC地址条目中的更新标识是否标识需要更新,如果需要,则从预先配置的灵活QinQ表中查询相应的灵活QinQ信息,更新 对应的MAC地址条目;如果不需要,或完成MAC地址条目的更新后,进行灵活QinQ变换。进一步地,当所接收到的报文为下行报文时,如果未查找到对应的MAC地址条目, 则直接转发或丢弃该下行报文。进一步地,在MAC地址表的MAC地址条目中包含老化标识,若MAC地址条目在老化 时间内未被学习或查询,则将老化标识设置为标识该MAC地址条目已老化,并根据老化标 识删除老化的MAC地址条目。进一步地,灵活QinQ信息中包含新的内、外层VLAN ID、优先级和转换操作的信
肩、ο进一步地,一种实现灵活QinQ的装置,包括QinQ转换板、上联设备、核心交换模 块和其它交换机系统,QinQ转换板分别与上联设备、核心交换模块和其它交换机系统相 连;QinQ转换板,用于接收上联设备、核心交换模块和其它交换机系统发送的报文,在 接收到报文后,查找该报文在媒体接入控制(MAC)地址表中对应的MAC地址条目,如果查找 到对应的MAC地址条目,则根据该MAC地址条目中包含的灵活QinQ信息对接收到的报文进 行灵活QinQ变换,完成灵活QinQ变换后转发报文。进一步地,当QinQ转换板接收到的报文为上行报文时,如果未查找到对应的MAC 地址条目,则在MAC地址表中增加MAC地址条目,记录从该上行报文中提取出的MAC地址、 优先级和内、外层虚拟局域网标识(VLAN ID),并从预先配置的灵活QinQ表中查询相应的 灵活QinQ信息,记录到所增加的MAC地址条目中。进一步地,在MAC地址表的MAC地址条目中包含老化标识,若MAC地址条目在老化 时间内未被学习或查询,则QinQ转换板将老化标识设置为标识该MAC地址条目已老化,并 根据老化标识删除老化的MAC地址条目。综上所述,本发明将QinQ条目与MAC地址绑定,基于MAC地址命中率,对报文实现 快速转发,本发明摆脱了造价昂贵的网络处理器,只需要在一块简单的接口板上实现灵活 QinQ信息的存储和报文快速转发,克服了现有技术海量搜索QinQ条目速度慢的问题,同时 扩大了运营商和网络产品用户的利益。


图1为现有技术中QinQ封装格式的示意图;图2为本发明实施方式实现灵活QinQ的方法的流程图;图3为本发明实施方式对下行报文的处理方法的流程图;图4为本发明实施方式实现灵活QinQ的装置的机构图。
具体实施例方式本发明采用带有普通处理器芯片的QinQ转换板代替昂贵的网络处理器;将MAC地 址与QinQ条目绑定存储,考虑到报文的MAC地址和VLANID在时间与空间上的局部性,因 此,可以实现上、下行报文的快速转发。实际应用中,某一时段从用户侧进入QinQ转换板的报文和业务是有限的,VLAN ID被用于标识用户和业务,因此,一种报文通常采用固定的VLANID。本实施方式中,在QinQ转 换板学习MAC地址时,同时在MAC地址表中记录QinQ转换关系,由于用户采用不同的VLAN 实现不同的业务,不同VLAN的QinQ转换规则也不相同,因此,同一个MAC地址会有若干不 同的记录。假定在一段时间内,进入交换系统的用户比较集中,因此,QinQ转换板上有效的 MAC地址表项也相对集中,在某一 VLAN ID下,以同一个MAC地址为源地址的报文会在一段 时间内集中进入QinQ转换板,此时,不再需要海量搜索QinQ转换规则,只需要查找MAC地 址条目,根据MAC地址中的记录,修改报文信息,完成报文的转发。MAC地址最后一次学习和 命中后,在超过系统设定的地址老化时间时,即被清除,需要下次重新学习。对于下行报文也无需查找QinQ条目,只需命中MAC地址,将报文在公网中传播使 用的VLAN Tag转换成用户侧网络需要的VLAN Tag即可,将灵活QinQ的反变换与MAC地址 的查找融为一体,节约了宝贵的性能。下面结合附图对本发明的具体实施方式
进行说明。图2为本发明实施方式实现灵活QinQ的方法,包括步骤S201 在QinQ转换板上预先分配MAC地址表存储空间和灵活QinQ表存储空 间;步骤S202 在灵活QinQ表存储空间中预先创建灵活QinQ表;灵活QinQ表的配置请参见专利公开说明书2006101380234。步骤S203 =QinQ转换板接收报文;如果QinQ转换板接收到的报文为上行报文,即从用户侧通过核心交换模块转发 到QinQ转换板,则执行下一步;如果接收到的报文为下行报文,即从上联设备或其它交换 机系统进入QinQ转换板,执行步骤S401 S405。步骤S204 =QinQ转换板解析上行报文,提取MAC地址、内、外层VLANID和COS (优 先级);步骤S205 对源MAC地址(SA)采用HASH算法计算得到报文源MAC地址在MAC地 址表中的索引号;MAC地址表中采用源MAC地址的HASH运算结果作为索引号。步骤S206 =QinQ转换板根据S205中计算得到的索引号搜索MAC地址表,如果未搜 索到MAC地址条目,则执行步骤S207 ;否则,执行步骤S209 ;表1所示为本实施方式的MAC地址表中一个MAC地址条目;
权利要求
1.一种实现灵活QinQ的方法,包括接收到报文后,查找该报文在媒体接入控制(MAC)地址表中对应的MAC地址条目,如果 查找到对应的MAC地址条目,则根据该MAC地址条目中包含的灵活QinQ信息对接收到的所 述报文进行灵活QinQ变换,完成灵活QinQ变换后转发报文。
2.如权利要求1所述的方法,其特征在于,该方法还包括当所接收到的报文为上行报文时,如果未查找到对应的MAC地址条目,则在所述MAC地 址表中增加MAC地址条目,记录从该上行报文中提取出的MAC地址、优先级和内、外层虚拟 局域网标识(VLAN ID),并从预先配置的灵活QinQ表中查询相应的灵活QinQ信息,记录到 所增加的MAC地址条目中。
3.如权利要求2所述的方法,其特征在于,该方法还包括增加所述MAC地址条目后,根据从所述灵活QinQ表中查询到的灵活QinQ信息对接收 到的所述上行报文进行灵活QinQ变换,完成灵活QinQ变换后转发报文。
4.如权利要求1所述的方法,其特征在于,该方法还包括当所接收到的报文为上行报文时,在查找到对应的MAC地址条目后,进行灵活QinQ变 换前,将从该上行报文中提取出的MAC地址、优先级和内、外层VLAN ID与所查找到的对应 的MAC地址条目中的MAC地址、优先级和内、外层VLAN ID进行比较,若所述比较的结果为 不相同,则结束。
5.如权利要求4所述的方法,其特征在于若所述比较的结果为相同,则检查所述对应的MAC地址条目中的更新标识是否标识需 要更新,如果需要,则从预先配置的灵活QinQ表中查询相应的灵活QinQ信息,更新所述对 应的MAC地址条目;如果不需要,或完成MAC地址条目的更新后,进行灵活QinQ变换。
6.如权利要求1所述的方法,其特征在于当所接收到的报文为下行报文时,如果未查找到对应的MAC地址条目,则直接转发或 丢弃该下行报文。
7.如权利要求1所述的方法,其特征在于在所述MAC地址表的MAC地址条目中包含老化标识,若所述MAC地址条目在老化时间 内未被学习或查询,则将所述老化标识设置为标识该MAC地址条目已老化,并根据老化标 识删除老化的MAC地址条目。
8.如权利要求1所述的方法,其特征在于所述灵活QinQ信息中包含新的内、外层VLAN ID、优先级和转换操作的信息。
9.一种实现灵活QinQ的装置,包括QinQ转换板、上联设备、核心交换模块和其它交换 机系统,所述QinQ转换板分别与所述上联设备、核心交换模块和其它交换机系统相连;所述QinQ转换板,用于接收所述上联设备、核心交换模块和其它交换机系统发送的报 文,在接收到报文后,查找该报文在媒体接入控制(MAC)地址表中对应的MAC地址条目,如 果查找到对应的MAC地址条目,则根据该MAC地址条目中包含的灵活QinQ信息对接收到的 所述报文进行灵活QinQ变换,完成灵活QinQ变换后转发报文。
10.如权利要求9所述的装置,其特征在于当所述QinQ转换板接收到的报文为上行报文时,如果未查找到对应的MAC地址条目, 则在所述MAC地址表中增加MAC地址条目,记录从该上行报文中提取出的MAC地址、优先级和内、外层虚拟局域网标识(VLANID),并从预先配置的灵活QinQ表中查询相应的灵活QinQ 信息,记录到所增加的MAC地址条目中。
11.如权利要求10所述的装置,其特征在于在所述MAC地址表的MAC地址条目中包含老化标识,若所述MAC地址条目在老化时间 内未被学习或查询,则所述QinQ转换板将所述老化标识设置为标识该MAC地址条目已老 化,并根据老化标识删除老化的MAC地址条目。
全文摘要
本发明公开了一种实现灵活QinQ的方法及装置,包括接收到报文后,查找该报文在媒体接入控制(MAC)地址表中对应的MAC地址条目,如果查找到对应的MAC地址条目,则根据该MAC地址条目中包含的灵活QinQ信息对接收到的报文进行灵活QinQ变换,完成灵活QinQ变换后转发报文。本发明将QinQ条目与MAC地址绑定,基于MAC地址命中率,对报文实现快速转发,本发明摆脱了造价昂贵的网络处理器,只需要在一块简单的接口板上实现灵活QinQ信息的存储和报文快速转发,克服了现有技术海量搜索QinQ条目速度慢的问题,同时扩大了运营商和网络产品用户的利益。
文档编号H04L29/06GK102148811SQ20101011413
公开日2011年8月10日 申请日期2010年2月10日 优先权日2010年2月10日
发明者刘杨 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1