Claims
- 1. A system for optimizing data flow through a node in a network system, wherein messages forwarded to said node have one of at least two priorities, a normal priority and a high priority, said system comprising:
- a first stage, including for each flow into said node:
- a token counter associated with each flow into said node, each token counter for holding a numeric value representing a number of tokens, said token counter being incremented at a predetermined rate of tokens per second, and said token counter being decremented by a number of tokens as required for passing an arriving message in that flow through said node, said number of tokens required for passing said arriving message being determined by attributes of said arriving message, said token counter further including a maximum limit value;
- a normal priority threshold value associated with each token counter;
- wherein if a message with a high priority arrives at said node, said message is marked not protected against loss if said token counter is below said number of tokens required for passing said message; and
- wherein if a message with a normal priority arrives at said node, said message is marked not protected against loss if said token counter is below said number of tokens required for passing said message plus said normal priority threshold value.
- 2. The system of claim 1, further including:
- a second stage, receiving messages from one or more first stages including an aggregate token counter, said aggregate token counter for holding a numeric value representing a number of tokens, said aggregate token counter being incremented at a predetermined rate of tokens per second, and said aggregate token counter being decremented by a number of tokens as required for passing said arriving message through said node, said number of tokens required for passing said arriving message being determined by attributes of said arriving message, said aggregate token counter further including a maximum limit value; and
- an aggregate normal priority threshold value associated with said aggregate token counter.
- 3. The system of claim 2 wherein if a message with a high priority was not marked not protected against loss in said first stage, said message is marked not protected against loss in said second stage if said aggregate token counter is below said number of tokens required for passing said message.
- 4. The system of claim 3 wherein if a message with a low priority was not marked not protected against loss in said first stage, said message is marked not protected against loss in said second stage if said aggregate token counter is below said number of tokens required for passing said message plus said normal priority threshold value.
- 5. The system of claim 2 further including:
- an aggregate headroom threshold value associated with said aggregate token counter, said aggregate headroom threshold value being greater than said aggregate normal priority threshold value and
- if a message was marked not protected against loss in said first stage, said message is marked protected against loss if said aggregate token counter is at or above said number of tokens required for passing said message plus said aggregate headroom threshold value.
- 6. The system of claim 1 wherein said number of tokens required for passing a message is proportional to the size of the message.
- 7. The system of claim 6 wherein one token is required for each byte of data in said message.
- 8. The system of claim 1 wherein said number of tokens required for passing a message is related to the cost of sending said message out over a particular network.
- 9. The system of claim 1 wherein said network includes an ATM network, and messages marked as not protected against loss are sent out as CLP-1, and messages marked as protected against loss are sent out as CLP-0.
- 10. The system of claim 1 wherein messages are outputted over an IP network, wherein:
- messages marked as not protected against loss are sent out as routine precedence, and messages marked as protected against loss are sent out as elevated precedence.
- 11. A method for optimizing data flow through a node in a network system, wherein messages arriving on flows to said node have one of at least two priorities, a normal priority and a high priority, said method comprising:
- for each data flow into said node:
- providing a token counter associated with each data flow, each token counter for holding a numeric value representing a number of tokens, said token counter further including a maximum limit value;
- incrementing said token counter at a predetermined rate of tokens per second;
- decrementing said token counter by a number of tokens as required for passing an arriving message in that data flow through said node, said number of tokens required for passing said arriving message being determined by attributes of said arriving message;
- providing a normal priority threshold value associated with each token counter; and
- marking a message with a high priority as not protected against loss if said token counter is below said number of tokens required for passing said message; and
- marking a message with a normal priority as not protected against loss if said token counter is below said number of tokens required for passing said messages plus said normal priority threshold value.
- 12. The method of claim 11 further including:
- providing an aggregate token counter for holding a numeric value representing a number of tokens, said aggregate token counter further including a maximum limit value;
- incrementing said aggregate token counter at a predetermined rate of tokens per second;
- decrementing said aggregate token counter by a number of tokens as required for passing said arriving message through said node, said number of tokens required for passing said arriving message being determined by attributes of said arriving message; and
- providing an aggregate normal priority threshold value associated with said aggregate token counter.
- 13. The method of claim 12 further including:
- if a message with a high priority was not marked not protected against loss, marking said message not protected against loss if said aggregate token counter is below said number of tokens required for passing said message.
- 14. The method of claim 13 further including:
- if a message with a low priority was not marked not protected against loss, marking said message not protected against loss if said aggregate token counter is below said number of tokens required for passing said message plus said normal priority threshold value.
- 15. The method of claim 11 further including:
- providing an aggregate headroom threshold value associated with said aggregate token counter, said aggregate headroom threshold value being greater than said aggregate normal priority threshold value; and
- if a message was marked not protected against loss, marking said message as protected against loss if said aggregate token counter is at or above said number of tokens required for passing said message plus said aggregate headroom threshold value.
STATEMENT REGARDING FEDERALLY-SPONSORED RESEARCH
The U.S. Government has a paid up non-exclusive, nontransferable license to practice or have practiced for or on behalf of the United States this invention as provided for by the terms of contract No. N6600 1-96-D8608, awarded by DARPA.
US Referenced Citations (9)
Foreign Referenced Citations (1)
Number |
Date |
Country |
PCTUS9513838 |
May 1996 |
WOX |