メインコンテンツまでスキップ

4.1. Protocol Data Structures (プロトコルデータ構造)

主要なOSPFデータ構造は、IPv4とIPv6の両方で同じです: エリア (Areas)、インターフェース (Interfaces)、ネイバー (Neighbors)、リンク状態データベース (Link-State Database)、およびルーティングテーブル (Routing Table)。IPv6のトップレベルデータ構造は、[OSPFV2] の第5節にリストされているものを維持し、以下の変更があります:

  • 既知のLSタイプとASフラッディングスコープ (AS Flooding Scope) を持つすべてのLSAは、特定のエリアまたはリンクに属するのではなく、トップレベルデータ構造に表示されます。AS外部LSA (AS-External-LSAs) は、本仕様で定義された、ASフラッディングスコープを持つ唯一のLSAです。未知のLSタイプ、Uビットが1に設定されている (認識されない場合でもフラッディング)、およびASフラッディングスコープを持つLSAも、トップレベルデータ構造に表示されます。

4.1.1. The Area Data Structure (エリアデータ構造)

IPv6エリアデータ構造には、[OSPFV2] の第6節でIPv4エリアに対して定義されたすべての要素が含まれています。さらに、エリアフラッディングスコープ (Area Flooding Scope) を持つ既知のタイプのすべてのLSAは、IPv6エリアデータ構造に含まれています。これには常に以下のLSAタイプが含まれます: ルータLSA (Router-LSAs)、ネットワークLSA (Network-LSAs)、エリア間プレフィックスLSA (Inter-Area-Prefix-LSAs)、エリア間ルータLSA (Inter-Area-Router-LSAs)、およびエリア内プレフィックスLSA (Intra-Area-Prefix-LSAs)。未知のLSタイプ、Uビットが1に設定されている (認識されない場合でもフラッディング)、およびエリアスコープを持つLSAも、エリアデータ構造に表示されます。NSSA-LSAも、NSSAエリアのデータ構造に含まれています。

4.1.2. The Interface Data Structure (インターフェースデータ構造)

IPv6のOSPFでは、インターフェースはルータをリンクに接続します。IPv6インターフェース構造は、IPv4インターフェース構造 ([OSPFV2] の第9節で定義されている) を次のように変更します:

Interface ID (インターフェースID)

すべてのインターフェースにインターフェースIDが割り当てられ、これによりルータ内でインターフェースが一意に識別されます。たとえば、一部の実装では、MIB-II IfIndex ([INTFMIB]) をインターフェースIDとして使用できる場合があります。インターフェースIDは、インターフェースから送信されるHelloパケット、ルータが接続されたリンクのために発信するリンクローカルLSA (Link-Local-LSA)、および関連エリアのためにルータが発信するルータLSAに表示されます。また、ルータが指定ルータ (Designated Router) に選出された場合、リンクのためにルータが発信するネットワークLSAのリンク状態ID (Link State ID) としても機能します。

仮想リンク (Virtual Link) のインターフェースIDは、トランジットエリア (Transit Area) で通過する発信インターフェースのインターフェースIDから独立しています。

Instance ID (インスタンスID)

すべてのインターフェースにインスタンスIDが割り当てられます。これはデフォルトで0にする必要があります。複数の独立したOSPFルータのコミュニティを含むリンクでのみ、0以外の値を割り当てる必要があります。たとえば、特定のイーサネットセグメントに2つのルータのコミュニティがあり、それらを分離したいとします。

最初のコミュニティにはインスタンスID 0が割り当てられ、最初のコミュニティのすべてのルータは、イーサネットセグメントに接続されたインターフェースのインスタンスIDとして0が割り当てられます。イーサネットセグメントに接続された他のルータのインターフェースには、インスタンスID 1が割り当てられます。OSPF送信および受信処理 (第4.2節を参照) は、2つのコミュニティを分離します。

