Computer Networking Lent Term M/W/F 11-midday LT1 in Gates Building Slide Set 2 Andrew W. Moore January 2013 1.

Slides:



Advertisements
Similar presentations
Layering and the network layer CS168, Fall 2014 Sylvia Ratnasamy
Advertisements

COS 461 Fall 1997 Networks and Protocols u networks and protocols –definitions –motivation –history u protocol hierarchy –reasons for layering –quick tour.
The Design Philosophy of the DARPA Internet Protocols [Clark 1988] Nick McKeown CS244 Lecture 2 Architecture and Principles.
Network Architectures Professor Jinhua Guo CIS 527 Fall 2002.
James 1:5 If any of you lacks wisdom, he should ask God, who gives generously to all without finding fault, and it will be given to him.
PROTOCOLS AND ARCHITECTURE Lesson 2 NETS2150/2850.
Spring 2004 EE4272 EE4272: Computer Networks Instructor: Dr. Tricia Chigan Dept.: Elec. & Comp. Eng.
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.
Socket Programming.
Kemal AkkayaWireless & Network Security 1 Department of Computer Science Southern Illinois University Carbondale CS591 – Wireless & Network Security Lecture.
Introduction1-1 Introduction to Computer Networks Our goal:  get “feel” and terminology  more depth, detail later in course  approach:  use Internet.
1 Katz, Stoica F04 EECS 122: Introduction to Computer Networks Network Architecture Computer Science Division Department of Electrical Engineering and.
CS 268: Lecture 2 (Layering & End-to-End Arguments)
The Design Philosophy of the DARPA Internet Protocols D. D. Clark.
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
Lecture 1 Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
EE 4272Spring, 2003 EE4272: Computer Networks Instructor: Tricia Chigan Dept.: Elec. & Comp. Eng. Spring, 2003.
Lecture Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
1 EE 122: Internet Design Principles Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks to Vern.
1 Day 01 - The Internet. 2 Chapter 1 Introduction Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross.
1 Preliminaries, Protocols, Preview Priorities, and Principles EE122 Fall 2011 Scott Shenker Materials with thanks.
Lecture 1 Internet CPE 401 / 601 Computer Network Systems slides are modified from Dave Hollinger and Daniel Zappala.
Lecture 1 Overview: roadmap 1.1 What is computer network? the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network.
Lecture 1 Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  network structure,
Introduction1-1 CS 325 Computer Networks Sami Rollins Fall 2005.
CS 268: Lecture 3 (TCP/IP Architecture) Kevin Lai and Ion Stoica January 30, 2002.
1 Internet Design Principles EE 122: Intro to Communication Networks Fall 2010 (MW 4-5:30 in 101 Barker) Scott Shenker TAs: Sameer Agarwal, Sara Alspaugh,
CS 268: Lecture 4 (Internet Architecture & E2E Arguments)
1: Introduction1 Part I: Introduction Goal: r get context, overview, “feel” of networking r more depth, detail later in course r approach: m descriptive.
Chapter 1 Introduction Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
1 Internet Design: Goals and Principles EE122 Fall 2012 Scott Shenker Materials with thanks to Jennifer Rexford,
Lecture 1 Internet CPE 401 / 601 Computer Network Systems slides are modified from Dave Hollinger and Daniel Zappala Lecture 1 Introduction.
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.
CS448 Computer Networking Chapter 1 Introduction to Computer Networks Instructor: Li Ma Office: NBC 126 Phone: (713)
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.
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.
RSC Part I: Introduction Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are, mainly, part of the companion slides to.
Introduction1-1 COSC6377: Computer Networks Rong Zheng Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition.
Instructor: Christopher Cole Some slides taken from Kurose & Ross book IT 347: Chapter 1.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 01 Instructor: Dr. Li-Chuan Chen TA: Waqar Ishaq Date: 08/25/2003.
1.1 What is the Internet What is the Internet? The Internet is a shared media (coaxial cable, copper wire, fiber optics, and radio spectrum) communication.
Introduction1-1 Course Code:EE/TE533 Instructor: Muddathir Qamar.
CS 3214 Computer Systems Godmar Back Lecture 23. Announcements Project 5 due Dec 8 Exercise 10 handed out Exercise 11 coming before Thanksgiving CS 3214.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Introduction Slide 1 A Communications Model Source: generates.
1 Next Few Classes Networking basics Protection & Security.
CS 268: Internet Architecture & E2E Arguments Scott Shenker and Ion Stoica (Fall, 2010) 1.
Lecture 1 Internet CPE 401 / 601 Computer Network Systems slides are modified from Dave Hollinger and Daniel Zappala Lecture 2 Introduction.
1 Figure 3-2: TCP/IP Standards (Study Figure) Origins  Defense Advanced Research Projects Agency (DARPA) created the ARPANET  An internet connects multiple.
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.
Ch 1. Computer Networks and the Internet Myungchul Kim
1 CHAPTER 8 TELECOMMUNICATIONSANDNETWORKS. 2 TELECOMMUNICATIONS Telecommunications: Communication of all types of information, including digital data,
Introduction1-1 Data Communications and Computer Networks Chapter 1 CS 3830 Lecture 1 Omar Meqdadi Department of Computer Science and Software Engineering.
Basic Concepts of Internet Technology What is a computer network? Isolated computers vs. networked computers internetworking The Internet What’s a protocol?
Introduction 1-1 Networking Admin  1 to 4 lectures a week for 11 weeks for a total of 23 lectures  Interleaves with Functional Programming  First prac.
William Stallings Data and Computer Communications
1 Pre-Introduction What is computer network?. 2 Pre-Introduction Suppose you want to build a computer network The question is: –What available technologies.
Computer Networking Michaelmas/Lent Term M/W/F 11:00-12:00
1: Introduction1 Internet Services and Protocols Adapted from “Computer Networking: A Top Down Approach Featuring the Internet” Kurose and Ross, Addison.
Lecture # 02 Network Models Course Instructor: Engr. Sana Ziafat.
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.
Graciela Perera Introduction Graciela Perera
Day 01 - The Internet.
Slides taken from: Computer Networking by Kurose and Ross
Lecture 2 Overview.
Chapter 1: Introduction
CPE 401 / 601 Computer Network Systems
Presentation transcript:

