Distributed Computing Environment1

Views:
 
     
 

Presentation Description

No description available.

Comments

By: Asmitasingh (12 month(s) ago)

pleasee to download this ppt

By: Noor_Yousif (18 month(s) ago)

please could u allow me to download these presentation, Thanks

Presentation Transcript

Distributed Computing Environment : 

Remote procedure call Distributed Computing Environment

Introduction : 

Introduction DCE supplies framework and toolkit for developing client/server applications. Framework includes: Remote procedure call mechanism (DCE/RPC) Naming (directory) service Time service Authentication service Distributed file system (DCE/DFS)

Client-Server : 

Client-Server

Request-Response Mechanism : 

Request-Response Mechanism Client Server Request Reply Wait for response Provide service Time

Goals of DCE/RPC : 

Goals of DCE/RPC Makes possible for client to access a remote service by calling a local procedure. Makes the system platform independent. Makes it easy to have large amount of existing code run in distributed environment. Makes the call highly transparent to users.

What is RPC? : 

What is RPC? Remote Procedure Call (RPC) is the technique of calling functions over the network The proxies used to communicate with RPC libraries are often generated by first defining the interface of the library using an Interface Definition Language (IDL), and then using some tool to generate the proxies (also called stubs) Remote ops in the guise of a procedural interface Perform ops on other machines as if they were local No I/O, no msg. visible to the programmer

RPC Mechanism : 

RPC Mechanism Client Server Request Reply Wait for response Call local procedure & return results Time Call remote procedure Return from call

Interface Definition File : 

Interface Definition File Interface definition: contract between client and its server, specifying the services that server offers to clients. Interface definition file: representation on contract. Each interface has its unique(location, time of creation) identifier that is stored in IDL file.

Interface Definition Language[IDL] : 

Interface Definition Language[IDL] lets a program or object written in one language communicate with another prog.ram written in an unknown language. An interface definition language works by requiring that a program's interfaces be described in a stub or slight extension of the program that is compiled into it. The stubs in each program are used by a broker program to allow them to communicate. IDL files also contains type definition, constant declaration and other information required to correctly marshal parameters and unmarshal results. IDL file contains identifier that uniquely identifies the interface.

Slide 10: 

Uuidgen IDL compiler C compiler C compiler C compiler C compiler Linker Linker Interface definition file Client Stub Client Code Server Stub Server Code Header Client object file Client Stub object file Server object file Server Stub object file Runtime library Client binary Server binary Runtime library Writing a client & a server

Binding Client to Server : 

Binding Client to Server Client Directory Server Server DCE daemon Directory machine Client Machine 4. Ask for endpoint 5. Do RPC 1. Register endpoint Endpoint table 2. Register service 3. Look up server

Performing an RPC : 

Performing an RPC proc: “add” int: val(i) int: val(j) K=add(i,j) proc: “add” int: val(i) int: val(j) K=add(i,j) Server OS Client OS 3. Message is sent across network Client call to procedure proc: “add” int: val(i) int: val(j) Server Stub Client Stub 2. Stub builds message Client Machine Server Machine Server process Client process 6. Stub makes local call to add 5. Stub unpacks message 4. Server OS hands message to server stub

Marshalling : 

Distributed System (1104451) 13 Marshalling Marshalling is a process that converts a complex object into a byte stream. Convert a marshal to a byte stream into the original object, called unmarshalling.

Slide 14: 

THANK YOU!!