Language

JP EN

-WE GREW VANA’DIEL-
“『FFXI』20年の軌跡”インタビュー 第1回
伊勢幸一 パート2

『ファイナルファンタジーXI』(以下、『FFXI』)の20周年を記念して5月8日にYouTubeで配信された特別番組『WE ARE VANA'DIEL』。番組内では“WE GREW VANA’DIEL”と題し、『FFXI』の開発に携わった方や、他社クリエイターも含めた関係者のさまざまな証言が映像等で公開された。しかし、それらは取材内容のほんの一部にすぎない。ここでは、関係者それぞれが語る“『FFXI』20年の軌跡”を、改めてインタビュー形式でお届けしていこう。
 その第1回は、『FFXI』や『プレイオンライン』開発時におけるネットワークシステムを統括した伊勢幸一さんへのインタビュー。パート2ではプレイオンラインや『FFXI』の開発スタート時の思い出を振り返っていただいた。

『ファイナルファンタジーXI 20 周年記念放送 WE ARE VANA'DIEL』

伊勢幸一

ネットワーク方面に精通するエンジニア。1996年にスクウェア(当時)に入社し、スクウェアUSAのホノルル・スタジオの立ち上げなどに参加したのち、技術情報部のシニアマネージャーおよびプレイオンラインのサーバーシステムディレクターとして、『FFXI』のネットワークシステムの構築を担当する。2016年より、さくらインターネット株式会社の取締役に就任。

