IP Library Granted Patent US 8,942,220
Granted Patent B2
US 8,942,220 · App. 14/072,618 · Granted Jan 27, 2015

Method and apparatus for policing a flow in a network

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 8,942,220
App. No.
14/072,618
Granted
Jan 27, 2015
Kind
B2
Abstract

An example of a method of policing a flow in a home network such as a MoCA network may include calculating a policing period, calculating a first credit parameter, initializing a first usage variable at a beginning of the policing period, receiving a packet at an ingress node, calculating the first usage variable based on a first formula, determining whether the first usage variable is less than or equal to the first credit parameter, and making a reservation request when the first usage variable is less than or equal to the first credit parameter. The reservation request is different from an opportunistic reservation request. Examples of a system and a computer program product having instructions stored in a tangible computer-readable storage medium are also provided.

Claims (103)

1. A method of policing a flow in a home network, the method comprising:

calculating a policing period;

calculating a first credit parameter;

initializing a first usage variable at a beginning of the policing period;

receiving, at an ingress node, a packet;

for the packet received during the policing period, calculating the first usage variable based on a first formula;

determining whether the first usage variable is less than or equal to the first credit parameter;

making a reservation request, by the ingress node, when the first usage variable is less than or equal to the first credit parameter,

wherein the reservation request is different from an opportunistic reservation request.

2. The method of claim 1 , comprising:

calculating a second credit parameter; and

initializing a second usage variable at the beginning of the policing period.

3. The method of claim 2 , comprising:

for the packet received during the policing period, calculating the second usage variable based on a second formula; and

determining whether the second usage variable is less than or equal to the second credit parameter,

wherein the making a reservation request comprises making the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.

4. The method of claim 3 , wherein

the policing period is represented as T pp ,

one policing period represents one T pp ,

the first credit parameter represents a packet credit,

the second credit parameter represents a bit credit,

the first usage variable represents a packet usage, and

the second usage variable represents a bit usage.

5. The method of claim 3 , wherein

the calculating a first credit parameter comprises calculating a packet credit based on a burst size, and

the calculating a second credit parameter comprises calculating a bit credit based on a packet size.

6. The method of claim 3 ,

wherein the calculating the first usage variable based on a first formula is represented as:

PacketUsage=PacketUsage+1,

where the first usage variable is PacketUsage, and

wherein the calculating the second usage variable based on a second formula is represented as:

BitUsage=BitUsage+PacketSize,

where the second usage variable is BitUsage, and PacketSize is a size of the received packet in bits.

7. The method of claim 3 , comprising:

determining whether an end of the policing period is reached,

wherein the initializing a first usage variable and the initializing a second usage variable are performed at a beginning of each policing period, and

wherein the calculating the first usage variable, the calculating the second usage variable, the determining whether the first usage variable is less than or equal to the first credit parameter, the determining whether the second usage variable is less than or equal to the second credit parameter, and the making the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter are performed for each packet received during a respective policing period.

8. The method of claim 3 , comprising:

making the opportunistic reservation request, by the ingress node, when the first usage variable is greater than the first credit parameter or when the second usage variable is greater than the second credit parameter.

9. A system, comprising:

a computer-readable storage medium; and

a processing system for policing a flow, the processing system configured to facilitate:

calculating a policing period;

calculating a first credit parameter;

initializing a first usage variable at a beginning of the policing period;

calculating the first usage variable based on a first formula;

determining whether the first usage variable is less than or equal to the first credit parameter; and

using a request representing a reservation request when the first usage variable is less than or equal to the first credit parameter,

wherein the reservation request is different from an opportunistic reservation request.

10. The system of claim 9 , wherein the processing system is configured to facilitate:

calculating a second credit parameter;

initializing a second usage variable at the beginning of the policing period;

calculating the second usage variable based on a second formula; and

determining whether the second usage variable is less than or equal to the second credit parameter,

wherein the using a request comprises using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.

