Crosslayer Design for Distributed MAC and Network Coding in Wireless Ad Hoc Networks Yalin Evren Sagduyu, Anthony Ephremides Electrical and Computer Engineering Department and Institute for Systems Research University of Maryland, College Park, MD 20742, USA Email: {sagduyuy, tony}@eng.umd.edu

Abstract— In this paper, we address the joint design and distributed implementation of medium access control (MAC) and network coding in wireless ad hoc networks. We consider a slotted wireless network with links modeled as classical collision channels. We assume omnidirectional packet transmissions and do not allow simultaneous transmission and reception by any node. These wireless network properties demand a new formulation of time-varying network coding with additional constraints that reflect the strong interactions with the underlying MAC operation. First, we outline how to construct network coding over a predetermined set of wireless network realizations with conflictfree transmission schedules. The wireless network realizations are separately activated using a time division mechanism and the network flows are chosen to optimize the performance measures (such as stable throughput or average energy costs) through wireless network coding. Next, we follow an alternative approach of joint wireless network coding and link scheduling with a distributed implementation. The analysis is based on decomposing wireless networks into subtrees and applying graph coloring on the simplified subtree network representations to derive the wireless network codes that are further converted to the conflict-free sets of transmission schedules. Finally, we extend network coding to operate with arbitrary single-receiver MAC protocols within each receiver’s area.

I. I NTRODUCTION The general operation of wireless networks and the resulting crosslayer interactions have not been fully developed or clearly understood yet. As a network layer problem, routing involves simply replicating and forwarding the received packets by relay nodes in multi-hop (wired or wireless) networks. Network coding extends routing by allowing relay nodes to combine the information received from multiple links in the subsequent transmissions and enables wired network connections with rates that are higher than those achieved by routing only [1]. Network coding has been extended in [2] to random operations with distributed implementation for wired networks. Network coding with omnidirectional transmissions has been studied in [3] through the use of linear programs to optimize the link costs. In addition, energy-efficient multicasting has been formulated as a network coding problem in [4]. The wireless network properties introduce new crosslayer interactions that have not been addressed in the context of wired network coding. The interdependence of MAC and network coding (or routing as a special case) requires their joint specification for efficient wireless network operation. In this paper, we study the crosslayer design possibilities for distributed implementation of joint network coding and

MAC in wireless ad hoc networks. We incorporate realistic interference and delay effects as well as practical constraints of single transceiver per node. The previous models of connection-oriented traffic are extended to the dynamic operation of multihop packet communication. In addition, we avoid link costs and model wireless performance measures such as throughput and energy jointly in terms of node costs. First, we consider the problem of constructing wireless network codes over conflict-free transmission schedules. A feasible solution can be implemented in two steps: 1. Predetermine a finite set of conflict-free wireless network realizations with the minimum (e.g. power) cost assigned to each node, 2. Assign a disjoint time fraction to each network realization and choose the flows between transmitter-receiver pairs to optimize the performance objectives (such as maximizing throughput or minimizing energy costs) achievable by network coding. The next objective is to derive the conflict-free transmission schedules jointly with the network code assignments. We follow the network coding framework of [5] based on subtree decomposition that can support omnidirectional transmissions within each subtree network. We assign network codes through vertex coloring of the simplified subtree graph while imposing the conflict-free link schedules in each subtree. We also outline how to operate network coding with arbitrary MAC protocols through the use of Group TDMA algorithm [6]. Finally, we provide numerical results that compare network coding with routing in conjunction with the proposed MAC solutions. II. W IRELESS A D H OC N ETWORK M ODEL We consider a wireless ad hoc network with omnidirectional packet transmissions that are synchronized into unit time slots. We assume multihop packet propagation in a store-andforward manner instead of continuous information flow. Each node is equipped with a single transceiver and cannot simultaneously transmit and receive packets. Therefore, it is necessary to partition the nodes into disjoint transmitter and receiver sets in any time slot. We consider circular transmission and reception ranges with sharp boundaries such that no successful transmission or interference is possible beyond those ranges. A packet transmission reaches all nodes connected to the transmitter through a single link, as shown in Figure 1-(a). Each link is modeled as a classical collision channel with three possible channel outcomes: idle, success and collision that occur, respectively, if none, one or more than one packets

(a)

(b)

f

f

f

source s

N1

N2

N3

s

s

s

s

u

t

u

t

u

t

C 6 (s,y )

