[发明专利]提供用于网络设备的可编程包分类框架的系统和方法有效
申请号: | 201780015786.6 | 申请日: | 2017-11-10 |
公开(公告)号: | CN108781185B | 公开(公告)日: | 2021-08-03 |
发明(设计)人: | A·斯瑞尼瓦桑;M·迪戈纳姆 | 申请(专利权)人: | 甲骨文国际公司 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 中国贸促会专利商标事务所有限公司 11038 | 代理人: | 周磊 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 提供 用于 网络设备 可编程 分类 框架 系统 方法 | ||
1.一种包括网络设备的系统,所述网络设备提供高性能网络中的网络设备中的可编程包分类框架,所述系统包括:
存储器和微处理器;
多个入口端口,所述多个入口端口用于接收基于多个协议的数据包;
多个基于硬件的分类原语,所述多个基于硬件的分类原语包括关键字组成原语、关键字组成规则原语和下一操作原语;
一个或多个查找表以及匹配操作表;
状态机,所述状态机被配置为跟踪对每个数据包的处理的状态;
其中,所述关键字组成原语被配置为基于所述关键字组成规则原语而构造用于所述每个数据包的当前查找关键字,并将所述当前查找关键字呈现给查找表;
其中,所述查找表中与该查找关键字的匹配导致所述匹配操作表中的用于所述每个数据包的操作匹配;
其中,所述操作匹配与用于构造用于所述每个数据包的下一查找关键字的信息相关联;
其中,所述当前查找关键字和所述下一查找关键字中的每一个与所述状态机中的值相关联,其中,所述值指示所述每个数据包中正被处理的特定协议层;
其中,所述多个基于硬件的分类原语是逻辑地连接的,来自一个分类原语的结果被馈送到下一个分类原语中;
由此,所述网络设备被配置为:
使用所述多个基于硬件的分类原语递归地解析所述数据包中的每个数据包,直到对基于所述多个协议中的特定协议的所述每个数据包的分类被完成,
基于对所述数据包中的每个数据包的所述分类,将所述数据包分类为多个流,以及
根据与所述多个流中的每个流相关联的预定义的规则,处理被分类为所述多个流中的所述每个流的所述数据包。
2.根据权利要求1所述的系统,其中,所述多个基于硬件的分类原语逻辑地串在一起,其中来自一个原语的所述结果被馈送到下一原语,直到在所述网络设备处接收的数据包的处理被完成。
3.根据权利要求1所述的系统,其中,所述多个基于硬件的分类原语中的每一个是可编程的,并且是基于所述网络设备的所述存储器的三态内容可寻址存储器TCAM或者静态随机存取存储器SRAM的。
4.根据权利要求1所述的系统,其中,所述网络设备是以太网网络接口卡,或以太网网络交换机。
5.根据权利要求1所述的系统,其中,所述关键字组成规则原语是存在于所述网络设备的所述存储器中的TCAM中的结构,并且包括关键字ID、字节选择数组、查找关键字的长度和表ID。
6.根据权利要求5所述的系统,其中,所述字节选择数组包括指向数据包中的字节位置的索引,其中,所述索引是相对于该数据包的开始位置或正在被处理的当前网络层的开始位置的,或者是作为匹配规则的结果被导出的。
7.根据权利要求1至5中任一项所述的系统,其中,所述网络设备是InfiniBand网络接口卡或InfiniBand网络交换机。
8.根据权利要求1至5中任一项所述的系统,其中,所述状态机基于数据包的处理状态而动态地调整分类原语的行为。
9.根据权利要求1至5中任一项所述的系统,其中,当特定数据包被所述网络设备初始地接收时,默认关键字组成规则原语被所述关键字组成原语使用以构造查找关键字。
10.根据权利要求9所述的系统,其中,所述默认关键字组成规则原语基于所述网络设备上的所述多个入口端口中接收所述特定数据包的到达端口。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于甲骨文国际公司,未经甲骨文国际公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780015786.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于在网络设备中提供分类资源的分区的系统和方法
- 下一篇:以太网帧注入器