CS 268: Lecture 3 (Layering & End-to-End Arguments)

Slides:



Advertisements
Similar presentations
OSI Model OSI MODEL.
Advertisements

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.
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)
Protocols and the TCP/IP Suite
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
EE 4272Spring, 2003 Protocols & Architecture A Protocol Architecture is the layered structure of hardware & software that supports the exchange of data.
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.
William Stallings Data and Computer Communications 7 th Edition Chapter 2 Protocols and Architecture.
COE 342: Data & Computer Communications (T042) Dr. Marwan Abu-Amara Chapter 2: Protocols and Architecture.
EECS122 - UCB 1 CS 194: Distributed Systems Communication Protocols, RPC Computer Science Division Department of Electrical Engineering and Computer Sciences.
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas The ISO/OSI Reference Model The Model Functionality.
 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.
Lecturer: Tamanna Haque Nipa
1 Review of Important Networking Concepts Introductory material. This slide uses the example from the previous module to review important networking concepts:
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
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 Communications and Networks
1 Introduction to Computer Networks Foundation Ilam University Mozafar Bag-Mohammadi.
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.
Review: – computer networks – topology: pair-wise connection, point-to-point networks and broadcast networks – switching techniques packet switching and.
Chapter 2 Network Models
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.
1 An Introduction to Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani Lecture 2: Foundation.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
William Stallings Data and Computer Communications 7 th Edition Data Communications and Networks Overview Protocols and Architecture.
THE OSI REFERENCE MODEL Open Systems Interconnection (OSI) International Organization for Standardization( ISO)
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications 1.
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.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Internet Security - Farkas1 CSCE 813 Internet Security TCP/IP.
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.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
OSI Model Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology
William Stallings Data and Computer Communications
CHAPTER 4 PROTOCOLS AND THE TCP/IP SUITE Acknowledgement: The Slides Were Provided By Cory Beard, William Stallings For Their Textbook “Wireless Communication.
Open System Interconnection Describe how information from a software application in one computer moves through a network medium to a software application.
Network Models.
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:
Protocol Layering Chapter 11.
Network Models. The OSI Model Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO). Model for understanding.
The OSI Model. History of OSI Model ISO began developing the OSI model in It is widely accepted as a model for understanding network communication.
Computer Engineering and Networks, College of Engineering, Majmaah University Protocols OSI reference MODEL TCp /ip model Mohammed Saleem Bhat
Computer Networking A Top-Down Approach Featuring the Internet Introduction Jaypee Institute of Information Technology.
OSI Model OSI MODEL. Communication Architecture Strategy for connecting host computers and other communicating equipment. Defines necessary elements for.
OSI Model OSI MODEL.
Network Models.
Computer Networks.
Lecturer, Department of Computer Application
DEPARTMENT OF COMPUTER SCIENCE
Administrative stuff TA: Almudena Konrad Paper reviews:
Protocols and the TCP/IP Suite
Data and Computer Communications by William Stallings Eighth Edition
OSI Model OSI MODEL.
Introduction to Computer Networks
Protocols and the TCP/IP Suite
Computer Networking A Top-Down Approach Featuring the Internet
Presentation transcript:

CS 268: Lecture 3 (Layering & End-to-End Arguments)

Overview  Layering  End-to-End Arguments  A Case Study: the Internet

What is Layering?  A technique to organize a network system into a succession of logically distinct entities, such that the service provided by one entity is solely based on the service provided by the previous (lower level) entity

Why Layering?  No layering: each new application has to be re- implemented for every network technology! Telnet FTPNFS Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP

Why Layering?  Solution: introduce an intermediate layer that provides a unique abstraction for various network technologies Telnet FTPNFS Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP Intermediate layer

Layering  Advantages -Modularity – protocols easier to manage and maintain -Abstract functionality –lower layer can be changed without affecting the upper layer -Reuse – upper layer can reuse the functionality provided by lower layer  Disadvantages -Information hiding – inefficient implementations

ISO OSI Reference Model  ISO – International Standard Organization  OSI – Open System Interconnection  Started to 1978; first standard ARPANET started in 1969; TCP/IP protocols ready by 1974  Goal: a general open standard -Allow vendors to enter the market by using their own implementation and protocols

ISO OSI Reference Model  Seven layers -Lower three layers are peer-to-peer -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

Data Transmission  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

OSI Model Concepts  Service – says what a layer does  Interface – says how to access the service  Protocol – says how is the service implemented -A set of rules and formats that govern the communication between two peers

Physical Layer (1)  Service: move the 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

Datalink Layer (2)  Service: -Framing, i.e., attach frames separator -Send data frames between peers attached to the same physical media -Others (optional): Arbitrate the access to common physical media Ensure reliable transmission Provide 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)…

