Lecture 2: Links and Signaling

Similar documents
CSE 123A Computer Networks

Lecture 3: Modulation & Layering"

CSE 123A Computer Networks

Data Link Layer. Indian Institute of Technology Madras

Some portions courtesy Robin Kravets and Steve Lumetta

Direct Link Networks. Framing. Lecture - Encoding & Framing 1. Problems. Areas for Discussion

Page 1. Goals for Today" What Is A Protocol?" CS162 Operating Systems and Systems Programming Lecture 10. Protocols, Layering and e2e Argument"

CE 443: Computer Networks

Announcements Computer Networking. What is the Objective of the Internet? Today s Lecture

CS 640: Introduction to Computer Networks. Today s Lecture. Page 1

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. Nov 1,

Direct Link Networks. Lecture - Encoding & Framing 1. Areas for Discussion. Problems

416 Distributed Systems. Networks review; Day 1 of 2 Jan 5 + 8, 2018

Distributed Systems /640

CS3600 SYSTEMS AND NETWORKS

CSE 461: Protocols and Layering. This Lecture. 1. A top-down look at the Internet 2. Mechanics of protocols and layering 3. The OSI/Internet models

Lecture 2: Layering & End-to-End

CS 43: Computer Networks. 15: Transport Layer & UDP October 5, 2018

cs144 Midterm Review Fall 2010

Introduction to TCP/IP networking

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1

Comparison of ISO-OSI and TCP/IP Suit. Functions of Data Link Layer:

3. (a) What is bridge? Explain the operation of a LAN bridge from to (b) Explain the operation of transparent bridge.

ECE 4450:427/527 - Computer Networks Spring 2017

Links. CS125 - mylinks 1 1/22/14

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

COMP750. Distributed Systems. Network Overview

CS 268: Internet Architecture & E2E Arguments. Today s Agenda. Scott Shenker and Ion Stoica (Fall, 2010) Design goals.

ECE 650 Systems Programming & Engineering. Spring 2018

CSCI-GA Operating Systems. Networking. Hubertus Franke

CSCI-1680 Link Layer I Rodrigo Fonseca

Position of IP and other network-layer protocols in TCP/IP protocol suite

Where we are in the Course

Goals for Today s Class. EE 122: Networks & Protocols. What Global (non-digital) Communication Network Do You Use Every Day?

Computer Networks. Fall 2012 (M 6:15-9:00 in Jbarry 201B) Mirela Damian.

CS519: Computer Networks. Lecture 1 (part 2): Jan 28, 2004 Intro to Computer Networking

Internet II. CS10 : Beauty and Joy of Computing. cs10.berkeley.edu. !!Senior Lecturer SOE Dan Garcia!!! Garcia UCB!

CSCI-1680 Physical Layer Link Layer I Rodrigo Fonseca

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2. Goals for Todayʼs Lecture. Role of Transport Layer

14-740: Fundamentals of Computer and Telecommunication Networks

Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS

The Internet. Overview. Network building blocks

Links Reading: Chapter 2. Goals of Todayʼs Lecture. Message, Segment, Packet, and Frame

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2

Packet Switching - Asynchronous Transfer Mode. Introduction. Areas for Discussion. 3.3 Cell Switching (ATM) ATM - Introduction

416 Distributed Systems. Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018

POS on ONS Ethernet Cards

Lecture 2: Internet Architecture

Communications Software. CSE 123b. CSE 123b. Spring Lecture 2: Internet architecture and. Internetworking. Stefan Savage

Lecture 3 Protocol Stacks and Layering

Inst: Chris Davison

The SpaceWire Transport Protocol. Stuart Mills, Steve Parkes University of Dundee. International SpaceWire Seminar 5 th November 2003

Lecture (03) Networking Model (TCP/IP) Networking Standard (OSI) cont.,..

Need For Protocol Architecture

Lecture 9: Internetworking

Lecture (02) Networking Model (TCP/IP) Networking Standard (OSI) (I)

EE 610 Part 2: Encapsulation and network utilities

Lecture (03) Network Model

