1 / 24

卒論 preview

卒論 preview. 12/14 全体ミーティング 米澤研究室卒論生 山崎孝裕. テーマ. Massively Multiplayer Online Game ( MMOG )を P2P 上に実装する. 内容. MMOG とは? P2P 技術を使った MMOG の提案 実装の方針 今後の予定. MMOG とは?. オンラインゲーム MOG MMOG アプリケーションモデル 一般的な分散システムとの差異 従来のネットワークモデル MMOG の現状. オンラインゲーム. ネットワークで繋がれたコンピュータ上に仮想世界を構築

sivan
Download Presentation

卒論 preview

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. 卒論 preview 12/14 全体ミーティング 米澤研究室卒論生 山崎孝裕

  2. テーマ • Massively Multiplayer Online Game(MMOG)をP2P上に実装する

  3. 内容 • MMOGとは? • P2P技術を使ったMMOGの提案 • 実装の方針 • 今後の予定

  4. MMOGとは? • オンラインゲーム • MOG • MMOG • アプリケーションモデル • 一般的な分散システムとの差異 • 従来のネットワークモデル • MMOGの現状

  5. オンラインゲーム • ネットワークで繋がれたコンピュータ上に仮想世界を構築 • 複数のプレイヤーが仮想世界上で相互作用 • 計算ノードが人間(クライアント)である分散シミュレーションとして見られる • 規模による分類:MOGとMMOG

  6. MOG • Multiplayer Online Game • 数人~十数人のプレイヤー • プレイヤーのあるノードがサーバになり、そこにほかのノードが接続する形が一般的 • プレイヤーのマッチング用に中央サーバを置くこともある

  7. MMOG • Massively Multiplayer Online Game • 数十人~数千人以上のプレイヤー • 全プレイヤーがひとつの世界を共有 • ゲームステートを管理する特別なサーバ(ゲームサーバ)が存在する形が一般的 • ゲームサーバへ接続するためのサーバが存在

  8. アプリケーションモデル(1) • 仮想世界中にオブジェクトが存在 • オブジェクト同士が相互作用 • Player Character(PC) • プレイヤーがクライアントを通して行動を決定 • Non-player Character(NPC) • コンピュータが行動を決定 • その他

  9. アプリケーションモデル(2) • エリアの概念 • 広大な仮想世界を分割 • 基本的には実装上の都合 • 相互作用の複雑度の低下 • Interest Management

  10. 一般的な分散システムとの差異 • ノードの物理的位置が固定 • クライアントノードの位置は固定 • リアルタイム性の重視 • 逆に正確性はゲームの性質次第では緩めることができる

  11. 従来のネットワークモデル(1) • クライアントサーバモデルが主流 • サーバ • 運営側が全サーバを管理 • 仮想空間の状態を一括して計算・管理 • 非常に大きな計算能力と回線帯域が必要→Scalabilityに問題

  12. 従来のネットワークモデル(2) • クライアント • ゲーム空間の周囲の情報をサーバから得る • サーバにPCの行動を送信

  13. 例:FINAL FANTASY XI のネットワーク構成

  14. P2Pを利用したMMOG • サーバの機能をPeerに分散 • ゲーム空間の管理をPeerに任せる • 通常はエリアごとなど • 高いScalability • 運営側の必要なリソースが小さい→コスト面で大きなメリット • Peerは信頼できない→故障耐性・セキュリティがより重要

  15. 実装の方針 • Phoenixを使った実装 • 実装の詳細

  16. Phoenixを使った実装(1) • オーバレイネットワークにPhoenixを使用 • 仮想ノードによる抽象化 • ノードの動的参加/脱退が容易 • 故障検知機能

  17. Phoenixを使った実装(2) • 複数のPhoenixオーバレイを作成することでシステムのScalabilityをあげる • ノード管理オーバレイ • 全エリア管理オーバレイ • エリア管理オーバレイ

  18. 実装の詳細 • 中央で管理するサーバ • 認証・データサーバ • エリアマスターサーバ • Peer上のノード • エリアサーバ • エリアレプリカ • クライアント

  19. 認証・データサーバ • ノード管理オーバレイを管理 • クライアント情報とPCのデータベースを保持 • クライアントにPCデータと所属エリアを提示(マッチング) • 長期的なPersistency確保 • ユーザ数に対するScalabilityはない

  20. エリアマスターサーバ • 全エリア管理オーバレイを管理 • エリアサーバの管理 • 全エリアサーバのメタ情報を保持 • エリアサーバ移行時の調停 • エリアオーバレイへのエントリポイントを提示 • ユーザ・エリア数に対するScalabilityはない • エリアマスターの分散も考えられるが今回は考えない

  21. エリアサーバ・レプリカサーバ • エリアオーバレイを管理 • 対応するエリアの管理 • エリア状態の保持 • エリア状態の計算 • クライアントとの通信 • 脱退時・故障時の移行処理

  22. クライアント • 各エリア管理オーバレイに接続 • PCに対応する仮想ノード番号をassume • システムと物理的なプレイヤーとの橋渡し • エリアサーバやレプリカと物理ノードを共有することもあるが、別プロセスで処理

  23. 今後の予定 • 故障を考慮に入れないプロトタイプを作成 • エリアサーバ故障時のプロトコルの考案→これをメインテーマにする予定

  24. 参考文献 • [1] B. Knutsson, H. Lu, W. Xu, B. Hopkins. Peer-to-Peer Support for Massively Multiplayer Games • [2] K. Taura, T. Endo, K. Kaneda, A. Yonezawa. Phoenix: a Parallel Programming Model for Accommodating Dynamically Joining/Leaving Resources

More Related