managing interference in wireless networks
behnaam aazhangelectrical and computer engineeringrice university
and
department of communication engineeringuniversity of oulu
a physical layer perspective on wireless networks
behnaam aazhangelectrical and computer engineeringrice university
and
department of communication engineeringuniversity of oulu
scope
• targeted for first year graduate students
• a few key topics focused one technology
• insight
• perspective
• salient points--no proofs
wireless network
• general
wireless network
• ad hoc
wireless network
• communication network
wireless network
• communication network
wireless network
• communication network
wireless network
• communication network
wireless network
• communication network
• power constraint
• interference
metric
• aggregate throughput
• reliability
• delay
• energy
scarce resources
• time
• bandwidth
• power
available resources
• computation
• memory
• flexible radio
applications
• network with infrastructure
• cellular
• wifi
• femto
• mesh
applications
• ad hoc (i.e., flat multi-hop)
• rural
• machine to machine (i.e., device to device, peer to peer)
• first responders
• battlefield
• transportation
• medical
• robotics
wireless network
• communication network layers
transport
network
mac
physical
wireless network
• borrowed from wired internet
• complete separation of design spaces
• ignores unique features of wireless
• e.g., routing ignores fading
transport
network
mac
physical
wireless network
• typical questions
• when to break away from off the shelf solutions
• “to multi-hop or not to multi-hop”
• how?
tools
• physics of electromagnetic propagation
• information theory
• signal processing
• queueing theory
• optimization
• control
notational challenges
H parity check matrix
H fading
h realization of fading
h index for hop
h(X) di↵erential entropy of XN channel noise variance
N number of nodes in a network
a step back
• what do we know about just one hop / link?
single awgn channel
• discrete time channel model
• gaussian noise with differential entropy
• maximum achievable rate
h(Z) =
1
2
log(2⇡eN)
max
pX ,E[X2]PI(X;Y ) = max
pX ,E[X2]Ph(Y )� h(Y |X)
= max
pX ,E[X2]Ph(Y )� h(Z)
=
1
2
log(2⇡e(P + N)� 1
2
log(2⇡eN)
=
1
2
log(1 +
P
N)
Yi = Xi + Zi for i = 1, 2, . . . n
+x
yz
interpretation
• the worst noise is gaussian
• the best codebook is gaussian
• asymptotic
• codewords with large n
• exploit ergodicity of noise
• unbounded delay
• perfect reliability
radius of noise Z
radius of codeword X
radius of received signal Ypn(P + N)
pnN
single wireless channel
• fading models
• ergodic?
single wireless channel
• slow fading
• channel coherence time > symbol period
• frequency nonselective
• channel coherence bandwidth > signal bandwidth
frequency
signalchannel transfer
function
frequency
W < Bcoh
Ts
< Tcoh
or nTs
< Tcoh
single wireless channel [tse,viswanath-2005]
• discrete time channel model
• known channel at the receiver but not the transmitter (i.e., csir)
• maximum achievable rate
Yi = HXi + Zi for i = 1, 2, . . . n
max
pX ,E[X2]PI(X;Y,H) = max
pX ,E[X2]PI(X;H) + I(X;Y |H)
= max
pX ,E[X2]PI(X;HX + Z|H)
= max
pX ,E[X2]P
Z
g
pH(g)h(gX + Z)dg � 1
2
log(2⇡eN)
=
Z
g
pH(g)
1
2
log(1 +
g2P
N)dg
+x
yz
X
H
single wireless channel [goldsmith-2005]
• discrete time channel model
• known channel at the receiver and the transmitter (i.e., csitr)
• maximum achievable rate subject to
Yi = HXi + Zi for i = 1, 2, . . . n
max
pX |H,E[X2]PI(H,X;Y,H) =
Z
g
pH(g) max
pX |g,E[X2]PI(X;Y |g)
=
Z
g
pH(g) max
P (g)
1
2
log(1 +
g2P (g)
N)dg
EH [P (g)] P
single wireless channel [goldsmith-2005]
• discrete time channel model
• known channel at the receiver and the transmitter (i.e., csitr)
• maximum achievable rate subject to
Yi = HXi + Zi for i = 1, 2, . . . n
max
pX |H,E[X2]PI(H,X;Y,H) =
Z
g
pH(g) max
pX |g,E[X2]PI(X;Y |g)
=
Z
g
pH(g) max
P (g)
1
2
log(1 +
g2P (g)
N)dg
EH [P (g)] P
Power Control
Minimum
Channel Quality
Threshold
Better Channels
Allocated Power
single wireless channel
• slow fading
• frequency nonselective
• require channel state information--necessary evil
• csir:
• gaussian codebook
• receiver training
• csitr:
• water filling gaussian codebook
• receiver training
• feedbackfrequency
single wireless channel
• faded path-loss channel model
• path-loss dominated
• some essence of the network topology (i.e., distances)
Yi = Hd�↵Xi + Zi for i = 1, 2, . . . , n
Yi = d�↵Xi + Zi for i = 1, 2, . . . , n
other single wireless channels
• frequency selective
• rich scattering: rayleigh
• strong line of sight: rician
• fast fading
• mimo
• vector channels
role of information theory
• simple but useful models
• achievable rates and shannon capacity
• ignores
• overhead to acquire network information
• feedback
• delay
• complexity
managing complexity
• gaussian codebooks with large code-lengths
• encoding is not linear
• maximum likelihood decoder
• prohibitively complex
managing complexity
• bpsk
• simplest modulation
cos(!ct)
sin(!ct)
01
managing complexity
• higher oder modulation
• larger dimension
Lattices
• A lattice ! is a discrete subgroup ofRn.
• Can write a lattice as a lineartransformation of the integervectors,
! = BZn ,
for some B ! Rn!n.
Lattice Properties
• Closed under addition:!1,!2 ! ! =" !1 + !2 ! !.
• Symmetric: ! ! ! =" #! ! !Zn is a simple lattice.
cos(!ct)
sin(!ct)
lattice codes
• integers on a plane
• lattice is a subgroup of
Lattices
• A lattice ! is a discrete subgroup ofRn.
• Can write a lattice as a lineartransformation of the integervectors,
! = BZn ,
for some B ! Rn!n.
Lattice Properties
• Closed under addition:!1,!2 ! ! =" !1 + !2 ! !.
• Symmetric: ! ! ! =" #! ! !Zn is a simple lattice.
R2
lattices
• indifferent
• rotation, translation, scaling,
• example
• imagine
• closed under addition
• symmetric
Lattices
• A lattice ! is a discrete subgroup ofRn.
• Can write a lattice as a lineartransformation of the integervectors,
! = BZn ,
for some B ! Rn!n.
Lattice Properties
• Closed under addition:!1,!2 ! ! =" !1 + !2 ! !.
• Symmetric: ! ! ! =" #! ! !BZn
BZ2 ⇢ R2
BZn ⇢ Rn
�1, �2 2 ⇤ ) �1 + �2 2 ⇤� 2 ⇤ ) �� 2 ⇤
lattices
• information mapped to lattice points
• decoding
• nearest lattice point
• hexagonal
Voronoi Regions
• Nearest neighbor quantizer:
Q!(x) = argmin!!!
!x" !!2
• The Voronoi region of a lattice pointis the set of all points that quantizeto that lattice point.
• Fundamental Voronoi region V:points that quantize to the origin,
V = {x : Q!(x) = 0}
• Each Voronoi region is just a shift ofthe fundamental Voronoi region V
lattices
• information mapped to lattice points
• decoding
• nearest lattice point
• hexagonal
Voronoi Regions
• Nearest neighbor quantizer:
Q!(x) = argmin!!!
!x" !!2
• The Voronoi region of a lattice pointis the set of all points that quantizeto that lattice point.
• Fundamental Voronoi region V:points that quantize to the origin,
V = {x : Q!(x) = 0}
• Each Voronoi region is just a shift ofthe fundamental Voronoi region V
⇥(w) = �
lattices
• sublatticesNested Lattices
• Two lattices ! and !FINE are nestedif ! ! !FINE
• Nested Lattice Code: All latticepoints from !FINE that fall in thefundamental Voronoi region V of !.
• V acts like a power constraint
Rate =1
nlog
!
Vol(V)
Vol(VFINE)
"
lattices
• nested latticesNested Lattices
• Two lattices ! and !FINE are nestedif ! ! !FINE
• Nested Lattice Code: All latticepoints from !FINE that fall in thefundamental Voronoi region V of !.
• V acts like a power constraint
Rate =1
nlog
!
Vol(V)
Vol(VFINE)
"
lattices
• power constrained
• shaping lattices
Nested Lattices
• Two lattices ! and !FINE are nestedif ! ! !FINE
• Nested Lattice Code: All latticepoints from !FINE that fall in thefundamental Voronoi region V of !.
• V acts like a power constraint
Rate =1
nlog
!
Vol(V)
Vol(VFINE)
"
lattice coding [erez,zamir-2004]
• large dimensional coded modulation with power constraint
• fine--coding lattice
• coarse--shaping lattice
coding latticeshaping lattice
⇤s ⇢ ⇤c
lattice coding
• voronoi region of a lattice point:
• set of point closest to the lattice point
voronoi region
lattice coding
• fundamental voronoi region:
• voronoi region of zero lattice point
fundamental voronoi region
⇤s ⇢ ⇤c
Vol(Vs) > Vol(Vc)
lattice coding
• at the system level
Encoder + DecoderModww
x
z
y y
lattice coding
• probability of error
• rate achieved
Rate =
1
nlog
�Vol(Vs)
Vol(Vc)
�
coding latticeshaping lattice
Encoder + DecoderModww
x
z
y y
P{w 6= w}! 0 as n! +1
lattice coding
• mapping from information vector to integer points
• coding and shaping
coding latticeshaping lattice
Encoder + DecoderModww
x
z
y y
⇥(w) = �
x = G� mod ⇤s
lattice coding
• linear codes
• generator matrix
• parity check matrix
G 2 Rn⇥n
H = G�1 2 Rn⇥n
lattice coding [sommer,feder,shalvi-2008]
• sparse non-binary parity check matrix
• a 6x6 example with degree 3 (regular latin square)
H =
0
BBBBBB@
0 �0.8 0 �0.5 1 00.8 0 0 1 0 �0.50 0.5 1 0 0.8 00 0 �0.5 �0.8 0 11 0 0 0 0.5 0.8
0.5 �1 �0.8 0 0 0
1
CCCCCCA
low density lattice codes
• linear encoding
• iterative decoding with linear complexity
• bipartite graphical decoding
• “checks” are integersSOMMER et al.: LOW-DENSITY LATTICE CODES 1563
Fig. 1. The bipartite graph of an LDLC.
is of the form , where denotes the lo-cations of the nonzero elements at the appropriate row of ,
are the values of at these locations and the integer at theright hand side is unknown. An edge connects check node andvariable node if and only if . This edge is assignedthe value . Fig. 1 illustrates the bipartite graph of a Latinsquare LDLC with degree . In the figure, every variable node
is also associated with its noisy channel observation .Finally, a -loop is defined as a loop in the bipartite graph
that consists of edges. A bipartite graph, in general, can onlycontain loops with even length. Also, a two-loop, which con-sists of two parallel edges that originate from the same variablenode to the same check node, is not possible by the definitionof the graph. However, longer loops are certainly possible. Forexample, a four-loop exists when two variable nodes are bothconnected to the same pair of check nodes.
III. ITERATIVE DECODING FOR THE AWGN CHANNEL
Assume that the codeword was transmitted, whereis a vector of integers. We observe the noisy codeword
, where is a vector of i.i.d Gaussian noise samples withcommon variance , and we need to estimate the integer valuedvector . The maximum likelihood (ML) estimator is then
.
Our decoder will not estimate directly the integer vector .Instead, it will estimate the probability density function (pdf) ofthe codeword vector . Furthermore, instead of estimating the
-dimensional pdf of the whole vector , we shall estimate theone-dimensional marginal pdfs for each of the components
of this vector (conditioned on the whole observation vector ).In Appendix I it is shown that is a weighted sum ofDirac delta functions:
(1)
where is a lattice point (vector), is its th component, is aconstant independent of and is the Euclidean distancebetween and . Direct evaluation of (1) is not practical, so ourdecoder will try to estimate (or at least approximateit) in an iterative manner.
Our decoder will decode to the infinite lattice, thus ignoringthe shaping region boundaries. This approximate decodingmethod is no longer exact maximum likelihood decoding, andis usually denoted “lattice decoding” [12].
The calculation of is involved since the compo-nents are not independent random variables (RVs), becauseis restricted to be a lattice point. Following [5] we use a “trick”– we assume that the ’s are independent, but add a condi-tion that assures that is a lattice point. Specifically, define
. Restricting to be a lattice point is equivalent to re-stricting . Therefore, instead of calculatingunder the assumption that is a lattice point, we can calculate
and assume that the are independent andidentically distributed (i.i.d.) with a continuous pdf (that doesnot include Dirac delta functions). It still remains to set ,the pdf of . Under the i.i.d. assumption, the pdf of the code-word is . As shown in Appendix II,the value of is not important at values of which are notlattice points, but at a lattice point it should be proportional tothe probability of using this lattice point. Since we assume thatall lattice points are used equally likely, must have thesame value at all lattice points. A reasonable choice foris then to use a uniform distribution such that will be uni-formly distributed in an -dimensional cube. For an exact MLdecoder (that takes into account the boundaries of the shapingregion), it is enough to choose the range of such thatthis cube will contain the shaping region. For our decoder, thatperforms lattice decoding, we should set the range oflarge enough such that the resulting cube will include all thelattice points which are likely to be decoded. The derivation ofthe iterative decoder shows that this range can be set as large asneeded without affecting the complexity of the decoder.
The derivation in [5] further imposed the tree assumption. Inorder to understand the tree assumption, it is useful to define thetier diagram (also referred to as “the computation tree” [22]),which is shown in Fig. 2 for a regular LDLC with degree 3.Each vertical line corresponds to a check equation. The tier 1nodes of are all the elements that take place in a checkequation with . The tier 2 nodes of are all the elementsthat take place in check equations with the tier 1 elements of
, and so on. The tree assumption assumes that all the tree el-ements are distinct (i.e., no element appears in different tiers ortwice in the same tier). This assumption simplifies the deriva-tion, but in general, does not hold in practice, so our iterative
Hx = HG�X
k
hkxik = integer
low density lattice coding
• example degree 5 for n=100, 7 for others
• iterations <200
SOMMER et al.: LOW-DENSITY LATTICE CODES 1575
Fig. 4. Simulation results.
element has magnitude also gave the desired determinantnormalization (see Section V-B). The matrices were gen-erated using the algorithm of Section V-C. The probabilitydensity function (pdf) resolution was set to with atotal range of , i.e., each pdf was represented by a vector of
elements. High resolution was used since our maintarget is to prove the LDLC concept and eliminate degradationdue to implementation considerations. For this reason, thedecoder was used with 200 iterations (though most of the time,a much smaller number was sufficient).
In all simulations the all-zero codeword was used. Ap-proaching channel capacity is equivalent to (seeSection II-A), so performance is measured in symbol errorrate (SER), versus the distance of the noise variance fromcapacity (in dB). The results are shown in Fig. 4. At SER of
, for we can work as closeas 0.6, 0.8, 1.5, and 3.7 dB from capacity, respectively.
Similar results were obtained for with thesecond type of generating sequence of Section V-A, i.e.,
. Results were slightly worsethan for the first generating sequence (by less than 0.1 dB).Increasing did not give any visible improvement.
We shall now compare these results with the LDPC-basedcoding schemes that were described in Section I: LDPC-basedmulti-level coding [19], [29], nonbinary alphabet LDPC coding[18] and LDPC lattice coding [15]. The comparison is summa-rized in Table I. The table shows the simulation results which arereported for each scheme in the appropriate reference, includingcodeword length , distance from channel capacity and errorperformance, measured as either bit error rate (BER), symbolerror rate (SER) or normalized error probability (NEP), as de-fined in [15]. Note that the schemes of [29] and [18] already in-clude an inherent shaping operation, so the simulation results forthese schemes already include practical shaping performance.
It can be seen that compared to the other schemes, LDLC havevery good performance, and they offer an attractive tradeoffbetween performance and codeword length. Regarding com-plexity, all the schemes have linear complexity. As describedabove, the linear coefficient tends to be higher for LDLC, due
TABLE ICOMPARISON OF CODING SCHEMES
to the FFT operations. However, as the number of informationbits per channel use increases, LDLC complexity becomes com-parable to the other schemes. Furthermore, we currently inves-tigate techniques that will reduce the computational complexityof LDLC decoding, as well as design methodologies for theparity check matrix, so we hope that LDLC performance andcomplexity will further improve.
X. CONCLUSION
LDLC are novel lattice codes that can approach capacity andbe decoded efficiently. Good error performance within dBfrom capacity at block length of 100 000 symbols was demon-strated. Convergence analysis was presented for the iterative de-coder, which is not complete, but yields necessary conditionson and significant insight to the convergence process. Codeparameters were chosen from intuitive arguments, so it is rea-sonable to assume that when the code structure will be moreunderstood, better parameters could be found, and channel ca-pacity could be approached even closer.
Multiple-input–multiple-output (MIMO) communicationsystems have become popular in recent years. Lattice codeshave been proposed in this context as space–time codes (LAST)[30]. The concatenation of the lattice encoder and the MIMOchannel generates a lattice. If LDLC are used as lattice codesand the MIMO configuration is small, the inverse generatormatrix of this concatenated lattice can be assumed to be sparse.Therefore, the MIMO channel and the LDLC can be jointlydecoded using an LDLC-like decoder. However, even if a Latinsquare LDLC is used as the lattice code, the concatenated latticeis not guaranteed to be equivalent to a Latin square LDLC, andthe necessary conditions for convergence are not guaranteed tobe fulfilled. Therefore, the usage of LDLC for MIMO systemsis a topic for further research.
APPENDIX IEXACT PDF CALCULATIONS
Given the -dimensional noisy observation ofthe transmitted codeword , we would like to calculatethe probability density function (pdf) . We shall start
by calculating . Denote the shapingregion by ( will be used to denote both the lattice and its
low density lattice codes
• real valued codes exploiting real channels
• relatively simple encoding and decoding
• linear structure amenable to
• superposition
• decomposition
• side information
a step toward the network
bound on throughput
• benchmark performance
• a tool from optimization
bound on throughput
• maximum flow minimum cut
• graphical model
• a cut
• partitioning source and destination
• cut capacity
• sum of edges leaving the cut toward destination
bound on throughput
• maximum flow minimum cut
• another cut
bound on throughput
• maximum flow minimum cut
• min cut problem
• finding the minimum of cuts
bound on throughput
• maximum flow minimum cut
• a flow
• flow through a link < link capacity
• conservation of flows
• flow leaving a node=flow entering a node
bound on throughput
• maximum flow minimum cut
• a flow
• flow through a link < link capacity
• conservation of flows
• flow leaving a cut=flow entering a cut
bound on throughput
• maximum flow minimum cut
• max flow problem
• finding a flow that maximizes net flow into destination
bound on throughput
• maximum flow minimum cut
• max flow problem
• finding a flow that maximizes net flow into destination
• flow into destination < or = flow through a cut
bound on throughput [ford,fulkerson-1956,elias,feinstein,shannon-1956]
• maximum flow minimum cut
• in any network,
• the value of maximum flow = the value of minimum cut
bound on throughput
• max flow min cut yields upper bound on throughput
• wired networks--graphical
• wireless networks
• achieving the upper bound!
example
• a simple half duplex wireless relay network
example
• a simple half duplex wireless relay network
• mode m=1 --- broadcast time slot tm
example
• a simple half duplex wireless relay network
• mode m=2 ---multiple access time slot tm
example
• a simple half duplex wireless relay network
• a cut to divide the network
example
• a simple half duplex wireless relay network
• a cut to divide the network
example
• a simple half duplex wireless relay network
• a cut to divide the network
• not a good cut!
example
• a simple half duplex wireless relay network
• a cut to divide the network
• mode m = 1
example
• a simple half duplex wireless relay network
• a cut to divide the network
• mode m = 2
example
• a simple half duplex wireless relay network
• a cut to divide the network
• mode m = 2
• average of cut value across states
X
i2S,j2Sc
Rij MX
m=1
tmI(X(m)S ;Y (m)
Sc |X(m)Sc )
X(2)S
X(2)Sc
Y (2)Sc
example
• a simple half duplex wireless relay network
• bound the network throughput
• optimize network parameter
example
wireless network
• challenges
• computing upper bounds
• simple modeling of the network while capturing all the salient features
challenges
• source
• continuous
• bursty
• channel fading
• slow
• fast
• mobility
a pragmatic approach
• discovery
• routing
• scheduling
• orthogonal
• interference
• power control
• coding and modulation
a pragmatic approach
• discovery
• routing--network layer
• scheduling--medium access (mac) layer
• avoid interference--orthogonal
• allow interference
• power control--network or mac layer
• coding and modulation--physical layer
a pragmatic approach
• discovery
• routing
• scheduling
• avoid interference
• allow interference
• power control
• coding and modulation
multi hop routing achieves cut set bound for unicast (single flow
single destination)
time scales
• routing
• buffering
• retransmission
• user mobility
• fading
• noise
spatial scales
• path-loss
• resource reuse
• interference
• network of wireless nodes
• reliable transporting of data
more insight
scaling laws [gupta,kumar-2000,xue,xie,kumar-2005]
• throughput capacity
• bits per second
• perfect reliability
• transport capacity
• bit meters per second
• perfect reliability
• topology
• N wireless nodes in an area of 1x1 meters
• random network
• arbitrary network--carefully chosen!
scaling laws
• protocol model
• based on coverage
• if k and i transmit
• j decodes packet from i if
scaling laws
i j
k
dkj > (1 + �)dij for some � > 0
• protocol model
• physical model
• based on SINR
scaling laws
SINRij =Pid
�↵ij
N +P
k 6=i Pkd�↵kj
> �
i j
k
• protocol model
• physical model
• based on SINR
scaling laws
SINRij =Pid
�↵ij
N +P
k 6=i Pkd�↵kj
> �
i j
k
Rij log(1 + SINRij)
• topology
• random network
• arbitrary network
• protocol model
• physical model
• transport capacity
scaling laws
max
R
X
i,j
Rijdij
Rij
d ijR feasible rate vector
• fixed topology
• simple routing model--decode and forward
• transport capacity grows as
• complete network information
• perfect scheduling to avoid interference
• discouraging results
scaling laws
pN that is ⇥(
pN)
scaling laws
• geometric proof
• the insight introduces a conflict
• reduce the number of hops
• spatial concurrency
• with simple routing model
• short hops
• ignore delay
wireless network
• discouraging results
• scaling law suggests adding infrastructure with wired access to the backbone
• short hops
thought process
• “capacity achieving” coding and modulation
• power control to address large scale fading
• open issues
• discovery
• routing
• scheduling
• interference
discovery and routing
• acquire network information
• routing
• static--independent of traffic input pattern
• adaptive--adapt to congestion
• centralized
• distributed
discovery and routing
• long network coherence time--proactive
• clustering
• short network coherence time--reactive
• on demand discovery
• communication links are assigned lengths
• function of transmission capacity and projected load
• shortest path = minimum hop path if lengths are one
• bellman-ford routing
shortest path routing [bertsekas,gallager-1992]
node i
node j
dij
destination
D(h+1)i = min
j[dij + D(h)
j ]
D(h)i shortest h hop distance from destination and dij length of link i, j
• graph theoretical
• bellman-ford yields shortest path route
• proof by induction
• number of iterations no more than the number of nodes, N
• computation cubic in N
• mild conditions
shortest path routing
shortest path routing
• bellman-ford
• synchronous is prohibitively complicated
• asynchronous
• requires network information
D(h+1)i = min
j2Ni
[dij + D(h)j ] with D(h)
dest = 0 8 h, D(0)i =1
shortest path routing
• “length” of the path
• distance
• energy
• delay
• throughput
integrated discovery and routing
• proactive
• reactive
clustering-proactive
• discovery packets
• 802.11 type cd-csma to resolve collision
• neighborhood of node a:
• nodes that can decode messages from node a at rate R
• absence of interference71
C1
C2
a
b
c w
x
y
Na
Nw
Figure 5.2: An example network and neighbors for terminals a and w. Note thatterminal c is a neighbor of both a and w, but will join the cluster of terminal asince a < w. The resulting clusters are C1 = {a, b, c} shown as solid circles andC2 = {w, x, y}, shown as squares.
3. If a terminal receives more than one invitation, it accepts the broadcast invi-
tation from the terminal with the lowest ID. This acts as a tiebreak, such that
terminals with many neighbors remain in just one cluster. In Fig. 5.2, both a
and w broadcast invitations, and c responds to a after hearing both invitations.
The result is a set of C disjoint clusters of terminals Ci
such thatS
C
i=1 Ci
= N,
as shown in Figure 5.2. Within |Ci
| stages of channel sounding, all terminals in the
cluster are aware of all channels. Clusters are regions of locally complete topological
information, where any terminal can transmit to any other at a rate dictated by (6.1).
We can therefore consider a cluster to be a clique. Within a cluster, it can be shown
that any two terminals are separated by a maximum of two hops at rate R.
Given that rate R defines a radiusDR
, the average number of terminals in a cluster
will be �⇡D2R
, a consequence of the Poisson distribution governing the placement of
our terminals.
One can think of the clustering algorithm as a process of local attraction, where
terminals are attracted to their neighbor with the lowest ID number. From this
intuition it is clear that for a given topology of terminal ID numbers, the algorithm
will always return the same cluster set. However, if the terminal locations remain
clustering [lin,gerla-1997]
• nodes are assumed to have unique identifiers that can be ordered
• all nodes in every neighborhoods share their unique identifiers
• a node with lowest identifier invites all in its neighborhood to form a cluster
• nodes accept invitation to join a cluster with lowest identifier
C1
C2
a
b
c w
x
y
Na Nw
Fig. 1. An example network and neighbors for terminals a and w. Notethat terminal c is a neighbor of both a and w, but will join the cluster ofterminal 1 since a < w. The resulting clusters are C1 = {a, b, c} shown assolid circles and C2 = {w, x, y}, shown as squares.
{s(k), . . . , d(k)}, while maximizing the throughput Rk
|Lk|�1 ,the size of packet k divided by the number of timeslots itrequired in transit.
A. Locality
The pathloss-based channel model naturally leads to a geo-graphical notion of locality, based upon proximity of terminals.Terminals situated near one another are considered to beneighbors and are aware of each other’s existence based ona simple beacon broadcast. To formalize our definition, wesay that for a terminal x, the set of neighbors Nx are thoseterminals which can receive data at a rate no less than R fromx in the absence of interference. Solving the pathloss modelfor distance D sets a radius around each terminal allowing usto define the set of neighbors as
Nx =
⇤y ⇧ N Dx,y ⇤
�PTx
(No + ⇥o) · (2R � 1)
⇥ 1�
⌅(2)
which will increase with transmit power, and decrease withincreasing rate requirement R or pathloss parameter �. Here⇥o is a (possibly zero) interference margin. Note that for anon-neighboring terminal z /⇧ Nx, a transmission from z attime t will contribute to interference ⇥t(x) at terminal x.
In Figure 1, terminal c neighbors both terminals a and w.In order to deploy NFIC techniques efficiently, we must defineneighborhoods such that they are disjoint sets. These will betermed clusters Ci, and there will be C of them. A terminal isa member of exactly one cluster: x ⇧ Ci ⌅ x /⇧ Cj , ⌥ j ⌃= i.
B. Clustering Algorithm
We will employ a distributed clustering developed in [9].The algorithm is as follows:
1) All terminals identify their neighbor set Nx.2) If a terminal has the lowest ID number in its neighbor
set, it sends a broadcast message to all terminals in theneighbor set inviting them to join a cluster.
3) If a terminal receives more than one invitation, it re-sponds to the broadcast message from the lowest ID.For terminals labeled with letters, we use their positionin the alphabet for sequencing (e.g., a < b). In Fig. 1,both a and w broadcast invitations, and c responds to aafter hearing both.
g1,2 g2,1
C1C2
Fig. 2. The result of clustering the network in Figure 1. Terminals c and w
become gateways between the clusters.
The result is a set of C disjoint clusters of terminals Ci suchthat
⇧Ci=1 Ci = N, as shown in Figure 1. Within |Ci| stages of
channel sounding, all terminals in the cluster are aware of allchannels. Clusters are regions of locally complete topologicalinformation, where any terminal can transmit to any other ata rate dictated by (1). Within a cluster, it can be shown thatany two terminals are separated by a maximum of two hopsat rate R.
Given that rate R defines a radius DR, the average numberof terminals in a cluster will be ⇤⌅D2
R, a consequence of the
Poisson distribution governing the placement of our terminals.
C. Gateway Terminals
As mentioned above and illustrated in Fig. 1, some terminalswill neighbor terminals in other clusters. These terminals,being locally aware of the neighbors in other clusters, willbe able to act as gateway terminals. They will transmit andreceive packets across cluster boundaries at a rate of at leastR, but do not have knowledge of the topology beyond theirgateway partner in the neighboring cluster.
Since only one gateway link exists between each pairof clusters, each cluster will have at most C � 1 gatewayterminals. They will be labelled gi,j if they are in cluster ibut can transmit to the corresponding gateway in cluster j. Assuch terminals gi,j and gj,i are endpoints of a gateway link.In selecting gateways from several possible pairs, those withthe best channel are chosen. This is illustrated in Figure 2,showing the clusters arising from the network in Figure 1–terminals c and w are the gateways. While not occurring inthis example, it may be that a terminal acts as a gateway tomore than one cluster.
D. Distance-Vector Routing
To handle inter-cluster packets, those with source and sinkin different clusters, we employ a distance-vector routingscheme [10] so that clusters know where to forward theirpackets into the broader network. Each cluster maintains atable of destination terminals and corresponding forwardingterminals. Initially it is populated with terminals within thecluster, but after a round of table-exchange between neigh-boring clusters, each cluster adds to its list the terminalsin immediately neighboring clusters with the correspondinggateway as the forwarding terminal. Clusters again exchangetables, now adding terminals in other clusters two hops away.In the worst case of clusters arranged linearly, C � 1 rounds
a < b < w < c < x < y
clustering
• gateways are defined as nodes in one cluster and one hop away from a node in another cluster
• not unique
• existence not guaranteed
C1
C2
a
b
c w
x
y
Na Nw
Fig. 1. An example network and neighbors for terminals a and w. Notethat terminal c is a neighbor of both a and w, but will join the cluster ofterminal 1 since a < w. The resulting clusters are C1 = {a, b, c} shown assolid circles and C2 = {w, x, y}, shown as squares.
{s(k), . . . , d(k)}, while maximizing the throughput Rk
|Lk|�1 ,the size of packet k divided by the number of timeslots itrequired in transit.
A. Locality
The pathloss-based channel model naturally leads to a geo-graphical notion of locality, based upon proximity of terminals.Terminals situated near one another are considered to beneighbors and are aware of each other’s existence based ona simple beacon broadcast. To formalize our definition, wesay that for a terminal x, the set of neighbors Nx are thoseterminals which can receive data at a rate no less than R fromx in the absence of interference. Solving the pathloss modelfor distance D sets a radius around each terminal allowing usto define the set of neighbors as
Nx =
⇤y ⇧ N Dx,y ⇤
�PTx
(No + ⇥o) · (2R � 1)
⇥ 1�
⌅(2)
which will increase with transmit power, and decrease withincreasing rate requirement R or pathloss parameter �. Here⇥o is a (possibly zero) interference margin. Note that for anon-neighboring terminal z /⇧ Nx, a transmission from z attime t will contribute to interference ⇥t(x) at terminal x.
In Figure 1, terminal c neighbors both terminals a and w.In order to deploy NFIC techniques efficiently, we must defineneighborhoods such that they are disjoint sets. These will betermed clusters Ci, and there will be C of them. A terminal isa member of exactly one cluster: x ⇧ Ci ⌅ x /⇧ Cj , ⌥ j ⌃= i.
B. Clustering Algorithm
We will employ a distributed clustering developed in [9].The algorithm is as follows:
1) All terminals identify their neighbor set Nx.2) If a terminal has the lowest ID number in its neighbor
set, it sends a broadcast message to all terminals in theneighbor set inviting them to join a cluster.
3) If a terminal receives more than one invitation, it re-sponds to the broadcast message from the lowest ID.For terminals labeled with letters, we use their positionin the alphabet for sequencing (e.g., a < b). In Fig. 1,both a and w broadcast invitations, and c responds to aafter hearing both.
g1,2 g2,1
C1C2
Fig. 2. The result of clustering the network in Figure 1. Terminals c and w
become gateways between the clusters.
The result is a set of C disjoint clusters of terminals Ci suchthat
⇧Ci=1 Ci = N, as shown in Figure 1. Within |Ci| stages of
channel sounding, all terminals in the cluster are aware of allchannels. Clusters are regions of locally complete topologicalinformation, where any terminal can transmit to any other ata rate dictated by (1). Within a cluster, it can be shown thatany two terminals are separated by a maximum of two hopsat rate R.
Given that rate R defines a radius DR, the average numberof terminals in a cluster will be ⇤⌅D2
R, a consequence of the
Poisson distribution governing the placement of our terminals.
C. Gateway Terminals
As mentioned above and illustrated in Fig. 1, some terminalswill neighbor terminals in other clusters. These terminals,being locally aware of the neighbors in other clusters, willbe able to act as gateway terminals. They will transmit andreceive packets across cluster boundaries at a rate of at leastR, but do not have knowledge of the topology beyond theirgateway partner in the neighboring cluster.
Since only one gateway link exists between each pairof clusters, each cluster will have at most C � 1 gatewayterminals. They will be labelled gi,j if they are in cluster ibut can transmit to the corresponding gateway in cluster j. Assuch terminals gi,j and gj,i are endpoints of a gateway link.In selecting gateways from several possible pairs, those withthe best channel are chosen. This is illustrated in Figure 2,showing the clusters arising from the network in Figure 1–terminals c and w are the gateways. While not occurring inthis example, it may be that a terminal acts as a gateway tomore than one cluster.
D. Distance-Vector Routing
To handle inter-cluster packets, those with source and sinkin different clusters, we employ a distance-vector routingscheme [10] so that clusters know where to forward theirpackets into the broader network. Each cluster maintains atable of destination terminals and corresponding forwardingterminals. Initially it is populated with terminals within thecluster, but after a round of table-exchange between neigh-boring clusters, each cluster adds to its list the terminalsin immediately neighboring clusters with the correspondinggateway as the forwarding terminal. Clusters again exchangetables, now adding terminals in other clusters two hops away.In the worst case of clusters arranged linearly, C � 1 rounds
clustering
• easy to show
• nodes within a cluster are two hops away
• clustering is unique
• a fixed and static topology
• a given set of node identifiers
C[
i=1
Ci = N and Ci \ Cj = ; 8 i 6= j
72
Figure 5.3: Di↵erent clustering outcomes as a result of changing terminal ID values.In this example, the clustering is a critical element in the performance of resultingallocation; in the clustering on the left, each flow is handled entirely within a cluster,so the NFIC will route from source to destination. In the clustering on the left, eachframe will be handled by more than one NFIC.
constant but their ID numbers change, the resuling clusters will be quite di↵erent.
An example is shown in Figure 5.3, where the terminals in the same physical network
have been randomly reassigned their ID numbers, resulting in a di↵erent clustering
outcome.
Since we seek a general technique regardless of flow source and destination, we do
not study how to optimize the clustering technique for a particular network topology.
Doing so would require global knowledge of at least endpoint terminals, which we
seek to avoid gathering.
5.1.3 Gateway Terminals
As mentioned above and illustrated in Fig. 5.2, some terminals will neighbor terminals
in other clusters. These terminals, being locally aware of the neighbors in other
clusters, will be able to act as gateway terminals. They will transmit and receive
frames across cluster boundaries at a rate of at least R, but do not have knowledge
clustering
• a framework to execute routing
• manage overhead
121
1
2
3
4
1
(a) Full Information, P2P
1
2
34
5
6
7
1,2
6,7
1
(b) Full Information, Cooperation
1
2
3
45 6 7
1
2
3
(c) Distributed Information, P2P
1
2
3
4
56
7 8
3,41
2
3
4
1,2
(d) Distributed Information, Cooperation
Figure 7.1: Resource allocation under four di↵erent paradigms: full information (a),full information with cooperation (b), distributed information (c), distributed infor-mation with cooperation (d).
on demand discovery-reactive
• dynamic source routing
• ad hoc on-demand distance vector (aodv) routing
dynamic source routing [johnson,maltz-1996]
• route discovery
• route maintenance
dsr--route discovery
1
24
65
37
98
1211
10
15
1413• transmit route request
2flow ID
• no cycles
dsr--route discovery
1
24
65
37
98
1211
10
15
1413
2,3flow ID
x x
dsr--route discovery
1
24
65
37
98
1211
10
15
1413
2,4flow ID
x x
dsr--route discovery
1
24
65
37
98
1211
10
15
1413
2,3,6flow ID
x
x
x x
dsr--route discovery
1
24
65
37
98
1211
10
15
1413
2,4flow ID
2,3flow ID ?
• cache and select
• number of hops
• data rate
• power
• ...
dsr--route discovery
1
24
65
37
98
1211
10
15
1413
2,3,6,12flow ID
dsr--route discovery
1
24
65
37
98
1211
10
15
1413• run away discoveries are timed out
dsr--route discovery
1
24
65
37
98
1211
10
15
1413
2,3,6,12flow ID
• route record
• nodes in the route
• buffer size
• data rates
• node’s power
• ...
discovery and routing
• bellman-ford routing
• clustering
• dynamic source routing
a pragmatic approach
• discovery
• routing
• scheduling
• power control
• coding and modulation
a pragmatic approach
• discovery
• routing
• scheduling?----a multiaccess issue
• power control
• coding and modulation
scheduling
• multiaccess scheduling
• avoid interference
• allow interference
• mitigate
• harness
• source
• continuous
• avoid interference
• fixed assignment
• allow interference
• information theory: mitigate and harness
multiaccess scheduling
time
time
blue channel
red channel
• source
• continuous
• bursty
• amenable to sharing
multiaccess network
time
time
• queue
• smooth source burstiness
• avoid bad channels
• execute
• random access
• deterministic schedule
• delay
bursty sources
bursty sources
• random access
• manages access to common channel
• avoid interference
• exploit burstiness
• “concerned” about delay
• queueing theory
random access examples
• aloha
• stabilized aloha
• carrier sense multiaccess (csma)
• collision resolution algorithms
bursty sources
• deterministic schedule
• channel conditions
• source properties
• queue length
• fairness
multiuser access (continuous and bursty)
• avoid interference
• random access
• orthogonal scheduling
• allow interference
• mitigate
• harness
a step back
• cut set bounds
• scaling laws with simple models
• network information theory
• scaling laws with an information theoretic model
• network coding
• information theory for various small topologies
network information theory
• two way channels
network information theory
• multiple access
network information theory
• broadcast
network information theory
• interference
network information theory
network information theory
• relay
network information theory
• cooperation
• capacity region
• achievable rate region
• degrees of freedom
• diversity and multiplexing gains
• outage
network information theory
• issues
• delay
• source burstiness
• complexity
• overhead
network information theory
a step back
• cut set bounds
• scaling laws with simple models
• network information theory
• scaling laws with an information theoretic model
• network coding
• topology
• N wireless nodes in an area of 1x1 meters
• nodes have at least a constant distance
• a path-loss and absorption model
• attenuation
scaling laws with an information theoretic model
e��dij d�↵ij
dij � dmin > 0 8 i, j
• a path-loss and absorption model
• attenuation
• strong attenuation regime
• low attenuation regime
scaling laws with an information theoretic model
e��dij d�↵ij
� > 0 and large ↵
� = 0 and small ↵
• feasible rate vector
• fixed total power
• diminishing error
• transport capacity
scaling laws with an information theoretic model
R = {Rij}
max
R
X
ij
Rijdij
• high attenuation scenario
• model
• power constraint
• transport capacity grows not faster than linear in total power
• proof based on max flow min cut
scaling laws
max
R
X
ij
Rij
dij
cPtotal
Yk,i =
X
j
e��djkd�↵jk Xj,i + Zj,i for i = 1, 2, . . . , n
1n
nX
i=1
X
j
X2j,i
Ptotal
• transport capacity with linear and superlinear increase in N
• coherent combining
• successive interference cancelation
• mimo
• gaussian codebooks
• promising!
• network information
• delay
scaling laws with a physical layer perspective
a step back
• cut set bounds
• scaling laws with simple models
• network information theory
• scaling laws with an information theoretic model
• network coding
network coding
• wireline network
• unicast
• simple forwarding is “optimum”
• multicasting
• simple forwarding not “optimum”
• forward functions of received packets
w1 w2
linear wireline network coding
• source transmits packets
• intermediate nodes
• compute linear combination of packets received
• destination
• decode all combinations
• linear network coding is “optimum”
w1 w2
w1 �w2
w1 �w2
w1
linear network coding
• linear combination of L messages
• destination can decode if receives
• and if the matrix is rank L
um = am1w1 � am2w2 . . .� amLwL
u1u2 . . . uM
2
6664
a11 a12 . . . a1L
a21 a22 . . . a2L...
.... . .
...aM1 aM2 . . . aML
3
7775
“wireless” network coding
• natural
• linear model
• broadcast
• superposition
• interference
• issues with addition
• complex versus finite field
• noisy am1w1 � am2w2 � . . . amLwL
Yi =
LX
l=1
HlXl,i + Zi for i = 1, 2, . . . , n
�(wl) = Xl
compute and forward [nazer, gastpar-2011]
• a key ingredient--lattice codes
• linear structure amenable to
• superposition
• decomposition
• side information
lattices
• power constrained
• shaping lattices
Nested Lattices
• Two lattices ! and !FINE are nestedif ! ! !FINE
• Nested Lattice Code: All latticepoints from !FINE that fall in thefundamental Voronoi region V of !.
• V acts like a power constraint
Rate =1
nlog
!
Vol(V)
Vol(VFINE)
"
x = G� mod ⇤s
[x] mod ⇤s = x�Q⇤s(x)
[[x1] mod ⇤s + x2] mod ⇤s = [x1 + x2] mod ⇤s
lattices
• power constrained
• shaping lattices
Nested Lattices
• Two lattices ! and !FINE are nestedif ! ! !FINE
• Nested Lattice Code: All latticepoints from !FINE that fall in thefundamental Voronoi region V of !.
• V acts like a power constraint
Rate =1
nlog
!
Vol(V)
Vol(VFINE)
"
⇥(w) = �
x = G� mod ⇤s
[x] mod ⇤s = x�Q⇤s(x)
[[x1] mod ⇤s + x2] mod ⇤s = [x1 + x2] mod ⇤s
lattice compute and forward
• fading?
for a construction of ! [107]. Mathematically, this pro-perty can be expressed as
Encoding: x‘ ! !"w‘# (79)
Decoding: !$1 a1x1 % a2x2 % & & & % aLxL' (mod !" #! a1w1 ) a2w2 ) & & & ) aLwL: (80)
For the low-complexity case where the coarse lattice is qZn
and the fine lattice is a linear code, ! is just the generatormatrix G of the linear code and !$1 is its inverse.
This mapping is the last piece of the puzzle. With it, thesum of the messages can be recovered directly from themodulo sum of the codewords
!$1 'x1 % x2( mod !" # ! w1 )w2: (81)
Now, we can use this in a two-way communicationscheme by using one time slot to transmit the sum of themessages to the relay and another to send it back to theusers. It follows that the users can exchange messages atany rate up to
RLATTICE !1
2log2
1
2% P
"2
! ": (82)
This rate nearly matches the upper bound in (54) exceptfor a missing 1/2 inside the logarithm.8
This two-way lattice scheme has been extensivelystudied and generalized in the literature. These extensionsinclude unequal channel gains [106], [108], non-Gaussianchannel models [109], secret messages [110], privatemessages [111], direct links [112], as well as more thantwo transmitters [48], [113], [114]. Gupta–Kumar stylescaling laws [115] have also been derived for this latticescheme [116]. We also note that similar lattice-basedschemes can increase achievable rates in interferencechannels [117], [118].
Overall, this nested lattice scheme can be used as adigital framework for physical layer network coding on thewireless channel. It is able to exploit the addition per-formed by the channel while preserving modulo arithmeticand protecting against Gaussian noise. In a larger network,each relay will recover a linear combination of the originalmessages. It can then transmit this linear combination asits own message, just as relays in wireline networks sendout linear combinations of their received messages. InSection VIII, we will generalize the results in this sectionto unequal channel gains. Furthermore, we show that thetransmitters do not even need to know the channel gains,which means that this scheme can be applied to fadingchannels and scenarios with more than one receiver. In thenext section, we plot the performance of each schemediscussed so far for the Gaussian two-way relay channel.
VII. PERFORMANCE COMPARISON
In Fig. 11, we compare the performance for the variousnetwork coding strategies discussed in this paper, for theparticular case of a Gaussian two-way relay channel. Thefigure displays the rate per user in bits per channel use, as afunction of the transmit power per user, while the noise isassumed to be of unit variance. Starting from the top, thefigure shows the simple upper bound given in (54). It is
8Several groups have unsuccessfully tried to find a lattice scheme thatcan attain the upper bound. This remains an open problem.
Fig. 10. Each transmitter maps its finite-field message into an element of the nested lattice code and sends this vector on the channel.
Here, the channel coefficients are taken to be equal h1;h2 ! 1. Therefore, the receiver observes a noisy sum of the transmitted vectors
and determines the closest lattice point. After taking a modulo operation with respect to the coarse lattice, the receiver can invert
the mapping and determine the modulo sum of the original messages.
Nazer and Gastpar: Reliable Physical Layer Network Coding
452 Proceedings of the IEEE | Vol. 99, No. 3, March 2011
exampleFor ease of analysis, assume that the total power per
channel use is P ! 2, which means that we can allocateone unit of power to the real part and one unit to theimaginary part.4 Let W‘ denote the bit from user ‘. Eachuser maps its bit to a channel input symbol using binaryphase-shift keying (BPSK)
X‘ !1; W‘ ! 1"1; W‘ ! 0.
!(41)
Therefore, if the mod-2 sum of the bits U ! W1 #W2 is 1,then the sum of the transmitted signals X1 $ X2 ! 0. Sim-ilarly, if U is 0, then X1 $ X2 is either 2 or "2, dependingon the original bits. We would like to design a decodingrule for the delay to make an estimate U of the mod-2 sumU from its noisy observed sum Y. For simplicity, we assumethat each user’s bit is generated from a fair coin toss. Themaximum a posteriori (MAP) rule to minimize theprobability that U is in error is given by
UMAP ! arg maxb!0;1
fY%yjU ! b&Pr%U ! b& (42)
where fY%yjU ! b& is the conditional probability distribu-tion of the channel output given the mod-2 sum. Since thenoise is Gaussian, the probability density function is
fYR%yjU ! b&
!
1""""""""""2!"2p e"y2=2"2
; U ! 1
1
2""""""""""2!"2p e"%y"2&2=2"2 $ e"%y$2&2=2"2
# $; U ! 0.
8>><
>>:(43)
Note that for U ! 0, YR follows a Gaussian mixturedistribution since X1 $ X2 can be either 2 or"2 with equalprobability. A bit of calculation reveals that the MAP ruleis just a threshold on the magnitude of the received signal
UMAP !1; jYRj ' 1$ %"2 ln 2&=20; otherwise
!(44)
and the error probabilities can be computed using theQ-function. Applying this strategy to every bit allows therelay to obtain a corrupted version of the modulo-2 sum ofthe bit strings
u ! w1 #w2 # e (45)
where e is the error vector. In Fig. 9, we illustrate how thiscan enable more efficient communication over the two-way relay channel. In one time slot, both transmitters sendtheir messages concurrently, giving the relay the noisymodulo-2 sum. In the next time slot, the relay broadcaststhe modulo-2 sum to the users, which can then solve for acorrupted version of their desired bits. Coupling thisstrategy with an end-to-end error correcting code allowsthe users to successfully exchange messages using just twotime slots. While this coarse analysis seems to favor un-coded transmission, we must account for the level of errorcorrection needed to recover from the errors introduced atthe relay. In Section VII, we compare the performance ofthis strategy to other strategies.
There has been a great deal of interest in the ideabehind this example and many powerful extensions andgeneralizations have been developed for fading channels[55]–[59], asynchronous scenarios [60]–[62], code-division multiple access [63], and practical deployments[64]. See [65] for a survey. As mentioned earlier, the signalobserved at the relay can be treated as the output of a noisymodulo-2 adder so the relay can attempt to denoise themodulo-2 sum if each transmitter employs the same linearcode [45], [54], [66]. In practice, this can be accomplishedusing low-complexity codes such as fountain codes [67],repeat–accumulate codes [68], or low-density parity-check(LDPC) codes [69]. In larger networks, errors can also beleft uncorrected and dealt with using the end-to-endnetwork error correction framework proposed in [70].
B. Analog SignalingInstead of mapping the complex-valued output of the
wireless channel into a finite field, the linear network codingframework can be modified to operate directly in thecomplex field. This can result in significant performance4Note that we can model any SNR by changing the noise variance.
Fig. 9. A physical layer network coding strategy for the two-way relay
channel that requires two time slots. (a) During the first time slot, both
users transmit their messages, which gives the relay access to a noisy
sum of the packets w1 #w2 # e. (b) During the second time slot, the
relay broadcasts this corrupted sum of the messages back to both
users. They use knowledge of their own message to infer a corrupted
version of the other user’s message. With an end-to-end error
correcting code, this scheme can be used for reliably exchanging
information.
Nazer and Gastpar: Reliable Physical Layer Network Coding
Vol. 99, No. 3, March 2011 | Proceedings of the IEEE 447
instructive to consider the behavior at large transmitpower P, characterized by the limit of the ratioR= log!1" P=!2#. For the upper bound, it is clear thatthis limiting slope is 1/2.
The next curve, labeled Blattice,[ is the performance ofreliable physical layer network coding via lattice codes,given in (82). We note that this scheme is close to the upperbound and that it attains the same limiting slope of 1/2.
The following curve, labeled Banalog,[ represents theanalog network coding scheme discussed in Section V-B. Itfollows the upper bound but never meets it. This is becausethe noise observed at the relay is sent along with the de-sired signal, an effect that would be even more detrimentalif there were further stages in the network. In the limit ofhigh transmit power P, this effect becomes negligible andthe optimal limiting slope of 1/2 is attained.
The curve labeled Bnetcod[ is the performance at-tained by the wireless broadcast network coding scheme inSection II-A, depicted in Fig. 4. Each user takes a turnsending its message to the relay and the relay sends themod-2 sum back to the users. This scheme loses out at hightransmit power due to the fact that three channel uses areneeded for each exchange, making for a limiting slopeof 1/3.
The curve labeled Brouting[ is the scheme inSection II-A, depicted in Fig. 3. Each user takes a turnsending its message to the relay and the relay sends theseback to the users. At high transmit power, one can verifythat this leads to a limiting slope of 1/4.
The final curve, labeled BBPSK,[ is the binary schemein Section V-A, according to which each user transmitsits bits uncoded and the relay makes a hard decisionabout the modulo-2 sum. The broadcast phase is ab-stracted as a bit pipe simultaneously to both users with arate corresponding to the capacity of the broadcast chan-nel from the relay to the users (which thus depends on
the transmit power P). Error-correcting codes are thenused end-to-end. Note that due to the fact that BPSK isused, this scheme plateaus at one bit per channel use; ifa larger constellation were used, this plateau effect wouldbe higher (but the performance at low SNR mightsuffer).
As a final caveat, we note that some of the achievableschemes can be slightly improved by optimizing the ratio oftime spent in the different phases. For the present figure, itis assumed that all these phases are of the same length, asin the descriptions provided in Section II-A.
VIII . FADING CHANNELS
If the channel simply outputs a noisy sum of the trans-mitted signals, then it is intuitive that this can be exploitedfor adding up the messages. Yet, in general, the channeloutput will be some linear combination according tocomplex-valued coefficients and it is not immediately clearthat this will be a good match for network coding over afinite field. Here, we demonstrate how to overcome thisobstacle using the compute-and-forward framework weproposed in [107]. First, we show how to reliably computeover real-valued channels and then we use this scheme as abuilding block for complex-valued channels.
A. Real-Valued ChannelsConsider a real-valued channel whose output vector is
just a linear function of the transmitted vectors plus someGaussian noise
y $ h1x1 " h2x2 " % % % " hLxL " z: (83)
Assume that each user selects and transmits a point from anested lattice code. The key idea is that, instead of trying todecode the sum, the receiver should aim to decode aninteger combination of the codewords (modulo the coarselattice)
v $ &a1x1 " a2x2 " % % % " aLxL' mod !: (84)
This integer combination is itself a codeword, due to thelinear structure of the nested lattice code, and is thereforeafforded protection against noise. If these integer coeffi-cients are close enough to the real-valued coefficients ofthe channel, then it seems plausible that the receiver candecode the function successfully. More precisely, thereceiver makes the following estimate of v:
v $ Q!FINE!"y#& ' mod ! (85)
$ Q!FINE &"y' mod !! #& ' mod ! (86)
Fig. 11. A performance comparison of the schemes for the
two-way relay channel discussed in this paper.
Nazer and Gastpar: Reliable Physical Layer Network Coding
Vol. 99, No. 3, March 2011 | Proceedings of the IEEE 453
final thoughts
• cut set bound on throughput
• scaling laws with several physical layer models
• pragmatic
• discovery, routing, scheduling, and coding
• linear network coding
• lattice
final thoughts
• much left to be done
• multiuser information theory for more general networks
• practical network coding for fading channels
• overhead to acquire network information
• feedback
• scheduling
• delay