example protocol layers
play

Example Protocol Layers* Exchange a file over a network that - PDF document

Example Protocol Layers* Exchange a file over a network that corrupts packets Networks are complex! o but doesnt lose or reorder them many pieces: A simple protocol o send file as a series of packets hosts Question:


  1. Example Protocol “Layers”* � Exchange a file over a network that corrupts packets Networks are complex! o but doesn’t lose or reorder them many “pieces”: � A simple protocol � o send file as a series of packets hosts Question: o o send a checksum routers Is there any hope of organizing o o receiver sends OK or not-OK message structure of network? links of various o o sender waits for OK message media o if no response, resends entire file Or at least our discussion of � Problems applications o networks? o single bit corruption requires retransmission of entire protocols o file hardware, o o what if link goes down? software o what if not-OK message itself is corrupted? � Focus o who needs to deal with what problem? * Kurose and Ross, “Computer Networking” Danny Dolev 1b: Layering Danny Dolev 1b: Layering 1 2 What does a protocol tell us? Another way to view a protocol � As providing a service � Syntax of a message o what fields does it contain? � The example protocol provides reliable file transfer service o in what format? � Semantics of a message � Peer entities use a protocol to o what does a message mean? provide a service to a higher-level o for example, not-OK message means receiver peer entity got a corrupted file o for example, postal workers use a � Actions to take on receipt of a message protocol to present customers with the o for example, on receiving not-OK message, abstraction of an unreliable letter retransmit the entire file transfer service Danny Dolev 1b: Layering Danny Dolev 1b: Layering 3 4 Protocol layering Protocol stack � A network that provides many services needs many protocols � A set of protocol layers � Turns out that some services are � Each layer uses the layer below and independent provides a service to the layer above � But others depend on each other � Protocol A may use protocol B as a step in � Key idea its execution o once we define a service provided by a o for example, packet transfer is one step in the layer, we need know nothing more about execution of the reliable file transfer protocol the details of how the layer actually example implements the service � This form of dependency is called layering o information hiding o reliable file transfer is layered above packet o decouples changes transfer protocol o like a subroutine Danny Dolev 1b: Layering Danny Dolev 1b: Layering 5 6 1

  2. Organization of air travel Organization of air travel : a different view ticket (purchase) ticket (complain) ticket (purchase) ticket (complain) baggage (claim) baggage (claim) baggage (check) baggage (check) gates (load) gates (unload) gates (load) gates (unload) runway takeoff runway landing runway takeoff runway landing airplane routing airplane routing airplane routing airplane routing airplane routing airplane routing Layers: each layer implements a service o via its own internal-layer actions � a series of steps o relying on services provided by layer below Danny Dolev 1b: Layering Danny Dolev 1b: Layering 7 8 Layered air travel: services Distributed implementation of layer functionality Counter-to-counter delivery of person+bags Departing airport ticket (purchase) ticket (complain) arriving airport baggage-claim-to-baggage-claim delivery baggage (check) baggage (claim) gates (unload) people transfer: loading gate to arrival gate gates (load) runway landing runway-to-runway delivery of plane runway takeoff airplane routing airplane routing airplane routing from source to destination intermediate air traffic sites airplane routing airplane routing airplane routing Danny Dolev 1b: Layering Danny Dolev 1b: Layering 9 10 Why layering? Internet protocol stack Dealing with complex systems: � application: supporting network applications � explicit structure allows identification, application o ftp, smtp, http relationship of complex system’s pieces � transport: host-host data transfer o layered reference model for discussion transport o tcp, udp � modularization eases maintenance, updating of � network: routing of datagrams from network system source to destination o change of implementation of layer’s service o ip, routing protocols link transparent to rest of system � link: data transfer between neighboring network elements o e.g., change in gate procedure doesn’t affect physical o ppp, Ethernet rest of system � physical: bits “on the wire” � layering considered harmful? Danny Dolev 1b: Layering Danny Dolev 1b: Layering 11 12 2

  3. Layering: logical communication *** Layering: logical communication data Each layer: E.g.: transport application application transport transport transport � distributed � take data from app network network � “entities” � add addressing, link link implement physical reliability check physical info to form layer functions ack network network “datagram” application link application link at each node transport physical transport data physical � send datagram to � entities network network peer perform link link data � wait for peer to actions, physical physical application application application application ack receipt exchange transport transport transport transport transport � analogy: post messages with network network network network office peers link link link link physical physical physical physical Danny Dolev 1b: Layering Danny Dolev 1b: Layering 13 14 Layering: physical communication Protocol layering and data data application Each layer takes data from above transport � adds header information to create new data unit network link � passes new data unit to layer below physical network source destination application link transport physical M message M application application network link transport transport H t M segment M H t data physical network network M datagram application application H n H t H n H t M transport transport link link M H l H n H t frame H l H n H t M network network physical physical link link physical physical Danny Dolev 1b: Layering Danny Dolev 1b: Layering 15 16 Problems with layering Internet Layers � Layering hides information o if it didn’t then changes to one layer could require changes everywhere • layering violation � But sometimes hidden information can be used to improve performance o for example, flow control protocol may think packet loss is always because of network congestion o if it is, instead, due to a lossy link, the flow control breaks o this is because we hid information about reason of packet loss from the upper flow control protocol Danny Dolev 1b: Layering Danny Dolev 1b: Layering 17 18 3

  4. ISO OSI reference model Layering � A set of protocols is open if o protocol details are publicly available � There is a tension between o changes are managed by an organization whose information-hiding (abstraction) and membership and transactions are open to the public achieving good performance � A system that implements open protocols is � Art of protocol design is to leak called an open system enough information to allow good � International Organization for Standards performance (ISO) prescribes a standard to connect open systems o but not so much that small changes in o open system interconnect (OSI) one layer need changes to other layers � Has greatly influenced thinking on protocol stacks Danny Dolev 1b: Layering Danny Dolev 1b: Layering 19 20 ISO OSI The seven layers End System End System � Reference model Application Application o formally defines what is meant by a layer, a service etc. Presentation Presentation � Service architecture Session Session o describes the services provided by each layer and the service access point Transport Transport Intermediate System � Protocol architecture Network Network Network o set of protocols that implement the service Link Link Link architecture o compliant service architectures may still use Physical Physical Physical non-compliant protocol architectures Physical Medium for Interconnection Danny Dolev 1b: Layering Danny Dolev 1b: Layering 21 22 Why seven layers? � Need a top and a bottom -- 2 � Need to hide physical link, so need datalink -- 3 � Need both end-to-end and hop-by-hop actions; so need at least the network and transport layers -- 5 � Session and presentation layers are not so important, and are often ignored � So, we need at least 5, and 7 seems to be excessive � IBM’s influence � Note that we can place functions in different layers Danny Dolev 1b: Layering Danny Dolev 1b: Layering 23 24 4

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend