Taxonomy of Networks; Layered Network Architecture

Slides:



Advertisements
Similar presentations
Introduction 2 1: Introduction.
Advertisements

OSI Model OSI MODEL.
Lecture 2 Protocol Layers CPE 401 / 601 Computer Network Systems slides are modified from Dave Hollinger.
Department of Computer Engineering University of California at Santa Cruz Networking Systems (1) Hai Tao.
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
CS 268: Lecture 2 (Layering & End-to-End Arguments)
Chapter 4 : TCP/IP and OSI Business Data Communications, 4e.
Semester Copyright USM EEE442 Computer Networks Introduction: Protocols En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK)
Protocols and the TCP/IP Suite
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
EE 4272Spring, 2003 EE4272: Computer Networks Instructor: Tricia Chigan Dept.: Elec. & Comp. Eng. Spring, 2003.
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 Network Layer: Host-to-Host Communication. 2 Network Layer: Motivation Can we built a global network such as Internet by extending LAN segments using.
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.
Review on Networking Technologies Linda Wu (CMPT )
1 K. Salah Module 1.0: Introduction Definition Communication Model Type of networks –WAN –MAN –LAN, WLAN –PAN, WPAN Networking Technologies Network Switching.
What’s the Internet: “nuts and bolts” view
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
Gursharan Singh Tatla Transport Layer 16-May
OIS Model TCP/IP Model.
Lecturer: Tamanna Haque Nipa
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
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 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.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
The OSI Model An ISO (International standard Organization) that covers all aspects of network communications is the Open System Interconnection (OSI) model.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Introduction Slide 1 A Communications Model Source: generates.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Network Protocol Hierarchies
The OSI Model.
RSC Part I: Introduction Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are, mainly, part of the companion slides to.
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.
Introduction1-1 Chapter 1 Computer Networks and the Internet Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose,
UNDERSTANDING THE HOST-TO-HOST COMMUNICATIONS MODEL - OSI LAYER & TCP/IP MODEL 1.
The Transport Layer application transport network data link physical application transport network data link physical application transport network data.
TCP/IP Network.
Computer Networks with Internet Technology William Stallings
Computer Security Workshops Networking 101. Reasons To Know Networking In Regard to Computer Security To understand the flow of information on the Internet.
William Stallings Data and Computer Communications
1 ECE453 - Introduction to Computer Networks Lecture 1: Introduction.
A Taxonomy of Communication Networks
CHAPTER 4 PROTOCOLS AND THE TCP/IP SUITE Acknowledgement: The Slides Were Provided By Cory Beard, William Stallings For Their Textbook “Wireless Communication.
1 ECEN “Internet Protocols and Modeling”, Spring 2011 Slide 5.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Protocols and Architecture Slide 1 Use of Standard Protocols.
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:
1 A Taxonomy of Communication Networks Y. Richard Yang 01/22/2016.
Network Models. The OSI Model Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO). Model for understanding.
A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their original slides that accompany the.
Network Applications 9/14/ Outline  Recap r ISO/OSI Layering and Internet Layering r Application layer overview.
Computer Engineering and Networks, College of Engineering, Majmaah University Protocols OSI reference MODEL TCp /ip model Mohammed Saleem Bhat
OSI Model OSI MODEL. Communication Architecture Strategy for connecting host computers and other communicating equipment. Defines necessary elements for.
OSI Model OSI MODEL.
Lecture (2).
Slides taken from: Computer Networking by Kurose and Ross
Networking Devices.
OSI Protocol Stack Given the post man exemple.
Lecturer, Department of Computer Application
DEPARTMENT OF COMPUTER SCIENCE
Administrative stuff TA: Almudena Konrad Paper reviews:
OSI Model OSI MODEL.
Network Architecture Models
Computer Networking A Top-Down Approach Featuring the Internet
Presentation transcript:

Taxonomy of Networks; Layered Network Architecture Y. Richard Yang 01/18/2008

Outline Admin. and recap A taxonomy of communication networks Layered network architecture

