EECS 122 Introduction to Computer Networks Network Architecture Computer Science Division Department of Electrical Engineering and Computer Sciences University of California Berkeley Berkeley CA 94720 1776 Katz Stoica F04 1 The Problem Application Transmission Media Telnet FTP Coaxial cable NFS Fiber optic HTTP Packet radio Re implement every application for every technology No But how does the Internet architecture avoid this Katz Stoica F04 3 Software Modularity Break system into modules Well defined interfaces gives flexibility Change implementation of modules Extend functionality of system by adding new modules Interfaces hide information Allows for flexibility But can hurt performance Katz Stoica F04 5 Network Modularity Like software modularity but with a twist Implementation distributed across routers and hosts Must decide How to break system into modules Where modules are implemented We will address these questions in turn Katz Stoica F04 6 Outline Layering How to break network functionality into modules End to End Argument Where to implement functionality Katz Stoica F04 7 Layering Layering is a particular form of modularization System is broken into a vertical hierarchy of logically distinct entities layers Service provided by one layer is based solely on the service provided by layer below Rigid structure easy reuse performance suffers Katz Stoica F04 8 ISO OSI Reference Model for Layers Application Presentation Session Transport Network Datalink Physical Katz Stoica F04 9 Layering Solves Problem Application layer doesn t know about anything below the presentation layer etc Information about network is hidden from higher layers Ensures that we only need to implement an application once Caveat not quite Katz Stoica F04 10 OSI Model Concepts Service what a layer does Service interface how to access the service Interface for layer above Peer interface protocol how peers communicate Set of rules and formats that govern the communication between two network boxes Protocol does not govern the implementation on a single machine but how the layer is implemented between machines Katz Stoica F04 11 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 Katz Stoica F04 12 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 Katz Stoica F04 13 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 Katz Stoica F04 14 Transport Layer 4 Service Demultiplexing Optional error free and flow controlled delivery Interface send message to specific destination Protocol implements reliability and flow control Examples TCP and UDP Katz Stoica F04 15 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 Katz Stoica F04 16 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 Katz Stoica F04 17 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 Katz Stoica F04 18 Who Does What Seven layers Lower three layers are implemented everywhere Next four layers are implemented only at hosts Host A Host B Application Presentation Session Application Presentation Session Router Transport Network Network Transport Network Datalink Physical Datalink Physical Datalink Physical Physical medium Katz Stoica F04 19 Logical Communication Layers interacts with corresponding layer on peer Host A Host B Application Presentation Session Application Presentation Session Router Transport Network Network Transport Network Datalink Physical Datalink Physical Datalink Physical Physical medium Katz Stoica F04 20 Physical Communication Communication goes down to physical network then to peer then up to relevant layer Host A Host B Application Presentation Session Application Presentation Session Router Transport Network Network Transport Network Datalink Physical Datalink Physical Datalink Physical Physical medium Katz Stoica F04 21 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 data data data data data data data data data data data data data Katz Stoica F04 22 Standards Bodies ISO International Standards Organization Professional bureaucrats writing standards Produced OSI layering model IETF Internet Engineering Task Force Started with early Internet hackers More technical than bureaucratic We reject kings presidents and voting We believe in rough consensus and running code David Clark running code Katz Stoica F04 26 OSI vs Internet OSI conceptually define services interfaces protocols Internet provide a successful implementation Application Presentation Session Application Transport Network Transport Internet Datalink Physical Net access Physical OSI formal Telnet FTP TCP DNS UDP IP LAN Packet radio Internet informal Katz Stoica F04 27 Multiple Instantiations Several instantiations for each layer Many applications Many network technologies Transport can be reliable TCP or not UDP Applications dictate transport In general higher layers can dictate lower layer But this is a disaster Applications that can only run certain networks Katz Stoica F04 28 Multiple Instantiations of Layers Katz Stoica F04 29 Solution Universal Internet layer Internet has only IP at the Internet layer Many options for modules above IP Many options for modules below IP Application Transport Internet Net access Physical Telnet FTP TCP DNS UDP IP LAN Packet radio Katz Stoica F04 30 Hourglass Katz Stoica F04 31 Implications
View Full Document