CSC 8320 Advanced Operating System Distributed Computing Environment (DCE) Presenter: Ke Gao...

22
CSC 8320 Advanced Operating System Distributed Computing Environment (DCE) Presenter: Ke Gao Instructor: Professor Zhang

Transcript of CSC 8320 Advanced Operating System Distributed Computing Environment (DCE) Presenter: Ke Gao...

CSC 8320 Advanced Operating System

Distributed Computing Environment (DCE)

Presenter: Ke GaoInstructor: Professor Zhang

Overview

Part 1: Fundamental Knowledge Part 2: Current Technology Part 3: Future Research

Part 1: Fundamental Knowledge

What is Distributed Computing Environment (DCE)?

The Distributed Computing Environment (DCE) is a software system developed in the early 1990s by a consortium that included Apollo Computer, IBM, Digital Equipment Corporation, and others.

DCE is an integrated package of software and tools for developing distributed applications on an existing operating system. [Randy Chow, 1997]

Then DCE is standardized by Open Software Foundation (OSF)

The Open Software Foundation (OSF) is a non-profit organization founded in 1988 under the U. S. National Cooperative Research to create an open standard for an implementation of the UNIX operating system.

What is Distributed Computing Environment (DCE)? - Definition from OSF

The OSF Distributed Computing Environment (DCE) is an industry-standard, vendor-neutral set of distributed computing technologies. DCE is deployed in critical business environments by a large number of enterprises worldwide. It is a mature product with three major releases, and is the only middleware system with a comprehensive security model.

DCE provides a complete Distributed Computing Environment infrastructure. It provides security services to protect and control access to data, name services that make it easy to find distributed resources, and a highly scalable model for organizing widely scattered users, services, and data. DCE runs on all major computing platforms and is designed to support distributed applications in heterogeneous hardware and software environments. DCE is a key technology in three of today's most important areas of computing: security, the World Wide Web, and distributed objects.

DCE Architecture Proposed by OSF [Randy Chow, 1997]

Kernel with transport service

Processes and Threads

RPC and Group Communication

Basic System ServicesTime, name, process services, etc

Distributed ServicesConcurrency control, group management, etc

Distributed File Service

Applications

Secu

rity

Managem

en

t

DCE provides services, such as threads, RPC, security and so on to integrate Unix and non-Unix platforms.

Each individual service is hierarchically layered. The heart of the system is the kernel and the transport

service. They provide an interface that provides communications services to processes on the other hosts.

Process and threads are basic computational units supported by kernel. Here threads are a special type of processes that facilitate efficient implementation of concurrent servers.

All other service sreside in the user space and interact with each other by means of RPC and group communication.

Time, name and process services are examples of basic system services.

Files are the primary objects in the systems. High-level services such as concurrency control and group management can be built on top of distributed file services.

Security and management functions need be integrated into all layers.

DCE ArchitectureThe largest unit of management in DCE is a cell. The highest

privileges within a cell are assigned to a role called cell administrator, normally assigned to the "user" cell_admin. Note that this need not be a real OS-level user. Multiple cells can be configured to communicate and share resources with each other.

Major components of DCE within every cell are:

The Security Server that is responsible for authentication

The Cell Directory Server (CDS) that is the respository of resources and Access Control List (ACL)

The Distributed Time Server that provides an accurate clock for proper functioning of the entire cell

DCE/DFS is believed to be the world's only distributed filesystem that correctly implements the full POSIX filesystem semantics, including byte range locking.

Categories of DCE Services

Fundamental distributed services provide tools for software developers to create the end-user services needed for distributed computing such as Remote Procedure Call, Directory Service, Time service, and Thread service. etc.

Data-sharing services provide end users with capabilities built upon the fundamental distributed services. These services require no programming on the part of the end user and facilitate better use of information such as distributed file system and diskless support.

DCE Benefits

