1 / 32

Protocol Layering

Protocol Layering. Chapter 10. Looked at: Architectural foundations of internetworking Forwarding of datagrams Mapping IP addresses to physical addresses This chapter: Considers host and router software structure Presents principle of layering

barryc
Download Presentation

Protocol Layering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Protocol Layering Chapter 10

  2. Looked at: • Architectural foundations of internetworking • Forwarding of datagrams • Mapping IP addresses to physical addresses • This chapter: • Considers host and router software structure • Presents principle of layering • Shows layering makes IP software easier to understand and build • Traces path of datagrams thru protocol software

  3. Need for Multiple Protocols • Protocols  Computer communication Programming languages  Computation • Lower level interact with physical • Higher level specify higher-level abstraction • Need protocol family or protocol suite to perform complex data communication tasks

  4. Possible problems: • Hardware failure • Network congestion • Packet delay or loss • Data corruption • Data duplication or inverted arrival • Together, problems are overwhelming • Partitioning into subproblems allows us to conquer the complexity

  5. Conceptual Layers • Modules of protocol SW stacked as layers • Each layer handles a part of the problem • Sending message between applications • Transfer down layers on sending machine • Forward across network • Transfer up layers on receiving machine • More complex than simple layering model suggests

  6. Figure 10.1

  7. Figure 10.2

  8. Figure 10.3

  9. Functionality of the Layers • What functionality goes in each layer? • Two main models dominate the field • ISO 7-layer reference model • By International Organization for Standardization • TCP/IP 5-layer reference model • Did not come from standards committee • Resulted from research that led to TCP/IP protocol suite

  10. TCP/IP and OSI

  11. X.25 and ISO Model • ISO has been basis for several protocol implementations • One is X.25 protocol suite • Has been adopted by public data networks • Especially popular in Europe • X.25 view: • Network much like telephone system • Net has complex packet switches with smarts to route

  12. Physical layer • Specifies standard for physical interconnection • Procedures for transferring packets • Electrical characteristics of voltage and current • Data link layer • How data travels between host and packet switch • Uses frame as unit of data that is passed • Also specifies checksum and acknowledgements • One protocol: High Level Data Link Comm. (HDLC) • Network layer • Defines basic unit of transfer across network • Packets here may be larger than frames • Responds to congestion problems

  13. Transport layer • Provides end-to-end reliability • Double checks lower level checks • Session layer • Handles remote terminal access • Special computer: PAD with dial-up access • Presentation layer • Includes functions application programs need • Text compression; graphics conversion • Application layer • Applications that use the network • Email; file transfer

  14. TCP/IP 5-Layer Model • TCP/IP software organized into five conceptual layers • Four software layers • Built on fifth layer of hardware

  15. Layers and objects passed Application Messages or Streams Transport Transport Protocol Packets Internet IP Datagrams Network Interface Network-specific Frames Hardware

  16. Application layer • Users invoke application programs that access services available across a TCP/IP internet • Applications choose style of transport needed • Sequence of individual messages • Continuous stream of bytes • Transport layer • Provide end-to-end communication • Communication from one application to another • Provides the reliability • Divides data into packets to be passed down

  17. Internet layer • Handles communication from one machine to another • Encapsulates packet in IP datagram • Uses routing algorithm to route datagram • Handles incoming datagrams • Checks validity; routing functions • For local machine, deletes header and passes up using appropriate transport protocol • Sends and receives ICMP error & control messages • Network interface layer • Accepts IP datagrams and transmits over a specific network • Can be a device driver or a complex subsystem that uses own data link protocol

  18. Locus of Intelligence • ISO • Network is complex, independent system • Relatively simple hosts attach • TCP/IP • Hosts participate in most all network protocols • Implements end-to-end error detection and recovery • Choose routers • Handle ICMP control messages • Simple packet delivery with intelligent hosts attached

  19. Protocol Layering Principle • Layering Principle • Layered protocols are designed so that layer n at the destination receives exactly the same object sent my layer n at the source • Design one layer at a time • Figure other layers will perform their functions

  20. Figure 10.6

  21. TCP/IP layering • Two types of transfers • From source to ultimate destination • Across multiple networks • Higher layers • Layering principle applies across end-to-end transfers • Lowest layer • Applies to single machine transfers • Internet layer (?) • Since some things change (TTL counter), layering principle only applies to single machine transfers

  22. Figure 10.7

  23. Layering in The Presence of Network Substructure (10.8) • Skip….

  24. Boundaries in the TCP/IP Model • Two boundaries that may not be obvious • Protocol address boundary • Separates high-level and low-level addressing • Operating systems boundary • Separates the system from application programs

  25. Protocol Address Boundary • Application programs and all protocol software • From Internet layer upward use only IP addresses • Network interface layer handles physical addresses • Operating System Boundary • Software at the application layer is not part of the operating system • Software at other layers generally is

  26. Disadvantage of Layering • Strict layering can produce inefficient SW • Transport layer divides stream into packets • Can optimize transfer if knows largest packet size that will fit in one frame • If strict layering is used, transport layer will not know the datagram or frame formats, or number of header octets • Most implementation relax strict layering • Allow info like route selection, MTU, etc. to propagate upward

  27. Multiplexing & Demultiplexing • Occurs throughout the layered hierarchy • Multiplexing: • When sending message, extra bits included that encode message type, originating program, protocols used • Demultiplexing: • At destination, extra information is used to guide processing

  28. RARP Module IP Module ARP Module Demultiplexing Based on Frame Type Frame Arrives

  29. ICMP Protocol UDP Protocol TCP Protocol IP Module Datagram Arrives

  30. Summary • Protocols specify: • Data is represented when transferred • How the transfer occurs • How error are detected • How acknowledgements are passed • Each protocol solves one of the communications subproblems

  31. Layering provides a conceptual frame-work for protocol design • Each layer handles a part of the problem • Layering Principle: • Software implementing a layer at destination machine receives exactly what the software implementing that layer on the source machine sends • X.25 protocols • Follow ISO reference model • Example of reliable communications service • TCP/IP protocols use different layering scheme • Multiplexing/demultiplexing are used to distinguish among multiple protocols at a layer

More Related