Analogue network coding-aided game theoretic medium access control protocol for energy-efficient data dissemination

: In this study, a novel medium access scheme based on analogue network coding for data dissemination in wireless networks is presented. Following our previous work, where energy-ef ﬁ cient medium access strategies based on game theory have been introduced, we propose a medium access control protocol that exploits to the maximum the recent advances in network coding (NC) domain to enhance the system performance. In particular, ZigZag decoding techniques are applied to resolve the data packet collisions, whereas random linear NC is employed to eliminate the need for exchanging control packets. The proposed protocol, evaluated by both analytical and simulation results, is proven to improve the energy ef ﬁ ciency in the network without compromising the provided quality of service.

data dissemination scenarios, where the nodes share the same goal of completing the dissemination while at the same time they want to maximise their lifetime. In particular, we introduced an RLNC-based game theoretic (GT) MAC protocol for data dissemination by adopting energy-based utility functions that intrinsically imply power awareness. We proposed a dissemination access game (DAG) to identify a state of balance ('Nash Equilibrium') between saving energy and proceeding the dissemination in topologies where two source nodes are responsible for data transmission. However, the recent advances in NC domain have motivated us to employ ANC techniques to exploit the potential benefits of the packet collisions in data dissemination scenarios.
In this paper, we propose an ANC-aided game theoretic energy-efficient layout (ANGEL) for data dissemination in wireless networks [Preliminary results of this paper have been published in [8].]. On the top of our former GT derivations, we apply ZigZag decoding techniques to turn the collisions of data packets into a benefit for the network performance. The contribution of our paper can be summarised as follows: (1) We propose a novel MAC protocol that exploits to the maximum the collisions in a wireless network where the main goal is the data dissemination. (2) We exploit the benefits of both digital and ANC in order to enhance the network performance. (3) We study the GT aspects of the proposed protocol. (4) We analytically evaluate the performance of our scheme.
The rest of this paper is organised as follows. Section 2 reviews the state of the art related to our work topic. Section 3 presents the considered system model along with an overview of the GT MAC strategies. In Section 4, we introduce ANGEL and study the GT aspects of the protocol, whereas Section 5 includes the probabilistic analysis for the performance of the proposed scheme. The simulation scenario along with the performance assessment of ANGEL is provided in Section 6. Finally, Section 7 concludes this paper.

Related work
Recent developments in NC field focus on the physical part of the communication. In particular, ANC techniques [6] have been introduced to exploit the packet collisions and achieve interference cancellation in wireless networks. Although these new techniques increase the system complexity and require advanced receiver design [9], they promise significant benefits in the performance of wireless networks. In this context, ZigZag [5] was one of the fundamental works that caused significant impact in the research community. In particular, ZigZag was mainly introduced as a countermeasure to the hidden terminal problem in wireless networks. Applying ZigZag, the decoding of the packets of two successive collisions becomes feasible, provided that the collisions' offsets (Δ 1 and Δ 2 as defined in [5]) are different. Therefore, the receiver can use the correctly received part of the data to decode the interfered bits of the collided packets.
ParendehGheibi et al. [10] studied the delay and throughput performance of ZigZag decoding for a single-hop wireless erasure network by representing the collisions algebraically. Using this algebraic framework, the authors were able to provide alternative collision recovery methods and generalisations for the case that the transmitted packets are coded versions of the original packets. Rahman et al. [11] proposed an iterative ZigZag decoding algorithm to mitigate the error propagation and further improve the system performance in the presence of collisions. In their work, the authors apply channel coding techniques, which result in an iterative decoding process between the ZigZag decoder and the channel decoder.
Regarding the MAC layer, Khabbazian et al. [12] developed an ANC-based algorithm that implements an abstract MAC layer service, proving that ANC can significantly improve the performance of MAC layer services in terms of probabilistic time guarantees for packet delivery. Paek and Neely [13] applied ZigZag techniques to four different idealised multi-access system models in order to study the performance benefits of ANC in the existing MAC protocols. Using analytical and simulation results, the authors demonstrated that ZigZag decoding can considerably improve the maximum throughput of random access systems.
Chorus [14] and known interference cancellation (KIC) [15] are two protocols partly inspired by ZigZag. Chorus [14] uses a similar collision resolution mechanism as ZigZag, but it is able to resolve multiple packets from a single collision, given that the packets are identical. Moreover, Chorus exploits transmit diversity and spatial reuse, using cognitive sensing and broadcast transmissions. On the other hand, the key idea behind KIC [15] is that the interference caused by previously received packets can be cancelled to decode the new packet involved in a collision.
Recently, a multicast protocol for short-range networks that exploits the characteristics of PLNC has been presented in [16]. In particular, the proposed protocol (CooPNC) provides a cooperative approach that allows collision resolutions with the employment of an indirect inter-network cooperation scheme, improving the throughput and the energy efficiency in short-range wireless networks.
Hence, inspired by the significant enhancements that ZigZag can bring to the network performance and motivated by the lack of practical MAC designs that employ ANC, we present a new protocol (ANGEL) that exploits the potential benefits of the collisions in the network. ANGEL has been designed to coordinate the transmissions in a wireless network where two source nodes hold the data to be disseminated among a set of sink nodes. The main goal of ANGEL is 3-fold: (i) to enable the source nodes to estimate their transmission probabilities according to the 'Nash Equilibrium' state of a non-cooperative game with complete (but not perfect) information; (ii) to allow the nodes to perform digital NC techniques to the packets to be transmitted; and (iii) to exploit ZigZag decoding in order to resolve the packet collisions in the destination nodes. In the following sections, we present the system model and the detailed description of our proposed protocol.

