Patents by Inventor Christopher A. Wildman
Christopher A. Wildman has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9692857Abstract: A network device receives a packet that includes a plurality of header fields. The packet is parsed to sequentially obtain the plurality of header fields. One or more header fields not yet available at the network device are predicted based on one or more header fields that are available at the network device. A network processing decision is generated for the packet based on the predicted one or more header fields and the one or more header fields that are available at the network device.Type: GrantFiled: May 1, 2015Date of Patent: June 27, 2017Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
-
Patent number: 9641457Abstract: 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.Type: GrantFiled: May 1, 2015Date of Patent: May 2, 2017Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
-
Patent number: 9569561Abstract: 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.Type: GrantFiled: July 9, 2013Date of Patent: February 14, 2017Assignee: Cisco Technology, Inc.Inventors: Christopher A. Wildman, Laura Sharpless
-
Patent number: 9473395Abstract: 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.Type: GrantFiled: February 23, 2015Date of Patent: October 18, 2016Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Alessandro Fulli, Putu Harry Subagio, Mingzhe Li, Christopher A. Wildman, Yichou Lin, Chih-Tsung Huang
-
Publication number: 20150236982Abstract: 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.Type: ApplicationFiled: May 1, 2015Publication date: August 20, 2015Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
-
Publication number: 20150237177Abstract: A network device receives a packet that includes a plurality of header fields. The packet is parsed to sequentially obtain the plurality of header fields. One or more header fields not yet available at the network device are predicted based on one or more header fields that are available at the network device. A network processing decision is generated for the packet based on the predicted one or more header fields and the one or more header fields that are available at the network device.Type: ApplicationFiled: May 1, 2015Publication date: August 20, 2015Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
-
Patent number: 9065780Abstract: A network device receives a packet that includes a plurality of header fields. The packet is parsed to sequentially obtain the plurality of header fields. One or more header fields not yet available at the network device are predicted based on one or more header fields that are available at the network device. A network processing decision is generated for the packet based on the predicted one or more header fields and the one or more header fields that are available at the network device.Type: GrantFiled: February 14, 2013Date of Patent: June 23, 2015Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
-
Publication number: 20150172177Abstract: 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.Type: ApplicationFiled: February 23, 2015Publication date: June 18, 2015Inventors: Thomas J. Edsall, Alessandro Fulli, Putu Harry Subagio, Mingzhe Li, Christopher A. Wildman, Yichou Lin, Chih-Tsung Huang
-
Patent number: 9055004Abstract: 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.Type: GrantFiled: February 14, 2013Date of Patent: June 9, 2015Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
-
Patent number: 9001830Abstract: 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.Type: GrantFiled: December 7, 2012Date of Patent: April 7, 2015Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Alessandro Fulli, Putu Harry Subagio, Mingzhe Li, Christopher A. Wildman, Yichou Lin, Chih-Tsung Huang
-
Publication number: 20150019563Abstract: 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.Type: ApplicationFiled: July 9, 2013Publication date: January 15, 2015Inventors: Christopher A. Wildman, Laura Sharpless