こっそり聞きたいネットワークのキホン(第13回)

ネットワークの冗長化と強固な冗長構造を解説

 インターネットが完全に普及していない時代では、多少の遅延やシステムエラーが起きてネットワークが使用できなくなってもそれほど問題はありませんでした。しかし、ネットワークの普及が進んだ現代社会では、数秒でもネットワークが使用できなくなると大きな問題となる可能性があります。そこで、多くの企業はシステム障害時もネットワークが使用できるようにしています。これを冗長化と呼びます。この記事では、冗長構造と各レイヤーの冗長化方法について具体的に解説します。

冗長化の重要性

 冗長化とは、コンピュータやシステムの予備を準備することです。たとえばシステムに障害が発生した場合に供え、他のコンピュータでシステムのバックアップを行っておきます。すると、実際に障害が起きた場合も、瞬時に他システムへ切り替えることができ、そのシステムは維持されます。このように、予備のシステムを用意しておく方法は「二重化」と呼びます。

 システムが冗長化されていなければ、緊急時にシステムがダウンしてしまい、最悪の場合は社内の機密情報や財産、信頼を失うことになりかねません。システムを維持し、情報漏えいや企業活動の停止を防ぐためにも、システムを冗長化して万が一に備えておく必要があります。

レイヤー別の冗長化

 冗長化はレイヤー別に行い、それぞれに方法が異なります。レイヤー別の冗長化のやり方について解説します。

レイヤー1(物理層)

 レイヤー1とは物理層のことです。LANケーブルやコネクタなどの物理的な接続についてのルールが定められています。レイヤー1の冗長化は「電源冗長」が一般的です。電源冗長とは、ネットワーク機器やサーバーに電源を複数搭載する方法です。

レイヤー2(データリンク層)

 レイヤー2はデータリンク層と呼ばれます。直接的に接続された機器への信号の処理を行い、データの受け渡しを管理しています。レイヤー2の冗長化には、以下の4つの方法があります。

チーミング(NICの冗長化)

 チーミングとは、1つの機器に挿入された複数のNICを疑似的に一本化する方法です。NICとはLANケーブルなどを接続し、ネットワークへアクセスする際に必要な機器のことです。チーミングの種類には「フォールトトレランス」「ロードバランシング」「リングアグリゲーション」があります。

 いずれもサーバーなどへ物理的に接続したNICを仮想的に束ねる方法で、たとえば1つの接続したNICが故障しても、他のNICが作動することによって防ぐことができます。チーミングには耐障害性を高める効果と帯域拡張効果があるので、積極的に導入を検討さうるとよいでしょう。なお、チーミングを利用するには、物理NICとドライバがチーミングに対応している必要があります。

リンクアグリゲーション(スイッチポートの冗長化)

 リンクアグリゲーションとは、複数の物理リンクを束ねて1つの論理リンクにまとめる技術です。2つのリンクを1つの大きなリンクとして扱うことが可能となるため、処理スピードを上げることができます。

 さらに、片方のリンクに万が一障害が発生したとしても、もう片方のリンクに切り替えてシステムを使用することができます。

スパニングツリープロトコル(経路の冗長化)

 スパニングツリープロトコルは、「STP」と略して表記されることもあります。STPはループ上に形成されたネットワークにて、データが永続的に流れないようにするプロトコルです。簡単に言えば、ループ状に構成されたネットワークの一角を論理的に切断し、データが繰り返しループしないようにします。

 STPを設定することで、「フラッディング」や「ブロードキャストストーム」を回避することができます。フラッディングとは「洪水・氾濫」を意味し、膨大なデータが全ポートに送信されることでネットワーク内の情報が氾濫し、システム全体が麻痺に陥る状態です。

 ブロードキャストストリームとは、ネットワーク内で一斉送信用の特殊データや信号が転送され続ける現象です。最終的に帯域を使い尽くしてネットワークのダウンを引き起こします。ネットワークで信号が無限ループすることが原因であり、STPを設定することで防ぐことができます。

スタック(スイッチの冗長化)

 スタックとは、複数のスイッチを仮想的に1台のスイッチとして扱う技術です。1つのスイッチに障害が発生しても、残りのスイッチによってネットワークが維持されます。そのため、スタックは信頼性が向上するというメリットがあります。

 さらに、スタック接続されたスイッチは一括で管理ができるようになるというメリットもあります。ただし、スタック接続を行うときはスイッチ同士が同じバージョンである必要があります。

