Enhanced flow control in ATM edge switches
First Claim
1. A method within a telecommunications network for allocating available bandwidth among a plurality of sessions that share a common data link, each of said sessions having a source node that transmits data to a destination node through said data link, said method comprising the steps of:
- designating a repeating unit time interval for conducting said plurality of sessions;
monitoring an input flow rate from the source node of each of said sessions into said common data link;
assigning a target flow rate to each of said sessions, wherein the sum of said target flow rates is equal to the available bandwidth of said common data link;
comparing monitored input flow rate of each said sessions with assigned target flow rate;
for each of said sessions in which said monitored input flow rate exceeds said assigned target flow rate, dynamically pausing said source node during each repeating unit time interval, such that for each of said sessions, said monitored input flow rate conforms to said assigned target flow rate.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system within a telecommunications network for allocating available bandwidth among a plurality of sessions that share a common data link. First, a repeating unit time interval is designated for conducting the plurality of sessions. Next, the input flow rate from the source node of each of the sessions into the common data link is monitored. Thereafter, a target flow rate is computed and assigned to each of the sessions. The sum of the target flow rates is equal to the available bandwidth of the common data link. Finally, for each of the sessions in which the monitored input flow rate exceeds the assigned target flow rate, the source node is dynamically paused during each repeating unit time interval, such that the monitored input flow rate conforms to the assigned target flow rate for each of the sessions.
-
Citations
37 Claims
-
1. A method within a telecommunications network for allocating available bandwidth among a plurality of sessions that share a common data link, each of said sessions having a source node that transmits data to a destination node through said data link, said method comprising the steps of:
-
designating a repeating unit time interval for conducting said plurality of sessions;
monitoring an input flow rate from the source node of each of said sessions into said common data link;
assigning a target flow rate to each of said sessions, wherein the sum of said target flow rates is equal to the available bandwidth of said common data link;
comparing monitored input flow rate of each said sessions with assigned target flow rate;
for each of said sessions in which said monitored input flow rate exceeds said assigned target flow rate, dynamically pausing said source node during each repeating unit time interval, such that for each of said sessions, said monitored input flow rate conforms to said assigned target flow rate. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
4. The method of claim 1, wherein said step of monitoring an input flow rate from the source node of each of said sessions includes the steps of:
-
counting the number of bytes received from each of said source nodes over a given time interval; and
deriving an input flow rate for each of said source nodes.
-
-
5. The method of claim 1, further comprising the step of deriving the target flow rate for each of said sessions into said common data link in accordance with the iterative relation:
-
6. The method of claim 1, further comprising the step of deriving the target flow rate of each of said sessions into said switch node in accordance with the iterative relation:
-
7. The method of claim 1, wherein said step of dynamically pausing the source node is preceded by the step of computing a pause interval, p, in accordance with the relation:
-
8. The method of claim 1, wherein said step of dynamically pausing the source node of each session is preceded by the step of computing a pause interval, p, in accordance with the relation:
-
9. The method of claim 1, wherein said step of dynamically pausing the source node of each session is preceded by the step of computing a pause interval, p, in accordance with the relation:
-
10. The method of claim 1, wherein said source node is comprised of a LAN end station connected within a LAN infrastructure.
-
11. The method of claim 10, wherein said LAN infrastructure is an Ethernet Network.
-
12. The method of claim 10, wherein said source node utilizes pause interval flow control.
-
13. The method of claim 10, wherein said step of dynamically pausing said source node is preceded by the step of translating said fair share rate into a pause interval.
-
14. The method of claim 1, wherein said telecommunications network includes a backbone which utilizes transmission rate flow control.
-
15. The method of claim 14, wherein said backbone is an ATM backbone and wherein said transmission flow control is performed utilizing ABR flow control, said method further comprising the step of determining a current cell rate for each of said sessions into said common link.
-
16. The method of claim 14, wherein said common data link is located at the egress of said LAN infrastructure and at the ingress of said backbone.
-
17. The method of claim 14, wherein said telecommunications network includes a first edge switch and a second edge switch, said first edge switch connecting said source node with said backbone and said second switch connecting said destination node with said backbone.
-
18. A method where a pause interval flow control is adapted to rate-based flow control within an edge switch serving as an egress from a source subnetwork and an ingress into a backbone subnetwork, said method comprising:
-
designating a repeating unit time interval over which data is transmitted from said source subnetwork to said backbone subnetwork;
assigning a target flow rate to a session within said edge switch, said session having a source node within said source subnetwork;
mapping said target flow rate into a pause interval; and
during each of said unit time intervals, pausing the source of said session for a duration equal to said pause interval, such that the source transmits at the target rate.
-
-
19. A flow control system within a telecommunications network, said system comprising:
-
processing means for monitoring an input flow rate from a source node of each of a plurality of sessions that share a common data link;
processing means for assigning a target flow rate to each of said sessions, wherein the sum of said target flow rates is equal to the available bandwidth of said common data link;
processing means for detecting a condition wherein monitored input flow rates exceed assigned target flow rates; and
processing means, responsive to the condition in which at least one of said monitored input flow rate exceeds said assigned target flow rate, for dynamically pausing said source node, during each repeating unit time interval, such that for each of said sessions said monitored input flow rate conforms to said assigned target flow rate. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
22. The flow control system of claim 19, wherein said processing means for monitoring an input flow rate from the source node of each of said sessions further comprises:
-
a counter for counting the number of bytes received from each of said source nodes over a given time interval; and
processing means for determining an input flow rate for each of said source nodes.
-
-
23. The flow control system of claim 19, further comprising computation means for computing the target flow rate for each of said sessions into said common data link in accordance with the iterative relation:
-
24. The flow control system of claim 19, further comprising computation means for computing the target flow rate of each of said sessions into said switch node in accordance with the iterative relation:
-
25. The flow control system of claim 19, wherein said processing means for dynamically pausing the source node further comprises computation means for computing a pause interval, p, in accordance with the relation:
-
26. The flow control system of claim 19, wherein said processing means for dynamically pausing the source node of each session further comprises computation means for computing a pause interval, p, in accordance with the relation:
-
27. The flow control system of claim 19, wherein said processing means for dynamically pausing the source node of each session further comprises computation means for computing a pause interval, p, in accordance with the relation:
-
28. The flow control system of claim 19, wherein said source node is comprised of a LAN end station connected within a LAN infrastructure.
-
29. The flow control system of claim 28, wherein said LAN infrastructure is an Ethernet Network.
-
30. The flow control system of claim 28, wherein said source node utilizes pause interval flow control.
-
31. The flow control system of claim 19, wherein said telecommunications network includes a backbone which utilizes transmission rate flow control.
-
32. The flow control system of claim 31, wherein said backbone is an ATM backbone and wherein said transmission flow control is performed utilizing ABR flow control, said flow control system further comprising processing means for determining a current cell rate for each of said sessions into said common link.
-
33. The flow control system of claim 31, wherein said common data link is located at the egress of said LAN infrastructure and at the ingress of said backbone.
-
34. The flow control system of claim 31, wherein said telecommunications network includes a first edge switch and a second edge switch, said first edge switch connecting said source node with said backbone and said second switch connecting said destination node with said backbone.
-
35. The flow control system of claim 19 wherein the processing means includes a computer executing n, n greater than 1, application programs.
-
36. A program product executed by a computer system including a media on which at least one computer program is recorded, said computer program including:
-
code instructions monitoring an input flow rate from a source node of each of a plurality of sessions coupled into a common data link;
code instructions assigning a target f low rate to each of said sessions, wherein the sum of said target flow rates is equal to the available bandwidth of said common data link;
code instructions comparing monitored input flow rate of each said sessions with assigned target flow rate; and
for each of said sessions in which said monitored input flow rate exceeds said assigned target flow rate, code instructions dynamically pausing said source node such that for each of said sessions said monitored input flow rate conforms to said assigned target flow rate.
-
-
37. A method within a communication network for allocating available bandwidth comprising acts of:
-
monitoring an input flow rate from a source node of each of a plurality of sessions coupled to a common data link;
assigning a target flow rate to each of said sessions, wherein the sum of said target flow rates is equal to the available bandwidth of said common data link;
comparing monitored input flow rate of each said sessions with assigned target flow rate; and
for each of said sessions in which said monitored input flow rate exceeds said assigned target flow rate, dynamically pausing said source node such that for each of said sessions said monitored input flow rate conforms to said assigned target flow rate.
-
Specification