Professional Documents
Culture Documents
4 - Communication - Part 1
4 - Communication - Part 1
AMINA MSEDDI
OUTLINE
¡ Fundamentals
¡ Remote Procedure Call
¡ Message-Oriented Communication
¡ Multicast Communication
LAYERED NETWORK COMMUNICATION PROTOCOLS
¡ Low-level layers
¡ Physical layer: transmitting bits between sender and receiver
¡ Data link layer: transmitting frames over a link, error detection and correction
¡ Network layer: routing of packets between source host and destination host
¡ Transport layer: process-to-process communication
¡ TCP and UDP -Internet’s transport layer protocols
¡ Higher-level layers
¡ Session layer Provides support for sessions between applications.
¡ Presentation layer Prescribes how data is represented
¡ Application layer contains applications and their protocols
MIDDLEWARE LAYER
¡ Persistent communication: messages are stored by middleware until receiver can accept it
¡ Receiving application need not be executing when the message is submitted.
¡ Example: Email
SYNCHRONOUS VS ASYNCHRONOUS COMMUNICATION
¡ The RPC protocol enables users to work with remote procedures as if the procedures were local.
¡ It provides the high-level communications paradigm used in the operating system.
¡ RPC presumes the existence of a low-level transport protocol, such as TCP/IP or UDP for carrying
the message data between communicating programs.
RPC
marshaling
XML-RPC, SOAP
BASIC RPC OPERATION
1. Client program calls client stub. 6. Server does work, returns result to stub.
2. Client stub packs parameters into message 7. Server stub packs result in message, calls local OS. 8.
(marshaling), calls local OS. Server's OS sends message to client's OS.
3. Client's OS sends message to remote OS. 9. Client's OS delivers message to client stub
4. Remote OS delivers message to server stub. 10. Client stub unpacks result (unmarshalling), returns
5. Server stub unpacks message, calls server procedure. to client program
PARAMETER MARSHALLING
¡ Asynchronous RPC:
¡ No need to wait for a reply when
there is no result to return
¡ RPC returns as soon as the sever
acknowledges receipt of the
message
OTHER RPC MODELS
¡ Many distributed systems/applications are built on top of simple message-oriented model offered by
the transport layer
¡ Berkeley sockets: a standard interface of the transport layer
BERKELEY SOCKETS