Network coding based adaptive CSMA for network utility maximization

Network coding based adaptive CSMA for network utility maximization

Accepted Manuscript Network Coding based Adaptive CSMA for Network Utility Maximization Tao Wang , Baoxian Zhang , Zheng Yao , Hussein T. Mouftah PII...

2MB Sizes 2 Downloads 141 Views

Accepted Manuscript

Network Coding based Adaptive CSMA for Network Utility Maximization Tao Wang , Baoxian Zhang , Zheng Yao , Hussein T. Mouftah PII: DOI: Reference:

S1389-1286(17)30261-X 10.1016/j.comnet.2017.06.017 COMPNW 6244

To appear in:

Computer Networks

Received date: Revised date: Accepted date:

21 August 2016 31 May 2017 16 June 2017

Please cite this article as: Tao Wang , Baoxian Zhang , Zheng Yao , Hussein T. Mouftah , Network Coding based Adaptive CSMA for Network Utility Maximization, Computer Networks (2017), doi: 10.1016/j.comnet.2017.06.017

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

Network Coding based Adaptive CSMA for Network Utility Maximization Tao Wang, Baoxian Zhang, Zheng Yao

China Hussein T. Mouftah

CR IP T

Research Center of Ubiquitous Sensor Networks University of Chinese Academy of Sciences Beijing 100049

AN US

School of Electrical Engineering and Computer Science University of Ottawa Ottawa, ON K1N 6N5 Canada

Abstract

M

It is well known that network coding can improve the capacity of wireless networks efficiently while adaptive CSMA-based link scheduling can efficiently allocate channel resources in a fully distributed manner in such networks. By combining the

ED

advantages of these two mechanisms, in this paper, we are aimed at achieving network utility maximization in a fully distributed manner when network coding is applied. For this purpose, we first model the network under study by considering transmission conflict relationship in the network. Then, by treating coding combinations as scheduling units for

PT

transmissions at the MAC layer, we deduce the weighted network capacity based on the network-coding-based adaptive CSMA link scheduling and further analyze its features. This way of link scheduling also eases the queue load estimation

CE

when network coding opportunity is present, which is a prerequisite for CSMA based link scheduling. We accordingly propose a distributed network-coding-based adaptive CSMA algorithm, which assigns the mean backoff time of a coded

packet transmission for medium access based on its coding gain. We prove the convergence property of the proposed

AC

algorithm and its optimality in network utility maximization when coding combinations/patterns applicable at nodes in the network are known. Simulation results validate our analytical results.

Keywords—Network utility maximization; network coding; adaptive CSMA; distributed algorithm; wireless multihop networks.

1

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

Introduction Network Throughput Maximization (NTM) and Network Utility Maximization (NUM) are two major objectives in the study of network optimization. NTM aims to achieving total maximal transmission capability of the network by coordinating route selection, link scheduling, and related network components. In contrast, network utility can be a commercial consideration from economic perspective. Suppose flow rate is treated as the service provisioned to a network user. Accordingly, network throughput is a measure reflecting the total amount of flow rates provisioned to all users. Instead, network utility is a satisfaction consideration derived by consuming such a network service and it usually conforms to the law of diminishing marginal utility, which means that the first unit of consumption of a

CR IP T

service yields more utility than the second and subsequent units, with a continuing reduction for greater amounts. Another important application for the NUM issue is that standard decomposition techniques for solving this issue can establish a distributed framework to perform the congestion control and resource allocation in multi-hop networks such that when the utility takes a form of -fairness function, the corresponding network resource allocation can also achieve -fairness [1-4]. In the study of NTM, network coding [5] has been demonstrated to be a promising paradigm to efficiently improve the throughput of a network. Following this direction, much work (e.g.,

AN US

[6-9]) has been done for tackling the NTM issue. In this paper, we focus on studying how to achieve NUM when network coding is applicable in a fully distributed manner.

NUM can be decoupled by Lagrange duality into two sub-objectives at the transport and MAC layers [1][2]. In general, the transport layer implements congestion control to stabilize network queues, and the MAC layer performs link scheduling to achieve packet transmissions. Although network coding is expected to bring higher network utility, it also causes some problems. First, achieving global maximal coding opportunity (a major objective generally

M

pursued in most existing work for tackling the NTM issue [6-9]) may not lead to the optimal solution for NUM. Abandoning some coding opportunity (by for example selectively lowering the rate of a flow (or some of them)

ED

participating the network coding operation) may give more space for those flow(s) (which are expected to lead to higher network utility if higher rates were allocated to them) to increase their data rates. This is because different packets typically have different contributions in network utility. Another problem is how to implement effective link

PT

scheduling in a fully distributed manner in a wireless network. As we know, link scheduling is usually a bottleneck of solving the NUM problem [1]. Network coding leads to increased diversity of queue load due to the coexistence of both native packets and coded packets as generated by using different coding combinations/patterns, while queue

CE

load is usually a key input variable of link scheduling algorithm [1][2]. In other words, network coding will further complicate the solving of this bottleneck problem. Thus, it is challenging to achieve NUM when distributed network

AC

coding is applicable.

In this paper, we propose a fully distributed network-coding-based adaptive CSMA algorithm for utility maximization (NACU). Our work is partially based on the adaptive CSMA link scheduling algorithm proposed in [10], which tunes the backoff time and channel holding time for each link to maximize the overall network throughput. The adaptive CSMA algorithm in [10] is fully distributed and can be incorporated in cross-layer optimization to achieve a higher efficiency, and to relieve the channel collision by instantaneous channel sensing. However, [10] did not consider how to achieve network utility maximization when network coding is applied in the network and further study what the maximal network utility will be in such a case.

2

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

In this paper, we use coding combination (also called coding pattern in some work, later on, we shall use them interchangeably in the rest of this paper) to represent the transmission of a coded packet in CSMA-based wireless networks. Each coding combination represents a coded packet and each transmission of such a packet involves one sending node and multiple receiving (neighbor) nodes. We first model the network under study. By treating coding combinations as scheduling units for transmissions at the MAC layer, we deduce the weighted network capacity based on network-coding-based adaptive CSMA and further analyze its features. We then propose the NACU algorithm, which assigns transmission opportunities (for medium access) to different packets based on their coding gains. In this way, a coding combination with more coding gain will be assigned higher transmission opportunity (i.e., shorter mean backoff time for medium access). We analyze its convergence property and also the impact of various

CR IP T

NACU parameters on network utility, and prove its optimality in NUM when coding patterns applicable at nodes are known. Our work is carried out based on the following assumptions, which were also used in [10][11][12]: 1) no hidden nodes exist in the network1; 2) channel sensing is instantaneous. To the best of our knowledge, this is the first work which integrates inter-session network coding and CSMA-based adaptive link scheduling for achieving network utility maximization in wireless networks in a fully distributed manner. The major contributions are

AN US

summarized as follows.

We first deduce the weighted network capacity based on network-coding-based adaptive CSMA, and then derive the relation between network throughput and adaptive CSMA parameters from the coding-combination-level and network-level, respectively.

ED

M

We propose the design of NACU algorithm, which solves the NUM problem by jointly utilizing network coding and adaptive CSMA by assigning the mean backoff time of a coded packet for medium access based on its coding gain. We analyze its convergence property and optimality in network utility when coding patterns applicable at nodes in the network are known. Simulation results validate the analytical results. The rest of this paper is organized as follows. Section II briefly introduces related work. In Section III, we model the network and then formulate the problem under study, show the difference between optimal solution for NTM

PT

and that for NUM by using various examples when network coding is applicable, and analyze the weighted network capacity when network coding and adaptive CSMA are enabled and further study its properties. In Section IV, we

CE

propose the NACU algorithm, analyze its convergence property and the impact of various NACU parameters on optimality of the algorithm, and finally give some implementation details in NACU. In Section V, we present

AC

simulation results for performance evaluation. Finally, Section VI concludes this paper. Related Work

