Patents by Inventor Alessandro Fulli
Alessandro Fulli 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: 11249805Abstract: Methods and systems for memory resource allocation are disclosed. In an embodiment, a method for memory resource allocation involves reading a pool-specific configuration record from an array of memory mapped pool-specific configuration records according to a memory resource allocation request that is held in an address register of a memory mapped register interface, performing a memory resource allocation operation to service the memory resource allocation request, wherein performing the memory resource allocation operation involves interacting with a resource list according to a pointer in the pool-specific configuration record, advancing the pointer after the interaction, and updating the pointer in the pool-specific configuration record with the advanced pointer.Type: GrantFiled: May 26, 2020Date of Patent: February 15, 2022Assignee: Pensando Systems, Inc.Inventors: Michael B. Galles, Alessandro Fulli, Sameer Kittur Subrahmanya
-
Publication number: 20210373955Abstract: Methods and systems for memory resource allocation are disclosed. In an embodiment, a method for memory resource allocation involves reading a pool-specific configuration record from an array of memory mapped pool-specific configuration records according to a memory resource allocation request that is held in an address register of a memory mapped register interface, performing a memory resource allocation operation to service the memory resource allocation request, wherein performing the memory resource allocation operation involves interacting with a resource list according to a pointer in the pool-specific configuration record, advancing the pointer after the interaction, and updating the pointer in the pool-specific configuration record with the advanced pointer.Type: ApplicationFiled: May 26, 2020Publication date: December 2, 2021Inventors: Michael B. GALLES, Alessandro FULLI, Sameer Kittur SUBRAHMANYA
-
Publication number: 20180367456Abstract: A method is provided in one example embodiment and may include receiving a packet at a node, wherein the node comprises one or more first data structures comprising Bit Index Explicit Replication (BIER) BitMask information for one or more neighboring forwarders and a second data structure comprising multicast forwarding information; identifying a BIER BitString contained in the packet, wherein the BIER BitString is identified within an Internet Protocol (IP) header or a label included with the packet; determining multicast forwarding information for the packet based on the BIER BitString; and forwarding the packet toward a plurality of destination nodes based on the multicast forwarding information.Type: ApplicationFiled: June 20, 2017Publication date: December 20, 2018Applicant: CISCO TECHNOLOGY, INC.Inventors: Ijsbrand Wijnands, Neale D.R. Ranns, John H.W. Bettink, Alessandro Fulli
-
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: 9565100Abstract: A packet is received at an ingress port of a network device. Based on forwarding information in the packet, an adjacency point is generated using a forwarding information database. If the packet is a routed packet, the adjacency pointer is used as an index to an entry in a media access control (MAC) table that identifies an egress port for the packet. If the packet is not a routed packet, a search is performed in the MAC table to locate an entry in the MAC table that identifies an egress port for the packet.Type: GrantFiled: October 23, 2015Date of Patent: February 7, 2017Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Alessandro Fulli, Putu Harry Subagio, Chih-Tsung Huang
-
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
-
Patent number: 9379978Abstract: A packet is received at an ingress port of a networking device and a forwarding result that identifies an egress port for the packet is generated. In parallel with the generation of the forwarding result, a network address translation (NAT) result that identifies one or more NAT rules for possible application to the packet is generated. The forwarding result and the NAT result are then used to generate a routing decision result.Type: GrantFiled: July 24, 2015Date of Patent: June 28, 2016Assignee: Cisco Technology, Inc.Inventors: Alessandro Fulli, Putu Harry Subagio, Chih-Tsung Huang
-
Patent number: 9197552Abstract: A packet is received at an ingress port of a network device. Based on forwarding information in the packet, an adjacency point is generated using a forwarding information database. If the packet is a routed packet, the adjacency pointer is used as an index to an entry in a media access control (MAC) table that identifies an egress port for the packet. If the packet is not a routed packet, a search is performed in the MAC table to locate an entry in the MAC table that identifies an egress port for the packet.Type: GrantFiled: February 14, 2013Date of Patent: November 24, 2015Assignee: Cisco Technology, Inc.Inventors: Thomas J. Edsall, Alessandro Fulli, Putu Harry Subagio, Chih-Tsung Huang
-
Publication number: 20150334020Abstract: A packet is received at an ingress port of a networking device and a forwarding result that identifies an egress port for the packet is generated. In parallel with the generation of the forwarding result, a network address translation (NAT) result that identifies one or more NAT rules for possible application to the packet is generated. The forwarding result and the NAT result are then used to generate a routing decision result.Type: ApplicationFiled: July 24, 2015Publication date: November 19, 2015Inventors: Alessandro Fulli, Putu Harry Subagio, Chih-Tsung Huang
-
Patent number: 9154415Abstract: A packet is received at an ingress port of a networking device and a forwarding result that identifies an egress port for the packet is generated. In parallel with the generation of the forwarding result, a network address translation (NAT) result that identifies one or more NAT rules for possible application to the packet is generated. The forwarding result and the NAT result are then used to generate a routing decision result.Type: GrantFiled: January 31, 2013Date of Patent: October 6, 2015Assignee: Cisco Technology, Inc.Inventors: Alessandro Fulli, Putu Harry Subagio, 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
-
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
-
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: 9049200Abstract: A method in an example embodiment includes creating a first search key from variable data of a message received in a network environment, creating a second search key from constant data of the message, identifying a first database entry in a first database based on the first search key, and identifying a second database entry in a second database based on the second search key. The method can also include performing an action associated with the first database entry when a correlation is identified between the first and second database entries. In specific embodiments, the variable data are modified and the constant data are not modified. The first search key can be created prior or subsequent to forwarding the message. In further embodiments, the correlation is identified when an offset of the first database entry is the same as an offset of the second database entry.Type: GrantFiled: July 27, 2012Date of Patent: June 2, 2015Assignee: CISCO TECHNOLOGY, INC.Inventors: Mingzhe Li, Alessandro Fulli, Putu Harry Subagio, 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: 20140032591Abstract: A method in an example embodiment includes creating a first search key from variable data of a message received in a network environment, creating a second search key from constant data of the message, identifying a first database entry in a first database based on the first search key, and identifying a second database entry in a second database based on the second search key. The method can also include performing an action associated with the first database entry when a correlation is identified between the first and second database entries. In specific embodiments, the variable data are modified and the constant data are not modified. The first search key can be created prior or subsequent to forwarding the message. In further embodiments, the correlation is identified when an offset of the first database entry is the same as an offset of the second database entry.Type: ApplicationFiled: July 27, 2012Publication date: January 30, 2014Inventors: Mingzhe Li, Alessandro Fulli, Putu Harry Subagio, Chih-Tsung Huang
-
Patent number: 8199764Abstract: Methods and devices are provided for the efficient allocation and deletion of virtual output queues. According to some implementations, incoming packets are classified according to a queue in which the packet (or classification information for the packet) will be stored, e.g., according to a “Q” value. For example, a Q value may be a Q number defined as {Egress port number?Priority number?Ingress port number}. Only a single physical queue is allocated for each classification. When a physical queue is empty, the physical queue is preferably de-allocated and added to a “free list” of available physical queues. Accordingly, the total number of allocated physical queues preferably does not exceed the total number of classified packets. Because the input buffering requirements of Fiber Channel (“FC”) and other protocols place limitations on the number of incoming packets, the dynamic allocation methods of the present invention result in a sparse allocation of physical queues.Type: GrantFiled: August 25, 2003Date of Patent: June 12, 2012Assignee: Cisco Technology, Inc.Inventors: Robert Hoffman, Raymond J. Kloth, Alessandro Fulli