Distributed Systems 第10章 Distributed Object-Based Systems (後編)
Upcoming SlideShare
Loading in...5
×
 

Distributed Systems 第10章 Distributed Object-Based Systems (後編)

on

  • 273 views

 

Statistics

Views

Total Views
273
Views on SlideShare
272
Embed Views
1

Actions

Likes
0
Downloads
2
Comments
0

1 Embed 1

http://s.deeeki.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Distributed Systems 第10章 Distributed Object-Based Systems (後編) Distributed Systems 第10章 Distributed Object-Based Systems (後編) Presentation Transcript

  •          アーキテクチャ プロセス 通信 名前付け 同期 一貫性と複製 フォールトトレラント性 セキュリティ まとめ
  •  CORBA ◦ Common Object Request Broker Architecture   Java EE (J2EE)/EJB Globe ◦ 情報が全然見つからない
  •  CORBAオブジェクトリファレンス ◦ 相互運用可能オブジェクトリファレンス (Interoperable Object Reference: IOR)  Globeオブジェクトリファレンス View slide
  •  遠隔オブジェクトを参照するのに必要な情報を いろいろ持ってる View slide
  •   Globeの分散共有オブジェクトには全体で一意なオブジェクト識別 子(OID)が割り当てられる 位置サービスにアクセスすることでコンタクトアドレスを得る ◦ 位置サービスについては第5章を参照
  • スタックコンタクトアドレス フィールド 説明 プロトコル識別子 既知のプロトコルを示す定数 (‘TCP’, ‘UDP’, ‘IP’...) プロトコルアドレス プロトコル固有のアドレス (TCPポート番号 or IPv4アドレス etc.) 実装ハンドル クラスリポジトリにおけるファイルへのリファレンス インスタンスコンタクトアドレス フィールド 説明 実装ハンドル クラスリポジトリにおけるファイルへのリファレンス 初期化ストリング 実装を起動するのに使われる文字列
  •  CORBAオブジェクトリファレンス ◦ どのオブジェクトへコンタクトすべきか、 正確な情報を含む  Globeオブジェクトリファレンス ◦ 情報を取り出すための追加的な探索段階が必要
  •  ロックオブジェクトに対する制御フローの違い (a) オブジェクトの呼び出しが連鎖し、ロックの連続が起こる可能性がある (b) プロセスは問題が起こった時にロックを解除するなどの対処ができる  トランザクションプロセスシステムは通常 (b) のパターンを使用する  
  •  同期を行なうのはふつうオブジェクトサーバ ◦ クライアントがクラッシュしたときに面倒なことに  クライアント側でロックをしたらどうか? (Javaが採用している) ◦ 異なるマシンの異なるクライアントを同期させる必要があり、複雑 (第6章を参照)  他にもいろいろ書いてあるがよくわからない
  •    複製をどのようにシステム内で処理するか? 基本的には第7章を参照 エントリ一貫性 複製呼び出し
  • ◦ 複製されたオブジェクトサーバに対する決定論的なスレッドスケジューリング T11とT21が到着してくる同じ呼び出し要求を処理する場合、 T21とT22をそれぞれ呼び出す前にスケジューリングするべき
  • ◦ EJB環境におけるオブジェクトから複製アルゴリズムを分離するための 一般的なフレームワーク ◦ とばします
  • ◦ 複製されたメソッド呼び出しの問題 AがBを、BがCを呼び出す Bが複製されていると、Cは複数回呼ばれる ◦ Cで実行されるメソッドが「10万ドル送金」だと死ぬ
  • ◦ (a) 複製されたオブジェクトから他の複製されたオブジェクトへの呼び出し要求の転送  BがCを呼び出すとき、Bの各複製は呼び出し要求に一意の識別子を割り当てる  Bのコーディネータが要求を転送、Bの他の複製は呼び出し要求のコピーを持って待機 ◦ (b) ある複製されたオブジェクトから別のオブジェクトへの結果の返信  CのコーディネータがBの複製へ返答を転送、Cの他の複製は返答メッセージのコピーを持って 待機
  •  フォールトトレラントCORBA ◦ 相互運用可能オブジェクトグループリファレンス (Interoperable Object Group Reference: IOGR)  フォールトトレラントJava
  • ◦ プライマリとバックアップを持つオブジェクトグループに対する IOGRの可能な構成 ◦ 名前付けに登場したIORをグループ化し、障害に備える
  •   クライアントがcreate_objectを呼び出したとき、 複製マネージャがオブジェクトグループを生成する クライアントはオブジェクトが複製されていることを意識しない
  •    Java実行時システムはフォールトトレラント機能を持つ アクティブ複製(第7章)は決定論的な有限状態マシンのようにレプリ カサーバが実行することを指示する JVMは決定論的ではない、という話
  •   セキュアオブジェクトバインディング セキュアメソッド呼び出し
  •  (a) ユーザ証明書 ◦ 特定のユーザに関連 / ユーザが許可されている呼び出しメソッドを明確にする ◦ U: オブジェクトが利用可能なメソッドの数と同じ長さのビット文字列 ユーザがメソッドM_i を利用可能 -> U[i] = 1  (b) レプリカ証明書 ◦ サーバがメソッドM_i を実行可能 -> R[i] = 1
  •  (c) 管理証明書 ◦ 認可されたエンティティによって使用され、ユーザ証明証とレプリカ証明書を 発行する ◦ RとUはどのメソッドとエンティティに対して証明書が生成されたかを特定する ◦ D: 管理エンティティが他へ権利を委託できるかどうかを示すビット
  •  10.1 「Globe分散共有オブジェクト」 ローカルオブジェクトの一般的な構成図 (再掲) ◦ Globeでは以下の構成でどのようにセキュアなメソッド呼び出しを実現しているか?