Admin. Readings from the textbook and additional suggested readings (highly recommended) are linked on the schedule page Assignment one is linked on the schedule page due Monday, Jan. 28, 2008, in class if you type it in, you can email to Antonios

Recap: A Taxonomy of Switched Networks communication networks switched networks broadcast networks circuit-switched networks (e.g. telephone, GSM) packet-switched networks (e.g. Internet) circuit switching: dedicated circuit per call/session: e.g., telephone, GSM High-Speed Circuit-Switched Data (HSCSD) packet switching: data sent thru network in discrete “chunks” e.g., Internet, General Packet Radio Service (GPRS)

Recap: Circuit Switching vs. Packet Switching resource partitioned not partitioned when using resource use a single partition bandwidth use whole link bandwidth reservation/setup need reservation (setup delay) no reservation (more later) resource contention busy signal (session loss) congestion (long delay and packet losses) service guarantee yes no charging time packet header no header per packet header fast path processing fast per packet processing

Analysis of Circuit-Switching Blocking (Busy) Time Assume N circuits Call arrival:  per second Call service rate:  per second What is the percentage of time that a new session is blocked? For a demo of M/M/1, see: http://www.dcs.ed.ac.uk/home/jeh/Simjava/queueing/mm1_q/mm1_q.html

Analysis of Circuit-Switching Blocking (Busy) Time: Sketch system state: # of busy lines  1 k k+1 N (k+1) p0 p1 pk pk+1 pN at equilibrium (time resersibility) in one unit time: #(transitions k  k+1) = #(transitions k+1  k)

Time Reversibility By Frank Kelly state k+1 k time

Analysis of Queueing + Transmission Time Consider a single queue Packet arrival rate:  per second Packet service rate:  per second What is the queueing + transmission time of each packet?

Analysis of Queueing Delay: Sketch system state: # of packets in queue  1 k k+1 N  p0 p1 pk pk+1 at equilibrium (time resersibility) in one unit time: #(transitions k  k+1) = #(transitions k+1  k)

Analysis of Delay (cont’)  1 k k+1  Average queueing delay: Transmission delay: Queueing + transmission:

Link utilization (also called traffic intensity) Delay Assume: R = link bandwidth (bps) L = average packet length (bits) a = average packet arrival rate (pkt/sec) Link utilization (also called traffic intensity)

Queueing Delay as A Function of Utilization Assume: R = link bandwidth (bps) L = packet length (bits) a = average packet arrival rate (pkt/sec)   ~ 0: average queueing delay small  -> 1: delay becomes large  > 1: more “work” arriving than can be serviced, average delay infinite !

Statistical Multiplexing A simple model to compare bandwidth efficiency of - reservation/dedication (aka circuit-switching) and - no reservation (aka packet switching) setup - a single bottleneck link with rate R - n flows; each flow has an arrival rate of a/n no reservation: all arrivals into the single link with rate R, the queueing delay + transmission delay: reservation: each flow uses its own reserved (sub)link with rate R/n, the queueing delay + transmission delay: Real life analogy?

Summary: Packet Switching vs. Circuit Switching Advantages of packet switching over circuit switching most important advantage of packet-switching over circuit switching is statistical multiplexing, and therefore efficient bandwidth usage Disadvantages of packet switching potential congestion: packet delay and high loss protocols needed for reliable data transfer, congestion control it is possible to guarantee quality of service (QoS) in packet-switched networks and still gain statistical multiplexig, but it adds much complexity packet header overhead per packet processing overhead

Outline Admin. and recap A taxonomy of communication networks circuit switched networks packet switched networks circuit switching vs. packet switching datagram and virtual circuit packet switched networks

A Taxonomy of Packet-Switched Networks According to Routing Goal: move packets among routers from source to destination we’ll study routing algorithms later in the course Two types of packet switching datagram network each packet of a flow is switched independently virtual circuit network: all packets from one flow are sent along a pre-established path (= virtual circuit)