従来のMMORPGと『FFXI』の設計の違い

  • 2001年公開の映画の制作が一段落して、いよいよ『FFXI』のプロジェクトが始まったときのことをお聞かせください。

  • 伊勢

    最初は映画が完成する前の2000年2月ごろに、坂口さん(坂口博信氏。『FF』シリーズの生みの親のひとり)から「プレイオンラインという新しいポータルサイトを立ち上げて、そこで『ファイナルファンタジーオンライン』を展開するから、そのインフラ(※)まわりを頼むよ」と言われました。開発環境の構築はいままでにもありましたが、“オンラインサービスの基盤を作る”というのは初めての経験でした。

    ※インフラストラクチャー。ここではネットワークやサービスにまつわる基盤システムを指す。
  • その話を聞いた第一印象はいかがでしたか?

  • 伊勢

    プレイオンラインに対しては、ゲーム以外にも音楽、マンガ、ニュースなどいろいろなサービスが含まれていて、途方もない構想だなと思いました。インターネット上に、エンターテインメントコンテンツのポータルサイトを作り上げるようなものですから。しかも、その中核コンテンツとなる『ファイナルファンタジーオンライン』、つまり後の『FFXI』はMMO(多人数同時参加型オンライン)RPGで、これもスクウェアにとって初めて手掛けるゲームジャンルでした。

  • その“途方もない構想”と感じられたプレイオンラインですが、当初のシステム構成のイメージはどのようなものでしたか?

  • 伊勢

    ゲームタイトルやサービスが個々のクラスター(※)で構成され、それらがネットワークでつながり、必要な情報をやり取りする形になるだろうな、と考えていました。プレイオンラインの構想自体は大きかったのですが、システム面で考えると標準的なクラスターを複数並べれば実現できるだろうという見当がついていて、荒唐無稽な大規模システムにはならないと思っていましたね。

    ※クラスターとは、サーバーやネットワーク、ストレージなどの機器を、役割ごとにひとまとまりにした単位のこと。
  • 当時の伊勢さんはネットワークエンジニアとして実績を積まれていましたが、そんな伊勢さんにとっても、プレイオンラインや『FFXI』は新しいチャレンジの連続だったのでしょうか?

  • 伊勢

    『FFXI』だけを見ても、MMORPGにおけるゲームサーバーとクライアントの関係性や、オンラインゲームで必要なトラフィック(通信量)のパターンや通信モデルなど、知らないことだらけでしたね。ですから、固定観念にとらわれず、新人のエンジニアに立ち返ったつもりで勉強しました。このときに、日本のインターネット業界の主要なオピニオンリーダーの方々と知り合うことができ、情報交換させていただきつつ徐々に目標点に向かって進んでいったという形でした。

  • 当時、海外ではいくつかのMMORPGがサービスを行っていましたが、それらは参考にされましたか?

  • 伊勢

    ええ。とくに『Ultima Online(ウルティマ オンライン)』(以下、『UO』。※)と『EverQuest(エバークエスト)』(以下、『EQ』。※)は私たちからすると先駆者なので、大いに参考にさせていただきました。実際、『FFXI』におけるネットワーク仕様をある程度固めた後、これら2タイトルの開発会社を訪問して、エンジニアから直接アドバイスを受けたこともありましたね。とはいえ講義のような形ではなくて、「私たちはこう思っているけれど、あなたたちはどうやっているの?」とカジュアルに聞いて、そのディスカッションの中で私たちが知りたいことを探る、というような感じでした。

    ※『Ultima Online(ウルティマ オンライン)』は、1997年にサービスが開始された、MMORPGの草分け的なタイトル。
    ※『EverQuest(エバークエスト)』は、1999年に米国でサービスを開始した海外産のMMORPG。
  • 当時のやり取りで、印象に残っていることはありますか?

  • 伊勢

    MMORPGにおけるネットワークシステムに対する考えかたについては、自分たちの理解の範囲内といいますか、「べつに突拍子もないことをやっているわけではないんだな」と感じました。私が想定していたクラスター型のシステムと同様の構成だと思いましたし、特別なハードウェアが必要になるわけではないと。

  • 『UO』や『EQ』の開発メーカーにとって、『FFXI』は将来の競合相手になり得るわけですが、ためらうことなくアドバイスをしてくれるものなのですね。

  • 伊勢

    私が知るネットワークエンジニアの界隈では、そういった秘密主義のようなしきたりはなかったですね。それに、仮にネットワークエンジニアがノウハウを他社に教えたところで、ゲームのおもしろさまでは容易にコピーできるわけではないことは、お互いに理解していたでしょうし。

  • 当時の『UO』や『EQ』と比べて、『FFXI』のインフラ面で異なる点はありますか?

  • 伊勢

    当時はサーバーなどの技術も日進月歩で進歩していたので、少なくとも先行している『UO』や『EQ』と同等以上のネットワークシステムを構築できるだろうとは思いました。『UO』では、いまはもうありませんがサン・マイクロシステムズのSPARCstationという大型のサーバーを使っていました。『EQ』は縦置きのPCサーバーをラックの中に並べていた形です。それらに対し、私たちがシステムを作ったときには1Uサーバー(※)が出始めていたので、省スペースで効率よくサーバーが配置できたのが大きな違いでした。

    ※1Uサーバーとは、データセンター向けの薄型サーバー。ラックに効率よく多数のサーバーを収納できる。
  • サーバーの“物理的な”扱いも重要だったのですね。

  • 伊勢

    サーバーに関しては、もうひとつ大きな違いがありました。サーバーラック内にはトップオブラックスイッチ(※)というものを置くのですが、そのスイッチのポート(※)数は『UO』では8ポート程度しかありませんでした。一方、私たちが構築したときには32ポートのとても豪勢なスイッチが出てきたことにより、サーバーラック内にサーバーを多数配置することができましたので、データセンター内の限られたスペースで、ケタ違いに大きなシステムを作ることができたのです。結果、『UO』や『EQ』のように“巨大なシステムをひとつ作り上げる”という考えかたではなく、“ひとつのクラスターをしっかり作り上げ、そのクラスターを並べて個々のシステムとしてスケールアップ(※)していく”というやりかたが可能になりました。

    ※スイッチとは、サーバー間のネットワーク通信を担当する機器で、トップオブラックスイッチとはサーバーラックの上部にスイッチを配置したネットワーク構成のこと。現代でも一般的に見られる構成で、サーバーラック単位でネットワークを集約できるため、構成がシンプルで、保守性、拡張性に優れる。
    ※ポートとは、ネットワークケーブルを接続する接続口のこと。ポートの数が多ければより多くのサーバーなどの機器を接続できる。
    ※スケールアップとは、個々のサーバー等の性能を向上させ、システムを拡張していくこと。ここでは、システム内のクラスターを増強して拡張するという意味で使用している。
  • より拡張しやすくなったわけですね。

  • 伊勢

    全体的なネットワーク設計としては、クラスターどうしを集約する“集約スイッチ”を構成して、階層型の木構造(※)となるように構成しようと考えていました。この構造を取ると、システムを拡張したいときに、木の末端に枝を追加するような形でスケールアウト(※)することが容易になります。

    ※木構造(ツリー構造)とは、階層が深くなるほど木のように枝分かれしていくデータ構造のこと。
    ※スケールアウトとは、サーバーなどの機器を増設して、システムを拡張していくこと。

