はじめに
以前、CCNAを勉強しただけでしたが、ネスペを受けるにあたり改めて、ざっくり情報を整理しました。生成AIに聞けばわかるのですがね。。。
わかりやすいように「ネットワークを知らない人向け」「専門用語も抑えたい人用の書き方」にチャレンジしてみます。
OSPF(Open Shortest Path First)とは
Link-State型(リンクステート型)のプロトコルです!
学校のクラス1学級の在籍している全ての生徒とお友達になるタイプの陽キャタイプのやつです。
ネットワーク内に存在していて、OSPFが動作している全てのルータと友達になる!というイメージです。全てのルータが、自発的に全てのルータを把握します。
私はここにいるを「伝える/伝えられる/知り合える」
「僕はここにいるよ。お隣さんは誰々だよ。お隣さんとの距離はこれぐらいだよ」このような状態をまとめて、全員に伝えます。学校の席替え直後を思い出してください。私の前の席は、Aちゃんで、右側がBさん、後ろがCさん、左がDちゃんです!このような情報をクラス全員に伝えます。
自分と直接繋がっているルータ情報は 「LSA(Link-State Advertisement)」という情報にまとめて、保存すると同時に全てのルータに自分のLSAを知らせます。ダイレクトメールみたいなイメージですかね。
LSAの中には、コスト情報が記載されています。隣のルータまでの通信速度の情報(コストやメトリクス)を表記されます。
このコスト情報を基に「最短最速経路」を計算するんです。
そして、他のルータからもLSAが届きます。それらすべてを整理して「LSDB(Link-State Database)」を作成します。他のルータから届いたLSAを元に「ふむふむ、遠くにZちゃんがいるんだな、最短最速で話しかけるにはこのルートだな」とわかるようになります。
LSAの種類
LSA type1 (ルータLSA)
学級名簿的な?
LSA type2(ネットワークLSA)
あの子への(心の?)距離的な?
計算しんどい
「今日からこの学級は、1,000人だ!全ての生徒の把握と距離を知っておけ!」
「えーーーーーーー」
はい。全ての生徒の情報を把握して、距離を全て計算するのはつらいです。
そこで「クラス学級」という人数(30人ぐらい?)に分割して、クラス学級の人は全員把握しておけ
この仕組みが、OSPFの「エリア」という概念です。ルータが1台追加されるだけで、全ルータとのコストを計算してLSA計算をして、、、というのは、ルータのCPUやメモリがたくさん必要です。そこで、エリアという単位に分割して「把握が必要なルータの台数を少なくする」
area 1, area 2, … と作成されますが、一番大事なのは「area 0」です。
0番隊とか、3-0組とか、めっちゃ特別感あります。
この「エリア0」の最大の特徴は、エリア0に所属しているルータは、他のエリアのルータと繋がっている必要があります。
LSAの種類
LSA type1 (ネットワーク集約LSA)
他のクラスの代表者をしているルータ情報的な?