[发明专利]报文处理的方法及转发设备有效
申请号: | 201410111506.X | 申请日: | 2014-03-24 |
公开(公告)号: | CN103905310B | 公开(公告)日: | 2017-04-19 |
发明(设计)人: | 李岩 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 北京龙双利达知识产权代理有限公司11329 | 代理人: | 王君,肖鹂 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报文 处理 方法 转发 设备 | ||
技术领域
本发明实施例涉及通信领域,并且更具体地,涉及一种报文处理的方法及转发设备。
背景技术
一个转发设备由硬件和软件组成,如图1所示。
硬件通常包括多个端口,一个转发引擎和一个转发表存储模块。端口暴露在设备的外部,用于连接网络线缆,端口内部通过导线和转发引擎相连。转发引擎由一个或多个芯片组成,它接收来自各个端口的报文,根据报文的目的地址查找转发表,根据匹配的转发表项中记载的出端口,将报文从该端口发送出去。转发表存储模块通常为专用存储器,如内容寻址存储器(Content Addressable Memory,CAM)或三态内容寻址存储器(Ternary Content Addressable Memory,TCAM),它存储着一张或多张转发表,它可以是一个独立的芯片,也可以和转发引擎的芯片集成在一个芯片内。
软件至少包含一个配置管理模块、一个转发表管理模块和一个报文处理模块。配置管理模块通过写转发引擎上的寄存器改变硬件的工作状态和/或工作模式,比如开启/关闭一个端口、修改端口的速率。转发表管理模块用于向硬件上的转发表增加/删除转发表项,一旦表项被写入硬件上的转发表,转发引擎就能根据该表项的内容识别出具有相应特征的数据报文(即查表),并对这些报文执行相应的转发动作。该识别特征和执行转发动作的过程都是硬件独立完成的,没有软件的参与。软件仅仅通过修改硬件上的转发表控制硬件的转发行为。这种软件负责控制,硬件负责转发的架构被称为控制转发分离的架构,被当前的包转发设备普遍采用。有时候,转发设备端口收到的报文的目的就是转发设备自己,此时报文被硬件的转发引擎上送到软件的报文处理模块执行处理。有时候,转发设备也要向外发送报文,此时报文处理模块将生成的报文递交给硬件的转发引擎,最终由硬件将该报文发送出去。
当前SDN中的转发设备采用上述的控制转发分离的架构实现。在硬件上存储流表并实现查表转发功能。但是硬件流表的表项是定长的,而现实中表项的长度长短不一,参差不齐。
同一个流表的多个表项的长度可能会有很大的差别。例如某一个表项的指令中只包含一个动作,长度较小。而另一个表项的指令中可能会包含多个动作,长度较大。此时,若不按表项的最大长度定义流表,则将有一部分表项无法写入流表;若按表项的最大长度定义流表,则浪费大量的流表存储空间。专用存储器的空间由于功耗和成本的原因,一般不太大,而且设备一旦生产便无法扩展,如上述那样严重的浪费是不能接受的。
发明内容
本发明实施例提供一种报文处理的方法,能够合理地利用转发设备的专用存储器的存储空间来存储流表。
第一方面,提供了一种报文处理的方法,所述方法由转发设备执行,所述转发设备包括专用处理器、通用处理器、专用存储器和通用存储器,所述方法包括:所述专用处理器获取第一匹配信息;所述专用处理器根据所述第一匹配信息查找所述专用存储器中的第一表,确定与所述第一匹配信息对应的搜索信息;所述专用处理器将报文和所述搜索信息发送至所述通用处理器;所述通用处理器根据所述搜索信息查找所述通用存储器中的第二表,确定与所述搜索信息对应的第二指令集;所述通用处理器执行所述第二指令集,对所述报文进行第二处理。
结合第一方面,在第一种可能的实现方式中,所述专用处理器根据所述第一匹配信息查找所述专用存储器中的第一表,确定与所述第一匹配信息对应的搜索信息,包括:所述专用处理器根据所述第一匹配信息查找所述专用存储器中的第一表,确定与所述第一匹配信息对应的第一指令集和所述搜索信息;
所述专用处理器将报文和所述搜索信息发送至所述通用处理器,包括:所述专用处理器执行所述第一指令集,对所述报文进行第一处理;所述专用处理器将进行所述第一处理后的所述报文和所述搜索信息发送至所述通用处理器;
所述通用处理器执行所述第二指令集,对所述报文进行第二处理,包括:所述通用处理器执行所述第二指令集,对所述进行所述第一处理后的所述报文进行第二处理。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一指令集中的所有的指令的总长度小于预设阈值。
结合第一方面或者上述任一种可能的实现方式,在第三种可能的实现方式中,所述搜索信息包括索引信息。
结合第一方面或者上述任一种可能的实现方式,在第四种可能的实现方式中,所述专用存储器中还包括第三表,所述第三表包括第二匹配信息与第三指令集的对应关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410111506.X/2.html,转载请声明来源钻瓜专利网。