Datagram Packet Switching Commonly when we say packet switching we mean datagram switching Example: IP networks Each packet is independently switched each packet header contains complete destination address receiving a packet, a router looks at the packet’s destination address and searches its current routing table to determine the possible next hops, and pick one Analogy: postal mail system Disadvantages: routes may change during session Advantage: routers do not keep any state about a flow; thus, network architecture is robust scalable

Datagram Packet Switching Host C Host D Host A Node 1 Node 2 Node 3 Node 5 Host B Host E Node 7 Node 6 Node 4

Timing Diagram of Datagram Switching Host A Host B Node 1 Node 2 processing and queueing delay of Packet 1 at Node 2 propagation delay from Host A to Node 1 transmission time of Packet 1 at Host A Packet 1 Packet 2 Packet 3 Packet 1 Packet 2 Packet 3 Packet 1 Packet 2 Packet 3

Virtual-Circuit Packet Switching Example: Multiple Label Packet Switching (MPLS) in IP networks Hybrid of circuit switching and datagram switching fixed path determined at virtual circuit setup time, remains fixed thru flow each packet carries a short tag (virtual-circuit (VC) #); tag determines next hop Question: how big is the lookup table at each router? how about datagram? Incoming VC# Outgoing Interface QoS 12 2 16 3 20 … What advantages do virtual circuit have over datagram? can treat different flows differently, if flows setup its desired treatment Guarantees in-sequence delivery of packets However: Packets from different virtual circuits may be interleaved

Virtual-Circuit Switching Host C Host D Host A Node 1 Node 2 Node 3 Node 5 Host B Host E Node 7 Node 6 Node 4

Virtual-Circuit Packet Switching Three phases VC establishment Data transfer VC disconnect

Timing Diagram of Virtual-Circuit Switching Host 1 Host 2 Node 1 Node 2 propagation delay between Host 1 and Node 1 VC establishment Packet 1 Packet 2 Packet 3 Packet 1 Packet 2 Packet 3 data transfer Packet 1 Packet 2 Packet 3 VC termination

Discussion: Datagram Switching vs. Virtual Circuit Switching What are the benefits of datagram switching over virtual circuit switching? What are the benefits of virtual circuit switching over datagram switching?

Summary of the Taxonomy of Communication Networks circuit-switched network communication network switched network broadcast communication packet-switched network datagram network virtual circuit network

Outline Admin. and recap A taxonomy of communication networks Layered network architecture what is layering? why layering? how to determine the layers? ISO/OSI layering and Internet layering

What is Layering? A technique to organize a networked 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. Application Application Transport Transport Network Network Network Datalink Datalink Datalink Physical Physical Physical Physical medium

Outline Admin. and recap A taxonomy of communication networks Layered network architecture what is layering? why layering?

Why Layering? Networks are complex ! many “pieces”: hardware software hosts routers links of various media software applications protocols Dealing with complex systems: explicit structure allows identification of the relationship among a complex system’s pieces layered reference model for discussion Modularization eases maintenance, updating of system: change of implementation of a layer’s service transparent to rest of system, e.g., changes in routing protocol doesn’t affect rest of system

An Example: No Layering FTP HTTP Application Telnet Ether-net Fiber optic Wireless Transmission Media No layering: each new application has to be re-implemented for every network technology !

An Example: Benefit of Layering Introducing an intermediate layer provides a common abstraction for various network technologies HTTP Application Telnet FTP Transport & Network Transmission Media Ethernet Fiber optic Wireless Discussion: potential disadvantages of layering

ISO/OSI Concepts ISO – International Standard Organization OSI – Open System Interconnection Service – says what a layer does Interface – says how to access the service Protocol – says how the service is implemented a set of rules and formats that govern the communications between two peers

An Example of Layering

Layering -> Logical Communication E.g.: application provide services to users application protocol: send messages to peer for example, HELO, MAIL FROM, RCPT TO are messages between two SMTP peers

Layering: Logical Communication data application transport network link physical transport E.g.: transport take msg from app Transport protocol add control info to form “datagram” send datagram to peer wait for peer to ack receipt; if no ack, retransmit ack data data transport

Layering: Physical Communication data application transport network link physical network link physical application transport network link physical data application transport network link physical application transport network link physical

Protocol Layering and Data Each layer takes data from above adds header information to create new data unit passes new data unit to layer below

Outline Review A taxonomy of communication networks Layered network architecture what is layering? why layering? how to determine the layers?

How do you divide functionalities among the layers? Key design issue: How do you divide functionalities among the layers?

The End-to-End Arguments The function in question can completely and correctly be implemented only with the knowledge and help of the application standing at the endpoints of the communication systems. Therefore, providing that questioned function as a feature of the communications systems itself is not possible. J. Saltzer, D. Reed, and D. Clark, 1984

What does the End-to-End Arguments Mean? The application knows the requirements best, place functionalities as high in the layer as possible Think twice before implementing a functionality at a lower layer, even when you believe it will be useful to an application

Example: Where to Provide Reliability ? S A R L2 L2 L1 L1 L1 Solution 1: the network (lower layer L1) provides reliability, i.e., each hop provides reliability Solution 2: the end host (higher layer L2) provides reliability, i.e., end-to-end check and retry

What are the Reasons for Implementing Reliability at Higher Layer ? The lower layer cannot completely provide the functionality the receiver has to do the check anyway ! Implementing it at lower layer increases complexity (and thus less robust, harder to understand) adds (performance/cost) overhead of the lower layer--- all upper layer applications have to pay the price The upper layer knows the requirements better and thus may choose a better approach to implement it S A R L2 L2 L1 L1 L1

Are There Reasons Implementing Reliability at Lower Layer ? Improve performance, e.g., if a high error rate from A to R, then local reliability improves efficiency reduces delay if the link from S to A has long delay Share common code, e.g., reliability is required by multiple applications L1 L2 S R A

Trade-offs An 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) we used reliability as an example can you give me another example that is best implemented end-to-end? A lower layer has more information about constraints in data transmission (e.g., packet size, error rate)

