Opportunistic Network Coding for Real-Time Transmission over Wireless Networks

With the growing popularity of wireless personal devices and services and the increasing demand for real-time multimedia applications, such as video streaming and videoconferencing, there is a pressing need to support various multimedia services over the wireless medium, simultaneously. However, multimedia transfer has stringent quality-of-service constraints on packet delivery time, throughput, packet order, and inter-packet delay. For example, if a packet is not received within an acceptable delay (usually milliseconds), the packet is dropped rather than being retransmitted. Furthermore, in wireless networks, such traffic-intense applications would overwhelm the limited resources of the wireless nodes and degrade the quality of the received media due to the increasing demand for bandwidth and the large number of the packet collisions.

Many techniques, in different layers of the network stack, were developed for the purpose of improving the performance of multimedia transfer. For example, in some application layer protocols, multimedia traffic is compressed before transmission in order to save both storage and bandwidth. In addition, some transport layer protocols support multimedia transfer, but with limitations. For instance, the User Datagram Protocol (UDP), which is an Internet standard protocol, is simple and efficient, but it does not guarantee the delivery of the packets; causing reliability problems. Other protocols, such as the Real-time Transport Protocol (RTP), and Real-time Transport Control Protocol (RTCP), were built on top of UDP in order to make it more reliable.

One of the recent techniques that has been used to improve the network performance is network coding. The advent of network coding has reformed the way traffic is routed in wired and wireless networks. By allowing relay nodes to combine incoming independent information flows, network coding can improve the overall network capacity and allow more traffic flows to be delivered without severely impacting the overall performance of the network. With network coding, instead of treating each packet independently, a number of packets are encoded and sent as one packet. Thus, the node’s resources are efficiently utilized, more packets are delivered, and, as a result, the overall network capacity and throughput are improved.

For full text: click here

(Author: Moad Yassin Mowafi, Fahed Hasan Awad, Mohammed A Al-Batati

Published by Macrothink Institute)