Network Coding for Dynamic Wireless Mesh Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network coding techniques are limited in unicast applications, as they typically assume multicast scenarios, require destination nodes to decode packets, and are not adaptable to dynamic networks with unknown senders and receivers, and bursty traffic patterns.
Innovation Solution
The method involves broadcasting packets to allow neighbor nodes to temporarily store and decode them, enabling opportunistic encoding and decoding of packets based on knowledge of neighbor nodes' packet pools, and using a coding rule to ensure each next hop can decode the encoded packet, thereby reducing transmission time and increasing network throughput.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If network coding is used to increase throughput, then the network throughput is improved, but the complexity of packet encoding and decoding increases
Solution Approach 1:
The patent uses simple XOR operations for packet encoding and decoding, which are computationally inexpensive and can be performed quickly. The encoding process combines packets using basic bitwise operations, and decoding involves simple XOR operations with previously received packets, avoiding complex algorithms while maintaining high throughput benefits
Solution Approach 2:
The patent changes the encoding approach by using linear combinations of packets with random coefficients from a finite field, rather than traditional routing methods. This parameter change in the encoding strategy allows for flexible adaptation to different network conditions while keeping the actual computational operations relatively simple
2Loss of time
If packets are coded together and transmitted over broadcast medium, then the transmission time is reduced, but the reliability of packet delivery decreases due to potential losses
Solution Approach 1:
The patent implements preliminary actions by having receiving nodes store multiple coded packets and the original packets in their buffers before decoding is needed. This allows nodes to accumulate sufficient information in advance to handle potential packet losses and successfully decode the required data without requiring retransmissions
Solution Approach 2:
The patent uses feedback mechanisms where receiving nodes send acknowledgments to the transmitting node about which packets have been successfully received and decoded. This feedback allows the transmitting node to adapt its encoding strategy and retransmit only the necessary coded packets, improving both reliability and efficiency
3Adaptability or versatility
If nodes store packets from previous hops for opportunistic encoding, then the network flexibility and adaptability increase, but the memory requirements and node complexity increase
Solution Approach 1:
The patent makes network nodes universal by enabling them to perform multiple functions: acting as both transmitters and receivers, storing packets for their own use and for other nodes, and participating in encoding/decoding operations. This multi-functionality increases network flexibility without requiring specialized hardware at each node, as general-purpose buffers and processors are used
Solution Approach 2:
The patent implements self-service mechanisms where nodes autonomously manage their own packet buffers, determine when to store packets for opportunistic encoding, and independently perform encoding/decoding operations. This self-service approach allows nodes to adapt to network conditions without centralized control, increasing flexibility while keeping individual node complexity manageable
Data Source
AI summary
One embodiment is directed to transmitting encoded data over a broadcast medium to improve network throughput. A sending node may identify a first packet to be transmitted to a first network node and a second packet to be transmitted to a second network node. The sending node may determine whether the first network node stores the second packet and whether the second network node stores the first packet. If the sending node determines that the first network node stores the second packet and the second network node stores the first packet, it may code together the first and second packets to generate an encoded packet and may transmit the encoded packet over the broadcast medium. Thus, the first packet may be transmitted to the first network node and the second packet may be transmitted to the second node in a single transmission.