Summary: Layering Key technique to implement communication protocols; provides modularity Key design decision: what functionalities to put in each layer?

Summary: End-to-End Arguments If the application can do it, don’t do it at a lower layer -- the application knows the best what it needs add functionality in lower layers iff it (1) is used and improves performance of a large number of (current and potential future) applications, (2) does not hurt (too much) other applications, and (3) does not increase (too much) complexity/overhead Example: Internet

Challenges Challenges to build a good (networking) system: find the right balance between: end-to-end arguments reuse, interoperability, implementation effort (apply layering concepts) performance No universal answer: the answer depends on the goals and assumptions!

Backup Slides

ISO/OSI Layering and Internet Layering

ISO/OSI Reference Model Seven layers lower three layers are hop-by-hop next four layers are end-to-end (host-to-host) Application Application Presentation Presentation Session Session Transport Transport Network Network Network Datalink Datalink Datalink Physical Physical Physical Physical medium

Internet Layering Lower three layers are hop-by-hop Next two layers are end-to-end Application Application Transport Transport Network Network Network Datalink Datalink Datalink Physical Physical Physical Physical medium

Internet Protocol Layers Five layers Application: supporting network applications ftp, smtp, http, p2p, IP telephony Transport: host-host data transfer tcp, udp Network: routing of datagram from source to destination ip Link: data transfer between neighboring network elements ppp, ethernet, 802.11, DSL Physical: bits “on the wire” cable, optical fiber, wireless application transport network link physical

The Hourglass Architecture of the Internet Telnet Email FTP WWW TCP UDP IP Ethernet Wireless FDDI

Link Layer: Services Provided by Ethernet Multiplexing/demultiplexing send frames to the network layer Multiple access control send frame to peer sharing the common channel Error detection Telnet Email FTP WWW TCP UDP IP Ethernet Wireless FDDI