System model
The system model is depicted in Fig. 1, where we consider a wireless network topology with a base station (BS) that initially transmits the total amount of information and a set of nodes that are interested in the available data set. Since not all the stations are inside the coverage area of the BS, the dissemination takes place in two phases: (i) the BS broadcasts the data packets to the nodes inside its transmission range (so-called 'source' nodes) and (ii) the 'source' nodes that have already obtained the data forward the information to the nodes outside the range of the BS (so-called 'sink' or 'destination' nodes). Our paper is focused on the second phase of the dissemination, where we assume that there are two nodes that have received the whole information during the first phase and a set of L 'sink' nodes that desire the disseminated data. The transmission ranges of the two sources are partially overlapped with a subset of nodes located at the intersection of the coverage areas, while both 'source' nodes affect the same number of 'sink' nodes, thus having the maximum impact (J ) in the network, where impact is defined as the number of innovative packets delivered in each transmission.
We further assume a slotted system where the node with the maximum impact in the network transmits in every slot, since this technique has been proven to accelerate the dissemination process [17]. Apparently, the existence of two source nodes with the maximum impact generates conflicting situations that are resolved using GT techniques, which enhance the system performance, as we have demonstrated in our previous work [7].
Regarding the data transmissions, RLNC [2] techniques are used to facilitate the dissemination and eliminate the need of exchanging acknowledgment control packets. Consequently, each transmitted packet is a different random linear combination of the original packets and a sink node can retrieve the original information once it receives an adequate number of linearly independent packet www.ietdl.org combinations. In addition, the nodes are able to perform ZigZag decoding techniques on the received packets, thus having benefit from the collisions that take place in the network. However, it is worth noting that the digital NC techniques charge the communication with an extra overhead to the packets because of the NC header which is necessary for the packet decoding, while the adoption of ANC techniques raises some practical issues that complicate the process of estimating the transmitted symbols from the received symbols, such as frequency offset, sampling offset and inter-symbol interference [5].

