Presentation is loading. Please wait.

Presentation is loading. Please wait.

SUMMARY OF INTER-PROCESS COMMUNICATION Chenguang Kong.

Similar presentations


Presentation on theme: "SUMMARY OF INTER-PROCESS COMMUNICATION Chenguang Kong."— Presentation transcript:

1 SUMMARY OF INTER-PROCESS COMMUNICATION Chenguang Kong

2 Outline  Introduction  Message Passing Communication  Request/Reply Communication  Transaction Communication  Name and Directory Services  Investigation on Future Work

3 Introduction  A set of methods for the exchange of data among multiple processes or computers  Divided into different methods based on the bandwidth and latency of communication between the processes, and the type of data being communicated  Message Passing Communication  Request/Reply Communication  Transaction Communication

4 Message Passing  A specification allowing computers communicate with each other  Lowest level of inter-process communicate  Two message passing primitives  Send(destination,message)  Receive(source,message)  Two types: pipe and socket`

5 Message Passing  Pipe  Unidirectional communication  Implemented with finite size, FIFO byte stream buffer maintained by the kernel  One process writes data into tail end of pipe while another process reads from head end of the pipe.

6 Message Passing  Socket  A communication end point of a communication link managed by the transport services  The most popular message passing API  The goal of secure socket layer: Privacy by using symmetric cryptographic data encryption Integrity by using message integrity check Authenticity by using asymmetric public key cryptography

7 Request/Reply Communication  Technique for one application to request the services of another  The layer upper message passing  Remote Procedure Calls  Most widely used model  Communication transparency  A central component in most distributed system

8 Request/Reply Communication  Operations involving remote procedure call  Parameter Passing and Data Conversion What types of data can be passed How is it represented  Binding How does a client locate server and a server register  Compilation Where do the stub procedures come from How are they linked

9 Request/Reply Communication  Operations involving remote procedure call  Exception and Failure Handling How are errors reported and dealt  Security

10 Transaction Communication  The basic unit of client-server process interaction in a database system  Every transaction is ACID compliant in accordance with concurrency control and transparency in the DS

11 Transaction Communication  ACID  Atomicity ALL or NO operations in a transaction are performed  Consistency Consistent state is maintained before a transaction starts and after it concludes  Isolation Concurrent transactions DO NOT interfere with each other  Durability transactions results are locked/ permanent after being committed

12 Transaction Communication  Two Phase Commit Protocol  A type of atomic commitment protocol (ACP)  A distributed algorithm that coordinates all the processes that participate in a distributed atomic transaction on whether to commit or abort the transaction  Assures that ACID properties are achieved

13 Transaction Communication  Two Phase Commit Protocol

14 Transaction Communication  X / O PEN XA  Standard specification for distributed transaction processing (DTP) by The Open Group  describes the interface between the global transaction manager and the local resource manager  Two Phase Commit is used

15 Name and Directory Service  Inter-process communication in distributed systems relies on the support of a name service  A generic way of describing how a named object can be addressed and subsequently located by using its address  Enable user to reference network resources with short names instead of real addresses

16 Name and Directory Service  Naming structure Service/Object Attributes Name structuresAttribute partitioning Flat structure Hierarchical structure name- based resolution (white pages) Structure-free attribute- based resolution (yellow pages) Physical Organizational Functional

17 Name and Directory Service  Directory Service  The namespace for the network  Used to hold one or more objects as named entries  The directory design process normally has a set of rules that determine how network resources are named and identified

18 Name and Directory Service  Implementations of directory service  X.500 a series of computer networking standards covering electronic directory services developed by ITU-T and ISO DAP (Directory Access Protocol) DSP (Directory System Protocol) DISP (Directory Information Shadowing Protocol) DOP (Directory Operational Bindings Management Protocol)

19 Name and Directory Service  Implementations of directory service  Domain Name System: (DNS)  Windows NT Directory Services (NTDS)  Sun Java System Directory Server  Apache Directory Server  OpenDS  …

20 Potential future work  Virtualization in Cloud Computing  Every custom is arranged a virtual machine to serve them  Inter-process communication among the virtual machines is a non-trivial problem E.g. name service, network routing, directory service

21 Potential future work  Mixed network  Cellular network  Sensor network  Cyber physical network  Next generation network structure  Current TCP/IP structure has many open challenges  Some researchers propose to construct next generation network structure  Many topics involving inter-process communication

22 Reference  Randy Chow, Theodore Johnson, “Distributed Operating Systems & Algorithms”, 1997  Ammann, E.M., "DIPC-a monitor for distributed inter-process communication" Parallel and Distributed Processing, 1995. Proceedings. Euromicro Workshop on, vol., no., pp.272-279, 25-27 Jan 1995  Muelder, C.; Gygi, F.; Kwan-Liu Ma;, "Visual Analysis of Inter-Process Communication for Large-Scale Parallel Computing,", IEEE Transactions on Visualization and Computer Graphics, vol.15, no.6, pp.1129-1136, Nov.-Dec. 2009  Wikipedia: http://en.wikipedia.org/wiki/  Stevens, Richard. UNIX Network Programming, Volume 2, Second Edition: Interprocess Communications. Prentice Hall, 1999  Mirtaheri, S.L.; Khaneghah, E.M.; Sharifi, M.; Azgomi, M.A.;, "The Influence of Efficient Message Passing Mechanisms on High Performance Distributed Scientific Computing," Parallel and Distributed Processing with Applications, 2008. ISPA '08. International Symposium on, vol., no., pp.663-668, 10-12 Dec. 2008


Download ppt "SUMMARY OF INTER-PROCESS COMMUNICATION Chenguang Kong."

Similar presentations


Ads by Google