190 likes | 693 Views
卒論進捗発表(1). 10/21 31031 山崎孝裕. 今日の内容. テーマとモチベーション MMOG on P2P の技術的課題 実装方針 次回の予定. テーマ. P2P 上の MMOG の開発 MMOG = Massively Multiplayer Online Game P2P の使用により安価なシステムが作りたい Networked Virtual Environment のアプリケーションの 1 つ. モチベーション. 演習3最終発表「 MMOG における P2P の可能性 」をきちんとやりたい
E N D
卒論進捗発表(1) 10/21 31031 山崎孝裕
今日の内容 • テーマとモチベーション • MMOG on P2Pの技術的課題 • 実装方針 • 次回の予定
テーマ • P2P上のMMOGの開発 • MMOG = Massively Multiplayer Online Game • P2Pの使用により安価なシステムが作りたい • Networked Virtual Environmentのアプリケーションの1つ
モチベーション • 演習3最終発表「MMOGにおけるP2Pの可能性」をきちんとやりたい • 未踏ユースにグリッド・P2Pを利用したネットワークゲーム開発のプロジェクトが2つも採択されている→私も負けてらんない • ACM SIGCOMM 2004にも“NetGames-04”というワークショップがあったように、分野としての認知も上がってきている?
そしてなにより・・・ • ネットワークゲームにかけた7000時間はネットワークゲームで取り返す・・・
MMOG • 一つに世界に全てのプレイヤーが存在し、互いに影響しあう • プレイヤー数は数百~数千 • プレイヤーのマッチングを行うロビーサーバ • ゲームの状態を計算するゲームサーバ
技術的課題(1) • Consistency • Performance • Security • Persistency • Scalability • Reliability
技術的課題(2) • Consistency • 各ユーザからの仮想空間の同一性 • ユーザ・仮想世界間の作用の同期 • Performance • ゲームは一種のシミュレーション • ある一定の現実に即した振る舞い • レイテンシの小ささが重要
技術的課題(3) • Security • 接続するのは多数の信用できないノード • 一般的なアタックの防止 • ゲーム世界内でのチートの防止 • Persistency • データの永続性
Scalabilityの確保(1) • ノードの増加によりシステムへの負担が増える • 従来のClient-Serverモデルではサーバに不可が集中しScalableでない • P2Pの上にシステムを乗せることで負荷分散し、Scalabilityを確保
Scalabilityの確保(2) • 2つのゲームモデル • エリア(リージョン)型 • ノンエリア型
Scalabilityの確保(3) • エリア(リージョン)型 • ゲーム世界を「エリア」という単位に分割 • 各エリアはゲーム空間として独立 • エリア間の移動には特殊なエリア間移動処理 • エリアをネットワーク上の1単位とも考えることができ、ネットワークモデルが作りやすい • 現在あるMMOGはほぼすべてエリア型
Scalabilityの確保(4) • ノンエリア型 • ゲームデザインとしては、より自由度が高い • ネットワークへのマッピングが難しい • DHTを使ったゲーム空間のノードへのマッピング • Interest Management • ネットワークモデル自体はエリアのような単位に分け、シームレスにゲーム世界をみせることでノンエリア型を実現する方法もある
Reliability • Consistencyの実現を • 従来のC-Sモデルでは、運営側のサーバ→ある程度信用できる • P2Pの上でのモデルでは、参加ノードのどれか→信用できない・いつ落ちるかわからない
実装の方針(1) • アプリケーションデザイン • エリア型の簡単なMMOG • SimMud[2]を参考 • ネットワークモデル • P2P的な分散処理により、Scalabilityを確保 • Persistencyのために中央サーバを置くかも? • Consistencyのためノードを動的なサーバにする
実装の方針(2) • オーバレイネットワーク • Phoenixを使う予定 • ScalabilityとReliabilityを実現した上で、できる限りのPerformanceを目指す • 今回はSecurityは考えない
次回の予定 • 次の一週間でPhoenixを実際にいじってみる • 来週の発表予定 • Phoenixについて • 特に故障検知APIなどの使い方 • PhoenixでのMMOGの実装方針
参考文献 • [1] S. Y. Hu, G. M. Liao. Scalable Peer-to-Peer Networked Virtual Environment • [2] B. Knutsson, H. Lu, W. Xu, B. Hopkins. Peer-to-Peer Support for Massively Multiplayer Games. • [3] T. Iimura, H. Hazeyama, Y. Kadobayashi. Zoned Federation of Game Servers: a Peer-to-Peer Approach to Scalable Multi-player Online games