Dissemination access game
In this section, we provide a brief overview of the GT MAC policy presented in [7], where no ANC is considered. Taking into account the considered system model, a fair MAC solution would be a round robin scheduling of the two source nodes. However, this would require central coordination or exchange of information between the nodes, which implies higher interference and extra energy consumption. In our scenario, where the global goal is the completion of the dissemination, both source nodes have profit of transmitting data. On the other hand, the sender's role implies higher energy consumption and it would be unfair for a particular node to transmit the total amount of information. To analyse this conflicting situation, we have modelled the access scenario as a 'static non-cooperative game with complete information', where each node wants to maximise its own utility.
Focusing on the energy aspect of the problem, we have chosen the utility function so as to quantify the lifetime of the nodes. Defining E TOTAL as the total energy amount available to each node and E[E] as the average amount of energy that is consumed by the wireless interface in each slot, the utility function of client i is given by In our game formulation, the set of players is denoted as N = {1, 2}, while the action set includes two feasible actions, that is, A = {Transmit (T ), Wait (W )}. The strategic form representation of the game is presented in Table 1, where the contents of the table are energy costs that each node wishes to minimise. In particular, E T represents the energy consumption for one transmission, whereas the terms E COST and E W correspond to the penalty costs when the dissemination does not proceed because of collisions or idle slots, respectively.
Three different cases derive from Table 1 as follows: (1) Both nodes transmit: The nodes waste energy for the transmissions (E T ), whereas the collision of the packets adds an extra penalty cost, E COST , since the dissemination does not proceed.
(2) One node transmitsone node waits: The transmitting node wastes energy for the transmission (E T ), whereas the backoff node has a zero consumption since the data   dissemination proceeds normally and any possible penalty cost is compensated by the correct packet transmission.
(3) Both nodes wait: The nodes do not spend energy on transmissions, but they do have an extra penalty cost, E W , since they waste energy while the dissemination does not proceed.
As we have already mentioned, the achievement of pure 'Nash Equilibria' (i.e. the case when only one node transmits) would require centralised coordination. Hence, we study the problem in the mixed strategies domain, where node i selects a transmission probability, s i , independently of the other. Therefore, by denoting as s i the complementary probability of s i (i.e. s i = 1 − s i ), the expected energy consumption for the two nodes is given by where the symmetry of the equations motivates us to search for symmetric 'Nash Equilibrium' strategies.
According to the indifference principle, the mixed strategy 'Nash Equilibrium' of a game can be simply computed by making each player indifferent among their strategy choices and, hence, we have to estimate the roots of the partial derivative of the expected cost of player 1 with respect to Without loss of generality, let us assume that E W = a · E T and E COST = b · E T . More specifically, a and b define the impact of idle slots and collisions, respectively, in the network. Consequently Therefore, exploiting the symmetry of the game, we can characterise the mixed strategies 'Nash Equilibrium' as s* = s 1 = s 2 = (a/(a + b)).

Proposed ANGEL for data dissemination
ANGEL exploits the ANC capabilities of the nodes in order to reduce the dissemination completion time and increase the energy efficiency in the network. In this section, we provide a detailed description of the protocol and we explicitly examine its GT aspects.

Protocol description
As we have already explained, in the beginning of each slot, the two 'source' nodes select their transmission probabilities (s i ) by estimating the 'Nash Equilibrium' of a non-cooperative game with complete information. There are three possible contingencies according to the probabilities that the nodes choose: (1) Idle slot: If both nodes remain idle.
(2) Successful transmission: If exactly one of the nodes transmits.
In case of a collision, the destination nodes initiate the ZigZag decoding procedure by transmitting a negative acknowledgment (NACK) message to the source nodes, after sensing the channel idle for short inter frame space (SIFS) period of time. The simultaneous transmission of NACK packets can be effectively handled by ANGEL, since it has been recently proven that overlapping NACKs can be correctly recognised at the receiver side, provided that the packets are identical [18]. Hence, the source nodes are informed that the packets have collided and retransmit the same coded packets in the next slot with transmission probability equal to one (s i = 1), thus resulting in a second, useful collision. Therefore, the sink nodes are able to extract both packets by applying ZigZag techniques to the two collision sets.
At this point, it has to be clarified that data transmissions in ANGEL take place after a random distributed inter frame space (rDIFS) time, uniformly distributed between SIFS and DIFS. In this way, it is ensured that the Δ offset of the collisions will be sufficient for the decoding of the packets, without trespassing the rule that control packets have higher priority compared with data packets. Moreover, ANGEL can be backwards compatible with several carrier sense multiple access (CSMA) standard protocols (e.g. IEEE 802.11, IEEE 802.15.4 etc.) with the modification that the rDIFS period in ANGEL is not used for actual sensing of the channel, since collisions are beneficial for the network.
For the sake of clarity, an example of frame sequence in ANGEL is depicted in Fig. 2. In particular, the protocol operates as follows: (1) At instant t 1 , source 1 decides to transmit the network-coded packet A after an rDIFS 1 time. At the same time, Source 2 decides to remain idle and, therefore, the destination nodes are able to extract packet A.
(2) At instant t 2 source 1 remains idle, whereas source 2 transmits the network-coded packet B after an rDIFS 2 time.
Since there is only one transmission, the destination nodes are able to extract packet B.
(3) At instant t 3 , both sources 1 and 2 decide to remain silent, thus resulting in an idle slot in the system. (4) At instant t 4 , both sources 1 and 2 decide to transmit the coded packets C and D after different random DIFS times, rDIFS 1 and rDIFS 2 , respectively. (5) At instant t 5 , the destination nodes are not able to extract the received packets which have collided and, hence, they transmit a NACK packet after sensing the channel idle for SIFS period of time. (6) At instant t 6 , the source nodes extract the received overlapped NACKs [18] and retransmit the same packets C and D after different rDIFS 1 and rDIFS 2 , respectively. (7) At instant t 7 , the destination nodes are able to extract both packets C and D, applying ZigZag decoding techniques to resolve the two consecutive collisions with different Δ intervals.

