ファイナルファンタジーXIの仕組み(後編) | すーぱーSEへの道

ファイナルファンタジーXIの仕組み(後編)

さて、お客様が増えて緊張しつつの後編です。

前回、高速でデータの送受信をするために
UDPを使うというところまでお話ししました。

では実際のところ、FFXIはどのくらいの頻度でクライアントと
サーバの間での情報のやり取りをしているのでしょう?



答えは、『1秒間に約3回』です。



つまり、333ミリ秒に一回、

プレイヤが操作データを送信し
サーバが結果データを返信しています。

かなり頻繁に送受信してますよね。


送信処理をするための時間も含めての333ミリ秒ですから、
ネットワーク上を流れる速度をかなり高めないと
予定時間内にやり取りを完了させることはできません。

このやり取りの速度を高めるために、
スクエニのサーバとプレイヤーのプロバイダとの間の回線は、
ピアリングという方式で接続されています。




またまた用語解説になりますが、
プロバイダとインターネットを接続するときの仕組みには、
『トランジット』と『ピアリング』があります。


トランジットとは、

 親のプロバイダ
 →親から回線を借りている子のプロバイダ
 →→子から回線を借りている孫のプロバイダ

といった形でネットワークが接続されており、
孫プロバイダと契約しているプレイヤの場合、

 プレイヤのパソコン→孫→子→親→スクエニのサーバ

の順に回線を経由してサーバにたどり着きます。

そうすると、子と親のプロバイダを経由する分だけ
レスポンスが悪くなります。


ピアリングの場合は

 プレイヤのパソコン→プロバイダ→スクエニのサーバ

のように、直接プロバイダとスクエニが接続するため
レスポンスが格段によくなります。




FFXIの場合、333ミリ秒から送信処理時間を除いた250ミリ秒
ネットワーク内をデータが流れることができる限界時間としています。

つまり、プレイヤのPCとスクエニのサーバの間が
250ミリ秒以内で到達可能でなければいけないわけです。


ピアリングで直接つないでいると、
だいたい30~40ミリ秒でデータが到達しますので、
遅延が発生しても250ミリ秒まではだいぶ余裕があります。

しかし、トランジットの場合、全体の5%程度の
トラフィックが250ミリ秒ギリギリで相手先に到達します。


これでは、ちょっとした遅延の発生で、
データの欠けが生じてしまいます。


全プロバイダがスクエニとピアリング接続をしているわけでは
ありませんが、全体の70~80%くらいのプレイヤが
ピアリング接続によってスクエニとやり取りをしているようです。


今後もピアリング接続できるプロバイダを増やしていく
ようですから、そのうちすべての接続がピアリングに
なる日がくるのかもしれません。

そうなれば、ネットワーク遅延による
障害などは発生しなくなることでしょう。





最後にFFXIのサーバがどの程度の規模で
構成されているかについて書いてみます。

PlayOnlineでは、FFXIやフロントミッションオンラインなど
イロイロなゲームを合計2000台のサーバで運営しています。

この2000台の中には、アップデートサーバや
認証サーバなども含まれていますが、
そのほとんどはゲームサーバとして運用されています。

また、サーバの設置スペース自体はまだ残り半分が
将来のタメに用意されているそうなので、
最大で3000~4000台のサーバが設置できるように
なっているようです。

ゲームとはいえ、ものすごい規模のシステムですね。


FFXIをプレイされる方は、『すげー技術使ってんだなぁ』と
プレイ前にスクエニのエンジニアさんたちに
お礼と感謝の念をささげてからプレイするようにしましょう(^-^)/