Claims
- 1. An apparatus to control transmission rates of a plurality of end stations in a computer network, the network having at least one intermediate node, the apparatus comprising:
- said intermediate node having a plurality of virtual circuits passing therethrough, said virtual circuits established between said end stations;
- said end stations transmitting data packets at a plurality of discrete transmission rates;
- means for said end stations to transmit a data packet containing a field having transmission rate information;
- means for said intermediate node to read said transmission rate information for said virtual circuits by said intermediate node detecting said transmission rate information in said field of a data packet received by said intermediate node;
- means in said intermediate node for counting a number of virtual circuits using each said discrete transmission rate;
- means in said intermediate node for maintaining an indication that a selected virtual circuit has been counted by said counting means, and for not counting said virtual circuit more than once during a switch time interval;
- means in said intermediate node for calculating a rate allocation value for said plurality of virtual circuits; and
- means, by said intermediate node, for writing said rate allocation value into said field of said data packet in order to signal to said end station, and any intervening intermediate node, said rate allocation value calculated by said intermediate node calculating means.
- 2. An apparatus to control transmission rates of a plurality of end stations in a computer network, the network having at least one intermediate node, the apparatus comprising:
- said intermediate node having a plurality of virtual circuits passing therethrough, said virtual circuits established between said end stations;
- said end stations transmitting data packets at a plurality of discrete transmission rates;
- a transmitter in each end station of said plurality of end stations to transmit a data packet containing a field having transmission rate information;
- a receiver in said intermediate node to read this transmission rate information for said virtual circuits in said field of a data packet received by said intermediate node;
- a counter in said intermediate node to count a number of virtual circuits using each said discrete transmission rate;
- a status maintenance structure in said intermediate node to maintain an indication that a selected virtual circuit has been counted by said counter and to not count said virtual circuit more than once during a switch time interval;
- a calculator in said intermediate node to calculate a rate allocation value for said plurality of virtual circuits; and
- a field writer in said intermediate node, to write said rate allocation value into said field of said data packet in order to signal to said end station, and any intervening intermediate node, said rate allocation value calculated by said calculator.
- 3. The apparatus as recited in claim 2, wherein said status maintenance structure further comprises:
- a bit stored in said intermediate node for each said virtual circuit, each bit initialized to a first value at a beginning of a switch time interval, and said bit assigned to a second value when a data packet having transmission rate information is detected in said selected virtual circuit by said intermediate node.
- 4. The apparatus as recited in claim 3 further comprising:
- a structure to not count a virtual circuit when said data packet is detected in a virtual circuit having said bit set to said second value.
- 5. The apparatus as recited in claim 3 wherein said first value of said bit is 0, and said second value is 1.
- 6. The apparatus as recited in claim 2 frther comprising:
- each intermediate node in said network having a different switch time interval.
- 7. The apparatus as recited in claim 2 further comprising:
- each end station having a different allocation time interval for timing the transmission of said data packets having transmission rate information.
- 8. A method of setting transmission rates for a plurality of virtual circuits established between a plurality of end stations, said virtual circuits passing through an intermediate node, said method comprising:
- a) transmitting data packets by said end stations at a plurality of discrete transmission rates through said plurality of virtual circuits;
- b) transmitting at least one data packet by at least one of said end stations, said data packet containing a field having transmission rate information;
- c) reading, by said intermediate node, said transmission rate information in said field of a data packet received by said intermediate node, said transmission rate information for said virtual circuits;
- d) counting, by said intermediate node, a number of virtual circuits using each said discrete transmission rate;
- e) maintaining, in said intermediate node, an indication that a selected virtual circuit has been counted in step d), and for not counting said virtual circuit more than once during a switch time interval;
- f) calculating, in said intermediate node, a rate allocation value for a selected virtual circuit, and
- g) writing, by said intermediate node, said rate allocation value into said field of said data packet in order to signal to a selected destination end station, and any intervening intermediate node, said rate allocation value calculated in step f).
- 9. The method as recited in claim 8 further comprising:
- establishing, by said selected destination end station in response to said rate allocation value as read from a data packet received by said selected destination end station, a transmission rate for transmission by said selected destination end station of data packets over said selected virtual circuit.
- 10. The method as recited in claim 8 further comprising:
- maintaining a bit in said intermediate node for each said virtual circuit, each bit initialized to a first value at a beginning of a switch time interval, and said bit assigned a second value when a data packet having transmission rate information is detected in said virtual circuit.
- 11. The method as recited in claim 10 further comprising:
- not counting an identified virtual circuit when said data packet is detected in said identified virtual circuit having said bit set to said second value.
- 12. The method as recited in claim 10 further comprising:
- assigning said first value of said bit to "0", and assigning said second value of said bit to "1".
Parent Case Info
This is a continuation of Ser. No. 08/622,801 filed Mar. 27, 1996 now U.S. Pat. No. 5,745, 697.
US Referenced Citations (6)
Number |
Name |
Date |
Kind |
5276677 |
Ramamurthy et al. |
Jan 1994 |
|
5402426 |
Foglar et al. |
Mar 1995 |
|
5546377 |
Ozveren |
Aug 1996 |
|
5633859 |
Jain et al. |
May 1997 |
|
5638371 |
Reychaudhuri et al. |
Jun 1997 |
|
5649110 |
Ben-Nun et al. |
Jul 1997 |
|
Non-Patent Literature Citations (3)
Entry |
*ATM Forum, "Straw Vote for the UNI Signaling Specification" Version 4.0, Jan. 5, 1996, pp. 1-293. |
*ATM Forum, "Traffic Management Specification", 95-0013R10, Straw Vote, Feb. 1996, pp. 1-115. |
*ATM Forum, "Traffic Management Specification", Version 4.0, af-95-0113R11, Mar. 1996, pp. 1-101. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
622801 |
Mar 1996 |
|