报文处理转发装置及方法

文档序号:9618632阅读:167来源:国知局
报文处理转发装置及方法
【技术领域】
[0001]本发明涉及通信领域的报文转发技术,尤其涉及一种报文处理转发装置及方法。
【背景技术】
[0002]目前报文转发通常由通用中央处理器CPU、完全可编程的网络处理器NP或硬逻辑实现的芯片来实现;通用CPU由于受限其处理性能,只能满足一些极低线速要求的场景;可编程的网络处理器灵活度很高,但是成本和功耗的代价也相对比较高;硬逻辑实现的芯片优缺点也非常明显,优点是能很好的控制芯片的成本功耗,缺点是芯片开发过程中需要对业务流程的理解和梳理不能有差错,从而导致开发过程中的开发及验证难度大的问题。

【发明内容】

[0003]有鉴于此,本发明实施例期望提供一种报文处理转发装置及方法,以保持所述装置具有一定的灵活性,同时维持较低的硬件成本以及较低的开发难度。
[0004]为达到上述目的,本发明的技术方案是这样实现的:
[0005]本发明第一方面提供一种报文处理转发装置,所述装置包括至少一个处理结构;每一个所述处理结构包括TCAM处理单元及查表单元;
[0006]所述TCAM处理单元包括:
[0007]第一提取模块,用于从对应于报文及报文描述符中提取特征字段;
[0008]匹配模块,用于将所述特征字段与TCAM条目进行匹配,形成匹配结果;
[0009]第一执行模块,为可编程模块,用于依据所述匹配结果,对所述报文及所述报文描述符执行第一次操作并形成键值域索引;
[0010]所述查表单元包括:
[0011]第二提取模块,用于接收所述键值域索引并依据所述键值域索引获取键值字段;
[0012]查表模块,用于依据所述键值字段进行查表,形成查表结果;
[0013]第二执行模块,为可编程模块,用于根据所述查表结果对所述报文及所述报文描述输入执行第二次操作;
[0014]所述处理结构,还用于在指定的所述处理结构执行完所述第一次操作和所述第二次操作后,发送所述处理结构处理后的所述报文。
[0015]优选地,
[0016]所述TCAM处理单元还包括:
[0017]外围逻辑模块,用于将所述特征字段中的指定字段转化成所述TCAM条目的匹配字段,并所述匹配字段发送给所述匹配模块。
[0018]优选地,
[0019]所述TCAM处理单元还包括:
[0020]第一获取模块,用于依据所述匹配结果获取所述第一次操作的操作信息;
[0021]所述第一执行模块,具体用于依据所述操作信息,对所述报文执行第一次操作并依据匹配结果查询获得对应所述匹配结果的键值域索引。
[0022]优选地,
[0023]所述第二提取模块还用于将所述键值字段形成预定的键值结构,并将所述键值结构发给所述查表模块。
[0024]优选地,
[0025]所述查表单元包括:
[0026]第二获取模块,用于依据所述查表结果获取所述第二次操作的操作信息;
[0027]所述第二执行模块,具体用于依据所述操作信息,对所述报文执行第二次操作。
[0028]优选地,
[0029]所述第一执行模块和所述第二执行模块为超长指令可编程模块。
[0030]优选地,
[0031]所述TCAM处理单元及所述查表单元,一次能够处理N个所述特征字段;所述N为不小于1的整数;
[0032]所述装置还包括延时单元,且分别于所述TCAM处理单元及所述可编程逻辑指令查询单元相连;
[0033]所述延时单元,用于当所述特征字段的个数Μ大于所述Ν时,存储所述Μ个所述特征字段以及所述特征字段对应的匹配结果和查表结果,等待所述TCAM处理单元及所述查表单元对所述Μ个所述特征字段处理之后,输出所述报文。
[0034]本发明第二方面提供一种报文处理转发方法,应用于包括至少一个处理结构的装置中,所述处理结构包括TCAM处理单元及查表单元;
[0035]通过所述TCAM处理单元从对应于报文及报文描述符中提取特征字段;
[0036]依据所述匹配结果,采用所述TCAM处理单元中的可编程指令对所述报文及所述报文描述符执行第一次操作并形成键值域索引;
[0037]通过所述查表单元接收所述键值域索引,依据所述键值域索引查找键值字段,依据所述键值字段进行查表形成查表结果;
[0038]根据所述查表结果采用所述查表单元中的可编程指令对所述报文及所述报文描述符执行第二次操作;
[0039]在指定的所述处理结构执行完所述第一次操作和所述第二次操作后,发送所述处理结构处理后的所述报文。
[0040]优选地,
[0041 ] 所述TCAM处理单元包括外围逻辑模块;
[0042]所述方法还包括:
[0043]通过所述外围逻辑模块将所述特征字段中的指定字段转化成所述TCAM条目的匹配字段;
[0044]所述匹配字段用于与所述TCAM条目进行匹配
[0045]优选地,
[0046]所述依据所述匹配结果,采用所述TCAM处理单元中的可编程指令对所述报文执行第一次操作并形成键值域索引包括:
[0047]依据所述匹配结果获取所述第一次操作的操作信息;
[0048]依据所述操作信息,对所述报文执行第一次操作;
[0049]依据所述匹配结果查询对应所述匹配结果的键值域索引。
[0050]优选地,
[0051]所述方法还包括:
[0052]将所述键值字段形成预定的键值结构;
[0053]所述依据所述键值字段进行查表形成查表结果具体为:
[0054]依据键值结构进行查表形成所述查表结果。
[0055]优选地,
[0056]所述根据所述查表结果采用所述查表单元中的可编程指令对所述报文执行第二次操作包括:
[0057]依据所述查表结果获取所述第二次操作的操作信息;
[0058]依据所述操作信息,对所述报文执行第二次操作。
[0059]优选地,
[0060]所述TCAM处理单元和查表单元中的可编程指令为超长指令。
[0061]优选地,
[0062]所述TCAM处理单元及所述查表单元,一次能够处理N个所述特征字段;所述N为不小于1的整数;所述装置还包括延时单元;
[0063]所述方法还包括:当所述特征字段的个数Μ大于所述N时,通过所述延时单元存储所述Μ个所述特征字段以及所述特征字段对应的匹配结果和查表结果,等待所述TCAM处理单元及所述查表单元对所述Μ个所述特征字段处理之后,输出所述报文。
[0064]本发明实施例所述报文处理转发方法及装置,结合TCAM处理单元及查表单元,可通过对可编程的第一执行模块和第二执行模块进行拓展实现所述装置的行业务拓展及业务调整,保持较高的灵活性,相比较于硬逻辑芯片可降低开发难度及验证难度;通过TCAM处理单元的引入,采用TCAM对报文进行部分处理,减少可编程模块需要处理的工作量,可相对的降低成本及功耗等。
【附图说明】
[0065]图1为本发明实施例所述的报文处理转发装置的结构示意图;
[0066]图2为本发明实施例所述的处理结构的结构示意图之一;
[0067]图3为本发明实施例所述的TCAM处理单元的结构示意图;
[0068]图4为本发明实施例所述的处理结构的结构示意图之二 ;
[0069]图5为本发明实施例所述的报文处理方法的流程示意图之一;
[0070]图6为本发明实施例所述的执行第一次操作并形成键值域索引的流程示意图;
[0071]图7为本发明示例所述的处理结构的结构示意图。
【具体实施方式】
[0072]以下结合说明书附图及具体实施例对本发明的技术方案做进一步的详细阐述。
[0073]实施例一
[0074]如图1及图2所示,本实施例提供一种报文处理转发装置,所述装置包括至少一个处理结构11 ;在图1中所述装置包括n+1个处理结构CELL ;其中,所述η为不小1的整数;所述至少一个处理结构一次是CELL 0、CELL 1、......CELL n_l以及CELL η ;
[0075]每一个所述处理结构11包括TCAM处理单元110及查表单元120 ;
[0076]所述TCAM处理单元包括:
[0077]第一提取模块111,用于从对应于报文及报文描述符中提取特征字段;
[0078]匹配模块112,用于将所述特征字段与TCAM条目进行匹配,形成匹配结果;
[0079]第一执行模块113,为可编程模块,用于依据所述匹配结果,对所述报文及所述报文描述符执行第一次操作并形成键值域索引;
[0080]所述查表单元120包括:
[0081]第二提取模块121,用于接收所
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1