Patents by Inventor Bruce H. Kwan
Bruce H. Kwan 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).
-
Publication number: 20240094798Abstract: A network device accesses, from a queue corresponding to a port of the device, a packet for processing. The device identifies a present operating region (ORE) of one or more OREs specified for the device, an ORE being associated with at least one of (i) one or more device attributes, or (ii) one or more environmental factors associated with an environment in which the device is operational. The device determines a number of power credits available for processing one or more packets. In response to determining that the number of power credits available is non-negative, the device completes processing of the packet. The device computes, based at least on the present ORE, a power credit reduction for the packet, which corresponds to an amount of power for processing the packet, and reduces the number of power credits available by the power credit reduction for the packet.Type: ApplicationFiled: May 16, 2022Publication date: March 21, 2024Inventors: William Brad Matthews, Bruce H. Kwan
-
Patent number: 11489785Abstract: A network traffic manager receives, from an ingress port in a group of ingress ports, a cell of a packet destined for an egress port. Upon determining that a number of cells of the packet stored in a buffer queue meets a threshold value, the manager checks whether the group of ingress ports has been assigned a token for the queue. Upon determining that the group of ingress ports has been assigned the token, the manager determines that other cells of the packet are stored in the buffer, and accordingly stores the received cell in the buffer, and stores linking information for the received cell in a receive context for the packet. When all cells of the packet have been received, the manager copies linking information for the packet cells to the buffer queue or a copy generator queue, and releases the token from the group of ingress ports.Type: GrantFiled: July 30, 2020Date of Patent: November 1, 2022Assignee: Innovium, Inc.Inventors: William Brad Matthews, Puneet Agarwal, Bruce H. Kwan, Ajit K. Jain
-
Patent number: 10740006Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: GrantFiled: November 17, 2017Date of Patent: August 11, 2020Assignee: Innovium, Inc.Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Patent number: 10735337Abstract: A network traffic manager receives, from an ingress port, a cell of a packet destined for an egress port. Upon determining that a number of cells of the packet stored in a buffer queue meets a threshold value, the manager checks whether the ingress port has been assigned a token corresponding to the queue. Upon determining that the ingress port has been assigned the token, the manager determines whether other cells of the packet are stored in the buffer, in response to which the manager stores the received cell in the buffer, and stores linking information for the received cell in a receive context for the packet. When all cells of the packet have been received, the manager copies linking information for the packet cells from the receive context to the buffer queue or a copy generator queue, and releases the token from the ingress port.Type: GrantFiled: December 28, 2018Date of Patent: August 4, 2020Assignee: Innovium, Inc.Inventors: William Brad Matthews, Puneet Agarwal, Bruce H. Kwan, Ajit K. Jain
-
Patent number: 10067690Abstract: A memory system for a network device is described. The memory system includes a packing data buffer including a plurality of memory banks arranged in a plurality of rows and a plurality of columns. The packing data buffer is configured to store incoming data elements of a plurality of widths in the plurality of memory banks. The memory system also includes a free address manager configured to generate an available bank set based on one or more free memory banks in the plurality of memory banks. And, the memory system includes distributed link memory configured to maintain one or more pointers to interconnect a set of one or more memory locations of the one or more memory banks in the packing data buffer to generate at least one list.Type: GrantFiled: September 30, 2016Date of Patent: September 4, 2018Assignee: Innovium, Inc.Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Publication number: 20180081577Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: ApplicationFiled: November 17, 2017Publication date: March 22, 2018Applicant: Innovium, Inc.Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Patent number: 9894670Abstract: A resource management system for a network device is described. A resource management system includes a resource manager configured to generate a sequence of a plurality of access time slots for a plurality of candidate entities and to redistribute access to one or more of the plurality of access time slots in the sequence based on availability and eligibility. The resource management system also includes a resource monitor configured to detect usage of each of the access time slots by each of the plurality of candidate entities.Type: GrantFiled: December 17, 2015Date of Patent: February 13, 2018Assignee: Innovium, Inc.Inventors: William Brad Matthews, Puneet Agarwal, Bruce H. Kwan, Ashwin Alapati, William Fan, Ajit K. Jain
-
Patent number: 9841913Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: GrantFiled: June 16, 2017Date of Patent: December 12, 2017Assignee: Innovium, Inc.Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Patent number: 9785367Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: GrantFiled: June 24, 2016Date of Patent: October 10, 2017Assignee: Innovium, Inc.Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Publication number: 20170285984Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: ApplicationFiled: June 16, 2017Publication date: October 5, 2017Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Patent number: 9690507Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: GrantFiled: June 24, 2016Date of Patent: June 27, 2017Assignee: Innovium, Inc.Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Publication number: 20170017423Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: ApplicationFiled: June 24, 2016Publication date: January 19, 2017Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Publication number: 20170017420Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: ApplicationFiled: December 18, 2015Publication date: January 19, 2017Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Publication number: 20170017424Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: ApplicationFiled: June 24, 2016Publication date: January 19, 2017Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Publication number: 20170017419Abstract: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.Type: ApplicationFiled: December 18, 2015Publication date: January 19, 2017Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
-
Patent number: 8976669Abstract: Aspects of a switch fabric end-to-end congestion avoidance mechanism are presented. Aspects of a system for end-to-end congestion avoidance in a switch fabric may include at least one circuit that enables reception of a congestion notification message that specifies a traffic flow identifier. The circuitry may enable increase or decrease of a current rate for transmission of data link layer (DLL) protocol data units (PDU) associated with the specified traffic flow identifier as a response to the reception of the congestion notification message.Type: GrantFiled: August 26, 2013Date of Patent: March 10, 2015Assignee: Broadcom CorporationInventors: Bruce H. Kwan, Puneet Agarwal
-
Publication number: 20130343193Abstract: Aspects of a switch fabric end-to-end congestion avoidance mechanism are presented. Aspects of a system for end-to-end congestion avoidance in a switch fabric may include at least one circuit that enables reception of a congestion notification message that specifies a traffic flow identifier. The circuitry may enable increase or decrease of a current rate for transmission of data link layer (DLL) protocol data units (PDU) associated with the specified traffic flow identifier as a response to the reception of the congestion notification message.Type: ApplicationFiled: August 26, 2013Publication date: December 26, 2013Applicant: Broadcom CorporationInventors: Bruce H. KWAN, Puneet AGARWAL
-
Patent number: 8520517Abstract: Aspects of a switch fabric end-to-end congestion avoidance mechanism are presented. Aspects of a system for end-to-end congestion avoidance in a switch fabric may include at least one circuit that enables reception of a congestion notification message that specifies a traffic flow identifier. The circuitry may enable increase or decrease of a current rate for transmission of data link layer (DLL) protocol data units (PDU) associated with the specified traffic flow identifier as a response to the reception of the congestion notification message.Type: GrantFiled: February 15, 2008Date of Patent: August 27, 2013Assignee: Broadcom CorporationInventors: Bruce H. Kwan, Puneet Agarwal
-
Patent number: 8320240Abstract: A network device for scheduling packets in a plurality of queues includes a plurality of leaky bucket modules, each of the plurality of leaky bucket mechanisms being associated with one of a plurality of queues and configured to process information based on a predefined bandwidth, a scheduler configured to schedule services of the plurality of queues and a metering module for tracking whether or not the plurality of queues has exceeded a predefined threshold through the leaky bucket modules. If the plurality of queues has exceeded the predefined threshold, the metering module is configured to compute a new bandwidth allocation for each of the plurality of queues, the new bandwidth allocation replacing the predefined bandwidth and being proportional to the predefined bandwidth for each of the plurality of queues.Type: GrantFiled: November 14, 2005Date of Patent: November 27, 2012Assignee: Broadcom CorporationInventors: Bruce H. Kwan, Chien-Hsien Wu
-
Patent number: 8130648Abstract: A network device and method include token buckets, each token bucket associated with one of clients and virtual ports and configured to process information based on a predefined bandwidth and a strict priority/weighted deficit round robin. A maximum rate shaper module and a minimum rate meter module shape and meter whether any of the clients or virtual ports have exceeded a predefined threshold. A scheduler is configured to schedule services of the clients and to calculate a new bandwidth allocation for at least one of the clients or virtual ports when the at least one of the clients or virtual ports has exceeded the predefined threshold, the new bandwidth allocation replacing the predefined bandwidth and being proportional to the predefined bandwidth for each of the clients or virtual ports.Type: GrantFiled: December 21, 2006Date of Patent: March 6, 2012Assignee: Broadcom CorporationInventors: Bruce H. Kwan, Puneet Agarwal, Asad Khamisy