
Introduction to Networks Lecture Topics • History and motivation • Network architecture – Layered models – Definitions and abstractions – OSI Reference Model • Network design issues – Definitions – Components – Message, packet, and cell switching – Resource sharing – Functionality – Performance Networks are Important!!! WWWWWW EmailEmail WorldWorld WideWide WebWeb ElectronicElectronic MailMail TelnetTelnet TerminalTerminal EmulationEmulation FTPFTP Multimedia FileFile TransferTransfer ProtocolProtocol Multimedia C/SC/S Client-ServerClient-Server ApplicationsApplications … and many others … Internet Hosts http://www.isoc.org/guest/zakon/Internet/History/HIT.html World Wide Web Sites http://www.isoc.org/guest/zakon/Internet/History/HIT.html NET.WORK.VIRGINIA vBNS ESnet Internet2 ATM network with Internet access Over 400 sites with OC3, Internet DS3, or DS1 service SprintLink DS3 Service through Sprint and Router Vision Alliance (consortium OC3 led by Bell Atlantic) Sprint WTN OC3 OC3 Sprint RIC OC3 Sprint ROA Backbone/Internet Gateway Network Architecture • Network architecture – Guides the design and implementation of the network – Assists in coping with complexity • Networks are typically modeled as a set of layered, cooperating processes • The International Organization for Standards (ISO) has developed the seven-layer Open Systems Interconnect (OSI) model – The OSI model is not strictly adhered to in actual implementations. It is used more as guidelines. A Simple Layered Model Application Programs Process-to-Process Channels Layers Host-to-Host Connectivity Networking Hardware • Decomposes system into simpler, manageable components • Provides a modular design Multiple Abstractions for One Layer Application Programs Request/Reply Message Stream Channel Channel Host-to-Host Connectivity Networking Hardware • Process-to-process channel – Request/reply interaction – Stream of messages Functions Are Not Always “Layer-able” Application Programs Process-to-Process Channels Host-to-Host Connectivity Network Networking Hardware Management • Some functions may need to interact with multiple layers Layered Models … Generalized (1) • Layer N – Provides services to layers N+1 and above – Uses services offered by layers N-1 and below – May ONLY interact with peer layer N entities via protocols • Distinction between service, interface, and implementation Layer N+1 Layer N+1 Layer N Layer N Layer N-1 Layer N-1 Layered Models … Generalized (2) services provided to upper layers service interface peer-to-peer Node A interface Node B Layer N protocol service interface services provided by lower layers Layered Models … Generalized (3) • Protocols are rules for cooperation between peers – Peer-to-peer interfaces, e.g. Protocol X defines the interfaces – “Protocol” sometimes used to refer to the layer itself, e.g. the entity that realizes Protocol X • Service access points (SAPs) adhering to an interface definition are needed between layers – Service or layer-to-layer interface – The services implemented by a protocol at layer X are accessed through its SAP. Think of SAP as a functional interface. Interfaces and Protocols • Three components of an interface – Set of visible abstract objects, and for each, a set of allowed operations with parameters – Set of rules governing sequences of operations – Encoding and formatting conventions required for operations and parameters • Protocols are operationally equivalent, but are usually restricted to peer layers (interfaces are between adjacent layers) OSI Terminology for Layering IDU Layer N+1 ICI SDU SAP PDU Layer N header SDU ICI SDU SAP Service Access Point (where N+1 accesses N) IDU Interface Data Unit (passed from N+1 to N) SDU Service Data Unit (data from N+1) ICI Interface Control Information (service type, etc.) PDU Protocol Data Unit (exchanged by peer N entities) OSI Reference Model Application Application Presentation Presentation Session Session Transport Transport Network Network Network Data Link Data Link Data Link Physical Physical Physical Deviation from Strict Layering • Example: Fiber Distributed Data Interface (FDDI) LLC Data Link MAC PHY SMT Physical PMD LLC Logical Link Control MAC Media Access Control PHY Physical PMD Physical Media Dependent SMT Station Management Layered Model Example • Typical protocol “stack” in a UNIX-based TCP/IP environment X FTP Telnet Application HTTP SMTP NFS Presentation XDR Session RPC Transport TCP UDP Network IP Data Link Ethernet FDDI Physical Internet Protocol Graph • Internet protocols (“TCP/IP”) really uses a four-layer architecture HTTP FTP HTTP FTP TCP UDP IP Net 1 Net 2 ... Net n Advantages of Layering (1) • Data hiding and encapsulation -- data structures, algorithms, etc. in a layer are not visible to other layers • Decomposition -- complex systems can be decomposed into more easily understood pieces • System can evolve since layers can be changed (as long as service and interface does not change) • Alternate services can be offered at layer N+1 that share the services of layer N Advantages of Layering (2) • Alternate implementations of a layer can co-exist • A layer or sublayer can be simplified or omitted if some or all of its services are not needed • Confidence in correct operation enhanced by testing each layer independently Disadvantages of Layering • Some functions (like FDDI station management) really need to access and operate at multiple layers • Poorly conceived layers can lead to awkward and complex interfaces • There may be performance penalties due to extra overhead of layers, for example memory-to-memory copies • Design of (an older) layer N+1 may be sub-optimal given the properties of (a new) layer N Physical Layer • The physical layer provides a virtual link for transmitting a sequence of bits between any pair of nodes joined by a physical communication channel -- “virtual bit pipe” • Synchronous or asynchronous • Defines physical interface, signaling, cabling, connectors, etc. • May be variations at the physical level for a basic data link protocol (PMD specs) – IEEE 802.3 (Ethernet): 10Base5 (thick wire), 10Base2 (thin wire), 10BaseT (twisted pair) Data Link Layer • The data link layer is responsible for the error-free transmission of packets between “adjacent” or directly-connected nodes (OSI defn) •The media access control (MAC) function is a sub-layer of the data link layer – Allows multiple nodes to share a common transmission media – Supports addressing of nodes •The logical link control (LLC) function is another sub-layer – Functions such as error recovery Network Layer • The network layer is responsible for getting a packet through the network from the source node to the destination node – Routing to select network path – Flow control or congestion control – Internetworking to allow transmission between different types of networks • In a WAN or internetwork, the network layer requires cooperation among peers at intermediate nodes • Network layer function is minimal in a LAN • Key: Network layer provides host-to-host communication Transport Layer (1) • The transport layer provides network-independent, end-to-end message transfer between pairs of ports or sockets • Ports are destination points for communication that are defined by software – Ports are identified by a transport address that identifies the host computer and the port identifier – Used to distinguish between multiple applications on one host – Established services, like FTP and HTTP, have “well- known” default port identifiers that can be obtained through a name service (RFC 1700) • Key: Transport layer provides process-to- process communication. Transport Layer (2) Network Process Process A B Ports (Sockets) Transport Layer (3) • Transport layers typically provide one of two basic types of service: – Virtual circuit or connection-oriented service • Transmission Control Protocol (TCP) – Datagram or connection-less service • User Datagram Protocol (UDP) Transport Layer: Virtual Circuits • Virtual circuits are logical channels between a source and destination • Connections are maintained for multiple packet or message transmissions until they are explicitly released – Network layer may still use dynamic routing • Functions – Translate transport address to network address – Segment messages into packets for transmission – Pass packets to network layer for delivery – Reassemble packets at receiving end Transport Layer: Datagrams • Datagram communication is connectionless • New connection is established and released for each packet or message transmitted – Packet itself establishes and releases the “connection” • Functions – Translate transport address to network address – Pass messages to network layer for delivery – Each message sent as a single packet – Upper layer responsible for re-ordering and error detection Session Layer • The session layer is responsible for establishing and maintaining virtual connections between pairs of processes in different hosts, possibly including service location and access rights • Multiple sessions may be multiplexed over a single connection (provided by a lower layer) Presentation Layer (1) • The presentation layer represents information to applications so as to preserve semantics (meanings or values) while resolving syntactic (representation) differences • In open systems, heterogeneous computers result in heterogeneous representations – Characters: ASCII, EBCDIC, Unicode – Integers: lengths, 1’s versus 2’s complement – Reals: fixed or floats, different float points – Byte order: 01234567... or 67452301 – Structured
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages75 Page
-
File Size-