In this section, we first introduce typical work for network coding for NTM and NUM, respectively, and then introduce typical work for supporting adaptive CSMA in wireless networks for utility maximization.

1

One way of resolving the issue of hidden nodes is to use separate signaling channels for medium access control and resource allocation.

3

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

A. Network Coding for NTM

COPE [6] is the first practical mechanism that realizes XOR-based network coding in wireless networks by taking advantage of opportunistic listening on wireless channels. After [6], a lot of work has been proposed to offer efficient mechanisms for NTM, such as [7][8][9]. In [7], Le et al. presented an on-demand coding-aware routing protocol, which chooses the path leading to the maximum throughput for each session. Ref. [9] attempts to obtain a good tradeoff between shortest path and the path with the highest coding opportunities in order to achieve higher throughout. In [8], each node performs coding-aware opportunistic forwarding to deliver a data packet while maximizing the expected network throughput. For this purpose, each node needs to manage a timer for each individual packet transmission, whose length is set based on the potential coding gain of the packet. Once timed out,

CR IP T

the packet will be sent to the MAC layer for regular medium access as recommended by for example IEEE 802.11b standard. Similar idea was also used in [13]. The work in [8][13] can largely ease the transmission scheduling among neighbor nodes by considering different packets’ coding gain. However, none of them consider how to introduce the coding gain into the calculation of backoff time for medium access and thus hard to ensure their optimality in throughput maximization.

AN US

B. Network Coding for NUM

In [14], Wu et al. decomposed the utility maximization problem into subproblems each involving one multicast destination only and showed that NUM can be solved by seeking critical cut that separates the source node from any

M

multicast destination in order to implement sub-gradient method. In [15], Seferoglu et al. found that rate mismatch between TCP flows can significantly reduce the coding opportunities and thus lead to throughput degradation. They proposed a network-coding aware queue management scheme that mimics the structure of the optimal solution so as to fully exploit coding opportunities in the network. To improve energy use efficiency, in [16], Khreishah et al. proposed an inter-session network-coding-based cross-layer optimization algorithm for pairwise communications

ED

because network coding across more sessions requires greater transmission power to broadcast coded packets to many receivers, which increases interference. In [17], Seferoglu et al. studied the NUM problem for lossy wireless networks where inter-session network coding (for local packet recovery) and intra-session network coding are

AC

CE

PT

applicable and presented two schemes using local state information. However, they did not consider how to realize the optimal scheduling at the MAC layer. For multicasting scenario, in [18], the authors formulated a flow conservation model based on network coding, and proposed a joint congestion control and medium access control algorithm. Based on the flow conservation model, Ref. [19] proposed a joint optimization algorithm by introducing the SINR interference model, Ref. [20] proposed a joint utility including both network lifetime and benefit value as the design objective. Among all the above existing work, [14] [15] did not consider issues at the MAC layer, [16][17] require centralized link scheduling to achieve expected maximal utility, and due to the differential characteristics of flow conservation, [18][19][20] used centralized back-pressure to transmit traffic. In particular, none of them considers how to achieve their optimization objective in adaptive CSMA-based wireless networks. C. Adaptive CSMA

In the study of NUM, the MAC layer scheduling is a key issue to achieve the goal. Recently, an adaptive CSMA scheduling was proposed in [10], which tunes the backoff time and channel holding time for each link to maximize 4

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

the overall network throughput. Ref. [10] showed that such a way of link scheduling can achieve the maximum possible throughput in a multi-hop wireless ad-hoc network. Further, this mechanism has the following properties: 1) It is fully distributed. 2) It can easily work with other layers to achieve higher resource utilization efficiency. 3) It can fully relieve the channel conflict via instantaneous channel sensing. After [10], a lot of work has been focused on adaptive CSMA-based link scheduling. Ref. [21] proposed a discrete time version of adaptive CSMA, which generates the backoff time based on queue length for reducing network delay. For time-varying channel, [22] studied a channel-aware CSMA, with which each link adjusts its CSMA parameters, backoff time, and channel holding times, as certain functions of its current channel capacity. In [10], the authors

CR IP T

used dump packets for transmissions on unsaturated links for improving the network capacity, while [23] computes the link access intensity (i.e., ratio of its mean transmission time to its mean backoff time) by mapping the unsaturated link waiting time for packet arrival to its extra backoff time to reduce network competition. In the signal-to-inference-plus-noise (SINR) model, [24] treats a wireless link as multiple parallel virtual channels with different qualities, and develops a CSMA scheduling using the queueing structure of each virtual channel. Ref. [25] designed an approximate payoff function of network utility, then the objective can be seen as a potential game. CSMA parameters.

AN US

According to the theory of potential game, the authors presented three approximate algorithms for updating of

However, there is still lack of study on how to effectively incorporating network coding into adaptive CSMA-based wireless networks while achieving the goal of NUM. It is our purpose to fill this gap in this work.

M

Network Model, Key Components, and Properties

In this section, we first model the network under study and formulate the NUM problem to be studied, and then introduce two key components in our algorithm including XOR-based network coding and coding-based Adaptive

ED

CSMA. Specifically, we show the difference between the optimal solution for NTM and that for NUM by using two network coding examples, demonstrate how network-coding-based adaptive CSMA works, deduce weighted

PT

network capacity for such networks, and derive its properties. D. Network Model and Problem Formulation

CE

In this paper, we study a wireless multi-hop network that can be modeled as a directed graph G=(N, L), where N represents the set of nodes and L represents the set of directional links in the graph. Furthermore, due to the radio

AC

property of a wireless network, we assume each node in N(G) transmits packets via multicasting. Specifically, a multicast link from node i  N(G) to receiving node(s), denoted by (i, J), where J denotes a set of target receiving nodes (also immediate neighbor nodes of i). Packet transmission adopts multicast mode due to the application of network coding. Moreover, the unicast transmission (of a native packet) between two neighbor nodes is also seen as a special case of the MAC-layer multicast. In addition, we assume that the capacities for all links in G are identical and are normalized to one when a link is not interfered by any other link and external environment. Notations used in the rest of this paper are listed in Table I.

5

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

Table I. NOTATIONS. Notations

Definitions

G=(N, L)

Original graph;

CG=(CL, CE)

Coding conflict graph, where CL denotes the set of all feasible coding combinations in G; Both represent a coding combination initiated by node i. In particular, the latter is more specific such that it indicates the specific multicast link (i, J) used for the transmission and also the choice of sessions used for the transmission, as denoted by c.

CR IP T

ℓ(i); {(i, J), c}

A set containing all the feasible coding combinations that node i can apply;

is; iss

Both are independent sets;

IS

The set containing all independent sets in a wireless network;

M

The set containing all traffic sessions in the network;

Pis

Fraction of time that the network is in an independent set is;

BFℓ(i)

Generated backoff time for a packet transmission using coding combination ℓ(i);

r (i )

Transmission Aggressiveness (TA) for coding combination ℓ(i);



Throughput of coding combination ℓ(i);

M

AN US

S(i)

ED

(i )

Flow rate for session m, mM;

xm

 m(i )

PT

Usage fraction of total flow rate x m of session m at node i by using coding combination ℓ(i);

AC



CE

q

Lagrange Multiplier (also called weight) of coding combination ℓ(i) for session m. This weight is also often interpreted as the length of queue load for ℓ(i) for session m;

m (i )

TA scalar used in our NACU algorithm;



Step size of queue load updating for a coding combination;

T

Duration of a scheduling cycle;

Let mM denote a traffic session with flow rate x m , where M denotes the set of all traffic sessions in the network.

6

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

In this paper, we study the following network utility maximization problem. max x

where x  {x1, x2 ,

U

m

( xm )

(1)

m:mM

, x|M | } and | M | denotes the total number of active traffic sessions in the network. It is noted

that U m ( x m ) is the utility associated with session mM. We assume that the utility function U m () is twice differential, strictly concave, non-decreasing function of the mean flow rate. We will use inter-session network coding and adaptive CSMA-based link scheduling to achieve the NUM objective,