Game theoretic aspects in ANGEL
In Section 3.2, we briefly reviewed how the 'Nash Equilibrium' of the game is calculated, according to the indifference principle. Let us recall that the symmetric transmission probabilities are given by www.ietdl.org where a corresponds to the ratio between the energy consumption during the idle and the transmission states, whereas b is a factor that defines the impact of collisions in the network. Therefore the study of b is particularly important in our scenario, where the collisions in the network can be resolved using ZigZag techniques, unlike conventional networks, where collisions imply lost packets and erroneous transmissions. Equation (4) suggests that as b decreases, the symmetric 'Nash Equilibrium' transmission probability increases. More specifically, in the extreme case where all collisions in the network can be resolved (depending on the physical layer conditions and the ZigZag efficiency), it can be considered that b = 0 (i.e. no negative collision impact) and, consequently, s* = 1. This corresponds to a situation where both nodes transmit in every slot and two packets can be decoded after two consecutive collided transmissions. This practically maximises the network throughput, the energy efficiency and the utility of the source nodes.
The aforementioned analysis highlights once more the importance of the proper selection of the b value during the protocol design. Unlike a, which depends on the network interface and its value is determined by the employed technology, b is a variable factor that depends on the capabilities of the nodes and their resilience to collisions. Hence, schemes that adopt interference cancellation techniques and ANC may consider lower values for b, compared with traditional networks, where collisions should be avoided by default.

Protocol analysis
In this section, having described the protocol operation, we design a probabilistic analytical model to evaluate the ANGEL performance in terms of delay [Please note that the delay overhead because of the keying process is not considered in our analysis.] and energy efficiency.

