Network coding techniques

Slides:



Advertisements
Similar presentations
Network Coding for the Internet Philip A. Chou*, Yunnan Wu, and Kamal Jain* * Microsoft Research & Princeton University Communication Theory Workshop,
Advertisements

Practical Network Coding for the Internet and Wireless Networks Philip A. Chou with thanks to Yunnan Wu, Kamal Jain, Pablo Rodruiguez Rodriguez, Christos.
ROUTING IN INTERMITTENTLY CONNECTED MOBILE AD HOC NETWORKS AND DELAY TOLERANT NETWORKS: OVERVIEW AND CHALLENGES ZHENSHENG ZHANG.
Multicasting in Mobile Ad hoc Networks By XIE Jiawei.
XORs in The Air: Practical Wireless Network Coding
Computer Networks Group Universität Paderborn Ad hoc and Sensor Networks Chapter 9: Localization & positioning Holger Karl.
Network coding techniques Elena Fasolo Network coding techniques Elena Fasolo PhD Student - SIGNET Group Wireless Systems - Lecture.
Network Coding in Peer-to-Peer Networks Presented by Chu Chun Ngai
1 Crosslayer Design for Distributed MAC and Network Coding in Wireless Ad Hoc Networks Yalin E. Sagduyu Anthony Ephremides University of Maryland at College.
1 Network Coding: Theory and Practice Apirath Limmanee Jacobs University.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Mobile Ad Hoc Networks Network Coding and Xors in the Air 7th Week.
© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.
Network Coding Project presentation Communication Theory 16:332:545 Amith Vikram Atin Kumar Jasvinder Singh Vinoo Ganesan.
1 NETWORK CODING Anthony Ephremides University of Maryland - A NEW PARADIGM FOR NETWORKING - February 29, 2008 University of Minnesota.
Distributed Priority Scheduling and Medium Access in Ad Hoc Networks Distributed Priority Scheduling and Medium Access in Ad Hoc Networks Vikram Kanodia.
Page 1 Page 1 Network Coding Theory: Tutorial Presented by Avishek Nag Networks Research Lab UC Davis.
Random coding for wireless multicast Brooke Shrader and Anthony Ephremides University of Maryland Joint work with Randy Cogill, University of Virginia.
Low Complexity Algebraic Multicast Network Codes Sidharth “Sid” Jaggi Philip Chou Kamal Jain.
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks Dr. Baruch Awerbuch, David Holmer, and Herbert Rubens Johns Hopkins University Department.
Network Coding vs. Erasure Coding: Reliable Multicast in MANETs Atsushi Fujimura*, Soon Y. Oh, and Mario Gerla *NEC Corporation University of California,
1 Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming Mea Wang, Baochun Li Department of Electrical and Computer Engineering University.
1 Optimal Power Allocation and AP Deployment in Green Wireless Cooperative Communications Xiaoxia Zhang Department of Electrical.
Network Coding and Media Streaming (Invited Paper)
ATM SWITCHING. SWITCHING A Switch is a network element that transfer packet from Input port to output port. A Switch is a network element that transfer.
1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
X1X1 X2X2 Encoding : Bits are transmitting over 2 different independent channels.  Rn bits Correlation channel  (1-R)n bits Wireless channel Code Design:
User Cooperation via Rateless Coding Mahyar Shirvanimoghaddam, Yonghui Li, and Branka Vucetic The University of Sydney, Australia IEEE GLOBECOM 2012 &
Computer Networks with Internet Technology William Stallings
Salah A. Aly,Moustafa Youssef, Hager S. Darwish,Mahmoud Zidan Distributed Flooding-based Storage Algorithms for Large-Scale Wireless Sensor Networks Communications,
CprE 545 project proposal Long.  Introduction  Random linear code  LT-code  Application  Future work.
GPSR: Greedy Perimeter Stateless Routing for Wireless Networks EECS 600 Advanced Network Research, Spring 2005 Shudong Jin February 14, 2005.
Ahmed Osama Research Assistant. Presentation Outline Winc- Nile University- Privacy Preserving Over Network Coding 2  Introduction  Network coding 
Network Information Flow Nikhil Bhargava (2004MCS2650) Under the guidance of Prof. S.N Maheshwari (Dept. of Computer Science and Engineering) IIT, Delhi.
Computer Science Division
Nour KADI, Khaldoun Al AGHA 21 st Annual IEEE International Symposium on Personal, Indoor and Mobile Radio Communications 1.
Key insight.  With drop-when-decoded, the busy period of the virtual queue contributes to the physical queue size calculation  Responding to ACK of the.
Trading Structure for Randomness in Wireless Opportunistic Routing Szymon Chachulski, Michael Jennings, Sachin Katti and Dina Katabi MIT CSAIL SIGCOMM.
KAIS T Location-Aided Flooding: An Energy-Efficient Data Dissemination Protocol for Wireless Sensor Networks Harshavardhan Sabbineni and Krishnendu Chakrabarty.
Submission doc.: IEEE /0317r0 March 2016 R.W. Yeung & S. Yang, CUHKSlide 1 BATS: Network Coding for Wireless Relay Networks Date: Authors:
William Stallings Data and Computer Communications
TCP+Network Coding Li Shushi
Salah A. Aly ,Moustafa Youssef, Hager S. Darwish ,Mahmoud Zidan
Ch 13 WAN Technologies and Routing
Computing and Compressive Sensing in Wireless Sensor Networks
SENSYS Presented by Cheolki Lee
ECE 544 Protocol Design Project 2016
Advanced Computer Networks
Network Coding and its Applications in Communication Networks
MinJi Kim, Muriel Médard, João Barros
Xors in the air Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft.
ODMRP Enhancement.
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
Net 435: Wireless sensor network (WSN)
Network Coding TexPoint fonts used in EMF.
Mobile and Wireless Networking
Wireless Communication Co-operative Communications
Presented by LINGLING MENG( ), XUN XU( )
Su Yi Babak Azimi-Sadjad Shivkumar Kalyanaraman
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks
Topology Control and Its Effects in Wireless Networks
Wireless Communication Co-operative Communications
Throughput-Optimal Broadcast in Dynamic Wireless Networks
CRBcast: A Collaborative Rateless Scheme for Reliable and Energy-Efficient Broadcasting in Wireless Sensor/Actuator Networks Nazanin Rahnavard, Badri N.
Wireless Mesh Networks
<month year> <doc.: IEEE doc> January 2013
Wide Area Networks (WANs), Routing, and Shortest Paths
S.-Y. Robert Li (Bob Li) CUHK
Network Coding for Wireless Sensor Network Storage
Virtual LAN (VLAN).
Presentation transcript:

