IP Library Granted Patent US 7,729,385
Granted Patent B2
US 7,729,385 · App. 10/976,851 · Granted Jun 1, 2010

Techniques for utilization of spare bandwidth

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,729,385
App. No.
10/976,851
Granted
Jun 1, 2010
Kind
B2
Abstract

A packet encapsulator includes a filter module that identifies one or more carousel packets from a plurality of received packets. These one or more carousel packets are then stored in a packet buffer. The packet encapsulator also includes a channel queue for enqueuing packets for transmission across a broadcast transmission medium. For instance, the channel queue also receives the forwarding packets from the filter module. The channel queue also receives the one or more carousel packets from the packet buffer when at least a predetermined amount of available bandwidth exists in the broadcast transmission medium. The broadcast transmission medium may be a digital broadcast network such as a DVB handheld (DVB-H) network or a DVB terrestrial (DVB-T) network. Alternatively, the broadcast transmission medium may be a cable network.

Claims (46)

1. A packet encapsulator, comprising:

a filter module configured to identify from a plurality of received packets one or more carousel packets;

a packet buffer configured to store the one or more carousel packets identified by said filter module;

a channel queue configured to enqueue packets for transmission across a broadcast transmission medium, wherein the channel queue issues to the packet buffer a command when the transmission medium has at least a predetermined amount of spare bandwidth and receives in response to the command the one or more carousel packets from the packet buffer when at least a predetermined amount of available bandwidth exists in the broadcast transmission medium, said channel queue configured to output the enqueued packets to be broadcast over the broadcast transmission medium.

2. The packet encapsulator of claim 1 , wherein the broadcast transmission medium is a digital broadcast network.

3. The packet encapsulator of claim 2 , wherein the digital broadcast network is a DVB handheld (DVB-H) network.

4. The packet encapsulator of claim 2 , wherein the digital broadcast network is a DVB terrestrial (DVB-T) network.

5. The packet encapsulator of claim 1 , wherein the broadcast transmission medium is a cable network.

6. The packet encapsulator of claim 1 , further comprising:

a comparison table for storing one or more index values, each index value corresponding to a particular carousel packet in the packet buffer.

7. The packet encapsulator of claim 6 , wherein each of the index values is a hash value computed from the corresponding carousel packet.

8. The packet encapsulator of claim 6 , further comprising:

a receiving queue having one or more entries, each entry corresponding to a particular carousel packet stored in the packet buffer, wherein the one or more entries are arranged in a chronological order according to reception timestamp values of the one or more carousel packets in the packet buffer.

9. The packet encapsulator of claim 6 , further comprising:

a sending queue having one or more entries, each entry corresponding to a particular carousel packet stored in the packet buffer;

wherein the sending queue further includes a last received pointer designating where entries corresponding to new packets are to be added, and a last sent pointer designating an entry that corresponds to the carousel packet in the packet buffer that was most recently sent to the channel queue.

10. The packet encapsulator of claim 1 , wherein the channel queue further receives forwarding packets from the filter module.

11. The packet encapsulator of claim 1 , wherein the plurality of received packets are Internet protocol (IP) packets.

12. A method, comprising:

setting up a carousel session with a remote server;

receiving a carousel packet from the remote server;

adding the received carousel packet to a packet buffer in a storage module when the packet has not been previously received, and otherwise updating a timestamp of the received carousel packet in the packet buffer when the carousel packet has been previously received and stored in the packet buffer;

updating a comparison table, a receiving queue, and a sending queue in the storage module based on the received carousel packet;

receiving an indication of available bandwidth in a broadcast transmission medium from a channel queue;

in response to the indication, sending one or more carousel packets stored in the packet buffer to the channel queue, and

outputting the enqueued packets from the channel queue to be broadcast over the broadcast transmission medium.

13. The method of claim 12 , further comprising

removing one or more carousel packets from the packet buffer upon the occurrence of a cleanup condition.

14. The method of claim 12 , wherein the cleanup condition is the occurrence of an expiry time period.

15. The method of claim 12 , wherein the comparison table, receiving queue, and sending queue include a comparison table for-storing one or more index values, each index value corresponding to a particular carousel packet in the packet buffer.

16. The method of claim 15 , wherein each of the index values is a hash value computed from the corresponding carousel packet.

17. The method of claim 12 , wherein the carousel packet is an Internet protocol (IP) packet associated with a static timestamp value.

18. The method of claim 12 , wherein the channel queue issues to the packet buffer a command when the broadcast transmission medium has at least a predetermined amount of spare bandwidth.

19. The method of claim 18 , wherein the broadcast transmission medium is a digital broadcast network.

20. The method of claim 19 , wherein the digital broadcast network is a DVB handheld (DVB-H) network.

21. The method of claim 19 , wherein the digital broadcast network is a DVB terrestrial (DVB-T) network.

22. The method of claim 18 , wherein the broadcast transmission medium is a cable network.

23. The method of claim 12 , wherein setting up a carousel session with the remote server includes communicating with the remote server to establish one or more session parameters that define the carousel session.

24. A computer program product comprising a computer readable medium having computer program logic recorded thereon for enabling a processor in a computer system to process packets, the computer program logic comprising:

program code for enabling the processor to set up a carousel session with a remote server;

program code for enabling the processor to receive a carousel packet from the remote server;

program code for enabling the processor to add the received carousel packet to a packet buffer in a storage module when the packet has not been previously received, and otherwise for enabling the processor to update a timestamp of the received carousel packet in the packet buffer when the carousel packet has been previously received and stored in the packet buffer;

program code for enabling the processor to update a comparison table, a receiving queue, and a sending queue in the storage module based on the received carousel packet;

program code for enabling the processor to receive an indication of available bandwidth in a broadcast transmission medium from a channel queue;

in response to the indication, program code for enabling the processor to send one or more carousel packets stored in the packet buffer to the channel queue, and

program code for enabling the processor to output the enqueued packets from the channel queue to be broadcast over the broadcast transmission medium.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2018
From: FORM HOLDINGS CORP. (FORMERLY VRINGO INC.)
To: NOKIA TECHNOLOGIES OY
Reel/Frame 045921/0512 →
RELEASE OF SECURITY INTEREST Recorded Apr 7, 2016
From: SILICON VALLEY BANK
To: VRINGO, INC.
Reel/Frame 038380/0956 →
ASSIGNMENT OF SECURITY INTEREST Recorded May 8, 2015
From: VRINGO, INC.
To: IROQUOIS MASTER FUND, L.P.
Reel/Frame 035624/0710 →
SECURITY INTEREST Recorded May 5, 2015
From: VRINGO INFRASTRUCTURE, INC.
To: VRINGO, INC.
Reel/Frame 035585/0371 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2012
From: NOKIA CORPORATION
To: VRINGO INFRASTRUCTURE INC.
Reel/Frame 029010/0345 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2005
From: MULLER, DOMINIQUE; VERMOLA, LARRI; PEKONEN, HARRI
To: NOKIA CORPORATION
Reel/Frame 016358/0580 →