2009年12月30日水曜日

Mozilla.orgのミラーネットワーク

このエントリーをはてなブックマークに追加
以前のエントリでも取り上げましたが、Firefoxのダウンロードやアップデートのアクセスは、国や地域に関係なく世界中のミラーサーバに振り分けられます。この負荷分散を行っているのがBouncerと呼ばれるプログラムです。Bouncerは各サーバに割り当てられたウェイトに基づいて負荷を割り振ります。各サーバの稼働状況も確認して、止まっているサーバへの割り当てを止めたり、過負荷のサーバのウェイトを下げたりもします。

ウェイトは自己申告です。大きすぎてさばききれなければ、Bouncerがそれを検出して徐々に下げます。あまりにもつらければ、IRCで下げてーって叫ぶと手動で下げてくれます。平時とピークの差があまりにも大きいので、平時の負荷に合わせてウェイトを申告するとピーク時に軽く死ねます。

2009年12月28日22時45分時点の各サーバのウェイトと状態のBouncerによる集計結果がこの表です。リクエストを送ってから5秒以内に正常なレスポンスが返れば緑、そうでなければピンク、DNSで引けなければ青紫です。このデータは平時なのでほとんど緑ですが、ピーク時はピンクがたくさん付きます。

25000という桁違いに大きなウェイトを引き受けているのは、VoxelというCDN屋さんです。ftp.jaist.ac.jpは全体の5%に相当する、4050という3番目に大きなウェイトを引き受けています。最初は上位のサーバがもっといたのですが、どんどん脱落していきました。Voxelですら、前回のピークではウェイトを3000に下げていました。我々は4500からBouncerによって4050に引き下げられました。

ftp.jaist.ac.jpがこれだけ大きなウェイトを引き受けられるのは、使えるネットワーク帯域が潤沢でサーバが高性能だからですが、それより大きいのが日本にあるからです。欧米と活動時間帯がずれていて、ピークのトラフィックが他に与える影響がほとんどないから引き受けられるのです。

もし前回のピークが日中に来ていたら、他のミラーどころか、JAISTの業務に支障をきたしていたでしょう。一時的とはいえ早朝にSINET線を真っ黒にしたのは、24時間利用可能なインフラを損ねたという点で、支障をきたしていたと言っていいかもしれません。

大きなウェイトを引き受けているのは、日本のユーザのアクセスが少しでも多く日本のサーバで快適に処理されるようにするためです。そして、ftp.jaist.ac.jpの耐久試験のためでもありますが、欧米のアクセスで紐を真っ黒にするためではありません。Bouncerが自国のサーバを優先するようにしてくれれば、我々はウェイトを引き下げるでしょう。

実はBouncerには、以前から地域に基づいた割り当てを行う仕掛けはあったらしく、前回のアップデート後に5%を域内に割り当てる設定がされました。そこで我々は、日本からのアクセスは100%日本に割り当てるように求めました。しかし、割り当ての単位はアジアとか、北米といった地域の単位でしかできないと言われてしまいました。

サーバの一覧とウェイトを見る限り、アジアは域内で100%でさばける気がしますし、その代わり北米やヨーロッパは域内で25%くらい持ってもいい気もします。その裏付けを取るためにトラフィックデータを分析してみました。

その分析結果がこの表です。最初の列が日付と時刻(JST)、次がその時刻から30分間のMozilla.org向けの平均使用帯域(Mbps)、以降はその使用帯域の国別の内訳で、上位5カ国の3文字コードとその使用帯域の順に並んでいます。ログには転送の開始時刻とバイト数しかありませんから、開始と同時に転送が終了したものとしています。アップデートファイルは2MB程度ですので、それほど誤差はないと思います。

アップデートの開始は現地時間(PST)で15日の午後遅くとされています。使用帯域が倍に跳ね上がっていることから、日本時間の午前10時から10時半の間に始まったのでしょう。時差による順位の変動はあるものの、ほとんどの時間帯で北米、西欧、南米が上位を占めています。特にアメリカからのアクセスが圧倒的です。アジアでは日本を上回るアクセスがインドネシアからあることがわかります。

ftp.jaist.ac.jpが引き受けていた割合を5%とするなら、ピーク時に全体で35.4Gbps、アメリカだけで10Gbps必要だったことになります。ピーク時は死んでいるサーバが多かったり、Voxelがウェイトを下げていたりしたので、実際にはftp.jaist.ac.jpはもっと多くを引き受けていました。したがって、全体の帯域はもっと少ないはずです。

とはいえ、北米、西欧、南米のアクセスは、ほかの地域で支える必要がありますし、アジアのトラフィックを100%アジアに集めてしまうと、アジアがそれをできなくなる可能性があります。このバランス調整はかなり難しそうです。

来年早々次のアップデートがあります。次回は5%を域内に割り当てる設定が入った最初のアップデートになります。そのデータを見て、どのような提案をMozilla.orgにするか考えたいと思います。もうかったるいので、何もしないかもしれませんけどね。我々には何の義理もありませんし。

これが今年最後のエントリです。皆様良いお年を。来年もftp.jaist.ac.jpをよろしくお願いします。

0 件のコメント:

コメントを投稿