×

System and method for a quality of service in a multi-layer network element

  • US 6,094,435 A
  • Filed: 06/30/1997
  • Issued: 07/25/2000
  • Est. Priority Date: 06/30/1997
  • Status: Expired due to Fees
First Claim
Patent Images

1. An apparatus for detecting and handling queue congestion in an output port of a multi-layer network element comprising:

  • a central processing unit (CPU);

    a switching element coupled to the CPU and configured to output packets to a network through the output port, the switching element including;

    at least one output queue having storage locations for packet pointers, each pointer configured to point to portions of a packet to be transmitted on the network, associated with the output port, and wherein the number of storage locations is variable,a start register configured to store a pointer to the storage location at the front of the queue,an end register configured to store a pointer to the storage location at the end of the queue as determined by the number of storage locations,a next-free register configured to store a pointer to the next available storage location, wherein packet pointers are stored in the output queue beginning at the location pointed to by the start register and the next-free register is incremented as the next available storage location moves toward the second pointer,a programmable threshold register configured to store a threshold pointer to a storage location between the location represented by the start register and the location represented by the end register,threshold logic configured to output a congestion signal when the value in the next free register represents a storage location logically located between the location pointed to key the threshold register and including the storage location pointed to by the end register,random discarding logic configured to randomly select packets to discard in response to the signal, so that once the threshold is exceeded, incoming packets are randomly discarded,capacity logic configured to output a queue full signal to the CPU when the value in the next free register is equal to the value in the end register,a memory having at least one entry configured to store information about forwarding decisions for the packet, wherein the entry is adapted to indicate whether packets associated with that entry should be counted,memory access logic configured to access the entry when an incoming packet associated with that entry arrives at the switching element, anda packet counter configured to count the number of times the entry is accessed, to represent an entry bandwidth; and

    a computer program mechanism coupled to the CPU configured to compare the contents of the packet counter to a reservation-based protocol negotiated value for lowering a priority of any future packet associated with the entry and destined for the output queue.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×