CS542 Internet System Technology WST510 Web Architecture 2012.2.9. Lecture #2 Sue Moon and Ben Zhao.

Slides:



Advertisements
Similar presentations
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Internet architecture Slides used with permissions.
Advertisements

Layering and the network layer CS168, Fall 2014 Sylvia Ratnasamy
COS 461 Fall 1997 Networks and Protocols u networks and protocols –definitions –motivation –history u protocol hierarchy –reasons for layering –quick tour.
CSE 390 Advanced Computer Networks Lecture 2: History (Hint: Al Gore is not involved) Based on slides from D. Choffnes Northeastern U. Revised Fall 2014.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
PROTOCOLS AND ARCHITECTURE Lesson 2 NETS2150/2850.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems The Internet in 2 Hours: The First Hour Steve Ko Computer Sciences and Engineering University.
1 Katz, Stoica F04 EECS 122: Introduction to Computer Networks Network Architecture Computer Science Division Department of Electrical Engineering and.
Protocols and the TCP/IP Suite Chapter 4 (Stallings Book)
CS 268: Lecture 2 (Layering & End-to-End Arguments)
The Design Philosophy of the DARPA Internet Protocols D. D. Clark.
Semester Copyright USM EEE442 Computer Networks Introduction: Protocols En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK)
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
Chapter 1 Read (again) chapter 1.
Computer Network Architecture and Programming
Inside the Internet. INTERNET ARCHITECTURE The Internet system consists of a number of interconnected packet networks supporting communication among host.
The Design Philosophy of DARPA Internet Protocols David D. Clark.
COE 342: Data & Computer Communications (T042) Dr. Marwan Abu-Amara Chapter 2: Protocols and Architecture.
CS 268: Lecture 3 (TCP/IP Architecture) Kevin Lai and Ion Stoica January 30, 2002.
CS 268: Lecture 3 (TCP/IP Architecture) Ion Stoica January 28, 2003.
Fundamentals of Computer Networks ECE 478/578 Lecture #2 Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University of Arizona.
Plan of attack ‣ What is a network made of? ‣ How is it shared? ‣ How do we evaluate a network? ‣ How is communication organized? 1.
CS 268: Lecture 4 (Internet Architecture & E2E Arguments)
1 Internet Design: Goals and Principles EE122 Fall 2012 Scott Shenker Materials with thanks to Jennifer Rexford,
Protocols and the TCP/IP Suite Chapter 4. Multilayer communication. A series of layers, each built upon the one below it. The purpose of each layer is.
Information-Centric Networks02a-1 Week 2 / Paper 1 The Design Philosophy of the DARPA Internet Protocols –David D. Clark –ACM CCR, Vol. 18, No. 4, August.
CS 4700 / CS 5700 Network Fundamentals Lecture 2: History (Hint: Al Gore is not involved) Revised 1/6/14.
Computer Networking Lent Term M/W/F 11-midday LT1 in Gates Building Slide Set 2 Andrew W. Moore January
CSci8211: Internet Design Philosophy 1 Internet Architecture: Design Philosophy -Then and Now.
Layering CS 438: Spring 2014 Instructor: Matthew Caesar
TCP/IP Reference Model For more notes and topics visit: eITnotes.com.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
EPL606 Topic 1 Introduction Part B - Design Considerations 1 The majority of the slides in this course are adapted from the accompanying slides to the.
CS 268: Lecture 3 (Layering & End-to-End Arguments)
Review: – computer networks – topology: pair-wise connection, point-to-point networks and broadcast networks – switching techniques packet switching and.
Chapter 1 Overview Review Overview of demonstration network
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
1: Introduction1 Internet History r 1961: Kleinrock - queueing theory shows effectiveness of packet- switching r 1964: Baran - packet- switching in military.
Cisco 1 - Networking Basics Perrine. J Page 19/17/2015 Chapter 9 What transport layer protocol does TFTP use? 1.TCP 2.IP 3.UDP 4.CFTP.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 Taj Mahal, Agra, India.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 5: Internet architecture Slides used with.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Introduction Slide 1 A Communications Model Source: generates.
Chapter 1. Introduction. By Sanghyun Ahn, Deot. Of Computer Science and Statistics, University of Seoul A Brief Networking History §Internet – started.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Internet Security - Farkas1 CSCE 813 Internet Security TCP/IP.
CS 268: Internet Architecture & E2E Arguments Scott Shenker and Ion Stoica (Fall, 2010) 1.
Network Architecture: Design Philosophies IS250 Spring 2010 John Chuang
CS 3700 Networks and Distributed Systems A Brief History of the Internet (Hint: Al Gore is not involved) Revised 8/19/15.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 03_b Protocol Layering Instructor: Dr. Li-Chuan Chen Date: 09/15/2003 Based in part upon slides of Prof.
TCP/IP Network.
William Stallings Data and Computer Communications
CS 4700 / CS 5700 Network Fundamentals
End-To-End Arguments in System Design J.H. Saltzer, D.P. Reed, and D. Clark Presented by: Amit Mondal.
Computer Networking Michaelmas/Lent Term M/W/F 11:00-12:00
1. Layered Architecture of Communication Networks: TCP/IP Model
Net 221D:Computer Networks Fundamentals
CS 3700 Networks and Distributed Systems
CS 4700 / CS 5700 Network Fundamentals Lecture 3: Internet Architecture (Layer cake and an hourglass) Revised 1/11/16.
CS 4700 / CS 5700 Network Fundamentals
CS 4700 / CS 5700 Network Fundamentals
CS 3700 Networks and Distributed Systems
Protocols and the TCP/IP Suite
CS 268: Lecture 3.
CS 4700 / CS 5700 Network Fundamentals
CS 3700 Networks and Distributed Systems
E2E Arguments & Project Suggestions (Lecture 4, cs262a)
Presentation transcript:

