OSPFのエリアってどんなの?
目次
OSPFは大規模ネットワーク向けといっても・・・
OSPFは大規模なネットワークに対応するために開発されたとはいえ、なにも考えずに導入しただけでは、そのメリットを十分に活かすことはできません。
OSPFで大規模なネットワークをサポートするために必要な概念が
「エリア」
です。
大規模なOSPFネットワークの問題点
OSPFはひとつの自律システムの内部で利用されるIGPsの一種です。自律システム内のOSPFネットワークがどんどん大規模になって、たとえばルータが数百台にもなったときを考えてみましょう。このような非常に大規模なネットワークにおいて、以下のような問題点が考えられます。
- ネットワーク上を流れるLSAの増大
- リンクステートデータベースが大きい
- ルーティングテーブルが大きい
- ネットワーク内の変更による影響が増大
- ルータのメモリ、CPU負荷が増大
OSPFでは、各ルータはリンクステート情報(LSA)を交換しているわけですが、もちろんルータの数とルータが持つネットワークの数が増えれば増えるほど、LSAの数が増えていきます。すると、LSAの交換でかなりのネットワーク帯域を圧迫してしまうことになります。
LSAが増えるということは、ネットワークの帯域を圧迫するだけでなく、各ルータが保持しているリンクステートデータベースのサイズも大きくなってしまいます。さらに、リンクステートデータベースからルーティングテーブルを計算するわけですから、必然的にルーティングテーブルのサイズが大きくなります。それだけでなく、SPFアルゴリズムによって、ルーティングテーブルの計算に要する時間も増えてしまいます。
また、ネットワーク内に変更があった場合、その変更を検出したルータは他のOSPFルータにフラッディングして、ネットワーク全体でリンクステートデータベースの同期を保たなければいけません。そのため、ある一部分の変更がネットワーク全体に影響を及ぼすことになります。
もし、一部のネットワークがアップ、ダウンを繰り返すような状況が発生すれば(これをフラッピングといいます)、そのたびにLSAがたくさん発生し、リンクステートデータベースからルーティングテーブルの計算が頻発してしまう事態になってしまいます。SPF計算はかなりルータのCPUに負荷をかけてしまうので、SPF計算だけで手一杯になってしまって他の処理ができなくなってしまう可能性があります。
こういった大規模なOSPFネットワークに起こりうるさまざまな問題点を解決するためには、「エリア」と呼ばれる概念が非常に重要です。OSPFネットワークを適切なエリアに分割することによって、大規模なネットワークに対応します。
エリアとは?
OSPFネットワークをエリアに分割すると、エリア内のルータ同士だけがLSAを交換して同一のリンクステートデータベースを保持し、エリア内のネットワークについては詳細な情報を持ちます。つまり、エリアとは
「同一のリンクステートデータベースを持つルータの集合」
と捉えることができます。他のエリア内のネットワークに到達するためには、エリアとエリアを接続する「エリア境界ルータ(Area Border Router : ABR)」と呼ばれるルータを経由します。
ABRは複数のエリアに所属するルータであり、所属しているエリアごとのリンクステートデータベースを持っています。他のエリアにあるネットワークの情報については、詳細な情報をエリア内に通知するのではなく、集約ルートもしくはデフォルトルートを通知することで、エリア内のルータのリンクステートデータベースやルーティングテーブルのサイズを小さくすることができます。
また、他のエリアの詳細な情報が流れないということは、他のエリアにあるネットワークの変更によって、リンクステートデータベースの同期をとり、SPFアルゴリズムでルーティングテーブルの計算を行う必要がありません。そのため、ルータに余計な負荷をかけることもなくなります。
このように見てみると、OSPFネットワークにおいてはエリアの設計がとても重要になることがわかるでしょう。
OSPFネットワークを複数のエリアに分割する際には、決まりがあります。それは、各エリアは必ずバックボーンエリアに隣接していなくてはいけないということです。
OSPFのエリアには、いろんな種類があり、バックボーンエリアもそのうちのひとつです。バックボーンエリアはエリア番号0ですべてのエリアを接続する中心となるエリアです。エリア間のトラフィックはすべてバックボーンエリアを経由することになります。
すべてのエリアがバックボーンエリアに隣接することから、必然的にOSPFのエリアは階層型の構成をとることになります。IPアドレッシングを階層型の構成にし、それをうまくOSPFのエリア構成に当てはめてルートの集約をできるようにすることが、OSPFネットワークを設計する上でのポイントと言えます。
ただし、物理的にバックボーンエリアに接続できないエリアが出てくるかもしれません。そのときには、「バーチャルリンク」というリンクを介してバックボーンエリアに仮想的に隣接させることができます。