T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 5: Internet architecture Slides used with.

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
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Communicating over the Network Network Fundamentals – Chapter 2.
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.
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)
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
1 EE 122: Internet Design Principles Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks to Vern.
1 Review of Important Networking Concepts Introductory material. This module uses the example from the previous module to review important networking concepts:
Data Communications Architecture Models. What is a Protocol? For two entities to communicate successfully, they must “speak the same language”. What is.
1 Link Layer & Network Layer Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
OIS Model TCP/IP Model.
1 Review of Important Networking Concepts Introductory material. This slide uses the example from the previous module to review important networking concepts:
CS 356 Systems Security Spring Dr. Indrajit Ray
1 Protocol Interaction (ISO’s Open Systems Interconnection (OSI model)) the 7 layers.
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)
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.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
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
OSI Reference Model & Layered Communication Sritrusta Sukaridhoto.
Presentation on Osi & TCP/IP MODEL
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.
Introduction1-1 COSC6377: Computer Networks Rong Zheng Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 Taj Mahal, Agra, India.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
Computer Networks (CS 132/EECS148) General Networking Example Karim El Defrawy Donald Bren School of Information and Computer Science University of California.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
Computer Communication & Networks Lecture # 02 Nadeem Majeed Choudhary
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications 1.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Introduction Slide 1 A Communications Model Source: generates.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Computer Networks. Introduction Computer Network2 A History Lesson of Networking 1969 – ARPANET, first packet switched network consist of UCLA, Stanford,
CS 268: Internet Architecture & E2E Arguments Scott Shenker and Ion Stoica (Fall, 2010) 1.
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.
OSI Model Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology
William Stallings Data and Computer Communications
CS 4700 / CS 5700 Network Fundamentals
Computer Networking Michaelmas/Lent Term M/W/F 11:00-12:00
1 Chapter 4. Protocols and the TCP/IP Suite Wen-Shyang Hwang KUAS EE.
Protocol Suits and Layering Models OSI Model Dr. Abraham UTPA.
1 Protocol Layering Myungchul Kim Tel:
Lecture # 02 Network Models Course Instructor: Engr. Sana Ziafat.
CS 3700 Networks and Distributed Systems
J. Liebeher (modified by M. Veeraraghavan) 1 Introduction Complexity of networking: An example Layered communications The TCP/IP protocol suite.
CS 4700 / CS 5700 Network Fundamentals Lecture 3: Internet Architecture (Layer cake and an hourglass) Revised 1/11/16.
- 1 - DPNM Review of Important Networking Concepts J. Won-Ki Hong Dept. of Computer Science and Engineering POSTECH Tel:
Introduction and Overview of Network and Telecommunications.
Lecture # 02 Network Models Course Instructor: Engr. Sana Ziafat.
Computer Networking A Top-Down Approach Featuring the Internet Introduction Jaypee Institute of Information Technology.
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.
Computer Networks.
Part I. Overview of Data Communications and Networking
OSI Protocol Stack Given the post man exemple.
Network Architecture Introductory material
Taj Mahal, Agra, India T. S. Eugene Ng eugeneng at cs.rice.edu Rice University.
Administrative stuff TA: Almudena Konrad Paper reviews:
Review of Important Networking Concepts
E2E Arguments & Project Suggestions (Lecture 4, cs262a)
Review of Important Networking Concepts
1 TRANSMISSION CONTROL PROTOCOL / INTERNET PROTOCOL (TCP/IP) K. PALANIVEL Systems Analyst, Computer Centre Pondicherry University, Puducherry –
Computer Networking A Top-Down Approach Featuring the Internet
Review of Important Networking Concepts
Presentation transcript:

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 5: Internet architecture Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University2 Organizing Network Functionality Many kinds of networking functionality –e.g., encoding, framing, routing, addressing, reliability, etc. Many different network styles and technologies –circuit-switched vs packet-switched, etc. –wireless vs wired vs optical, etc. Many different applications –ftp, , web, P2P, etc. Network architecture –How should different pieces be organized? –How should different pieces interact?

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University3 Problem new application has to interface to all existing media –adding new application requires O(m) work, m = number of media new media requires all existing applications be modified –adding new media requires O(a) work, a = number of applications total work in system O(ma)  eventually too much work to add apps/media Application end points may not be on the same media! SMTP SSHFTP Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University4 Solution: Indirection Solution: introduce an intermediate layer that provides a single abstraction for various network technologies –O(1) work to add app/media –Indirection is an often used technique in computer science SMTP SSHNFS LAN Coaxial cable Fiber optic Application Transmission Media HTTP Intermediate layer

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University5 Network Architecture Architecture is not the implementation itself Architecture is how to “organize” implementations –what interfaces are supported –where functionality is implemented Architecture is the modular design of the network

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University6 Software Modularity Break system into modules: Well-defined interfaces gives flexibility –can change implementation of modules –can extend functionality of system by adding new modules Interfaces hide information –allows for flexibility –but can hurt performance

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University7 Network Modularity Like software modularity, but with a twist: Implementation distributed across routers and hosts Must decide both: –how to break system into modules –where modules are implemented

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University8 Outline Layering –how to break network functionality into modules The End-to-End Argument –where to implement functionality

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University9 Layering Layering is a particular form of modularization The system is broken into a vertical hierarchy of logically distinct entities (layers) The service provided by one layer is based solely on the service provided by layer below Rigid structure: easy reuse, performance suffers

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University10 ISO OSI Reference Model ISO – International Standard Organization OSI – Open System Interconnection Goal: a general open standard –allow vendors to enter the market by using their own implementation and protocols

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University11 ISO OSI Reference Model Seven layers –Lower two layers are peer-to-peer –Network layer involves multiple switches –Next four layers are end-to-end Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium APhysical medium B Host 1Intermediate switch Host 2

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University12 Layering Solves Problem Application layer doesn’t know about anything below the presentation layer, etc. Information about network is hidden from higher layers This ensures that we only need to implement an application once!

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University13 Key Concepts Service – says what a layer does –Ethernet: unreliable subnet unicast/multicast/broadcast datagram service –IP: unreliable end-to-end unicast datagram service –TCP: reliable end-to-end bi-directional byte stream service –Guaranteed bandwidth/latency unicast service Service Interface – says how to access the service –E.g. UNIX socket interface Protocol – says how is the service implemented –a set of rules and formats that govern the communication between two peers

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University14 Physical Layer (1) Service: move information between two systems connected by a physical link Interface: specifies how to send a bit Protocol: coding scheme used to represent a bit, voltage levels, duration of a bit Examples: coaxial cable, optical fiber links; transmitters, receivers

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University15 Datalink Layer (2) Service: –framing (attach frame separators) –send data frames between peers –others: arbitrate the access to common physical media per-hop reliable transmission per-hop flow control Interface: send a data unit (packet) to a machine connected to the same physical media Protocol: layer addresses, implement Medium Access Control (MAC) (e.g., CSMA/CD)…

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University16 Network Layer (3) Service: –deliver a packet to specified network destination –perform segmentation/reassemble –others: packet scheduling buffer management Interface: send a packet to a specified destination Protocol: define global unique addresses; construct routing tables

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University17 Transport Layer (4) Service: –Multiplexing/demultiplexing –optional: error-free and flow-controlled delivery Interface: send message to specific destination Protocol: implements reliability and flow control Examples: TCP and UDP

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University18 Session Layer (5) Service: –full-duplex –access management (e.g., token control) –synchronization (e.g., provide check points for long transfers) Interface: depends on service Protocol: token management; insert checkpoints, implement roll-back functions

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University19 Presentation Layer (6) Service: convert data between various representations Interface: depends on service Protocol: define data formats, and rules to convert from one format to another

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University20 Application Layer (7) Service: any service provided to the end user Interface: depends on the application Protocol: depends on the application Examples: FTP, Telnet, WWW browser

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University21 Who Does What? Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium Host A Host B Router

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University22 Logical Communication Layers interacts with corresponding layer on peer Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium Host A Host B Router

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University23 Physical Communication Communication goes down to physical network, then to peer, then up to relevant layer Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium Host A Host B Router

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University24 Encapsulation A layer can use only the service provided by the layer immediate below it Each layer may change and add a header to data packet data

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University25 Example: Postal System Standard process (historical): Write letter Drop an addressed letter off in your local mailbox Postal service delivers to address Addressee reads letter (and perhaps responds)

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University26 Postal Service as Layered System Layers: Letter writing/reading Delivery Information Hiding: Network need not know letter contents Customer need not know how the postal network works Encapsulation: Envelope Customer Post Office Customer Post Office

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University27 Internet Protocol Architecture The TCP/IP protocol suite is the basis for the networks that we call the Internet. The TCP/IP suite has four layers: Application, Transport, Network, and (Data) Link Layer. Computers (hosts) implement all four layers. Routers (gateways) only have the bottom two layers.

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University28 Functions of the Layers –Service: Handles details of application programs. –Functions: –Service: Controls delivery of data between hosts. –Functions: Connection establishment/termination, error control, flow control, congestion control, etc. –Service: Moves packets inside the network. –Functions: Routing, addressing, switching, etc. –Service: Reliable transfer of frames over a link. –Functions: Synchronization, error control, flow control, etc. telnet, ftp, www, AFS TCP, UDP IP, ICMP, OSPF RIP, BGP Ethernet, WiFi T1 Application Layer Transport Layer Network Layer (Data) Link Layer

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University29 Internet Protocol Architecture IP protocol Ethernet protocol ATM protocol

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University30 Internet Protocol Architecture MPEG Servier program UDP IP Ethernet Driver Ethernet Driver ATM Driver IP MPEG Player program UDP IP ATM Driver RTP protocol UDP protocol IP protocol Ethernet protocol ATM protocol

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University31 Encapsulation As data is moving down the protocol stack, each protocol is adding layer-specific control information.

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University32 Hourglass Note: Additional protocols like routing protocols (RIP, OSPF) needed to make IP work

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University33 Implications of Hourglass A single Internet layer module: Allows all networks to interoperate –all networks technologies that support IP can exchange 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

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University34 Reality Layering is a convenient way to think about networks But layering is often violated –Firewalls –Transparent caches –NAT boxes

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University35 Placing Functionality The most influential paper about placing functionality is “End-to-End Arguments in System Design” by Saltzer, Reed, and Clark The “Sacred Text” of the Internet –endless disputes about what it means –everyone cites it as supporting their position

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University36 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

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University37 Example: Reliable File Transfer Solution 1: make network reliable Solution 2: implement end-to-end check and retry if failed OS Appl. OS Appl. Host AHost B OK

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University38 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 application layer with no need for reliability from lower layers Is there any need to implement reliability at lower layers?

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University39 Conclusion Implementing this functionality in the network: Doesn’t reduce host implementation complexity Does increase network complexity Probably imposes delay and overhead on all applications, even if they don’t need functionality However, implementing in network can enhance performance in some cases –very lossy link

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University40 Conservative Interpretation “Don’t implement a function at the lower levels of the system unless it can be completely implemented at this level” (Peterson and Davie) Unless you can relieve the burden from hosts, then don’t bother

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University41 Radical Interpretation Don’t implement anything in the network that can be implemented correctly by the hosts Make network layer absolutely minimal –ignore performance issues

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University42 Moderate Interpretation Think twice before implementing functionality in the network If hosts can implement functionality correctly, implement it a lower layer only as a performance enhancement But do so only if it does not impose burden on applications that do not require that functionality

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University43 Reality Layering and E2E Principle regularly violated: –Firewalls –Transparent caches –Other middleboxes Battle between architectural purity and commercial pressures

T. S. Eugene Ngeugeneng at cs.rice.edu Rice University44 Summary Layering is a good way to organize network functions Unified Internet layer decouples apps from networks E2E argument argues to keep IP simple Be judicious when thinking about adding to the network layer