A quick guide to the Internet. David Clark 6.978J/ESD.68J Lecture 1 V1.0 Spring 2006

Similar documents
A quick guide to the Internet. David Clark MIT CSAIL Fall 2011

Introduction to computer networking

CS519: Computer Networks

CS 3640: Introduction to Networks and Their Applications

Priority Traffic CSCD 433/533. Advanced Networks Spring Lecture 21 Congestion Control and Queuing Strategies

Outline. Internet. Router. Network Model. Internet Protocol (IP) Design Principles

Lecture 2: Internet Structure

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

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

Lecture 2: Internet Architecture

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 21: Network Protocols (and 2 Phase Commit)

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

Introduction to Internetworking

Basic Reliable Transport Protocols

CSC 4900 Computer Networks: Introduction

Advanced Network Design

Midterm Review. EECS 489 Computer Networks Z. Morley Mao Monday Feb 19, 2007

CSE/EE 461 Lecture 13 Connections and Fragmentation. TCP Connection Management

6.033 Lecture 12 3/16/09. Last time: network layer -- how to deliver a packet across a network of multiple links

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

CS519: Computer Networks. Lecture 5, Part 5: Mar 31, 2004 Queuing and QoS

Assignment #1. Csci4211 Spring Due on Feb. 13th, Notes: There are five questions in this assignment. Each question has 10 points.

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 20: Networks and Distributed Systems

Network Management & Monitoring Network Delay

Design Principles : Fundamentals of Computer Networks Bill Nace

CSC 401 Data and Computer Communications Networks

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

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

Last Lecture. Network Architecture: Layers. This Lecture. In the sending host (2) In the sending host

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

CS4700/5700: Network fundamentals

Network Architecture

CS61C : Machine Structures

ECE 650 Systems Programming & Engineering. Spring 2018

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

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers

Network Architecture. TOC Architecture

Introduction and Layered Network Architecture. EEE 538 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department

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

STEVEN R. BAGLEY PACKETS

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 19: Networks and Distributed Systems

ECEN Final Exam Fall Instructor: Srinivas Shakkottai

CSE 461 Module 10. Introduction to the Transport Layer

Outline: Connecting Many Computers

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

Congestion and its control: Broadband access networks. David Clark MIT CFP October 2008

Introduction to Wireless Networking ECE 401WN Spring 2008

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

Chapter 24 Congestion Control and Quality of Service 24.1

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

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

6.033 Computer System Engineering

Computer Communication Networks

UNIT IV TRANSPORT LAYER

Computer Networks and the internet. Daniel Graham Ph.D

Wireless and Mobile Networks Reading: Sections 2.8 and 4.2.5

Internetworking Models The OSI Reference Model

Bandwidth Allocation & TCP

Introduction to Protocols

Lecture 2. Computer Networks Models. Network Models 1-1

CSCD 433/533 Advanced Networks Spring Lecture 22 Quality of Service

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

LECTURE WK4 NETWORKING

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

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

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

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

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

AN exam March

Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP


COMP/ELEC 429/556 Introduction to Computer Networks

Computer Networked games

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Computer Science 461 Midterm Exam March 14, :00-10:50am

"The Internet. All the piracy and none of the scurvy." -- Anonymous

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

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

Need For Protocol Architecture

CS4700/CS5700 Fundamentals of Computer Networks

Need For Protocol Architecture

Scribe Notes -- October 31st, 2017

Listening with TSDE (Transport Segment Delay Estimator) Kathleen Nichols Pollere, Inc.

Chapter 1. Computer Networks and the Internet

CS61C : Machine Structures

INTRODUCTORY COMPUTER

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

Where we are in the Course

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance

CSCD 433/533 Advanced Networks

Lecture 24: Scheduling and QoS

Data & Computer Communication

Communicating over the Network

CS1302 / Computer Networks

The Diffie-Hellman Key Exchange

Reliable Transport I: Concepts and TCP Protocol

Since enrollment is very small this semester, we have flexibilty. Traditional lecture Assigned reading, and then student(s) present during class time

ETSF10 Internet Protocols Transport Layer Protocols

CS4700/CS5700 Fundaments of Computer Networks

Transcription:

A quick guide to the Internet David Clark 6.978J/ESD.68J Lecture 1 V1.0 Spring 2006

Why should you care? People say: Why doesn t the Internet Protect me from spam. Control porn Keep terrorists from plotting Etc. We need to translate from a cry of pain to realistic expectations. Must understand (in general terms) the technology to make realistic policy.

Defining the Internet It is not the applications: Email Web VoIP It is not the technology Ethernet WiFi Fiber optics So what is it?

A nice picture A range of applications operating over a range of technologies, by means of a single interface -- the Internet Protocol IP. Figure removed for copyright reasons. See http://www.nap.edu/openbook/0309050448/html/53.html Figure 2.1 in National Research Council. "Realizing the Information Future: The Internet and Beyond." National Academies Press, 1994.

What is a network? Or what is the problem we are solving? A shared medium of communications. Why? To share expensive resources Cannot afford a wire between everywhere. To facilitate general communication-- information sharing.

