IP Library Granted Patent US 7,609,709
Granted Patent B2
US 7,609,709 · App. 11/337,372 · Granted Oct 27, 2009

Video aware traffic management

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,609,709
App. No.
11/337,372
Granted
Oct 27, 2009
Kind
B2
Abstract

A multiplexer selectively chooses packets for discarding during periods of congestion. In a first embodiment, thresholds for fill levels of a FIFO queue are set for a plurality of priority types. As thresholds are exceeded, incoming packet below a set priority level will be prevented from entering the queue and packets at the front of the queue below the set priority will be discarded. In a second embodiment, packets within a queue may be marked for deletion. A forward/discard list assigns an index to a new packet and maintains a list of the stream associated with each packet. A priority index list maintains a list of packets for each priority type by index number. A video metadata buffer stores the metadata for each enqueued packet. A physical video buffer stores the packets. When an incoming packet cannot be enqueued, packets of lower priority are detected by reference to the index list and marked for discard.

Claims (42)

1. A multiplexer for broadband subscriber access, comprising:

a memory queue for storing packets of video information;

a plurality of control flags associated with respective priority, each flag indicating whether a respective predetermined threshold has been met by packets stored in the memory, each threshold being associated with a time-to-dequeue parameter indicative of an expected time period for passing a packet through the multiplexer; and

input circuitry for selectively storing an incoming packet in the memory queue responsive to the control flags and a priority associated with the incoming packet.

2. The multiplexer of claim 1 and further comprising output circuitry for selectively discarding a packet at a head of said memory responsive to the control flags and a priority associated with the packet at the head.

3. The multiplexer of claim 2 wherein said output circuitry further comprises circuitry for selectively discarding packets associated with a common video frame from the memory queue if a packet associated with the common video frame has already been discarded.

4. The multiplexer of claim 1 wherein said input circuitry further comprises circuitry for not storing the incoming packet in the memory queue if a previous packet associated with a same video frame has been discarded.

5. The multiplexer of claim 1 and further comprising a forward prediction control circuit for setting the control flags based on whether respective thresholds will be exceeded by future incoming packets.

6. The multiplexer of claim 1 and further comprising channel clearing control circuitry for discarding packets associated with a data stream which is no longer being subscribed to.

7. The multiplexer of claim 1 wherein said channel clearing control circuitry further discards packets associated with a new data stream, where the packets are below a predetermined priority.

8. A multiplexer for broadband subscriber access, comprising:

a memory queue for storing video packets from multiple data streams, wherein each video packet is associated with one of a plurality of priority levels;

a forward/discard list memory for associating each video packet in the queue with an index and an indicator of the data stream associated with the video packet;

a priority index list memory for maintaining a list of packets associated with each of said plurality of priority levels; and

input circuitry for marking existing packets in the memory queue for discard based on information in the priority index list in order to accommodate incoming packets within one or more predetermined parameters, wherein said predetermined parameters include a time-to-dequeue parameter.

9. The multiplexer of claim 8 wherein said input circuitry marks an existing packet for deletion in the forward/discard list by associating a predetermined value with the index associated with the existing packet to be discarded.

10. The multiplexer of claim 9 and further comprising output circuitry for selectively transmitting packets from the memory queue responsive to information in forward/discard list.

11. The multiplexer of claim 9 and further comprising a metadata memory for storing metadata associated with each packet.

12. The multiplexer of claim 11 and further comprising output circuitry for selectively transmitting packets from the memory queue and metadata from the metadata memory responsive to information in forward/discard list.

13. The multiplexer of claim 8 wherein said input circuitry, upon receiving an incoming packet having a known priority level, determines whether enqueuing the incoming packet would violate one or more of said predetermined parameters and, if so, marks one or more existing packets of lower priority than the known priority level for deletion.

14. The multiplexer of claim 8 wherein packet of lower priority are determined through examining a priority index list associated with said lower priority.

15. A method for multiplexing data onto a broadband connection, comprising the step of:

storing packets of video information in a memory queue;

maintaining a state for a plurality of control flags associated with respective priority, the state of each flag indicating whether a respective predetermined threshold has been met by packets stored in the memory, each threshold being associated with a time-to-dequeue parameter indicative of an expected time period for passing a packet through to the broadband connection; and

selectively storing an incoming packet in the memory queue responsive to the control flags and a priority associated with the incoming packet.

16. The method of claim 15 and further comprising the step of selectively discarding a packet at a head of said memory queue responsive to the control flags and a priority associated with the packet.

17. The method of claim 16 wherein said selectively discarding step further comprises selectively discarding packets associated with a common video frame from the head of the memory queue if a packet associated with the common video frame has already been discarded.

18. The method of claim 15 wherein said selectively storing step further comprises the step of not storing the incoming packet if a previous packet associated with a same video frame has been discarded.

19. The method of claim 15 and further comprising the step of setting the control flags based on whether respective thresholds will be exceeded by future incoming packets.

20. The method of claim 15 and further comprising the step of discarding packets associated with a data stream which is no longer being subscribed to.

21. The method of claim 15 and further comprising the step of discarding packets associated with a new data stream, where the packets are below a predetermined priority until a high priority packet associated with the new data stream is received.

22. A method for multiplexing data onto a broadband connection, comprising:

storing video packets from multiple data streams in a memory queue, wherein each video packet is associated with one of a plurality of priority levels;

associating each video packet in the queue with an index and an indicator of the data stream associated with the video packet a forward/discard list;

maintaining a list of packets associated with each of said plurality of priority levels in a priority index list; and

selectively marking existing packets in the memory queue for discard based on information in the priority index list in order to accommodate incoming packets within one or more predetermined parameters, wherein said predetermined parameters include a time-to-dequeue parameter.

23. The method of claim 22 wherein said selectively marking step comprises the step of selectively marking an existing packet for deletion in the forward/discard list by associating a predetermined value with the index associated with the existing packet to be discarded.

24. The method of claim 23 and further comprising the step of selectively transmitting packets from the memory queue responsive to information in forward/discard list.

25. The method of claim 22 and further comprising the step of storing metadata associated with each packet in a metadata memory.

26. The method of claim 25 and further comprising the step of selectively transmitting packets from the memory queue and metadata from the metadata memory responsive to information in forward/discard list.

27. The method of claim 22 wherein said selectively marking step comprises the step of, upon receiving an incoming packet having a known priority level, determining whether enqueuing the incoming packet would violate one or more of said predetermined parameters and, if so, marking one or more existing packets of lower priority than the known priority level for deletion.

28. The method of claim 22 wherein said determining step comprise the step of determining the existence of packets of lower priority through examining the priority index list associated with said lower priority.

Assignments (15)
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 →
PATENT SECURITY AGREEMENT Recorded Apr 22, 2023
From: RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 063429/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033949/0531 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →
CERTIFICATE OF CONVERSION Recorded Sep 1, 2009
From: ALCATEL USA SOURCING, L.P.
To: ALCATEL USA SOURCING, INC.
Reel/Frame 023174/0873 →
MERGER Recorded Sep 1, 2009
From: ALCATEL USA SOURCING, INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 023174/0993 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2006
From: KIM, TAEHO; SKOOG, FREDERICK
To: ALCATEL USA SOURCING, L.P.
Reel/Frame 017147/0965 →