Network coding techniques Wireless Systems - Lecture Network coding techniques Elena Fasolo PhD Student - SIGNET Group fasoloel@dei.unipd.it March, 7th 2004

Definition of network coding (NC) 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 2000. Improves the performance in data broadcasting Most suitable setting: all to all communications

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

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

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

NC and wireless communications 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 b1 A B C r (b) (c) b2 b1 b2 C C B A A B

Linear network coding 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 [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.

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

Global encoding vector Linear coding phase Transmitted symbol Local encoding vector Global encoding vector

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

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

Theory vs. Practice Theory: Practice: 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

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.

Practical Algorithm Each nodes sends out packets obtained as a random linear combination of packets stored in its buffer 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

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

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.

Packet Format At source nodes At the intermediated nodes

Arriving packets (jitter, loss, variable rate) Summarizing Random Combination Arriving packets (jitter, loss, variable rate) edge Buffer NODE Transmission opportunity: generate packet Asynchronous transmission

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 aij It can be decoded

Costs and benefits Cost: Benefits: 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

Energy efficient broadcasting with NC [5] RING NETWORK 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 [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.

Energy efficient broadcasting with NC GRID NETWORK Consider grid network (toroidal) n = m2 nodes Lemma: Tnc/Tw ≥ ¾ Without NC = Tw ≥ n2 / 3 With NC = Tnc ≥ n2 / 4 Achievable by physical piggybacking

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.

All to all communication scenario Simulation results All to all communication scenario 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

NC in multicast communications

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

Wireless Systems - Lecture Thank you!