Download presentation

Presentation is loading. Please wait.

Published byHanna Kurk Modified about 1 year ago

1
Network coding techniques Elena Fasolo Network coding techniques Elena Fasolo PhD Student - SIGNET Group Wireless Systems - Lecture March, 7 th 2004

2
Network coding techniques Elena Fasolo Definition of network coding (NC) DEFINITION Network 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 Improves the performance in data broadcasting Most suitable setting: all to all communications

3
Network coding techniques Elena Fasolo 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

4
Network coding techniques Elena Fasolo The canonical example (I) Without network coding Simple store and forward Multicast rate of 1.5 bits per time unit

5
Network coding techniques Elena Fasolo 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

6
Network coding techniques Elena Fasolo NC and wireless communications b1b1 b2b2 b2b2 Problem: send b 1 from A to B and b 2 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 AB B C C b1b1 AB C r (a) (b)(c)

7
Network coding techniques Elena Fasolo 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 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

8
Network coding techniques Elena Fasolo 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 nodeDestination node

9
Network coding techniques Elena Fasolo Linear coding phase Global encoding vector Local encoding vectorTransmitted symbol

10
Network coding techniques Elena Fasolo Decoding phase Node t can recover the source symbols x 1,..., x h as long as the matrix G t, formed by the global encoding vectors, has (full) rank h.

11
Network coding techniques Elena Fasolo Inverting G t G t 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 = 2 16 and |E| = 2 8 then G t will be invertible with probability ≥ 1−2 −8 = [3] R. Koetter,M.Medard, “An algebraic approach to network coding”, IEEE/ACM Trans. on Networking, Nov.2003

12
Network coding techniques Elena Fasolo 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

13
Network coding techniques Elena Fasolo 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

14
Network coding techniques Elena Fasolo 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

15
Network coding techniques Elena Fasolo 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

16
Network coding techniques Elena Fasolo Generations Need to synchronize All packets related to same source vectors x 1,…, x h 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 is sufficient) Generations are useful to take into account the differences in data types, generation instants, priorities, etc.

17
Network coding techniques Elena Fasolo Packet Format At source nodes At the intermediated nodes

18
Network coding techniques Elena Fasolo Summarizing Random Combination Arriving packets (jitter, loss, variable rate) edge Buffer NODE Transmission opportunity: generate packet Asynchronous transmission

19
Network coding techniques Elena Fasolo Observations about the decoding phase Block decoding: Collect h or more packets, hope to invert G t Early decoding (recommended): Perform Gaussian elimination after each RX packet At every node, detect & discard non-innovative packets G t tends to be lower triangular, so it is typically possible to decode x 1,…,x k with fewer more than k packets Much shorter decoding delay than block decoding Approximately constant, independent of block length h 0 a ij It can be decoded

20
Network coding techniques Elena Fasolo Costs and benefits Cost: Overhead of transmitting h extra symbols per packet Example: h = 50 and field size = 2 8 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

21
Network coding techniques Elena Fasolo Energy efficient broadcasting with NC [5] All nodes are senders; all nodes are receivers T nc = # transmissions needed to broadcast with network coding T w = # transmissions without network coding Lemma: T nc /T w ≥ ½ Without NC = 6 transmissions (T w ≥ n - 2 ) With NC = T nc ≥ (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

22
Network coding techniques Elena Fasolo Consider grid network (toroidal) n = m 2 nodes Lemma: T nc /T w ≥ ¾ Without NC = T w ≥ n 2 / 3 With NC = T nc ≥ n 2 / 4 Achievable by physical piggybacking GRID NETWORK Energy efficient broadcasting with NC

23
Network coding techniques Elena Fasolo Broadcasting in random networks [6] At each node v in the graph is associated a forwarding factor, d v. Source node v transmits its source symbols (or packets) max{ 1, | d v | } times. An additional time with probability p = d v - max{ 1, | d v | } 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(d v ) times And TX a further copy with probability p = d v – int(d v ) if p > 0 Two heuristics: d v = k / |N(v)| d v = 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.

24
Network coding techniques Elena Fasolo 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

25
Network coding techniques Elena Fasolo NC in multicast communications

26
Network coding techniques Elena Fasolo 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

27
Network coding techniques Elena Fasolo Thank you! Wireless Systems - Lecture

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google