コネクション及び帯域制限について

コネクション及び帯域制限について
20090103
PHP 鯖蓮あぷろだ のアップロードファイルが格納されているディレクトリに対して、以下の通り
接続及び帯域制限を掛けております。

アップロードされたファイルへコネクションはいくらでも張れますが、2 を超えるコネクションに
対しては HTTP 503 Error が返されます。
このエラーを頻繁に発生させるクライアントはアク菌(*1)の対象となりますので、十分にご注意ください。
(*1:アクセス禁止の略)

帯域制限:
以下の拡張子を持つファイルに対しては帯域制限が掛かります。
GET メソッド等の Outcoming トラフィックに対して機能するようなので、アップロード等の
POST PUT メソッドの場合はこの制限は掛からないようです。

画像ファイル
bmp jpg jpeg gif png tif
256 KBytes 以上のファイルの場合、毎秒 32 KBytes に制限されます。

動画ファイル
avi flv mpeg mpg mov wmv divx
1 MBytes 以上のファイルの場合、毎秒 32 KBytes に制限されます。

音声ファイル
mp3 wav
1 MBytes 以上のファイルの場合、毎秒 32 KBytes に制限されます。

書庫ファイル
zip lzh 7z rar
1 MBytes 以上のファイルの場合、毎秒 32 KBytes に制限されます。

• Maximum upload size per file : 1,024 MBytes
• Maximum parallel download : 2
• Wait time before the download begins : 0 seconds (Instant)
• Support for resuming uploads : no
• Support for resuming downloads : yes
• Download limit per 24 hours : Unlimited
• Download speed :
   bmp jpg jpeg gif png tif : 32KBytes/s (When file size is larger than 256KBytes)
   avi flv mpeg mpg mov wmv divx mp3 wav zip lzh 7z rar : 32KBytes/s (When file size is larger than 1MBytes)


Tips:
以下は適当な根拠を元に記しているので妄信しないでくださいです。
必ずご自身で裏を取りましょう。
誤り等のご指摘を歓迎します。

ネットワークを利用するサービスを提供する場合、QoS や帯域制限は必須です。
その理由は単純明快で、回線が飽和しますとその回線を利用している全ての通信が不安定となるからです。
特に同じプロトコルを利用した通信への影響が顕著に現れます。
回線の飽和とは、その回線の最大帯域が 100Mbps であった場合、特定若しくは複数のプロトコルによる
通信にて 100Mbps の通信が行われている状態を言います。

厳密に言えば、ある一つの回線を複数の送信元が使う場合、搬送周波数を異なるものとすれば各送信元は
互いに干渉し合うこと無く最大転送速度で通信を行う事が出来ます。分かりやすい例としてはラジオ放送や
無線通信が挙げられます。これらは電波を使いそれぞれが同じ回線(通信経路)を使っていますが、互いに干渉せず
快適に利用する事が出来ます。この場合の回線は「地球上の全ての空間」となり「空中線」と呼ばれています。
それぞれは同じ空気中を転送経路として利用しているので、仮にこれらを一本の線を使うようにしたとしても
何ら問題は発生しません。
もう一本線はどこへ行ったのか疑問を持たれる賢明な方も居られると思います。
確かにもう一本の線は必要です。その線は実際に存在しており、地球がその役割を果たしています。

ところがコンピュータ間の通信で一般的な IEEE 802 系列は無線型と光型 LAN を除き別の話になるようです。
あまり詳しくは理解できていないので断言は出来ませんが、有線型 LAN は無線型や光型 LAN と違い搬送波と言う
概念が無い模様なので、複数の転送元が最大 1000Mbps までの転送に対応した一つの回線を使う場合、転送元の
どれか一つでも 1000Mbps で通信を行ってしまうと他の転送元は通信が出来なくなってしまいます。
プロトコルを換えたとしても状況は変わりません。

帯域制限を掛けずにサーバ及びクライアントの各機器が性能上出し得る事が出来る最大速度でファイルを
ダウンロードしてもらい、サーバとの接続時間の短縮を期待するといった選択肢もありますが、この手段は
適用中に回線が飽和してしまった場合には最悪の選択肢となってしまいます。

多くのクライアントに安定した通信を提供できるようにするには、最低でも回線能力を考慮した帯域制限の
実施やコネクション数制御が必須であると考えます。

[戻る]