List of LSAs with link-local scope (リンクローカルスコープを持つLSAのリスト)

リンク上で発信/フラッディングされた、リンクローカルスコープ (Link-Local Scope) を持つすべてのLSAは、リンクに接続するインターフェース構造に属します。これには、リンクのリンクLSA (Link-LSAs) のコレクションが含まれます。

IP interface address (IPインターフェースアドレス)

IPv6の場合、インターフェース上で送信されるOSPFパケットのソースに表示されるIPv6アドレスは、ほとんど常にリンクローカルアドレス (Link-Local Address) です。唯一の例外は、仮想リンクであり、IPインターフェースアドレスとしてルータ自身のグローバルIPv6アドレスの1つを使用する必要があります。

List of link prefixes (リンクプレフィックスのリスト)

接続されたリンクにIPv6プレフィックスのリストを設定できます。これらは、リンクLSAでルータによってアドバタイズされ、リンクの指定ルータによってエリア内プレフィックスLSA (Intra-Area-Prefix-LSAs) でアドバタイズできるようにします。

IPv6のOSPFでは、各ルータインターフェースには、インターフェース上でパケットを送信するコストを表す単一のメトリック (Metric) があります。さらに、IPv6のOSPFは、[OSPFV3-AUTH] で説明されているように、IP認証ヘッダー (IP Authentication Header、[IPAUTH] を参照) およびIPカプセル化セキュリティペイロード (IP Encapsulating Security Payload、[IPESP] を参照) に依存して、ルーティング交換の整合性および認証/機密性を保証します。このため、AuTypeおよび認証キーは、IPv6 OSPFインターフェースには関連付けられていません。

インターフェース状態、イベント、およびインターフェース状態マシンは、[OSPFV2] の第9.1、9.2、および9.3節にそれぞれ文書化されているように、IPv4から変更されていません。指定ルータおよびバックアップ指定ルータの選出アルゴリズムも、[OSPFV2] の第9.4節のIPv4選出から変更されていません。

4.1.3. The Neighbor Data Structure (ネイバーデータ構造)

ネイバー構造は、IPv6とIPv4の両方で同じ機能を実行します。つまり、そのような隣接性が必要になったときに、2つのルータ間で隣接性を形成するために必要なすべての情報を収集します。各ネイバー構造は、単一のOSPFインターフェースにバインドされています。IPv6ネイバー構造と [OSPFV2] の第10節でIPv4に対して定義されたネイバー構造との違いは次のとおりです:

Neighbor's Interface ID (ネイバーのインターフェースID)

ネイバーがHelloパケットでアドバタイズするインターフェースIDは、ネイバー構造に記録される必要があります。ルータは、a) ネイバーへのポイントツーポイントまたはポイントツーマルチポイントリンクをアドバタイズするとき、または b) ネイバーが指定ルータになったネットワークへのリンクをアドバタイズするときに、ルータのルータLSAにネイバーのインターフェースIDを含めます。

Neighbor IP address (ネイバーIPアドレス)

IPv6のOSPFパケットのソースアドレスとして含まれるネイバーのIPv6アドレス。これは、仮想リンクを除くすべてのリンクタイプで、IPv6リンクローカルアドレスになります。

Neighbor's Designated Router (ネイバーの指定ルータ)

指定ルータに対するネイバーの選択は、IPアドレスではなくルータID (Router ID) としてエンコードされるようになりました。

Neighbor's Backup Designated Router (ネイバーのバックアップ指定ルータ)

バックアップ指定ルータに対するネイバーの選択は、IPアドレスではなくルータIDとしてエンコードされるようになりました。

ネイバー状態、イベント、およびネイバー状態マシンは、[OSPFV2] の第10.1、10.2、および10.3節にそれぞれ文書化されているように、IPv4から変更されていません。どの隣接性を形成するかの決定も、[OSPFV2] の第10.4節に文書化されているIPv4ロジックから変更されていません。