Completion time
The minimum number of slots (R ideal ) in collision-free schemes, that is, ideal scheduling among contenting nodes, is easy to be calculated, since it depends on a set of known parameters, such as (i) the total number of data packets (M ); (ii) the number of 'sink' nodes (L); and (iii) the impact of the 'source' nodes in the network (J ). As it has been already proven in [17], the minimum number of slots for the data dissemination can be expressed as On the other hand, in realistic MAC schemes, this ideal number is affected by the actual contention between the nodes, which results in collided and idle slots. However, in ANGEL, the collisions do not have a significant impact on the system performance and they can be exploited as a benefit for the network. Hence, the average number of slots that are needed to complete the data dissemination is given by whereas the average total completion time can be represented as In the above expressions, the terms p pos and p neg represent the probability of having a collision that can be resolved using ZigZag decoding and the probability of having an initial collision that cannot be resolved, respectively. Moreover, p s , p c and p i correspond to the probabilities of having a successful transmission, a collision and an idle slot, respectively. The terms T tr , T NACK , σ, T c and SIFS represent the duration of a network-coded data packet transmission, a NACK packet transmission, an empty slot, a collision and an SIFS period of time, whereas rDIFS is used to denote the average random time, uniformly distributed between SIFS and DIFS, that the sources wait before starting the transmission.
Since the success of the transmission in one random slot depends on the status of the preceding slot, we model the protocol operation using conditional probabilities. In particular, the overall probabilities p s , p c and p i can be where i and j are two consecutive slots, while succ i , col i and idle i represent the fact that the random slot i is successful, collided or idle, respectively. In ANGEL, one slot is considered successful if exactly one node gets the access to the channel to transmit, collided if both nodes transmit simultaneously and idle if both nodes remain idle. Therefore we can write where s i ∈ (0, 1) is the probability of a node i to transmit as it has been estimated using GT techniques. The statistical independency of the events along with the joint probabilities enables us to use the definition of conditional probabilities in order to simplify (8)- (10). Hence, we have where the conditional probabilities are found in Table 2.
In addition, in order to probabilistically estimate the average number of collisions that can be resolved in our protocol, we need to expand (15) as follows p c = p(col j ) · p(succ i ) + p(col j ) · p(idle i ) (17) where the first two terms represent the portion of the collisions that cannot be resolved (i.e. p neg in (7)) and the third term corresponds to the percentage of collisions that can be resolved using ZigZag techniques (i.e. p pos in (7)).

Energy efficiency
The energy efficiency (η) of the system is a useful indicator that provides information about the useful data that are delivered in the network as a function of the total energy consumption. Specifically, it can be represented as [19] where D useful is the total amount of useful data delivered and E cons denotes the total energy consumed.
In the context of ANGEL, the numerator has a determinist value which can be calculated as where M is the number of packets, payload is the useful packet payload without taking into account the overhead because of the headers and L is the number of destination nodes. For our analysis, we consider three different modes for the radio interface: (1) Transmission mode: When a node is transmitting data/ control packets.
(2) Reception mode: When a node is receiving data/control packets.
(3) Idle mode: When a node is sensing the medium without performing any action.
The power levels associated with each mode are P T , P R and P I , respectively. Furthermore, the relationship between energy and power is given by E = P · t, where the terms E, P and t represent the energy, the power and the time, respectively. Having analysed the ANGEL's performance, we are able to derive a closed-form formula that describes the average energy consumption in the network where E succ , E idle and E zigzag correspond to the energy consumption during the successful transmissions, the idle periods and the ZigZag procedure, respectively. Let us recall that the network consists of two 'source' nodes, a set of L 'sink' nodes and a subset of W ⊆ L nodes that experience the collisions, since they are placed in the coverage areas intersection of the two 'sources'. Therefore, E[E zigzag ] = p neg · ((L + 2) · P I · (rDIFS + SIFS) where all the parameters have been already defined. The above equations (21)-(23) are based on the following principles: † All stations remain idle during the SIFS, rDIFS and σ times. † All stations 'inside' the coverage area of a transmitting node are in 'reception' mode. † All stations 'outside' the coverage area of a transmitting node are in 'idle' mode.
Therefore we are able to estimate the average energy consumption, since all the variables are known and the respective probabilities have already been calculated in Section 5.1.

Performance evaluation
We have implemented a time-driven C++ code that simulates the operation of ANGEL. Monte Carlo simulations have been carried out to validate our analysis and further evaluate the protocol performance. In this section, we present the simulation setup along with the experimental results.

