1 / 10

オーバーレイネットワークを用いた 大規模マルチプレイヤーオンライ ンゲーム インフラストラクチャの構築

オーバーレイネットワークを用いた 大規模マルチプレイヤーオンライ ンゲーム インフラストラクチャの構築. NAIST IPlab 飯村 卓司. MMOG の今と限界. ネットワークゲームの発達 複数人数参加型オンラインゲーム 小規模参加型オンラインゲーム : MOG ( ~ 100 人程度 ) 友達同士で遊ぶ 大規模参加型オンラインゲーム : MMOG (1000 ~ 10000 人程度 ) 新しい友達と出会う 最近注目を集めている比較的新しい形式のゲーム 大規模参加型オンラインゲーム (MMOG) クライアント・サーバ型が一般的 大規模な人数を扱うサーバ

jody
Download Presentation

オーバーレイネットワークを用いた 大規模マルチプレイヤーオンライ ンゲーム インフラストラクチャの構築

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. オーバーレイネットワークを用いた大規模マルチプレイヤーオンライ ンゲームインフラストラクチャの構築 NAIST IPlab 飯村 卓司

  2. MMOGの今と限界 • ネットワークゲームの発達 • 複数人数参加型オンラインゲーム • 小規模参加型オンラインゲーム: MOG (~100人程度) • 友達同士で遊ぶ • 大規模参加型オンラインゲーム: MMOG (1000~10000人程度) • 新しい友達と出会う • 最近注目を集めている比較的新しい形式のゲーム • 大規模参加型オンラインゲーム(MMOG) • クライアント・サーバ型が一般的 • 大規模な人数を扱うサーバ • 高処理能力 (クラスタなど) • 広帯域幅 (多数のプロバイダとのピア接続など) • 運用コスト、初期導入コストが高い • ネットワークプロバイダの持つ知識などが必要 • ゲーム製作のみの知識では難しい

  3. 目標 • サービスクオリティの維持 • クライアント・サーバインフラストラクチャと同等の規模の実現 • 既存のMMOG(同時接続数10万人)を実現 • 低レーテンシでの通信 • さまざまな種類のゲームをサポート • Role Playing Game (RPG) • 膨大なデータ量の管理、維持 • First Person Shooter (FPS) • 低レーテンシ • 運用コストの削減 • 参加ユーザの資源を用いたクラスタサーバの機能の実現 • 最小限のサーバ運営のみでのサービス提供 • アカウンティングサーバ,データバックアップ用のストレージサーバの運用のみ

  4. X W Y V Z Zone Federation Model (ZFM) • ZFM • サーバ機能をP2Pオーバレイに分散 • 伝送速度でクライアント・サーバと同等の性能 • 基本的な技術 • サーバ機能をデータの塊(Zone) 単位に分割 • 分割されたzoneごとに小規模のクライアント・サーバを構築 • ZoneをP2Pオーバレイ上に構築 • Distributed Hash Table (DHT) を用いてZoneのデータを分散 • それぞれのZoneでは、書き換え権限を持つノードが一つのみ • データの一貫性を保障 • SIGCOMM併設workshop NetGames2004にて発表 ゲームワールド全体 Zone W Zone X Zone Z Zone Y Zone V

  5. Zone • Zoneとは • 判定とデータ転送のブロック • ブロックごとにメンバを管理 • Zone owner: サーバ役のノード • Zone member: クライアント役のノード • Independent: 対象zoneには興味の無いノード • Zoneごとに記録されているデータ • Candidate list • Zone owner になりうるノードのアドレスリスト • Member list • Zone member のアドレスリスト • データ • そのZoneにおけるゲーム内データ

  6. Zoning (データの分割) candidate Game < ゲーム全体のデータ > Zone W members Map Map A 川の場所 町の場所 candidate Zoning Zone X members Map B 川の場所 candidate 町の場所 members プレイヤの現在地 プレイヤ X Zone Y プレイヤ Y candidate ログイン members Zone Z

  7. Mapping(分割されたデータをP2P上に配置) < DHT network にマップされたZone > < DHT上のゲームデータ > Key data contents Node B Node C zone1 Game “foo” のプレイヤ情報 zone 4 Node D zone 1 zone2 Game “foo” の地図情報 zone 5 Node E zone3 Game “foo” のスコア情報 zone4 Game “bar” のプレイヤ情報 Node G none Node A zone5 Game “bar” の地図情報 zone 2 none zone6 Game “bar” の敵情報 Node F Zoneは複数のゲームを 同じDHT networkの上に実現可能 Node H zone 6 zone 3

  8. Zoned Federation (1/2) • ノードの3状態 • Zone owner: Zoneを管理するserver役 • Zone member: Zoneのデータを得るclient役 • Independent: それ以外のノード • Zone それぞれに小型の client-server を構築 • Zone ownerは一時期にひとつのみ • データの書き換え権限を持つノードはZone ownerのみ • データの一貫性を保障 • Zone ownerの消滅 • Zone member は検知可能 • Zone ownerが必要である可能性が高いのはZone memberである • 必要なノードがZone owner役を買って出ることができる

  9. independent member member Candidate list Member list Zoned Federation (2/2) step up Zone X join commit update owner ディスクスペース を提供 Zone W Zone Y Zone X DHT network Zone Z

  10. ZFM実装 • libcookai • ライブラリとして提供 • C言語にて実装 • 動作確認済みプラットホーム • NetBSD- (1.6, 2.0*) • FreeBSD-4.*/ -5.* • Vine Linux 2.6 • Sun OS 5.8 • Mac OS X • DHT • オンラインゲームに特化させたPastry実装 • C言語にて実装 • Hash関数としてSHA-1を使用 • X Rally-X • サンプル実装 Game Program libcookai Pastry Network

More Related