Comments
Description
Transcript
オンラインゲームにおける P2P 適用に関する一考察
情報処理学会第65回全国大会 4K-4 オンラインゲームにおける P2P 適用に関する一考察 大島 英一 島本憲夫 矢島学 武本 充治 日本電信電話株式会社 NTT ネットワークサービスシステム研究所 1. はじめに 近年のネットワークの常時接続化・広帯域化に伴 い、ネットワークに接続して多数のユーザが同時に プレイをする形態のオンラインゲームの市場は年々 伸びている。現在提供されているオンラインゲーム の多くはクライアント/サーバ型により実現されて いる。そのため、ゲームに参加するユーザが増加す ると、サーバ性能を拡充する必要があり、さらには、 サーバ周辺のネットワークが飽和することが予想さ れる。本稿では、この課題を解決する1つの手段と して、Peer-to-Peer (P2P) 通信[1]により、ゲーム 中の一部の通信をサーバに依存することなく行うア ーキテクチャを提案する。 2. 現状のオンラインゲームの概要と課題 2.1 オンラインゲームの概要 現在提供されているオンラインゲームの多くは、家 庭内のユーザの端末上に、ゲームアプリケーション がインストールされ、ゲーム運営業者1が運営するサ ーバを介するクライアント/サーバ型により、大きく 2 つのデータを流通させている。 ① ゲームデータ ・ ユーザのアクション ・ ゲームシナリオ ・ アイテム等 ② コミュニケーションデータ ・ ユーザ探索 ・ チャット ・ インスタントメッセージ 一方、これまで中心であった、非オンラインゲーム は、ユーザ端末にインストールされるゲームアプリ ケーション単独で動作するが、オンラインゲームは、 非オンラインゲームと異なり、ユーザが増加すると、 ①②のデータ流通量が増加し、サーバの性能向上や 増設、周辺のネットワークの性能向上が必要である ため、多くのユーザの獲得が直接利益につながると は限らなかった[2]。 A study of P2P application in onlinegames Eiichi Ooshima,Norio Shimamoto, Manabu Yajima,Michiharu Takemoto NTT Network Service Systems Laboratories 1 現状は、ゲーム開発・販売業者が、このサーバを運営する ゲーム運営者でもある形態が多い。 2.2 オンラインゲームの課題 今日のオンラインゲームの多くは、チャットやイン スタントメッセージといった、機能も持っている。 これら②のコミュニケーションデータはサーバを仲 介して行われる(図 1 の破線)。コミュニケーション データはゲームに関する内容とは限らないため、開 発者が想定していない大量データの流通が行われる 場合がある。これによりコミュニケーションデータ 処理に必要なサーバ設計が困難となる またコミュニケーションデータは、ユーザを異なる サーバに収容した場合にはサーバ間で通信を行い、 情報を流通するため、サーバ間のコミュニケーショ ンデータ流通についても、サーバ性能に対しての考 慮が必要になるが、ユーザのコミュニケーション利 用形態によってトラヒックが変動するため、適切な サーバ容量や性能の設計は困難である。 図 1: クライアント/サーバ型オンラインゲームの通信 3. P2P通信技術の現状 近年のインターネット技術の中で特に注目されて いるものとしてサーバ非介在技術である P2P 通信技 術が挙げられる。P2P 通信技術を実現しているソフト ウェア(P2P ソフトウェア)の中にはユーザ (Peer) の探索・発見はもとより、チャット、インスタント メッセージ機能を提供しているものが多い。この P2P 通信技術をオンラインゲームのコミュニケーション 部に適用することにより、これまでに述べてきたサ ーバ介在型通信を P2P に置き換えてサーバの負荷を 軽減させることが可能である。 現状、P2P ソフトウェアは数多く発表されており、 P2P 通信は Pure 型通信と、Hybrid 型通信の 2 種類に 分別されている。(図 2) Pure 型の P2P 通信を行うシステムは Hybrid 型とは 異なり、Index サーバを必要としないことや Firewall 越えなどのために、特別なサーバを必要としない特 徴も持ち合わせているため、必要最低限のコストで 実現が可能と考える。Pure 型の実装例としては、JXTA、 SIONet 等がある。 3−325 図 2: Hybrid 型/ Pure 型 P2P 通信システム 4. P2P通信技術とオンラインゲームの融合と 課題の解決案 図 3 に、P2P 通信技術をオンラインゲームに融合さ せたアーキテクチャ(C/S-P2P 融合方式)を示す。各 ユーザは、ゲームデータ(2.1 項①)のみをサーバに 送出し、それ以外のデータは、サーバを介すること なく、ユーザ間で通信を行う(P2P 通信)。また、既 存のゲームを実行しているプロセスとは別に、ユー ザ間通信が、P2P プロセスとして実現する。 図 3: P2P 通信技術とオンラインゲーム融合 P2P 方式を適用する場合、これまで通信相手の管理 /識別はサーバが行っていたが、提案する C/S-P2P 融 合方式では他ユーザの検索/発見等の処理をユーザ 端末側で負担することになる。P2P 技術では一般的に、 他の Peer 情報はキャッシュ方式を取っているため、 通信相手を検索発見する処理負荷は比較的小さいも のと考える。また、ゲームの進行上、十分なユーザ (Peer)情報のキャッシュが収集されている場合は、 Peer の探索・発見要求を無視することで、ゲームへ の影響を小さくすることが可能である。 5. 本方式による効果 C/S-P2P 融合方式を適用することにより、ユーザ間 のコミュニケーション通信をゲーム機能と分離でき る。これによりゲームを実行するために必要な通信 のうち、ゲームの運営に必須な、ゲームデータだけ を考慮すればよく、サーバ通信網の設計が容易にな る。 また、本方式では、情報を交換するチャット空間 は、ゲームの種類ごとに設置する必要がないため、 異なるゲームを行っているコミュニティを跨ったチ ャット空間の設置や、ユーザ同士の人間的コミュニ ティに基づいたチャット空間の設置を行うことも可 能となる。 4.1. 課題の解決案 6. おわりに P2P 通信方式を適用すると、ゲーム中にユーザ間で 行う、チャットやインスタントメッセージなどのコ ミュニケーションデータ(2.1 項②)は、ユーザの端 末が Peer として直接通信することにより、サーバが 関与しなくてすむ。そのため、ゲーム開発者は、ゲ ームの進行に必要な、ゲームデータ(2.1 項①)のみ を意識すればよい。つまり、1 ユーザ/単位時間あた りに送出する最大データ量が予測出来るため、それ を処理できるサーバ能力と、周辺の通信能力の設計 が比較的容易となる。 また、従来のサーバ間通信が必要となるデータに ついても、P2P 通信をユーザ間通信に適用することに より、サーバの負荷を軽減させることが可能となる。 すなわち、サーバを複数設置し、ユーザ毎に収容先 を変更する従来の形態での負荷分散が可能となる (図 4)。 本稿では従来の C/S 型オンラインゲームでユーザ が増加することによって生じるサーバ負荷の問題に 対して、ゲームの実行中に必要となる通信の一部を P2P 化することでサーバへの負荷を軽減する C/S-P2P 融合方式について提案し、その効果について検討し た。今後は、具体的な実装方法と展開方法について 検討していく予定である。 参考文献 [1] 小柳恵一 編著,河内正夫 監修“P2P インターネッ トの新世紀”,電気通信協会,2002 [2] IMPRESS,http://www.watch.impress.co.jp/game/ docs/20020921/tgsf.htm [3] Project JXTA, http://www.jxta.org/ [4] Groove Networks, http://www.groove.net 図 4: サーバ間通信の負荷分散 3−326