OSPFの概要OSPFはIETF(Internet Engineering Task Force)標準のリンクステート型ルーティングプロトコルです。OSPFはRIPなどのディスタンスベクタ型ルーティングプロトコルのさまざまな制限をなくし、より大規模なネットワークで効率のよいルーティングを行うために開発されています。 今回は、OSPFの概要とその特徴についてご紹介します。 ※ディスタンスベクタ型、リンクステート型ルーティングプロトコルについて 「ルーティングプロトコルの分類その2」 |
OSPFの歴史OSPFは1980年代のなかばから、RIPに取って代わるルーティングプロトコルとして開発が進められました。RIPでは、次のようないくつかの制限がありました。 ・ホップ数の制限 ・コンバージェンス時間が長い ・定期的なブロードキャストでネットワークに負荷を与える ・ルーティングループ発生の可能性 OSPFでは、こういったRIPのさまざまな制限をなくし、より大規模なネットワークにおいて効率よくルーティングすることを目的としています。 1987年にIETFによって、OSPFの標準化が開始され1989年にRFC1131としてOSPFv1が公開されています。OSPFv1をさらに発展させて、1991年にOSPFv2が標準化されています。OSPFv2は以降もさまざまな機能が盛り込まれ、1998年にRFC2328が公開されています。これ以降もMPLS(Multi Protocol Label Switching)との相互作用やIPv6への対応など、さまざまな拡張が行われていく予定です。 v1、v2の2つのバージョンがありますが、一般にOSPFといえば、OSPFv2を指していると考えてください。 |
OSPFの特徴OSPFの特徴は次のようになります。 ・IGPs ・リンクステート型ルーティングプロトコル ・効率よいルーティングのための「エリア」の概念 ・クラスレスルーティングプロトコル ・ルーティングテーブルのコンバージェンス時間が短い ・ループが発生する可能性が極めて小さい ・メトリックとして「コスト」を採用 ・コンバージェンス時は、Helloプロトコルによる定期的なキープアライブ ・ネットワークの変更があったときだけルーティング情報を送信 ・マルチキャストによる通信 ・認証機能のサポート ・CPU、メモリの使用率が高い ・きちんとしたアドレス設計が必要 OSPFは、RIPやIGRPと同じくAS内部のルーティングを対象としたIGPsの一種です。ただし、RIPやIGRPよりも大規模なネットワークを主な対象としています。 ※IGPって何?って方はこちらをご覧ください↓ 「ルーティングプロトコルの分類」 ルーティングアルゴリズムは、リンクステート型です。リンクステート型では、ルーティングテーブルではなく、各ルータのインタフェースの情報(リンクステート情報)を交換します。リンクステート情報は「LSA(Link State Advertisement)」とも呼ばれ、ルータが持つインタフェースの種類、そのインタフェースのIPアドレス、インタフェースのコスト、接続されているネットワークのタイプなどが含まれます。LSAから、ネットワーク全体の地図を表すリンクステートデータベースを作成し、SPF(Shortest Path Fast)アルゴリズムから各ルータを起点とした最短パスツリーを計算してルーティングテーブルを作成します。 リンクステートデータベースは、すべてのルータで共通です。ですから、非常に大規模なネットワークでは、交換されるリンクステート情報の数が非常に多くなり、それにともなってリンクステートデータベースサイズが巨大になります。その結果、ルータのCPUサイクルやメモリを消費することになるので、好ましくありません。 このようなことを解消するために、OSPFでは「エリア」という概念を取り入れて、大規模ネットワークでより効率よくルーティングできるように考えられています。 また、LSAの中にはサブネットマスクも含まれているのでクラスレスルーティングプロトコルです。そのため、RIPやIGRPといったクラスフルルーティングプロトコルではサポートできなかったVLSMや不連続サブネットをサポートすることが可能です。 すべてのルータが共通のネットワークの地図、つまりリンクステートデータベースを持っていることによって、何か変更が起こったときでもすぐに各ルータが変更を認識することができます。したがって、ディスタンスベクタ型ルーティングプロトコルよりもはるかに高速にコンバージェンスさせることが可能です。 コンバージェンスが高速であるために、RIPなどでみられたような間違った情報によってルーティングループが発生する可能性はほとんどありません。各OSPFルータは、ネットワーク全体の地図を持っているということも、ループが発生する可能性が極めて小さくなることにつながります。 ※RIPでルーティングループが発生する例はこちら↓ 「ルーティングループ」 OSPFの経路選択の基準としてメトリックは、コストを採用しています。コストはネットワーク管理者が設定することができるのですが、シスコルータの実装ではインタフェースの帯域幅から自動的に計算されます。多くの他のベンダもシスコルータの帯域幅を反映したコスト計算を採用しています。帯域幅が大きいほどコストの値が小さくなるので、OSPFが選択する経路は標準では、帯域幅が最も大きい経路となります。 OSPFルータ同士の情報交換は、変更があったときのみ送信します。それ以外は、定期的にHelloプロトコルと呼ばれるプロトコルによって、他のルータが正常に動作しているかどうかを確認するキープアライブを行っています。そのため、ネットワークが安定している場合には、OSPFは非常に「静かな」ルーティングプロトコルであるといえます。 また、OSPFルータ同士のやり取りはブロードキャストではなく、マルチキャストで行われるので、ネットワーク上のほかのコンピュータやOSPFを有効にしていないルータなどに余計な負荷をかけることもありません。 セキュリティを向上させるために、OSPFでは認証機能のサポートも行っています。認証はクリアテキストの方式と、MD5によるハッシュ値での認証の2通りあります。 以上のように、OSPFを利用することによるさまざまなメリットがあります。しかし、デメリットももちろんあります。 OSPFでのSPF計算は非常にルータのCPUに負荷をかけます。また、大規模なネットワークではリンクステートデータベースが多くのメモリを消費することになります。したがって、RIPよりもより高性能なルータが必要です。 また、安定したネットワークにするためには、あらかじめきちんと階層型のネットワーク構成をとり、エリア設計を検討することがとても重要です。階層型ネットワーク構成をとることによって、適切な経路集約を行うことができるようになります。その結果、ルータがやり取りするLSAが少なくなり、ルーティングテーブルサイズも小さくなります。もし、ネットワーク構成があまり考えられていないと、SPF計算が頻発したり、リンクステートデータベースが巨大になってしまったりします。 このような設計と構築の難しさもOSPFのデメリットと考えられるかもしれません。 |
(C) Copyright 2000-2004 Gene All Rights Reserved