Computer Networking Lent Term M/W/F 11-midday LT1 in Gates Building Slide Set 2 Andrew W. Moore January

Topic 2 – Internet and Architecture Protocol Standardization Internet Philosophy and Tensions The architects process –How to break system into modules –Where modules are implemented –Where is state stored 2

3 Recall What is a protocol? human protocols: “what’s the time?” “I have a question” introductions … specific msgs sent … specific actions taken when msgs received, or other events network protocols: machines rather than humans all communication activity in Internet governed by protocols protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt

4 So many Standards Problem Many different packet-switching networks Each with its own Protocol Only nodes on the same network could communicate

5 INTERnet Solution Gateways

6 A Multitude of Apps Problem Re-implement every application for every technology? No! But how does the Internet design avoid this? Skype SSHNFS Radio Coaxial cable Fiber optic Application Transmission Media HTTP

7 Solution: Intermediate Layers Introduce intermediate layers that provide set of abstractions for various network functionality and technologies –A new app/media implemented only once –Variation on “add another level of indirection” Skype SSHNFS Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP Intermediate layers

8 The Internet Hourglass Data Link Physical Applications The Hourglass Model Waist There is just one network-layer protocol, IP. The “narrow waist” facilitates interoperability. SMTPHTTPNTPDNS TCPUDP IP EthernetSONET Transport FiberCopperRadio

9 Protocol Standardization All hosts must follow same protocol –Very small modifications can make a big difference –Or prevent it from working altogether –Cisco bug compatible! This is why we have standards –Can have multiple implementations of protocol Internet Engineering Task Force –Based on working groups that focus on specific issues –Produces “Request For Comments” (RFCs) –IETF Web site is –RFCs archived at

10 Internet Motto We reject kings, presidents, and voting. We believe in rough consensus and running code.” David Clark D. Clark, "The Design Philosophy of the DARPA Internet Protocols", Sigcomm'88, , Palo Alto, CA, Sept 1988.