CR IP T

wherein XOR-based network coding can improve the network capacity efficiently while adaptive CSMA-based link scheduling can efficiently allocate channel resources in a fully distributed manner. Each session takes a predetermined direct path from the session source to the session destination. In this case, for a network with given traffic matrix, the coding combinations/patterns applicable at each node is known. E. XOR-Based Network Coding

AN US

In this subsection, we firstly briefly introduce how XOR-based network coding works and then show how the solution for NUM can be quite different from that for NTM by using different examples. j2

j1 n

Fig. 1. Example network 1.

M

i2

ED

i1

Fig. 1 is a typical example illustrating how XOR-based network coding works. Assume node i1 (i2) has a packet p1 (p2) needed to transmit to node j1 (j2). Node n receives the packets p1 and p2 from i1 and i2, respectively, and at the

PT

same time, node j2 (j1) overhears the packet p1 (p2) from i1 (i2) via opportunistic channel listening. Then node n can create a new encoded packet p1p2, and broadcasts it to the air. Then node j2 (j1) receives the encoded packet and

CE

then decodes it with the packet p1 (p2) received via opportunistic listening. Finally, node j2 (j1) obtains its expected packet p2 (p1). In this example, XOR-based network coding helps reduce the number of transmissions from 4 to 3.

AC

That is, XOR-based network coding improves the network throughput. Next, we will describe how the example in Fig. 1 works by using multicast transmissions. There are three multicast links {i1, {n, j2}}, {i2, {n, j1}} and {n, {j1, j2}} in Fig. 1. Since the three multicast links interfere with each other, if we apply a fair scheduling, the network can finish the end-to-end delivery of the two packets p1 and p2 when each multicast link is scheduled once. Furthermore, when x2 = x1, where xm (m = 1 and 2) denotes the flow rate with source node is and destination js, the network can obtain the maximal throughput. For fairness of resource allocation, we let the utility function follows a general form of U m ( xm )  ( xm )(1 ) (1   ) for all sessions. If the parameter  in (1) for different sessions are the same, the solution for maximal throughput is also the solution for (1). However, if  for different sessions are different, a question is whether the total utility is still maximal when network throughput is 7

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

maximized. For example, setting =1.1 and 3.1 for sessions 1 and 2, respectively, when x2= x1= 1/3, the total utility is -15.944, but when flow rates for the two sessions are 1/5, and 2/5 (50 percent of the packets of session 2 will not implement network coding with session 1), respectively, the total utility will be -15.01. It is clearly seen that the optimal solution of (1) will be different when  are different for different sessions. j1

i3

n

CR IP T

j2

i2/j3

i1

Fig. 2. Example network 2.

Fig. 2 shows another example to demonstrate that, even when the utility functions for different sessions are the same, the optimal solution for maximum network utility can still be different from that leading to the maximal

AN US

network throughput. In Fig. 2, the solid arrows indicate actual flow directions and dash lines indicate (additional) neighbor relationship. Moreover, in this figure, i2 and j3 are actually the same node. According to the topology and flow directions in Fig. 2, there are five multicast links: i.e., {i1, {n, j2}}, {i2, {n, j1}}, {i3, {n, j2}}, {n, {j1, j2}} and {n, {j2, j3}}, where {i1, {n, j2}}, {i2, {n, j1}} and {n, {j1, j2}} can form a coding structure, and {i2, {n, j3}}, {i3, {n, j2}} and {n, {j2, j3}} can form another coding structure. Thus, in order to maximize the network throughput, all the network coding opportunities are expected be fully utilized. That is, x2= x1+x3. More specifically, x1=1/6, x2=2/6 and x3=1/6. Setting

M

=2.1 for all the three sessions, the corresponding total utility by (1) will be -16.094 when network throughput is maximized. However, if some network coding opportunities are ignored and the flow rate assignment for the three

ED

sessions change to 1/5, 1/5 and 1/5, respectively. Further, the traffic of session 3 is transmitted in native mode without network coding with session 2. Accordingly, the total utility will be -16.018. In this example, it is seen that the solution for maximal network throughput does not lead to the optimal solution for NUM even the utility

PT

functions for different sessions are the same.

In the above discussion, centralized implementation was used to obtain the optimal solution for each example.

CE

How to achieve NUM by using fully distributed link scheduling is still a question. For example, in Fig. 2, node n has several choices for coding. In this case, which one should be taken when node n is active? Let cC(n) denote a certain choice of sessions involved in a network coding operation, where C(n) is the set of all the feasible session

AC

choices for network coding operations at node n. For example, in Fig. 2, node n has the following five session choices: session 1, session 2, session 3, {session 1, session 2}, and {session 2, session 3}. To ease the presentation, we treat the transmission of naïve traffic of an individual session without network coding also as a (special) coding choice. Since network coding is carried out on multicast links, we further define the concept of coding combination, denoted by {(n, J), c}S(n), for explicit representation of such multicast link and also the session(s) involved in the operation, where (n, J) is a multicast link incident to node n, c C(n), and S(n) is the set of all coding combinations applicable at node n. For example, the node n in Fig. 2 can be a sender for the following coding combinations: {(n, j1), session 1}, {(n, j2), session 2}, {(n, j3), session 3}, {(n, {j1, j2}), {session 1, session 2}} and {(n, {j2, j3}), {session 2, session 3}}. 8

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

Next, we will show how coding-based adaptive CSMA works in a distributed manner when XOR-based network coding is applicable at nodes in the network. F. Coding-based Adaptive CSMA

In this subsection, we first model coding conflict graph, then show how coding-based adaptive CSMA works in such graph, calculates the weighted network capacity in such cases when coding combinations are seen as scheduling units for transmissions, and further derive its properties. 1) Coding conflict graph

CR IP T

The interference relations among coding combinations in a network are as follows. If different coding combinations take the same multicast link2, it is obvious that they cannot transmit simultaneously. Furthermore, a multicast link cannot transmit traffic while any other coding combination within its sensing range is transmitting. In this way, we can establish the interference relations among different coding combinations.

A coding conflict graph CG = (CL, CE) can be accordingly constructed as follows, where each vertex in CL

AN US

represents a coding combination. It is noted that although the original graph G is directional, the conflict graph CGis undirected, that is, each link in CG represents a symmetric interference relation. Specifically, v1, v2  CL(CG) are neighbor vertices, and (v1, v2) CE(CG) is the edge connecting v1 and v2. The existence of such a link represents that two coding combinations v1 and v2 interfere with each other. 2) Network-coding-based adaptive CSMA

M

Now, we will introduce how network-coding-based adaptive CSMA works in such coding conflict graph and then

ED

derive its properties.

We use coding combinations to construct independent set on coding conflict graph CG. Let isIS denote an independent set whose coding combinations can transmit simultaneously, where IS denotes the set of all

PT

independent sets for a wireless network. Let E[T{(bci,J ),c} ] and E[T{(tri ,J ),c} ] represent the mean backoff time and mean transmission time for each packet over coding combination {(i, J), c}. Furthermore, we assume that T{(bci,J ),c} follows

CE

exponential distribution while T{(tri ,J ),c} is a constant3. Similar to [10], let exp(r{(i ,J ),c} )  E[T{(tri ,J ),c} ] E[T{(bci ,J ),c} ] , where r{( i , J ),c} is the “transmission aggressiveness” (TA) of the coding combination {(i, J), c}. For ease of exposition, we also use ℓ(i) to represent {(i, J), c}. Next, Table II further lists some additional notations

AC

to be used hereafter.

2

Recall again that, in this paper, we treat a native packet as a special case of coding combination and further treat a unicast link (for native packet delivery) as a special case of multicast link. 3

In this paper, we assume all data packets have the same length, which is typical in many applications.

9

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

Table II. ADDITIONAL NOTATIONS. Notations

Definitions

 is f () ;  iss f ()

Two different forms representing the sum of f() for all independent sets IS and both of them have the same meaning. f() is a function that characterizes a specific property of independent sets is, iss IS.



