IP Library Granted Patent US 8,498,209
Granted Patent B1
US 8,498,209 · App. 13/459,645 · Granted Jul 30, 2013

Elastic traffic marking for multi-priority packet streams in a communications 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,498,209
App. No.
13/459,645
Granted
Jul 30, 2013
Kind
B1
Abstract

Routers in a communications network mark packets of a multi-priority stream to establish a drop precedence of the packets during network congestion. For each packet received, a router employs one of two types of packet-marking mechanisms to associate low drop precedence with a high-priority, out-of-profile packet. One type, called “token bucket with loan bucket,” uses a token bucket to determine whether a packet is in conformance, i.e., in-profile, with a traffic profile and at least one loan bucket to determine whether a high priority, out-of-profile packet may borrow bandwidth. Another mechanism type, called “token bucket with color-exchange queue,” uses a color-exchange queue to delay packet forwarding for a fixed period. During this delay, a high-drop-precedence marking of an out-of-profile, high-priority packet may be exchanged with a low-drop-precedence marking of an in-profile, low-priority packet. The packet-marking mechanisms are useful in improving the quality of video viewing.

Claims (31)

1. In a communications network, a method of marking a packet of a multi-priority stream to establish a drop precedence of the packet, the method comprising:

receiving a first packet and a second packet of the multi-priority stream, the first packet having a higher priority than the second packet;

determining that the first packet is non-conforming with respect to a traffic profile and that the second packet is conforming with respect to the traffic profile; and

associating the non-conforming, higher priority first packet with lower drop precedence and associating the conforming second packet with higher drop precedence on determining that bandwidth can be borrowed for the first packet, otherwise, associating the non-conforming, higher priority first packet with higher drop precedence and the conforming second packet with lower drop precedence.

2. The method of claim 1 , comprising determining whether bandwidth for the first packet can be borrowed by examining a loan bucket to determine whether a number of tokens in the loan bucket is less than a predetermined threshold.

3. The method of claim 1 , comprising adding at least one token to a loan bucket when the non-conforming first packet is associated with lower drop precedence.

4. The method of claim 1 , wherein associating the conforming second packet with higher drop precedence comprises examining a loan bucket to determine whether the loan bucket contains any tokens.

5. The method of claim 1 , comprising forwarding the first packet over the communications network before the second packet is received.

6. The method of claim 1 , wherein associating the non-conforming, higher priority first packet with lower drop precedence and associating the conforming second packet with higher drop precedence comprises:

marking the non-conforming first packet with higher drop precedence and marking the conforming second packet with lower drop precedence; and

exchanging the higher drop precedence marking of the first packet with the lower drop precedence marking of the second packet before forwarding the first packet to the communications network.

7. The method of claim 1 , comprising placing the first packet into a queue for a fixed period.

8. The method of claim 7 , comprising placing both the first packet and the second packet into the queue for the fixed period.

9. The method of claim 8 , comprising exchanging a marking of the first packet with a marking of the second packet when one of the first and second packets enters the queue.

10. The method of claim 8 , comprising exchanging a marking of the first packet with a marking of the second packet when one of the first and second packets exits the queue.

11. A non-transitory processor-readable medium storing instructions executable in a communications network to mark a packet of a multi-priority stream to establish a drop precedence of the packet, the instructions comprising instructions executable:

to receive a first packet and a second packet of the multi-priority stream, the first packet having a higher priority than the second packet;

to determine that the first packet is non-conforming with respect to a traffic profile and that the second packet is conforming with respect to the traffic profile; and

to associate, conditional upon determining that bandwidth can be borrowed for the first packet, the non-conforming, higher priority first packet with lower drop precedence and to associate the conforming second packet with higher drop precedence,

the instructions otherwise being executable to associate the non-conforming, higher priority first packet with higher drop precedence and to associate the conforming second packet with lower drop precedence.

12. The medium of claim 11 , wherein the instructions comprise instructions executable to determine whether bandwidth for the first packet can be borrowed by examining a loan bucket to determine whether a number of tokens in the loan bucket is less than a predetermined threshold.

13. The medium of claim 11 , wherein the instructions comprise instructions executable to add at least one token to a loan bucket when the non-conforming first packet is associated with lower drop precedence.

14. The medium of claim 11 , wherein the instructions executable to associate the conforming second packet with higher drop precedence comprise instructions executable to examine a loan bucket to determine whether the loan bucket contains any tokens.

15. The medium of claim 11 , wherein the instructions comprise instructions executable to forward the first packet over the communications network before the second packet is received.

16. The medium of claim 11 , wherein the instructions executable to associate the non-conforming, higher priority first packet with lower drop precedence and to associate the conforming second packet with higher drop precedence comprise instructions executable:

to mark the non-conforming first packet with higher drop precedence and marking the conforming second packet with lower drop precedence; and

to exchange the higher drop precedence marking of the first packet with the lower drop precedence marking of the second packet before forwarding the first packet to the communications network.

17. The medium of claim 11 , wherein the instructions comprise instructions executable to place the first packet into a queue for a fixed period.

18. The medium of claim 17 , wherein the instructions comprise instructions executable to place both the first packet and the second packet into the queue for the fixed period.

19. The medium of claim 18 , wherein the instructions comprise instructions executable to exchange a marking of the first packet with a marking of the second packet when one of the first and second packets enters the queue.

20. The medium of claim 18 , wherein the instructions comprise instructions executable to exchange a marking of the first packet with a marking of the second packet when one of the first and second packets exits the queue.

Assignments (11)
PATENT SECURITY AGREEMENT Recorded Aug 6, 2024
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 068328/0674 →
RELEASE OF LIEN ON PATENTS Recorded Aug 5, 2024
From: BARINGS FINANCE LLC
To: RPX CORPORATION
Reel/Frame 068328/0278 →
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 054305/0505 →
PATENT SECURITY AGREEMENT Recorded Oct 23, 2020
From: RPX CLEARINGHOUSE LLC; RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 054198/0029 →
PATENT SECURITY AGREEMENT Recorded Oct 23, 2020
From: RPX CLEARINGHOUSE LLC; RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 054244/0566 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CLEARINGHOUSE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046485/0644 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2014
From: ROCKSTAR CONSORTIUM US LP
To: BOCKSTAR TECHNOLOGIES LLC
Reel/Frame 032399/0116 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2013
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 030287/0214 →