OSPFとは?ディスタンスベクタ型とリンクステート型の違いは?DR、コストって何?IT初心者にもわかりやすく解説!

3分でわかるIT基礎用語
記事上広告

OSPFとは、自動でルーティングを決定するプロトコルの一つで、多くの企業内ネットワークで用いられているプロトコルです。しかし、このOSPFはリンクステート型やディスタンスベクタ、LSA、コストなどなど関連する単語が多く、初心者にはわかりづらことも多いかと思います。

そこで、この記事では、OSPFの特徴、仕組みを初心者の方にもわかりやすく解説します。

OSPFとは?

OSPFとは、一言で言うと、リンクステート型のダイナミックルーティングプロトコルです。

といってもなんじゃそりゃ!?という感じだと思うので、順を追って説明します。

まず、ルーティングプロトコルと呼ばれる通信のルートを決定する方法には、静的(スタティック)と呼ばれる人間が手動でルートを登録する方法と、動的(ダイナミック)と呼ばれるルータ等の機器が基準をもとに自動でルートを決定する方法の2種類があります。

このうち動的(ダイナミック)にOSPFはあたるのですが、このダイナミックルーティングプロトコルにも、大きく分けて「IGP」と「EGP」の2種類があります。

この2種類の違いは、AS内部のルーティングか、AS外部のルーティングか、ということです。

ASとは、「Autonomous System」の略称で、企業内ネットワークなど一つの大きなネットワークの固まりを指します。それぞれのネットワークの固まりにはAS番号と呼ばれる番号が付けられ、識別します。

そして、このAS内部のルーティングであるIGPの中にも、ディスタンスベクター型リンクステート型で2種類あります。

■ルーティングプロトコルの種類

ルーティング静的ルーティングデフォルトルート
動的ルーティングIGPディスタンスベクター型RIP
リンクステート型OSPF
EGPBGP

ちなみにEGPの一種であるBGPについてはこちらの記事で詳しく解説しているので、合わせて読んでみてください。

ディスタンスベクタ型とリンクステート型の違いは?

ディスタンスベクタ型とは?

まず、ディスタンスベクタ型は、「ディスタンス=距離」という名の通り、ルータが宛先機器までの距離情報を交換し、距離が最短のルートを選ぶというシンプルな仕組みです。

ルータの負荷が軽いのはメリットですが、距離情報を毎回ブルードキャストで送信するためトラフィックが発生しやすく、機器の台数の多い大規模ネットワークにはあまり向きません。

ディスタンスベクタの代表的なプロトコルには、RIPv2EIGRPなどがあります。

リンクステート型とは?

次に、今回のOSPFも含むリンクステートです。リンクステートは、隣接するルータのインタフェース情報を送信し、そのデータベースを元に、最短経路を決定する方法です。

「AルータはBルータと隣接していて、距離は3km」「BルータはCルータと隣接していて、距離は5km」と言った情報を集め、「じゃあAルータからCルータの最短ルートはBルータを経由するルートだ」といったような流れでルートを決定していきます。

ディスタンスベクタより計算方法が複雑なのでルータの負荷は大きいものの、送信する情報自体はディスタンスベクタよりも少ないです。そしてこのリンクステートの代表的なプロトコルは、今回の記事のOSPFIS-ISが挙げられます。

OSPFの特徴とは?

OSPFとは何かについて、ここまで少し細分化して説明しましたが、次は具体的にどんな特徴があるのか解説していきます。

①リンクステート型

一つ目は、リンクステート型のプロトコルだということです。先ほども説明しましたが、リンクステート型は、隣接するルータの情報を送信し、そのデータベースを元に、最短経路を決定します。

②エリアの概念

二つ目は、エリアという概念があることです。OSPFでは、それぞれ隣接するルータのインターフェイス情報を送り合うため、ルータの台数が多いと、その分情報も多くなります。そこで、ネットワークをエリアと呼ばれる単位に分けエリア間はルート情報だけの交換にすることで、階層的に情報を管理することができるようになります。

③トラフィック量の軽減

三つ目が、トラフィック量の軽減です。

ディスタンスベクタ型は定期的に距離情報をブロードキャストで送信するのに対して、OSPFは普段は生存確認の応答だけで、ネットワーク機器の追加や故障時など、何か変化がある時のみ情報のアップデートを行うため、トラフィック量が軽減されます。

