1 / 26

Distributed Computing Environment (DCE)

Distributed Computing Environment (DCE). Introduction Originally developed by Open Software Foundation (OSF), which is now called The Open Group (www.opengroup.org) Provides a set of tools and services which simplify and support the development and operation of distributed applications

kalona
Download Presentation

Distributed Computing Environment (DCE)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Distributed Computing Environment (DCE) • Introduction • Originally developed by Open Software Foundation (OSF), which is now called The Open Group (www.opengroup.org) • Provides a set of tools and services which simplify and support the development and operation of distributed applications • an example of “middleware” • a layer of software that sits on top of the host operating system (e.g., UNIX) and networking services, and provides a single, transparent distributed computing environment • based on the Client/Server Model

  2. Why Use DCE? • Harnesses available computing resources • Increases availability • Facilitates collaborative work and minimizes storage limitations • Tracks data and programs that move around • Accommodates heterogeneous data • Helps maintain distributed applications • Helps synchronize events • Protects distributed resources

  3. DCE Services

  4. DCE RPC • the fundamental communications mechanism • allows direct calls to procedures on remote systems as if they were local procedure calls • simplifies the development of distributed applications by eliminating the need to explicitly program the network communications between the client and server • masks differences in data representations on different hardware platforms, allowing distributed programs to work transparently across heterogeneous systems

  5. Directory Services • DCE Cell Directory Service (CDS) is the mechanism for logically naming objects within a DCE cell (a group of client and server machines) • Applications identify resources by name, without needing to know where the resources are located • DCE cells can also participate in a worldwide directory service using the DCE Global Directory (GDS), which is based on the X.500 standard, or the Internet-system Domain Name Service (DNS)

  6. Security Service • DCE Security Service provides the mechanisms for writing applications that support secure communications between clients and servers • enables processes on different machines to be certain of one another’s identities (authentication) • allows a server to determine whether a given user is authorized to access a particular resource (authorization) • supports several protection levels for messages as they travel across the network

  7. Distrusted File Service • DCE Distributed File Service (DFS) is a high-performance, scalable, secure method for sharing remote files • 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) • DFS includes many advanced features not found in traditional distributed file systems, including caching, security, and scalability over wide-area networks

  8. Distributed Time Service • Provides a way to synchronize the clocks on the different machines in a distributed system • Threads • DCE supports multi-threaded applications • i.e., programs that use “lightweight” processes to perform many actions concurrently • DCE Threads are based on the POSIX threading standard

  9. A Distributed Application using DCE APIs

  10. DCE Cells • The Domain of the Distributed Environment • DCE can provide scalable computing environment • - Small environment • * two network hosts • * typically consists of a single group of users who • share common goals • - large environment • * a network (or internetworks) of thousands of hosts • * typically consists of a diverse groups of users, • each group having its own goals and pool of shared resources • a cell is the basic unit of operation and administration • a cell is a group of users, hosts, and resources that share common DCE services

  11. Cell Configurations • at a minimum, a cell includes CDS, Security Service and Time Service • Distributed Operation in a DCE Cell

  12. DCE Client and Server Software

  13. A Simple DCE Cell

  14. Cell with DFS and Multiple DCE Clients

  15. Cells and Naming • The DCE Directory Service consists of two directory services: CDS & GDS • CDS manages names inside cells • GDS manages names outside cells and between cells • GDS is an implementation of a directory standard known as X.500 Directory Service (XDS)

  16. Domain Name Service (DNS) • - another widely used existing global name service • - used primarily as a name service for Internet host names • although DNS is not a part of DCE, support for cells to address each other through DNS is provided • Global Directory Agent (GDA) makes inter-cell communication possible

  17. DCE naming environment supports two kinds of names: Global and Local (cell-relative) names Global Names - begins with the … prefix - can refer to an object within a cell or an object outside of a cell Example 1 - uses X.500 name for global cell name Example 2 - uses DNS name for global cell name

  18. Local Names - do not include a global cell name - begins with the /.: prefix • Example: • /…/C=US/O=XYZ/OU=Portland/subsys/PriceMax/price_server1 • /.:/subsys/PriceMax/price_server 1 • are equivalent when used within the cell named • /…/C=US/O=XYZ/OU=Portland

  19. Junctions • some services connect into the cell by means of specialized CDS entries called “junctions” • contain binding information that enables a client to connect to a server outside the Directory Service (e.g., Security Service, DFS) • Example 1 - Security Service Junction(/.:/sec) • Example 2 - DFS Junction (/.:/fs)

  20. DCE RPC • Enhanced version of the HP’s NCS (Network Computing System) RPC • DCE threads allow increased concurrency in servers and clients • supports TCP and UDP transport services • authenticated RPC supported • Interface Definition Language • the service interfaces are defined by DCE IDL • a universal unique identifier (UUID) in the interface distinguishes this interface form any other interface • UUIDs are generated by uuidgen

  21. Distributed Application Development Tasks

  22. Binding • DCE client (runtime library) finds a server using a two-step process • The client gets the server’s host address from the CDS • The client finds the server process address by searching the host’s endpoint map (which is maintained by RPC daemon, rpcd) • Basic server initialization steps: • Register each interface with the server runtime library • Register protocol sequences that the server will use for RPCs • Advertise the server location to clients • Listen for remote procedure calls

  23. Advertising Server Interface

  24. Finding a Server

  25. More on DCE • More information on DCE can be found from The Open Group (http://www.opengroup.org/dce) • Free DCE software can be downloaded from (http://www.opengroup.org/dce/download/)

More Related