CS 640: Introduction to Computer Networks Aditya Akella Lecture 5 - Encoding and Data Link Basics.

Slides:



Advertisements
Similar presentations
Physical Layer II: Framing, SONET, SDH, etc.
Advertisements

CSCI-1680 Physical Layer Link Layer I Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
1 Chapter 2 Agenda Announcements / updates Gayle Laakman McDowell, 10/11, 4:30pm, UW2-005 GUIs / IDEs for remotely accessing uw1-320-lab Other references.
Lecture 3, 1Spring 2003, COM1337/3501CCN: Direct Link Networks Direct Link Networks Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie,
1 Computer Communication & Networks Lecture 6 Physical Layer: Digital Transmission Waleed Ejaz
CS 4700 / CS 5700 Network Fundamentals Lecture 5: Physical Layer (The layer for EE majors…) Revised 1/14/13.
Framing and Stuffing Advanced Computer Networks. Framing & Stuffing Outline  Synchronous vs Asynchronous Transmissions  Asynchronous Character Transmissions.
Spring 2002CS 4611 Outline Encoding Framing Error Detection Sliding Window Algorithm Point-to-Point Links.
Fundamentals of Computer Networks ECE 478/578 Lecture #3: Encoding and Framing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
1 Physical Layer: Data Encoding & Transmission. 2 Network Interface Card (NIC) LL in part, PL in total are implemented in NIC –Ethernet card, card,
1 Outline Encoding Framing Error Detection Sliding Window Algorithm Point-to-Point Links.
Bit and Byte Stuffing1. 2 Synchronous versus Asynchronous Transmissions There exists a hierarchy of synchronization tasks: –Bit level : recognizing the.
Computer Networking Lecture 5 - Coding and Error Control © CMU 2010.
Network Data Organizational Communications and Technologies Prithvi N. Rao Carnegie Mellon University Web:
Spring 2003CS 4611 Outline Encoding Framing Error Detection Sliding Window Algorithm Point-to-Point Links.
CS 164: Slide Set 3: Chapter 2 Direct Link Networks.
Networks: Bit and Byte Stuffing
Framing and Encoding EECS 122: Lecture 26 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 4 Digital Transmission.
Computer Networks: Bit and Byte Stuffing 1 Bit and Byte Stuffing.
331: STUDY DATA COMMUNICATIONS AND NETWORKS.  1. Discuss computer networks (5 hrs)  2. Discuss data communications (15 hrs)
LECTURE 5 CT1303 LAN. DATA ENCODING Digital signal: is a sequence of discrete, discontinuous voltage pulses. Each pulse is a signal element Binary data.
NETWORKING CONCEPTS. DATA LINK LAYER Data Link Control main functions of the data link layer are Data link control media access control. Data link control.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 4 - Physical Layer Transmission and Link Layer Basics.
EE 122: Encoding And Framing Ion Stoica September 9, 2002.
CSCI-1680 Physical Layer Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
CSE331: Introduction to Networks and Security Lecture 3 Fall 2002.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Digital Encoding.
Computer Communication & Networks Lecture # 05 Physical Layer: Signals & Digital Transmission Nadeem Majeed Choudhary
Multi Level, Multi Transition & Block Codes
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Data Link Layer Part I – Designing Issues and Elementary.
CHAPTER 2 HARDWARE BUILDING BLOCK ENCODING FRAMING ERROR DETECTION.
جلسه هشتم شبکه های کامپیوتری به نــــــــــــام خدا.
Lecture 6: Framing and Error Detection-Data Link Layer Functions
27-Oct-15Computer Networks1 Outline Chapter 2: Direct Link Networks Encoding Framing Error Detection Sliding Window Algorithm Point-to-Point Links.
The Data Link Layer Goal –As reliable as possible, efficient communication Point-to-Point –single connection –bits arrive in order sent Not necessarily.
Lecture © 2008 Lecture 6 Physical Layer (Cont) & Data Link Layer 1.
Fall 2000Datacom 11 Outline Hardware Building Blocks Encoding Framing Error Detection Sliding Window Algorithm Point-to-Point Links.
CS 4700 / CS 5700 Network Fundamentals
1 CHAPTER 2 HARDWARE BUILDING BLOCK ENCODING FRAMING ERROR DETECTION.
Link Layer Dr. Mozafar Bag-Mohammadi Ilam University.
CSCI-1680 Physical Layer Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
CS 640: Computer Networks Aditya Akella Lecture 6 - Datalink Layer I.
9-Jan-164/598N: Computer Networks Overview Performance metrics - Section 1.5 Direct link networks –Hardware building blocks - Section 2.1 –Encoding - Section.
Physical Layer Issues and Methods Outline Physical Layer Overview Non-Return to Zero Manchester 4B/5B.
Datalink – Framing, Switching. From Signals to Packets Analog Signal “Digital” Signal Bit Stream Packets
Wireless and Mobile Networks (ELEC6219) Session 3: Theories of Data Communications. Data Link Layer. Adriana Wilde and Jeff Reeve 22 January 2015.
CSCI 465 Data Communications and Networks Lecture 8 Martin van Bommel CSCI 465 Data Communications and Networks 1.
Framing and Stuffing Advanced Computer Networks. Framing & Stuffing Outline  Synchronous vs Asynchronous Transmissions  Asynchronous Character Transmissions.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 6: Datalink layer problems Slides used.
1 Point-to-Point Links: Encoding Encoding: Section 2.2 (Section 2.1 read on your own)
Lect-10-2: Physical Layer Computer Networks : An Introduction to Computer Networks Handout #12: Physical Layer Signaling, Coding and Clocking.
24/11/1013-Datalink1 The Data Link Layer Role Services Functions –Framing –Encapsulation –Addressing –Connection Control –Ordered Delivery –Flow Control.
Getting Connected (Chapter 2 Part 1)
The University of Adelaide, School of Computer Science
Data Link Networks Hardware Building Blocks Nodes & Links CS380
CS 3700 Networks and Distributed Systems
CSCI-1680 Physical Layer Link Layer I
Lecture 1 Line Encoding 2nd semester
CS 3700 Networks and Distributed Systems
NET301 Lecture 5 10/18/2015 Lect5 NET301.
NET301 Lecture 5 10/18/2015 Lect5 NET301.
Ion Stoica September 6, 2001 EE 122: Lecture 4 Ion Stoica September 6, 2001.
CS 4700 / CS 5700 Network Fundamentals
Fundamentals of Computer Networks
Data Transmission And Digital Communication
Hardware Building Blocks
Home work project #1 Develop and fully debug your program on the Cushing 208 lab. Machines - planet lab machines may not have good development environment.
Networks: Bit and Byte Stuffing
EECS 122: EE122: Error Detection and Reliable Transmission
Presentation transcript:

CS 640: Introduction to Computer Networks Aditya Akella Lecture 5 - Encoding and Data Link Basics

Signals, Data and Packets Analog Signal “Digital” Signal Bit Stream Packets Header/Body ReceiverSender Packet Transmission

Binary data to Signals Modulation: changing attributes of signal to effect information transmissions Encoding –How to convert bits to “digital” signals –Very complex, actually –Error recovery, clock recovery,…

Modulation Schemes Data Amplitude Modulation Frequency Modulation Phase Modulation

Why Do We Need Encoding? Meet certain electrical constraints. –Receiver needs enough “transitions” to keep track of the transmit clock –Avoid receiver saturation Create control symbols, besides regular data symbols. –E.g. start or end of frame, escape,... –Important in packet switching Error detection or error corrections. –Some codes are illegal so receiver can detect certain classes of errors –Minor errors can be corrected by having multiple adjacent signals mapped to the same data symbol Encoding can be very complex, e.g. wireless.

Encoding Use two signals, high and low, to encode 0 and 1. Transmission is synchronous, i.e., a clock is used to sample the signal. –In general, the duration of one bit is equal to one or two clock ticks –Receiver’s clock must be synchronized with the sender’s clock Encoding can be done one bit at a time or in blocks of, e.g., 4 or 8 bits.

Non-Return to Zero (NRZ) 1 -> high signal; 0 -> low signal Long sequences of 1’s or 0’s can cause problems: –Hard to recover clock –Difficult to interpret 0’s and 1’s V

Non-Return to Zero Inverted (NRZI) 1 -> make transition; 0 -> signal stays the same Solves the problem for long sequences of 1’s, but not for 0’s. V

Ethernet Manchester Encoding Positive transition for 0, negative for 1 XOR of NRZ with clock Transition every cycle communicates clock (but need 2 transition times per bit) Problem: doubles the rate at which signal transitions are made –Less efficient –Receiver has half the time to detect the pulse V  s

4B/5B Encoding Data coded as symbols of 5 line bits => 4 data bits, so 100 Mbps uses 125 MHz. –Uses less frequency space than Manchester encoding Each valid symbol has no more than one leading zero and no more than two trailing zeros –At least two 1s  Get dense transitions Uses NRZI to encode the 5 code bits –What happens if there are consecutive 1s? Example: FDDI.

4B/5B Encoding DataCode DataCode 16 data symbols, 8 control symbols –Control symbols: idle, begin frame, etc. –Remaining 8 are invalid

Other Encodings 8B/10B: Fiber Channel and Gigabit Ethernet –DC balance 64B/66B: 10 Gbit Ethernet B8ZS: T1 signaling (bit stuffing)

Datalink Protocol Functions 1.Framing: encapsulating a network layer Add header, mark and detect frame boundaries, … 2.Error control: error detection and correction to deal with bit errors. May also include other reliability support, e.g. retransmission 3.Error correction: Correct bit errors if possible 4.Flow control: avoid sender outrunning the receiver. 5.Media access: controlling which frame should be sent over the link next –Easy for point-to-point links Half versus full duplex –Harder for multi-access links Who gets to send? 6.Switching: How to send frames to the eventual destination?

Preamble Postamble Framing A link layer function, defining which bits have which function Minimal functionality: mark the beginning and end of packets (or frames). Some techniques: –frame delimiter characters with character stuffing –frame delimiter codes with bit stuffing –synchronous transmission (e.g. SONET) out of band delimiters Body

Byte Stuffing Mark end of frame with special character –BISYNC uses “ETX” –What happens when the user sends this character? Use escape character when controls appear in data –Very common on serial lines; old technique –View frame as a collection of bytes Body SYN SOH Header STX ETX CRC

Byte Counting An alternative is to include a count of number of bytes –Next to the start of frame –E.g. DDCMP –Corruptions of count field may cause receiver to receive incorrectly –Include an error-check to help receiver realize this Body Header SYN Class Count CRC

Bit Stuffing Treat frames as a sequence of bits Mark frames with special bit sequence –Example, HDLC: is a special sequence or “flag” Used at the beginning and end of frame –But, must ensure data containing this sequence can be transmitted Flag can cross byte boundaries –transmitter inserts a 0 when this is likely to appear in the data: > must stuff a zero any time five 1s appear: –receiver unstuffs. Problem with stuffing techniques: frame size depends on data –Frames can be of different size –Could lead to some inefficiencies Body Header CRC Beginning Sequence Ending Sequence