DCE Prepared by Pratosh Kumar
DCE  ( Distributed Computing Environment ) <ul><li>Introduction of DCE </li></ul><ul><li>Goals </li></ul><ul><li>Services ...
What is DCE ? <ul><li>It is defined by the open software foundation (OSF).  </li></ul><ul><li>which is now called The Open...
Goals of DCE <ul><li>can run on many different computers, operating  </li></ul><ul><li>systems (Unix, Os/2, VMS,windows) a...
Goals contd…. <ul><li>Provide tools to make it easier to write distributed  </li></ul><ul><li>applications in which multip...
Distributed  services  provided  by  the DCE <ul><li>Distrusted File Service </li></ul><ul><li>Thread services  </li></ul>...
DCE Services
<ul><li>Distrusted File Service </li></ul><ul><li>DCE Distributed File Service (DFS) is a high-performance,  scalable, sec...
<ul><li>Thread Service </li></ul><ul><li>DCE supports multi-threaded applications </li></ul><ul><li>i.e.,  programs that u...
<ul><li>DCE RPC  </li></ul><ul><li>DCE is based on the client/server model.   RPC package of DCE allows a client process t...
<ul><li>Time Service </li></ul><ul><li>It enables distributed applications on different computers to determine event seque...
<ul><li>Directory Service </li></ul><ul><li>Provide up-to-date addressing information by keeping track of where all resour...
<ul><li>Security Service </li></ul><ul><li>Controls interactions between clients and servers.  It allows client and server...
Interface Definition File <ul><li>Interface definition:- contract between client and its server, specifying the services t...
Interface Definition Language <ul><li>Lets a program or object  written in one language communicate with another program w...
Uuidgen Interface  definition  file IDL Compiler Client stub object  file Server   stub Server Code Header Client stub Ser...
Directory Server 1.  Register Endpoint Binding Client & Server 2. Register Service 3.  Look up Server 4.  Ask for Endpoint...
Performing an RPC Client Machine Server Machine Client process Server process Client OS Server OS K=add(i,j) K=add(i,j) 3....
Thanks Pratosh Kumar By
Upcoming SlideShare
Loading in...5
×

Dce rpc

648

