Method and apparatus for random packet marking for differentiated services
First Claim
Patent Images
1. A method, comprising:
- determining a sending rate estimate, s;
determining any credits or debits for a packet stream including a plurality of data packets from a customer domain, a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and
probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from the customer domain.
1 Assignment
0 Petitions
Accused Products
Abstract
A method is disclosed for a router to provide random assignments of three priorities, each signifying a drop precedence, to packets on a per customer basis. The router determines a sending rate estimate. Then the router marks a packet a priority level based on the sending rate estimate.
30 Citations
26 Claims
-
1. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a customer domain, a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from the customer domain.
-
-
2. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a customer domain, a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, marking comprises determining if the sending rate estimate is less than a first rate threshold and in response to a determination that the sending rate estimate is less than the first rate threshold, setting a probability of marking at least one data packet with a first selected priority level is one of a plurality of priority levels, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from the customer domain. - View Dependent Claims (3)
-
-
4. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a customer domain, a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, marking comprises determining if the sending rate estimate is between a first rate threshold and a second rate threshold and in response to a determination that the sending rate estimate is between a first rate threshold and a second rate threshold, setting a probability of marking a data packet with a subordinate priority level based on s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from the customer domain.
-
-
5. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a source; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, marking comprises determining if the sending rate estimate is between a first rate threshold and a second rate threshold and in response to a determination that the sending rate estimate is between a first rate threshold and a second rate threshold, marking a data packet such that a rate of packets marked a subordinate policy level is no greater than 1−
first rate threshold/s.
-
-
6. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a source; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, marking comprises determining if the sending rate estimate is above a second rate threshold and in response to a determination that the sending rate estimate is above the second rate threshold, marking the packet such that a rate of packets marked the second priority level is at least (second rate threshold-first rate threshold)/s. - View Dependent Claims (7)
-
-
8. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a source; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s; determining if the sending rate estimate is greater than a rate threshold; in response to a determination that the sending rate estimate is greater than the rate threshold, determining if a burst size is greater than a minimum burst; and in response to a determination that the burst size is greater than the minimum burst, marking the packet a first priority level. - View Dependent Claims (9)
-
-
10. A method, comprising:
-
determining a sending rate estimate, s; determining any credits or debits for a packet stream including a plurality of data packets from a source; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s; determining if the sending rate estimate is greater than the super rate threshold, determining if a burst size is greater than a minimum burst; and in response to a determination that the burst size is greater than a minimum burst, marking the packet a priority level based on a count of packets marked a highest priority level during a period. - View Dependent Claims (11)
-
-
12. An apparatus, comprising:
-
a first determining unit configured to determine a sending rate estimate, s; and a second determining unit configured to determine any credits or debits for the packet stream, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and a marking unit configured to probabilistically mark the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain. - View Dependent Claims (13)
-
-
14. An apparatus, comprising:
-
a first determining unit configured to determine a sending rate estimate, s; and a second determining unit configured to determine any credits or debits for the packet stream, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and a marking unit configured to probabilistically mark the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain, the marking unit comprising a third determining unit configured to determine if the sending rate estimate is less than a first rate threshold; and a setting unit configured to set a probability of marking at least one data packet with a first selected priority level to a first value, responsive to a determination that the sending rate estimate is less than the first rate threshold, wherein said first selected priority level is one of a plurality of priority levels. - View Dependent Claims (15)
-
-
16. An apparatus, comprising:
-
a first determining unit configured to determine a sending rate estimate, s; and a second determining unit configured to determine any credits or debits for the packet stream, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and a marking unit configured to probabilistically mark the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain, the marking unit comprising a third determining unit configured to determine if the sending rate estimate is between a first rate threshold and a second rate threshold; and a setting unit configured to set a probability of marking a data packet with a subordinate priority level based on s, responsive to a determination that the sending rate estimate is between a first rate threshold and a second rate threshold.
-
-
17. An apparatus, comprising:
-
a first determining unit configured to determine a sending rate estimate, s; and a second determining unit configured to determine any credits or debits for a packet stream including a plurality of data packets from a source, a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and a marking unit configured to probabilistically mark packet stream to one of a plurality of priority levels based on the sending rate estimate, s, the marking unit comprising a third determining unit configured to determine if the sending rate estimate is above a second rate threshold; and a marking unit configured to mark the packet such that a rate of packets marked the second priority level is at least (second rate threshold−
first rate threshold)/s, in response to a determination that the sending rate estimate is above the second rate threshold. - View Dependent Claims (18)
-
-
19. An apparatus, comprising:
-
a first determining unit configured to determine a sending rate estimate, s; and a second determining unit configured to determine any credits or debits for a packet stream including a plurality of data packets from a source, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; a marking unit configured to probabilistically mark the packet stream to one of a plurality of priority levels based on the sending rate estimate, s; a third determining unit configured to determine if the sending rate estimate is greater than a rate threshold; a fourth determining unit configured to determine if a burst size is greater than a minimum burst, in response to a determination that the sending rate estimate is greater than the rate threshold; and another marking unit configured to mark the packet a first priority level, in response to a determination that the burst size is greater than a minimum burst. - View Dependent Claims (20)
-
-
21. An apparatus, comprising:
-
a first determining unit configured to determine a sending rate estimate, s; and a second determining unit configured to determine any credits or debits for a packet stream including a plurality of data packets from a source, a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; a marking unit configured to probabilistically mark the packet stream to one of a plurality of priority levels based on the sending rate estimate, s; a third determining unit configured to determine if the sending rate estimate is greater than a super rate threshold; a fourth determining unit configured to determine if a burst size is greater than a minimum burst, in response to a determination that the sending rate estimate is greater than the super rate threshold; and another marking unit configured to mark the packet a priority level based on a count of packets marked a highest priority level during a period, in response to a determination that the burst size is grater than a minimum burst. - View Dependent Claims (22)
-
-
23. A method, comprising:
-
determining a first probability by using a first algorithm; determining at least one second probability by using a second algorithm, the first algorithm being different from the second algorithm; and weighting each probability so that each probability contributes to a net probability, wherein the weighting comprises determining any credits or debits for a packet stream including a plurality of data packets from a source, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain.
-
-
24. A computer program embodied within a computer readable medium, when executed the computer program includes means for marking a packet stream including a plurality of data packets from a source by performing:
-
determining a sending rate estimate, s; and determining any credits or debits for the packet stream, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain.
-
-
25. A system for marking a packet stream including a plurality of data packets from a source, comprising:
-
a metering tool for determining a sending rate estimate, s; and a determining means for determining any credits or debits for the packet stream, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and a router for probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain.
-
-
26. An apparatus for marking a packet stream including a plurality of data packets from a source comprising:
-
a metering tool for determining a sending rate estimate, s; and a determining component for determining any credits or debits for the packet stream, wherein a probability marking of the packet stream is improved while there is a sufficiently accumulated credit and when a first criterion is met; and a marking component for probabilistically marking the packet stream to one of a plurality of priority levels based on the sending rate estimate, s, wherein the packet marking is on a flow-aggregate or aggregate basis for the packet stream including a plurality of data packets from a customer domain.
-
Specification