Claims
- 1. For use in a first node in a network having a plurality of nodes employing Carrier Sense Multiple Access with Collision Detection (CSMA/CD) protocol for channel access, a method for improving the fairness of access to a channel, comprising the steps of:
- sensing whether or not the first node of the network has captured a channel;
- sensing a collision between a first packet transmission by the first node and a second packet transmission by a second node of the network;
- after sensing the collision, selecting a backoff time to wait before making each of a number of retransmission attempts of the .[.second.]. .Iadd.first .Iaddend.packet, .[.the selected backoff time between each said attempt and the immediately preceding attempt conforming to a selected integral multiple r of a slot time, where r is a positive integer, and corresponding to the number of the retransmission attempts made previously,.]. whereby, if the first node has .Iadd.not .Iaddend.captured the channel, the backoff time is .Iadd.selected from .Iaddend.a prescribed .Iadd.range of .Iaddend.backoff .[.time.]. .Iadd.times.Iaddend.;
- if the first node has .[.not.]. captured the channel, the backoff time .[.before making at least a first of the retransmission of the attempts.]. is selected .[.to be r slot times longer than the prescribed backoff time.]. .Iadd.from a different range of backoff times including a longer backoff time than those included in said prescribed range.Iaddend.;
- monitoring the channel for activity from .[.the second node.]. .Iadd.other nodes .Iaddend.on the network;
- operating a backoff timer to provide the selected backoff time when the channel is idle;
- halting the backoff timer during any period in which the channel is not idle; and
- attempting retransmission of the .[.second.]. .Iadd.first .Iaddend.packet when the backoff timer expires.
- 2. For use in a first node in a network having a plurality of nodes employing Carrier Sense Multiple Access with Collision Detection (CSMA/CD) protocol for channel access, a method for improving the fairness of access to a channel, comprising the steps of:
- sensing whether or not the first node of the network has captured a channel;
- sensing a collision between a first packet transmission by the first node of the network and a second packet transmission by a second node of the network;
- after sensing the collision, selecting a backoff time to wait before making each of a number of retransmission attempts of the .[.second.]. .Iadd.first .Iaddend.packet, .[.the selected backoff time between each said attempt and the immediately preceding attempt conforming to a selected integral multiple r of a slot time, where r is a positive integer, and corresponding to the number of the retransmission attempts made previously,.]. whereby, if the first node has .Iadd.not .Iaddend.captured the channel, the backoff time is .Iadd.selected from .Iaddend.a prescribed .Iadd.range of .Iaddend.backoff .[.time.]. .Iadd.times.Iaddend.;
- if the first node has .[.not.]. captured the channel, the backoff time .[.before making at least a first retransmission of the attempts.]. is selected .[.to be r slot times longer than the prescribed backoff time.]. .Iadd.from a different range of backoff times including a longer backoff time than those included in said prescribed range.Iaddend.;
- determining if the .[.second.]. .Iadd.first .Iaddend.node is waiting a first backoff time .Iadd.selected from said different range .Iaddend.for a first retransmission attempt;
- in response to a determination that the .[.second.]. .Iadd.first .Iaddend.node is waiting the first backoff time, monitoring the channel for activity from the .[.first node.]. .Iadd.other nodes .Iaddend.on the network, operating a backoff timer when the channel is idle, and halting the backoff timer during any period in which the channel is not idle;
- in response to a determination that the .[.second.]. .Iadd.first .Iaddend.node is not waiting the first backoff time, operating the backoff timer; and attempting retransmission of the .[.second.]. .Iadd.first .Iaddend.packet when the backoff timer expires.
- 3. The method in as in claim 1 or 2 wherein the step of monitoring the channel for activity from the .[.second node.]. .Iadd.other nodes .Iaddend.further comprises recognizing when .[.the second.]. .Iadd.another .Iaddend.node is transmitting on the channel.
- 4. The method in as in claim 1 or 2 wherein the step of monitoring the channel for activity from the .[.second node.]. .Iadd.other nodes .Iaddend.further comprises recognizing when a collision is occurring on the channel.
- 5. The method in as in claim 1 or 2 wherein the step of monitoring the channel for activity from the .[.second node.]. .Iadd.other nodes .Iaddend.further comprises recognizing when .[.the first.]. .Iadd.another .Iaddend.node is transmitting or a collision is occurring on the channel.
- 6. For use in a first node in a network having a plurality of nodes employing Carrier Sense Multiple Access with Collision Detection (CSMA/CD) protocol for channel access, an apparatus for improving the fairness of access to a channel, comprising:
- means for sensing whether or not the first node has captured a channel;
- means for sensing a collision between a first packet transmission by the first node and a second packet transmission by a second node on the network;
- means, in response to sensing the collision, for selecting a backoff time to wait before making each of a number of retransmission attempts of the .[.second.]. .Iadd.first .Iaddend.packet, .[.the selected backoff time between each said attempt and the immediately preceding attempt conforming to a selected integral multiple r of a slot time, where r is a positive integer, and corresponding to the number of the retransmission attempts made previously,.]. whereby, if the first node has .Iadd.not .Iaddend.captured the channel, the backoff time is .Iadd.selected from .Iaddend.a prescribed .Iadd.range of .Iaddend.backoff .[.time.]. .Iadd.times.Iaddend.;
- if the first node has .[.not.]. captured the channel, the backoff time .[.before making at least a first of the retransmission of the attempts.]. is selected .[.to be r slot times longer than the prescribed backoff time.]. .Iadd.from a different range of backoff times including a longer backoff time than those included in said prescribed range.Iaddend.;
- means for monitoring the channel for activity from .[.the first node.]. .Iadd.other nodes .Iaddend.of the network;
- a backoff timer to provide .[.a.]. .Iadd.the selected .Iaddend.backoff time for retransmission of the .[.second.]. .Iadd.first .Iaddend.packet;
- means for operating the backoff timer when the channel is idle;
- means for halting the backoff timer during any period in which the channel is not idle; and
- means for attempting retransmission of the .[.second.]. .Iadd.first .Iaddend.packet when the backoff timer expires.
- 7. For use in a first node in a network having a plurality of nodes employing Carrier Sense Multiple Access with Collision Detection (CSMA/CD) protocol for channel access, an apparatus for improving the fairness of access to a channel, comprising:
- means for sensing whether or not the first node has captured a channel;
- means for sensing a collision between a first packet transmission by the first node and a second packet transmission by a second node on the network;
- means, in response to sensing the collision, for selecting a backoff time to wait before making each of a number of retransmission attempts of the .[.second.]. .Iadd.first .Iaddend.packet, .[.the selected backoff time between each said attempt and the immediately preceding attempt conforming to a selected integral multiple r of a slot time, where r is a positive integer, and corresponding to the number of the retransmission attempts made previously,.]. whereby, if the first node has .Iadd.not .Iaddend.captured the channel, the backoff time is .Iadd.selected from .Iaddend.a prescribed .Iadd.range of .Iaddend.backoff .[.time.]. .Iadd.times.Iaddend.;
- if the first node has .[.not.]. captured the channel, the backoff time .[.before making at least a first of the retransmission attempts.]. is selected .[.to be r slot times longer than the prescribed backoff time.]. .Iadd.from a different range of backoff times including a longer backoff time than those included in said prescribed range.Iaddend.;
- a backoff timer to provide .[.a.]. .Iadd.the selected .Iaddend.backoff time for retransmission of the .[.second.]. .Iadd.first .Iaddend.packet;
- means for determining if the .[.second.]. .Iadd.first .Iaddend.node is waiting a first backoff time .Iadd.selected from said different range .Iaddend.for a first retransmission attempt of the .[.second.]. .Iadd.first .Iaddend.packet;
- means, in response to a determination that the .[.second.]. .Iadd.first .Iaddend.node is waiting the first backoff time, for monitoring the channel for activity from .[.the first node.]. .Iadd.other nodes .Iaddend.on the network, operating .[.a.]. .Iadd.the .Iaddend.backoff timer when the channel is idle, and halting the backoff timer during any period in which the channel is not idle;
- means, in response to a determination that the .[.second.]. .Iadd.first .Iaddend.node is not waiting the first backoff time, for operating .[.a.]. .Iadd.the .Iaddend.backoff timer; and
- means for attempting retransmission of the .[.second.]. .Iadd.first .Iaddend.packet when the backoff timer expires.
- 8. The apparatus as in claim 6 or 7 wherein the means for monitoring the channel for activity from .[.second node.]. .Iadd.other nodes .Iaddend.further comprises means for recognizing when .[.second.]. .Iadd.another .Iaddend.node is transmitting on the channel.
- 9. The apparatus as in claim 6 or 7 wherein the means for monitoring the channel for activity from .[.second node.]. .Iadd.other nodes .Iaddend.further comprises means for recognizing when a collision is occurring on the channel.
- 10. The apparatus as in claim 6 or 7 wherein the means for monitoring the channel for activity from .[.the second node.]. .Iadd.other nodes .Iaddend.further comprises means for recognizing when .[.second.]. .Iadd.another .Iaddend.node is transmitting or a collision is occurring on the channel.
- 11. For use in a first node in a network having a plurality of nodes employing Carrier Sense Multiple Access with Collision Detection (CSMA/CD) protocol for channel access, a method for improving the fairness of access to a channel, comprising the steps of:
- sensing whether or not the first node has captured a channel;
- sensing a collision between a first packet transmission by the first node and a second packet transmission by a second node on the network;
- after sensing the collision, examining the contents of a data field in .[.second.]. .Iadd.the first .Iaddend.packet .[.requiring retransmission.]. to determine whether a special backoff algorithm should be used for .[.the second.]. .Iadd.retransmission of the first .Iaddend.packet;
- in response to a determination that the special backoff algorithm should be used, selecting a backoff time to wait before making each of a number of retransmission attempts of the .[.second.]. .Iadd.first .Iaddend.packet, .[.the selected backoff time between each said attempt and the immediately preceding attempt conforming to a selected integral multiple r of a slot time, where r is a positive integer, and corresponding to the number of the retransmission attempts made previously,.]. whereby, if the first node has .Iadd.not .Iaddend.captured the channel, the backoff time is a prescribed backoff time;
- if the first node has .[.not.]. captured the channel, the backoff time before at least a first of the retransmission attempts is selected to be .[.r slot times.]. longer than the prescribed backoff time, and wherein the backoff time before a second retransmission .Iadd.attempt .Iaddend.of the .[.second.]. .Iadd.first .Iaddend.packet .[.attempt.]. is selected to be .[.r slot times.]. shorter than the prescribed backoff time, monitoring the channel for activity from .[.the second node.]. .Iadd.other nodes .Iaddend.on the network, operating a backoff timer .Iadd.to provide the selected backoff time .Iaddend.when the channel is idle, and halting the backoff timer during any period in which the channel is not idle;
- in response to a determination that the special backoff algorithm should not be used, operating a backoff timer .Iadd.to provide the prescribed backoff time.Iaddend.; and attempting retransmission of the .[.second.]. .Iadd.first .Iaddend.packet when the backoff timer expires.
Parent Case Info
This application is a continuation in part of the U.S. patent application of Henry Sho-Che Yang, Kadangode K. Ramakrishnan, William R. Hawe, and Anthony Lauck, Ser. No. 08/085,866, filed Jun. 30, 1993, entitled "Method And Apparatus For Use In A Network Of The Ethernet Type, To Improve Fairness By Controlling Collision Backoff Times In The Event Of Channel Capture".
US Referenced Citations (1)
Number |
Name |
Date |
Kind |
4707829 |
Pendse |
Nov 1987 |
|
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
085866 |
Jun 1993 |
|
Reissues (1)
|
Number |
Date |
Country |
Parent |
263698 |
Jun 1994 |
|