IP Library Granted Patent US 7,349,342
Granted Patent B2
US 7,349,342 · App. 10/390,385 · Granted Mar 25, 2008

Traffic metering in data networks

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,349,342
App. No.
10/390,385
Granted
Mar 25, 2008
Kind
B2
Abstract

Methods and apparatus are provided for metering data packets having a plurality of different packet lengths in a data communications network. A token count T C is incremented at a token increment rate CIR subject to an upper limit CBS on the token count. On arrival of a packet of length L tokens, it is determined if both T C >0 and T C +n≧L, where n is a defined number of tokens. If so, the data packet is categorized as in profile and L tokens are subtracted from the token count T C . Otherwise the data packet is categorized out of profile. In some embodiments, n is set to a value in the range 0<n<(L max −1) where L max is the maximum length of data packets to be metered. In other embodiments, n is varied in the range 0≦n≦(L max −1) in dependence on at least one feedback signal indicating an operational condition in the network. The degree of conformance of the metering system is determined by the parameter n, whereby the conformance level can be tuned to particular multi-length packet environments.

Claims (30)

1. A method for metering data packets, having a plurality of different packet lengths, in a device of a data communications network, the method comprising:

incrementing a token count T c at a token increment rate subject to an upper limit on the token count;

in response to receipt of a packet of length L tokens, determining if both T c >0 and T c +n≧L, where n is a defined number of tokens;

if so, marking the data packet as in profile and subtracting L tokens from the token count;

if not, marking the data packet as out of profile; and

varying n in the range 0≦n≦(L max −1), where L max is the maximum length of data packets to be metered, in dependence on at least one feedback signal indicating an operational condition in the network.

2. A method according to claim 1 including varying n across the full extent of said range.

3. A method according to claim 1 including varying n in dependence on a feedback signal indicating loading in said device.

4. A method according to claim 3 wherein said feedback signal is indicative of utilization of a set of outgoing data links of said device over which said data packets are transmitted by the device.

5. A method according to claim 1 including varying n in dependence on a feedback signal indicating loading in one or more network elements remote from said device.

6. A method according to claim 5 wherein said feedback signal is indicative of utilization of a set of data links in the network over which said data packets are transmitted.

7. A method according to claim 1 including varying n in dependence on a feedback signal indicative of the packet delay variation for at least one packet stream to which said data packets belong.

8. Apparatus for metering data packets, having a plurality of different packet lengths, in a data communications network, the apparatus comprising:

a token counter for maintaining a token count T c ; and

control logic configured to increment the token count T c at a token increment rate subject to an upper limit on the token count in response to receipt of a packet of length L tokens, to determine if both T c >0 and T c +n ≧L where n is a defined number of tokens and to vary n in the range 0≦n≦(L max −1), where L max is the maximum length of data packets to be metered, in dependence on at least one feedback signal indicating an operational condition in the network.

9. A network device for processing data packets in a data communications network, the device having at least one meter for metering data packets processed by the device, said meter comprising a token counter for maintaining a token count T c ; and control logic configured:

to increment the token count T c at a token increment rate subject to an upper limit on the token count;

in response to receipt of a packet of length L tokens, to determine if both T c >0 and T c +n≧L, where n is a defined number of tokens;

if so, to categorize the data packet as in profile and subtract L tokens from the token count;

if not, to categorize the data packet as out of profile; and

to vary n in the range 0≦n≦(L max −1), where L max is the maximum length of data packets to be metered, in dependence on at least one feedback signal indicating an operational condition in the network.

10. A data communications network comprising a plurality of network devices including at least one network device according to claim 9 .

11. A computer program product comprising a computer readable medium having embodied therein computer readable program code means for causing a processor of a network device to perform a method for metering data packets having a plurality of different packet lengths, the method comprising:

incrementing a token count T c at a token increment rate subject to an upper limit on the token count;

in response to receipt of a packet of length L tokens, determining if both T c >0 and T c +n≧L, where n is a defined number of tokens;

if so, categorizing the data packet as in profile and subtracting L tokens from the token count;

if not, categorizing the data packet as out of profile; and

varying n in the range 0≦n≦(L max −1), where L max is the maximum length of data packets to be metered, in dependence on at least one feedback signal indicating an operational condition in the network.

12. The apparatus of claim 8 further including if both conditions are met, to categorize the data packet as in profile and subtract L tokens from the token count; and

if not, to categorize the data packet as out of profile.

Assignments (3)
CHANGE OF NAME Recorded Oct 6, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044142/0357 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2011
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GOOGLE INC.
Reel/Frame 026894/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2003
From: CARPENTER, BRIAN E.; JEFFRIES, CLARK D.; KIND, ANDREAS
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 013891/0521 →