1 / 46

Communication

Explore the concept of layered protocols in OSI model, data link layer discussions, and principles of Client-Server TCP communication. Learn about middleware protocols, RPC procedures, and value parameter passing in distributed objects. Discover asynchronous RPC interactions and the architecture of message-queuing systems.

mayhugh
Download Presentation

Communication

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. Communication Chapter 2

  2. Layered Protocols (1) 2-1 • Layers, interfaces, and protocols in the OSI model.

  3. Layered Protocols (2) 2-2 • A typical message as it appears on the network.

  4. Data Link Layer 2-3 • Discussion between a receiver and a sender in the data link layer.

  5. Client-Server TCP 2-4 • Normal operation of TCP. • Transactional TCP.

  6. Middleware Protocols 2-5 • An adapted reference model for networked communication.

  7. Conventional Procedure Call • Parameter passing in a local procedure call: the stack before the call to read • The stack while the called procedure is active

  8. Client and Server Stubs • Principle of RPC between a client and server program.

  9. Steps of a Remote Procedure Call • Client procedure calls client stub in normal way • Client stub builds message, calls local OS • Client's OS sends message to remote OS • Remote OS gives message to server stub • Server stub unpacks parameters, calls server • Server does work, returns result to the stub • Server stub packs it in message, calls local OS • Server's OS sends message to client's OS • Client's OS gives message to client stub • Stub unpacks result, returns to client

  10. Passing Value Parameters (1) 2-8 • Steps involved in doing remote computation through RPC

  11. Passing Value Parameters (2) • Original message on the Pentium • The message after receipt on the SPARC • The message after being inverted. The little numbers in boxes indicate the address of each byte

  12. Parameter Specification and Stub Generation • A procedure • The corresponding message.

  13. Doors • The principle of using doors as IPC mechanism.

  14. Asynchronous RPC (1) 2-12 • The interconnection between client and server in a traditional RPC • The interaction using asynchronous RPC

  15. Asynchronous RPC (2) 2-13 • A client and server interacting through two asynchronous RPCs

  16. Writing a Client and a Server 2-14 • The steps in writing a client and a server in DCE RPC.

  17. Binding a Client to a Server 2-15 • Client-to-server binding in DCE.

  18. Distributed Objects 2-16 • Common organization of a remote object with client-side proxy.

  19. Binding a Client to an Object Distr_object* obj_ref; //Declare a systemwide object referenceobj_ref = …; // Initialize the reference to a distributed objectobj_ref-> do_something(); // Implicitly bind and invoke a method (a) Distr_object objPref; //Declare a systemwide object referenceLocal_object* obj_ptr; //Declare a pointer to local objectsobj_ref = …; //Initialize the reference to a distributed objectobj_ptr = bind(obj_ref); //Explicitly bind and obtain a pointer to the local proxyobj_ptr -> do_something(); //Invoke a method on the local proxy (b) • An example with implicit binding using only global references • An example with explicit binding using global and local references

  20. Parameter Passing 2-18 • The situation when passing an object by reference or by value.

  21. The DCE Distributed-Object Model 2-19 • Distributed dynamic objects in DCE. • Distributed named objects

  22. Persistence and Synchronicity in Communication (1) 2-20 • General organization of a communication system in which hosts are connected through a network

  23. Persistence and Synchronicity in Communication (2) • Persistent communication of letters back in the days of the Pony Express.

  24. Persistence and Synchronicity in Communication (3) 2-22.1 • Persistent asynchronous communication • Persistent synchronous communication

  25. Persistence and Synchronicity in Communication (4) 2-22.2 • Transient asynchronous communication • Receipt-based transient synchronous communication

  26. Persistence and Synchronicity in Communication (5) • Delivery-based transient synchronous communication at message delivery • Response-based transient synchronous communication

  27. Berkeley Sockets (1) • Socket primitives for TCP/IP.

  28. Berkeley Sockets (2) • Connection-oriented communication pattern using sockets.

  29. The Message-Passing Interface (MPI) • Some of the most intuitive message-passing primitives of MPI.

  30. Message-Queuing Model (1) 2-26 • Four combinations for loosely-coupled communications using queues.

  31. Message-Queuing Model (2) • Basic interface to a queue in a message-queuing system.

  32. General Architecture of a Message-Queuing System (1) • The relationship between queue-level addressing and network-level addressing.

  33. General Architecture of a Message-Queuing System (2) 2-29 • The general organization of a message-queuing system with routers.

  34. Message Brokers 2-30 • The general organization of a message broker in a message-queuing system.

  35. Example: IBM MQSeries 2-31 • General organization of IBM's MQSeries message-queuing system.

  36. Channels • Some attributes associated with message channel agents.

  37. Message Transfer (1) • The general organization of an MQSeries queuing network using routing tables and aliases.

  38. Message Transfer (2) • Primitives available in an IBM MQSeries MQI

  39. Data Stream (1) • Setting up a stream between two processes across a network.

  40. Data Stream (2) 2-35.2 • Setting up a stream directly between two devices.

  41. Data Stream (3) • An example of multicasting a stream to several receivers.

  42. Specifying QoS (1) • A flow specification.

  43. Specifying QoS (2) • The principle of a token bucket algorithm.

  44. Setting Up a Stream • The basic organization of RSVP for resource reservation in a distributed system.

  45. Synchronization Mechanisms (1) • The principle of explicit synchronization on the level data units.

  46. Synchronization Mechanisms (2) 2-41 • The principle of synchronization as supported by high-level interfaces.

More Related