Alternative to Standardization? Have one implementation used by everyone Open-source projects – Which has had more impact, Linux or POSIX? Or just sole-sourced implementation – Skype, many P2P implementations, etc. 11

12 Client-Server Communication Client “sometimes on” –Initiates a request to the server when interested –E.g., Web browser on your laptop or cell phone –Doesn’t communicate directly with other clients –Needs to know the server’s address Server is “always on” –Services requests from many client hosts –E.g., Web server for the Web site –Doesn’t initiate contact with the clients –Needs a fixed, well-known address

13 Peer-to-Peer Designs No always-on server at the center of it all –Hosts can come and go, and change addresses –Hosts may have a different address each time Example: peer-to-peer file sharing –All hosts are both servers and clients! –Scalability by harnessing millions of peers –“self-scaling” Not just for file sharing! –This is how many datacenter applications are built –Better reliability, scalability, less management… Sound familiar?

Internet Design Goals (Clark ‘88) Connect existing networks Robust in face of failures Support multiple types of delivery services Accommodate a variety of networks Allow distributed management Easy host attachment Cost effective Allow resource accountability 14

Connect Existing Networks Internet (e.g., IP) should be designed such that all current networks could support IP. 15

Robust As long as the network is not partitioned, two endpoints should be able to communicate Failures (excepting network partition) should not interfere with endpoint semantics Very successful, not clear how relevant now Second notion of robustness is underappreciated 16

17 Types of Delivery Services Use of the term “communication services” already implied an application-neutral network Built lowest common denominator service –Allow end-based protocols to provide better service Example: recognition that TCP wasn’t needed (or wanted) by some applications –Separated TCP from IP, and introduced UDP

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

Decentralized Management Both a curse and a blessing – Important for easy deployment – Makes management hard today 19

20 Host Attachment Clark observes that cost of host attachment may be higher because hosts have to be smart But the administrative cost of adding hosts is very low, which is probably more important

Cost Effective Cheaper than telephone network But much more expensive than circuit switching Perhaps it is cheap where it counts (low-end) and more expensive for those who can pay…. 21

Resource Accountability Failure! –No coordinated resource accounting –No coordinated resource management –No coordinated resource control –No coordinated resource …. BUT Failure is information too 22

Real Goals Build something that works! Connect existing networks Robust in face of failures Support multiple types of delivery services Accommodate a variety of networks Allow distributed management Easy host attachment Cost effective Allow resource accountability 23 Internet Motto We reject kings, presidents, and voting. We believe in rough consensus and running code.“ – David Clark

24 Questions to think about…. What priorities would a commercial design have? What would the resulting design look like? What goals are missing from this list? Which goals led to the success of the Internet?

The Networking Dilemma Many different networking technologies Many different network applications How do you prevent incompatibilities? 25

26 The Problem Re-implement every application for every technology? No! But how does the Internet design avoid this? Skype SSHNFS Radio Coaxial cable Fiber optic Application Transmission Media HTTP

27 Solution: Intermediate Layers Introduce intermediate layers that provide set of abstractions for various network functionality and technologies –A new app/media implemented only once –Variation on “add another level of indirection” Skype SSHNFS Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP Intermediate layers

28 Network Architecture Architecture is not the implementation itself Architecture is how to organize/structure the elements of the system and their implementation What interfaces are supported? –Using what sort of abstractions Where functionality is implemented? –The modular design of the network

29 Computer System Modularity Partition system into modules & abstractions: Well-defined interfaces give flexibility –Hides implementation - can be freely changed –Extend functionality of system by adding new modules E.g., libraries encapsulating set of functionality E.g., programming language + compiler abstracts away how the particular CPU works …

Computer System Modularity (cnt’d) Well-defined interfaces hide information –Isolate assumptions –Present high-level abstractions But can impair performance! Ease of implementation vs worse performance 30

31 Network System Modularity Like software modularity, but: Implementation is distributed across many machines (routers and hosts) Must decide: –How to break system into modules Layering –Where modules are implemented End-to-End Principle –Where state is stored Fate-sharing

Remember that slide! The relationship between architectural principles and architectural decisions is crucial to understand 32