cs-495 distributed systems fabián e. bustamante, winter 2004 communication networking rpc and...
TRANSCRIPT
![Page 1: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/1.jpg)
CS-495 Distributed Systems
Fabián E. Bustamante, Winter 2004
Communication
Networking
RPC and Relatives
Distributed Objects
Message- & Stream-Oriented Communication
![Page 2: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/2.jpg)
CS-495 Distributed Systems
Layered Protocols
Low-level layers
Transport layer
Application layer
Middleware layer
![Page 3: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/3.jpg)
CS-495 Distributed Systems
Layers, interfaces, and protocols in the OSI model
Basic Networking Model
![Page 4: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/4.jpg)
CS-495 Distributed Systems
Low-Level Layers
Physical layer: contains the specification and implementation of bits, and their transmission between sender and receiver
Data link layer: prescribes the transmission of a series of bits into a frame to allow for error and flow control
Network layer: describes how packets in a network of computers are to be routed
![Page 5: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/5.jpg)
CS-495 Distributed Systems
Transport Layer
Important: the transport layer provides the actual communication facilities for most distributed systems
Standard Internet Protocols:
TCP: connection-oriented, reliable, stream-oriented communication
UDP: unreliable (best-effort) datagram communication
![Page 6: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/6.jpg)
CS-495 Distributed Systems
Client-Server TCP
TCP for transactions (T/TCP): A transport protocol aimed to support client-server interaction
![Page 7: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/7.jpg)
CS-495 Distributed Systems
Application Layer
Observation: Many application protocols are directly implemented on top of TP, doing a lot of app-independent work
News FTP WWW
Transfer NNTP FTP HTTP
Naming Newsgroup Host + path URL
Distribution Push Pull Pull
Replication Flooding Caching + DNS tricks
Caching + DNS tricks
Security None (PGP) Username + password
Username + password
![Page 8: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/8.jpg)
CS-495 Distributed Systems
Middleware Layer
Observation: Middleware is invented to provide common protocols and services that can be used by many different applicationsA rich set of communication protocols to allow different apps. to communicateMarshaling and unmarshaling of data, necessary for integrated systemsNaming protocols, so that different apps. can easily share resourcesSecurity protocols, to allow different apps. to communicate in a secure wayScaling mechanisms, such as support for replication and caching
Note: what remains are truly application-specific protocols
![Page 9: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/9.jpg)
CS-495 Distributed Systems
Middleware Protocols
An adapted reference model for networked communication.
![Page 10: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/10.jpg)
CS-495 Distributed Systems
Papers Presented
G. Eisenhauer, F. E. Bustamante and K. Schwan, Native Data Representation: An Efficient Wire Format for High-Performance Computing, IEEE Transaction on Parallel and Distributed Systems, 13 (12), pp 1234-1246, 2002. (Tuesday 1/13 - presented by Stefan Birrer) A. D. Birrell and B. J. Nelson, Implementing Remote Procedure Calls, ACM Transaction on Computer Systems, 2(1), Feb. 1984, pp 271-290. (Tuesday 1/13 - presented by James Newell) M. D. Schroeder and M. Burrows Performance of the Firefly RPC, in Proc. of the 12th Symposium on Operating System Principles, 1989. (Thursday 1/15 - presented by Stefan Birrer) G. Banaver, T. Chandra, R. Strom, D. Sturman, A Case for Message Oriented Middleware, in Proc. 13th International Symposium on Distributed Computing (DISC) (invited lecture), Sep. 1999, pp 1-18. (Thursday 1/15 - presented by Ashish Gupta)
![Page 11: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/11.jpg)
CS-495 Distributed Systems
Implementing RPC
A. D. Birrell and B. J. Nelson – 1984
Presented by: James Newell
![Page 12: CS-495 Distributed Systems Fabián E. Bustamante, Winter 2004 Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented](https://reader030.vdocuments.net/reader030/viewer/2022013118/56649dc45503460f94ab64ce/html5/thumbnails/12.jpg)
CS-495 Distributed Systems