[发明专利]隧道报文收发方法和装置有效
申请号: | 201110461663.X | 申请日: | 2011-12-31 |
公开(公告)号: | CN102420772A | 公开(公告)日: | 2012-04-18 |
发明(设计)人: | 冉瑞 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/06 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 310053 浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 隧道 报文 收发 方法 装置 | ||
技术领域
本发明涉及通信技术领域,特别涉及隧道报文收发方法和装置。
背景技术
随着因特网协议(IP)技术的发展,IP网络从承载单一的因特网(Internet)业务向运营多业务方向转型,在转型的过程中,对网络的转发性能提出了更高的要求。目前,主要采用基于流表的报文快速转发方法满足对网络的转发性能要求,下面结合图1进行说明。
图1是现有技术基于流表的报文快速转发的过程示意图,当接收到首包报文时,由于不存在报文对应的上行流表,因此,由CPU转发平面对报文进行软件处理,建立对应的上行流表和下行流表(若没有下行业务,则不生成下行流表)并下发到硬件转发平面;当接收到后续报文时,由于已经存在报文对应的上行流表,因此,直接由硬件转发平面(例如FPGA)根据对应的上行流表和下行流表对报文进行处理。
图1所示的基于流表的报文快速转发方法,CPU转发平面只对首包报文进行软件处理和转发,而后续报文,则由硬件转发平面通过查找报文对应的流表,根据流表转发报文,能够实现普通报文的快速转发,然而,对于隧道转发这种较为复杂的业务,则无法处理。
隧道技术是一种封装技术,利用一种网络协议来传输另一种网络协议的数据报文,也即一种网络协议将其他网络协议的数据报文封装在自己的报文中,然后在网络中传输。封装后的数据报文在网络中传输的路径,称为隧道。隧道是一条虚拟的点对点连接,在隧道的两端需要对数据报文进行封装及解封装,由于现有技术中流表的固定结构以及表项大小限制,无法通过查找一次流表实现隧道快速转发。
实际上,也可以通过修改流表的表项大小,增加与隧道相关的成员项的方法实现隧道快速转发,但是对于流表已达百万级别的逻辑来说,增加与隧道相关的成员项必然会导致逻辑资源的极大消耗,虽然可以通过查找一次流表实现隧道快速转发,使隧道转发达到极高的性能,但是必然会牺牲逻辑资源以及现有技术基于流表的报文快速转发方法的通用性。
发明内容
有鉴于此,本发明的目的在于提供隧道报文收发方法和装置,能够在不改变现有流表的固定结构以及表项大小的前提下实现隧道报文的快速接收和发送。
为了达到上述目的,本发明提供了一种实现隧道报文转发方法,在建立与远端设备间隧道时,CPU转发平面生成该隧道的隧道口对应的隧道表项并下发到硬件转发平面,所述隧道表项包括隧道传输协议、隧道乘客协议、隧道的源IP和目的IP;该方法包括:
接收需要进行隧道封装的报文;
如果不存在报文的关键字段对应的关联于报文的入接口的上行流表,则上送CPU,并由CPU转发平面建立报文的关键字段对应的关联于报文的入接口的上行流表,确定报文的隧道出接口,在该上行流表中保存报文的隧道出接口信息,并将该上行流表下发到硬件转发平面;根据报文的隧道出接口信息封装报文,将报文的隧道出接口作为封装报文的入接口,建立封装报文的关键字段对应的关联于封装报文的入接口的上行流表,确定封装报文的出接口,在该上行流表中保存封装报文的出接口信息,并将该上行流表下发到硬件转发平面,若封装报文的出接口是物理出接口,则将封装报文从该物理出接口发送出去,若封装报文的出接口是隧道出接口,则CPU转发平面再一次对封装报文执行封装和转发处理;
如果存在报文的关键字段对应的关联于报文的入接口的上行流表,硬件转发平面根据报文的关键字段对应的关联于报文的入接口的上行流表确定报文的隧道出接口,根据报文的隧道出接口对应的隧道表项封装报文,将报文的隧道出接口作为封装报文的入接口,根据封装报文的关键字段对应的关联于封装报文的入接口的上行流表确定封装报文的出接口,若封装报文的出接口是物理出接口,则将封装报文从该物理出接口发送出去,若封装报文的出接口是隧道出接口,则硬件转发平面再一次对封装报文执行封装和转发处理。
本发明还提供了一种实现隧道报文转发装置,该装置包括:第一接收模块、第一CPU转发模块、第一硬件转发模块、第一发送模块;
所述第一接收模块,用于接收需要进行隧道封装的报文,判断是否存在报文的关键字段对应的关联于报文的入接口的上行流表,如果是,则将该报文发送到第一硬件转发模块,否则,则将该报文上送到第一CPU转发模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110461663.X/2.html,转载请声明来源钻瓜专利网。