④コンバージョンが速い

4つ目が、コンバージョンが速いことです。3つ目のトラフィック量の軽減に付随しますが、変化がある際にその部分だけアップデートを行うため、ディスタンスベクタに比べ扱うデータ量が少なくコンバージョンが速くなります。

OSPFの構成要素は?

代表ルータ(DR)とバックアップ代表ルータ(BDR)とは?

先ほど説明した通り、それぞれのルータは隣接するルータの情報を送りますが、その情報の送信先はすべてのルータではなく、DR(Designated router)と呼ばれる代表ルータに情報を送る仕組みになっています。また、そのDRルータが故障した時用に、バックアップとしてBDR(Backup Designated Router)も登録されます。ちなみに、DRにもBDRにも選ばれなかった情報を送るのみのルータは、DROTHERと言います。

このDRとBDRは、「OSPFプライオリティ値」が高いものが選ばれます。このプライオリティ値は、0~255の数字で設定され、プライオリティ値が0の場合は、DR、BDRには選出されません。もしすべてのルータのプライオリティ値が同じ場合は、ROUTERIDが最大のものが選ばれます。

LSAとLSDBとは?

LSAは「Link State Advertisement」、LSDBは「Link State Data Base」の略称で、一言で言うと、LSAは「DROTHERが送る隣接ルータの情報」のこと、LSDBは「DRに貯められる、各ルータから送られてきたLSAを集めたデータベース」のことです。

なお、このLSDBをもとに作成されるネットワークの全体図のことを、「トポロジマップ」と言います。

コスト値とは?

LSAによって各ルータの隣接情報が集められたのち、最適なルートを決定するための基準として用いられるのが、コスト値です。OSPFでは、各インターフェイスにコスト値が設定されます。

コスト値は、「100Mbps(108bps)÷リンクの帯域幅」で計算され、自動で設定されます。他のルーティングプロトコルでは、単純なホップ数(経由するルータの数)などを基準とするのに対し、コスト値は帯域幅を考慮することが特徴です。帯域幅が大きいほどコストが低くなるため、単純な距離だけでなく、帯域も踏まえた最短のルートを選択することができます。

SPFツリーとは?

上記のLSDBから作成されたトポロジマップをもとに、SPFツリーと呼ばれる階層的なマップを作成します。トポロジマップは集めた情報を単純に構成図化したようなもので、SPFツリーは各ルータを起点とした最短ルートを図解したものです。

このSPFツリーの作成にはSPFアルゴリズムが使用され、コスト値を基準に最短ルートを判断します。

OSPFの処理の流れとは?

① Helloパケットによるネイバー関係の確立

OSPFでは、隣接ルータとHelloパケットを交換することでネイバー関係を確立します。

このHelloパケットはマルチキャストで定期的に送信され、それぞれのルータの生存確認として使われていて、このHelloパケットが届かないと、そのルータがダウンしたと判断します。

②DR、BDRの決定

先ほど構成要素のところで説明した通り、OSPFでは、OSPFプライオリティ値を基準に、DRBDRとなるルータを決定します。DR、BDRはかくネットワークごとに選出され、そのルータがダウンするまでは基本的に変更しません。このDR、BDRを決定することで、情報を送り合う隣接関係を形成します。

③LSAの交換

隣接関係の確立後、各ルータは隣接するルータのインターフェイス情報(LSA)をDR、BDR宛てに送信します。各ルータからLSAを受け取ったDRは、LSDB、トポロジマップを作成します。

④SPFツリー、ルーティングテーブルの作成

LSAを交換し、各ルータの情報が集まったら、DR、BDRはSPFツリーと呼ばれる各ルータを起点とした最短ルートを階層的に示したSPFツリーを作成します。

そして、このSPFツリーをもとに、「AルータはBルータ経由ルート」、「CルータはDルータ経由してAルータに行くルート」、といったルーティングテーブルを作成します。ダイナミックルーティングプロトコルとしての機能としては、このルーティングテーブルの作成までが一連の流れになります。

おわりに

いかがだったでしょうか。少しややこしい仕組みなので解説も長くなってしまいましたが、このOSPFは多くの企業内ネットワークでも用いられているプロトコルなので、しっかり理解しておきましょう。

コメント

タイトルとURLをコピーしました