レイヤー3(ネットワーク層)

 レイヤー3は、ネットワーク層と呼ばれています。ネットワークのデータ中継と通信経路の選択をする層であり、目的の機器への信号の受け渡しを行っています。レイヤー3の冗長化には、主に以下の2つの方法があります。

VRRP・HSRP(ルーターの冗長化)

 VRRPとHSRPは、どちらもルーターの冗長化の1種です。ルーターの冗長化とは、複数のルーターを1台のルーターとして扱う技術です。複数のルーターを仮想的に1台とすることで個々の管理を行う負担が減り、さらに1台に障害が起きたときには他のルーターが起動することでネットワークの維持を図ります。メインのルーターは、冗長化の対象となるルーターの中で最もスペックが高いものが選ばれます。

 HSRPは、システムコムズというベンダー企業が開発したシステムです。「Hot Standby Router Protocol」の略で、予備のルーターが万が一に備えていつでも作動できるようにスタンバイしています。システムコムズの技術であるため、同社以外のルーターでは利用できません。

 VRRPはシステムコムズ社以外のメーカーの製品を使って、ルーターを冗長化する方法です。「Virtual Router Redundancy Protocol」の略であり、仕組みはHSRPとほぼ同じです。つまり、HSRPとVRRPの違いは、「システムコムズ社製品かそれ以外か」という点です。

ECMP(サーバーの冗長化)

 ECMPとは、同コストの経路が複数ある場合、すべての通信経路に負荷を分散させる方法です。ECMPには「Par packet ECMP」と「Par flow ECMP」の二種類があります。

 「Par packet ECMP」は、パケットごとに経路を分散させる方法です。効率的に負荷を分散できる一方、電波障害などに弱く、パケットの追い越しが発生するなどの問題が起きやすいというデメリットがあります。

 「Par flow ECMP」はフローごとに経路分散される方法で、一般的によく利用されています。負荷分散に偏りがあるものの、「Par packet ECMP」が持つデメリットを克服しています。

レイヤー4(トランスポート層)・レイヤー7(アプリケーション層)

 レイヤー4はトランスポート層と呼ばれ、目的の機器に信号を正確に受け渡すためのルールが定められています。レイヤー7はアプリケーション層と呼ばれ、ネットワークを利用するソフトについてのルールが定められています。レイヤー4とレイヤー7の冗長化には、それぞれ「DSR」と「リバースプロキシ」が用いられます。

DSR(サーバーの冗長化)

 DSRはレイヤー4のみで行える冗長化で、戻りパケットに関与しない負荷分散の方式です。サーバーからの戻りパケットをロードバランサを経由せず直接クライアントに転送するため、リソースに余裕を持たせ、パフォーマンスを向上させることが可能です。

 一方、レイヤー4でしか利用できないため、ロードバランサで、レイヤー7の情報に基づいた負荷分散やSSL終端ができないというデメリットや、リアルサーバでVIPの設定が必要というデメリットがあります。

リバースプロキシ(サーバーの冗長化)

 リバースプロキシはL7における冗長化の方法です。簡単に言えば、ウェブサーバーの代理として外部からのアクセスに応答するサーバーのことです。リバースプロキシをウェブサーバーの身代わりにできるため、外部からの不正アクセスからウェブサーバー本体を保護できるというメリットがあります。

 さらに、1台のリバースプロキシに対し複数のウェブサーバーを接続できるため、各ウェブサーバーの負荷を分散させるとともに管理を一元化できるというメリットがあります。

 一方で、同時に多量のアクセスが行われると通信速度が低下したり、プロキシサーバーに障害が発生するとインターネット通信ができなくなるデメリットがあります。さらに、設定にコストがかかるというのもデメリットです。

さまざまなシステム障害を想定した冗長構成が必要

 冗長化は、サーバー・経路・スイッチ・ルーターなど、さまざまな機器で行う必要があります。冗長化には多少のコストがかかりますが、自社のシステムと情報・財産を守るために必要です。各機器における冗長化のメリット・デメリットを検討しながら、自社のシステムに適合した方法を選択してください。

連載記事一覧

メルマガ登録


NTT EAST DX SOLUTION


ミライeまち.com


「ビジネスの最適解」をお届けします 無料ダウンロード資料


イベント・セミナー情報

ページトップへ

ページ上部へ戻る