Project offerings 2011

Project supervised by Lavy Libman and Thierry Rakotoarivelo (NICTA)

Wireless network coding extension for IEEE 802.11
"Network coding" refers to the idea of intermediate network nodes that do not simply forward copies of packets from one side to another, but are able to combine packets in an intelligent manner to achieve certain efficiency improvements. One of the simple applications of network coding in wireless communications is when two endpoints exchange packets via a common intermediate relay node; in that case, the relay can simply broadcast a XOR combination of the packet contents from both sides, allowing both endpoints to receive their data while reducing the total number of transmissions from 4 to 3 per
transaction.

This project will explore the use of network coding in the context of the IEEE 802.11 MAC protocol standard. The student undertaking the project will initially extend the functionality of the Linux mac80211 device driver to enable network coding. This extension will subsequently be used in an experimental testbed platform to investigate its performance in various scenarios and propose efficient control algorithms (such as relay selection and rate control) in the presence of network coding.

Requirements:
The student must be skilled in systems-level programming and at least be familiar with the overall architecture of the Linux kernel and device drivers (ideally, have some experience in programming at the Linux kernel and device driver level). In addition, the applicant must be familiar with the IEEE 802.11
(Wi-Fi) wireless LAN standard, at least from a user perspective; experience with configuration and troubleshooting of Linux wireless drivers is desirable.