IP Library Granted Patent US 7,027,449
Granted Patent B2
US 7,027,449 · App. 09/975,735 · Granted Apr 11, 2006

Method for maintaining reservation state in a network router and resulting scalable integrated architectures for computer networks

Assignee: The Regents of the University of California
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,027,449
App. No.
09/975,735
Granted
Apr 11, 2006
Kind
B2
Abstract

Methods are described for maintaining a small bounded aggregate state within network routers pertaining to selected architectural families. Small bounded reservations states are utilized wherein the method is fully scalable for use on large networks. The size of the aggregate state and the complexity of the associated refresh mechanism is determined by the parameters of the network, such as size, and classes, which is in contrast to states based on the number of end-user flows. The method can render deterministic bandwidth use within the network wherein real-time multimedia applications may be accorded strict delay and bandwidth guarantees. The invention provides a middle-ground between the stateful Intserv and the stateless SCORE architectures.

Claims (64)

1. A method for maintaining the reservation state in a network router, comprising maintaining a bounded aggregate per-destination reservation state instead of a per-flow reservation state, wherein the source of a flow sends a refresh message to said router; and wherein all refresh messages of a particular destination are aggregated at said router, and wherein a refresh message specifies a destination and bandwidth for that destination.

2. A method as recited in claim 1 :

wherein said router maintains rates of incoming and outgoing traffic; and

wherein said router does not maintain information on rates of flow.

3. A method as recited in claim 1 , further comprising maintaining a set of token-buckets arranged in the form of a tree for aggregating network flows into classes.

4. A method as recited in claim 1 , further comprising aggregating network flows utilizing burst-drain-time or burst-ratio.

5. A method as recited in claim 1 , further comprising merging a set of data flows into a smaller set of aggregated flows.

6. A method as recited in claim 5 , where in said data flows are merged based on class or destination.

7. A method as recited in claim 1 , wherein said router maintain state only for aggregated flows and processes only aggregated flows.

8. A method as recited in claim 7 , further comprising:

providing guarantees to aggregated flows; and

providing guarantees to individual flows within the aggregated flows.

9. A method as recited in claim 1 , further comprising using diffusing computations to maintain consistency of the reservation.

10. A method as recited in claim 1 , wherein said aggregate state has a size and associated refresh mechanism.

11. A method as recited in claim 10 , wherein aggregate state size and refresh mechanism complexity are a function of a network parameter rather than a function of the number of end-user flows.

12. A method as recited in claim 11 , wherein said network parameter comprises class.

13. A method as recited in claim 11 , wherein said network parameter comprises destination.

14. A method as recited in claim 1 , wherein said step of maintaining aggregate per-destination reservation state instead of a per-flow reservation state comprises storing and refreshing resource reservations on a per-destination basis rather than on a per-flow basis.

15. A method as recited in claim 1 , further comprising utilizing per-destination refresh messages instead of per-flow refresh messages.

16. A method as recited in claim 15 , wherein a refresh message specifies a destination and bandwidth for that destination.

17. A method as recited in claim 16 , wherein when a flow terminates, the source stops sending refresh messages and bandwidth reserved for the flow is released.

18. A method as recited in claim 1 , wherein when a flow terminates, the source stops sending refresh messages and bandwidth reserved for the flow is released.

19. A method for maintaining the reservation state in a network router, comprising storing and refreshing resource reservations on a per-destination basis, rather than on a per-flow basis, wherein the source of a flow sends a refresh message to said router; and wherein all refresh messages of a particular destination are aggregated at said router; and wherein a refresh message specifies a destination and bandwidth for that destination.

20. A method as recited in claim 19 :

wherein said router maintains rates of incoming and outgoing traffic; and

wherein said router does not maintain information on rates of flow.

21. A method as recited in claim 19 , further comprising maintaining a set of token-buckets arranged in the form of a tree for aggregating network flows into classes.

22. A method as recited in claim 19 , further comprising aggregating network flows utilizing burst-drain-time or burst-ratio.

