×

Event-driven cell scheduler and method for supporting multiple service categories in a communication network

  • US 5,793,747 A
  • Filed: 03/14/1996
  • Issued: 08/11/1998
  • Est. Priority Date: 03/14/1996
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method for scheduling transmission times for a plurality of packets on an outgoing link for a communication network, comprising the steps of:

  • A) enqueuing, by a memory controller, the packets in a plurality of per connection data queues in at least one packet memory, wherein each queue has a queue ID;

    B) notifying, by the memory controller, at least one multiservice category scheduler, where a data queue is empty immediately prior to the memory controller enqueuing the packets, that a first arrival has occurred;

    C) calculating, by a calculation unit of the multiservice category scheduler, using service category and present state information associated with a connection stored in a per connection context memory, an earliest transmission time, TIME EARLIEST and an updated PRIORITY INDEX and updating and storing present state information in a per connection context memory;

    D) generating, by the calculation unit, a "task" wherein the task includes;

    D1) the queue ID;

    D2) the TIME EARLIEST; and

    D3) the PRIORITY INDEX;

    E) inserting the task into one of at least a first calendar queue;

    F) storing, by the calendar queue, at the calculated TIME EARLIEST, the task in one of a plurality of priority task queues;

    G) removing, by a priority task decoder, at a time equal to or greater than TIME EARLIEST in accordance with a time opportunity, the task from the priority task queue and generating a request to the memory controller;

    H) dequeueing the packet by the memory controller and transmitting the packet;

    I) notifying, by the memory controller, where more packets remain to be transmitted, the multiservice category scheduler that the per connection queue is unempty;

    J) calculating, by the calculation unit, an updated TIME EARLIEST and an updated PRIORITY INDEX based on service category and present state information associated with the connection, and updating and storing present state information in the per connection context memory;

    K) generating, where the per connection queue is unempty, a new task using the updated TIME EARLIEST, by the calculation unit, for the connection and returning to step E, and otherwise, where the per connection queue is empty, waiting for the notification by the memory controller and returning to step C.

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