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

Similar documents
Lecture 3 Protocol Stacks and Layering

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

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

Page # Last Time. Lecture 2 Protocol Stacks and Layering. Today s Lecture. Why protocols and layering? What is a Protocol.

Lecture 2 Protocol Stacks. Last Tuesday

Introduction to Networks

Last Time. Lecture 2 Protocol Stacks and Layering. Today s Lecture. Why protocols and layering? Protocol and Service Levels. How to Design a Network?

Schedule for Today : Wireless Networks Lecture 2: Wireless Networking Challenges. Motivation: Many many Network Components. What is a Protocol

Outline / Wireless Networks and Applications Lecture 1: Course Organization and Overview. Goals of the Course. Lectures.

CS3600 SYSTEMS AND NETWORKS

Announcements. Lecture 2: Wireless Networking Challenges. Motivation: Many many Network Components. Schedule for Today. Page 1

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

Network and Security: Introduction

Lecture 2: Internet Architecture

Distributed Systems /640

Introduction to computer networking

CSCI Computer Networks

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

Switching Networks (Fall 2010) EE 586 Communication and. August 27, Lecture 2. (modified by Cheung for EE586; based on K&R original) 1-1

15-744: Computer Networking. L-1 Intro to Computer Networks

CS4700/5700: Network fundamentals

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

Lecture 2: Links and Signaling

Introduction to the Internet

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

Ch. 4 - WAN, Wide Area Networks

Outline / Wireless Networks and Applications Lecture 1: Course Organization and Overview. Goals of the Course. Lectures.

Course on Computer Communication and Networks. Lecture 1 Chapter 1: Introduction Part A: Internet, Protocol Layering and Data

IP Packet Switching. Goals of Todayʼs Lecture. Simple Network: Nodes and a Link. Connectivity Links and nodes Circuit switching Packet switching

Part 1: Introduction. Goal: Review of how the Internet works Overview

Chapter 1 Introduction

Need For Protocol Architecture

Data Communication & Computer Networks MCQ S

TRANSMISSION CONTROL PROTOCOL. ETI 2506 TELECOMMUNICATION SYSTEMS Monday, 7 November 2016

Need For Protocol Architecture

Lecture 2: Internet Structure

L1: Introduction. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

CSCD 433/533 Advanced Networks

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

Special expressions, phrases, abbreviations and terms of Computer Networks

Communicating over the Network

Data Networks. Lecture 1: Introduction. September 4, 2008

CE 443: Computer Networks

CSE3213 Computer Network I

CS4700/CS5700 Fundaments of Computer Networks

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

CSE 123A Computer Networks

Introduction to Information Science and Technology 2017 Networking II. Sören Schwertfeger 师泽仁

ITEC 3800 Data Communication and Network. Introducing Networks

ELC 537 Communication Networks

Chapter 3: Network Protocols and Communications CCENT Routing and Switching Introduction to Networks v6.0 Instructor Planning Guide

Chapter 2 Communicating Over the Network

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer

TCP/IP THE TCP/IP ARCHITECTURE

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

The Internet. Overview. Network building blocks

Announcements. CS 5565 Network Architecture and Protocols. Outline for today. The Internet: nuts and bolts view. The Internet: nuts and bolts view

Lecture 3: Modulation & Layering"

precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet protocol (bottom level)

4. The transport layer

Network Protocols and Architectures

Internet Architecture & Performance. What s the Internet: nuts and bolts view

Data Communication and Network. Introducing Networks

CS-461 Internetworking. Dr. Mohamed Aboutabl

Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan

Chapter 1. Computer Networks and the Internet

Data & Computer Communication

Goal and Outline. Computer Networking. What Do We Need? Today s Story Lecture 3: Packet Switched Networks Peter Steenkiste

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

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

CPS221 Lecture: Layered Network Architecture

CS 428/528 Computer Networks Lecture 01. Yan Wang

Component Function Example

Goal of Today s Lecture. EE 122: Designing IP. The Internet Hourglass. Our Story So Far (Context) Our Story So Far (Context), Con t

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

CS 43: Computer Networks. Layering & HTTP September 7, 2018

Chapter 2. Communicating Over The Network. CCNA1-1 Chapter 2

M242 COMPUTER NETWORS AND SECURITY

What s a protocol? What s a protocol? A closer look at network structure: What s the Internet? What s the Internet? What s the Internet?

ECE 158A: Data Networks I. Fall 2015 Massimo Franceschetti

Welcome to: Computer Science 457 Networking and the Internet. Fall 2014 Dr. Joseph Gersch

The OSI Model. Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO).

Chapter -4 OSI Reference Model

Copyleft 2005, Binnur Kurt. Objectives

Outline. Inter-Process Communication. IPC across machines: Problems. CSCI 4061 Introduction to Operating Systems

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

