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: 20240094798
    Abstract: 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: Application
    Filed: May 16, 2022
    Publication date: March 21, 2024
    Inventors: William Brad Matthews, Bruce H. Kwan
  • Patent number: 11489785
    Abstract: 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: Grant
    Filed: July 30, 2020
    Date of Patent: November 1, 2022
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Puneet Agarwal, Bruce H. Kwan, Ajit K. Jain
  • Patent number: 10740006
    Abstract: 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: Grant
    Filed: November 17, 2017
    Date of Patent: August 11, 2020
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Patent number: 10735337
    Abstract: 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: Grant
    Filed: December 28, 2018
    Date of Patent: August 4, 2020
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Puneet Agarwal, Bruce H. Kwan, Ajit K. Jain
  • Patent number: 10067690
    Abstract: 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: Grant
    Filed: September 30, 2016
    Date of Patent: September 4, 2018
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Publication number: 20180081577
    Abstract: 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: Application
    Filed: November 17, 2017
    Publication date: March 22, 2018
    Applicant: Innovium, Inc.
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Patent number: 9894670
    Abstract: 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: Grant
    Filed: December 17, 2015
    Date of Patent: February 13, 2018
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Puneet Agarwal, Bruce H. Kwan, Ashwin Alapati, William Fan, Ajit K. Jain
  • Patent number: 9841913
    Abstract: 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: Grant
    Filed: June 16, 2017
    Date of Patent: December 12, 2017
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Patent number: 9785367
    Abstract: 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: Grant
    Filed: June 24, 2016
    Date of Patent: October 10, 2017
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Publication number: 20170285984
    Abstract: 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: Application
    Filed: June 16, 2017
    Publication date: October 5, 2017
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Patent number: 9690507
    Abstract: 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: Grant
    Filed: June 24, 2016
    Date of Patent: June 27, 2017
    Assignee: Innovium, Inc.
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Publication number: 20170017423
    Abstract: 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: Application
    Filed: June 24, 2016
    Publication date: January 19, 2017
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Publication number: 20170017420
    Abstract: 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: Application
    Filed: December 18, 2015
    Publication date: January 19, 2017
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Publication number: 20170017424
    Abstract: 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: Application
    Filed: June 24, 2016
    Publication date: January 19, 2017
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Publication number: 20170017419
    Abstract: 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: Application
    Filed: December 18, 2015
    Publication date: January 19, 2017
    Inventors: William Brad Matthews, Bruce H. Kwan, Mohammad K. Issa, Neil Barrett, Avinash Gyanendra Mani
  • Patent number: 8976669
    Abstract: 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: Grant
    Filed: August 26, 2013
    Date of Patent: March 10, 2015
    Assignee: Broadcom Corporation
    Inventors: Bruce H. Kwan, Puneet Agarwal
  • Publication number: 20130343193
    Abstract: 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: Application
    Filed: August 26, 2013
    Publication date: December 26, 2013
    Applicant: Broadcom Corporation
    Inventors: Bruce H. KWAN, Puneet AGARWAL
  • Patent number: 8520517
    Abstract: 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: Grant
    Filed: February 15, 2008
    Date of Patent: August 27, 2013
    Assignee: Broadcom Corporation
    Inventors: Bruce H. Kwan, Puneet Agarwal
  • Patent number: 8320240
    Abstract: 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: Grant
    Filed: November 14, 2005
    Date of Patent: November 27, 2012
    Assignee: Broadcom Corporation
    Inventors: Bruce H. Kwan, Chien-Hsien Wu
  • Patent number: 8130648
    Abstract: 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: Grant
    Filed: December 21, 2006
    Date of Patent: March 6, 2012
    Assignee: Broadcom Corporation
    Inventors: Bruce H. Kwan, Puneet Agarwal, Asad Khamisy