Data Link Technology. Suguru Yamaguchi Nara Institute of Science and Technology Department of Information Science

Data Link Networks. Hardware Building Blocks. Nodes & Links. CS565 Data Link Networks 1

Framing and Stuffing. Advanced Computer Networks

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

The Internet Protocol (IP)

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16

Lecture 11: Fragmentation & Addressing. CSE 123: Computer Networks Stefan Savage

CS4700/CS5700 Fundaments of Computer Networks

Layered Architecture

Part 5: Link Layer Technologies. CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross

CSE/EE 461 Lecture 2. Protocols and Layering. Last Time. This Lecture

Computer Network. Direct Link Networks Reliable Transmission. rev /2/2004 1

Page 1. Review: The Problem" Software System Modularity" Solution: Intermediate Layers"

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

Lecture (02) The TCP/IP Networking Model

RMIT University. Data Communication and Net-Centric Computing COSC 1111/2061. Lecture 2. Internetworking IPv4, IPv6

(Refer Slide Time: 1:09)

The Data Link Layer Chapter 3

EEC-682/782 Computer Networks I

UNIT I FUNDAMENTALS & LINK LAYER

Business Data Networks and Security 10th Edition by Panko Test Bank

Network Architecture COS 461: Computer Networks

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

Code No: RR Set No. 1

Need For Protocol Architecture

Introduction to Networks and the Internet

Outline : Computer Networking. Objectives. Who s Who? Administrivia. Layering. L-1 Intro to Computer Networks

Network Architecture. TOC Architecture

POS on ONS Ethernet Cards

Class Overview. CSE 123b Communications Software. Some hints. Some hints (2) Administrativa. Course material. Winter 2002

Multiple unconnected networks

Network Architecture

Peer entities. Protocol Layering. Protocols. Example

CSE 123b Communications Software

Direct Link Networks: Building Blocks (2.1), Encoding (2.2), Framing (2.3)

Lecture (02) The TCP/IP Networking Model

CompSci 356: Computer Network Architectures. Lecture 8: Spanning Tree Algorithm and Basic Internetworking Ch & 3.2. Xiaowei Yang

ECE 435 Network Engineering Lecture 15

CSC2209 Computer Networks

5th Slide Set Computer Networks

Lecture (02, 03) Networking Model (TCP/IP) Networking Standard (OSI)

Transcription:

Lecture 2: Links and Signaling CSE 123: Computer Networks Alex C. Snoeren DISCUSSION @7pm Tomorrow

Our Problem Communications is complicated Modulation and encoding bits Splitting sequences of bits into packets Fixing errors Controlling access to network Routing Recovering from lost messages Etc. Really hard to think about all of this and get it right Not all applications need all of it How to achieve interoperability? 2

Layering: A Modular Approach Sub-divide the problem Each layer relies on services from layer below Each layer exports services to layer above Interface between layers defines interaction Hides implementation details (encapsulation) Layers can change without disturbing other layers (modularity) Interface among peers in a layer is a protocol If peers speak same protocol, they can interoperate 3

Key Design Decision How do you divide functionality across the layers? End-to-end argument [Saltzer84] Functionality should be implemented at a lower layer iff it can be correctly and completely implemented there Incomplete versions of a function can be used as a performance enhancement, but not for correctness Early, and still relevant, example ARPAnet provided reliable link transfers between switches Was this enough for reliable communication? No, packets could still get corrupted on host-switch link, or inside of the switches Hence, still need reliability at higher layers 4

Protocol Standardization Communicating hosts speaking the same protocol Standardization to enable multiple implementations Or, the same folks have to write all the software Internet Engineering Task Force Based on working groups that focus on specific issues Produces Request For Comments (RFCs)» Rough consensus and running code» After enough time passes, promoted to Internet Standards Other standards bodies exist ISO, ITU, IEEE, etc. 5

TCP/IP Protocol Stack host host HTTP Application Layer HTTP TCP Transport Layer TCP router router IP IP Network Layer IP IP Ethernet interface Ethernet interface SONET interface Link Layer SONET interface Ethernet interface Ethernet interface 6