Network Layer (3)  Service: -Deliver a packet to specified destination -Perform segmentation/reassemble (fragmentation/defragmentation) -Others: Packet scheduling Buffer management  Interface: send a packet to a specified destination  Protocol: define global unique addresses; construct routing tables

Data and Control Planes  Data plane: concerned with -Packet forwarding -Buffer management -Packet scheduling  Control Plane: concerned with installing and maintaining state for data plane

Example: Routing  Data plane: use Forwarding Table to forward packets  Control plane: construct and maintain Forwarding Tables (e.g., Distance Vector, Link State protocols) H1 H2 R1 R2 R3 R4 R5 R6 H2 R4 … H2 R6 … Fwd table

Transport Layer (4)  Service: -Provide an error-free and flow-controlled end-to-end connection -Multiplex multiple transport connections to one network connection -Split one transport connection in multiple network connections  Interface: send a packet to specify destination  Protocol: implement reliability and flow control  Examples: TCP and UDP

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  Protocols: token management; insert checkpoints, implement roll-back functions

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

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

OSI vs. TCP/IP  OSI: conceptually define: service, interface, protocol  Internet: provide a successful implementation Application Presentation Session Transport Network Datalink Physical Internet Host-to- network Transport Application IP LAN Packet radio TCPUDP TelnetFTPDNS

Key Design Decision  How do you divide functionality across the layers?

Overview  Layering  End-to-End Arguments  A Case Study: the Internet

End-to-End Argument  Think twice before implementing a functionality that you believe that is useful to an application at a lower layer  If the application can implement a functionality correctly, implement it at a lower layer only as a performance enhancement

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

Discussion  Solution 1 not complete -What happens if the sender or/and receiver misbehave?  The receiver has to do the check anyway!  Thus, full functionality can be entirely implemented at application layer; no need for reliability from lower layers  Is there any need to implement reliability at lower layers?

Discussion  Yes, but only to improve performance  Example: -Assume a high error rate on communication network -Then, a reliable communication service at datalink layer might help

Trade-offs  Application has more information about the data and the semantic of the service it requires (e.g., can check only at the end of each data unit)  A lower layer has more information about constraints in data transmission (e.g., packet size, error rate)  Note: these trade-offs are a direct result of layering!

Rule of Thumb  Implementing a functionality at a lower level should have minimum performance impact on the application that do not use the functionality

Other Examples  Secure transmission of data  Duplicate message suppression  RISC vs. CISC

Overview  Layering  End-to-End Arguments  A Case Study: the Internet

Goals 0 Connect existing networks -Initially ARPANET and ARPA packet radio network 1. Survivability -Ensure communication service even in the presence of network and router failures 2. Support multiple types of services 3. Must accommodate a variety of networks 4. Allow distributed management 5. Must be cost effective 6. Allow host attachment with a low level of effort 7. Allow resource accountability

Connect Existing Networks  Existing networks: ARPANET and ARPA packet radio  Decision: packet switching -Existing networks already were using this technology  Packet switching  store and forward router architecture  Internet: a packet switched communication network consisting of different networks connected by store-and-forward routers

Survivability  Continue to operate even in the presence of network failures (e.g., link and router failures) -As long as the network is not partitioned, two endpoint should be able to communicate…moreover, any other failure (excepting network partition) should be transparent to endpoints  Decision: maintain state only at end-points (fate- sharing) -Eliminate the problem of handling state inconsistency and performing state restoration when router fails  Internet: stateless network architecture

Services  At network layer provides one simple service: best effort datagram (packet) delivery  Only one higher level service implemented at transport layer: reliable data delivery (TCP) -performance enhancement; used by a large variety of applications (Telnet, FTP, HTTP) -does not impact other applications (can use UDP)  Everything else implemented at application level

Key Advantages  The service can be implemented by a large variety of network technologies  Does not require routers to maintain any fine grained state about traffic. Thus, network architecture is -Robust -Scalable

What About Other Services?  Multicast?  Quality of Service (QoS)?

Summary: Layering  Key technique to implement communication protocols; provides -Modularity -Abstraction -Reuse  Key design decision: what functionality to put at each layer?

Summary: End-to-End Arguments  If the application can do it, don’t do it at a lower layer -- anyway the application knows the best what it needs -add functionality in lower layers iff it is (1) used and improves performances of a large number of applications, and (2) does not hurt other applications  Success story: Internet

Summary  Challenge of building a good (network) system: find the right balance between: Reuse, implementation effort (apply layering concepts) End-to-end argument Performance  No universal answer: the answer depends on the goals and assumptions!