DC Module 2b
DC Module 2b
Chapter 2
Agenda
⚫ 2.1 Layered protocols
⚫ 2.2 Remote Procedure
⚫ 2.3 Remote Object Invocation
⚫ 2.4 Message-Oriented Communication
⚫ 2.5 Stream-Oriented Communication
2.1 Layered Protocols
Shu Lei([email protected])
1 - Layered Protocols
⚫ OSI: Open Systems Interconnection
⚫ Developed by the International Organization for Standardization (ISO)
⚫ Provides a generic framework to discuss the layers and functionalities of
communication protocols.
⚫ Transport layer:
⚫ Packing of data
⚫ Reliable delivery of data (breaks message into pieces small
enough, assign each one a sequence number and then send
them)
⚫ Ordering of delivery
⚫ Examples:
⚫ TCP (connection-oriented)
⚫ UDP (connectionless)
⚫ RTP (Real-time Transport Protocol)
Real-Time & MultiMedia Lab
OSI Protocol Layers (con.t)
Client-Server TCP protocol
⚫ Application layer
⚫ Support for user applications
⚫ e.g. HTTP, SMPT, FTP
Example:
read(fd, buf, nbytes)
Client and Server Stubs
Definition: Are additional functions which are added to
the main functions in order to support for RPC
Client Server
OS OS
⚫ Components:
⚫ Languages
⚫ Libraries
⚫ Daemon
⚫ Utility programs
⚫ Others
fobject.append(int)
invok(fobject,id(append),int)
Parameter Passing (1)
⚫ Pass remote object by reference
2-18
RemoteIntegral rmiregistry
6
RemoteIntegralImpl_Ske
RemoteIntegralImpl_Stub
l
⚫ Some of
Primitive the most
Meaning intuitive message-passing primitives of
MPI_bsend MPI Append outgoing message to a local send buffer
MPI_send Send a message and wait until copied to local or remote buffer
MPI_issend Pass reference to outgoing message, and wait until receipt starts
Get Block until the specified queue is nonempty, and remove the first message
Poll Check a specified queue for messages, and remove the first. Never block
Install a handler to be called when a message is put into the specified
Notify
Real-Time & MultiMedia
queue Lab
Message-Orient Persistent Communication(2)
⚫ Message-Queuing Model(2)
⚫ ‘
⚫ Conclusion
⚫ Message-Oriented communication solve the blocking
problems that may occur in general communication between
Server/Client
⚫ Message-Queuing systems can users(including applications)
to do Persistent communication
Real-Time & MultiMedia Lab
2.5 Stream-Oriented Communication
Manhyung Han([email protected])
⚫ Continuous media
⚫ Temporal dependence between data items
⚫ ex) Motion - series of images
⚫ Discrete media
⚫ No temporal dependence between data items
⚫ ex) text, still images, object code or executable files
⚫ Transmission modes
⚫ Simple stream
⚫ consist of only a single sequence of data
⚫ Complex stream
⚫ consist of several related simple stream
⚫ ex) stereo audio, movie
⚫ Substream
⚫ related simple stream
⚫ ex) stereo audio channel
⚫ Flow specification
⚫ To provide a precise factors(bandwith, transmission rates
and delay, etc.)
⚫ Example of flow specification developed by Partridge
Figure. 2-37 A flow specification
Characteristics of the Input Service Required
Loss sensitivity (bytes)
Maximum data unit size (bytes) Loss interval (microsec)
Token bucket rate (bytes/sec) Burst loss sensitivity (data units)
Token bucket size (bytes) Minimum delay noticed (microsec)
Maximum transmission rate (bytes/sec) Maximum delay variation (microsec)
Quality of guarantee
Figure. 2-40
The principle
of explicit
synchronizatio
n on the level
data units
Figure. 2-41
The principle of
synchronization
as supported by
high-level
interfaces