Distributed Computing Environment

分散コンピューティング環境(DCE)の解説



1990年代初頭、アポロコンピュータ、IBM、DECといった企業が中心となり、分散コンピューティング環境(Distributed Computing Environment、DCE)というソフトウェアシステムが開発されました。DCEは、ネットワーク上の複数のコンピュータを統合し、クライアントサーバーモデルに基づくアプリケーション開発を支援するフレームワークとツールキットを提供するものでした。

DCEの誕生:UNIX戦争とOSF



DCEの誕生背景には、1980年代のUNIX戦争が深く関わっています。サン・マイクロシステムズAT&TによるUNIX System V Release 4 (SVR4) の開発に対し、他のUNIXベンダーは自社の製品の市場における競争力を危惧しました。この状況を打破するため、Open Software Foundation (OSF)が設立され、BSDベースのUNIXであるOSF/1の開発が始まりました。しかし、OSF/1はSVR4と比較して性能が劣り、普及には至りませんでした。

OSFは、各メンバー企業が保有する技術を統合することで、SVR4に対抗しようと考えました。その中心となったのが、当時重要課題となっていたネットワークコンピューティング技術、特にRPC(遠隔手続き呼出し)システムの統合でした。様々な企業が独自に開発していたRPCシステムを統合し、「公式」のRPC機構を再構築することでOSFはSVR4との差別化を目指したのです。そして、その成果物がDCEでした。OSF/1はDCEをサポートする基盤として位置付けられました。

DCEの構成要素とアーキテクチャ



DCEは、各メンバー企業が独自に開発した技術を統合して構築されました。例えば、DCE/RPCはアポロコンピュータのNetwork Computing System (NCS)がベースとなり、ネーミングサービスはDECの技術、分散ファイルシステムであるDCE/DFSはカーネギーメロン大学Andrew File System (AFS)を基に開発されました。認証システムはケルベロス認証、認可システムはアクセス制御リスト(ACL)を採用するなど、複数の技術が統合された結果、C言語ベースの包括的なネットワークコンピューティングシステムが実現しました。

DCEにおける大きな管理単位は「セル」と呼ばれ、セル内で最高権限を持つ管理者を「セル管理者」と呼びます。セル管理者は、セル内の全てのDCEリソースに対する完全な制御権を持ちます。権限は、ユーザー、グループ、その他、そしてDCEユーザー以外という4つのカテゴリで管理されます。複数のセル間の通信やリソース共有も可能で、外部からのアクセスは「外部ユーザー」として扱われ、適切な権限が設定されます。

DCEセル内の主要構成要素として、セキュリティサーバ(認証)、Cell Directory Server (CDS)(リソースやACLの管理)、分散時間サーバ(正確な時刻の提供)があります。IBMの実装では、セキュリティサーバにケルベロス、CDSにLDAP、時間サーバにNetwork Time Protocolが使用されていました。

DCE/DFSは、DCEにおける分散ファイルシステム機能を提供するアプリケーションです。複数のサーバ上にファイルシステム(DCE/DFSではファイルセットと呼ぶ)を複製し、そのうち一つを読み書き可能なコピー、他を読み込み専用のコピーとすることで、高可用性とデータの整合性を確保します。さらに、バックアップ機能も備えています。DCE/DFSはPOSIXファイルシステムを完全に実装した分散ファイルシステムとして知られており、1996年のアトランタオリンピックWebサイトのバックエンドとして使用され、その信頼性が実証されました。

DCEのその後



1980年代末から1990年代初頭に予想されたほどの普及は、インターネットJavaWebサービスといった新たな技術の台頭や、CORBAのような競合システムの出現により実現しませんでした。しかし、皮肉にもDCE/RPCは、マイクロソフトのDCOMやODBCにおけるトランスポート層として利用されることで、その技術が生き残ることとなりました。

OSFとそのプロジェクト群はThe Open Groupに統合され、2005年にはDCE 1.2.2がLGPLライセンスでリリースされました。それ以前にも、DCE 1.1がOSF BSDライセンスでリリースされており、FreeDCEといったオープンソース実装も登場しています。

まとめ



DCEは、UNIX戦争という競争の激しい環境の中で生まれた、画期的な分散コンピューティング環境でした。そのアーキテクチャや技術は、現代の分散システムの基礎を築いたと言えるでしょう。普及には至らなかったものの、その一部の技術は現在でも利用されており、その影響は無視できません。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。