11. The system of claim 10 ,

wherein the policing period is represented as Tpp, one policing period represents one Tpp, the first credit parameter represents a packet credit, the second credit parameter represents a bit credit, the first usage variable represents a packet usage, and the second usage variable represents a bit usage,

wherein the calculating a first credit parameter comprises calculating the packet credit based on a burst size, and

wherein the calculating a second credit parameter comprises calculating the bit credit based on a packet size.

12. The system of claim 10 ,

wherein the calculating the first usage variable based on a first formula is represented as:

PacketUsage=PacketUsage+1,

where the first usage variable is PacketUsage, and

wherein the calculating the second usage variable based on a second formula is represented as:

BitUsage=BitUsage+PacketSize,

where the second usage variable is BitUsage, and PacketSize is a size of a received packet in bits.

13. The system of claim 10 , wherein the processing system is configured to facilitate:

determining whether an end of the policing period is reached,

at a beginning of each policing period, initializing a first usage variable and initializing a second usage variable, and

for each packet received during a respective policing period, calculating the first usage variable, calculating the second usage variable, determining whether the first usage variable is less than or equal to the first credit parameter, determining whether the second usage variable is less than or equal to the second credit parameter, and using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.

14. The system of claim 10 , wherein the processing system is configured to facilitate:

using the opportunistic reservation request when the first usage variable is greater than the first credit parameter or when the second usage variable is greater than the second credit parameter.

15. A computer program product comprising instructions stored in a tangible computer-readable storage medium, the instructions comprising:

instructions for calculating a policing period;

instructions for calculating a first credit parameter;

instructions for initializing a first usage variable;

instructions for calculating the first usage variable based on a first formula;

instructions for determining whether the first usage variable is less than or equal to the first credit parameter; and

instructions for using a request representing a reservation request when the first usage variable is less than or equal to the first credit parameter,

wherein the reservation request is different from an opportunistic reservation request.

16. The computer program product of claim 15 , wherein the instructions comprise:

instructions for calculating a second credit parameter;

instructions for initializing a second usage variable;

instructions for calculating the second usage variable based on a second formula; and

instructions for determining whether the second usage variable is less than or equal to the second credit parameter,

wherein the instructions for using a request comprise instructions for using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.

17. The computer program product of claim 16 ,

wherein the policing period is represented as Tpp, one policing period represents one Tpp, the first credit parameter represents a packet credit, the second credit parameter represents a bit credit, the first usage variable represents a packet usage, and the second usage variable represents a bit usage,

wherein the instructions for calculating a first credit parameter comprise instructions for calculating the packet credit based on a burst size, and

wherein the instructions for calculating a second credit parameter comprise instructions for calculating the bit credit based on a packet size.

18. The computer program product of claim 16 ,

wherein the instructions for calculating the first usage variable based on a first formula are represented as:

PacketUsage=PacketUsage+1,

where the first usage variable is PacketUsage, and

wherein the instructions for calculating the second usage variable based on a second formula are represented as:

BitUsage=BitUsage+PacketSize,

where the second usage variable is BitUsage, and PacketSize is a size of a received packet in bits.

19. The computer program product of claim 16 , wherein the instructions comprise:

instructions for determining whether an end of the policing period is reached,

at a beginning of each policing period, instructions for initializing a first usage variable and initializing a second usage variable, and

for each packet received during a respective policing period, instructions for calculating the first usage variable, calculating the second usage variable, determining whether the first usage variable is less than or equal to the first credit parameter, determining whether the second usage variable is less than or equal to the second credit parameter, and using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.

20. The computer program product of claim 16 , wherein the instructions comprise:

instructions for using the opportunistic reservation request when the first usage variable is greater than the first credit parameter or when the second usage variable is greater than the second credit parameter.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2013
From: KLIGER, AVRAHAM; OHANA, YITSHAK; KLEIN, PHILIPPE
To: BROADCOM CORPORATION
Reel/Frame 031550/0007 →