IP Library Granted Patent US 8,582,502
Granted Patent B2
US 8,582,502 · App. 12/478,614 · Granted Nov 12, 2013

Robust multipath routing

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,582,502
App. No.
12/478,614
Granted
Nov 12, 2013
Kind
B2
Abstract

Implementations related to robust multipath routing are disclosed.

Claims (92)

1. A method for communicating over a wireless network, comprising:

receiving a packet stream at a first node, the packet stream comprising Transmission Control Protocol (TCP) packets;

identifying a subset of packets of the packet stream, the identifying comprising identifying at least one of a TCP acknowledgement (ACK) packet, a Request to Send (RTS) packet, a Clear to Send (CTS) packet, or a packet bearing an urgent pointer;

generating at least one copy of a packet of the subset of packets;

determining a first route for transmitting packets of the packet stream other than the subset of packets from the first node to a second node;

determining a second route for transmitting the subset of packets from the first node to the second node; and

determining a third route for transmitting the at least one copy of a packet from the first node to the second node;

wherein the first route is different than the second route and the third route is different than both the first route and the second route.

2. The method of claim 1 , wherein the first node and the second node comprise the wireless network, the wireless network comprises a wireless ad hoc network including the first node and the second node.

3. The method of claim 1 , wherein the first node and the second node comprise the wireless network, the wireless network comprises a wireless mesh network including the first node and the second node.

4. The method of claim 1 , wherein the determining the first route comprises performing a multipath routing algorithm using a first value for a weighting variable.

5. The method of claim 1 , wherein the determining the second route comprises performing the multipath routing algorithm using a second value for the weighting variable.

6. The method of claim 1 , wherein the identifying the subset of packets comprises identifying one or more important packets of the stream of packets.

7. An article comprising a computer program product having stored therein instructions that, if executed, result in:

receiving a packet stream at a first node, the packet stream comprising Transmission Control Protocol (TCP) packets;

identifying a subset of packets of the packet stream, the identifying comprising identifying at least one of a TCP acknowledgement (ACK) packet, a Request to Send (RTS) packet, a Clear to Send (CTS) packet, or a packet bearing an urgent pointer;

generating at least one copy of a packet of the subset of packets; and

determining a first route for transmitting packets of the packet stream other than the subset of packets from the first node to a second node;

determining a second route for transmitting the subset of packets from the first node to the second node; and

determining a third route for transmitting the at least one copy of a packet from the first node to the second node;

wherein the first route is different than the second route and the third route is different than both the first route and the second route.

8. The article of claim 7 , wherein the determining the first route comprises performing a multipath routing algorithm using a first value for a weighting variable.

9. The article of claim 7 , wherein the determining the second route comprises performing the multipath routing algorithm using a second value for the weighting variable.

10. The article of claim 7 , wherein the identifying the subset of packets comprises identifying one or more important packets of the packet stream.

11. A wireless communication system comprising:

a wireless node including a processor and a wireless transceiver coupled to the processor;

wherein the processor is capable of:

receiving a stream of packets, the stream of packets comprising Transmission Control Protocol (TCP) packets;

identifying a subset of packets of the stream of packets, the identifying comprising identifying at least one of a TCP acknowledgement (ACK) packet, a Request to Send (RTS) packet, a Clear to Send (CTS) packet, or a packet bearing an urgent pointer;

generating a copy of a packet of the subset of packets; and

determining a first route for transmitting packets of the stream of packets other than the subset of packets to another wireless node;

determining a second route for transmitting the subset of packets to the other wireless node; and

determining a third route for transmitting the copy of a packet to the other wireless node;

wherein the first route is different than the second route and the third route is different than both the first route and the second route.

12. The system of claim 11 , wherein the processor is further capable of determining the first route by executing a multipath routing algorithm with a first value for a weighting variable.

13. The system of claim 11 , wherein the processor is further capable of determining the second route by executing the multipath routing algorithm with a second value for the weighting variable.

14. The system of claim 11 , wherein the processor is further capable of identifying the subset of packets by identifying one or more important packets of the stream of packets.

15. A wireless network node comprising:

a wireless transceiver; and

a processor coupled to the wireless transceiver and configured to use the wireless transceiver to transmit packets to another wireless network node;

wherein the processor is further configured to:

identify at least one packet of a packet stream, the packet stream comprising Transmission Control Protocol (TCP) packets, wherein the identifying the at least one packet of the packet stream comprises identifying at least one of a TCP acknowledgement (ACK) packet, a Request to Send (RTS) packet, a Clear to Send (CTS) packet, or a packet bearing an urgent pointer;

