Coded unicast downstream traffic in a wireless network: analysis and WiFi implementation
Asaf Cohen
0
Erez Biton
0
Joseph Kampeas
0
Omer Gurewitz
0
0
Department of Communication Systems Engineering, Ben-Gurion University of the Negev
, Beer-Sheva, 84105,
Israel
In this article, we design, analyze and implement a network coding based scheme for the problem of transmitting multiple unicast streams from a single access point to multiple receivers. In particular, we consider the scenario in which an access point has access to infinite streams of data to be distributed to their intended receivers. After each time slot, the access point receives acknowledgments on previous transmissions. Based on the acknowledgements, it decides on the structure of a coded or uncoded packet to be broadcast to all receivers in the next slot. The goal of the access point is to maximize the cumulative throughput or discounted cumulative throughput in the system. We first rigorously model the relevant coding problem and the information available to the access point and the receivers. We then formulate the problem using a Markov decision process with an infinite horizon, analyze the value function under the uncoded and coded policies and, despite the exponential number of states, devise greedy and semi-greedy policies with a running time which is polynomial with high probability. We then analyze the two users case in more detail and show the optimality of the semi-greedy policy in that case. Finally, we describe a simple implementation of the suggested concepts within a WiFi open-source driver. The implementation performs the network coding such that the enhanced WiFi architecture is transparent above the MAC layer.
1 Introduction
The inherent broadcast nature of the wireless medium,
which allows each transmission to be heard by all users
simultaneously, makes network coding techniques
pertinent. In such techniques, nodes do not necessarily
forward incoming packets. Rather, they can transmit a
manipulation (usually a linear combination [1]) of their
incoming data. However, in order for such a
combination to be valuable to multiple users, each such user needs
to possess different piece of the information encoded
into the combined packet. Accordingly, one of the key
challenges in network coding techniques is to decide
which packets to manipulate in each transmission. While
efficient algorithms answer this challenge in the
multicast setting [2], the problem of multiple unicast remains
open [3].
On the down side, the wireless medium characteristics
make wireless transmissions susceptible to losses due to
noise and interference (i.e., low SNR and SINR). In order
to cope with packet loss in MAC layer, conventional
wireless protocols rely on retransmissions (e.g., WiFi, [4]). In
such protocols, each packet has to be acknowledged by
the intended receiver. Packets which are not
acknowledged are retransmitted over and over again until they are
received successfully by the receiver, or until dropped by
the sender.
Typical last mile wireless Internet access architecture
comprises a gateway, e.g., an access point (AP) or a Base
Station (BS), to which all clients are wirelessly connected
(e.g., WiFi, WiMAX, LTE). In such architecture, all
traffic to and from the wired Internet must pass through the
gateway via the wireless medium. Accordingly, all
transmissions by the gateway are potentially heard by all clients
associated with this gateway. In this article, we utilize
these aforementioned wireless properties of channel,
protocol and last mile architecture and suggest coded wireless
retransmissions for downstream traffic. In particular, we
suggest a novel scheme which is based on Markov decision
process (MDP [5-7]), that combines multiple MAC layer
retransmissions which are intended to different receivers,
into a single packet transmission.
1.1 Main contributions
Our contributions are thus as follows. First, we suggest
an ongoing process in which the AP (or gateway)
alternates between transmitting uncoded and coded packets.
Receivers acknowledge packets they have received
successfully and in addition provide feedbacks to the AP
regarding packets they overheard which were not meant
for them. Based on these feedbacks the AP chooses which
retransmitted packets (if any) should be coded in each
retransmission. Our model is inherently not multicast
each receiver has a different stream as its demand.
Moreover, we assume an infinite horizon model, where there is
no point in time in which all demands are met and the
system reaches a terminating step. Packets arrive at the AP
continuously, and only the current packets for each user
are available for coding. Based on this model, we are able
to analytically solve throughput problems. We believe that
these two aspects of our model are of key importance,
since this is the typical use of most wireless Internet access
networks.
Second, we show that the aforementioned continuous
transmission process can be modeled as a discrete time
stochastic process, in which at each state the next state is
determined solely based on the AP decision which packet
to transmit next (i.e., which coded or un-coded
packets should comprise the next transmission) and based on
the channel state of each and every receiver which
determines which nodes receive the next transmission. We
suggest an AP policy which is based on MDP theory, in
which the reward attained in each iteration corresponds
to the number of successful packets received in each
transmission.
Third, we leverage this continuous, infinite time
stochastic model, to compute stationary behavior, which
in turn allows us to define convergence, calculate the
resulting asymptotic performance efficiently (using only a
set of linear equations), and assess the benefit in coding
directly and analytically. Specifically, we give the matrix
equation that computes the cumulative expected reward
(equivalent to the system throughput when a unit reward
is given to decoding of one packet) for any state in the
system given the transition probabilities and the reward
vector. This enables us to directly compute the
performance of any coded or un-coded strategy. For the two user
case, we indeed give a few possible strategies and compute
the resulting performance.
Fourth, we show that in order to reach an optimal
decision, the AP needs to consider all possible future
states of the system, channel states of all users and all
possible actions and outcomes. This procedure certainly
cannot scale to large number of users. Accordingly, we
suggest a greedy approach in which at each
transmission the AP tries to maximize the instantaneous reward
received for each transmission (as opposed to maximizing
an expected or discounted reward, which takes into
account the expected rewards at future states). We
further suggest an enhancement to the greedy approach,
termed semi-greedy approach, which takes some
concern into the future, without adding significant complexity
to the greedy approach. In the semi-greedy approach,
we also suggest a direct analysi (...truncated)