Performance enhancements in WiFi using Network Coding
MetadataVis full innførsel
Packet loss is an inherent phenomenon in WiFi due to its underlying physical medium. At the time of writing, the newest WiFi standard, 802.11n, ensures reliable communication by retransmitting lost packets through a mechanism called ARQ, where each lost packet is retransmitted until it is received. If several clients are connected to the same AP, currently, the only way to achieve reliable communication for all clients is by applying this mechanism individually for each client using multiple unicast flows. By instead exploiting the nature of the physical channel, the present thesis proposes a more throughput efficient reliability mechanism using network coding.In the wireless physical medium, all data transmitted by the access point is in fact inherently broadcasted to all clients, even when it is not intended. For no extra cost, will other clients receive data packets not addressed to themselves. In case where a packet is lost at the receiving client, other clients may receive it successfully. By having these clients keep those packets for some time, enables network coding to reduce the number of packets to be transmitted at the access point in order to recover the lost packets. The present thesis investigates possibilities of improving the throughput in WiFi for single client and multiple clients using network coding. In both cases, reliability mechanisms are suggested, analyzed theoretically, as well as tested practically through experiments. In order to execute the experiments, modifications in the driver and operating system were necessary. The modification were realized using both open source operating system and open source network drivers. In this work, experiments were carried out in a closed office using up to 4 stationary computers with 802.11n compatible network cards.The results show that network coding does not achieve improvements in a single client scenario. However, with multiple clients, a proposed reliability mechanism using network coding allows for a 25% reduction of redundant packets transmitted. This gives significant improvement in the throughput as compared to ARQ. Since the results are based on both experiments and theory, the aspects of commercial use are discussed, and followed up by giving suggestions for future work.