|is

f ()

Sum of f() for all the coding combinations belonging to independent set is; Sum of f() for all independent set that contain coding combination ℓ;

 is| f ()

Sum of f() for all independent set that do not contain coding combination ℓ.

CR IP T

 is| f ()

Let Pis denote the fraction of time when the network is in independent set isIS. We can also call Pis as the time

Pis 

exp(  r ) |is

AN US

fraction of independent set is. Thus, we have [10][11][25]

 exp(  r  ) |iss

iss

.

(2)

Based on the above results, we can see that the network capacity can be calculated by the sum of the attainable capacities of all feasible coding combinations and the attainable capacity of a coding combination ℓ(i) equals to the

M

sum of the time fractions of all the independent sets that contain the coding combination. Let us expand the above results to weighted network capacity, which is the foundation of optimal link scheduling

ED

for achieving NUM [1][2]. Let w ={wℓ(i), ℓ(i) S(i) and iN(G)}, where wℓ(i) denotes the weight of coding combination ℓ(i), which can be for example the queue load associated with the coding combination at i. Let r ={rℓ(i), ℓ(i) S(i) and

CE

PT

iN(G)}. We can obtain the weighted network capacity NC(w, r) as follows:     Kis exp(  r )  is |is , NC ( w ,r )   exp( r )    iss

(3)

|iss

AC

where Kis=  |is w denotes the sum of weights of all coding combinations in is. 3) Property derivation In order to analyze the convergence property of our NACU algorithm (see later) and also the impact of various NACU parameters on network utility, we present the following two propositions. Proposition 1: For a coding combination ℓ, its corresponding TA rℓ is adjustable. Moreover, when the coding combination ℓ satisfies the following inequality:

10

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

 is| Kis exp(  r  ) |is

 is| exp(  r  )



 is| Kis exp(  r  ) |is

 is| exp(  r  )

|is

,

(4)

|is

where the summation  is|l () is over all feasible independent sets that do not contain link l. then the weighted network capacity by (3) increases with rℓ as rℓ +; Otherwise, the weighted network capacity by (3) decreases with rℓ as rℓ +. Proof: Let the TA rℓ is increased by  (  >0). Then, the change in (3) will be as follows. |is

|is

 |is

 |is

 is| exp(  r    )   is | exp(  r  ) |is



 |is

 is {(  w  )exp(  r  )} |is

|is

 is| exp(  r  )   is | exp(  r  )

CR IP T

 is| {(  w  )exp(  r    )}   is | {(  w  )exp(  r  )}

|is

(5)

 |is

To ease the presentation in this proof, we use μ (μ>1) to represent exp( ). Transforming (5) to a common denominator, we have a corresponding numerator as follows.

(  1){(is| Kis exp(  r  ))(is| exp(  r  ))  (is| Kis exp(  r  ))(is| exp(  r  )} |is

|is

|is

(6)

|is

AN US

When the above expression is greater than 0, it can be seen that (3) increases as rℓ +. In addition, it can also be seen that (5) is monotonous over μ by deducing the derivative of (6) over μ . Finally, when   0, we can see 0<μ< 1. Thus, (3) decreases with rℓ as rℓ . So the proposition is proved.



Proposition 1 reveals that the weighted network capacity decreases with the increase of TA values of those coding combinations, which violate (4). Thus, Proposition 1 means that the choice of TA value is important for achieving the

ED

to choose a larger TA to transmit traffic.

M

maximal weighted network capacity. Proposition 1 implies that a coding combination with larger weight is probably

Proposition 2: In a network, according to (3), the following inequality holds:

 (

PT

S

  * )r   (   * )r *  0 .

(7)

S

where S denotes the set of all feasible coding combinations in the network,  denotes the throughput of coding

CE

combination ℓ for given TA vector r={ r ,  S }, and  * denotes the throughput of coding combination ℓ for an arbitrary TA vector r*={ r * ,  S }.

AC

Proof: According to the weighted network capacity by (3), expanding the first term in the left side in (7), we have

 (   )(r )  *

 ((ris )exp(ris )) is

 exp(riss ) iss

 ((ris )exp(ris )) *



is

 exp(riss ) *

,

iss

where ris   |is r and riss   |iss r  . Transforming the right side of the above expression to a form using common denominator by directly multiplying the two denominators, then the corresponding numerator becomes the following.

11

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

* *   {exp(ris  riss )(ris )}    {exp(ris  riss )(riss )} is iss is

(8)

is iss is

After the same way of transforming as above, regarding the second term in the left side of (7) (i.e., “  (   * )r * ”), we shall have a corresponding numerator as follows. * * * *   {exp(riss  ris )(riss )}    {exp(riss  ris )(ris )} . is iss is

(9)

is iss is

Since both of the above transforms share the same denominator, we add (8) and (9) together, and yield   {exp(ris  riss )(ris  riss )}    {exp(ris  riss )(riss  ris )}. *

*

is iss is

*

CR IP T

*

is iss is

Since ris  riss* is positively correlated to exp(ris  riss* ) , we have the first term of the above expression is larger than or equal to the second term. So (7) is proved.



Proposition 2 tells the relation between network throughput and TA from a network-wide perspective as

AN US

compared to the Proposition 1, which works from an individual coding-combination perspective. Proposition 2 will be used later in the proof of the convergence property of our algorithm.

In the above, we have deduced some theoretical properties of network-coding-based adaptive CSMA. Next, we further discuss some implementation issues in its operation of link scheduling. Specifically, CSMA-based backoff process is performed by using counters with memory. Specifically, for transmitting a coding combination ℓ(i), node i senses the channel state (idle or busy): If the channel is idle, node i will generate a variable BFℓ(i) which is

M

exponentially distributed with mean backoff time E[T bc(i ) ] . Then, node i starts a countdown process. When the counter reaches zero, the node i initializes a transmission using the selected coding combination ℓ(i). In addition, if

ED

the channel becomes busy during the countdown process, the counter will be frozen. The countdown process re-

Proposd Algorithm

PT

starts after the channel is sensed idle.

In this section, we will propose the NACU algorithm and analyze its properties. Specifically, we first present the

CE

algorithm details of NACU, and then deduce its convergence property, and study the impact of NACU parameters on the optimality of network utility, finally discuss some implementation issues in NACU.

AC

G. NACU algorithm

In NACU, flow rate allocation among different sessions is solved in a cross layer manner. Specifically, maximizing network utility is jointly solved by the end-to-end flow control at the transport layer and optimized transmission scheduling at the MAC layer. Consequently, the optimization objective in (1) can be put together as follows:

12

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

max s.t.

m  Um ( x )

mM

 m(i ) xm   (i )

 (i), i, m

m   (i )  1

(10)

i, m

(i )|m

 { (i)}+ { ( j )}  1

( (i), ( j ))  CE (CG)

where the first constraint in (10) is throughput constraint for each coding combination.  m(i ) represents usage fraction of xm that the node i transmits for session m by using coding combination ℓ(i). 

(i )

represents the

throughput of coding combination ℓ(i). Let ℓ(i)|m denote the set of all feasible coding combinations that carry traffic

CR IP T

of session m at node i, each of which is responsible for transmitting part of the traffic for session m. The second constraint in (10) is the flow conservation constraint: that is, at each node in the network, all the traffic of a session m must be transmitted by using all feasible coding combinations applicable at that node. The third constraint is the CSMA scheduling constraint [22][25]. Specifically, let  { (i)}{0,1} denote whether a coding combination ℓ(i) is active or not, where  { (i)} equals to 1 if active, and 0 otherwise. All the active coding combinations in the neighborhood of a node must satisfy the third constraint. In here, we use given traffic matrix and given coding

AN US

combinations at each node in the network (due to the use of pre-determined path for each session as assumed in the network model subsection) as input for (10). Thus, the solution for (10) is also the optimal solution for this case4. By relaxing the throughput constraint in (10), we have a partial Lagrangian (subject to the last two constraints) as follows:

m

M

L(x, q, τ, π)  Um ( xm )    qm(i ) ( m(i ) xm   i

(i ) )

(i )

= {Um ( xm )  xm    m(i ) qm(i ) }+    qm(i ) i

(i )|m

i

(i )

(i ) m

ED

m

where qm(i )  0 is the Lagrange multiplier, which can be interpreted as the length of sending queue of session m for

PT

coding combination ℓ(i) (note that sending queue at a node is managed in a per coding-combination based manner and it will be explained in details in subsection IV.D); x, q, π, and τ denote the vectors of flow rate, Lagrange multiplier, usage fraction of flow rate, and coding combination throughput, respectively. Then, the above Lagrange

CE

function can be decoupled into the following two sub-problems: D  max L(x, q, τ, π)  Vm  W

AC

where

q0

(11a)

m

Vm = max{U m ( x m )  x m    m(i ) q m(i ) } i

( i )|m

4

s.t.



m (i )

 1 i, m

(11b)

( i )|m

However, the obtained solution in this case is not guaranteed to be the optimal one to the generic network coding problem for wireless networks, which is a well known open problem [5][26].

13

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

W = max  q m(i ) i

(i )

s.t.  { (i)}+ { ( j)}  1

( (i), ( j))  CE(CG)

(i ) m

(11c) The sub-problems (11b) and (11c) are coupled by the Lagrange multiplier vector q. The sub-problem (11b) is a flow rate control problem at the transport layer. Specifically, the source node of each session can generate its traffic at a rate to maximize its profit that is the difference between its achieved utility and the cost spent for the corresponding bandwidth usage. The sub-problem (11c) is for maximizing the weighted network capacity (i.e., network capacity weighted by  m q m(i ) ) that can be realized at the MAC layer. According to the duality principle, we

CR IP T

can obtain the optimal solution of (10) by respectively solving the above two sub-problems. The NACU algorithm contains the following three major components: 1) flow rate control, which is to maximize per-session profit according to sub-problem (11b), 2) CSMA based transmission scheduling, which is to maximize the weighted network capacity according to sub-problem (11c) , and 3) Lagrange multiplier updating, where Lagrange multipliers reflect the queue state at different nodes in the current cycle and they are used as input of the flow rate control and the transmission scheduling in the next cycle. Next, we shall respectively introduce how each of these

