Understanding DCE

OSF Distributed Computing Environment

Ward Rosenberry, David Kenney, Gerry Fisher

Publisher: O'Reilly, 1992, 238 pages

ISBN: 1-56592-005-8

Keywords: Networks

Last modified: May 3, 2021, 9:16 p.m.

The Open Software Foundation's Distributed Computing Environment (DCE) stands as today's most broadly accepted and most ambitious effort to link diverse computers into a single, productive network. Its goals include:

  • To create a single file system embracing computers throughout a network.
  • To make computer services available without concern for the location of those services within the network.
  • To encourage programming techniques that make use of otherwise idle computing computing power in a network.
  • To support the implementation of large data bases across many systems, while hiding the seams from users and maintaining data coherency automatically.
  • To provide tools for managing and changing networks without interrupting services.
  • To protect networked resources by means of flexible security mechanisms.

Understanding DCE gives you a detailed technical overview of this dauntingly complex software system. The focus is on the kind of understanding that prepares you to do things, and the topics range from the overall architecture, to threads and RPC, to directory services, to security. In addition, the book offers guidelines for setting up and configuring DCE cells.

This is a book you'll need beside you in addition to narrowly-focused programming, administrative, and user guides. It gives you the large picture.

  • Part I: Components
    1. DCE: The Network as Computer
      1. DCE Addresses Many Distributed Computing Issues
        1. DCE Harnesses Latent Computing Power
        2. DCE Increases Availability
        3. DCE Facilitates Collaborative Work and Minimizes Storage Limitations
        4. DCE Services Track Data and Programs that Move Around
        5. DCE Accomodates heterogeneous Data
        6. DCE helps You maintain Distributed Applications
        7. DCE Helps Synchronize Events
        8. DCE Protects Distributed Resources
      2. DCE Is Based on the Client/Server Model
        1. A General Nondistributed Computing Model
        2. Distributed Computing Models
        3. The Client/Server Computing Model
        4. Client and Server Are Relative Terms
        5. Client/Server Communications
      3. DCE: A Model for Distribution
      4. A Look at DCE Application Programming Interfaces
      5. DCE Is a Good Start
        1. Component Availability
        2. Administration
        3. Documentation
        4. Performance
        5. Support for Object-oriented Programming
        6. Support for Message Queuing
        7. Support for Transaction Processing Applications
        8. Compatibility with Standards
        9. Internationalization
      6. Who Will Use DCE?
      7. What Next?
    2. Cells: The Domain of the Distributed Environment
      1. What Is a Cell?
        1. Purpose
        2. Administration
        3. Security
        4. Overhead
      2. Each Cell Has a Set of DCE Services
        1. DCE Services Enable Distributed Operation
        2. DCE Software Configurations for Clients and Servers
        3. Some DCE Cell Examples
      3. Cells and Naming
        1. How Cells Determine Naming Environments
        2. Names Outside of the DCE Directory Service
        3. Summary of Names
      4. Cells and LAN Profiles Point to DCE Services
    3. Remote Procedure Call: The Foundation of Distributed Computing
      1. Distribution Builds on the Concept of a Local Application
        1. Local Procedure Call Behavior
        2. Remote Procedure Call Behavior
      2. The Development Process Enables Distribution
      3. Interface Definition Enable Client and Server Interaction
      4. Binding: How a Client and Server Find Each Other
        1. The Directory Service Identifies Server Hosts
        2. The Endpoint Map Identifies Servers
        3. Server Initialization Lays a Path for Clients
        4. Clients Follow the Path to Servers
      5. Executing the Remote Procedure Call
      6. Using, Administering, and Programming RPC
    4. Threads: Improving Program Performance
      1. What Is DCE Threads?
      2. Using Threads
      3. Why Use Threads in an Application?
    5. DCE Security Service: Protecting Resources
      1. Authentication and Authorization
        1. Passwords Ensure Authenticity
        2. Privilege Attributes Convey Verifiable Identities
        3. Access Control Lists Protect Resources
        4. Special Accounts Enable Intercell Authentication
      2. The Security Services Resist Tampering
        1. Life Spans Protect Security Information from Illegitimate Use
        2. Frequent Key Substitution Protects Secret Keys
        3. Encryption Ensures Data Authenticity, Privacy, and Integrity
        4. Secure Hosts Protect Security Servers
      3. Groups and Organizations Simplify Security Management
      4. How People Interact with the DCE Security Service
        1. Using the DCE Security Service
        2. Administering DCE Security
        3. Administering Access Rights for Applications
      5. DCE Security in Action
      6. Programming the DCE Security Service
    6. DCE Directory Service: Locating Resources
      1. The Directory Service Controls the Naming Environment
      2. The Naming Environment Maps Names to Resources
        1. CDS Names Correspond to CDS Directories and Object Entries
        2. Distribution Ensures Access to Directories
        3. Child Pointers Link the Name Environment Together
        4. Soft Links Customize a Name Environment
        5. Object Attributes Define Resources
        6. Putting the Parts Together
        7. Update Operations Keep Name Information Current
        8. DCE Security Protects Directory Service Information
      3. The Directory Service Uses the Client/Server Model
        1. Caching Improves Performance
        2. Clerks Find CDS Servers in Several Ways
      4. CDS in Action
        1. A Simple Lookup Example
        2. A Complex Lookup Example
        3. A Deeper Look at CDS
      5. Communicating with a Foreign Cell
      6. How People Interact with the DCE Directory Service
        1. Using the DCE Directory Service
        2. Administering the DCE Directory Service
        3. Programming with the DCE Directory Service
    7. DCE Time Service: Synchronizing Network Time
      1. How Does DTS Work?
      2. DTS Time Is Cellwide
      3. Synchronizing Cell Time with External Time Sources
      4. Using DTS
      5. Administering DTS
      6. Programming with DTS
    8. DCE Distributed File Service: Providing Cellwide Access to Files
      1. Some Good Reasons to Use DFS
      2. DFS is a Comprehensive File System
        1. The DCE Local File System Can Coexist with a Host's Native File System
        2. DFS Acts on Groups of Files Called Filesets
        3. DFS Tracks Files as They Move
        4. DFS Locates and Backs Up Filesets
        5. DFS Protects Files Using DCE Access Control Lists
        6. DFS Protects Its Servers by Using DFS Distributed Security
        7. DFS Ensures Server Software Consistency
        8. DFS Simplifies Management Using Administrative Domains
        9. DFS Clients Use Caching to Speed Operations
        10. DFS Clients Can Include Diskless Workstations
      3. How DFS Works
      4. DFS Files Connect to the Larger World
      5. How People Interact with the DCE Distributed File Service
        1. Using the DCE Distributed File Service
        2. Administering the DCE Distributed File Service
        3. Writing Programs that Use DFS Programming Interfaces
    9. A Look at Writing DCE Applications
      1. Designing Your Client/server Application
        1. Developing a Comprehensive User Model Is Critical
        2. What is the job and how will your application facilitate work flow?
        3. What resources do you require and where are the resources located?
        4. How can you connect groups of people effectively the resources they need to do their job?
        5. A Client/Server Application Is a Series of Related Mini-applications
        6. Take Cell Configuration and Network Topology into Consideration
        7. The Level of Security Is Up to You
        8. A Well-Designed Interface Aids Scalability and Maintainability
        9. Threads Present New Challenges to Application Designers
      2. Implementing Your Client/Server Application
        1. Coding Your First DCE Client/Server Application
        2. Creating a Production-Ready Application
        3. Distributing Existing Code
      3. DCE Programming-language Consideration
      4. What Next?
  • Part II: Configurations and Management Considerations
    1. Getting Started with DCE
      1. Low Impact on Physical Network Components
      2. Low Impact on Non-DCE Users
      3. You Can Choose Your Own Pace
      4. DCE Implementations Permit Planning in Stages
      5. DCE Is Dynamic
      6. Where We'll Go from Here
    2. Determining Your Cell's Boundaries
      1. Factors that Influence the Boundaries of a Cell
      2. For Whom the Cell Tolls — And Why?
      3. What Are Your Security Requirements?
        1. Authentication Across Cells
        2. Repairing a Breach of Your Cel's Security
      4. What Are Your Projected Administrative Requirements?
      5. How Will DCE Affect Computing and Network Overhead?
    3. Initial Cell Configuration Guidelines
      1. Choosing a Name for Your Cell
        1. GDS or DNS? — You've Got to Pick One
        2. Cell Names are Difficult to Change
        3. The Cell Name You Choose Must Be Unique Within Your Organization
        4. get In-House Approval for Your Cell Name Before You Register
        5. Caveats for Naming Isolated Cells
      2. Configuring DCE Server and Client Systems
        1. Reasons to Configure DCE Core Services on One System
        2. Reasons to Disperse DCE Core Services from the Start
        3. Configuring Client-only Systems
        4. Configuring DFS
        5. Configuring GDS
    4. Setting Up Security in a New Cell
      1. Default Access Controls Created by Cell Initialization
        1. The cell_admin Principal Has Unlimited Access to Everything
        2. DCE Authorization Groups get Control of Specific Services
        3. Initial Access Controls on DCE Core Services
        4. Initial Access Controls on DFS
        5. Initial Access Controls on GDS
        6. Summary 
      2. Modifying Default Security Policies of DCE Services
      3. Three Example Security Scenarios
        1. Scenario One: Low Security
        2. Scenario Two: Medium Security
        3. Scenario Three: Clamping Your Cell Shut
      4. A Little Friendly ACL Advice
        1. How Secure is Secure Enough?
    5. Distributing and Replicating Core DCE Services
      1. Distributing the Cell Directory Service
        1. Where Should You Locate Your CDS Servers?
      2. Distributing the Security Service
      3. Distributing the Time Service
  • Part III: Appendixes
    1. DCE Client/Server Examples
      1. Bare-Bones Client Code
      2. A Simple Threaded Version of the Application
      3. A Bare-Bones Application with Authentication
      4. The Application with Error Checking, Mutexes, and Server-Group Registration
      5. A Sample Make File
    2. Common DCE Questions… and Some Answers
      1. "I was just wondering…"
      2. "I'm a system administrator, and I was wondering…"
      3. "I'm an application programmer, and I have a friend who was just wondering…"
    3. External Time Providers and Services
      1. Telephone Services
      2. Radio Broadcasts
      3. Satellites
    4. Registering a Name: GDS and DNS
      1. Obtaining a Unique GDS Cell Name
      2. Obtaining a Unique DNS Cell Name

Reviews

Understanding DCE

Reviewed by Roland Buresund

Good ******* (7 out of 10)

Last modified: May 21, 2007, 2:47 a.m.

A good overview of DCE.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required