Communications Software. CSE 123b. CSE 123b. Spring Lecture 1: Introduction & Review. Stefan Savage.

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

CSE 123A Computer Networks

Who is your professor? Course overview, expectations, etc. Simple network basics

CSE 123b Communications Software

Welcome (day 2) CSE 123b Communications Software. Application layer (HTTP) Application layer? Name resolution (DNS) Transport layer (TCP)

Lecture 3: Modulation & Layering"

CS3600 SYSTEMS AND NETWORKS

Discussion 1: Project 1, Networking Basics. CSE 123: Computer Networks Marti Motoyama & Chris Kanich

CS 268: Graduate Computer Networks Spring Overview

CS4700/CS5700 Fundaments of Computer Networks

ECE 650 Systems Programming & Engineering. Spring 2018

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

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

What Global (non-digital) Communication Network Do You Use Every Day?"

CS4700/CS5700 Fundaments of Computer Networks

CS61C : Machine Structures

CSCI Computer Networks

INTRODUCTORY COMPUTER

Computer Networks

A closer look at network structure:

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

What Global (non-digital) Communication Network Do You Use Every Day?"

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

Defining the Internet

CS61C : Machine Structures

CSE 461: Computer Networks John Zahorjan Justin Chan Rajalakshmi Nandkumar CJ Park

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

CS61C : Machine Structures

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

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

EE 122: Introduction to Computer Networks Fall 2002

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

Lecture 2: Links and Signaling

Introduction to computer networking

Lecture 3 Protocol Stacks and Layering

Component Function Example

Lecture 2: Internet Structure

EECS 122 Communications Networks

Networking and Internetworking 1

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

EE 122: Introduction To Communication Networks. Some Questions & Answers

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11

CS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University

CSEN 503 Introduction to Communication Networks

Welcome to CS 340 Introduction to Computer Networking

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP)

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

Parts of a Network. app. router. link. host. Computer Networks 2

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

TCOM 370 NOTES 99-1 NETWORKING AND COMMUNICATIONS

Lecture 15 Networking Fundamentals. Today s Plan

Chapter 2 Communicating Over the Network

Internet Routing. Review of Networking Principles. What s the Internet: nuts and bolts view. Communication links

Internet Routing. Review of Networking Principles

CSCD 433/533 Advanced Networks

Communicating over the Network

Next Steps Spring 2011 Lecture #18. Multi-hop Networks. Network Reliability. Have: digital point-to-point. Want: many interconnected points

CIS 777 Telecommunications Networks

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

Peer entities. Protocol Layering. Protocols. Example

PLEASE READ CAREFULLY BEFORE YOU START

CS 3640: Introduction to Networks and Their Applications

Basics of datacommunication

Computer Networks. General Course Information. Addressing and Routing. Computer Networks 9/8/2009. Basic Building Blocks for Computer Networks

ECS 152A Computer Networks Instructor: Liu. Name: Student ID #: Final Exam: March 17, 2005

CSC 401 Data and Computer Communications Networks

Computer Networks and Mobile Systems. Shyam Gollakota

Digital Communication Networks

Chapter 1. Computer Networks and the Internet

Lecture (11) OSI layer 4 protocols TCP/UDP protocols

ECPE / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

CSE3213 Computer Network I

Lecture 2 Communication services The Trasport Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Network Protocols and Architectures

ECE : Fundamentals of Wireless Networking - Spring 2007

Cisco Cisco Certified Network Associate (CCNA)

CMPE150 Midterm Solutions

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

PLEASE READ CAREFULLY BEFORE YOU START

CS 332: Computer Networks Introduction

Internet Architecture and Experimentation

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

CS 204: Advanced Computer Networks

Message, Segment, Packet, and Frame Link-layer services Encoding, framing, error detection, transmission control Error correction and flow control

Reminder: Datalink Functions Computer Networking. Datalink Architectures

Internet Applications and the Application Layer Material from Kurose and Ross, Chapter 2: The Application Layer

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall

Announcements. IP Forwarding & Transport Protocols. Goals of Today s Lecture. Are 32-bit Addresses Enough? Summary of IP Addressing.

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

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

Network Architecture. TOC Architecture

E&CE 358: Tutorial 1. Instructor: Sherman (Xuemin) Shen TA: Miao Wang

Question. Reliable Transport: The Prequel. Don t parse my words too carefully. Don t be intimidated. Decisions and Their Principles.

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

Data & Computer Communication

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

Computer Communications DIT 420 EDA343

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

Introductions. Computer Networking Lecture 01. January 16, HKU SPACE Community College. HKU SPACE CC CN Lecture 01 1/36

Transcription:

CSE 123b CSE 123b Communications Software Spring 2003 Lecture 1: Introduction & Review Stefan Savage Stefan Savage savage@cs.ucsd.edu