CS542 Internet System Technology WST510 Web Architecture Lecture #2 Sue Moon and Ben Zhao

Today’s Agenda History of the Internet Design goals Layering End-to-end arguments 3

Internet History

1961Kleinrock advocates packet switching (why?) – In parallel, packet switching work done at RAND and NPL 1962Licklider’s vision of Galactic Network 1965Roberts connects 2 computers over phone line 1967Roberts publishes vision of ARPANET 1969BBN installs first 1970Network Control Protocol – assumed reliable transmission! 1972public demonstration of ARPANET 1972 invented 1972Kahn advocates Open Architecture networking 5

The Problem Many different packet-switching networks Only nodes on the same network could communicate 6

Kahn’s Ground Rules Each network is independent and must not be required to change Best-effort communication Boxes (routers) connect networks No global control at operations level 7

Solution 8 Gateways

Question Kahn imagined there would be only a few net works (~20) and thus only a few routers He was wrong Why? 9

Internet Evolution (1960s plan) 10

Internet Evolution

Internet Evolution (April 1971) 12

Internet Evolution (Sept. 1971) 13

Internet Evolution (Sept. 1971) 14

15 “Today (~2000)”

History Continued 1974Cerf and Kahn paper on TCP/IP 1980TCP/IP adopted as defense standard 1983Global NCP to TCP/IP flag day 198xXNS, DECbit, and other protocols 1985NSFnet (picks TCP/IP) 198xInternet meltdowns due to congestion Van Jacobson saves the Internet (BSD TCP) 1988Deering and Cheriton propose multicast, Morris Worm 199xQoS rises and falls 199xATM rises and falls (as an internetworking layer) 1994Internet goes commercial 200xThe Internet boom and bust 16

Internet Design Goals

Goals (Clark’88) Connect existing networks Robust in face of failures (not nuclear war…) Support multiple types of services Accommodate a variety of networks Allow distributed management Easy host attachment Cost effective Allow resource accountability 18

Robust As long as the network is not partitioned, two endpoints sh ould be able to communicate Failures (except network partitions) should not interfere wit h endpoint semantics (why?) Maintain state only at end-points, why? – Fate-sharing State dies IFF endpoint using it dies eliminates network state restoration Protection against a # of failures, easy to engineer – stateless network architecture (no per-flow state) Routing state is held by network (why?) 19

Types of Services Use of the term “communication services” already implied that they wanted application- neutral network Realized TCP wasn’t needed (or wanted) by some applications – Remote debugging, delivery of digitized speech Separated TCP from IP, and introduced UDP – What’s missing from UDP? 20