generate a copy of the identified at least one packet; and

determine a first path for transmitting the packet stream to the other wireless node;

determine a second path, different from the first path, for transmitting the identified packet to the other wireless node; and

determine a third path, different than both the first path and the second path, for transmitting the copy of the identified packet to the other wireless node.

16. The node of claim 15 , wherein the processor is further configured to determine the first path by executing a multipath routing algorithm with a first value for a weighting variable.

17. The node of claim 15 , wherein the processor is further configured to determine the second path by executing the multipath routing algorithm with a second value for the weighting variable.

18. A method for communicating over a wireless network, comprising:

receiving a packet stream at a first node;

identifying a subset of packets of the packet stream;

generating at least one copy of a packet of the subset of packets;

determining a first route for transmitting packets of the packet stream other than the subset of packets from the first node to a second node, wherein the determining the first route comprises performing a multipath routing algorithm using a first value for a weighting variable;

determining a second route for transmitting the subset of packets from the first node to the second node; and

determining a third route for transmitting the at least one copy of a packet from the first node to the second node;

wherein the second route is different than the first route and the third route is different than both the first route and the second route.

19. The method of claim 18 , wherein the wireless network comprises a wireless ad hoc network including the first node and the second node.

20. The method of claim 18 , wherein the wireless network comprises a wireless mesh network including the first node and the second node.

21. The method of claim 18 , wherein the determining the second route comprises performing the multipath routing algorithm using a second value for the weighting variable.

22. The method of claim 18 , wherein the identifying the subset of packets comprises identifying one or more important packets of the stream of packets.

23. An article of manufacture comprising a computer program product having stored therein instructions that, if executed, result in:

receiving a packet stream at a first node;

identifying a subset of packets of the packet stream;

generating at least one copy of the subset of packets;

determining a first route for transmitting packets of the packet stream other than the subset of packets from the first node to a second node, wherein the determining the first route comprises performing a multipath routing algorithm using a first value for a weighting variable;

determining a second route for transmitting the subset of packets from the first node to the second node; and

determining a third route for transmitting the copy of the subset of packets from the first node to the second node;

wherein the first route is different than the second route and the third route is different than both the first route and the second route.

24. The article of claim 23 , wherein the determining the second route comprises performing the multipath routing algorithm using a second value for the weighting variable.

25. The article of claim 23 , wherein the identifying the subset of packets comprises identifying one or more important packets of the packet stream.

26. A wireless communication system, comprising:

a wireless node including a processor and a wireless transceiver coupled to the processor;

wherein the processor is capable of:

receiving a stream of packets;

identifying a subset of packets of the stream of packets;

generating a copy of the subset of packets;

determining a first route for transmitting packets of the stream of packets other than the subset of packets to another wireless node by executing a multipath routing algorithm with a first value for a weighting variable;

determining a second route for transmitting the subset of packets to the other wireless node; and

determining a third route for transmitting the copy of the subset of packets the other wireless node;

wherein the first route is different than the second route and the third route is different than both the first route and the second route.

27. The wireless communication system of claim 26 , wherein the processor is further capable of determining the second route by executing the multipath routing algorithm with a second value for the weighting variable.

28. The system of claim 26 , wherein the processor is further capable of identifying the subset of packets by identifying one or more important packets of the stream of packets.

29. A wireless network node comprising:

a wireless transceiver; and

a processor coupled to the wireless transceiver and configured to use the wireless transceiver to transmit packets to another wireless network node;

wherein the processor is further configured to:

identify at least one packet of a packet stream;

generate a copy of the identified packet;

determine a first path for transmitting the packet stream to the other wireless node by executing a multipath routing algorithm with a first value for a weighting variable;

determine a second path, different from the first path, for transmitting the identified packet to the other wireless node; and

determine a third path, different than both the first path and the second path, for transmitting the copy of the identified packet to the other wireless node.

30. The node of claim 29 , wherein the processor is further configured to determine the second path by executing the multipath routing algorithm with a second value for the weighting variable.

Assignments (3)
SECURITY INTEREST Recorded Jan 29, 2019
From: EMPIRE TECHNOLOGY DEVELOPMENT LLC
To: CRESTLINE DIRECT FINANCE, L.P.
Reel/Frame 048373/0217 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2011
From: LSTAR TECHNOLOGIES LLC
To: EMPIRE TECHNOLOGY DEVELOPMENT LLC
Reel/Frame 027231/0220 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 2, 2009
From: CONTE, THOMAS M.
To: LSTAR TECHNOLOGIES LLC
Reel/Frame 023185/0169 →