「地図」でつながるネットワーク:リンクステート型ルーティング
「みんなで同じ地図を持てば、いっちばんいい経路を見つけられるはずだよね!?」
はい、こんにちは!松井真也です。シリーズ「基礎から分かる!ルーティング大全」第8回でございます。
前回は、ルーティングアルゴリズムのうち、ディスタンスベクタ型について紹介しました。ホップ数を基準にしてデータを送出する経路を決定するという、シンプルな方法でした。ただ、シンプル過ぎて伝送速度を考慮できないとか、経路情報の更新に時間がかかるなどのデメリットがありました。
さて、今回は、もう一つのルーティングアルゴリズム、リンクステート型を紹介しましょう!現代ではこのアルゴリズムの方がよく使われていて、より多くの情報から最適な経路を割り出す仕組みです。
果たしてどんな仕組みでしょうか?では、いってみましょう!
ネットワーク全体の地図を作る?
では、リンクステート型ルーティングの概要をざくっとつかみましょう!
このアルゴリズムの特徴は、「ネットワーク全体の地図」を作ることです。どういうこと?と思われるかもしれません。
実は、各ルータが直接接続している隣接ルータのリストを交換し、ネットワーク全体の構成を「トポロジー情報」として保持します。これはLSDB(リンクステートデータベース)と呼ばれます。
トポロジーとは、簡単にいえば、「ネットワークを構成する機器がどのようにつながっているか、その接続形態」のことです。
この情報を基に最短経路を計算するんです。まずは概要はOKですね!
管理するデータが大量になる
ディスタンスベクタ型では、各ルータからみた「距離(ホップ数)」と「方向(ネクストホップ)」を個別に管理するのでしたね。「自分の」「自分による」「自分のための」情報です。これを主観的と表現しました。この仕組みにより、管理する情報量は少なくてすみます。
他方、リンクステート型は、リンクステート(つながっている状態)という客観的な情報を保持するのがポイントです。
ネットワーク全体の共通情報をすべてのルータが持ちます。「僕たち、こんなふうに繋がっていよね!よし、みんな同じ地図を持とう!」という感じでしょうか?
これにより、経路の変更や障害が発生した際に迅速に反映できること、また通常時は交換する情報量が少ないためネットワークへの負荷が低いことです。
反面、問題があります。初期設定や計算処理が複雑であるだけでなく、管理するデータが大きくなりすぎるのです。原因は、経路算出に使うデータの種類が多いことに加えて、ルータごとに必要な情報を持つのでなくネットワーク全体で必要な情報を持ち合うことです。
このため、実際には、LSDBが大きくなり過ぎないよう、ネットワークを「エリア」という単位に分割して管理します。このエリア分割についての説明は別の機会に譲ります。
はい、本日はここまで!今回はリンクステート型アルゴリズムについて紹介しました。すみません、肝心のリンクステートの交換方法や、ルーティングを決定するメトリック(重み、コスト)については触れられませんでした…。それは、リンクステート型の代表的プロトコルであるOSPFの記事で説明するようにします。
次回は、ディスタンスベクタ型プロトコル「RIP」について紹介します。
では!
この記事が気に入ったらサポートをしてみませんか?