AN US

components works. Flow rate control

The flow rate control sub-problem in (11b) can be readily solved in the following way.

xm  Um 1 ( Qim )

(12)

M

i|m

where Um 1 () is a decreasing function because it is the inverse function of the derivative of Um () , ( i )| m

 m(i ) qm(i ) denotes the load for session m at node i.  i|m Qim can be interpreted as the path load for session

ED

Qim  

m over its traversed path. Thus, if the path load increases, the flow rate will decrease due to the property of Um 1 () , otherwise the flow rate will increase with the decrease of path load. Furthermore, in order to maximize flow rate of

PT

a session m according to (12), Qim should take a value as small as possible for each session at each traversing node. To achieve this goal, we use the following rate allocation for different coding combinations by finding the optimal

min π



m (i )

q m(i )

s.t.

( i )|m



m (i )

 1  (i), i, m

(13)

( i )|m

AC

CE

(coding combination) usage fraction vector .

For each node, it can choose to construct different coding combinations to transmit packets of a traversing session. That is, for a specific session going through a node, how to allocate its traffic to different coding combinations is an important issue. The q m( i ) can be seen as sending queue load for session m at node i for coding combination ℓ(i). Thus, the larger the queue load q m( i ) is (it means that the coding combination ℓ(i) has accumulated too much traffic for delivery at i), the smaller its corresponding traffic allocation  m(i ) should be. Accordingly, in the implementation of NACU, the packets of a session are always assigned (enqueued) to the queue for the coding combination, which has the smallest queue length at the beginning of the cycle. 14

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

CSMA based transmission scheduling For the transmission scheduling sub-problem, the function (11c) is not strictly concave, so it is difficult to obtain the optimal solution in a distributed manner. Here, we adopt a fully CSMA-based distributed manner to obtain approximate solution. Specifically,  m| ( i ) qm( i ) can be seen as the weight for the coding combination ℓ(i). According to Proposition 1, if a coding combination ℓ(i) has a larger weight, its corresponding TA should have a larger value. Based on the above analysis and discussion, in NACU, a node uses the following function for CSMA-based link scheduling. Specifically, for scheduling the transmission of coding combination ℓ(i), the following function is used to

CR IP T

choose the corresponding TA value for the transmission.

r ( i )    qm( i ) m| ( i )

(14)

,

where m|ℓ(i) denotes the set of all the sessions participating coding combination ℓ(i) at node i, and  denotes the TA scalar. Eq. (14) shows that a coding combination with more coding gain (i.e., more participating sessions) should

AN US

have a lager TA value and therefore higher transmission opportunity (shorter mean medium access time). Here, mean medium access time is reflected by mean backoff time for channel access. More importantly, later on, we prove that the way of transmission scheduling in (14) leads to optimal scheduling for meeting our NUM objective when  and related parameter are properly chosen (see subsection IV.C). Lagrange multiplier updating

M

The implementation of NACU is constituent of a series of scheduling cycles. After each scheduling cycle, the Lagrange multiplier (actually queue load) is updated as follows.

ED

q m(i )  {q m(i )    m(i ) x m  



(i )

 m } q (i )

(15)

where 0 is step size of queue load updating. [u]+v denotes the positive projection, which verifies [u]+v = 0 whenever

PT

v=0 and u<0, otherwise [u]+v =u. {x}+ returns max(x,0). The Lagrange multiplier updating process reflects the change of

CE

sending queue load over time. H. Analysis of covergence

In the preceding subsection, we have presented the algorithm design of NACU. Next, we will analyze its

AC

convergence property. In order to analyze its Lyapunov convergence property, the NACU algorithm needs to be expressed by a series of system state equations that are the first derivative of a number of states [17][27], which include network variables such as xm ,  m(i ) , 

(i )

, and qm( i ) .

1) NACU state variables Eq. (13) shows that when a coding combination has a smaller q m( i ) , the coding combination will be allocated a bigger usage fraction subject to the flow conservation constraint. That is, there must exist a positive value  , with which we can construct the following state equation 15

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT



 m(i )     q m(i ) 

(16)

m (i )

where κ 0 is the step size. (16) can be interpreted as follows: at each node i, when q m( i )   , which means the sending queue for the coding combination ℓ(i) is congested, the usage fraction of the corresponding coding combination should be reduced; Otherwise, the usage fraction should be increased. According to (15), we can obtain a Lagrange multiplier state equation as follows. 

(i )

 m q (i )

(17)

CR IP T

q m(i )    m(i ) x m   2) Convergence Analysis

According to (3) and (14), the throughput for a coding combination is determined by the vector of Lagrange multipliers. Thus, we consider the following Lyapunov function, which is similar to those used in [3][4][17].

m

i

(q m(i )  q m(,*i ) )2 2

(i )

( (r (i )  r *(i ) )2  (   1) x m,* 2 (i ) m i (i )

  i

m (i )

  m(i,*) )2

(18)

2

AN US

V (x, q, τ, π)  

Note that xm ,* , r *( i ) ,  m(i,*) , and qm( ,*i ) denote the optimal values of corresponding variables and  *( i ) is determined by

r* . Differentiating along the trajectories, we have

m

i

M

V (x, q, τ, π)   (q m(i )  q m(,*i ) )[ m( i ) x m   (i )

  (r ( i )  r *( i ) )[ m( i ) x m  

 ( i ) qm (i )

]

i

ED

+(   1) x m,* ( m(i )   m(i,*) )   q m(i )  m

i

(i )

 ( i ) qm (i )

]

(i )



 m( i )



PT

According to the definition of [u]+v , we can reach (v  v* ) u v  (v  v* )u . Thus, we have

