CPC H04L 47/522 (2013.01) [H04L 47/562 (2013.01); H04L 47/622 (2013.01); H04L 69/22 (2013.01)] | 30 Claims |
1. A method for collaborative queue of time turns for transmitting data packets on a shared radio channel in a data communications network of a variable number of nodes, the method comprising: storing, on a local node of the data communications network, a current number of turns in a transmitting queue and a current turn based on any contents of a queue size field and a queue current turn field, respectively, in each header of zero or more data packets received from other nodes on the shared radio channel, wherein a turn is a predetermined amount of time on the channel; upon determining that there is a first local data packet of at least one local data packet to transmit, obtaining a local transmit turn for the local node in the queue based on successfully transmitting the first local data packet by the local node in a time interval following a last turn in the queue, wherein the time interval is less than a maximum time interval value, and a first data link layer header in the first data packet includes queue fields that hold data that indicate the current number of nodes in the transmitting queue, the local transmit turn, and a request for adding the local transmit turn, thereby ending the current turn; while there is still a remaining local data packet of the at least one local data packet to transmit and the current turn is equal to the local transmit turn, transmitting the remaining local data packet in which the queue fields indicate the current number of turns in the transmitting queue, the current turn, and no request for adding a turn; and determining that the local data packet was successfully transmitted when a successful acknowledgement control packet that uniquely indicates the local data packet is received.
|