IP Library › Granted Patent US 9,172,506
Granted Patent B2
US 9,172,506 · App. 13/795,842 · Granted Oct 27, 2015

Packet loss recovery

Inventors: Donna L. Polehn (Kirkland, WA); Deepak Kakadia (Union City, CA); Lalit R. Kotecha (San Ramon, CA)
Assignees: Cellco Partnership; Verizon Patent and Licensing Inc.
H04L1/08H03M13/23
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 9,172,506
App. No.
13/795,842
Granted
Oct 27, 2015
Kind
B2
Abstract

A network device includes a network interface device that receives at least a subset of a plurality of recoverable packets. The plurality of recoverable packets corresponds to a plurality of original packets generated by a source device. A processor having a packet recovery module recreates each of the original packets based on the subset of the recoverable packets received. The subset of recoverable packets excludes recoverable packets lost during transmission to the network interface device. A system includes a first network device that generates original packets and converts the original packets to recoverable packets. A second network device receives at least a subset of the recoverable packets, excluding recoverable packets lost during transmission from the first network device. The second network device includes a packet recovery module that recreates the original packets based on the subset of the recoverable packets received at the second network device.

Claims (46)

1. A network device comprising:

a network interface device configured to receive at least a subset of a plurality of recoverable packets, wherein the plurality of recoverable packets correspond to a plurality of original packets generated by a source device; and

a processor having a packet recovery module configured to recreate each of the original packets based on the subset of the recoverable packets received, wherein the subset of recoverable packets excludes recoverable packets lost during transmission to the network interface device;

wherein the network device is further configured to receive a signal representing a length of at least one polynomial string according to which a plurality of intermediate packets with error correction data are encoded prior to receiving the at least a subset of a plurality of recoverable packets, the intermediate packets being generated from the original packets by the source device.

2. The network device of claim 1 , wherein the packet recovery module is configured to recreate each of the original packets by decoding each recoverable packet in the subset of recoverable packets based at least in part on a deconvolution process and error correction technique.

3. The network device of claim 1 , wherein the packet recovery module is configured to generate recoverable packets for the network interface device to transmit.

4. The network device of claim 1 , wherein each recoverable packet includes at least a subset of data contained in at least two of the plurality of original packets.

5. The network device of claim 1 , wherein the processor is configured to output a signal indicating that the processor is configured to process the recoverable packets, and wherein the network interface device is configured to transmit the signal to the source device prior to the source device transmitting the recoverable packets.

6. The network device of claim 1 , wherein the processor is configured to determine whether the source device is configured to process recoverable packets, and wherein the packet recovery module is configured to generate recoverable packets to transmit to the source device if the source device is configured to process recoverable packets.

7. A system comprising:

a first network device configured to generate a plurality of original packets, wherein the first network device is configured to convert the plurality of original packets to recoverable packets by:

performing a convolution process on each of the plurality of original packets to generate intermediate packets;

generating at least one polynomial string using a series of D flip-flops having a serial-in, serial-out configuration; and

encoding the intermediate packets with error correction data according to the at least one polynomial string; and

a second network device configured to receive at least a subset of the recoverable packets, wherein the subset of the recoverable packets excludes recoverable packets lost during transmission from the first network device to the second network device, and wherein the second network device includes a packet recovery module configured to recreate each of the original packets based on the subset of the recoverable packets received at the second network device;

wherein each recoverable packet includes at least a subset of data contained in at least one of the original packets and error correction data.

8. The system of claim 7 , wherein the first network device is configured to transmit a signal representing a length of the polynomial string to the second network device prior to transmitting the recoverable packets to the second network device.

9. The system of claim 7 , wherein the first network device is configured to identify a network condition and adjust a length of the polynomial string based at least in part on the network condition.

10. The system of claim 7 , wherein the packet recovery module is configured to recreate each of the original packets by decoding each recoverable packet in the subset of recoverable packets based at least in part on a deconvolution process and error correction technique.

11. The system of claim 7 , wherein the second network device is configured to generate recoverable packets for the second network device to transmit to the first network device.

12. The system of claim 7 , wherein each recoverable packet includes at least a subset of data contained in at least two of the plurality of original packets.

13. The system of claim 7 , wherein the first network device is configured to determine whether the second network device is able to receive recoverable packets prior to the first network device transmitting recoverable packets to the second network device.

14. A non-transitory computer-readable medium tangibly embodying computer-executable instructions comprising instructions that when executed by a processor cause the processor to:

receive at least a subset of a plurality of recoverable packets, wherein the plurality of recoverable packets corresponds to a plurality of original packets generated by a source device, wherein each recoverable packet includes at least a subset of data contained within at least two of the plurality of original packets; and

receive a signal representing a length of at least one polynomial string according to which a plurality of intermediate packets with error correction data are encoded prior to receiving the at least a subset of a plurality of recoverable packets, wherein the intermediate packets are generated from the original packets by the source device;

recreate each of the original packets based on the subset of the recoverable packets received, wherein the subset of recoverable packets excludes recoverable packets lost during transmission.

15. The computer-readable medium of claim 14 , wherein each of the original packets is recreated by decoding each recoverable packet in the subset of recoverable packets based at least in part on a deconvolution process and error correction technique.

16. The computer-readable medium of claim 14 , the instructions further causing the processor to generate recoverable packets for a network device to transmit.

17. The computer-readable medium of claim 14 , the instructions further causing the processor to:

output a signal indicating that the processor is configured to process the recoverable packets; and

determine whether a source device is configured to process recoverable packets.

18. A method comprising:

receiving, at a network device, a signal representing a length of at least one polynomial string according to which a plurality of intermediate packets with error correction data are encoded, the intermediate packets being generated from a plurality of original packets by a source device;

receiving, at the network device, at least a subset of a plurality of recoverable packets from the source device, the plurality of recoverable packets corresponding to the plurality of original packets generated by the source device, each recoverable packet including at least a subset of data contained within each of the plurality of original packets; and

recreating each of the original packets based on the subset of the recoverable packets received, the subset of recoverable packets excluding recoverable packets lost during transmission to the network device.

19. The method of claim 18 , wherein recreating each of the original packets includes decoding each recoverable packet in the subset of recoverable packets based at least in part on a deconvolution process and error correction technique.

20. The method of claim 18 , further comprising:

outputting a signal indicating that the network device is configured to process the recoverable packets; and

determining whether the source device is configured to process the recoverable packets.

21. A system comprising:

a first network device configured to generate a plurality of original packets, wherein the first network device is configured to convert the plurality of original packets to recoverable packets by:

performing a convolution process on each of the plurality of original packets to generate intermediate packets; and

encoding the intermediate packets with error correction data according to at least one polynomial string; and

a second network device configured to receive at least a subset of the recoverable packets, wherein the subset of the recoverable packets excludes recoverable packets lost during transmission from the first network device to the second network device, and wherein the second network device includes a packet recovery module configured to recreate each of the original packets based on the subset of the recoverable packets received at the second network device;

wherein each recoverable packet includes at least a subset of data contained in at least one of the original packets and error correction data, and

wherein the first network device is configured to identify a network condition and adjust a length of the polynomial string based at least in part on the network condition.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2013
From: POLEHN, DONNA L.
To: CELLCO PARTNERSHIP D/B/A VERIZON WIRELESS
Reel/Frame 030839/0162 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2013
From: KAKADIA, DEEPAK; KOTECHA, LALIT
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 030839/0261 →
Continuity (1)
Related Publication 20140281831A1 · Sep 18, 2014