Oct 4, 2010 -
1
Performance of wireless network coding: motivating small encoding numbers
arXiv:1010.0630v1 [cs.NI] 4 Oct 2010
Petteri Mannersalo, Member, IEEE, Georgios S. Paschos and Lazaros Gkatzikis, Student Member, IEEE
Abstract—This paper focuses on a particular transmission scheme called local network coding, which has been reported to provide significant performance gains in practical wireless networks. The performance of this scheme strongly depends on the network topology and thus on the locations of the wireless nodes. Also, it has been shown previously that finding the encoding strategy, which achieves maximum performance, requires complex calculations to be undertaken by the wireless node in real-time. Both deterministic and random point pattern are explored and using the Boolean connectivity model we provide upper bounds for the maximum coding number, i.e., the number of packets that can be combined such that the corresponding receivers are able to decode. For the models studied, this upper bound is of √ order of N , where N denotes the (mean) number of neighbors. Moreover, achievable coding numbers are provided for gridlike networks. We also calculate the multiplicative constants that determine the gain in case of a small network. Building on the above results, we provide an analytic expression for the upper bound of the efficiency of local network coding. The conveyed message is that it is favorable to reduce computational complexity by relying only on small encoding numbers since the resulting expected throughput loss is negligible. Index Terms—encoding number, network coding, random networks, wireless
I. I NTRODUCTION Network coding is an exciting new technique promising to improve the limits of transferring information in wireless networks. The basic idea is to combine packets that travel along similar paths in order to achieve the multicast capacity of networks. The network coding scheme called local network coding was one of the first practical implementations able to showcase throughput benefits, see COPE in [11]. The idea of local network coding is to encode packets belonging to different flows whenever it is possible for these packets to be decoded at the next hop. The simplicity of the idea gave hopes for its efficient application in a real-world wireless router. In the simple Alice-relay-Bob scenario, the relay XORs outgoing packets while Alice and Bob use their own packets as keys for decoding. The whole procedure offers a throughput improvement of 4/3 by eliminating one unnecessary transmission. Local network coding has been enhanced with the functionality of opportunistic listen. The wireless terminals are exposed to information traversing the channel, and [11] proposed a smart way to make the best of this inherent broadcast property of the wireless channel. Particularly, each terminal operates in always-on mode, overhearing constantly the channel and storing all overheard packets. The reception of these P. Mannersalo is with VTT, Finland. G.S. Paschos is with CERTH-ITI and L. Gkatzikis is with University of Thessaly, both in Greece.
packets is explicitly announced to an intermediate node, called the relay, which makes the encoding decisions. Finally, the relay can arbitrarily combine packets of different flows as long as the recipients have the necessary keys for decoding. Using the idea of opportunistic listen, an infinite wheel topology, where everyone listens to everyone except from the intended receiver, can benefit by an order of 2 in aggregate throughput by diminishing the downlink into a single transmission, see [4]. The wheel is a particular symmetric topology that is expected to appear rarely in real settings. Also, the above calculations take into account that all links have the same transmission rates, thus it takes the same amount of time to deliver a native (non-coded) packet or an encoded one. In addition, all possible flows are conveniently assumed to exist. This, however, is not expected to be a frequent setting in a real world network. A natural question reads: what is the expected throughput gain in an arbitrary wireless ad hoc network? The maximum gain does not come at no cost either. Deciding which packets to group together in an encoded packet is not a trivial matter as explained in [4], in ER [17] and in CLONE [16]. In the latter case, the medium is assumed to be lossy, and the goal is to find the optimal pattern of retransmissions in order to maximize throughput. In the first case, a queue-length based algorithm is proposed for end-toend encoding of symmetric flows (i.e. flows that one’s sender is the other’s destination and the other way around.). All these decision-making problems are formulated as follows. Denote N (fi ) the set of nodes in need of a packet belonging to flow fi and H(fi ) the set of nodes having it. Then the encoded combination of two packets belonging to flows fi and fj can be decoded successfully if and only if N (fi ) ⊆ H(fj ) and N (fj ) ⊆ H(fi ). If this condition is true we draw an edge on the coding graph with vertices all the possible packets. Then finding the optimal encoding scheme is reduced to finding a minimum clique partition of the coding graph, a commonly known NP-hard problem, [17]. Moreover, the same complexity appears when the relay node makes scheduling decisions, i.e., selecting which packets to serve and with what combinations. Work related to index coding has shown that this problem can be reduced to the boolean satifyability problem (SAT problem), [5]. Thus a second question arises: what is the loss in throughput gain if instead of searching over all possible encoded packet combinations, we restrict our search in combinations of size at most m? In this paper we are interested in showing that, for a real ad hoc wireless network, opportunities for large encoding combinations rarely appear. To show this, we consider regular topologies like grids as well as random ones. We calculate
2
the maximum encoding number in these scenarios in the mean sense and we consider small as well as large networks. To capture the behaviour of large (or dense) networks, we examine the scaling laws of maximum encoding number. Scaling laws are of extreme interest for the network community in general. Although they hold asymptotically, they provide valuable insights to the system designers. In this direction, the authors in [18] study the wireless networks scaling capacity in a Gupta-Kumar way taking into account complex field NC. [10] also examines the use of NC for scaling capacity of wireless networks. They find that NC cannot improve the order of throughput, i.e. the O √1n law prevails. [1] discusses the issue of scaling NC gain in terms of delays while [12] identifies the energy benefits of NC both for single multicast session as well as for multiple unicast sessions. In [8], NC is used instead of power control and the benefits are characterized. In a similar spirit, [13] investigates the use of rate adaptation for wireless networks with intersession NC. Utilizing rate adaptation, it is possible to change the connectivity and increase or decrease the number of neighbors per node. They identify domains of throughput benefits for such case. The most relevant work in the field is [9]. The authors analyze the maximum coding number, i.e., the maximum number of packets that can be encoded together such that the corresponding receivers are able to decode. They show that this number scales with the ratio Rδ where δ is a region outside the communication region and inside the interference region. Note however, that this work does not yield any geometric property for the frequency of large combinations since it relies only on specific protocol characteristics. In networks with small δ, e.g., whenever a hard decoding rule is applied, there is no bound for the maximum coding number. In this paper we study the problem from a totally different point of view, showing that there exist inherent geometric properties bounding the maximum coding number below a number relative to the population or density of nodes. Moreover, we apply the Boolean connectivity model for which δ = 0, and thus the previous result does not provide any bound at all. We show that the upper bound of the maximum coding number is related to a convexity property that any valid combination has. We start by considering a fixed separation distance network, like a square grid, and show √ that in such √ networks, the maximum coding number is O( N ) and Ω( 4 N ),1 where N is the number of nodes in transmission range of the relay. This implies that, even in networks with canonically placed nodes, the maximum coding combination is line-shaped even though the set of all nodes live in 2-dimensions. Next we study a random network where the locations of the nodes follow a Poisson point process on the plane. In this case, the maximum encoding number is found to be bounded in probability by 1 O(λ 2 + ), where λ is the node density and > 0 arbitrary. Finally we consider the case where the encoder searches for 1 The symbol O() denotes that the function is bounded above by some linear function of the expression in the brackets whereas Ω() denotes that the expression is bounded from below.
R
v0 V network
Fig. 1. The set of valid nodes V is selected inside the disk of radius R and origin the location of v0 .
combinations of at most size m < N . We show that the throughput efficiency loss in this case depends on the size of the network, and for small networks the loss can be negligible. This way we motivate heuristic algorithms that avoid the high complexity arising in encoding selection. Through extensive simulations we show that all the derived results hold in general even for small networks. The paper is organized as follows. In Section II, the model is described and some basic properties are given. In Section III, the main results for the case of grid-like networks are derived. Then in Section IV the case of randomly positioned networks is considered. A rate analysis is provided in Section V and simulation results are shown in Section VI. The paper is concluded in Section VII. II. C OMMUNICATION MODEL We assume a set of nodes V, positioned on the plane. Communications between these nodes are established via the Boolean interference model (see, e.g., [7]). In this model, a link between two nodes {vi , vj } is realized if and only if |X(vi ) − X(vj )| ≤ R. In this case, we say that vi is connected with vj and vice versa. Note that the Boolean interference model is an undirected graph in the sense that only bi-directional links appear. A. Information flow Each node vi having degree deg (vi ) > 1, apart from transmitting and receiving, relays information. In this process, it is possible to avoid unnecessary transmissions by employing local network coding. To simplify the analysis, we will consider only one cell, i.e., we will focus on a given node v0 , and all its neighbors, and calculate the network coding gain on the downlink of this node. A similar result, then, holds for any such node serving as a relay. Thus we restrict V to contain all neighbors of v0 , with V = {v1 , v2 , . . . , vN } and . N = |V| the number of nodes under consideration. For a network determined by a Poisson point process with density λ, we use correspondingly the mean number of points which is given by E[N ] = λπR2 . The main objective of this paper is to find how the maximum coding number and the maximum network coding gain scale with the number of nodes. Also we
3
will provide bounds for the scaling constants which are useful for determining the behaviour in small networks. Apart from the number of neighbors, the gain analysis depends also on the activated flows. In the simple Alice– relay–Bob topology, it is possible that only the flow going from Alice to Bob is activated, in which case the gain is zero. In this paper we are interested in determining an upper bound for the efficiency loss when the relay is constrained on combinations of size m < N (e.g. if m = 2 the system is constrained to pairwise XORing). For this reason, we consider the maximum gain scenario. For each node designated as a relay, we assume that all possible two–hop flows traversing this relay are activated. This means that each node designated as a relay, has all possible different packets from which to select an XOR combination to send to the neighbors. Since not all of those combinations are valid, finding the maximum valid combination that corresponds to the maximum coding number is a non-trivial task and will be the goal of this paper. The resulting bound will help characterize the efficiency loss due to resorting to m-wise encoding. In real systems, some flows might not be active in which case the resulting efficiency loss from m-wise encoding will be even smaller. To make this more precise, similar to [17], we define sourcedestination pairs designating 2–hop flows that cross the relay. Each flow f ∈ F has a source S(f ), a destination D(f ), a set of nodes having it H(f ) ⊂ V (either by overhearing or ownership) and a set of nodes needing it N (f ) ⊂ V. We write ⊂ because at least one node, the destination D(f ) or the source S(f ), is not part of H(f ) and N (f ) correspondingly. Two flows f1 , f2 are called symmetric when they satisfy the property S(f1 ) = D(f2 ) and D(f1 ) = S(f2 ). B. Constraints Here we summarize the previous subsection in the form of constraints. We will focus on network coding opportunities appearing in the aforementioned arbitrary network around the relay v0 . Definition 1. (valid node): A node vi ∈ V is a valid node if |X(vi ) − X(v0 )| ≤ R. Definition 2. (valid flow): A flow f ∈ F is a valid flow if S(f ) and D(f ) are valid nodes not neighboring with each other, i.e., |X(S(f )) − X(D(f ))| > R. Definition 3. (valid combination): A subet of flows C ⊆ F with C = {f1 , f2 , . . . , fC }, where C = |C|, is a valid combination if • each flow fi ∈ C is a valid flow, • every pair of flows fi , fj ∈ C, fi 6= fj satisfies N (fi ) ⊆ H(fj ) and N (fj ) ⊆ H(fi ) or equivalently, S(fi ) is connected with D(fj ) while S(fj ) is connected with D(fi ). We define the maximum coding number Cmax as the greatest cardinality among all valid sets C. If the positions of the network are random, Cmax is evidently a random variable. Note that we could impose additional constraints. For example, if a flow can be routed more efficiently by a node other
than v0 , then this flow should be excluded from the set of valid flows. This would restrict further the set of valid combinations and thus by omitting this constraint we derive an upper bound for Cmax . Next, we state some fundamental properties of the valid combinations. For each flow f belonging to a valid combination C we have • D(f ) ∈ N (f ), • D(f ) ∈ H(j) for all j ∈ C \ {f }, which leads us to the following properties. Remark 1. The destination node of fi ∈ C is different from the destination node of any other flow fj ∈ C \ {fi }. Remark 2. The source node of fi ∈ C is different from the source node of any other flow fj ∈ C \ {fi }. Next, we provide a result on the topology for a valid combination. Let XC represent the set of locations of all nodes being the source or destination of a flow belonging to a combination C. Lemma 1. Any valid combination of size 3 or larger corresponds to a convex polygon (the polygon is formed using the set XC as edges). Proof: Consider a valid combination defined by flows C = {fi , i = 1, . . . , C} , where C ≥ 3. Consider also the set of nodes that are sources and/or destinations in C VC = ∪i S(fi ) ∪i D(fi ) and the induced set of locations XC such that we have a bijective mapping for each element vj ∈ VC with an element X(vj ) ∈ XC . Assume that there is a node vj ∈ VC which is an interior point of the convex hull2 P of XC . Thus its location P Xj = X(vj ) can be written as Xj = i6=j αi Xi where i6=j αi = 1 and αi ≥ 0 for all i. On the other hand, there is a unique vj ∗ ∈ VC , which is the communicating pair (source or destination) of vj in at least one flow, so that |Xj − Xj ∗ | > R. (1) All the other nodes (destinations or sources) in VC should be able to reach the node vj ∗ directly. Thus, X X |Xj − Xj ∗ | ≤ αi |Xi − Xj ∗ | ≤ αi R ≤ R, i6=j
i6=j
which is a contradiction to (1). Consequently the node vj , as well as all other nodes of the combination, necessarily lie on the perimeter of the convex hull. Thus, the nodes of a valid combination are the vertices of a convex polygon. When the set of sources is identical to the set of destinations, the combination consists of symmetric flows only and C = 2(|V 0 | − 1), V 0 ⊆ V. 2 The
convex hull of points X is the minimal convex set containing X .
4
In order to calculate an upper bound of the network coding combination size, it is enough to resort to the case of symmetric flows. Lemma 2. For any valid combination there exists at least one combination of the same or larger size that contains only symmetric flows. Proof: We will show that for any flow we can add the symmetric one without invalidating the combination as long as it is not already counted. In a bipartite graph with all the nodes V on one side and the destinations of C on the other, consider a directional link `f , between the source of flow f and its destination, for each f ∈ C. Note now that the nodes having out-degree one, i.e., the active sources in C, may or may not be identical to one of the destination nodes. We can make a partition of the set of active sources by assigning those with the above property to the set Tsym and the rest to the complementary set Tsym . If Tsym = ∅, then the Lemma is proved since C is a valid combination with symmetric flows only. If not, then we can create a new combination C 0 which has more flows than the original one using the following process. For each transmitter in Tsym , say S(fi ) the transmitter of flow fi , add one extra flow fi0 with S(fi0 ) = D(fi ) and D(fi0 ) = S(fi ). This flow does not belong to C (because S(fi ) ∈ Tsym ) and it does not invalidate the combination due to the bidirectional properties of the model. Note that fi0 is a valid flow because S(fi0 ) cannot be connected to D(fi0 ) due to validity of fi . Note also that S(fi0 ) is connected to D(f ) for all f ∈ C since this is again required for the decoding of the original flows. Thus, for any flow we can add the symmetric one without invalidating the combination. Remark 3. If a valid combination consists of symmetric flows only, its size must be even. In graph theory terms, a valid combination with symmetric flows can be thought of as a graph created by a clique of C +1 nodes, minus a matching with C2 edges, with all symmetric flows defined by this matching activated. This graph is called in [11] wheel topology. III. A NALYSIS IN GRID - LIKE TOPOLOGIES In this section we focus on positioning the nodes on a grid. Grid topologies often offer an insightful first step approach towards the random positioning behaviour. Also, the investigation of grids answers the question whether it is possible to achieve high NC gain by arranging the locations of the nodes. We therefore assume a network with the additional property |X(vi ) − X(vj )| ≥ d, for any pair of nodes vi , vj ∈ V. This condition pertains to regular grids such as the square, the triangular and the hexagonal grid as well as other grids with non-uniform geometry. We impose nevertheless the property that the node density is the same over all cells and thus the geometry should be somehow homogeneous. The number of 2 nodes inside a disk or radius R will be N = O ( R ) for d grid these networks and the corresponding node density λ = O ( d1 )2 .
Theorem 1. (Upper bound) The coding number in √maximum N where N is the number fixed-separation networks is O √ of nodes or equivalently O λgrid . Proof: From Lemma 1 we know that the nodes belonging to the maximum combination form a convex polygon. Any such polygon fitting inside the disk of radius R must have perimeter smaller than 2πR. Since the nodes on the perimeter should be at least d away from each other, we conclude that the maximum coding number is 2πR . d 2 This combined with N = O R or respectively λgrid = d O ( d1 )2 yields the result. A particular case of the above bound is the square grid. R 2 R The number of nodes inside the disk is N = π + e d d √ R R where e d ≤ 2 2π d is an error decreasing linearly with d. Thus we obtain an upper bound √ square Cmax < 4πN . Cmax
R2 }, note that each node is R2 + from the center and thus the desired connectivity properties are satisfied for all nodes on the cyclic group. In this case, we can calculate the number of nodes in the group as $ % 2π cyclic Cmax = , 2 arccos 1 − 2d R2 which for large √ N is bounded from below by some linear function of N . For the cyclic grid when rem (R, 2d) → d: Now each node is R2 + d − away from the center and thus we need to select those nodes satisfying the property of valid combination. For this it is enough that we leave an empty angle φ such that if AOB is a diameter and AOC this angle, then CB ≤ R. By solving this for the maximum number of points satisfying this property we get 2π cyclic Cmax = , R2 arccos − 1 2 2( R 2 +d) which for large √ N is bounded from below by some linear function of 4 N . For the square grid: we construct a ring around the circle of R2 radius. The width of the ring is δ wide enough to fit a whole squre of dimensions d × d. Such a square is bound to contain exactly one node of the grid. Using Figure 2, and the triangles relative to the small square, we calculate δ as p R2 + d(5d + 4R) − R δ= . 2
Thus we can show that d ≤ δ ≤ 3d 2 . If we use the largest possible value that guarantees that the ring contains one node at each step, namely δ = 1.5d, we can compute the angle that contains at least one node, which is of the order of d: ! √ 2d . φ(δ) = arcsin √ d2 + R2 Finally, we compute the angle which should be left empty in the valid combination such that any node outside this angle is reachable by the most distant node (the one at the bottom). R ω(δ) = arcsin √ . 2(R + 1.5d) √ This angle is of the order of d. Finally an achievable combination is obtained if we alternate φ and ω until we fill the circle. 2π square , Cmax = φ(δ) + ω(δ) √ which is bounded from below by a linear function of 4 N . Note that the sparseness of the combination is due to ω(δ) and a possible reasoning is that the bound is constructed to cover all the cases, thus also the case that the uncomfortable positioning of nodes matches the second case of the cyclic grid above. In [2], relative results on convex polygons in constrained sets√ guarantee the existence of convex polygons of size Ω( 4 N ) when the N thrown nodes are kept seperated by some distance. IV. S TOCHASTIC ANALYSIS Assume that the locations of the nodes are determined by a Poisson point process with density λ. The connectivity properties of this model are well studied in the literature (see e.g. [15], [6]). In our work, we assume that the network is percolating, i.e. the nodes are dense enough to ensure multihop communications. As in the deterministic case, we assume that a relay is located at the origin. For a Poisson point process this assumption does not change the distribution of the other points. The main result is an upper bound in probability for the maximum coding number. Theorem 3. In a random network determined by a Poisson point process with density λ, the maximum coding number corresponding to combinations having the relay at the origin satisfies lim P Cmax (λ) = O(λ1/2+ ) = 1, λ→∞
for any > 0. Proof: Cover the disk of radius R around the origin by disjoint boxes of size √1λ × √1λ . The number of nodes inside the boxes is denoted by Ni , i = 1, . . . , n(λ). The Ni are identically and independently Poisson(1) distributed and thus there is a sequence In such that lim P max Ni = In or In + 1 = 1, n→∞
1≤i≤n
6
where In = O
lim P
λ→∞
log n log log n
(see [3], [14]). Since n(λ) = O(λ), log λ max Ni = O = 1. (3) log log λ i=1,...,n(λ)
Next consider a valid combination. By Lemma 1, the nodes of the combination form a convex polygon. The perimeter of any convex polygon is at most 2πR because√it is located inside the disk of radius R. Since at most O( λ) boxes of size √1 × √1 are needed to cover the perimeter of any convex λ λ polygon, √ Cmax (λ) ≤ max Ni O( λ) a.s. i=1,...,n(λ)
This implies that √ P Cmax (λ) ≤ O( λg(λ)) ≥ P
Fig. 3. Coding combination examples for Cmax = 6 and Cmax = 8 in a square grid with N = 81.
M a x im u m
max i=1,...,n(λ)
Ni ≤ O (g(λ)) .
Setting g(λ) = log λ/ log log λ, applying equation (3) and finally noticing that log λ/ log log λ = O (λ ) for any > 0 completes the proof.
c o d in g n u m b e r
U p p e r b o u n d S im u la tio n L o w e r b o u n d 1 0
V. R ATE EFFICIENCY OF A NETWORK CODING COMBINATION
We will focus on the downlink of a valid combination of size C. Without loss of generality, assume that the rate vector r = {ri }i=1,2,...,C is ordered, i.e., r1 < r2 < · · · < rC , and that the flow set is permuted accordingly so that over the link (v0 , D(fi )) packets are transfered at a rate ri . The data rate is computed as the number of packets of size P transmitted in a virtual frame over the time needed for these transmissions. Since an encoded packet is always transmitted at the lowest rate decodable by all receivers and assuming max-min fair allocation3 , we can deduce the maximum throughput rate with network coding as rNC (C) =
CP P min{r}
rw (C) =
P r1
P rC
=C
C X 1 r i=1 i
i=1
!−1 = rh ,
CP P rm(i−1)+1
P + 1{rem(C,m)>0} rC−rem(C,m)+1 −1
C bm c+1{rem(C,m)>0} X =C i=1
4 0
6 0
8 0
1 0 0
N u m b e r o f N o d e s (N ) Fig. 4. Simulation of maximum coding number of a square grid inside a disk with N nodes. Cmax is the upper bound and Cmin is the achievable lower bound provided in the theoretical analysis.
Next, we derive the network coding gain for the maximum combination (C) and for the constrained group (m ≤ C).
Note that the gain is a linear function of C and depends on the particularities of the rate vector. Also,
where rh is the harmonic mean of r. Choosing any m ≤ C and allowing for combinations of size m at most, it is easy to see that if the criteria for valid combinations are fulfilled for combination of size C then they are fulfilled for all subsets. The corresponding achievable rate is rm (C) = P C bmc
2 0
r1 . rNC (C) g(C) = =C . rw (C) rh
= Cr1 .
The rate without NC would be CP P + r2 + · · · +
1
1 rm(i−1)+1
,
3 This condition of fairness provides the best network coding opportunities and it is usually the balance point where network coding gain is computed in multiclass networks.
. rm (C) = gm (C) = rw (C) −1 C bm c+1{rem(C,m)>0} X C 1 = rh r m(i−1)+1 i=1 C ≥ rh
C !−1 m
r1
≥ (m − 1)
r1 , rh
where in the first inequality we have used that r1 is the minimum rate, and in the second we have used m−1 ≤ C ≤ m. C dm e If we choose equal rates, then we readily get g(C) = C and max {gm (C)} = m as the maximum gain for both. Finally we can symbolize that g(C) = Θ(C) and moreover the difference g(C) − gm (C) = O(C √ − m). Therefore, the efficiency loss is of the order of N − m which means that for carefully chosen m, the loss can be kept small.
7
P ro b a b ility o f e x is te n c e o f a t le a s t o n e c o m b in a tio n C 1 .0
0 .8
C = 2
C = 4
0 .6
0 .4
0 .2
Fig. 5. Maximum coding combination examples for Cmax = 6 and Cmax = 8 in a uniformly thrown network with N = 21 and N = 70 respectively.
C = 8
C = 6 0 .0 1 0
2 0
3 0
4 0
5 0
N u m b e r o f N o d e s (N ) M e a n M a x im u m 8
c o d in g n u m b e r Fig. 7. Probability of existence of at least one coding combination of size C in a network of N uniformly thrown nodes.
S im u la tio n 7
N
1 /2
6 5 4 3 2 1 0 1 0
2 0
3 0
4 0
5 0
N u m b e r o f N o d e s (N ) Fig. 6. Mean maximum coding number in a network of N uniformly thrown nodes.
VI. N UMERICAL RESULTS In this section we present some simulation results that provide further evidence and insight for our work. For simulation purposes we consider a disk of radius R = 1 and a node v0 serving as a relay situated at the center of the disk. Initially we consider a square grid of nodes over this disk and we investigate the maximum coding number, i.e., a set of nodes that satisfies the constraints of section II. Then, the scenario of uniformly random thrown nodes is considered.
showcased in Figure 5. It is noted from these examples that large combinations tend to appear in a δ–ring form where the inner side of the ring is a disk of radius R2 and the outer side is a disk of radius R2 + δ. In Figure 6, we present the mean maximum coding number, for different number of nodes N . In each sample, the maximum coding number is calculated and the mean√is obtained by averaging over 1000 random samples. The O( N ) behavior is depicted in this picture. Figure 7 shows the probability of existence of at least one coding combination of size C in a network of N uniformly thrown nodes. For example, the maximum component size for 20 ≤ N ≤ 50 is either 4 or 6 in the majority of cases. The simulation results show that in real networks of moderate size the usual combination size is quite small. The multiplicative constant seems to be close to 1. In this context, the focus should be on developing efficient algorithms that opportunistically exploit local network coding over a wide span of topologies using small XOR combinations rather than attempting to solve complex combinatorial problems in order to find the best combinations available. C. A realistic scenario
A. Experiments with square grids Figure 3 showcases examples of combination size C = 6 and C = 8 (the maximum is 8 in this case). During these experiments we identified an interesting property. We noticed that the maximum coding number depends only on the number of nodes inside the disk and not on the actual d used. In particular, for all {d : N is fixed}, Cmax is constant. In Figure 4 we present the results for the square grid. The actual values seem to be closer to the √ lower bound than to the upper, leading to an order closer to 4 N (notice the logarithmic scale of the figure). Nevertheless, the oscillating effect due to the interplay between the radius and the number of nodes is evident. B. Experiments with randomly positioned nodes Next, we throw N nodes uniformly inside the disk of radius R = 1. Examples of maximum coding number are
Next, we set up a realistic experiment to be run in simulation environment. A relay node is positioned at the origin, willing to forward any traffic required and apply NC if beneficial. Then, we throw N2 pairs of nodes randomly inside the disk defined by the relay and the communication distance R; note that all nodes are valid nodes. Each pair constitutes a symmetric flow. Each flow may be valid or invalid depending on the distance between the two nodes, see definition in section II. Whenever the flow is invalid, the nodes communicate directly by exchanging two packets over two slots (one for each direction). If the flow is valid, the relay is utilized to form a 2-hop linear network. Again, 2 packets are uploaded towards the relay using two slots while the downlink part is left for the end of the frame. Finally, the relay has collected a number of packets which may be combined in several ways using NC. To identify the minimum number of slots required
8
N e tw o rk c o d in g g a in
1 .2 0 1 .1 9 1 .1 8 1 .1 7 1 .1 6
m = 2 m = 4 u n c o n s tra in e d
1 .1 5 1 .1 4 1 0
2 0
3 0
4 0
N u m b e r o f p a irs (N /2 ) Fig. 8. A realistic scenario. Pairs of nodes forming flows are randomly thrown inside the disk (0, r). The relay node (situated at the origin) assists the flows that cannot communicate directly. We restrict NC combinations to size m where m = 2, 4, ∞.
to transmit those packets to the intended receivers, we solve the problem of minimum clique partition with the constraint of using cliques of size up to m 2 (equivalently, combining up to m packets together). In the above we have assumed that all links have equal transmission rates and that the arrival rates of the flows are all equal (symmetric fair point of operation). The network coding gain is calculated by dividing the number of slots used without NC by the number of slots using NC. Figure 8 depicts results from simulated random experiments. Evidently, it is enough to combine up to two packets per time in order to enjoy approximately the maximum NC gain. This example supports the intuition that in practice the network coding gain from large combinations is expected to be negligible. VII. C ONCLUSION By considering the Boolean connectivity model and applying the basic properties required for correct decoding, we showed that for the local network coding there are certain geometric constraints bounding the maximum number of packets that can be encoded together. Particularly, due to the convexity of any valid √ combination, the sizes of combinations are at most order of N for all studied network topologies. The fact that the number of packets is limited gives rise to approximate algorithms for local coding. Instead of attempting to solve the hard problem of calculating all possible coding combinations, we showed that an algorithm considering smaller combinations does not lose too much. R EFERENCES [1] E. Ahmed, A. Eryilmaz, M. Medard, and A.E. Ozdaglar. On the scaling law of network coding gains in wireless networks. In proceedings of IEEE Military Communications Conference,MILCOM, pages 1–7, 2007. [2] N. Alon, M. Katchalski, and W. R. Pulleyblank. The maximum size of a convex polygon in a restricted set of points in the plane. Discrete Comput. Geom., 4(3):245–251, 1989. [3] C. W. Anderson. Extreme value theory for a class of discrete distributions with applications to some stochastic processes. Journal of Applied Probability, 7:99–113, 1970.
[4] P. Chaporkar and A. Proutiere. Adaptive Network Coding and Scheduling for Maximizing Throughput in Wireless Networks. In ACM MOBICOM, 2007. [5] M. A. R. Chaudhry and A. Sprintson. Efficient algorithms for index coding. In proceedings of IEEE 27th Conference on Computer Communications (INFOCOM), 2008. [6] O. Dousse, P. Thiran, and M. Hassler. Connectivity in ad hoc and hybrid networks. In Proceedings of IEEE Infocom 2002. IEEE Computer Society, 2002. [7] M. Franceschetti and R. Meester. Random Networks for Communication: From statistical Physics to Information Systems. Cambridge University Press. [8] A. Goel and S. Khanna. On the network coding advantage for wireless multicast in euclidean space. pages 64–69, apr. 2008. [9] L. Jilin, J.C.S. Lui, and M.C. Dah. How many packets can we encode? - an analysis of practical wireless network coding. In IEEE INFOCOM 2008. The 27th Conference on Computer Communications, pages 371– 375, apr 2008. [10] L. Junning, D. Goeckel, and D. Towsley. Bounds on the gain of network coding and broadcasting in wireless networks. In proceedings of IEEE INFOCOM, pages 724–732, 2007. [11] S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard, and J. Crowcroft. XORs in The Air: Practical Wireless Network Coding. In ACM SIGCOMM, 2006. [12] A. Keshavarz-Haddadt, , and R. Riedi. Bounds on the benefit of network coding: Throughput and energy saving in wireless networks. In proceedings of IEEE INFOCOM, pages 376–384, 2008. [13] Y. Kim and G. De Veciana. Is rate adaptation beneficial for inter-session network coding? Selected Areas in Communications, IEEE Journal on, 27(5):635–646, jun. 2009. [14] A.C. Kimber. A note on poisson maxima. Probability Theory and Related Fields, 63(4):551–552, 1983. [15] R. Meester and R. Roy. Continuum Percolation. Cambridge University Press. [16] S. Rayanchu, S. Sen, J. Wu, S. Banerjee, and S. Sengupta. Loss-Aware Network Coding for Unicast Wireless Sessions: Design, Implementation, and Performance Evaluation. In ACM SIGMETRICS, 2008. [17] E. Rozner, A. P. Iyer, Y. Mehta, L. Qiu, and M. Jafry. ER: Efficient Retransmission Scheme for Wireless LANs. In ACM CONEXT, 2007. [18] T. Wang and G. B. Giannakis. Capacity scaling of wireless networks with complex field network coding. Acoustics, Speech, and Signal Processing, IEEE International Conference on, 0:2425–2428, 2009.