Published on

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
648
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Dce rpc"

  1. 1. DCE Prepared by Pratosh Kumar
  2. 2. DCE ( Distributed Computing Environment ) <ul><li>Introduction of DCE </li></ul><ul><li>Goals </li></ul><ul><li>Services </li></ul><ul><li>Writing a Client & a Server </li></ul><ul><li>Binding a Client to a Server </li></ul><ul><li>Performing an RPC </li></ul>
  3. 3. What is DCE ? <ul><li>It is defined by the open software foundation (OSF). </li></ul><ul><li>which is now called The Open Group (www.opengroup.org) </li></ul><ul><li>It is an architecture, a set of standard service, and </li></ul><ul><li>application programs, built on top of the existing </li></ul><ul><li>operating system which hides the differences among </li></ul><ul><li>individual computers. </li></ul><ul><li>used to support the development and usage of </li></ul><ul><li>distributed applications in a single distributed system. </li></ul><ul><li>It use client/server model. </li></ul>
  4. 4. Goals of DCE <ul><li>can run on many different computers, operating </li></ul><ul><li>systems (Unix, Os/2, VMS,windows) and networks in a </li></ul><ul><li>distributed system, Provide a coherent seamless </li></ul><ul><li>platform for running distributed applications. </li></ul><ul><li>Provide a mechanism for synchronizing clocks on </li></ul><ul><li>different machines. </li></ul>
  5. 5. Goals contd…. <ul><li>Provide tools to make it easier to write distributed </li></ul><ul><li>applications in which multiple users at multiple </li></ul><ul><li>locations can work together. </li></ul><ul><li>Provide extensive tools for authentication and access </li></ul><ul><li>protection </li></ul>
  6. 6. Distributed services provided by the DCE <ul><li>Distrusted File Service </li></ul><ul><li>Thread services </li></ul><ul><li>RPC </li></ul><ul><li>Time service </li></ul><ul><li>Directory services </li></ul><ul><li>Security service </li></ul>
  7. 7. DCE Services
  8. 8. <ul><li>Distrusted File Service </li></ul><ul><li>DCE Distributed File Service (DFS) is a high-performance, scalable, secure method for sharing remote files </li></ul><ul><li>DFS appears to the user as a local file systems, providing access to files form anywhere in the network for any user, with the same filename used by all (uniform file access) </li></ul><ul><li>DFS includes many advanced features not found in traditional distributed file systems, including caching, security, and scalability over wide-area networks </li></ul>
  9. 9. <ul><li>Thread Service </li></ul><ul><li>DCE supports multi-threaded applications </li></ul><ul><li>i.e., programs that use “lightweight” processes to perform many actions concurrently </li></ul><ul><li>DCE Threads are based on the POSIX threading standard </li></ul>
  10. 10. <ul><li>DCE RPC </li></ul><ul><li>DCE is based on the client/server model. RPC package of DCE allows a client process to call a procedure on a remote computer. It allows application programmer to extend the local procedure call to a distributed environment. The application programmer doesn’t have to be concerned with the detail of the network communications between client and server nodes. </li></ul><ul><li>RPC hides communication detail and removes system and hardware dependencies. It can automatically handle data type conversions between the client and the server without considering whether they run on the same or different architecture, or have same or different byte ordering. </li></ul>
  11. 11. <ul><li>Time Service </li></ul><ul><li>It enables distributed applications on different computers to determine event sequencing, duration, and scheduling. </li></ul><ul><li>Keeps clocks on separate computers participating in a distributed system synchronization. </li></ul><ul><li>It uses universal coordinated time(UTC) to synchronize DCE host’s time. </li></ul>
  12. 12. <ul><li>Directory Service </li></ul><ul><li>Provide up-to-date addressing information by keeping track of where all resources (user, machine, file, server…) are located. So users can identify these resources by names and gain access to them without needing to know where they are located </li></ul><ul><li>It’s distributed service--- the information that forms database is stored in different places. </li></ul><ul><li>A replicated service: the information is replicated and stored in more than one location which make it more readily available </li></ul>
  13. 13. <ul><li>Security Service </li></ul><ul><li>Controls interactions between clients and servers. It allows client and servers to authenticate each other and perform authenticated RPC. </li></ul><ul><li>Controls access to resources by authorization </li></ul><ul><li>supports several protection levels for messages as they travel across the network </li></ul>
  14. 14. Interface Definition File <ul><li>Interface definition:- contract between client and its server, specifying the services that server offers of client. </li></ul><ul><li>Interface definition file:- representation on contract </li></ul><ul><li>Each interface has its unique (location, time of creation ) identifier that is stored in IDL file. </li></ul>
  15. 15. Interface Definition Language <ul><li>Lets a program or object written in one language communicate with another program written in an unknown language. </li></ul><ul><li>An IDL works by requiring that a program’s interfaces be described in stub or slight extension of the program that is compiled into it. The stub in each program are used by a broker program to allow them to communicate. </li></ul><ul><li>IDL file Also contains type definition, constant declaration and other info required to correctly marshal parameters and unmarshal results. </li></ul><ul><li>IDL file contains identifier that uniquely identifies the interface </li></ul>
  16. 16. Uuidgen Interface definition file IDL Compiler Client stub object file Server stub Server Code Header Client stub Server stub object file C Compiler C Compiler C Compiler Client Code C Compiler Server object file Client object file Linker Runtime Library Runtime Library Linker Client binary Server binary #include #include Writing a Client & a Server
  17. 17. Directory Server 1. Register Endpoint Binding Client & Server 2. Register Service 3. Look up Server 4. Ask for Endpoint 5. Do RPC Client Machine Directory Machine Client Server Endpoint Table
  18. 18. Performing an RPC Client Machine Server Machine Client process Server process Client OS Server OS K=add(i,j) K=add(i,j) 3.Message is sent across network 1.Client call to procedure 2. Stub builds message 4. Server OS hands msg to server stub 5. Stub unpacks msg 6.Stub makes local call to add Client stub Server stub proc: “add” int: val(i) int: val(j) proc: “add” int: val(i) int: val(j) proc: “add” int: val(i) int: val(j)
  19. 19. Thanks Pratosh Kumar By

×