Variety of Networks Incredibly successful! – Minimal requirements on networks – No need for reliability, in-order, fixed size packets, etc. IP over everything – Then: ARPANET, X.25, DARPA satellite network.. – Now: ATM, SONET, WDM… 21

Host Attachment Clark observes that the cost of host attachmen t may be somewhat higher – Because edge hosts have to be smart But the administrative cost of adding hosts is v ery low, which is probably more important 22

Real Goals Something that works….. Connect existing networks Survivability (not nuclear war…) Support multiple types of services Accommodate a variety of networks Allow distributed management Easy host attachment Cost effective Allow resource accountability 23

Questions What priority order would a commercial design h ave? What would a commercially invented Internet loo k like? What goals are missing from this list? Which goals led to the success of the Internet? 24

Layering and other General Mutterin gs about Internet Architecture

Logical Communication Layers interacts with corresponding layer on p eer 26 Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium Host A Host B Router

OSI vs. Internet OSI: conceptually define services, interfaces, protocols Internet: provide a successful implementation 27 Application Presentation Session Transport Network Datalink Physical Internet Net access/ Physical Transport Application IP LAN Packet radio TCPUDP TelnetFTPDNS OSI (formal) Internet (informal)

Hourglass 28

Implications of Hourglass A single Internet layer module: Allows all networks to interoperate – all networks technologies that support IP can exchang e packets Allows all applications to function on all networks – all applications that can run on IP can use any network Simultaneous developments above and below IP 29

Can We Shift the Hourglass? 30 HTTP as the new IP? HTTP as the new IP?

Endless Arguments about End-to -End

Placing Functionality The most influential paper about placing funct ionality is “End-to-End Arguments in System D esign” by Saltzer, Reed, and Clark The “Sacred Text” of the Internet – endless disputes about what it means – everyone cites it as supporting their position 32

Basic Observation Some applications have end-to-end performance requirements – reliability, security, etc. Implementing these in the network is very hard: – every step along the way must be fail-proof The hosts: – can satisfy the requirement without the network – can’t depend on the network 33

Example: Reliable File Transfer Solution 1: make each step reliable, and then c oncatenate them Solution 2: end-to-end check and retry 34 OS Appl. OS Appl. Host AHost B OK

Example (cont’d) Solution 1 not complete – What happens if any network element misbehaves? – The receiver has to do the check anyway! Solution 2 is complete – Full functionality can be entirely implemented at appli cation layer with no need for reliability from lower lay ers Is there any need to implement reliability at lowe r layers? 35

Example: Speech / VoIP Standard example for E2E argument – Packets need “semi-reliable” delivery at endpoint for t ransformation into audio If lower layers try for “perfect reliability,” – Delay and retransmit at link layer – Result: uncontrolled delays and stream disruption Instead, endpoint can tolerate some data loss – Rely on the ultimate “endpoint,” the human – “What did you just say?” – This is the source of much “cross-layer” work in the m ultimedia networking community 36

Conclusion Implementing this functionality in the network: Doesn’t reduce host implementation complexity Does increase network complexity Probably imposes delay and overhead on all appli cations, even if they don’t need functionality However, implementing in network can enhance performance in some cases – very lossy link 37

What the Paper Says The function in question can completely and corre ctly be implemented only with the knowledge an d help of the application standing at the end poin ts of the communication system. Therefore, provi ding that questioned function as a feature of the communication system itself is not possible. (Som etimes an incomplete version of the function pro vided by the communication system may be usef ul as a performance enhancement.) BTW, E2E also applicable to OS and H/W design… 38

Conservative Interpretation “Don’t implement a function at the lower level s of the system unless it can be completely im plemented at this level” (Peterson and Davie) Unless you can relieve the burden from hosts, then don’t bother 39

Radical Interpretations Don’t implement anything in the network that ca n be implemented correctly by the hosts – e.g., multicast – Makes network layer absolutely minimal – Ignores performance issues Don’t rely on anything that’s not on the data path – E.g., no DNS – Makes network layer more complicated 40

Moderate Interpretation Think twice before implementing functionality in the network If hosts can implement functionality correctly, im plement it a lower layer only as a performance en hancement But do so only if it does not impose burden on ap plications that do not require that functionality 41

Do These Belong in the Network? Multicast? Routing? Quality of Service (QoS)? Name resolution? (is DNS “in the network”?) Web caches? 42