日本のネットインフラを踏まえて『FFXI』の仕様を決める

  • 『FFXI』のネットワーク仕様を決定するときは、当時の日本におけるネットワークインフラも考慮されたかと思います。具体的にはどのように決められていったのですか?

  • 伊勢

    そもそもオンラインゲームにおける通信内容のパターンについて、私自身がまったくわかっていませんでしたので、サーバープログラマーやクライアント開発者と頻繁にコミュニケーションを取っていましたね。そうしてアプリケーションへの理解を深めることで、ネットワークやサーバー設計に反映していきました。その結果わかったのは、『FFXI』のクライアントとサーバー間で行き来する情報は、キャラクターの位置を示す座標データや状態などの数値だけで、1プレイヤーあたり1500バイトを1秒間に3回やり取りすればいいということです。

  • 1500バイトですか。思ったよりも少ない(※)ですね。

    ※1.5キロバイトや0.0015メガバイトのほうがイメージしやすいだろうか。
  • 伊勢

    また、プレイオンラインの最大同時接続者数は、ひとまず25万人で想定しました。それを先ほどのひとりあたりのデータ量と掛け合わせると、『FFXI』のシステム側は1秒間あたり2.5ギガbpsが転送できる回線があればいい。これらの結果、当時のインフラ環境を踏まえても「ネットワーク回線そのものは、それほど太くなくていいんだな」という印象でした。

  • 『FFXI』はナローバンド(※)でもプレイ自体はできましたよね。

  • 伊勢

    はい。ただしネットワーク帯域の要求は小さかったとしても、パケットロス(※)が起こって一部の通信が失われてしまうと、キャラクターの移動時にワープしたように見えて、ゲームのスムーズさが損なわれてしまうと考えていました。そのため、サーバー側では帯域を調整してパケットロスを起きにくくしています。また、「クライアント側はFIFOバッファ(※)を活用したクライアントを利用するといいですよ」と開発者にアドバイスをしていましたね。通信の遅延も330ミリ(0.33)秒に1回、通信をやり取りするだけなので、オンライン対戦格闘のような“遅延は50ミリ(0.05)秒までしか許容できない”ゲームと比べるときびしくはなかったです。ですから、『FFXI』にとってもっとも重要だったのは、遅延よりもパケットロスを発生させないことでした。

    ※ナローバンドとは、公衆電話網を利用した通信や、ISDN等の低速のネットワーク接続のこと。とくにダイヤルアップと呼ばれた公衆電話網を利用したアナログ通信は、通信が切れやすかった。
    ※パケットロスとは、通信内容の一部または全部が損失してしまうこと。TCP/IPを使った通信は一定のデータ量の単位に分割され、この分割されたデータのことをパケットと呼ぶ。そのパケットが通信障害等で喪失してしまうと、その部分のデータも欠落してしまう。
    ※FIFOバッファとは、データの順序性を保証する仕組み。先に来たデータが後から来たデータに追い越され、ゲーム内で巻き戻って見えてしまうなどの事象を軽減させる。
  • ほかにも通信関係で課題になったことはありましたか?

  • 伊勢

    当時は、モデムによるダイヤルアップ接続のプレイヤーが多くなると予想していて、ナローバンドでも『FFXI』を遊べるように調整しました。でも、『FFXI』がアップデートを実施する際には大容量データをダウンロードする必要があり、ナローバンドだとどうしても長時間を要してしまうことが問題になっていたのです。

  • そればかりは回線スペックに依存せざるを得ない要素ですね……。

  • 伊勢

    ところが、これはまったくの偶然なのですが、『FFXI』が発売される直前の2000~2001年ごろに、ADSL(※)によるブロードバンドが急速に普及したのです。ナローバンドと比較するとダウンロードの速度が上昇するだけでなく、通信の信頼性も高まり、通信障害などに対するサポート方面の負担も大幅に軽くなりました。このADSLの普及により、多くの懸念が一気に解決しました。当時は、ナローバンド用の『FFXI』公認モデムをアイ・オー・データが作っていたのですが、ソフトバンクが大量にADSLモデムを無償で配布したので、いきなりADSLの時代が来てしまった、という感じでした。

    ※ADSLは大容量のブロードバンドインターネット接続が可能な高速デジタル通信。日本では2001年ごろに急速に普及していった。
  • 『FFXI』では“ラグ”も発生しにくいように感じていました。

  • 伊勢

    正直に言うと、“ラグ”はゲームのサーバープログラムとクライアントの設計による影響が大きいため、物理的なサーバーやネットワークはあまり影響を与えたり、受けたりしないのです。ですので、私たちとしては1500バイトの通信を確実に滞りなく届けられればよい、と考えていました。

  • その確実性を高めるために工夫されたことはありますか?

  • 伊勢

    私たちがネットワークで管理できる範囲は、“サーバーからインターネットに接続するためのルーターまで”であり、インターネットの中は各ISP(インターネットサービスプロバイダー。通信事業社)におまかせすることになります。そのため、あるISPで障害が発生してしまうと、関連するプレイヤーがゲームに接続できなくなってしまいます。その対応のため、国内のオンラインゲーム事業者としてはおそらく初めてではないかと思うのですが、AS番号を取得してIXに接続し(※)、各ISPに直接BGP(※)で通信を行うようにしました。これにより耐障害性を高めることができました。

    ※IXとは、インターネットエクスチェンジの略。ISPやコンテンツプロバイダーなどの相互接続用に用いられる。インターネット中のさまざまなISPを経由してユーザーに通信することより、効率的に通信することができ、特定のISPの障害を受けにくくする利点がある。そしてAS番号とは、IXに接続するために取得する必要がある、独立した自律ネットワークであることを示す番号。プレイオンラインや『FFXI』の場合は、2001年6月ごろに“PLAYONLINE”の名称で取得されている。
    ※BGPとは、ネットワークの経路情報を交換する通信方式のひとつ。組織間の通信に用いられる。
  • なお、当時は伊勢さん以外にも、ほかの開発者の皆さんの中でネットワーク技術に知見がある方はいらっしゃったのですか?

  • 伊勢

    同僚だった木村(木村正明氏。元『FFXI』エリアサーバープログラマー)が、PC向けの小規模なオンラインゲームの開発経験があったので、最初は彼と私でMMORPGにおいて想定されるネットワーク環境を検証しました。当時はまだプログラマーの方々でも、ネットワークに対する知識がほとんどなかったころですね。開発者とのミーティングで、メインプログラマーの成田賢さんから「たとえば1ギガバイトで入ってきた通信が100メガバイトで出ていくとして、出しきれなかったデータはどうなるの?」と聞かれたときも、「インターネットでは、送ることができなかったデータは全部捨てられます。インターネットとはそういうものです」と答えたら、「ええっ! 捨てるなんてアリなんですか!?」と非常にショックを受けられていたのが印象的でした。

  • いまでもエンドユーザーの多くはこの事実を知らないかもしれません(笑)。ほかにもサービス開始前に手掛けられたお仕事で、印象に残っていることがありましたらお聞かせください。

  • 伊勢

    ヴァナ・ディール・ウィンド(※)という『FFXI』内の風景をストリーミング配信するプロジェクトがあったのですが、それも広報スタッフからの依頼で私が担当しました。動画データを圧縮して配信可能な形式に変換し、配送プロトコル(※)を使用してCDN(※)まで送信するという運用でした。当時は24時間配信し続けるコンテンツ自体があまりなかったと思います。

    ※ヴァナ・ディール・ウィンドは2002年2月に“ライブラ”の名前でスタート。βテスト時代からヴァナ・ディールの風景をリアルタイムで配信していた。現在はYouTubeで“Live Vana'diel”として配信中。
    ※配送プロトコルとは、動画のストリーミング配信に使用する通信方法のこと。
    ※CDNとは、コンテンツデリバリーネットワークの略。大容量のライブ配信動画を通常の通信と同じようにインターネットで送信してしまうと、遅延などの問題によりスムーズに再生できないことがある。そのため、コンテンツ配信用の専用ネットワークが通信事業者などにより提供されている。
  • ちなみにですが、プロデューサーの田中さん(田中弘道氏。『FFXI』の初代プロデューサー)とは当時どんな話をされたのでしょうか?

  • 伊勢

    プロデューサーである田中さんは、“コンテンツとしての完成度”を高める役割でしたので、直接顔を突き合わせて話す機会はあまりなかったですね。ただ田中さんといえば、βテスト期間中のアクセスリスト(※)の更新でトラブルが発生した際に、お会いしたことをよく覚えています。あるメーカーのスイッチのアクセスリストの設定をコピー&ペーストした際の挙動が、“最初の1行で許可されている通信が有効になり、それ以外は全部拒否される仕様“になっていたんですよ。そのため、最初の1行が入った瞬間に、ほかの通信が全部落とされて、同時接続3500人くらいいたプレイヤーが一気に落とされてしまいました。

    ※アクセスリストとは、送信元や送信先、通信の内容により、通信を許可または遮断するネットワーク機器の機能のこと。
  • それはたいへんな事態ですね……。

  • 伊勢

    そのときは、田中さんが真っ青な顔で「何があったんだ!?」と私たちのところに飛び込んで来たのを覚えています。私も「あっ」と気づいて、「すみません……」と謝った記憶があります(苦笑)。

伊勢幸一 パート3へ

この記事をシェアする