RPC, Messaging and Peer to Peer
- Client/Server applications are split across address spaces, physical machines, networks and operating systems.
- All NOSs offer peer-to-peer interfaces that let applications communicate using close to the wire send/receive semantics.
- Most NOSs provide some form of RPC middleware that hides the wire.
- An alternative type of model – message queueing or simple MOM – incredibly helpful in situations when the tight synchronization is not needed between the clients and servers.
Communication Stacks
|
Application |
Messaging |
RPC |
Peer-to-Peer |
||||||||||
|
Named Pipes |
DCE |
SUN |
|||||||||||
|
Presentation |
|
NDR |
XDR |
|
|||||||||
|
Session |
Peer-to-peer service API |
||||||||||||
|
NetBIOS Sockets TLI CPI-C/APPC |
|||||||||||||
|
Transport |
Common Transport Semantics |
||||||||||||
|
NetBEUI |
TCP/IP |
SPX/IPX |
LU6.2 /APPN |
||||||||||
|
Network |
|||||||||||||
|
LLC |
IEEE802.2 |
||||||||||||
|
MAC |
NDIS (OR) ODI |
||||||||||||
|
IEEE 802.5 (Token Ring) |
IEEE 802.3 (Ethernet) |
SDLC |
ISDN |
||||||||||
|
Physical |
Fiber Optic |
Coax |
Twisted Pair |
||||||||||
- Each layer has a well-defined set of APIs and Protocols.
- With these mix-and-match can be done.
- Practically, an entire stack of from a single vendor.
- The lowest layer of the communication software belongs to the device drivers that provide an interface to several types of communication hardware adapters.
- Real products don’t have any notion of architectural boundaries or reference models – they just get a job done.
- At the lower layers, they interface to the hardware using MAC protocols defined by IEEE.
- The LLC provides a common interface to the MACs and a reliable link service for transmitting communication packets between two nodes.
- The transport layer provides end-to-end delivery service.