120 likes | 251 Vues
This document explores the essential layers and protocols that facilitate communication in distributed systems. It delves into the OSI model, highlighting the physical, data link, network, transport, application, and middleware layers. Key protocols, including TCP for reliable connections and UDP for datagram communication, are examined, along with middleware's role in enabling diverse applications to interact seamlessly. The importance of security, data marshaling, and naming protocols is also discussed, providing insights into their significance for communication between applications.
E N D
Communication Networking RPC and Relatives Distributed Objects Message- & Stream-Oriented Communication
Layered Protocols • Low-level layers • Transport layer • Application layer • Middleware layer
Basic Networking Model • Layers, interfaces, and protocols in the OSI model
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
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
Client-Server TCP • TCP for transactions (T/TCP): A transport protocol aimed to support client-server interaction
Application Layer Observation: Many application protocols are directly implemented on top of TP, doing a lot of app-independent work
Middleware Layer Observation: Middleware is invented to provide common protocols and services that can be used by many different applications • A rich set of communication protocols to allow different apps. to communicate • Marshaling and unmarshaling of data, necessary for integrated systems • Naming protocols, so that different apps. can easily share resources • Security protocols, to allow different apps. to communicate in a secure way • Scaling mechanisms, such as support for replication and caching Note: what remains are truly application-specific protocols
Middleware Protocols • An adapted reference model for networked communication.
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)
Implementing RPC • A. D. Birrell and B. J. Nelson – 1984 • Presented by: James Newell