Fair scheduling in broadcast environments
First Claim
Patent Images
1. A method for fair scheduling comprising:
- receiving a packet at a node;
assigning a start tag to the received packet, the start tag based, at least in part, on a maximum of a time measured by a virtual clock when the packet was received and a finish tag of a previously received packet, wherein the finish tag is based, at least in part, on a start tag of the previously received packet; and
transmitting the received packet at a time based, at least in part, on the assigned start tag, wherein transmitting the received packet comprises;
attempting to transmit the received packet;
assigning a back-off interval based, at least in part, on the assigned start tag minus a time measured by the virtual clock at a time when an attempt is made to transmit the received packet; and
transmitting the received packet after the back-off interval has expired.
2 Assignments
0 Petitions
Accused Products
Abstract
Fair scheduling in broadcast environments is disclosed. In one embodiment, a computerized system includes a link through which packets are transmitted, and a plurality of nodes. Each node transmits a packet through the link when counting from a back-off interval reaches a predetermined transmission time. The back-off interval for each packet is based on at least a start tag of the packet, which is assigned to the packet when it arrives at or within the node for transmission over the link, such as at a controller (e.g., a medium-access controller, or MAC) of the node.
-
Citations
11 Claims
-
1. A method for fair scheduling comprising:
-
receiving a packet at a node;
assigning a start tag to the received packet, the start tag based, at least in part, on a maximum of a time measured by a virtual clock when the packet was received and a finish tag of a previously received packet, wherein the finish tag is based, at least in part, on a start tag of the previously received packet; and
transmitting the received packet at a time based, at least in part, on the assigned start tag, wherein transmitting the received packet comprises;
attempting to transmit the received packet;
assigning a back-off interval based, at least in part, on the assigned start tag minus a time measured by the virtual clock at a time when an attempt is made to transmit the received packet; and
transmitting the received packet after the back-off interval has expired. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A machine-readable medium having computer-executable instructions for performing steps comprising:
-
receiving a packet at a node;
assigning a start tag to the received packet, the start tag based, at least in part, on a maximum of a time measured by a virtual clock when the packet was received and a finish tag of a previously received packet, wherein the finish tag is based, at least in part, on a start tag of the previously received packet; and
transmitting the received packet at a time based, at least in part, on the assigned start tag, wherein transmitting the received packet comprises;
attempting to transmit the received packet;
assigning a back-off interval based, at least in part, on the assigned start tag minus a time measured by the virtual clock at a time when an attempt is made to transmit the received packet; and
transmitting the received packet after the back-off interval has expired. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer system comprising:
-
an application generating a packet for transmission through a link operatively coupled to a computer; and
a controller to receive the packet, assign a start tag for the received packet based, at least in part, on a maximum of a time measured by a virtual clock when the packet was received and a finish tag of a previously received packet, wherein the finish tag is based, at least in part, on a start tag of the previously received packet, and transmit the received packet at a time based, at least in part, on the assigned start tag, wherein transmitting the received packet comprises;
attempting to transmit the received packet;
assigning a back-off interval based, at least in part, on the assigned start tag minus a time measured by the virtual clock at a time when an attempt is made to transmit the received packet; and
transmitting the received packet after the back-off interval has expired.
-
Specification