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, mM;
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 mM 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:mM
, 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 mM. 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 p1p2, 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 cC(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 CGis 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 isIS 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 isIS. 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 iN(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
iN(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 )
mM
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
q0
(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. 55 grid mesh network
This experiment was done on a 55 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. 55 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