How to share? Computer traffic is bursty. Older sharing method (circuit switching) was inefficient. About 30 years ago, the need for a new mode of sharing was felt. PACKETS!

What is a packet? Packet: Some data with an address on the front. Specified maximum size Sent serially across a link. Use a computer (a router or packet switch ) to manage the link. Statistical sharing. A neat idea that has stood the test of time.

A simple view of the Internet The Internet

An (over) simple packet picture Header Data A packet Stuff Destination/Source/Length stuff A packet header Addresses: written in the form 18.26.0.166

What a router does When it gets a packet: Check that it is not malformed. Check that it is not going in circles. Look at its destination address. Pick the best link over which to forward it. In the background: Computes the best routes to all destinations.

What was at the edge? The slide said user. It is a host, or a PC, or a server, or a computer or an end node. The place where application code runs. There might be a person there. Get back to this later

Implications Inside the network there are only packets. There is no understanding of higher-level intentions. There is nothing like a call, or placing a call, in the router s design. The routers have a limited view of what it means to operate correctly.

The service model The other half of the Internet specification: What is the commitment when I send a packet? Answer: very little. The Internet tries it best, but makes no promises. It can lose, reorder, delay, or duplicate packets. Usually they arrive in good order. If they don t--you have no complaint. Called the best effort service.

Is this such a good idea? Weak expectation means Internet can run over anything. Makes the application s job harder, but not impossible. So, yes, it is a good idea. But now under attack.

Congestion More than you want to know in one slide What happens if too many packets get sent? In the short run, queues form in routers. In the longer run, senders (are supposed to) slow down. Why does this work? Application are expected to tolerate it. But if senders do not slow down? Out of aggression, or because they cannot. A raging debate among designers.

Quality of Service (QoS) Four options. Demand and expect them to slow down. Benign socialist Police them and punish them if they don t slow down. Police state Let them pay to keep going fast. Capitalist Over-provision so net is never congested. Pragmatic

What was at the edge? The slide said user. It is a host, or a PC, or a server, or a computer or an end node. The place where application code runs. There might be a person there.

What a host does Runs the application code Web, email, voip, ssh, doom, etc. Runs software that helps cope with packets and the best effort service model Example: Transmission Control Protocol, or TCP.

What is a protocol? Protocol: A specification of what can be sent when and in what format. A very general term, used to describe many aspects of networking. The voltage to represent a 1 or 0 on a link. The bit sequence to represent characters (e.g. ASCII). The format of the address on the front of the packet. How one reports a lost packet. From the Greek: "Glued on the front."

What does TCP do? Breaks a chunk of data (what the application wants to send) into packets at the sender. Numbers the packets. Keeps sending them until it gets an acknowledgement. Puts them in order at the receiver. Passes the date to the right application. Provides a very simple failure model.

Host vs. router NTWT * Applications knows about TCP Internet Technologies Host knows about * Not the whole truth

A (less) simple packet picture Header Data A packet Stuff Destination/Source/Length stuff Link Dest/Src/Length/NxtHdr SN/NxtHdr (app) IP header TCP header

The end-to-end arguments: The lower layers of the network are not the right place to implement application-specific functions. The lower layers of the network should implement basic and general functions, and the applications should be built above these functions, at the edges. E.g. move functions up and out. This causes function migration to the end-node. The network should be as transparent as technology permits.

Benefits of end-to-end empowerment. Run what you please. Flexibility in the face of unknown applications. A network to hook computers together. Lower cost in core of network. Eliminate special features. Rely on edge-node equipment. More robust applications. No unexpected failures of third-party nodes. An example of getting it wrong : make the network reliable.

Summary What the Internet does is very simple: If forwards packets. It is oblivious to the purpose of the packets. Packets allow effective/efficient sharing. Lots of applications run on the Internet And there will be more tomorrow. Each has its own design. There is a tension/tradeoff as to where functions are placed. The Internet can exploit lots of technologies.

How about the phone system? How does it different from the Internet? And why? What are the implications for policy?

A simple view of the Internet The Internet

A simple view of the phone system Phone Phone Switch Switch Switch Phone Phone Switch Switch Phone Phone Phone Switch Switch The phone system Switch Phone

The differences? Switches are powerful, because phones are simple. The knowledge of what the phone system is for is embedded in the switches. It knows that its purpose is to carry voice. s are simple, because end-points are powerful. The knowledge of what the Internet is for is embedded in the end-points.

And? The phone system has no open interface for complementers. No easy way to attach new applications. Compare the generality of a voice circuit and packet carriage. Very different view of layering. There is no voice layer.

Next lecture How we design applications. Technical design issues. Implications for policy and for industry structure. Options for shaping tussle among stakeholders.

Multiple views of system Topology view: s as expression of physical distribution. Layered view: What is the role of each box. What does this imply about limits to action? Administrative view. Who owns/operates each part? Who controls what talks to what?

A more realistic picture Little ISP Little ISP Backbone (big ISP) Backbone (big ISP) Campus Corp Backbone (big ISP) The ISP lives here.. The ISP does not live at the end-points. Little ISP