Computer Networks and the Internet. CMPS 4750/6750: Computer Networks

b) Diverse forms of physical connection - all sorts of wired connections, wireless connections, fiber optics, etc.

CS 204: Advanced Computer Networks

EECS 228a Lecture 1 Overview: Networks. Jean Walrand

PLEASE READ CAREFULLY BEFORE YOU START

CSC 401 Data and Computer Communications Networks

Chapter 15 Networks. Chapter Goals. Networking. Chapter Goals. Networking. Networking. Computer network. Node (host) Any device on a network

2. A collection of interconnected networks is called an internetwork. 3. Each machine is connected to a central hub with a point-to-point connection.

How does the Internet Look Like?

Layered Architecture

Chapter 2. Communicating Over The Network

Transcription:

Announcements 15-441 15-441 Computer ing 15-641 Lecture 2 Protocol Stacks Peter Steenkiste Fall 2016 www.cs.cmu.edu/~prs/15-441-f16 Sign up for piazza: https://piazza.com/cmu/fall2016/15441641 P1 will be posted tomorrow There will also be a recitation session tomorrow Waiting list significant progress Moved 20+ students to the roster Some students could not be used because they have too few credits Should be able to move more students later today Getting questions answered: Administrative: start with web site Course material: class, office hours Projects: piazza, office hours 2 Today s Lecture Packet versus circuit switching How to design a large Internet Protocols Strawman designs A layered design Life of a packet What is the Objective of the Internet? Enable communication between diverse applications on diverse devices Web, peer-to-peer, video streaming, distributed processing, transactions, map-reduce, video and audio conferencing, over very diverse infrastructures The Internet, WiFi and cellular, data center s, corporate s, dedicated private s, In contrast: previous s were special purpose and fairly homogeneous in terms of technology Context: it is the 1960 s and you are asked to design an Internet your starting point is the telephone 3 4 Page 1

Three Phases of a Connection Circuit Switching Connection set up 1. 2. 3. 4. Pick up phone Dial tone. Dial number selects route; Sets up circuit; Called party alerted Source first establishes a connection (circuit) to the destination Each switch along the way stores info about connection (and possibly allocates resources) Source sends the data over the circuit No need to include the destination address with the data since the switches know the path The connection is explicitly torn down Example: telephone (analog) Information transfer 5. Exchange voice signals Connection release 6. Hang up. 6 Circuit Switching Discussion Circuits have some very attractive properties. Fast and simple data transfer, once the circuit has been established Predictable performance since the circuit provides isolation from other users E.g. guaranteed bandwidth But it also has some shortcomings. How about bursty traffic? Do you need a permanent circuit to Facebook? And are you willing to pay for it Circuit will be idle for significant periods of time In practice you will need circuits to many destinations How about users with different bandwidth needs? Contrast this with Packet Switching (our emphasis) Source sends information as self-contained messages that have an address. Source may have to break up single message in multiple packets Each packet travels independently to the destination. Switches use the address in the packet to determine how to forward the packets Store and forward Analogy: a letter in surface mail. 7 8 Page 2

Packet Switching Discussion General: Multiple types of applications Efficient: Can send from any input that is ready Accommodates bursty traffic efficiently Statistical multiplexing Store and forward architecture Packets are self contained units Can use alternate paths potentially more robust Requires buffering to absorb bursts Contention (i.e. no isolation) Congestion Delay 9 Statistical Multiplexing Packets Users share the wires at a fine grain - packets Links are never idle when there is traffic - Efficient! Requires queues to buffer packets Creates challenges: congestion, losses, fairness, 10 Today s Lecture Packet versus circuit switching How to design a large Internet Protocols Strawman designs A layered design Life of a packet Why is Designing an Internet Hard? Has many users Offers diverse services Mixes very diverse technologies Operating System Links Components built by many companies Diverse ownership Can evolve over time Router Software (many protocols) Operating System 11 Computer Protocol Software Router Hardware 12 Oh, and it is really big! Bridge HW/SW Interface Computer Page 3

But We Can Handle It! What Do We Definitely Need? Protocol: Enable Communication We must have communication hardware and applications: Two devices must be able to talk to each other s since they make the useful and fun Nobody cares if there are no applications We also need to design the so it can grow very big and is always available We need to be able to expand, fix, and improve it While it is up and running: you cannot reboot the Internet An agreement between parties on how communication should take place. Protocols have to define many aspects of the communication: Syntax: Data encoding, language, etc. Semantics: Error handling, termination, ordering of requests, etc. Example: Asking for directions English, facial expression, Example: Buying airline ticket by typing. English, ascii, lines delimited by \n Friendly greeting Muttered reply Destination? Pittsburgh Thank you Do We Only Need Protocols? Solution #1 We also need to deal with: Many pieces of functionality and significant complexity Many parties involved building and running the A very long life time The solution for dealing with complexity is modularity: break up the Internet system in a set of modules with well-defined interfaces Each module performs specific functions Implementation of module can change Can build a large complex system from modules implemented by many parties Let us start with multiple protocols Tw. Pair Web FTP Wireless HTTP UDP Voice The Coax Optical Telnet DNS 16 Page 4

