IS-IS 概要

OSIのルーティングプロトコルであるIS-ISについてその役割と特徴などの概要を説明します。

IS-ISとは

IS-IS(Intermediate system to Intermediate system intra-domain routing information exchange protocol)はOSIネットワークのドメイン内で使用するルーティングプロトコルです。ドメイン内にあるIS(Intermediate System)上で動作してES(End System)間の通信が行えるようにします。

ドメイン内においてユーザが使用する端末であるES(End System)は直接接続していない限りESだけの能力では通信することができません。なぜならOSIネットワークは下図のようにISによって間接的につながった構造をしているためです。ISはデータ転送を担う役割をもちES同士が遠く離れていたとしても通信できるようにするシステムです。しかしESの情報を持っていないISではESのつながりがわからないため転送を行えません。このときのESはISによって隔てられている状態といえます。IS-ISはIS上で動作し、IS間で情報を交換することでESがどこにつながっているかを把握します。これによってESは最寄りのISにデータを送信することでエンドツーエンドの通信を行えるようになります。

IS-ISの特徴

OSIコネクションレスモードで動作する

IS-ISとES-ISはOSIのコネクションレスモードで動作するルーティングプロトコルです。OSIのネットワーク層で動作しルート情報を制御することでCLNS(Connectionless-mode Network Service)を上位層に提供します。

ES-ISと合わせて使用する

IS-ISはIS間の情報交換を行いますが、IS-ISだけではESからの情報を取得できないためES-ISを同時に使用します。

エリアとレベル

IS-ISはOSIネットワークドメインをエリアとレベルのサブドメインに分けて使用します。エリアはNSAPアドレス自体が持つ特徴でIS-ISはそれを利用してドメインを複数のエリアに分割することができます。レベルは複数のエリアに分割した際にエリア間をつなぐ役割を持つサブドメインです。エリア間のルーティングではプレフィックスのルーティングを行います。

ホストベースのルーティング

IS-ISではOSIアドレッシングの特徴からエリア内ではホストベースのルーティングを行います。ISは各ESに至るルート情報を個別に持ちます。

リンクステートプロトコル

IS-ISはリンクステート型のルーティングプロトコルです。ISやESに対する隣接情報をLSP(Link State PDU)として交換して計算によってルート情報を求めます。

疑似(Pseudonode)ノードの使用

ブロードキャスト回線ではサブネットワーク上に流れる情報を減らす目的で疑似ノードを使用します。疑似ノードはDISが仮想的に作成する隣接ISのリストです。疑似ノードを使用することでLSP交換時にネットワークに流す情報を減らすことができます。

複数のメトリックを使用できる

使用できるメトリックが4つあり使い分けることができます。デフォルトメトリックは必ず使用し、必要に応じて遅延メトリック、経費メトリック、エラーメトリックを使用できます。

パケットに独自のPDUを使う

IS-ISではデータ交換にIS-IS独自のPDU(Protocol Data Unit)を使用します。IS-ISで使用するPDUにはHello PDUやLink State PDUなどいくつかの種類があり、目的によって使い分けます。

NSAPアドレスを使用する

IS-ISはOSIのネットワーク層で動作するのでシステムの識別にはNSAPアドレスを使用します。NSAPアドレスはネットワーク層のSAP(Service Access Point)に付与された番号で、ネットワーク層からトランスポートエンティティを識別します。

認証

認証はクリアテキストのみをサポートされています。

IS-ISの関係と役割

IS-ISはOSI参照モデルのネットワーク層で動作します。OSI参照モデルのコネクションレスモードのネットワーク層は上位層にCLNSを提供する役割を持ちますが、IS-ISはネットワーク層の中で上位層にサービスを提供するCLNPのサポートをする役割を担っています。

CLNS(Connectionless Network Service)

CLNSはコネクションレスモードのネットワーク層で動作するプロトコルが上位層に対して提供するサービスです。CLNPが中心となりIS-IS、ES-ISがサポートする形で提供します。

