Method and apparatus for nodes in network to avoid shrinkage of an interframe gap
DCFirst Claim
1. An output controller in a repeater node for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein the repeater node receives a plurality of bytes in a frame from an upstream node, stores the plurality of bytes in an elasticity buffer, and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, wherein each node in the network is operated by an independent local clock, and wherein the repeater node includes an input controller, the output controller comprising:
- means coupled to the elasticity buffer for transmitting bytes to the downstream node in response to a local clock signal;
means coupled to the transmitting means for indicating an idle byte is being transmitted to the downstream node;
means coupled to the idle byte indicating means for counting the number of idle bytes being transmitted to the downstream node;
control means coupled to the counting means and responsive to an indication from the input controller of receipt of the starting delimiter for the subsequent frame, for asserting a control signal to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a threshold number of idle bytes is being transmitted to the downstream node, and for not asserting the control signal to delay transmission of the starting delimiter in response to an idle byte count indicating that the threshold number of idle bytes is being transmitted to the downstream node; and
means coupled to the control means and the transmitting means for transmitting an additional idle byte to the downstream node in response to deassertion of the control signal at times when an equal signal is received indicating the starting delimiter is ready to be output.
5 Assignments
Litigations
0 Petitions
Accused Products
Abstract
An output controller in a repeater node for controlling data transfers in a data communication system in which each node is operated by an independent local clock. Nodes will occasionally delete idle bytes from a preamble to recenter an elasticity buffer. The output controller performs a process that requires the elasticity buffer to be progressively more full before deleting another idle byte from the preamble. Transmission of the start of a subsequent frame is delayed and additional idle bytes are transmitted when the number of idle bytes being transmitted is at or below a certain threshold. Multiple thresholds are utilized so that the amount of the delay can be adjusted.
34 Citations
60 Claims
-
1. An output controller in a repeater node for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein the repeater node receives a plurality of bytes in a frame from an upstream node, stores the plurality of bytes in an elasticity buffer, and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, wherein each node in the network is operated by an independent local clock, and wherein the repeater node includes an input controller, the output controller comprising:
-
means coupled to the elasticity buffer for transmitting bytes to the downstream node in response to a local clock signal; means coupled to the transmitting means for indicating an idle byte is being transmitted to the downstream node; means coupled to the idle byte indicating means for counting the number of idle bytes being transmitted to the downstream node; control means coupled to the counting means and responsive to an indication from the input controller of receipt of the starting delimiter for the subsequent frame, for asserting a control signal to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a threshold number of idle bytes is being transmitted to the downstream node, and for not asserting the control signal to delay transmission of the starting delimiter in response to an idle byte count indicating that the threshold number of idle bytes is being transmitted to the downstream node; and means coupled to the control means and the transmitting means for transmitting an additional idle byte to the downstream node in response to deassertion of the control signal at times when an equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An output controller in a repeater node for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein the repeater node receives a plurality of bytes in a frame from an upstream node, stores the plurality of bytes in an elasticity buffer, and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, wherein each node in the network is operated by an independent local clock, and wherein the repeater node includes an input controller, the output controller comprising:
-
means coupled to the elasticity buffer for transmitting bytes to the downstream node in response to a local clock signal; means coupled to the transmitting means for indicating an idle byte is being transmitted to the downstream node; means coupled to the idle byte indicating means for counting the number of idle bytes being transmitted to the downstream node; control means coupled to the counting means and responsive to an indication from the input controller of receipt of the starting delimiter for the subsequent frame, for asserting a control signal to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a high threshold number of idle bytes is being transmitted to the downstream node, and for not asserting the control signal to delay transmission of the starting delimiter for a first time period in response to an idle byte count indicating that a low threshold number of idle bytes is being transmitted to the downstream node, and for not asserting the control signal to delay transmission of the starting delimiter for a second time period in response to an idle byte count indicating that the high threshold number of idle bytes is being transmitted to the downstream node; and means coupled to the control means and the transmitting means for transmitting an additional idle byte to the downstream node in response to deassertion of the control signal during the first and second time periods at times when an equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A repeater node in a data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through the repeater node, wherein the repeater node receives a plurality of bytes in a frame from an upstream node and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, and wherein each node in the network is operated by an independent local clock, the repeater node comprising:
-
means for generating a local clock signal; means for receiving a byte transmitted from the upstream node; input controller means coupled to the receiving means for indicating receipt of the starting delimiter for the subsequent frame; elasticity buffer means, coupled to the receiving means and including a number of storage elements, for storing a number of bytes received from the upstream node, and for sequentially outputting each stored byte in first-in, first-out order in response to the local clock signal; means coupled to the elasticity buffer means for transmitting bytes to the downstream node in response to the local clock signal; means coupled to the transmitting means for indicating an idle byte is being transmitted to the downstream node; means coupled to the idle byte indicating means for counting the number of idle bytes being transmitted to the downstream node; means coupled to the elasticity buffer means for providing an equal signal to indicate the starting delimiter for the subsequent frame is ready to be output; control means coupled to the counting means and the input controller means, and responsive to receipt of the starting delimiter for the subsequent frame, for asserting a control signal to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a threshold number of idle bytes is being transmitted to the downstream node, and for not asserting the control signal to delay transmission of the starting delimiter in response to an idle byte count indicating that the threshold number of idle bytes is being transmitted to the downstream node; and means coupled to the control means and the transmitting means for transmitting an additional idle byte to the downstream node in response to deassertion of the control signal at times when the equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. A repeater node in a data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through the repeater node, wherein the repeater node receives a plurality of bytes in a frame from an upstream node and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, and wherein each node in the network is operated by an independent local clock, the repeater node comprising:
-
means for generating a local clock signal; means for receiving a byte transmitted from the upstream node; input controller means coupled to the receiving means for indicating receipt of the starting delimiter for the subsequent frame; elasticity buffer means, coupled to the receiving means and including a number of storage elements, for storing a number of bytes received from the upstream node, and for sequentially outputting each stored byte in first-in, first-out order in response to the local clock signal; means coupled to the elasticity buffer means for transmitting bytes to the downstream node in response to the local clock signal; means coupled to the transmitting means for indicating an idle byte is being transmitted to the downstream node; means coupled to the idle byte indicating means for counting the number of idle bytes being transmitted to the downstream node; means coupled to the elasticity buffer means for providing an equal signal to indicate the starting delimiter for the subsequent frame is ready to be output; control means coupled to the counting means and the input controller means, and responsive to receipt of the starting delimiter for the subsequent frame, for asserting a control signal to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a high threshold number of idle bytes is being transmitted to the downstream node, for not asserting the control signal to delay transmission of the starting delimiter for a first time period in response to an idle byte count indicating that a low threshold number of idle bytes is being transmitted to the downstream node, and for not asserting the control signal to delay transmission of the starting delimiter for a second time period in response to an idle byte count indicating that the high threshold number of idle bytes is being transmitted to the downstream node; and means coupled to the control means and the transmitting means for transmitting an additional idle byte to the downstream node in response to deassertion of the control signal during the first and second time periods at times when the equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A method for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein a repeater node receives a plurality of bytes in a frame from an upstream node, stores the plurality of bytes in an elasticity buffer, and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, and wherein each node in the network is operated by an independent local clock, the method performed by an output controller in the repeater node comprising:
-
transmitting bytes to the downstream node in response to a local clock signal; indicating an idle byte is being transmitted to the downstream node; counting the number of idle bytes being transmitted to the downstream node; asserting a control signal after receipt of the starting delimiter for the subsequent frame to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a threshold number of idle bytes is being transmitted to the downstream node; delaying assertion of the control signal after receipt of the starting delimiter for the subsequent frame to delay transmission of the starting delimiter in response to an idle byte count indicating that the threshold number of idle bytes is being transmitted to the downstream node; and transmitting an additional idle byte to the downstream node in response to deassertion of the control signal at times when an equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (40, 41, 42)
-
-
43. A method for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein a repeater node receives a plurality of bytes in a frame from an upstream node, stores the plurality of bytes in an elasticity buffer, and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, and wherein each node in the network is operated by an independent local clock, the method performed by an output controller in the repeater node comprising:
-
transmitting bytes to the downstream node in response to a local clock signal; indicating an idle byte is being transmitted to the downstream node; counting the number of idle bytes being transmitted to the downstream node; asserting a control signal after receipt of the starting delimiter for the subsequent frame to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a high threshold number of idle bytes is being transmitted to the downstream node; delaying assertion of the control signal after receipt of the starting delimiter for the subsequent frame to delay transmission of the starting delimiter for a first time period in response to an idle byte count indicating that a low threshold number of idle bytes is being transmitted to the downstream node; delaying assertion of the control signal after receipt of the starting delimiter for the subsequent frame to delay transmission of the starting delimiter for a second time period in response to an idle byte count indicating that the high threshold number of idle bytes is being transmitted to the downstream node; and transmitting an additional idle byte to the downstream node in response to deassertion of the control signal during the first and second time periods at times when an equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (44, 45, 46, 47, 48, 49)
-
-
50. A method for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein a repeater node receives a plurality of bytes in a frame from an upstream node and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, and wherein each node in the network is operated by an independent local clock, the method performed by the repeater node comprising:
-
generating a local clock signal; receiving a byte transmitted from the upstream node; indicating receipt of the starting delimiter for the subsequent frame; storing a number of bytes received from the upstream node in an elasticity buffer including a number of storage elements; sequentially outputting each stored byte in first-in, first-out order from the elasticity buffer in response to the local clock signal; transmitting bytes to the downstream node in response to the local clock signal; indicating an idle byte is being transmitted to the downstream node; counting the number of idle bytes being transmitted to the downstream node; providing an equal signal to indicate the starting delimiter for the subsequent frame is ready to be output; asserting a control signal after receipt of the starting delimiter for the subsequent frame to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a threshold number of idle bytes is being transmitted to the downstream node; delaying assertion of the control signal after receipt of the starting delimiter for the subsequent frame to delay transmission of the starting delimiter in response to an idle byte count indicating that the threshold number of idle bytes is being transmitted to the downstream node; and transmitting an additional idle byte to the downstream node in response to deassertion of the control signal at times when the equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (51, 52, 53)
-
-
54. A method for controlling data transfers in a data communication system, the data communication system including a plurality of nodes coupled in a network for transferring frames of data from a source node to a destination node through a plurality of repeater nodes, wherein a repeater node receives a plurality of bytes in a frame from an upstream node and transmits the plurality of bytes in the frame to a downstream node, wherein a last byte of a preceding frame and a starting delimiter for a subsequent frame are separated by a preamble including at least a minimum number of idle bytes, and wherein each node in the network is operated by an independent local clock, the method performed by the repeater node comprising:
-
generating a local clock signal; receiving a byte transmitted from the upstream node; indicating receipt of the starting delimiter for the subsequent frame; storing a number of bytes received from the upstream node in an elasticity buffer including a number of storage elements; sequentially outputting each stored byte in first-in, first-out order from the elasticity buffer in response to the local clock signal; transmitting bytes to the downstream node in response to the local clock signal; indicating an idle byte is being transmitted to the downstream node; counting the number of idle bytes being transmitted to the downstream node; providing an equal signal to indicate the starting delimiter for the subsequent frame is ready to be output; asserting a control signal after receipt of the starting delimiter for the subsequent frame to enable transmission of the starting delimiter to the downstream node in response to an idle byte count indicating that more than a high threshold number of idle bytes is being transmitted to the downstream node; delaying assertion of the control signal after receipt of the starting delimiter for the subsequent frame to delay transmission of the starting delimiter for a first time period in response to an idle byte count indicating that a low threshold number of idle bytes is being transmitted to the downstream node; delaying assertion of the control signal after receipt of the starting delimiter for the subsequent frame to delay transmission of the starting delimiter for a second time period in response to an idle byte count indicating that the high threshold number of idle bytes is being transmitted to the downstream node; and transmitting an additional idle byte to the downstream node in response to deassertion of the control signal during the first and second time periods at times when the equal signal is received indicating the starting delimiter is ready to be output. - View Dependent Claims (55, 56, 57, 58, 59, 60)
-
Specification