Scheduling system utilizing pointer perturbation mechanism to improve efficiency
First Claim
1. A scheduling device comprising a plurality of ingress ports to receive data from external sources;
- a plurality of egress ports to transmit data to external destinations;
a plurality of queues to store data waiting to be transmitted, wherein the queues are associated with a particular ingress port and a particular egress port;
a request generator to generate requests for permission to transmit data from the queues;
a switching matrix to provide selective connectivity between the plurality of ingress ports and the plurality of egress ports; and
a scheduler to receive the requests, generate grants based thereon, and configure the switching matrix, wherein said scheduler will perform perturbation of its scheduling state if it is determines that it is operating inefficiently.
1 Assignment
0 Petitions
Accused Products
Abstract
In general, in one aspect, the disclosure describes a switching device that includes a plurality of ingress ports to receive data from external sources and a plurality of egress ports to transmit data to external destinations. The switching device also includes a plurality of queues to store data waiting to be transmitted from a particular ingress port to a particular egress port. A request generator generates requests for permission to transmit data for the queues. A request indicates a cumulative amount of data contained in a respective queue. A switching matrix provides selective connectivity between the ingress ports and the egress ports. The switching device further includes a scheduler to receive the requests, generate grants based thereon, and configure the switching matrix. The scheduler incorporates a mechanism to periodically monitor its operating efficiency and perturb its internal state when its efficiency is below a certain desired level.
-
Citations
35 Claims
-
1. A scheduling device comprising
a plurality of ingress ports to receive data from external sources; -
a plurality of egress ports to transmit data to external destinations;
a plurality of queues to store data waiting to be transmitted, wherein the queues are associated with a particular ingress port and a particular egress port;
a request generator to generate requests for permission to transmit data from the queues;
a switching matrix to provide selective connectivity between the plurality of ingress ports and the plurality of egress ports; and
a scheduler to receive the requests, generate grants based thereon, and configure the switching matrix, wherein said scheduler will perform perturbation of its scheduling state if it is determines that it is operating inefficiently. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method comprising:
-
receiving data from external sources;
storing the data waiting to be transmitted in queues, wherein the queues are associated with an external source from which the data came and an external destination to which the data is going;
generating requests for permission to transmit data from the queues;
receiving the requests at a scheduler;
generating grants in the scheduler based on the received requests;
performing perturbation when the scheduler determines that it is operating inefficiently; and
selectively connecting the external sources and the external destinations based on the generated grants. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
30. A store and forward device comprising
a plurality of Ethernet cards to receive data from and transmit data to external sources, wherein the plurality of Ethernet cards include an ingress interface module to receive data from external sources, store the data in queues associated with at least some subset of destination and priority, generate requests for transmitting data, and transmit data from queues upon receipt of an associated grant; - and
an egress interface module to receive data from the ingress interface module, and transmit the data to a destination;
a switching matrix to provide selective connectivity between the Ethernet cards;
a backplane consisting of a plurality of channels to connect the plurality of Ethernet cards to the switching matrix; and
a scheduler to receive the requests, process the requests and generate grants therefrom, and configure the switching matrix accordingly, wherein said scheduler performs perturbation if it is determines that it is operating inefficiently. - View Dependent Claims (31, 32, 33, 34, 35)
- and
Specification