Solution #2? Solution #3 Web FTP Telnet Voice Video Web FTP Telnet Voice Tw. Pair Coax Optical Wireless Intermediate Layer Tw. Pair Coax Optical Wireless 17 18 Types of Protocols Protocol and Service Levels Core : responsible for transferring data between a sending and receiving. End-to-end protocols: present a service to applications and users. Add value to service while keeping the core simple Driven by differences in constraints: scalability, power, management, speed, etc. 19 Channel Host to Host Hardware 20 Layering: modular approach to functionality Page 5

Today s Lecture A Layer Model Packet versus circuit switching How to design a large Internet Protocols Strawman designs A layered design Life of a packet 7 6 5 4 3 The Open Systems Interconnection (OSI) Model Presentation Session Transport Presentation Session Transport 2 Data link Data link Data link Data link 1 21 22 OSI Model: 7 Protocol Layers : how to transmit bits Data link: how to transmit frames : how to route packets Transport: how to send packets end2end Session: how to tie flows together Presentation: byte ordering, security : everything else Let Us Try Again a Bit More Systematically Two or more s talk over a wire Groups of s can talk at two levels Hosts talk in a is homogeneous in terms of administration and technology Hosts talk across s that have different administrators and may use different technology We run some applications over that Datalink Internet / has been amazingly successful, and it is not based on a rigid OSI model. The OSI model has been very successful at shaping thought 23 Page 6

A Bit More Detail The Internet Protocol Suite layer delivers bits between the two endpoints of a link Copper, fiber, wireless, visible light, Datalink layer delivers packets between two s in a local area Ethernet, WiFi, cellular, Best effort service: should expect a modest loss rate Boxes that connect links are called bridges or switches layer connects multiple s The Inter-net protocol () Also offers best effort service Boxes that forward packets are called routers Scaling up the FTP HTTP SMTP DNS UDP NET 1 NET 2 NET n Narrow Waist s UDP Data Link The Hourglass Model The waist facilitates interoperability but evolution is hard 26 Example: Retrieving a Web Page Today s Lecture : HTTP GET files specified by URL and deal with web features (attributes, cookies, ) Presentation: MIME - specify format of the content Session: sockets and maintain state to optimize data transfer, security, Transport: recover from errors, flow and congestion control, : best effort datagram service Datalink: Ethernet,.. best effort packet transfer over different link technologies PHY: Twisted pair, fiber,.. exchange bits between s Packet versus circuit switching How to design a large Internet Protocols Strawman designs A layered design Life of a packet 27 28 Page 7

Layering Characteristics Life of Packet The stack has two types of interfaces Service: each layer relies on services from layer below and exports services to layer above Protocol: defines interaction with peer on other s Modules hide implementation - layers can change without disturbing other layers A layer can implement multiple protocols that offer the same/similar or different services Datalink: Wifi versus Ethernet Transport: versus UDP Presentation Session Transport Data Link Host Bridge/Switch Router/Gateway Host 29 30 How do Peers Communicate: Headers and Layer Encapsulation Multiplexing and Demultiplexing User A Get index.html Connection ID Source/Destination Link Address User B Multiple choices at each layer: how does a protocol on receiver know what protocol is next? Headers include a demultiplexing field that is by receiver used to identify the protocol in the next layer. Filled in by the sender Used by the receiver V/HL TOS Length ID Flags/Offset TTL Prot. H. Checksum Source address Destination address Options.. 31 32 Page 8

Protocol Demultiplexing FTP HTTP SMTP DNS UDP NET 1 NET 2 NET n Type Field What layers do not need a protocol field? Protocol Field /UDP Port Number The Internet Engineering Task Force Standardization is key to interoperability The hardware/software of communicating parties are often not built by the same vendor yet they can communicate because they use the same protocol Internet Engineering Task Force Based on working groups that focus on specific issues Request for Comments Document that provides information or defines standard Requests feedback from the community Can be promoted to standard under certain conditions consensus in the committee interoperating implementations Project 1 will look at the Internet Relay Chat (IRC) RFC 33 34 Other Relevant Standardization Bodies ITU-TS - Telecommunications Sector of the International Telecommunications Union. government representatives (PTTs/State Department) responsible for international recommendations T1 - telecom committee reporting to American National Standards Institute. T1/ANSI formulate US positions interpret/adapt ITU standards for US use, represents US in ISO IEEE - Institute of Electrical and Electronics Engineers. responsible for many physical layer and datalink layer standards ISO - International Standards Organization. covers a broad area 35 Page 9