レイヤ4スイッチ
出典: フリー百科事典『ウィキペディア(Wikipedia)』
レイヤ4スイッチ(L4スイッチ)は、ネットワーク機器の一種。
L3スイッチがIPヘッダまでの解析を行うのに対し、L4スイッチはTCPヘッダなどのプロトコルヘッダ内のポート番号や、セッションシーケンス番号などの情報を解析したり書換えを行うことで、ネットワークトラフィックの分散や、最適化を行うことを目的とした装置である。
目次 |
[編集] 使用例
最も身近なL4スイッチの使用例は、Googleキャッシュであろう。Googleは200台以上のキャッシュサーバを負荷分散することで、検索エンジンとしてずば抜けた高速処理を謳い文句に登場し、アメリカでは最も成長の早い企業の一つとしても認知されている。Google成長を影から支えていたのは、L4スイッチに他ならない。総じて全ての企業にも共通することだが、必要リソースを確保し、特定の部署に負荷が集中しないように分散し、全体が円滑に動作するように管理するのが役職者の役割である。L4スイッチの役割はこれと酷似していることが興味深い。よって、L4スイッチが動作不能に陥ると障害の影響範囲が大きいので、通常はスタンバイ構成で構築される。
[編集] 応用装置
- 負荷分散装置(ロードバランサ)
- 設置形態はL3スイッチと同様に、2つ以上の異なるネットワークセグメントを収容するように設置される。最小構成でもユーザ側のセグメントとサーバグループ側のセグメントの2セグメントとなる。Webサーバを始め、ファイアウォールや、DNS、SSLアクセラレータなどの負荷を分散する構成が組まれることが多い。すなわち、複数のサーバグループと、それぞれのグループに対応したIPアドレス/プロトコルのテーブルを管理しする。また、サーバに対してヘルスチェックと呼ばれる生死監視、セッション監視、サービス監視などを行うことにより、サーバリソースを最大限に円滑利用することを可能にする。ヘルスチェックの方式により、サーバ側に専用のソフトウェアをインストールする必要がある場合もある。
- 帯域制御装置 (QoS)
- 設置形態はL2スイッチと同様に設置される。したがって、EthernetフレームヘッダのMACアドレス部の扱いは通常のL2スイッチと同じである。通過するフレーム内の発信元/送信先のIPアドレスTCPポート番号を元にフィルタし、主にAckパケット内のTCPヘッダのシーケンス番号を書き換えることにより、受信Windowサイズ(RWIN)を変更することで送信ホスト側の送信ペースを制御する。これにより回線メディアを仮想的にパーティショニングし、アプリケーションごとに帯域を割り当てることを可能とする。負荷分散装置のサーバリソースの有効利用に対し、回線メディアの有効利用を目的とする。
- セッション最適化装置(オプティマイザ)
- TCPセッションのデフォルトのタイムアウトは6秒である。したがって、メディアの障害以外の処理負荷の問題でタイムアウトが生じた場合、クライアントは最低6秒を待たなければならない。また、そのような状態では再送も頻発することから、通信の効率が急速に低下し、ユーザの皆様はイライラが募ることになる。混雑時のタイムアウトで6秒待つよりも、全ユーザに1秒待っていただければ、全体の円滑な運用につながる。動作原理は帯域制御装置と殆ど同じだが、複雑な設定に悩むこともなく、中継のL2スイッチを置く感覚で設置できる。
[編集] メリット
- サーバの負荷を分散し、サーバ単価とハード保守費用を削減する。
- サーバ能力の拡張が、飛躍的に容易になる。
- 通信要件の異なる業務セッションを、同一経路に統合し、回線の使用効率を上げる。
- DoS攻撃などへの耐性が高まる。
[編集] デメリット
- 構築設計が高度になり、イニシャルコストが大きい。
- L4スイッチ自身にバグなどが含まれていると、障害切り分けが難しい。
- 短期間での構築切替が難しい。
- サーバのパッチ作業のボリウムが多くなる。
[編集] 分散アルゴリズム
- ラウンドロビン
- 単純に順番ごとにセッションを分散する方式。最も無難な方式であり、負荷も少ないが応用性も低い。
- ハッシュ
- ハッシュ関数を用いて、ソースIPアドレスを元にサーバを選択し、なるべく同じユーザは同じサーバへ接続するようにする意図がある場合に好んで用いられる方式。だが、プロキシ経由などでNAT越えをして接続するユーザが極端に多いと、うまくバランスされないことになる。
- リーストコネクション
- カレントセッション数の最も少ないサーバに接続する方式。セッションを開放したサーバに優先接続されるために、分散効率が良い。ただし、能力差のあるサーバを使って分散構成を組む場合は、能力の大きいサーバの稼動効率が落ちる。応答が障害レベルまでに遅くなったサーバに、優先接続されてしまうリスクもある。
- ファーストアンサー
- 最も応答の早いサーバに接続する方式。数年のスパンで拡張されるシステムであれば、世代の異なるサーバを使うことにならざるを得ず、サーバ単体能力に差が出て来る。こういった場合には、ファーストアンサーが有効である。
- L7分散
- HTTPパケットのCookie情報などを元に分散する方式。この時点でL4スイッチではなく、アプリケーション(L7)スイッチとしての動作になるが、2000年時点で殆どのL4スイッチに実装されている。ハッシュ方式と合わせて分散性を高めるために使われたり、マルチセッション時に同一サーバへの接続を維持したい場合に有効である。
[編集] 主なメーカー・商品
- ノーテル (nortel)
- alteon
- F5
- BIG-IP
- ファウンドリー (Foundry)
- ServerIron
- シスコ (Cisco)
- css
- Cytlix
- NetScarer