Forward Error Correction Steven Marx CSC45712/04/2001.

Slides:



Advertisements
Similar presentations
1 A triple erasure Reed-Solomon code, and fast rebuilding Mark Manasse, Chandu Thekkath Microsoft Research - Silicon Valley Alice Silverberg Ohio State.
Advertisements

Finite Fields Rong-Jaye Chen. p2. Finite fields 1. Irreducible polynomial f(x)  K[x], f(x) has no proper divisors in K[x] Eg. f(x)=1+x+x 2 is irreducible.
BCH Codes Hsin-Lung Wu NTPU.
Mathematics of Cryptography Part II: Algebraic Structures
Computer Networking Error Control Coding
Cryptography and Network Security
Digital Fountain Codes V. S
CHANNEL CODING REED SOLOMON CODES.
Introduction to Information Technologies
Error Detection and Correction
Cellular Communications
Transmission Errors Error Detection and Correction
Error Detection and Correction
Error Detection and Correction
Transmission Errors1 Error Detection and Correction.
1 Forward Error Correction Shimrit Tzur-David School of Computer Science and Engineering Hebrew University of Jerusalem.
1 K. Salah Module 4.0: Data Link Layer The Logical Link Control (LLC) sublayer –Framing –Flow Control –Error Control The Media Access Control (MAC) sublayer.
Redundant Data Update in Server-less Video-on-Demand Systems Presented by Ho Tsz Kin.
Chapter 2 : Direct Link Networks (Continued). So far... Modulation and Encoding Link layer protocols Error Detection -- Parity Check.
Forward Error Correction. FEC Basic Idea Send redundant data Receiver uses it to detect/correct errors Reduces retransmissions/NAKs Useful when RTT is.
DIGITAL COMMUNICATION Coding
Mario Vodisek 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Erasure Codes for Reading and Writing Mario Vodisek ( joint work.
Transmission Errors Error Detection and Correction
Computer Science CSC 774Dr. Peng Ning1 CSC 774 Advanced Network Security Topic 2.4 Rabin’s Information Dispersal Algorithm Slides by Sangwon Hyun.
FINITE FIELDS 7/30 陳柏誠.
CPSC 3730 Cryptography and Network Security
1 S Advanced Digital Communication (4 cr) Cyclic Codes.
Channel Coding and Error Control
Channel Coding Part 1: Block Coding
Part.7.1 Copyright 2007 Koren & Krishna, Morgan-Kaufman FAULT TOLERANT SYSTEMS Part 7 - Coding.
1 Forward Error Correction in Sensor Networks Jaein Jeong, Cheng-Tien Ee University of California, Berkeley.
Monoids, Groups, Rings, Fields
1 SNS COLLEGE OF ENGINEERING Department of Electronics and Communication Engineering Subject: Digital communication Sem: V Cyclic Codes.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Chapter 4 – Finite Fields
1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
Data Security and Encryption (CSE348) 1. Lecture # 12 2.
MIMO continued and Error Correction Code. 2 by 2 MIMO Now consider we have two transmitting antennas and two receiving antennas. A simple scheme called.
Chapter 3 Digital Transmission Fundamentals Line Coding Error Detection and Correction.
CprE 545 project proposal Long.  Introduction  Random linear code  LT-code  Application  Future work.
Linear Feedback Shift Register. 2 Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple.
Information Security Lab. Dept. of Computer Engineering 87/121 PART I Symmetric Ciphers CHAPTER 4 Finite Fields 4.1 Groups, Rings, and Fields 4.2 Modular.
Forward Error Correction vs. Active Retransmit Requests in Wireless Networks Robbert Haarman.
Computer Networks Lecture 2: Data Link Based on slides from D. Choffnes Northeastern U. and P. Gill from StonyBrook University Revised Autumn 2015 by S.
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
Cryptography and Network Security Chapter 4. Introduction  will now introduce finite fields  of increasing importance in cryptography AES, Elliptic.
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
FEC Linear Block Coding
Channel Capacity. Techniques to reduce errors in digital communication systems Automatic repeat request (ARC) Forward error correction (FEC) Channel.
2016/2/14 1 Error Correction Code (1) Fire Tom Wada Professor, Information Engineering, Univ. of the Ryukyus.
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Error Correction/Detection.
Class Report 林格名 : Reed Solomon Encoder. Reed-Solomom Error Correction When a codeword is decoded, there are three possible outcomes –If 2s + r < 2t (s.
RS – Reed Solomon Error correcting code. Error-correcting codes are clever ways of representing data so that one can recover the original information.
FIRST REVIEW.
Advanced Computer Networks
Data Link Layer What does it do?
Chapter 3 Digital Transmission Fundamentals
DIGITAL COMMUNICATION Coding
Lecture 3 Digital Transmission Fundamentals
Transmission Errors Error Detection and Correction
Error Correction Code (1)
Erasure Correcting Codes for Highly Available Storage
Transmission Errors Error Detection and Correction
Error Correction Code (1)
296.3:Algorithms in the Real World
Error detection: Outline
Presentation transcript:

Forward Error Correction Steven Marx CSC45712/04/2001

Outline What is FEC? Why do we need it? How does it work? Where is it used?

What is FEC? Send k packets Reconstruct n packets Such that we can tolerate k-n losses Called an (n, k) FEC code

What is FEC? (2)

Why FEC? Alternatives: ARQ (Automatic Repeat reQuest) requires feedback bad for multicast tolerance only suitable for some applications

Why FEC? (2) Advantages: sometimes no feedback channel necessary long delay path one-way transmission avoids multicast problems Disadvantages: computationally expensive requires over-transmission

How is this possible? An easy example: (n, k) = (2, 3) FEC code transmitting two numbers: a and b Send three packets: 1.a 2.b 3.a + b

How is this possible? (2) Could be represented as matrix multiplication To encode: To decode, use subset of rows.

How is this possible? (3) More generally: y = Gx, where G is a “generator matrix” G is constructed in such a way that any subset of rows is linearly independent. A “systematic” generator matrix includes the identity matrix.

A Problem a and b are 8-bit numbers a + b may require more bits loss of precision means loss of data

A Solution Finite fields: field: we can add, subtract, multiply, and divide as with integers closed over these operations finite: finite number of elements

A Solution (2) Specific example: “prime field” or “Galois Field” - GF(p) elements 0 to p-1 modulo p arithmetic Problem: with the exception of p = 2,  log(p)  > log(p) bits required requires modulo operations

Extension Fields q = p r elements with p prime, r > 1 “extension field”, or GF(p r ) elements can be considered polynomials of degree r - 1 sum just sum modulo p extra simple with p = 2: exactly r bits needed sums and differences just XORs

Multiplication and Division Exists an α whose powers generate all non- zero elements. In GF(5), α = 2, whose powers are (1,2,4,3,1,…). Powers of α repeat with period q - 1, so α q-1 = α 0 = 1

Multiplication and Division (2) for all x, x = α l l is x’s “logarithm”

Multiplication and Division (3) An example: GF(5) -> α = 2 3 = 2 3 mod 5 4 = 2 2 mod 5 3 * 4 = mod 5 = 32 mod 5 = 2 mod 5 3 * 4 = 12 mod 5 = 2 mod 5

Vandermonde Matrices g i,j = x i j-1 x i ’s are elements of GF(p r ) called “Vandermonde Matrices” invertible if all x i ’s different y = Gx G -1 y = G -1 Gx = x can be extended with the identity matrix for systematic codes

Swarmcast - a real example for media distribution reduces bandwidth requirements of the server server transmits to a small number of clients while downloading, those clients also transmit packets to other clients FEC used to maximize chances of getting useful packets

Swarmcast (2) Star Wars: Episode Two Trailer 300Mb/s 100Mb/s 50Mb/s 100Mb/s 50Mb/s

Other useful applications multicast streaming media: less “I” frames in MPEGS one-way communication high delay pathways storage

Conclusion FEC: allows error correction without retransmission requires redundancy in transmission useful for multicast not extensively used at the packet level more important with high bandwidth, high latency, as is the trend