(a)

w z

y

y

w z

y

y

τ1 t^

w

z

y

(a) Wireless Network Topology, (b) Network realizations N f

simultaneously reach the same receiver in the same time slot. We do not allow multiple packet transmissions (or receptions) by any node in a single time slot. We assume that nodes receive immediate feedback on the channel outcomes from their receivers through separate conflict-free channels. III. N ETWORK C ODING IN C ONJUNCTION WITH C ONFLICT-F REE S CHEDULING The following two-step solution constructs conflict-free sets of transmission schedules and specifies a periodic time allocation that optimizes the performance objectives achievable by network coding (or routing as a special case). f M }m=1 Step 1: Predetermine network realizations N f = {Nm f f M with the conflict-free sets of links E = {Em }m=1 and assign (m) the minimum cost (such as transmission power) Pi to each f node i in node set V during any network realization Nm . Step 2: Separately activate network realizations in a timedivision fashion and specify the time fractions {τm }M m=1 f M allocated to {Nm }m=1 such that network coding (or routing) chooses the network flows addressed to all destinations so as to (I) maximize the throughput r, or (II) minimize PM per destination (m) the average cost P = τ P given fixed r, where m m=1 P (m) P (m) = i∈V Pi , or (III) minimize the average cost per successfully delivered packet (or equivalently the quantity Pr ). A. Construction of Conflict-Free Network Realizations The problem of optimal link scheduling in wireless networks is NP-complete and requires extensive search over all conflict-free network realizations that partition the nodes into disjoint transmitter and receiver sets. We use the following polynomial-time heuristic to derive the network realizations: For the first network realization, we choose a node arbitrarily as receiver, and designate as the corresponding transmitter the node with the smallest power to reach the chosen receiver. We then choose arbitrarily as the second receiver a node that has not been chosen so far as either transmitter or receiver and similarly designate as its transmitter a node that has not been previously chosen as receiver and has the smallest power to reach the second receiver. We admit this new transmitterreceiver pair, if the activation of this link does not destructively interfere with the previously admitted transmitter-receiver pairs. We check whether the transmission range of the chosen transmitter includes a non-intended receiver that has been previously activated. If so, then we choose another transmitter and run the same admissibility check algorithm. We proceed in

z

C 5 (s,y )

destinations y and z

Fig. 1.

t

u C 2 (s,y )

w z

s τ 2 + τ1

t C 3 (s,y )

w

(b) C 4 (s,y )

C 7 (s,y )

u

t

C 1 (s,y )

s

Fig. 2.

C 8 (s,y )

τ2 τ1

^ s

τ1

w

τ1

τ2

u τ2 ^ u

τ3 y

C 9 (s,y )

τ3

^ w

τ3

τ2 z

(a) Cuts between nodes s and y, (b) Wired network graph N g

this fashion and determine transmitter-receiver pairs until no link can be admitted without distorting the already admitted conflict-free link assignments. Subsequently, we repeat the same procedure by choosing as receiver a node previously designated as transmitter and running the same algorithm to determine the complete set of network realizations N f = f M {Nm }m=1 , until each node is designated as transmitter and receiver at least once (with the exception of the source node that should be only activated as transmitter). An example of conflict-free network realizations is shown in Figure 1-(b). B. Time Allocation to Network Realizations Network realizations are periodically activated over disjoint time intervals. We define Ci (s, y) as the ith cut between nodes s and y. Figure 2-(a) depicts some of the cuts for the network in Figure 1-(a). For wireless networks, we define f the average cut value cN i (s, y) as the maximum number of successful transmissions (time-averaged over all network realizations N f ) across the cut Ci (s, y). The time fractions realizations can be {τm }M m=1 assigned to different network f chosen to maximize mind∈D mini cN (s, d), namely the rate i of maximum flow from source s to any node d in destination set D. To incorporate the omnidirectional transmissions, the contribution of a node to any cut is limited to at most one f per time slot, e.g. we have cN 2 (s, y) = 2τ2 for network realizations N f in Figure 1. The multicast rate to any destination achievable by network coding is given by min(2τ1 , 1−τ1 ) and maximized to 23 by the time fractions τm = 31 , m ∈ {1, 2, 3}, which also minimize the energy cost per successfully delivered 2τ1 +1 P packet, namely the quantity 2r = 2 min(2τ , to 45 , if we 1 ,1−τ1 ) consider unit energy consumption per packet transmission. C. Construction of Time-Varying Wireless Network Codes For wireless networks, we need time-varying network codes that distinguish when the packets are generated or arrive at any node and when the information is encoded or decoded. In addition, the omnidirectional transmissions impose nodebased (rather than link-based) encoding for wireless networks. We consider a periodic extension of linear wireless network (n) codes in [7] and encode the flow Ye on link e ∈ Enf as X X (m,n) (m) βe′ Ye′ (1) Ye(n) = f m6=n e′ ∈Em : head(e′ )=tail(e)

+

XX

m6=n

j

(m,n)

αj

(tail(e))X (m) (tail(e), j)

where head((s, t)) is t, tail((s, t)) is s and X (m) (tail(e), j) is the jth input flow generated by node tail(e) during network (n) f realization Nm . The routing solutions restrict the flow Ye to (m) be equal to either Ye′ or X (m) (tail(e), j). The kth output flow Z (n) (v, k) decoded by node v during network realization Nnf is given by X X (m,n) (m) ǫe′ ,k Ye′ (2) Z (n) (v, k) =

su

st ty

tw

uw

wy

wz

Dual Graph

T1

T2

s,y

s,z

y

z

T3

T4

uz

Subtree Graph Γ

f m6=n e′ ∈Em : head(e′ )=v

To construct the wireless network codes, we convert the network realizations N f to a wired network graph N g by connecting an artificial node sˆ to each transmitter node s with a link (s, sˆ) and replacing any link e out of node s by link (ˆ s, head(e)), as proposed in [4] to incorporate omnidirectional transmissions. The graph N g for the network realizations in Figure 1-(b) is shown in Figure 2-(b). For any link e out of node s activated by network realizations N f , we define the capacities of links (s, sˆ) and (ˆ s, head(e)) on graph N g as PM P M (m) f ), ) and m=1 τm 1 ((s, head(e)) ∈ Em m=1 τm 1 (s ∈ T (m) respectively, where 1 is the indicator function and T is the f set of transmitters for network realization Nm . Transmission costs are assigned only to the incoming links of artificial nodes that are restricted to routing operations. Alternatively, we can eliminate artificial nodes from graph N g and redefine the link capacities such that the value of 1 is assigned to a cut that has multiple (simultaneously activated) links out of a single node [7]. This formulation assigns transmission costs to all nodes. We can use a low complexity polynomial-time algorithm [8] to construct the linear wired network codes that can achieve the maximum flow on graph N g . The wired network coding coefficient βe′ ,e weights the flow Ye′ on link e′ onto link e, αj,e weights the jth flow X(tail(e), j) generated by node v onto link e, and ǫe′ ,k weights the flow Ye′ to decode the kth output flow Z(v, k) at node v = head(e′ ). The linear wireless network codes that can achieve the maximum flow for network realizations N f are derived from the wired codes as follows: (m,n)

αj

(tail(e)) = 1, if αj,e = 1 for e ∈ Enf

(m,n) f = 1, if βe′ ,e = 1 for e′ ∈ Em βe′ (m,n) f ǫe′ ,k = 1, if ǫe′ ,k = 1 for e′ ∈ Em

and e ∈

(3) Enf

(4) (5)

f precedes Nnf in activation order. for any (m, n) such that Nm

IV. J OINT N ETWORK C ODING AND S CHEDULING In this section, we follow the method of information flow decomposition (introduced in [5] for wired network coding) to formulate a distributed implementation of joint network coding and conflict-free scheduling. We construct from a given network graph G a dual line graph, where links become vertices that are connected, if the corresponding links are adjacent on graph G. Links outgoing from a source are called source nodes, links incoming to a destination are called destination nodes, and links with multiple adjacent incoming links are called coding nodes on the dual graph. Subtree decomposition [5] partitions the dual graph into a disjoint union of connected subtrees {Ti } so that (a) each subtree contains one source or

Fig. 3.

Subtree decomposition for the network in Figure 1-(a)

coding node, and (b) other nodes belong to the subtree that includes their first ancestral source or coding node. Network coding operation depends on how subtrees are connected and which destinations are included in each subtree. We map the subtrees to nodes and keep the links that connect the subtrees to obtain the subtree graph Γ. Figure 3 depicts the subtree decomposition of the network in Figure 1-(a). A. Linear Network Coding on Subtree Graph We assume that there are h edge-disjoint paths from a source to any destination. The network coding solution of [5] assigns linear vector codes of h elements (where each element carries linear coding coefficient for one information flow) to each subtree so that (a) the code of a subtree lies in the linear span of (but not equal to) the codes of the parent subtrees (with outgoing links connected to this particular subtree) and (b) two subtrees that share a destination node or a child subtree are assigned different codes. We consider the minimal subtree decomposition that includes only the necessary links that satisfy the min-cut condition. We merge two subtrees that are connected with a link, if they can be allocated the same coding vector without violating the min-cut condition. The same network code flows on all links of a subtree as required by the omnidirectional transmissions. An example of flows in the network of Figure 1-(a) with h = 2 is given by Ye = [01], for e ∈ T1 , Ye = [10], for e ∈ T2 and Ye = [11], for e ∈ T3 and e ∈ T4 , if we drop the time indices in notation. The problem of assigning codes to vertices of Γ has been formulated in [9] as vertex coloring of graph Ω with |Ω| vertices each corresponding to a different subtree in Γ. We connect two vertices in Ω with a link, if the corresponding subtrees cannot be allocated the same coding vector, i.e if (a) two subtrees share a destination node or a child subtree, or (b) two subtrees are connected with a link. The network codes of different subtrees are determined by distance-1 coloring on Ω such that no two adjacent vertices have the same color, whereas routing operation restricts the non-zero code in a child subtree to be equal to the code in one of the parent subtrees. B. Conflict-Free Scheduling on Subtree Graph Next, we show how we can convert the network codes to conflict-free transmission schedules on links of the dual graph. Scheduling Method 1: We perform vertex coloring on graph Ω and assign mutually independent network codes to different subtrees such that the codes in child subtrees are in the linear

span of the codes in their parent subtrees. It is an NP-hard problem to find the smallest number of colors for graph coloring or the smallest alphabet size for network coding. If h = 2, we can employ a greedy coloring algorithm that sequentially colors the vertices of Ω with colors that have not been used before for any of its neighbors. If ∆(Ω) is the maximum degree of vertices on Ω, we need at most ∆(Ω) + 1 colors and the maximum alphabet size is ∆(Ω). If h > 2, we may need a larger alphabet size, since vertex coloring of Ω is not always sufficient to ensure that the code in a child subtree is in the linear span of the codes in the parent subtrees. Special classes of network codes have been proposed in [10] to satisfy the linear coding property. Alternatively, we can use a dynamic form of greedy coloring such that the linear coding constraints on the colors of child subtrees change dynamically depending on the previous color assignments of parent subtrees. Then, we map each (multi-dimensional) code vector to a disjoint interval in one-dimensional time space and assign one of the disjoint time schedules to the links in a each subtree in order to eliminate the conflicts among links in different subtrees. In each subtree, we perform distance-2 coloring that assigns distinct colors (and disjoint time fractions) to any two nodes of the dual graph, if they are adjacent or if there is some other node that is adjacent to both of them. We divide the nodes in each subtree into three layers (as shown in Figure 4) depending on the hop distance from the source or coding node. In each subtree, we periodically activate the transmissions of nodes of the dual graph in different layers 3m+1, 3m+2 and 3m+3, m ∈ {0, 1, ...}, over separate time intervals. We need at most 3(|Ω| + 1) such disjoint time schedules. The one or two-layer version of this scheduling solution is sufficient for a subtree with only one or two layers of nodes. If we do not consider secondary interference effects at non-intended receivers (as in a spread spectrum network), the two-layer version is sufficient. A similar method of network decomposition has been used in [11] for conflict-free scheduling. Our approach further incorporates a joint network coding solution. For distributed implementation, source nodes can generate pairs of independent codes and disjoint time schedules, and distribute them throughout the network. Each source or coding node captures one pair of network code and time interval to be used within the subtree they belong to. The time interval is further divided into at most three disjoint parts that are distributed within the subtree such that for each i ∈ {1, 2, 3} the nodes of the dual graph in layer 3m + i, m ∈ {0, 1, ...} choose the ith time part. This suboptimal scheduling method 1 does not allow simultaneous transmissions in different subtrees (e.g. on links wy and wz) that do not necessarily conflict with each other. Scheduling Method 2: An improvement follows directly from the network coding solution based on subtree decomposition. Transmissions on (root and leaf) nodes in two subtrees can only conflict, if (a) the subtrees share a destination node or a child subtree, or (b) the subtrees are connected with a link. We connect the possibly conflicting subtrees on Γ with links and apply vertex coloring on the resulting graph Ω to assign different colors, namely independent network codes

Layer 1 (Source Node or Coding Node) Layer 2 Layer 3 Layer 4

Fig. 4.

Scheduling within each subtree network on the dual graph

(that satisfy the linear coding property) and disjoint time schedules, to conflicting subtrees. We first order the colors and proceed to color the subtree that has the largest number of already colored adjacent subtrees with the smallest color. We further divide the time schedules assigned to all subtrees into at most three parts and activate the nodes in each subtree according to the proposed three-layer conflict-free scheduling method. We need at most 3(∆(Ω) + 1) disjoint time fractions. If a subtree with a single node connects a pair of parent and child subtrees that are not directly connected on graph Ω, then these parent and child subtrees are possibly assigned the same network code and the same time schedule that will result in packet collisions because of the secondary interference effects at non-intended receivers. We need to identify such single-node subtrees during the initial coloring process (via communication over the feedback channel) and reassign the time schedules to their child subtrees while keeping the network code assignments. Note that the conflicting subtrees may contain links (e.g. st and uw in Figure 3) that can be simultaneously activated without any transmission conflict. Scheduling Method 3: An improved solution of joint network coding and scheduling can be implemented in two steps: Step 1: Separately activate (a) the incoming links of the destination nodes in different subtrees, and (b) the incoming and outgoing links of the source and coding nodes. Step 2: Separately activate in each subtree the nodes of the dual graph in different layers 3m + 1, 3m + 2 and 3m + 3, m ∈ {0, 1, ...}, subject to the color constraints of Step 1. In Step 1, we apply vertex coloring on the graph Ω to derive the linear network codes and disjoint time schedules for the nodes of the dual graph that are adjacent to the coding and destination nodes. This initial coloring operation reduces the complexity of the remaining scheduling operation. In Step 2, we run a greedy distance-2 coloring algorithm that sequentially visits the subtrees and extends (or modifies when necessary) the partial color assignments of Step 1 by assigning conflictfree schedules to the rest of the nodes on the dual graph. First, the algorithm checks the source, coding and destination nodes of the dual graph to find out whether the color that is assigned to those nodes by Step 1 conflicts with the color assignments that are made so far by Step 2 in the given subtree. If there is a conflict, a new color is assigned to those nodes. Then, the distance-2 coloring algorithm divides in each subtree the other nodes of the dual graph that have not been colored in Step 1 into different layers and uses at most three

V. P ERFORMANCE E VALUATION We evaluate the performance of network coding and routing under the proposed MAC solutions. We consider a network of 9 nodes on a regular square grid. We define m as the size of the randomly chosen multicast group. Figures 5 depicts the total achievable throughput as function of m. Numerical results show that network coding outperforms the routing solutions. The scheduling method 3 of section IV performs on the average better than the scheduling solution of section III, since a predetermined set of network realizations may not be able to extend routing solutions to network coding. Figure 5 shows also the performance loss for the case when we let the individual FCFS conflict-resolution algorithms operate

total throughput (packets/slot)

3 2.5

Network Coding Solutions

2 1.5 1

Scheduling method 3 of section IV Scheduling solution of section III Scheduling solution of Group TDMA

0.5 0

1

2

3

4

5

6

7

8

multicast group size m

total throughput (packets/slot)

distinct colors to color these nodes in different layers 3m + 1, 3m + 2 and 3m + 3, m ∈ {0, 1, ...}, of each subtree. The remaining problem is to determine the time allocation to links in different subtrees. For the scheduling methods 1 and 2, we define ti as the fraction of time allocated to subtree Ti and ti,j as the fraction of time allocated to nodes in layer j of subtree Ti . For the subtree decomposition in Figure 3, we have t1 = t2 , t3 = t4 , ti,k = t2i for i ∈ {1, 2}, k ∈ {1, 2}, and ti,1 = ti for i ∈ {3, 4} under scheduling method 1 or ti,1 = t3 for i ∈ {3, 4} under scheduling method 2. The packets arrive at each destination y and z with rate t21 in subtrees T1 and T2 and with rate t3 in subtrees T3 and T4 . The incoming flows of subtrees T3 and T4 are constrained by the flows out of subtrees T1 and T2 such that t3 ≤ t21 + t21 . The minimum cut carries packets with rate t21 + t3 and the throughput optimal solution maximizes r = t21 + t3 subject to the conditions t3 ≤ t1 and 2t1 + 2t3 = 1 or 2t1 + t3 = 1 depending on whether we use scheduling method 1 or 2. The maximum throughput per destination achievable by the scheduling methods 1 and 2 are 83 and 12 packets per time slot (with t1 = t3 = 14 and t1 = t3 = 31 ), respectively. The scheduling method 3 activates the three network realizations in Figure 1 with the optimal time allocation of τi = 13 , i = 1, 2, 3, and maximizes the value of r to 32 packets per time slot. The energy-efficient solutions can be obtained similarly. Remark: The next problem is to operate network coding with arbitrary MAC protocols within each receiver’s area. The interference effects at non-intended receivers can distort the channel feedback and cause instability of MAC operations. The Group TDMA algorithm has been proposed in [6] to ensure the feedback reliability. First, the network is partitioned into separately activated transmitter and receiver sets. Then, for each receiver set, Group TDMA separately activates interfering node groups (with packets addressed to different receivers) to decouple feedback from multiple receivers. We use an arbitrary single-receiver protocol (e.g. the First-Come-FirstServed (FCFS) algorithm) for multiple access within each receiver’s area. The time fractions allocated to different node groups are chosen to optimize the stable throughput or energy costs. We construct the network coding (or routing) solution over the one-hop transmission schedules of Group TDMA, as we did for the conflict-free network realizations in section III.

3 2.5

Routing Solutions

2 1.5 1

Scheduling method 3 of section IV Scheduling solution of section III Scheduling solution of Group TDMA

0.5 0

1

2

3

4

5

6

7

8

multicast group size m

Fig. 5. Total throughput achievable by network coding and routing for different MAC solutions and different values of multicast group size m

within each receiver’s area under Group TDMA. We obtain the same performance order for the energy-efficiency measures and expect similar results for more general network topologies. VI. C ONCLUSION In this paper, we considered the joint design of network coding and MAC in wireless ad hoc networks. First, we outlined how to derive the conflict-free network realizations and separately activate them to optimize the node costs (such as throughput or energy consumption) through network coding. Then, we presented practical solutions that rely on graph coloring to derive the network codes on the simplified subtree graphs and convert them to the conflict-free transmission schedules. We also outlined an extension of network coding to operate with arbitrary MAC protocols. Finally, we presented numerical results to verify the superior performance of the proposed network coding solutions over routing. R EFERENCES [1] R. Ahlswede, N. Cai, S. -Y. R. Li, and R. W. Yeung, “Network Information Flow,” IEEE Trans. Inform. Theory, vol. 46, July 2000. [2] T. Ho, R. Koetter, M. Medard, D. R. Karger, and M. Effros, “The Benefits of Coding over Routing in a Randomized Setting,” Proc. ISIT, June 2003. [3] D. S. Lun, M. Medard, T. Ho, and R. Koetter, “Network Coding with a Cost Criterion,” Proc. ISITA 2004, Oct. 2004. [4] Y. Wu, P. A. Chou, Q. Zhang, K. Jain, W. Zhu, and S.-Y. Kung “Network Planning in Wireless Ad Hoc Networks: A Crosslayer Approach,” IEEE J. Sel. Areas in Comm., vol. 23, Jan. 2005. [5] C. Fragouli and E. Soljanin, “Subtree Decomposition for Network Coding,” Proc. ISIT, June 2004. [6] Y. E. Sagduyu and A. Ephremides, “Multiple Access and Time Division: A New Look,” Proc. ISIT, June 2004. [7] Y. E. Sagduyu and A. Ephremides “Joint Scheduling and Wireless Network Coding,” Proc. First Workshop on Network Coding, Theory, and Applications, Apr. 2005. [8] S. Jaggi, P. A. Chou, and K. Jain, “Low Complexity Algebraic Multicast Network Codes,” Proc. ISIT, June 2003. [9] C. Fragouli, E. Soljanin, and A. Shokrollahi, “Network Coding as a Coloring Problem,” Proc. Conf. Info. Sci. and Sys., Mar. 2004. [10] C. Fragouli and E. Soljanin “Decentralized Network Coding,” Proc. IEEE Information Theory Workshop, Oct. 2004 [11] S. Ramanathan and E. L. Lloyd, “Scheduling Algorithms for Multihop Radio Networks,” IEEE/ACM Trans. Networking, vol. 1, Apr. 1993.

Crosslayer Design for Distributed MAC and Network ...

Abstract—In this paper, we address the joint design and distributed implementation of medium access control (MAC) and network coding in wireless ad hoc ...

140KB Sizes 3 Downloads 251 Views

Recommend Documents

CT-MAC: A MAC Protocol for Underwater MIMO Based Network ...
tic networks. Although extensive research has been con- ducted at the physical layer for underwater MIMO commu- nications, the corresponding medium access control (MAC) is still largely ... derwater MIMO based network uplink communications. In. CT-MA

Distributed Precoding for Network MIMO
2. Outline. Network MIMO Downlink. Joint vs Distributed Precoding. Problem Statement. System Model. Leakage Projected DPC. Derivation. Simulations. Conclusion ...

Distributed Precoding for Network MIMO
latency of exchange of information among BSs, this strategy can only serve as an ... Tr(A) stands for the trace of a matrix A. [A]i,j is the scalar entry of A in the i-th ...

CT-MAC: A MAC Protocol for Underwater MIMO Based Network Uplink ...
Nov 6, 2012 - (KMt >Mr) will degrade the performance of the network. In addition, block .... first broadcasts a test packet to the whole network to assist.

Distributed Algorithms for Minimum Cost Multicast with Network Coding
optimal coding subgraphs in network coding is equivalent to finding the optimal ... The node relays the data it receives, but makes no change to the data content.

Distributed Adaptation of Quantized Feedback for Downlink Network ...
... large feed- back set and high CSI quantization precision with small feedback ..... Adaptation of Quantized Feedback for Downlink Network MIMO Systems.pdf.

Distributed Utility Maximization for Network Coding Based Multicasting ...
include for example prior works on Internet flow control [9] and cross-layer ...... wireless network using network coding have been formulated in [20], [21] ..... [3] T. Ho, R. Koetter, M. Médard, D. R. Karger, and M. Effros, “The benefits of codi

A Survey on Network Codes for Distributed Storage - IEEE Xplore
ABSTRACT | Distributed storage systems often introduce redundancy to increase reliability. When coding is used, the repair problem arises: if a node storing ...

Distributed Utility Maximization for Network Coding ...
The obtained r∗ and g∗ will be used as the operating pa- rameters of the practical network coding system. Specifically, the source node will set the end-to-end ...

Adaptive Distributed Network-Channel Coding For ...
cooperative wireless communications system with multiple users transmitting independent ...... Cambridge: Cambridge University Press, 2005. [13] SAGE, “Open ...

Distributed Utility Maximization for Network Coding Based Multicasting ...
wireless network using network coding have been formulated in [20], [21] ..... [3] T. Ho, R. Koetter, M. Médard, D. R. Karger, and M. Effros, “The benefits of coding ...

Java Network Programming and Distributed Computing
Internet, Web applications, and Web services, the majority of today's programs and applications require ... basic concepts involved with networking and the practical application of the skills necessary to be an ...... We use the term devices in this

Multi-modal MAC Design for Energy-efficient Wireless ...
saving energy via avoiding collisions and sleeping when idle. ... tern, packet rate, and packet size), which all vary over .... highest good-bit, i.e. E/G is minimum.

Towards Scalable MAC Design for High-Speed ...
message with NULL frame, which is a data frame without any payload. Table 1 lists the protocol overhead as the frac- tion of idle stations increases.4 The ...

Design of Optimal Quantizers for Distributed Source ...
Information Systems Laboratory, Electrical Eng. Dept. Stanford ... Consider a network of low-cost remote sensors sending data to a central unit, which may also ...

Design of a Scalable Reasoning Engine for Distributed ...
Dec 13, 2011 - Distributed, Real-time and Embedded Systems. KSEM 2011 Paper Discussion .... Open source under a BSD license. Solution Approach ...

Design patterns for container-based distributed ... - Research at Google
tectures built from containerized software components. ... management, single-node patterns of closely cooperat- ... profiling information of interest to de-.

distributed-systems-concepts-and-design-5th-edition.pdf ...
Whoops! There was a problem loading more pages. Retrying... distributed-systems-concepts-and-design-5th-edition.pdf.

[Read PDF] Distributed Systems: Concepts and Design ...
Page 1 ... as the way forward for industry. The depth of coverage will enable students to evaluate existing distributed systems and design new ones. Related.