CSE 461: Introduction to Computer Communications Networks Autumn Module 2.5 Bit Encoding and Errors

Similar documents
Sheet 7 (Chapter 10)

Data Link Layer Overview

Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine

The finite field with 2 elements The simplest finite field is

Review of Error Detection of Data Link Layer in Computer Network

Chapter 3: Sample Questions, Problems and Solutions Bölüm 3: Örnek Sorular, Problemler ve Çözümleri

Application Note AN-00160

Computer Networks. Data Link Layer

Manchester Encoder-Decoder for Xilinx CPLDs

CYCLIC REDUNDANCY CHECKS IN USB. Introduction. Two-minute mathematical background

15-441: Computer Networks Homework 1

Transport Layer Protocols

Lecture 3: Signaling and Clock Recovery. CSE 123: Computer Networks Stefan Savage

Written examination in Computer Networks

CSE331: Introduction to Networks and Security. Lecture 9 Fall 2006

How To Encode Data From A Signal To A Signal (Wired) To A Bitcode (Wired Or Coaxial)

Data Storage - II: Efficient Usage & Errors

Physical Layer, Part 2 Digital Transmissions and Multiplexing

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

Data Link Layer. Flow Control. Flow Control

PRODUCT MANUAL SKX OPEN SKX ADVANCE ZN1RX-SKXOPEN. Edition 2 Version 1.1

Candidates should attempt FOUR questions. All questions carry 25 marks.

The string of digits in the binary number system represents the quantity

Ethernet. Ethernet. Network Devices

Process Control and Automation using Modbus Protocol

Token Ring and. Fiber Distributed Data Interface (FDDI) Networks: Token Ring and FDDI 1

Fast Ethernet and Gigabit Ethernet. Networks: Fast Ethernet 1

DATA COMMUNICATIONS AND NETWORKING. Solved Examples

An Interpretation of MIL-STD-1553B

Error Control Coding and Ethernet

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

1. Overview. 2. F-bit Utilization

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

CSE 123: Computer Networks Fall Quarter, 2014 MIDTERM EXAM

Fast Ethernet and Gigabit Ethernet. Computer Networks: Fast and Gigabit Ethernet

6.02 Fall 2012 Lecture #5

Lecture 9 - Message Authentication Codes

Systems I: Computer Organization and Architecture

LLC: Frame Construction. Layer 2: Division into two Parts. Error-detecting and -correcting Codes. Error-correcting Codes

Digital Transmission (Line Coding)

Unit 23. RTP, VoIP. Shyam Parekh

Network Layer: Network Layer and IP Protocol

Clearing the Way for VoIP

IP - The Internet Protocol

Networking Test 4 Study Guide

2011, The McGraw-Hill Companies, Inc. Chapter 3

RARP: Reverse Address Resolution Protocol

Subnetting,Supernetting, VLSM & CIDR

Classes of multimedia Applications

Data Communications & Networks. Session 3 Main Theme Data Encoding and Transmission. Dr. Jean-Claude Franchitti

Mathematical Modelling of Computer Networks: Part II. Module 1: Network Coding

Operating Systems and Computer Networks / Datenverarbeitung 2 / Data Processing 2

Module 7 Internet And Internet Protocol Suite

Performance Measurement of TCP/IP Header Compression

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

= = 3 4, Now assume that P (k) is true for some fixed k 2. This means that

DigiPoints Volume 1. Student Workbook. Module 4 Bandwidth Management

THE OSI REFERENCE MODEL LES M C LELLAN DEAN WHITTAKER SANDY WORKMAN

FIBER OPTIC COMMUNICATIONS. Optical Fibers

Voice Over IP Per Call Bandwidth Consumption

Lecture 2: Protocols and Layering. CSE 123: Computer Networks Stefan Savage

Read this before starting!

Coping with Bit Errors using Error Correction Codes

COMPUTER NETWORKS HANDOUTS LECTURERS # PREPARED BY: HAMMAD KHALID KHAN. Copyright Virtual University of Pakistan

First Semester Examinations 2011/12 INTERNET PRINCIPLES

Based on Computer Networking, 4 th Edition by Kurose and Ross

DATA COMMUNICATION AND NETWORKS

Appendix D T1 Overview

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

Network Security. Security of Wireless Local Area Networks. Chapter 15. Network Security (WS 2002): 15 Wireless LAN Security 1 Dr.-Ing G.

Digital Audio and Video Data

Error detection using CRC

Computer Networks UDP and TCP

Enhancing High-Speed Telecommunications Networks with FEC

Erasure Codes Made So Simple, You ll Really Like Them

ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION

SFWR 4C03: Computer Networks & Computer Security Jan 3-7, Lecturer: Kartik Krishnan Lecture 1-3

Chapter 2 Data Storage

Fault Tolerance & Reliability CDA Chapter 3 RAID & Sample Commercial FT Systems

Distributed Storage Networks and Computer Forensics

Protocol Overhead in IP/ATM Networks

Computer Networks. Chapter 5 Transport Protocols

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

ACHILLES CERTIFICATION. SIS Module SLS 1508