CLNP(Connectionless Network Protocol)

CLNPはコネクションレスのサービスを上位層へと提供するためのOSIのネットワーク層のプロトコルです。OSI参照モデルは1層から7層に分けられたネットワーク通信を行うためのフレームワークですが、CLNPはその中のコネクションレスモードで動作しCLNSを上位層に提供します。CLNPが取り扱うユーザデータはNPDU(Network Protocol Data Unit)です。

ES-IS

ES-ISはESとIS間で動作するOSIネットワーク層プロトコルです。ESとIS間で構成情報を交換します。ES-ISはCLNPと同じレイヤで動作しCLNPをサポートすることで上位層にCLNSを提供します。

IS-IS

IS-ISはIS間で動作するOSIネットワーク層プロトコルです。IS間で隣接情報を交換します。IS-ISはCLNPと同じレイヤで動作しES-ISと同様にCLNPをサポートすることで上位層にCLNSを提供します。

動作概要

IS-ISとES-ISはともにES同士が通信できるようにすることが目的です。以下でIS-ISとES-ISの動作の概要を説明します。

ESとの情報交換(ES-IS)

エリア内の端、ESとISが接続する部分ではES-ISによって情報交換が行われます。この動作によってESが通信を行うためのゲートウェイ(IS)を知り、ISがESの存在を知ります。ESは自分以外の相手と通信したい場合はISに送信すればよいことを認識します。ISはエリア内のほかのISにES1の存在を通知する責任を持ちます。

レベル1 IS間の情報交換(IS-IS)

エリア内のIS間ではIS-ISによってIS同士が情報交換を行います。この動作によってIS同士がお互いの存在を知り、互いが持つESとレベル2の情報(エリア情報ではなくレベル2のISの存在)を共有することができます。下図の場合IS1はIS2がレベル2に接続したルータであること、同様にIS4はIS3がレベル2に接続したルータであることを知ります。これによってIS1とIS4は自分の属するエリア以外のデータ(NPDU)を受け取った場合はIS2、IS3に送ればよいことを知ります。IS2とIS3ではIS1とIS4から同じエリア内のESの情報を受け取りその存在を知ることができます。

レベル2 IS間の情報交換(IS-IS)

異なるエリアがつながるレベル2ではレベル2のIS同士が情報交換を行います。この動作によってレベル2同士が互いのエリアの存在を知ることができ、異なるエリア間の通信ができるようになります。レベル2の情報交換ではエリアを示すプレフィックスのみが扱われESやISの情報は交換されません。

ルートの決定

IS-ISではメトリックを使用してルートを選択します。メトリックは各ISのインターフェースに設定されていてそのISのインターフェースを経由する際のコストを表します。

下図はIS1がESへのルートを選択する様子を示しています。各回線(インターフェース)にはメトリックが設定されていて、IS1からESまでのトータルメトリックを破線の矢印で表しています。IS1からESまでは2つのルートが存在するためトータルメトリックを比較し小さくなる方のルートをベストルートとして採用します。IS2を経由するとトータルメトリックが60で、IS5を経由するとトータルメトリックが80となり、IS2を経由したほうが小さいメトリックでESまで到達可能であるためIS2を経由するルートをベストルートとして採用します。これによってIS1はESへデータを送るには次にIS2へ送信すればよいとルート情報を求めることができます。

IS-ISのドキュメント

OSIのIS-ISに関するドキュメントは以下のものがあります。

ドキュメント 内容 説明
ISO/IEC 10589 IS-IS OSI環境におけるIS-ISの動作・仕様。ほとんどすべてが含まれたメインとなる文書
ISO 9542 ES-IS OSI環境におけるES-ISの動作・仕様
GOSIP 2.0 製品仕様基準 イギリス、アメリカ国内で国が購入するOSI製品に課す基本仕様