Upload
yeo-sexton
View
34
Download
1
Embed Size (px)
DESCRIPTION
Wireless Systems - Lecture. Network coding techniques. Elena Fasolo PhD Student - SIGNET Group [email protected]. March, 7 th 2004. Definition of network coding (NC). - PowerPoint PPT Presentation
Citation preview
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Network coding techniques
Elena Fasolo
PhD Student - SIGNET Group
Wireless Systems - Lecture
March, 7th 2004
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Definition of network coding (NC)
DEFINITIONNetwork coding is a particular in-network data processing
technique that exploits the characteristics of the wireless medium (in particular, the broadcast communication channel)
in order to increase the capacity or the throughput of the network
Pioneering work: [1] R. Ahlswede, N. Cai, S.-Y. R. Li, and R.W. Yeung, “Network information flow,” IEEE Trans. on Information Theory, vol. 46, no. 4, July 2000.
Improves the performance in data broadcasting Most suitable setting: all to all communications
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Communication networks
TERMINOLOGY Communication network =
finite directed graph Acyclic communication
network = network without any direct cyclic
Source node = node without any incoming edges (square)
Channel = noiseless communication link for the transmission of a data unit per unit time (edge) WX has capacity equal to 2
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
The canonical example (I)
Without network coding Simple store and forward Multicast rate of 1.5 bits per time unit
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
The canonical example (II)
With network coding X-OR is one of the
simplest form of data coding
Multicast rate of 2 bits per time unit
Disadvantages Coding/decoding scheme
has to be agreed upon beforehand
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
NC and wireless communications
b1 b2b2
Problem: send b1 from A to B and b2 from B to A using node C as a relay
A and B are not in communication range (r)
Without network coding, 4 transmissions are required.
With network coding, only 3 transmissions are needed
A A BB CC
b1
A BC
r
(a)
(b) (c)
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Linear network coding
[2] S.-Y. R. Li, R. W. Yeung, and N. Cai, “Linear network Coding”, IEEE Trans. on Information Theory, vol. 49, no. 2, Feb. 2003.
When we refer to linear network coding [2], we intend that:
The output flow at a given node is obtained as a linear combination of its input flows. The coefficients of the combination
are, by definition, selected from a finite field
Coding can be implemented at low computational cost
Moreover, the information traversing a non source node has the following property:
The content of any information flowing out of a set of non source nodes can be derived from the accumulated information that has
flown into the set of nodes
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Theoretical model for linear NC
Graph (V,E) having unit capacity edges Sender s in V, set of receivers T={t,…} in V
Source node of h symbols
Intermediate node Destination node
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Linear coding phase
Global encoding vector
Local encoding vectorTransmitted symbol
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Decoding phase
Node t can recover the source symbols x1, . . . , xh as long as the matrix Gt, formed by the global
encoding vectors, has (full) rank h.
-1
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Inverting Gt
Gt will be invertible with high probability if local encoding vectors are random and the field size is sufficiently large [3]
P = 1 - |F| (where |F| is the cardinality of the finite field of coefficients)
Example:
If field size = 216 and |E| = 28 then Gt will be invertible with probability ≥ 1−2−8 = 0.996
[3] R. Koetter,M.Medard, “An algebraic approach to network coding”, IEEE/ACM Trans. on Networking, Nov.2003
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Theory vs. Practice
Theory: Symbols flow synchronously throughout network Edges have unit (or known integer) capacities Centralized and full knowledge of topology, which is
used to compute encoding and decoding functions
Practice: Information travels asynchronously in packets Packets subject to random delays and losses Edge capacities often unknown, time-varying Difficult to obtain centralized knowledge, or to arrange
reliable broadcast of functions Need for simple solutions, applicable in practice
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Practical Random NC
Main idea [4]: Select the linear coefficients in a finite field of
opportune size in a random way Send the encoding vector within the same packet
Packetization: Header removes need for centralized knowledge of graph topology and encoding/decoding functions
Nodes stores within their buffers the received packets Buffering: Allows asynchronous packets arrivals &
departures with arbitrarily varying rates, delay, loss
[4] P. A. Chou, T.Wu, and K. Jain, “Practical network coding”, in 51st Allerton Conf. Communication, Control and Computing, Oct. 2003.
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Practical Algorithm
Each node receives packets which are a linear combinations of source packets and it stores them into a matrix
If the matrix of a node has full rank (h) or a submatrix with full rank (r < h) exists, the node can decode h (or r) packets at the same time
Each nodes sends out packets obtained as a random linear combination of packets stored in its buffer
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Innovative packets or not
When a node receives a packet, it decides whether to store the packet or discard it Innovative packet: it increases the current
rank of the matrix Non innovative packet: it does not increase
the rank of the matrix. It means that the packet contains redundant information and it is not needed to decode the source packets
Hence, non innovative packets are dropped
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Generations
Need to synchronize All packets related to same source vectors x1,
…, xh are said to be in the same generation; h is the generation size
All packets in same generation are tagged with same generation number (one byte - mod 256 - is sufficient)
Generations are useful to take into account the differences in data types, generation instants, priorities, etc.
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Packet Format
At source nodes
At the intermediated nodes
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Summarizing
Random Combination
Arriving packets (jitter, loss,
variable rate)
edge
edge
edge
edge
Buffer
NODE
Transmission opportunity: generate packet
Asynchronous transmission
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Observations about the decoding phase
Block decoding: Collect h or more packets, hope to invert Gt
Early decoding (recommended): Perform Gaussian elimination after each RX packet At every node, detect & discard non-innovative packets Gt tends to be lower triangular, so it is typically possible
to decode x1,…,xk with fewer more than k packets
Much shorter decoding delay than block decoding Approximately constant, independent of block length h
0aij
It can be decoded
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Costs and benefits
Cost: Overhead of transmitting h extra symbols per packet
Example:
h = 50 and field size = 28 overhead ≈ 50/1400 ≈ 3%
Benefits: Receivers can decode even if
Network topology & encoding functions are unknown Nodes & edges added & removed in ad hoc manner Packet loss, node & link failures with unknown locations Local encoding vectors are time-varying & random
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Energy efficient broadcasting with NC [5]
All nodes are senders; all nodes are receivers
Tnc = # transmissions needed to broadcast with network coding
Tw = # transmissions without network coding
Lemma: Tnc/Tw ≥ ½ Without NC = 6 transmissions
(Tw ≥ n - 2 ) With NC = Tnc ≥ (n – 1)/ 2
Achievable by physical piggybacking
RING NETWORK
[5] J. Widmer, C. Fragouli, and J.-Y. L. Boudec, “Low–complexity energy–efficient broadcasting in wireless ad–hoc networks usign network coding”, in Proc.IEEE Information Theory Workshop, Oct. 2004.
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Consider grid network (toroidal) n = m2 nodes
Lemma: Tnc/Tw ≥ ¾ Without NC = Tw ≥ n2 / 3
With NC = Tnc ≥ n2 / 4
Achievable by physical piggybacking
GRID NETWORK
Energy efficient broadcasting with NC
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Broadcasting in random networks [6]
At each node v in the graph is associated a forwarding factor, dv.
Source node v transmits its source symbols (or packets) max{ 1, | dv | } times. An additional time with probability p = dv - max{ 1, | dv | } if p > 0.
When a node receives an innovative symbol (packet), it broadcasts a linear combination over the span of the received coding vectors int(dv) times And TX a further copy with probability p = dv – int(dv) if p > 0
Two heuristics: dv = k / |N(v)| dv = k / min |N2(v)| where N2(v) are the number of 2-hops neighbors
[6] C. Fragouli, J. Widmer, and J.-Y. L. Boudec, “A network coding approach to energy efficient broadcasting”, Proceedings of INFOCOM06, April 2006.
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Simulation results
Energy consumption: number of transmissions and receptions needed to gather all the required packets
Delay: number of time units needed to decode all the required packets
All to all communication scenario
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
NC in multicast communications
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Summary
Network Coding can be used in practice Packetization Buffering Generation
Network Coding is being applied to Internet, Live broadcast, storage, messaging,
peer2peer file sharing (“eMULE of the future”), … Wireless ad hoc, mobile, and sensor networks
Many open issues
Net
wor
k co
ding
tec
hniq
ues
Ele
na
Fas
olo
Thank you!
Wireless Systems - Lecture