Patent Document ID: 10028198
Application ID: 14775102
Patent Flag: 1

Claim One:
1. A machine implemented method for use in a wireless mesh network, the method comprising: acquiring data packets at a source node that need to be delivered to a remote destination node through the wireless mesh network; determining at least one route through the wireless mesh network from the source node to the destination node to support a data flow for the acquired data packets; for a link between the source node and a first relay node in a route, automatically activating, based on channel conditions within the network, a helper node to assist the link in transferring data from the source node to the first relay node; generating random linear network coded (RLNC) packets at the source node for a first group of original packets of the data flow; initiating transmission of RLNC packets from the source node to the first relay node for the first group of original packets; overhearing RLNC packets transmitted by the source node for the first group of original packets at the helper node; re-coding overheard RLNC packets at the helper node for the first group of original packets to create re-coded RLNC packets comprising linear combinations of the RLNC packets; determining a delay that corresponds to a determined amount of time, calculated via delay calculation circuitry, which the helper node will have to wait before transmitting re-coded versions of RLNC packets overheard from the source node and wherein calculating the delay is based, at least in part, on channel conditions in the wireless mesh network or other active users or nodes in the wireless mesh network; after the delay, initiating transmission of the re-coded RLNC packets from the helper node to the first relay node for the first group of original packets of the data flow; and continuing to transmit RLNC packets from at least one of the source node and the helper node until the first relay node has received a sufficient number of degrees-of-freedom (DOFs) to decode the first group of original packets.