Network Layer: Services Provided by IP Multiplexing/demultiplexing send packets to the transport Routing best-effort to send packets from source to destination Fragmentation and reassembling partition a fragment into smaller packets removed in IPv6 Error detection Does not provide reliability, or reservation Telnet Email FTP WWW TCP UDP IP Ethernet Wireless FDDI

Network Layer: IPv4 Header

Transport Layer: Services Provided by TCP Multiplexing/demultiplexing Reliable transport between sending and receiving processes setup required between sender and receiver: a connection-oriented service Flow control sender won’t overwhelm receiver Congestion control throttle sender when network overloaded Error detection Does not provide timing, minimum bandwidth guarantees Telnet Email FTP WWW TCP UDP IP Ethernet Wireless FDDI

TCP Header

Services Provided by UDP A connectionless service Does not provide: connection setup, reliability, flow control, congestion control, timing, or bandwidth guarantee why is there a UDP?

The Design Philosophy of the DARPA Internet

Goals . Connect different networks Survivability in the face of failure Support multiple types of services Accommodate a variety of networks Permit distributed management of resources Be cost effective Permit host attachment with a low level of effort Be accountable

Survivability in the Face of Failure: Questions What does the goal mean? Why is the goal important? How does the Internet achieve this goal? Does the Internet achieve this goal (or in what degree does the Internet achieve this goal)?

Survivability in the Face of Failure 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 endpoints 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

Support Multiple Types of Service: Questions What does this goal mean? Why is the goal important? How does the Internet achieve this goal? Does the Internet achieve this goal (or in what degree does the Internet achieve this goal)?

Support Multiple Types of Service Add UDP to TCP to better support other types of applications e.g., “real-time” applications This was arguably the main reason for separating TCP and IP Provide datagram abstraction: lower common denominator on which other services can be built: everything over IP service differentiation was considered (remember ToS?), but this has never happened on the large scale (Why?)

Support a Variety of Networks: Questions What does the goal mean? Why is this goal important? How does the Internet achieve this goal? Does the Internet achieve this goal (or in what degree does the Internet achieve this goal)?

Support a Variety of Networks Very successful because the minimalist service; it requires from underlying network only to deliver a packet with a “reasonable” probability of success …does not require: reliability in-order delivery The mantra: IP over everything Then: ARPANET, X.25, DARPA satellite network.. Now: ATM, SONET, WDM…

Other Goals Permit distributed management of resources Be cost effective Permit host attachment with a low level of effort Be accountable

Details of the Seven ISO/OSI Layers

Physical Layer (1) Service: moves 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 others: arbitrates the access to common physical media ensures reliable transmission provides flow control Interface: sends 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: delivers a packet to a specified destination performs fragmentation/reassembly of packets others: packet scheduling buffer management Interface: sends a packet to a specified destination Protocol: defines global unique addresses; constructs routing tables; implement packet forwarding; fragments/reassembles packets

Data and Control Planes Data plane: concerned with packet forwarding buffer management packet scheduling Control Plane: concerned with installing and maintaining the states for the data plane

Transport Layer (4) Service: provides an in-order, error-free, and flow and congestion controlled end-to-end connection multiplex/demuliplex packets Interface: sends a packet to a destination Protocol: implements reliability, as well as flow and congestion control Examples: TCP and UDP TCP: in-order, error free, flow and congestion control

Session Layer (5) Service: Interface: depends on 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: converts data between various representations Interface: depends on service Protocol: defines data formats and rules to convert from one format to another

Application Layer (7) Service: any service provided to end users Interface: depends on the application Protocol: depends on the application Examples: FTP, Telnet, WWW

Statistical Multiplexing A simple model to compare bandwidth efficiency of - reservation/dedication (aka circuit-switching) and - no reservation (aka packet switching) setup - a single bottleneck link with rate R - n flows; each flow has an arrival rate of a/n no reservation: all arrivals into the single link with rate R, the queueing delay + transmission delay: reservation: each flow uses its own reserved (sub)link with rate R/n, the queueing delay + transmission delay: queueing delay