V (x, q, τ, π)  (   1) (q m(i )  q m(,*i ) )( m(i ) x m   i

(i )

)+(   1) x m,* ( m(i )   m(i,*) )(  q m(i ) ) m

i

(i )

CE

m

(i )

For the second term in the right side of the above expression, since  (i )

 m(i )  1 , we have

( m(i )   m(i,*) )  0 . In addition, rearranging the right side of the above expression, we have

AC

m 

(i )

V (x, q, τ, π)  (   1) (q m( i )  q m(,*i ) )( m( i ) ( x m  x m ,* ))  (   1) (q m( i )  q m(,*i ) )( x m ,* ( m( i )   m( i,*) )) m

i

(i )

 (   1) ( q m

i

m

m (i )

q

m ,* (i )

)(

m ,* m ,* (i )

x



(i )

* (i )

i

(i )

)  (   1) (q m( i )  q m(,*i ) )( *( i )   m

i

(i )

+ (   1) x m,* ( m(i,*)   m( i ) )( q m( i ) ) m

i

(i )

Furthermore, combining the second term and the fifth term in the above expression, we have

16

(i )

)

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

V (x, q, τ, π)  (   1) (q m(i )  q m(,*i ) )( m(i ) ( x m  x m,* ))  (   1) (q m(i )  q m(,*i ) )( m( i,*) x m,*   *(i ) ) m

i

(i )

m

 (   1) (q m

i

m (i )

 q )( m ,* (i )

* (i )



i

(i )

)+(   1) x ( m(i,*)   m(i ) )(q m(,*i ) ) m ,*

(i )

(i )

m

i

(19)

(i )

Since Um 1 () is a decreasing function, combining with (12), the first term in the right side of (19) is less than 0. Due to the optimality condition  m(i,*) x m,*   *(i )  0 , the second term in the right side of (19) is equal to 0. According to Proposition 2, it can be seen that the third term in the right side of (19) is less than 0. According to (13), it can be clearly seen that  m 

(i )

( m(i,*)   m(i ) )(qm(,*i ) )  0 , thus, the last term in the right side of (19) is less than 0. Finally,

CR IP T

V (x, q, τ, π)  0 . This means that our NACU algorithm converges. However, it should be noted that optimal weighted network capacity is affected by various NACU parameters. That is, we will have different weighted network capacity by different NACU parameters, which however do not affect the network convergence property. I.

Impact of NACU parameters According to the convergence analysis, it can be seen that achieving maximal network utility depends on the

AN US

optimality of coding combination transmission scheduling. Thus, we can change the problem from optimality of utility to the maximization of the weighted network capacity. Next, we will analyze the impact of corresponding NACU algorithm parameters.

Regarding the impact of TA scalar , we have the following. The TA for a coding combination is assigned by r   w ,  ℓ. We have the derivation of (3) as follows.

M

NC (w ,r ) 0 

(20)

ED

(20) indicates that the weighted network capacity increases with  increasing. Regarding the impact of scheduling cycle duration T, we have the following. In [10], Jiang et al. analyzed the

PT

convergence behavior of throughput of unicast link when adaptive CSMA is applied by using Markov chain. Here, we extend their results to multicast link (for coded packet transmission as we study here) when network-coding-based

 *(i )   ((ei)) 

C ,  (i), T

AC

CE

adaptive CSMA is used. Accordingly, we have

where C is a network parameter, which is a constant depending on the network scale.  *( i ) is the stationary throughput (i.e., optimal throughput) for ℓ(i), and  ((ei)) is an empirical throughput. Then, the difference between weighted network capacity for infinite time and that for finite T can be obtained as follows.

w (i )

 ((ei))   w (i ) *(i ) 

(i )

(i )

C  w (i ) T (i )

(21)

Inequality (21) reveals that the empirical weighted network capacity approaches to the optimal one as T+.

17

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

Therefore, the optimal utility can be achieved when    and T   .

J.

Queue Structure In NACU, each node in the nettwork needs to manage a queueing structrue, which consists of three types of

queues, i.e., overheard queue, native queue, and sending queue. We will describe how each of these queues is managed and further how each of them works in the following. Overheard queue: When the next hop of a received (actully overheard via opportunistic listening) packet p is not the current node, the packet p will still be stored at the current node if the packet is not a coded packet, otherwise it

CR IP T

will be discarded. In such a case, the pakcet p will be stored in the overheard queue of the current node. Then the node will also notify the next hop node of p regarding the successful overhearing via periodical signaling exchanging among neighbor nodes for assisting possible encoding/decoding decision making in the near future.

Native queue: When the current node is a received packet p’s next hop (for native packet case) or a target receiver (for coded packet case), there are two cases as follows. If p is a native packet, it will be directly stored in the native queue of the current node. If p is a coded packet, it will be first decoded by using overheard packet(s) from

AN US

the overheard queue at the current node and then the decoded native packet will be put into the native queue. Since the current node is a target receiver of the (coded) packet, it must be decodeable locally, otherwise the packet should not have been sent to the current node. Native packets are further stored in a per-session based manner. That is, each session has a separate native queue.

Sending queue: For a native packet pm in the native queue for session m, it will be sent to a sending queue leading

M

to the minimization of (13). In a sending queue with real coding opportunity, native packets from different sessions will be coded together according to given coding choice. However, when the transmission of a coding combination is

ED

going to happen while one or more native packets of the coding combination is still missing, we will generate a coded packet by using dump packet(s) to replace those missing native packtes. Note that, in the implementation of

Numerical Results

PT

our algorithm, each coding combination needs to keep an individual sending queue at a node.

CE

In this section, we conduct simulations to validate the stability and optimality of our NACU algorithm by developing a packet-level event-driven simulator. In the simulations, the utility function follows a form of

AC

U m ( xm )  ( xm )(1 ) (1   ) , where =2.1, m.

K. Simulation Setup

In the following, we list the simulation/parameter setup used in different components in our simulations. 

Network and traffic related settings: The network topologies and flow assignment in the simulations are shown in Figs. 2 and 4, respectively. The capacities for all links are equal to 1Mbps. Link transmissions are assumed to be ideal such that no transmission error can occur on link delivery (except possible transmission collisions in discrete-time NACU, see later). All packets are assumed to have the same length and the transmission time for a packet (either native or coded) is 10ms. 18

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT



Network coding operations: The traffic paths for different flows are pre-computed and the network coding combinations/patterns applicable at each node in the network can then be enumerated before running a simulation process.



Adaptive CSMA based link scheduling: The TA value for each coding combination is calculated according to (14) and the corresponding mean backoff time for the coding combination can then be calculated based on the definition of TA. For the transmission of each individual coding combination, a random backoff time which is exponentially distributed with the mean backoff time calculated for the coding combination. The CSMAbased backoff process is performed using counters with memory (see Section III). In the simulations, we shall



CR IP T

vary some key scheduling parameters in NACU (i.e.,  and T) to observe their impact on network utility. End-to-end flow control: Flow rate is calculated according to (12) by using path load information gathered via separate signaling channel such that the gathering latency is negligible. 

Queue status updating: Each newly received packet is assigned the queue for the coding combination that has the smallest queue length based on (13). Lagrange multiplier for each coding combination is updated

AN US

according to (15). In the simulations, the step size of Lagrange multiplier updating  = 0.1.

For comparison purpose, in the simulations, we also realized two centralized optimal algorithms based on global network state information: One is the optimal centralized scheduling algorithm with network coding (called Optimal_NC) and another is the optimal centralized scheduling algorithm without network coding (called Optimal_non-NC). Both of them can achieve maximum network utility in their target network scenarios. Here, we

M

take Optimal_NC as an example to illustrate how the centralized scheduling in it works. In the implementation of Optimal_NC, at the MAC layer, centralized optimal transmission scheduling is performed by using global network state information including network topology, flow distribution, accurate queue state information at each node,

ED