23. A method as recited in claim 19 , further comprising merging a set of data flows into a smaller set of aggregated flows.

24. A method as recited in claim 23 , wherein said data flows are merged based on class or destination.

25. A method as recited in claim 19 , wherein said router maintain state only for aggregated flows and processes only aggregated flows.

26. A method as recited in claim 25 , further comprising:

providing guarantees to aggregated flows; and

providing guarantees to individual flows within the aggregated flows.

27. A method as recited in claim 19 , further comprising using diffusing computations to maintain consistency of the reservation.

28. A method as recited in claim 19 , wherein said aggregate state has a size and associated refresh mechanism.

29. A method as recited in claim 28 , wherein aggregate state size and refresh mechanism complexity are a function of a network parameter rather than a function of the number of end-user flows.

30. A method as recited in claim 29 , wherein said network parameter comprises class.

31. A method as recited in claim 29 , wherein said network parameter comprises destination.

32. A method as recited in claim 19 , further comprising utilizing per-destination refresh messages instead of per-flow refresh messages.

33. A method as recited in claim 32 , wherein a refresh message specifies a destination and bandwidth for that destination.

34. A method as recited in claim 33 , wherein when a flow terminates, the source stops sending refresh messages and bandwidth reserved for the flow is released.

35. A method as recited in claim 19 , wherein when a flow terminates, the source stops sending refresh messages and bandwidth reserved for the flow is released.

36. A method for maintaining the reservation state in a network router, comprising:

merging a set of data flows into a smaller set of aggregated flows; and

storing and refreshing resource reservations on a per-destination basis, rather than on a per-flow basis;

wherein said router maintains rates of incoming and outgoing traffic; and

wherein said router does not maintain information on rates of flow, wherein the source of a flow sends a refresh message to said router; and wherein all refresh messages of a particular destination are aggregated at said router, and wherein a refresh message specifies a destination and bandwidth for that destination.

37. A method as recited in claim 36 , further comprising maintaining a set of token-buckets arranged in the form of a tree for aggregating network flows into classes.

38. A method as recited in claim 40 , further comprising aggregating network flows utilizing burst-drain-time or burst-ratio.

39. A method as recited in claim 36 , wherein said data flows are merged based on class or destination.

40. A method as recited in claim 36 , wherein said router maintains state only for aggregated flows and processes only aggregated flows.

41. A method as recited in claim 40 , further comprising:

providing guarantees to aggregated flows; and

providing guarantees to individual flows within the aggregated flows.

42. A method as recited in claim 36 , further comprising using diffusing computations to maintain consistency of the reservation.

43. A method as recited in claim 36 , wherein said aggregate state has a size and associated refresh mechanism.

44. A method as recited in claim 43 , wherein aggregate state size and refresh mechanism complexity are a function of a network parameter rather than a function of the number of end-user flows.

45. A method as recited in claim 44 , wherein said network parameter comprises class.

46. A method as recited in claim 44 , wherein said network parameter comprises destination.

47. A method as recited in claim 36 , further comprising utilizing per-destination refresh messages instead of per-flow refresh messages.

48. A method as recited in claim 47 , wherein a refresh message specifies a destination and bandwidth for that destination.

49. A method as recited in claim 48 , wherein when a flow terminates, the source stops sending refresh messages and bandwidth reserved for the flow is released.

50. A method as recited in claim 36 , wherein when a flow terminates, the source stops sending refresh messages and bandwidth reserved for the flow is released.

Assignments (2)
CONFIRMATORY LICENSE Recorded Aug 21, 2002
From: CALIFORNIA, UNIVERSITY OF
To: UNITED STATES AIR FORCE
Reel/Frame 013226/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2002
From: GARCIA-LUNA-ACEVES, J.J.; VUTUKURY, SRINIVAS
To: REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE
Reel/Frame 012487/0298 →
Continuity (2)
Provisional Application 6024065400 · Oct 10, 2000
Related Publication 20020097726A1 · Jul 25, 2002