Security - The DCE Security Server authenticates all users and servers, ensuring that people, servers, and applications are who they claim to be. DCE authorization capabilities can protect distributed resources from unauthorized use.

Lower maintenance costs - The use of formal interface definitions by DCE RPC allows any number of programmers to write applications that communicate correctly, while keeping versions and configurations in sync. The interface definition can be maintained and versioned, and the version number compiled into the application will ensure that each client finds a compatible server.

Scalability and availability - The use of replication for both security and directory servers aids in network response time, as well as service availability. DCE installations in the tens and hundreds of thousands of users operate successfully today.

Reduced risk - DCE is a proven technology, which has been successfully deployed for years at hundreds of large organizations in the Global 2000. And it is in use at some of the largest enterprises in the world today.

Part 2: Current Technology

Key Features of Real Product from Entegrity Solution [Entegrity Solution, 2000]

DCE Runtime - Consists of runtime libraries, daemon binaries, administrative tools and online documentation.

DCE Security Server - Based on respected Kerberos technology, and provides user and application authentication and authorization.

DCE Security Server Active Directory Extension - Extends the DCE Security Server to enable single sign-on between an existing DCE cell and a Windows Active Directory domain.

DCE Cell Directory (CDS) Server - The CDS server stores and maintains object names within a cell and handles requests to create, modify, and look up data.

DCE ADK - Includes the IDL compiler, as well as header files and libraries necessary to compile DCE applications.

Virtual Distributed Computing Environment (VDCE) [Haluk Topcuoglu, 1998]

The VDCE Software Architecture

Application Editor, a user-friendly application development environment that generates the Application Flow Graph (AFG).

Application Scheduler, which provides an efficient task-to-resource mapping of AFG.

VDCE Runtime System, which is responsible for running and managing application execution and for monitoring the VDCE resources.

Part 3: Future Research

Cloud Computing

• Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet. Users need not have knowledge of, expertise in, or control over the technology infrastructure in the "cloud" that supports them.

• The concept generally incorporates combinations of the following:

– infrastructure as a service (IaaS)

– platform as a service (PaaS)

– software as a service (SaaS)

Key Characteristics of Cloud Computing 1. Agility improves with users able to rapidly and

inexpensively re-provision technological infrastructure resources.

2. Cost is claimed to be greatly reduced

3. Device and location independence enable users to access systems using a web browser regardless of their location or what device they are using.

4. Multi-tenancy enables sharing of resources and costs across a large pool of users.

5. Reliability improves through the use of multiple redundant sites.

6. Security improves due to centralization of data.

7. Sustainability comes about through improved resource utilization and more efficient systems.

CCOA: Cloud Computing Open Architecture [Liang-Jie Zhang, Qun Zhou. 2009]

Principle 1: Integrated Ecosystem Management for Cloud. Principle 2: Virtualization for Cloud Infrastructure. Principle 3: Service-Orientation for Common Reusable

Services Principle 4: Extensible Provisioning and Subscription for

Cloud Principle 5: Configurable Enablement for Cloud Offerings Principle 6: Unified Information Representation and

Exchange Framework Principle 7: Cloud Quality and Governance

Reference [1] Randy Chow, Theodore Johnson, “Distributed

Operating Systems & Algorithms”, Addison Wesley, 1997

[2] http://www.entegrity.com/products/dce/dce.shtml [3] Haluk Topcuoglu , Salim Hariri , Dongmin Kim ,

Yoonhee Kim , Xue Bing , Baoqing Ye , Ilkyeun Ra , Jon Valente. The Design and Evaluation of a Virtual Distributed Computing Environment, The Journal of Networks, Software Tools and Applications, 1998

[4] http://en.wikipedia.org/wiki/Cloud_computing. 2009 [5] Liang-Jie Zhang; Qun Zhou. CCOA: Cloud

Computing Open Architecture. ICWS 2009. IEEE International Conference on. 2009

Thank YouQ & A