-
公开(公告)号:US09569561B2
公开(公告)日:2017-02-14
申请号:US13937390
申请日:2013-07-09
Applicant: Cisco Technology, Inc.
Inventor: Christopher A. Wildman , Laura Sharpless
CPC classification number: G06F17/30982 , G11C15/00 , H04L9/12 , H04L63/0435
Abstract: A network device receives data packets and derives a key from headers in the packets. A search engine in the device searches, or performs a table lookup, for information based on the key and multiple programmable masks. The search engine includes a hash based search engine that comprises multiple mask modules each to mask an input key with a respective programmable mask, to produce multiple masked keys. The search engine also includes an array of hash modules each corresponding to a respective one of the masked keys and including a hash table. Each of the hash modules searches its hash table for a data value based on a hash of the corresponding masked key, and outputs a found data value, if any, resulting from the search. A selector selects among the found data values and output the selected data value.
Abstract translation: 一个网络设备接收数据包,并从包中的头中导出一个密钥。 设备中的搜索引擎基于密钥和多个可编程掩码来搜索或执行表查找信息。 搜索引擎包括基于哈希的搜索引擎,其包括多个掩模模块,每个掩模模块用相应的可编程掩码掩蔽输入密钥,以产生多个掩蔽密钥。 搜索引擎还包括散列模块的阵列,每个散列模块对应于相应的一个掩蔽密钥并且包括哈希表。 每个散列模块基于相应的屏蔽密钥的散列来搜索其散列表中的数据值,并输出从搜索结果得到的找到的数据值(如果有的话)。 选择器在所找到的数据值中进行选择并输出所选择的数据值。
-
公开(公告)号:US20150172177A1
公开(公告)日:2015-06-18
申请号:US14628880
申请日:2015-02-23
Applicant: Cisco Technology, Inc.
Inventor: Thomas J. Edsall , Alessandro Fulli , Putu Harry Subagio , Mingzhe Li , Christopher A. Wildman , Yichou Lin , Chih-Tsung Huang
IPC: H04L12/721 , H04L12/801
CPC classification number: H04L45/38 , H04L45/566 , H04L47/12 , H04L47/20 , H04L47/2441 , H04L47/2483
Abstract: Presented herein are techniques to achieve ultra low latency determination of processing decisions for packets in a network device. A packet is received at a port of a network device. A processing decision is determined in a first processing decision path based on content of the packet and one or more network policies. A processing decision is determined in a second processing decision path, in parallel with the first processing path, by accessing a table storing processing decisions. The second processing decision path can output a processing decision faster than the first processing decision path for packets that match one or more particular packet flow parameters contained in the table. A processing decision determined by the second processing decision path, if one can be made, is used, and otherwise a processing decision determined by the first processing decision path is used.
Abstract translation: 这里提出的技术是实现超低等待时间确定网络设备中的分组的处理决策。 在网络设备的端口处接收分组。 基于分组的内容和一个或多个网络策略在第一处理决策路径中确定处理决定。 通过访问存储处理决定的表,在与第一处理路径并行的第二处理决定路径中确定处理决定。 第二处理决策路径可以比与表中包含的一个或多个特定分组流参数匹配的分组的第一处理决策路径更快地输出处理决策。 如果使用由第二处理决定路径确定的处理决定,则使用由第一处理判定路径确定的处理决定。
-
公开(公告)号:US20150019563A1
公开(公告)日:2015-01-15
申请号:US13937390
申请日:2013-07-09
Applicant: Cisco Technology, Inc.
Inventor: Christopher A. Wildman , Laura Sharpless
IPC: G06F17/30
CPC classification number: G06F17/30982 , G11C15/00 , H04L9/12 , H04L63/0435
Abstract: A network device receives data packets and derives a key from headers in the packets. A search engine in the device searches, or performs a table lookup, for information based on the key and multiple programmable masks. The search engine includes a hash based search engine that comprises multiple mask modules each to mask an input key with a respective programmable mask, to produce multiple masked keys. The search engine also includes an array of hash modules each corresponding to a respective one of the masked keys and including a hash table. Each of the hash modules searches its hash table for a data value based on a hash of the corresponding masked key, and outputs a found data value, if any, resulting from the search. A selector selects among the found data values and output the selected data value.
Abstract translation: 一个网络设备接收数据包,并从包中的头中导出一个密钥。 设备中的搜索引擎基于密钥和多个可编程掩码来搜索或执行表查找信息。 搜索引擎包括基于哈希的搜索引擎,其包括多个掩模模块,每个掩模模块用相应的可编程掩码掩蔽输入密钥,以产生多个掩蔽密钥。 搜索引擎还包括散列模块的阵列,每个散列模块对应于相应的一个掩蔽密钥并且包括哈希表。 每个散列模块基于相应的屏蔽密钥的散列来搜索其散列表中的数据值,并输出从搜索结果得到的找到的数据值(如果有的话)。 选择器在所找到的数据值中进行选择并输出所选择的数据值。
-
公开(公告)号:US20140078902A1
公开(公告)日:2014-03-20
申请号:US13767172
申请日:2013-02-14
Applicant: CISCO TECHNOLOGY, INC.
Inventor: Thomas J. Edsall , Putu Harry Subagio , Alessandro Fulli , Christopher A. Wildman , Mingzhe Li , Wei-Jen Huang , Chih-Tsung Huang
IPC: H04L12/70
CPC classification number: H04L49/25 , H04L29/0653 , H04L43/04 , H04L45/74 , H04L45/745 , H04L47/12 , H04L47/70 , H04L49/251 , H04L49/253 , H04L49/3009 , H04L49/3063 , H04L49/355 , H04L49/9057 , H04L69/22
Abstract: A network device receives a packet that includes a plurality of sets of fields. Sets of fields of the packet are parsed and the field sets are evaluated as soon as they are available to determine whether a processing decision can be made on the packet. Additional field sets may be parsed from the packet and obtained in parallel with determining whether a processing decision can be made, but once it is determined that a processing decision can be made, the evaluating of field sets is terminated such that any further field sets of the packet are ignored for purposes of making a processing decision for the packet.
Abstract translation: 网络设备接收包括多组字段的分组。 对数据包的字段进行解析,并且一旦可用,即可对字段集进行评估,以确定是否可以对数据包进行处理决定。 可以从分组中分析附加的字段集,并且与确定是否可以进行处理决定并行获得,但是一旦确定可以进行处理决定,则终止场集合的评估,使得任何另外的字段集合 为了对分组进行处理决定,该分组被忽略。
-
-
-