Class Overview Course Material Class lectures, textbook readings, and handouts Course Assignments Homework questions from book and handouts» Handed out on Tuesdays due the following Tuesday» Roughly every 2-3 weeks Network protocol programming projects (3-5)» We will implement routing protocols, transport protocols, etc. Exams Midterm and Final I will be explicit about what is covered in each April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 2

Grading Homework 25% Projects 25% Midterm 20% Final 30% Extra credit for class participation April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 3

Some hints Come to lecture Yes, I will distribute the slides online, and yes the material is in the book However, lecture materials are the basis for exams Do the homework You will have a hard time with the exams without doing the homework Its 25% of your grade (easily the difference between an A and C) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 4

Some hints (2) Ask questions In class, via e-mail and at office hours Inevitably you won t understand something that s my fault, but you need to help Start assignments early There is a statistical relationship between when you start and what grade you get Sleep April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 5

Administrativa Web page http://www-cse.ucsd.edu/classes/sp03/cse123b/ (will be up shortly) Textbook (required) Computer Networks: A Systems Approach (2 nd ed) by Peterson and Davie TA s Yuchung Cheng, Cristian Estan and Alvin Auyoung Mailing list, office hours, discussion section (TBA) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 6

Common questions Can I take this class concurrently with X? (where X is typically 120) Yes, but this may be challenging. We assuming basic knowledge about OS structure and some of the issues that are discussed in 120 that related to networking. Fair warning. How much programming is there? The projects will require that you can understand and write code in C. If you re a proficient programmer and don t know C, you should be able to pick it up quickly. If you ve done almost no programming, then this class may be painful. April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 7

Course material The key aspects of modern computer networks and network services Reliable communication Congestion control Routing (intradomain and interdomain) Naming Mobility Web service, caching, load balancing, CDNs E-mail Peer-to-peer networks Security April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 8

We will not cover Queuing theory Signals Hardware design Switching design Physical/data link layers April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 9

Overall goals Understand how to large scale, heterogeneous distributed networks are built Fundamental problems Established design principles Standard Internet protocols and implementations April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 10

Large scale? April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 11

Large scale? (2) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 12

Heterogeneous? Homogenous network: the telephone system Designed for making phone calls Known call duration distribution, bandwidth, service constraints, service model Heterogenous: the Internet Supports E-mail, web, e-commerce, audio, video, multi-player games Few underlying assumptions a strength and a weakness April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 13

Distributed? Decentralized components Must update/manage changes in state Long communication latency Actions take time Partial failures Must tolerate failures A distributed system is a system in which I can t do my work because some computer has filed that I ve never even heard of Leslie Lamport April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 14

Some review Elementary components Circuit switching vs packet switching Basic network model/metrics Layering/protocols Layering by example: fetching a Web page April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 15

Network components Hosts: endpoints that communicate e.g. workstation, server, PDA Links: transmission medium e.g. Ethernet, 802.11b, FDDI Routers/Switches: moves bits between links Circuit switching: guaranteed channel for a session (Telephone system) Packet switching: statistical multiplexing of independent pieces of data (Internet) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 16

Circuit Switching Three phases 1. circuit establishment (dial) 2. data transfer (talk) 3. circuit termination (hang up) If circuit not available: Busy signal Examples Telephone networks ISDN (Integrated Services Digital Networks) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 17

Circuit Switching A node (switch) in a circuit switching network incoming links Node outgoing links Slide courtesy Ion Stoica April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 18

Circuit switching: time division multiplexing Time divided in frames and frames divided in slots Relative slot position inside a frame determines which conversation the data belongs to Needs synchronization between sender and receiver In case of non-permanent conversations Need to dynamically bind a slot to a conservation Signaling protocol Slide courtesy Ion Stoica April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 19

Packet Switching Data is sent in a bundle of bit-sequences, called a packet. Packets have the following structure: Header Data Trailer» Header and Trailer carry control information (e.g., destination address, check sum) Each packet is passed through the network from node to node along some path (Routing) At each node the entire packet is received, stored briefly, and then forwarded to the next node (Storeand-Forward Networks) Typically no capacity is pre-allocated for packets Slide courtesy Ion Stoica April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 20

Packet Switching A node in a packet switching network incoming links Node outgoing links Memory Slide courtesy Ion Stoica April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 21

Packet Switching: Statistical multiplexing Data from any conversation can be transmitted at any given time How to tell them apart? use header) to describe data Slide courtesy Ion Stoica April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 22

Pro/cons of packet switching Efficiency Can share network up to its capacity no overhead for reserving bandwidth that is unused Can support many different service types Low complexity Don t need to maintain state about each call Harder to guarantee bandwidth/delay We will focus on packet switching in this class April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 23

Simple network model Network is a pipe connection two computers Packet Basic Metrics Bandwidth, delay, overhead, error rate and message size April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 24

Network metrics Bandwidth Data transmitted at a rate of R bits/sec Delay or Latency Takes D seconds for bit to propagate down wire Overhead takes O secs for CPU to put message on wire Error rate Probability P that message will not arrive intact Message size Size M of data being transmitted April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 25