Algorithms and Methods for Distributed Storage Networks 5 Raid-6 Encoding Christian Schindelhauer

Communications and Computer Networks

SDLC Controller. Documentation. Design File Formats. Verification

CSC458 Lecture 6. Homework #1 Grades. Inter-domain Routing IP Addressing. Administrivia. Midterm will Cover Following Topics

Elettronica dei Sistemi Digitali Costantino Giaconia SERIAL I/O COMMON PROTOCOLS

Transport and Network Layer

LIN (Local Interconnect Network):

Lecture 8: Binary Multiplication & Division

ESSENTIALS. Understanding Ethernet Switches and Routers. April 2011 VOLUME 3 ISSUE 1 A TECHNICAL SUPPLEMENT TO CONTROL NETWORK

Chapter 11. User Datagram Protocol (UDP)

Lecture 15. IP address space managed by Internet Assigned Numbers Authority (IANA)

FOUNDATION Fieldbus High Speed Ethernet Control System

Raj Jain. The Ohio State University Columbus, OH These slides are available on-line at:

Transcription:

CSE 461: Introduction to Computer Communications Networks Autumn 2010 Module 2.5 Bit Encoding and Errors Ivayla Dermendjieva iva@cs.washington.edu Some material borrowed from slides by Jeremy Elson and Ben Greenstein. Thanks!

Bit Encoding NRZ NRZI Manchester 4B/5B This Module's Topics Error Detection Parity Internet Checksums CRCs Error Correction Hamming Distance

Bit Encoding Want to send messages, not just bits So break up bit stream into discrete chunks (frames) Synchronize both end points on frame boundaries how? Transmit clock on a separate channel very expensive Integrate clock in data stream

NRZ Simplest form of bit encoding Signal is high to encode a '1' Signal is low to encode a '0' What is a problem with this encoding? Image source: Wikipedia

NRZI NRZ has a problem: difficult to distinguish stream of consecutive 0's or 1's NRZI attempts to alleviate this A signal change (i.e. high to low)encodes a '1' No change in signal encodes a '0' This fixes the problem of sending consecutive 1's but not consecutive 0's Image source: Wikipedia

Manchester Signal Change on every bit Low-to-high encodes a '0' High-to-low encodes a '1' Manchester unambiguously integrates clock and data. What is the downside? Image source: Wikipedia

4B/5B So far, the schemes we have looked at have had shortcomings: NRZ and NRZI run the risk of holding the signal steady when transmitting consecutive bits Manchester reduces efficiency of link Want a scheme which toggles the signal often enough, without significant efficiency overhead 4B/5B encoding assigns a mapping between 4 bit data and 5-bit code words There is a 5 bit code for each possible 4 bit sequence Some 5 bit codes are invalid

4B/5B

Encoding Exercise Show the NRZ, Manchester and NRZI encodings for the above pattern. Assume NRZI signal starts out low

Error Detection and Correction How can we know if the frames we received have not been corrupted in transit? Add additional information to frames Sender computes some property of data and sends it along with the data Receiver computes same property and compares Various methods for determining frame integrity Parity Internet Checksum Cyclic Redundancy Check

Parity Start with n bits and add another bit so that the total number of '1's is even (even parity) i.e. 0110010 01100101 Easy to compute as XOR of all input bits Will detect an odd number of bit errors But not an even number Does not correct any errors Overhead of parity is proportional to data length (i.e. 1 parity bit for every 32 bits of data)

2D Pairity Add pairity row/column to array of bits How many simultaneous bit errors can it detect? Which errors can it correct? What is an example of a 4-bit error that would not be detected by a two-dimensional parity?

Checksums Used in Internet Protocols (IP, ICMP, TCP, UDP) Basic Idea: Add up the data and send it along with sum Algorithm: Add 16 bit chunks using 1s complement Take ones complement of the result Fixed overhead, independent of length of data

Cyclic Redundancy Check (CRC) Stronger protection than checksums Used widely in practice (i.e. Ethernet CRC-32) Implemented in hardware (XORs and shifts) Fixed overhead (independent of data size) Algorithm: Given n bits of data, generate a k bit check sequence that gives a combined n + k bits that are divisible by a chosen divisor C(x) Based on mathematics of finite fields numbers correspond to polynomials, use modulo arithmetic i.e. interpret 10011010 as x 7 + x 4 + x 3 + x 1

CRC Example Extend message with k 0 s, when using a k- degree generator Divide message by generator (XOR) Discard result Subtract remainder from original message On reception, check that message is divisible by generator

CRC Example Suppose we want to transmit the message 11001001 and protect it from errors using the CRC polynomial x 3 + 1. Determine the message that should be transmitted

Hamming Distance Errors must not turn one valid codeword into another valid codeword, or we cannot detect/correct them. Hamming distance of a code is the smallest number of bit differences that turn any one codeword into another e.g, code 000 for 0, 111 for 1, Hamming distance is 3 For code with distance d+1: d errors can be detected, e.g, 001, 010, 110, 101, 011 For code with distance 2d+1: d errors can be corrected, e.g., 001 000