Simulation scenario
The network under simulation, presented in Fig. 3, consists of five nodes in total, where two of them have already received the total amount of information broadcasted by the BS, whereas the other three are sink nodes affected by both sources (i.e. placed inside the intersection of both ranges). Therefore, during the dissemination, the two sources have the same impact (J = 3) in the network.
In addition, as we have already mentioned, the nodes are capable of performing RLNC techniques to their buffered packets before forwarding them. In our experiments, the item to be disseminated is a Red Green Blue (RGB) image file of dimensions 256 × 256, which can be translated into 256 packets of 256 pixels. The length of each packet depends on the resolution of the image and consequently on the colour 'depth' of the pixels. In particular, a 2 bit 'depth' (grey-scale) results in 64 bytes, whereas Red Green Blue Alpha (RGBA) image (32 bit 'depth') results in 1024 bytes packet payload. In our simulations, we consider packet length of PHY H + MAC H + NC H + payload bytes, where PHY H and MAC H are the physical and the MAC headers, respectively, with PHY = 192 bits and MAC = 224 bits. NC H is the NC header, while payload is the packet payload which varies between 64 and 1024 bytes with regard to the image resolution. The coding of the packets is performed over a finite Galois Field -GF(2 8 ), which has been proven to be sufficient for linear independence among the coded packets [20]. The specific field implies that the number of the encoding packets corresponds to the number of the bytes in the encoding vector. If we used one generation of 256 packets, the extra overhead in each packet would be 256 bytes, which is huge, especially for small size payloads. Therefore we have chosen to create 16 generations of 16 packets each, which results in NC H of 17 bytes in total (16 bytes for the encoding vector, 4 bits for the generation size and 4 bits for the generation identifier).
Furthermore, in our attempt to focus our study on the access part of the proposed technique, we assume error-free wireless channels and the only failed transmissions are because of packet collisions. The time slot has been selected equal to 20 μs according to the IEEE 802.11 g physical layer [21], while we consider two different data transmission rates with regard to the signal-to-interference-plus-noise ratio (SINR) values: (i) 54 Mb/s for 'high' SINR conditions and (ii) 24 Mb/s for 'low' SINR conditions. The power values (which have been  chosen according to [22]) for our scenarios are P T = 1900 mW and P R = P I = 1340 mW. It is worth noting that the value of P T has been selected as an average value of transmission consumed power, since it varies according to the radio frequency power level. Based on these values we have set a = 0.7 and b = 1.0, which result in s* = 0.412. To evaluate the proposed solution and highlight the promising benefits of ANC in wireless communication, we compare ANGEL with two alternative RLNC-aided protocols for data dissemination: (i) our previous GT approach [7], where game theory is used to resolve the potential conflicting interests between the nodes and (ii) an IEEE 802.11-based protocol (BO-MAC), where the conflicts are resolved using contention windows (CW) and backoff mechanisms (BO). The simulation parameters are summarised in Table 3.  First, it is clearly observed that the application of ANC has a positive effect in the completion time under the same channel conditions (either 'high' or 'low' SINR). In particular, in high data rates of 54 Mb/s, we are able to reduce the total completion time of the dissemination up to 50 and 70% over the GT and the IEEE 802.11-based approach, respectively. On the other hand, in the 'low' SINR region, the gain that ANGEL achieves over GT and BO-MAC strategies is lower, but still considerable. It is worth noting that the performance of the simple RLNC-based protocol converges for large packet payloads. Nevertheless, even in this case, the ZigZag decoding applied in ANGEL contributes significantly to the reduction of the dissemination completion time. Fig. 5 presents the achieved energy efficiency of the three schemes discussed in this paper. The simulation results for ANGEL are almost perfectly matched to the theoretical ones, thus verifying and validating our analysis. Similar to the delay performance, the application of ANC techniques provides the network with higher energy efficiency. In Fig. 5, it is observed that ANGEL is more energy efficient than both simple RLNC-based schemes under the same SINR conditions. Furthermore, it should be noted that, in the case of small packet payload (i.e. payload < 512 bytes), ANC capabilities lead to higher energy efficiency even under the worst channel conditions and lower transmission rates.

Concluding remarks
In this paper, an ANGEL for data dissemination in wireless networks was presented. Both analytical and experimental results have been provided to demonstrate that ANGEL significantly enhances the energy efficiency of the system without compromising the completion time for the data dissemination. Compared with other RLNC-aided schemes without ANC capabilities, ANGEL provides a reduction of up to 50% with regard to the dissemination completion time, whereas the enhancement regarding the energy efficiency of the network reaches 100% under certain circumstances. In our future work, we are planning to elaborate on conflicts between more than two source nodes in the network and study misbehaviour issues in data dissemination schemes.