Encapsulation via Headers Typical Web packet Ethernet Hdr IP Hdr TCP Hdr HTTP Hdr Payload (Web object) datalink network transport application Start of packet End of packet Notice that layers add overhead Space (headers), effective bandwidth Time (processing headers, peeling the onion ), latency 7

Internet Protocol Suite FTP HTTP NV TFTP Applications TCP UDP Transport IP Thin Waist NET 1 NET 2 NET n Data Link Physical The Hourglass Model 8

Later: Phy/(MAC)Link layer Signal encoding Encode binary data from source node into signals that physical links carry Signal is decoded back into binary data at receiving node Work performed by network adapter at sender and receiver Media access Arbitrate which nodes can send frames at any point in time Not always necessary; e.g. point-to-point duplex links 9

For now: (Data) Link Layer Framing Break stream of bits up into discrete chunks Error handling Detect and/or correct errors in received frames Multiplexing Determine appropriate destination for a given frame Also not always required; again, point-to-point 10

Today s Focus: Framing Break down a stream of bits into smaller, digestible chunks called frames Allows the link to be shared Multiple senders and/or receivers can time multiplex the link Each frame can be separately addressed Provides manageable unit for error handling Easy to determine whether something went wrong And perhaps even to fix it if desired 11

What s a Frame? Header Payload Trailer Wraps payload up with some additional information Header usually contains addressing information Maybe includes a trailer (w/checksum next lecture) Basic unit of reception Link either delivers entire frame payload, or none of it Typically some maximum transmission unit (MTU) Some link layers require absence of frames as well I.e., minimum gaps between frames 12

Identifying Frames First task is to delineate frames Receiver needs to know when a frame starts and ends Otherwise, errors from misinterpretation of data stream Several different alternatives Fixed length (bits) frames Explicitly delimited frames» Length-based framing» Sentinel-based framing Fixed duration (seconds) frames 13

Fixed-Length Frames Easy to manage for receiver Well understood buffering requirements Introduces inefficiencies for variable length payloads May waste space (padding) for small payloads Larger payloads need to be fragmented across many frames Very common inside switches Requires explicit design tradeoff ATM uses 53-byte frames (cells) Why 53? 48 + 5. Why 48? 14

Length-Based Framing Start Length Payload To avoid overhead, we d like variable length frames Each frame declares how long it is E.g. DECNet DDCMP What s the issue with explicit length field? Must correctly read the length field (bad if corrupted)» Need to decode while receiving Still need to identify the beginning 15

Sentinel-based Framing Allow for variable length frames Idea: mark start/end of frame with special marker Byte pattern, bit pattern, signal pattern But must make sure marker doesn t appear in data Two solutions Special non-data physical-layer symbol» Impact on efficiency (can t use symbol for data) of code Stuffing» Dynamically remove marker bit patterns from data stream» Receiver unstuffs data stream to reconstruct original data 16

Stuffing Insert bytes/bits into data stream to make sure that sentinel (flag) does not appear in payload 17

Bit-level Stuffing Avoid sentinel bit pattern in payload data Commonly, sentinel is bit pattern 01111110 (0x7E) Invented for SDLC/HDLC, now standard pattern Sender: any time five ones appear in outgoing data, insert a zero, resulting in 0111110 Receiver: any time five ones appear, removes next zero Stuffed bits If there is no zero, there will either be six ones (sentinel) or It declares an error condition! 011111100001110111011111011111001 011111010000111011101111100111110001 Note bit pattern that cannot appear is 01111111 (0x7F) What s the worst case for efficiency? 18

Byte Stuffing Same as bit stuffing, except at byte (character) level Generally have two different flags, STX and ETX Found in PPP, DDCMP, BISYNC, etc. Need to stuff if either appears in the payload Prefix with another special character, DLE (data-link escape) New problem: what if DLE appears in payload? Stuff DLE with DLE! Could be as bad as 50% efficient to send all DLEs STX HEADER Payload ETX 0x48 ETX 0x69 0x48 DLE ETX 0x69 19

For Next Class Read 2.4 Take a look at Project 1 20