coding combinations/patterns applicable at each node in the network; At the transport layer, adaptive flow control is achieved in a way such that each source updates its flow rate by using (12) by using accurate path load information. In this way, the former part achieves the optimal solution to (11c) while the latter part obtains the

PT

optimal solution to (11b). Based on the characteristics of Lagrange-duality, we accordingly obtain the optimal solution to the NUM issue.

CE

In addition, to evaluate the performance of NACU when certain practical design concern is considered, we further conduct additional experiments in discrete-time wireless networks to observe the performance of NACU in such networks. Such an implementation of NACU is called NACU_discrete-time. This test is to consider the fact that

AC

actual channel sensing time in reality is not zero and the actual backoff time is often chosen to be an integer of a mini-timeslot such that transmission collision can happen in such networks. Specifically, in the simulations of such a discrete NACU, initially, a coding combination ℓ(i) still generates its backoff time BFℓ(i) in the same way as that in the original NACU, then the coding combination obtains an integer contention backoff value CW (i )   BF (i ) ]   ,where

 denotes the duration of mini-timeslot. The coding combination starts its countdown process by step size of one mini-timeslot. Transmission collision occurs when two or more interfering coding combinations count down to zero

19

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

at the same time. In the simulations, we assume the duration of mini-timeslot  is 50us, and the transmission time for a packet is thus 200 (10ms)5. In this sense, we say the second assumption (i.e., time instantaneous channel sensing) used in our algorithm design is relaxed. The purpose of this experiment is to observe how much performance penalty can be observed when this assumption is relaxed. In the simulations, we will first validate NACU’s optimality in utility, then validate its convergence property (from a

L.

Example network in Figure 2 The first experiment was carried out on the network shown in Fig. 2.

CR IP T

per session perspective), finally evaluate the impact of key NACU parameters (i.e.,  and T) on network utility.

In the first test, we set  =16 and T = 0.8s. Fig. 3(a) compares the utility by NACU algorithm, Optimal_NC, Optimal_non-NC, and NACU_discrete-time. Specifically, the utilities by the four algorithms are -15.64, -15.63, -19.57, and -16.21, respectively, when the network is stable. It can be seen that the utility by NACU is very close to the utility by the Optimal_NC, and is significantly higher than that when without network coding. The utility performance by NACU_discrete-time also indicates that NACU is still effective in discrete-time networks. Since

AN US

transmission collisions cause certain waste in channel resource due to relaxation of the instantaneous channel sensing assumption, the discrete-time version of NACU leads to certain decrease in network utility. Fig. 3(b) shows the convergence of flow rates. It can be seen that the flow rate for each session converges as time evolves, and the flow rates for the three sessions are 0.188Mbps, 0.245Mbps, and 0.188Mbps, respectively.

AC

CE

PT

ED

M

In the second test, we observe the utilities by NACU due to different settings of  and T. We first fixed T = 0.8s and set the TA scalar  to be 1, 2, 4, 8, 16, 32, 64, and 128, respectively. In Fig. 3(c), it is seen that the utility increases with the increase of . We further fixed  =16 and adjusted the value of T. Fig. 3(d) shows the total utility due to different Ts. It is seen that the utility performance is relevant to T. Specifically, the larger T is, the higher the total utility will be. With increase of T, the total utility approaches to the maximum.

The reason that we chose  = 50us is to mimics the setting in standard IEEE 802.11 protocol suite where the length of a mini-timeslot is set to 50us. Note that as 0, we have  + and the performance of the discrete NACU approaches to that of the continuous NACU. 5

20

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

(b)

CR IP T

(a)

(c)

(d)

AN US

Fig. 3. Numerical results for the example network in Fig. 2. Note that subfigures (b)(c)(d) are for NACU only. M. 55 grid mesh network

This experiment was done on a 55 grid network with four sessions (see Fig. 4). In Fig. 4, how these sessions intersect is shown. Note that network coding operations are only applicable at the intersection nodes. The interference distance is smaller than two times the side length of minimal grid (e.g., D3-NC1). In this graph, there are

M

in total 21 coding combinations applicable. The corresponding links can form 66 mutually excluding independent

D4

D3

PT

S1

NC3

AC

NC4

CE

NC1

D2

S3

ED

sets.

NC5

S2

NC2

S4

D1

Fig. 4. 55 grid mesh network and flow directions.

21

ACCEPTED MANUSCRIPT

CR IP T

REVISED MANUSCRIPT

(b)

(c)

ED

M

AN US

(a)

(d)

PT

Fig. 5. Numerical results for 5×5 grid mesh network in Fig. 4. Note that subfigures (b)(c)(d) are for NACU only. In the first test, we fix  =8 and T = 1s. Fig. 5(a) shows the utility by NACU algorithm, optimal_NC, optimal_non-NC,

CE

and NACU_descrete-time, respectively. Specifically, the utility by the four algorithms are -12.045, -12.122, -21.701, and -12.983 respectively. It can be seen that the utility by NACU is very close to that by optimal_NC. Again, for NACU to work in discrete-time networks, it is seen that transmission collisions cause certain decrease in network utility

AC

(see the curve for NACU_discrete-time). Fig. 5(b) shows the convergence of flow rates for different sessions. It can be seen that the flow rate for each session converges to a stable value and the flow rates for the four sessions are 0.3301Mbps, 0.3318Mbps, 0.3385Mbps, and 0.3382Mbps, respectively, which are almost the same. This is because the four sessions in Fig. 4 show very good symmetry and furthermore they share the same utility function. These approximately-equal flow rates also reveal that the network utility in this network achieves the maximum when coding opportunities are fully utilized.

22

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

In the second test, we observe how the utility by NACU changes with  and T. We first set T = 1s and chose the scalar  to be 1, 2, 4, 8, 16, 32, and 64, respectively. Fig. 5(c) shows that network utility increases with the increase of . Fig. 5(d) shows the total utility due to different Ts when  = 8. It is seen that the network utility increases with T. Conclusion In this paper, we study the network utility maximization problem for wireless multihop networks when inter-session network coding and adaptive CSMA is adopted. For this purpose, we proposed a distributed network-coding-based adaptive CSMA algorithm. We presented design details of the algorithm. We proved its convergence and analyzed its

CR IP T

optimality when coding combinations/patterns at nodes are determined. Simulation results validate our analytical results. Acknowledgment

This work was supported partially by the National Natural Science Foundation of China under grants 61471339,

AN US

61531006, 61173158.

REFERENCES [1] S. H. Low and D. E. Lapsley, “Optimization Flow Control, I: Basic Algorithm and Convergence,” IEEE/ACM Transactions on Networking, vol. 7(6), pp. 861-874, Dec. 1999.

M

[2] M. Chiang, S. H. Low, R. A. Calderbank, J. C. Doyle, “Layering as optimization decomposition - A mathematical theory of network architectures,” Proceedings of the IEEE, vol. 95(1), pp. 255-312, Jan. 2007.

ED

[3] X. Lin, N. B. Shroff, and R. Srikant, “On the connection-level stability of congestion-controlled communication networks,” IEEE Transactions on Information Theory, vol. 54(5), pp. 2317-2338, May 2008. [4] A. Ferragut and F. Paganini, “Network Resource Allocation for Users With Multiple connections fairness and stability,” IEEE/ACM Transactions on Networking, vol. 22(2), pp. 349-362, Apr. 2014.

PT

[5] R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung, “Network information flow,” IEEE Transactions on Information Theory, vol. 46(4), pp. 1204-1216, July 2000.

CE

[6] S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard, and J. Crowcroft, “XORs in the air: practical wireless network coding,” in Proc. of ACM SIGCOMM’06, Pisa, Italy, pp. 243-254, Sep. 2006. [7] J. Le, J. C. S. Lui, and D. M. Chiu, “DCAR: Distributed coding-aware routing in wireless networks,” in Proc. of IEEE ICDCS’08, Beijing, China, pp. 462-469, June 2008.

AC