How long to send a message? Transmit time T = M/R + D 10Mbps Ethernet LAN (M=1KBbyte, or 8000bits)» M/R=0.8ms, D ~=5us 155Mbps cross country ATM (M=1KB)» M/R = ~51us, D ~= 40-100ms R*D is the storage of pipe (also called bandwidth delay product) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 26

Layering What is layering? Decomposition of a complex system into an ordered series of distinct abstractions The services provided by a layer depend only on the services provided by the previous, less abstract, layer Layering in networking Service: what a layer does (e.g. message delivery) Interface: how to use the service (e.g. packet format) Protocol: how the service is implemented (e.g. TCP) Protocol stack: collection of protocols implementing a series of layers (e.g. Ethernet/IP/TCP/Web) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 27

The OSI layering Model End host Application Top four layers are end-to-end Lower 3 layers are peer-to-peer End host Application Presentation Presentation Session Session Transport Network Network node Network Network node Network Transport Network Datalink Datalink Datalink Datalink Physical Physical Physical Physical April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 28

What the layers are for? Application: any service (e.g. WWW, SMTP) Presentation: data format conversion (e.g. XDR) Session: connection management, synchronization (e.g. SMIL) Transport: error-control, flow-control, channel multiplexing (e.g. TCP, UDP) Network: Routing (e.g. IP) Datalink: Framing, media access (e.g. Ethernet, FDDI, SONET) Physical: Transmission/modulation (e.g. 100BaseT) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 29

Benefits of layering Encapsulation Functionality inside a layer is self-contained; one layer doesn t need to reason about other layers Modularity Can replace a layer without impacting other layers Lower layers can be reused by higher layers (e.g. TCP and UDP both are layered upon IP) One obvious drawback Information hiding can produce inefficient implementations April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 30

Layer encapsulation Layer N+1 packet becomes Layer N data Data End host Application End host Application Data P Data Presentation Presentation P Data S Data Session Session S Data T Data Transport Transport T Data N Data Network Network N Data D Data Datalink Datalink D Data Ph Data Physical Physical Ph Data April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 31

Layer Encapsulation (2) Typical Web packet Ethernet Hdr IP Hdr TCP Hdr HTTP Hdr Payload (Web object) Start of packet End of packet Notice that layers add overhead Space (headers), effective bandwidth Time (processing headers, peeling the onion), latency April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 32

The Internet layering model Application (Web,FTP,SMTP) So-called hourglass model One network layer protocol Significant diversity at other layers Transport (TCP,UDP) Network (IP) Datalink (Ethernet,802.11) No presentation or session layers Implementations more important than interfaces Physical (100BaseTX,1000BaseSX) April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 33

Layering by example ROUGHLY, what happens when I click on a Web page from UCSD? My computer www.yahoo.com? Internet April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 34

Application layer (HTTP) Turn click into HTTP request GET http://www.yahoo.com/r/mp HTTP/1.1 Host: www.yahoo.com Connection:keep-alive April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 35

Application layer? Name resolution (DNS) Where is www.yahoo.com? My computer (132.239.9.64) What s the address for www.yahoo.com Local DNS server (132.239.51.18) Oh, you can find it at 64.58.76.177 April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 36

Transport layer (TCP) Break message into packets (TCP segments) Should be delivered reliably & in-order GET http://www.yahoo.com/r/mp HTTP/1.1 Host: www.yahoo.com Connection:keep-alive 3 yahoo.c 2 p://www. 1 GET htt and let me know when they got there April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 37

Network layer: IP Addressing Address each packet so it can traverse network and arrive at host My computer (132.239.9.64) www.yahoo.com (64.58.76.177) Destination Source Data 64.58.76.177 132.239.9.64 1 GET htt April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 38

Network layer: IP Routing Each router forwards packet towards destination UCSD Sprint UUNet www.yahoo.com (64.58.76.177) Qwest AT&T April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 39

Datalink layer (Ethernet) Too boring for a picture (sorry) Break message into frames Media Access Control (MAC) Send frame April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 40

Physical layer 2.4Ghz Radio DS/FH Radio (1-11Mbps) 802.11b Wireless Access Point Cat5 Cable (4 wires) 100Base TX Ethernet 100Mbps Ethernet switch/router To campus backbone 62.5/125um 850nm MMF 1000BaseSX Ethernet 1000Mbps April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 41

Summary Packets switching is an efficient and simple architecture for data communications Gives up guarantees on service Layering is a technique for managing complexity in systems Encapsulate related functionality in a layer and provide an interface to upper and lower layers A model: implementations do not necessarily respect layers April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 42

For Next Time ATTENTION Wake up! Thursday s class is cancelled The next class will be Tuesday April 8th For then: Get the textbook Review Patterson&Davie Chap1 Read Chap 4.1-4.1.4 April 9, 2003 CSE 123b -- Lecture 1 Introduction and Review 43