[8] Y.Yan, B. Zhang, J. Zheng, and J. Ma, “CORE: A coding-aware opportunistic routing mechanism for wireless mesh networks,” IEEE Wireless Communications, vol. 17(3), pp. 96-103, June 2010. [9] J. Islam and P. K. Singh, “CORMEN: coding-aware opportunistic routing in wireless mess network,” Journal of Computing, vol. 2(6), pp. 71-77, 2010. [10] L. Jiang and J. Walrand, “A Distributed CSMA Algorithm for Throughput and Utility Maximization in wireless networks,” IEEE/ACM Transactions on Networking, vol. 18(3), pp. 960-972, June 2010. [11] S. C. Liew, C. H. Kai, H. C. Leung, and P. Wong, “Back-of-the-envelope computation of throughput distributions in CSMA wireless networks,” IEEE Transactions on Mobile Computing, vol. 9(9), pp. 1319-1331, May 2010.

23

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

[12] X. Wang and K. Kar, “Throughput Modelling and Fairness Issues in CSMA/CA Based Ad-Hoc Networks,” in Proc. of INFOCOM’05, Miami, FL, pp. 23-31, Mar. 2005. [13] Y. Yan, B. Zhang, Z. Zhao, X. Shen, and J. Ma, “Mechanism for maximizing area-centric coding gains in wireless multihop networks,” in Proc. of IEEE ICC’09, Dersden, Germany, pp. 319-323, June 2009. [14] Y. Wu and S.Y Kung, “Distributed utility maximization for network coding based multicasting: A shortest path approach”, IEEE J. Sel. Areas Comm., vol. 24(8), pp. 1475-1488, Aug. 2006. [15] H. Seferoglu and A. Markopoulou, “Network Coding-Aware Queue Management for TCP Flows Over Coded Wireless Networks,” IEEE/ACM Transactions on Networking, vol. 22(4), pp. 1297-1310, Aug. 2014.

CR IP T

[16] A. Khreishah, C.-C. Wang, and N. B. Shroff “Cross-Layer Optimization for Wireless Multihop Networks with Pairwise Intersession Network Coding,” IEEE J. Sel. Areas Comm., vol. 27(5), pp. 606-621, June 2009. [17] H. Seferoglu, A. Markopoulou, and K. K. Ramakrishnan, “I2NC: Intra- and inter-session network coding for unicast flows in wireless networks,” in Proc. of IEEE INFOCOM’11, Shanghai, China, pp. 1035-1043, Apr. 2011. [18] L. Chen, T. Ho, and M. Chiang, “Congestion Control for Multicast Flows With Network Coding” IEEE Transactions on Information Theory, vol. 58(9), pp. 5908-5921, Sep. 2012.

AN US

[19] C. Zhao, Y. Luo, F. Chen, J. Zhang, and R. Wang, “Energy Effective Congestion Control for Multicast with Network Coding in Wireless Ad Hoc Network,” Mathematical Problems in Engineering, vol. 2014, Article ID 135945, 12 pages, 2014. [20] J.-S. Liu and C.-H. R. Lin, “Cross-layer optimization for performance trade-off in network code-based wireless multi-hop networks,” Computer Communications, Vol. 52, pp. 89-101, Oct. 2014. [21] J. Ni, B. Tan, and R. Srikant, “Q-CSMA: Queue-Length-Based CSMA/CA Algorithms for Achieving Maximum Throughput and Low Delay in Wireless Networks,” IEEE/ACM Transactions on Networking, vol. 20(3), pp. 825836, June 2012.

M

[22] S.-Y. Yun, J. Shin, and Y. Yi, “CSMA over time-varying channels: optimality, uniqueness and limited backoff rate,” in Proc. of ACM MobiHoc’13, New York, NY, pp. 137-146, July 2013.

ED

[23] C. Kai and S. Zhang, “Throughput Analysis of CSMA Wireless Networks with Finite Offered-load,” in Proc. of IEEE ICC’13, Budapest, Hungary, pp. 6101-6106, June 2013. [24] J. G. Choi, C. Joo, J. Zhang, and N. B. Shroff, “Distributed Link Scheduling Under SINR Model in multihop wireless networks,” IEEE/ACM Transactions on Networking, vol. 22(4), pp. 1204-1217, Aug. 2014.

PT

[25] H. Jang, S. Y. Yun, J. Shin, Y. Yi, “Distributed Learning for Utility Maximization over CSMA-based Wireless Multihop Networks,” in Proc. of IEEE INFOCOM’14, Toronto, ON, Canada, pp. 280-288, May 2014.

CE

[26] R. Koetter and M. Medard, “An algebraic approach to network coding,” IEEE/ACM Transactions on Networking, vol. 11(5), pp. 782-795, Oct. 2003.

AC

[27] C.-T. Chen, Linear System Theory and Design(3rd ed.), Oxford University Press, 1999.

24

ACCEPTED MANUSCRIPT

REVISED MANUSCRIPT

CR IP T

Author Bio

M

AN US

Tao Wang received the B.S. degree in Automation from Zhongnan University, China, in 2007 and MSc. Degree from Tianjin University in 2009. From 2009 to 2013, he was an Engineer with Huawei Tech. He is currently working towards the Ph.D degree in Computer Application Technology in the University of Chinese Academy of Sciences, Beijing, China. His research fields include wireless networking and applications.

AC

CE

PT

ED

Baoxian Zhang received his Ph.D degree in Electrical Engineering from Northern Jiaotong University, China, in 2000. He is currently a Full Professor with the Research Center of Ubiquitous Sensor Networks at the University of Chinese Academy of Sciences (UCAS), Beijing, China. Prior joining UCAS, he was a Research Scientist with School of Information Technology and Engineering, University of Ottawa, Canada from 2002 to 2005. From 2001 to 2002, he was a Postdoctoral Fellow with Department of Electrical and Computer Engineering, Queen’s University, Kingston, Canada. He is currently an Associate Editor of IEEE Systems Journal and has served as Guest Editors of several special issues including IEEE Journal on Selected Areas in Communications and Elsevier Ad Hoc Networks Journal. He has served on technical program committees for many international conferences and symposia. He has published over 150 refereed technical papers in archival journals and conference proceedings. His research interests cover network protocol and algorithm design, wireless ad hoc and sensor networks, Internet of Things, IP networks. Dr. Zhang is a senior member of the IEEE (2012).

25

ACCEPTED MANUSCRIPT

CR IP T

REVISED MANUSCRIPT

PT

ED

M

AN US

Zheng Yao received his B.S. degree in Computer Science and Engineering from Xi’an Jiaotong University in 1991, and received his MS and Ph.D degree in Computer Application from Harbin Institute of Technology, China, in 1994 and 1997, respectively. He is currently a Full Professor with Research Center of Ubiquitous Sensor Networks, University of Chinese Academy of Sciences. He has published over 20 papers in archival journals and conference proceedings. His research interests covers software engineering, open source software, wireless sensor networks, and Internet of Things.

AC

CE

Hussein Mouftah joined the School of Electrical Engineering and Computer Science of the University of Ottawa in September 2002 as a Tier 1 Canada Research Chair, where he became a University Distinguished Professor in 2006. He has been with the Department of Electrical and Computer Engineering at Queen's University (1979-2002), where he was prior to his departure a Full Professor and the Department Associate Head. He served as Editor-in-Chief of the IEEE Communications Magazine (1995-97) and IEEE Communications Society Director of Magazines (1998-99), Chair of the Awards Committee (2002-2003), Member of the Board of Governors (1997-2000 and 2006-), Director of Education (2006-). He is the author or coauthor of 1000 technical papers, 7 books and 48 book chapters. He is the recipient of the 1989 Engineering Medal for Research and Development from the Association of Professional Engineers of Ontario and of the 2002 Ontario Distinguished Researcher Award of the Ontario Innovation Trust. He has received 12 Outstanding/Best Paper Awards. Dr. Mouftah is a Fellow of the IEEE (1990), the Canadian Academy of Engineering (2003) and Engineering Institute of Canada (2005).

26