(57)【特許請求の範囲】
【請求項１】
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置であって、
ＯＳＰＦに係るパケットを抽出する手段と、
前記ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出する手段と、
抽出された前記ＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約手段と、
前記ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、前記ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信する手段と、
を有するルート集約装置。
【請求項２】
前記ＬＳＡ集約テーブルが一度生成された後に前記ＬＳＵパケットを受信した場合には、前記集約手段が、受信した前記ＬＳＵパケットに含まれるＬＳＡ情報と、前記ＬＳＡ集約テーブルに登録されている情報との集約を行い、前記ＬＳＡ集約テーブルを更新する
請求項１記載のルート集約装置。
【請求項３】
前記ＬＳＡ集約テーブルが、第１のネットワーク装置用のＬＳＡ集約テーブルと、第２のネットワーク装置用のＬＳＡ集約テーブルとを含み、
前記ＬＳＡ集約テーブルが一度生成された後に前記ＬＳＵパケットを受信した場合には、前記集約手段が、受信した前記ＬＳＵパケットの送信元のネットワーク装置に対向する対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報と、受信した前記ＬＳＵパケットに含まれるＬＳＡ情報とを比較し、当該ＬＳＡ情報が前記対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報に包含されるものであれば、受信した前記ＬＳＵパケットを、前記対向ネットワーク装置に送信する
請求項１記載のルート集約装置。
【請求項４】
前記集約手段が、
サブネットマスクを順に変更し、変更後のサブネットマスクの状態でアドレス部分が一致するＬＳＡ情報を、当該一致するアドレス部分と前記変更後のサブネットマスクとで集約する
請求項１記載のルート集約装置。
【請求項５】
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置に、
ＯＳＰＦに係るパケットを抽出するステップと、
前記ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出するステップと、
抽出された前記ＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約ステップと、
前記ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、前記ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信するステップと、
を実行させるプログラム。
【請求項６】
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置により実行される集約処理方法であって、
ＯＳＰＦに係るパケットを抽出するステップと、
前記ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出するステップと、
抽出された前記ＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約ステップと、
前記ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、前記ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信するステップと、
を含む集約処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既存のネットワーク装置を補助するための技術であって、より詳しくはＯＳＰＦによるルーティングを実施するネットワーク装置を補助するための技術に関する。
【背景技術】
【０００２】
ＯＳＰＦ（Open Shortest Path Fast）は、各ネットワーク装置が自装置のリンクステート情報（ＬＳＡ：Link-State Advertisement）を隣接装置と交換することによりＬＳＤＢ（Link State Database）というリンクステート情報の集まりを各ネットワーク装置で保持し、このＬＳＤＢを使用してルーティング経路を算出して動的ルーティングを実施する方式である。ルーティング経路の算出に使用するＬＳＤＢはネットワーク内の全装置で統一したデータを保持する必要があるため、各ネットワーク装置の記憶メモリの容量の大きさに関係なく、ネットワーク装置は同一ＬＳＤＢを保存しなければいけない。図１に模式的に示すようなネットワークでは、Ｌ３−ＳＷ、ルータ５０１１及び５０１２、ルータ５００１及び５００２が接続されており、それらは同一のＬＳＤＢを有しなければならない。
【０００３】
ところが、ネットワークが急速に拡大していくような環境であった場合、メモリや処理能力が乏しいような古いネットワーク装置（図１では例えばルータ５００１及び５００２）がネットワーク内にあると、そのようなネットワークでは、ＬＳＤＢに必要な容量がメモリの容量を超えて、必要な情報を保持できない状態となってしまう。そうなるとネットワーク装置はルーティングを処理できなくなってネットワークに障害を与えてしまう要因となる。
【０００４】
また、ＯＳＰＦではリンクステートによりルーティングテーブルを算出・保持しているため、該当ネットワークのリンクがダウンするとネットワーク装置はＬＳＵ（Link-State Update）を使用して同一エリアの全ネットワーク装置に対してネットワークの変更を知らせる。そして、ＬＳＵパケットを受けた他のネットワーク装置は、ＬＳＵを受信する度にＬＳＤＢの内容を変更し、その都度ダイクストラアルゴリズムを使用してルーティング情報の算出を実施する。よって、ネットワークの変更が頻繁に起こるようなネットワークではリンク断、復旧の度に該当ネットワーク装置がＬＳＵを送信し、また受信したネットワーク装置はその都度ルーティング情報の算出を実施するため膨大な処理が必要となり、処理能力の乏しいネットワーク機器には大きな負担となり、ネットワーク障害を生む要因となっている。
【０００５】
この現象を解決する手段としてエリア分割という方法がある。ＯＳＰＦではＬＳＤＢの容量が大きくなった場合における各ネットワーク装置の負荷を考慮して、ネットワーク装置同士を「エリア」という概念を用いて同一集合とみなし、「ＬＳＤＢはエリア内でのみ同一となる」というルールの下で、自エリア以外の情報は集約して通知することによりＬＳＤＢの容量を減らすことができる技術がある。例えば図２に示すように、旧型でメモリ容量の少ないルータであるルータ５００１及び５００２を含むエリア１と、メモリ容量に余裕のあるルータ５０１１及び５０１２を含むエリア０とにエリア分割を行う。しかし、エリア分割はネットワークの初期立ち上げ段階で適用する場合には効果的な技術であるが、当初より全てが同一エリアで構築されて運用しているネットワークにおいてエリア分割を試みると、変更する全てのネットワーク装置の設定を同一にしなければならず、手間が掛かり現実的ではない。また、エリアの境界に設置されるネットワーク装置（図２ではＬ３−ＳＷ５０２１）は、エリア０用のＬＳＤＢ＿０とエリア１用のＬＳＤＢ＿１との２種類のＬＳＤＢを保持しなければならないという問題もある。
【０００６】
なお、現状のリンクステートルーティング処理部に手を加えずに、ルータ間並列リンクにおけるルーティング処理のスケーラビリティ及び安定性を確保可能なパケット転送経路制御装置が存在している。具体的には、個別リンク管理部が各リンク間でハローメッセージを交換し、隣接ルータの装置識別子を学習する。集約リンク管理部は同一隣接ルータ識別子を有する個別リンクを集約して集約リンクとして仮想リンクを作成した後、リンクステートルーティング処理部に通知する。リンクステートルーティング処理部は集約リンク単位でルーティング処理を行うため、ルータ間の並列リンク数に関係なく、スケーラブルなルーティング処理を実現可能となる。しかし上で述べたような問題に対処することができるわけではない。
【特許文献１】特開２００２−５７６９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
以上述べたように従来技術では、エリア分割ではない方法で、性能の低いネットワーク装置をネットワーク規模が大きくなった段階でも安定して使用し続けるような手法は開示されていない。
【０００８】
従って、本発明の目的は、ＯＳＰＦが用いられるネットワークの規模が大きくなった段階においても、性能の低いネットワーク装置を安定して使用し続けることができるようにするための技術を提供することである。
【課題を解決するための手段】
【０００９】
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置は、ＯＳＰＦに係るパケットを抽出する手段と、ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出する手段と、抽出されたＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約手段と、ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信する手段とを有する。
【発明の効果】
【００１０】
ＯＳＰＦが用いられるネットワークの規模が大きくなった段階においても、性能の低いネットワーク装置を安定して使用し続けることができるようになる。
【発明を実施するための最良の形態】
【００１１】
本発明の一実施の形態に係るネットワーク構成などを図３を用いて説明する。本実施の形態では、メモリ容量が小さく処理能力の低いネットワーク装置（図３のルータＡ）とその上位にある対向装置（図３のルータＢ）との間にルート集約装置１００を設置する。このルート集約装置１００は、ルータＡから伝送されるＬＳＡに係るパケットを抽出し、当該ＬＳＡを集約し、集約した結果のＬＳＡをルータＢに送信し、同様にルータＢから伝送されるＬＳＡに係るパケットを抽出し、当該ＬＳＡを集約し、集約した結果のＬＳＡをルータＡに送信する。このようにすることで、ルート集約装置１００による集約の結果削減されたＬＳＡをネットワーク装置間で交換することになるので、メモリ容量が小さく処理能力の低いネットワーク装置でも同じエリア内のネットワーク装置として安定した動作が行われるようになる。
【００１２】
具体的には、「１０．１．１．０／２４」「１０．１．２．０／２４」「１０．１．３．０／２４」「１０．１．４．０／２４」「１０．１．５．０／２４」「１０．１．６．０／２４」「１０．１．７．０／２４」というサブネットを含むネットワークＡには、ルータＩＤが「１０．０．０．１」のルータＡが接続されている。ネットワークＢには、「１０．１．１７．０／２４」「１０．１．１８．０／２４」「１０．１．１９．０／２４」「１０．１．２０．０／２４」というサブネットを含むネットワークＢには、ルータＩＤが「１０．０．０．２」のルータＢが接続されている。そして、ルータＡとルータＢとの間にルート集約装置１００に接続されている。
【００１３】
このような場合、ルータＡからは、ルータＩＤ＝１０．０．０．１、リンクの数「７」、接続されているサブネットのリンク情報１乃至７（LINKID及びLINKDATA）を含むＬＳＡ２００が送信される。このようなＬＳＡ２００を受信すると、ルート集約装置１００は、「１０．１．１．０／２４」「１０．１．２．０／２４」「１０．１．３．０／２４」「１０．１．４．０／２４」「１０．１．５．０／２４」「１０．１．６．０／２４」「１０．１．７．０／２４」を例えば「１０．１．０．０／１９」に集約する。この集約の態様は一例であって、例えば「１０．１．０．０／２２」「１０．１．４．０／２３」「１０．１．６．０／２３」といったような集約になる場合もある。例えば前者のような集約が行われた場合には、ルータＩＤ＝１０．０．０．１と、リンクの数「１」と、集約リンク情報として「１０．１．０．０／１９」とを含むＬＳＡ２１０を生成し、ルータＢに送信する。ルータＢは、ＬＳＡ２１０を受信し、ルータＢのＬＳＤＢに登録する。これによって、前者のような集約が行われれば、データ量は１／７になる。なお、後者の場合においても、データ量は３／７になる。
【００１４】
また、ルータＢからは、ルータＩＤ＝１０．０．０．２、リンクの数「４」、接続されているサブネットのリンク情報１乃至４（LINKID及びLINKDATA）を含むＬＳＡ２５０が送信される。このようなＬＳＡ２５０を受信すると、ルート集約装置１００は、「１０．１．１７．０／２４」「１０．１．１８．０／２４」「１０．１．１９．０／２４」「１０．１．２０．０／２４」を例えば「１０．１．１６．０／１９」に集約する。この集約の態様は一例であって、例えば「１０．１．１６．０／２１」「１０．１．２０．０／２４」というような集約になる場合もある。例えば前者のような集約が行われた場合には、ルータＩＤ＝１０．０．０．２と、リンクの数「１」と、集約リンク情報として「１０．１．１６．０／１９」とを含むＬＳＡ２６０を生成し、ルータＡに送信する。ルータＡは、ＬＳＡ２６０を受信し、ルータＡのＬＳＤＢに登録する。これによって、前者のような集約が行われれば、データ量は１／４になる。なお、後者の場合においても、データ量は１／２になる。
【００１５】
次に、図４を用いてルート集約装置１００の機能について説明する。ルート集約装置１００は、パケット判別部１０１と、ＯＳＰＦパケット判定部Ａ及びＢと、ＬＳＡテーブルＡ及びＢと、ＬＳＡ参照テーブルＡ及びＢと、ＬＳＡ集約部Ａ及びＢと、ＬＳＡ集約テーブルＡ及びＢとを有する。パケット判別部１０１は、ルータＡ及びルータＢから送信されてくるパケットのヘッダを監視し、ＯＳＰＦのプロトコル番号である「８９」を含むパケットを検出すると当該パケットを抽出し、ルータＡから受信したパケットの場合にはＯＳＰＦパケット判定部Ａに出力し、ルータＢから受信したパケットの場合にはＯＳＰＦパケット判定部Ｂに出力する。なお、ＯＳＰＦ以外のパケットを受信した場合には、対向装置にそのまま通過させる。
【００１６】
ＯＳＰＦパケット判定部Ａ及びＢは、パケット判別部１０１から受信したＯＳＰＦパケットのＯＳＰＦヘッダによりタイプを判別する。タイプ１であるＨｅｌｌｏパケットであれば、対向装置へ転送する。タイプ２であるＤＢＤ（DataBase Description）パケットであればＤＢＤパケット内のＬＳＡヘッダを送信元用のＬＳＡテーブル（ルータＡから受信した場合はＬＳＡテーブルＡ）に記憶させる。このＤＢＤパケットには例えばルータＡが有している全てのＬＳＡ情報（すなわちＬＳＤＢ情報）のヘッダ部分が入っている。従って、ルート集約装置１００は、ルータＢの代わりにＬＳＲ（Link-State Request）パケットに受信したＬＳＡヘッダを載せて送信することによって、ルータＡに対してＬＳＡ情報を要求する。この要求を受信したルータＡは、自身が有する全ＬＳＡ情報をＬＳＵパケットに載せてルータＢ側に伝送する。なお、ＬＳＲパケットはタイプ３であり、ＯＳＰＦパケット判定部Ａ及びＢは、ＬＳＲパケットを受信した場合には、対向装置のＬＳＡ集約テーブルをＬＳＵパケットに入れて、ＬＳＲパケットの送信元に返信する。
【００１７】
ＬＳＵパケットはタイプ４であり、ルータＡからＬＳＵパケットを受信した場合には、ＯＳＰＦパケット判定部Ａは、ＬＳＡテーブルＡに格納する。ＬＳＡ情報が全て揃うと、ＯＳＰＦパケット判定部Ａは、ＬＳＡ参照テーブルＡに格納する。ＬＳＡ参照テーブルＡに格納されたデータには、ＬＳＡ集約部Ａにより以下で述べるような集約処理が行われ、ＬＳＡ参照テーブルＢに格納されたデータには、ＬＳＡ集約部Ｂにより以下で述べような集約処理が行われる。
【００１８】
なお、タイプ５であるＬＳＡｃｋパケットの場合には、基本的にはＯＳＰＦパケット判定部Ａ及びＢが、当該ＬＳＡｃｋパケットを破棄する。但し、以下で詳細に述べるケースの場合には、そのまま対向装置に転送する場合もある。
【００１９】
このようにタイプ４のＬＳＵパケットで収集したＬＳＡ情報を集約し、集約ＬＳＡ情報を対向装置からのタイプ３のＬＳＲパケットに対する応答であるＬＳＵパケットとして送信する。これによって、ルート集約装置１００が、例えばルータＢ側のエリアにいるネットワーク装置に対してルータＡの背後のネットワークの存在を見せずにルータＡを末端のネットワーク装置として見せることができるようになる。また反対に、ルータＡ側のエリアにいるネットワーク装置に対してルータＢの背後のネットワークの存在を見せずにルータＢを末端のネットワーク装置としてみせることができるようになる。すなわち、ネットワーク装置の設定を全く変更せずにルート集約が可能となる。
【００２０】
なお、ＬＳＡ集約部Ａは、ＬＳＡ参照テーブルＡとＬＳＡ集約テーブルＡ及びＢを参照して、以下で述べるような集約処理を実施し、必要な場合にはＬＳＡ集約テーブルＡに集約結果を格納する。同様に、ＬＳＡ集約部Ｂは、ＬＳＡ参照テーブルＢとＬＳＡ集約テーブルＡ及びＢを参照して、以下で述べるような集約処理を実施し、必要な場合にはＬＳＡ集約テーブルＢに集約結果を格納する。
【００２１】
次に、図５乃至図７を用いてルータＡ及びＢとルート集約装置１００の接続時の初期処理の流れを説明する。図５に示すように、まずルータＡ（１０．０．０．１／２４）は、Ｄｏｗｎ状態において、Ｈｅｌｌｏパケットをマルチキャストで送信する。ルート集約装置１００は、ルータＡからＨｅｌｌｏパケットを受信すると、そのままルータＢ（１０．０．０．２／２４）に転送する。ルータＢは、ルータＡからのＨｅｌｌｏパケットを受信すると、ＮｅｉｇｈｂｏｒルータにルータＡを登録する。ここでルータＢは、Ｉｎｉｔ状態に遷移する。
【００２２】
また、ルータＢは、Ｈｅｌｌｏパケットをマルチキャストで送信する。ルート集約装置１００は、ルータＢからＨｅｌｌｏパケットを受信すると、そのままルータＡに転送する。ルータＡは、ルータＢからのＨｅｌｌｏパケットを受信すると、ＮｅｉｇｈｂｏｒルータにルータＢを登録する。ここでルータＡは、Ｉｎｉｔ状態に遷移する。
【００２３】
さらに、ルータＡは、ＨｅｌｌｏパケットをユニキャストでルータＢに送信する。ルート集約装置１００は、ルータＡからＨｅｌｌｏパケットを受信すると、そのままルータＢに転送する。ルータＢは、ルータＡからのＨｅｌｌｏパケットを受信すると、Ｔｗｏ−Ｗａｙ状態に遷移する。また、ルータＢは、ＨｅｌｌｏパケットをユニキャストでルータＡに送信する。ルート集約装置１００は、ルータＢからＨｅｌｌｏパケットを受信すると、そのままルータＡに転送する。ルータＡは、ルータＢからのＨｅｌｌｏパケットを受信すると、Ｔｗｏ−Ｗａｙ状態に遷移する。これによって、ネイバーが確立する。また、これまでのＨｅｌｌｏパケットの交換によってＤＲ（Designated Router）とＢＤＲ（Backup Designated Router）を周知の方法で選定する。なお、ここではルータＩＤなどからルータＢがＤＲで、ルータＡがＢＤＲであるものとする。そうすると、ルータＡ及びルータＢはＥｘｓｔａｒｔ状態に遷移する。
【００２４】
さらに、ルータＡは、Ｈｅｌｌｏパケットをマルチキャストで送信する。ルート集約装置１００は、ルータＡからＨｅｌｌｏパケットを受信すると、そのままルータＢに転送する。ルータＢは、ルータＡからのＨｅｌｌｏパケットを受信する。このＨｅｌｌｏパケットは、一方的に情報交換の開始の宣言ものであるが、ここではルータＢの方がルータＩＤが大きいなどの理由により、ルータＢは、情報交換を宣言するＨｅｌｌｏパケットをマルチキャストで送信する。ルート集約装置１００は、ルータＢからのＨｅｌｌｏパケットを受信すると、そのままルータＡに転送する。ルータＡは、ルータＢからのＨｅｌｌｏパケットを受信する。このようにすると、ルータＢがマスタで、ルータＡがスレーブであるということが確定し、ルータＡ及びＢは、共にＥｘｃｈａｎｇｅ状態に遷移する。
【００２５】
ここまでは単にルート集約装置１００はＨｅｌｌｏパケットを転送するだけであり従来の処理フローと何ら変わりない。
【００２６】
図６の処理に移行して、まず、マスタのルータＢは、タイプ２のＤＢＤパケットをルータＡに対して送信する。ＤＢＤパケットは、上で述べたように、ルータＢのＬＳＡ情報の全ヘッダが含まれる。これに対してルート集約装置１００は、ＩＰヘッダのソースアドレスとしてルータＡのアドレスがセットされたＬＳＡｃｋパケットを生成し、当該ＬＳＡｃｋパケットをルータＢに返信する。図６において「仮想」としているのは、ルート集約装置１００がルータＡの代わりに返信しているためである。ルータＢは、ＬＳＡｃｋパケットを受信すると、Ｌｏａｄｉｎｇ状態に遷移する。また、ルート集約装置１００は、ルータＢから受信した全てのＬＳＡヘッダを含み、ＩＰヘッダのソースアドレスとしてルータＡのアドレスをセットしたＬＳＲパケットをルータＢに送信する。
【００２７】
これに対してルータＢは、ルータＢがＬＳＤＢに保持している全てのＬＳＡを含み且つタイプ４のＬＳＵパケットを送信する。ルート集約装置１００は、ルータＢからＬＳＵパケットを受信すると、ＬＳＵパケットに含まれるＬＳＡをＬＳＡテーブルＡに格納すると共に、ＬＳＡ参照テーブルＡに格納し、以下で詳細に述べる処理を実施する。また、ルート集約装置１００は、ＬＳＡｃｋパケットをルータＢに返信する。このようにしてルート集約装置１００は、ルータＢから全てのＬＳＡを取得したことになる。
【００２８】
同様に、スレーブのルータＡは、タイプ２のＤＢＤパケットをルータＢに対して送信する。ＤＢＤパケットは、上で述べたように、ルータＡのＬＳＡ情報の全ヘッダが含まれる。これに対してルート集約装置１００は、ＩＰヘッダのソースアドレスとしてルータＢのアドレスがセットされたＬＳＡｃｋパケットを生成し、当該ＬＳＡｃｋパケットをルータＡに返信する。ルータＡは、ＬＳＡｃｋパケットを受信すると、Ｌｏａｄｉｎｇ状態に遷移する。また、ルート集約装置１００は、ルータＡから受信した全てのＬＳＡヘッダを含み、ＩＰヘッダのソースアドレスとしてルータＢのアドレスをセットしたＬＳＲパケットをルータＡに送信する。
【００２９】
これに対してルータＡは、ルータＡがＬＳＤＢに保持している全てのＬＳＡを含み且つタイプ４のＬＳＵパケットを送信する。ルート集約装置１００は、ルータＡからＬＳＵパケットを受信すると、ＬＳＵパケットに含まれるＬＳＡをＬＳＡテーブルＢに格納すると共に、ＬＳＡ参照テーブルＢに格納し、以下で詳細に述べる処理を実施する。また、ルート集約装置１００は、ＬＳＡｃｋパケットをルータＡに返信する。このようにしてルート集約装置１００は、ルータＡから全てのＬＳＡを取得したことになる。
【００３０】
図７の処理に移行して、ルート集約装置１００の例えばＯＳＰＦパケット判定部Ｂは、ＬＳＡ集約テーブルＡに保持しているＬＳＡ情報の全ヘッダが含まれるＤＢＤパケットをルータＢに対して送信する。「（集約）」は、ＬＳＡ集約テーブルからのデータを含むことを表している。なお、ここでルート集約装置１００は、ルータＡを装っている。ルータＢは、ＤＢＤパケットを受信すると、ＤＢＤパケットに含まれるＬＳＡヘッダを格納し、ＬＳＡｃｋパケットをルート集約装置１００に返信する。さらに、ルータＢは、必要なＬＳＡヘッダを含むＬＳＲパケットをルート集約装置１００に送信する。これに対して、ルート集約装置１００は、ＬＳＡｃｋパケットをルータＢから受信し、さらにＬＳＲパケットを受信する。ＬＳＡｃｋパケットについては転送する必要はないので、ルート集約装置１００が破棄する。
【００３１】
ＬＳＲパケットを受信すると、ルート集約装置１００のＯＳＰＦパケット判定部Ｂは、ＬＳＡ集約テーブルＡから、要求されているＬＳＡ（集約ＬＳＡとも呼ぶ）を読み出し、当該ＬＳＡを含み且つＩＰヘッダのソースアドレスがルータＡのアドレスであるＬＳＵパケットを生成して、ルータＢに返信する。ルータＢは、ルート集約装置１００からＬＳＵパケットを受信し、ＬＳＵパケットに含まれるＬＳＡをＬＳＤＢに格納する。そして、ルータＢは、ＬＳＡｃｋパケットをルート集約装置１００に返信する。ルート集約装置１００は、ＬＳＡｃｋパケットを破棄する。
【００３２】
同様に、ルート集約装置１００の例えばＯＳＰＦパケット判定部Ａは、ＬＳＡ集約テーブルＢに保持しているＬＳＡ情報の全ヘッダが含まれるＤＢＤパケットをルータＡに対して送信する。なお、ここでルート集約装置１００は、ルータＢを装っている。ルータＡは、ＤＢＤパケットを受信すると、ＤＢＤパケットに含まれるＬＳＡヘッダを格納し、ＬＳＡｃｋパケットをルート集約装置１００に返信する。さらに、ルータＡは、必要なＬＳＡヘッダを含むＬＳＲパケットをルート集約装置１００に送信する。これに対して、ルート集約装置１００は、ＬＳＡｃｋパケットをルータＡから受信し、さらにＬＳＲパケットを受信する。ＬＳＡｃｋパケットについては転送する必要はないので、ルート集約装置１００が破棄する。
【００３３】
ＬＳＲパケットを受信すると、ルート集約装置１００のＯＳＰＦパケット判定部Ａは、ＬＳＡ集約テーブルＢから、要求されているＬＳＡ（集約ＬＳＡとも呼ぶ）を読み出し、当該ＬＳＡを含み且つＩＰヘッダのソースアドレスがルータＢのアドレスであるＬＳＵパケットを生成して、ルータＡに返信する。ルータＡは、ルート集約装置１００からＬＳＵパケットを受信し、ＬＳＵパケットに含まれるＬＳＡをＬＳＤＢに格納する。そして、ルータＡは、ＬＳＡｃｋパケットをルート集約装置１００に返信する。ルート集約装置１００は、ＬＳＡｃｋパケットを破棄する。
【００３４】
以上のような処理を実施すれば、Ｆｕｌｌ状態（Full State）に遷移する。すなわち、ＯＳＰＦによってパケットのルーティングを行うことができる定常状態に達したことになる。
【００３５】
次に、ルート集約装置１００の具体的な処理について図８乃至図１４を用いて説明する。まず、ルート集約装置１００は、パケットを受信すると（ステップＳ１）、パケット判別部１０１は、受信したパケットのＩＰヘッダにおけるプロトコル番号がＯＳＰＦを表す「８９」であるか判断する（ステップＳ３）。プロトコル番号が「８９」以外である場合には、対向先ルータに受信パケットをそのまま転送する（ステップＳ１１）。そして次のパケットの処理に移行する。
【００３６】
一方、プロトコル番号がＯＳＰＦを表す「８９」である場合には、パケット判別部１０１は、受信パケットを、ＯＳＰＦパケット判定部Ａ又はＢ（ルータＡからであればＡに、ルータＢからであればＢに）に出力し、ＯＳＰＦパケット判定部Ａ又はＢは、ＯＳＰＦヘッダを参照してＯＳＰＦパケットタイプＴが１乃至５のいずれであるか判断する（ステップＳ５）。ＯＳＰＦパケットタイプＴが「１」（すなわちＨｅｌｌｏパケット）であればステップＳ１１に移行する。このように図５の処理が行われる。
【００３７】
またＯＳＰＦパケットタイプＴ＝「２」（すなわちＤＢＤパケット）である場合には、ＤＢＤパケット内のＬＳＡヘッダをＬＳＡテーブルＡ又はＢに格納し（ステップＳ７）、ＩＰヘッダのソースアドレスに対向側のルータのアドレスをセットしたＬＳＡｃｋパケットをＤＢＤパケットの送信元ルータに返信すると共に、受信したＬＳＡヘッダを含み且つＩＰヘッダのソースアドレスに対向側のルータのアドレスをセットしたＬＳＲパケットを、ＤＢＤパケットの送信元ルータに返信する（ステップＳ９）。そして次のパケットの処理に移行する。このように図６の処理が行われる。
【００３８】
一方、ＯＳＰＦパケットタイプが３乃至５である場合には、端子Ａを介して図９の処理に移行する。
【００３９】
図９の処理の説明に移行して、ＯＳＰＦパケットタイプが「３」（すなわちＬＳＲパケット）である場合には（ステップＳ１３）、ＯＳＰＦパケット判定部Ａ又はＢは、対向側の集約ＬＳＡを対向側のＬＳＡ集約テーブルから読み出して、当該集約ＬＳＡを含み且つＩＰヘッダのソースアドレスに対向側ルータのアドレスをセットしたＬＳＵパケットを生成して、送信元ルータに返信する（ステップＳ１５）。そして端子Ｂを介して次のパケットの処理に移行する。このように図７におけるＬＳＵパケット送信の処理が行われる。
【００４０】
一方、ＯＳＰＦパケットタイプが「５」（すなわちＬＳＡｃｋパケット）である場合には（ステップＳ１３）、ＯＳＰＦパケット判別部Ａ又はＢは、パターンＡが設定されているか判断する（ステップＳ１７）。パターンＡというのは、以下でも述べるが、矛盾したＬＳＡが送られてきた場合に設定されるモードである。パターンＡである場合には、受信したＬＳＡｃｋパケットをそのまま対向ルータに伝送する（ステップＳ１９）。また、パターンＡの設定を解除する（ステップＳ２０）。そして端子Ｂを介して次のパケットの処理に移行する。一方、パターンＡでない場合には、図６及び７で示したように代理で応答した場合に相当するので対向側ルータにＬＳＡｃｋパケットを伝送するのは無駄であり、ＬＳＡｃｋパケットを破棄する（ステップＳ２１）。そして端子Ｂを介して次のパケットの処理に移行する。
【００４１】
また、ＯＳＰＦパケットタイプが「４」（すなわちＬＳＵパケット）である場合には（ステップＳ１３）、ＯＳＰＦパケット判定部Ａ又はＢは、ＬＳＵパケットに含まれるＬＳＡをＬＳＡテーブルＡ又はＢに登録すると共に、ＬＳＡ参照テーブルＡ又はＢにも格納する。そして、ＬＳＡ集約部Ａ又はＢは、最初のＬＳＵパケットであれば（ステップＳ２３：Ｙｅｓルート）、初期ＬＳＵ処理を実施する（ステップＳ２５）。この初期ＬＳＵ処理については、図１０乃至図１２を用いて説明する。そして、初期ＬＳＵ処理の後に、例えばＬＳＡ集約部Ａ又はＢは、今回集約を行った結果が格納されているＬＳＡ集約テーブルＡ又はＢにあるＬＳＡを基に、ＤＢＤパケットを対向側のルータに送信する（ステップＳ２７）。ステップＳ２７の処理は図７におけるＤＢＤパケットの送信処理に相当する。そして端子Ｂを介して次のパケットの処理に移行する。
【００４２】
一方、最初のＬＳＵパケットではなく、ネットワークの変更を反映するためのＬＳＵパケットである場合には、ＬＳＡ集約部Ａ又はＢは、ＬＳＵ処理を実施する（ステップＳ２９）。このＬＳＵ処理については、図１３及び図１４を用いて説明する。そして端子Ｂを介して次のパケットの処理に移行する。
【００４３】
次に、図１０乃至図１２を用いて初期ＬＳＵ処理について説明する。ＯＳＰＦパケット判定部Ａ又はＢは、受信したＬＳＵパケットに含まれるＬＳＡをＬＳＡテーブルＡ又はＢに格納し（ステップＳ３１）、さらにＬＳＡをＬＳＡ参照テーブルＡ又はＢに格納する（ステップＳ３５）。そして、ＬＳＡ集約部Ａ又はＢは、カウンタＸを１にセットし（ステップＳ３５）、ＬＳＡ参照テーブルＡ又はＢにＸ番目のレコードが存在するか判断する（ステップＳ３７）。Ｘ番目のレコードが存在しない場合には、処理が完了したことになるので、元の処理に戻る。
【００４４】
一方、Ｘ番目のレコードが存在する場合には、ＬＳＡ集約部Ａ又はＢは、Ｍ＝新規ＬＳＡサブネットマスク（Ｘ番目のレコードのＬＳＡのサブネットマスク）−１と設定する（ステップＳ３９）。例えば、「１０．１．１．０／２４」がＸ番目のレコードのＬＳＡである場合には、Ｍ＝２３となる。そして、サブネットマスクＭとしたときに、ＬＩＮＫＩＤ（すなわち、ＩＰアドレス部分）が一致する他のネットワークが存在するか判断する（ステップＳ４１）。ここで図３で示した上段の例をバイナリ表現に直すと図１１のようになる。（１）乃至（７）は、「１０．１．１．０／２４」「１０．１．２．０／２４」「１０．１．３．０／２４」「１０．１．４．０／２４」「１０．１．５．０／２４」「１０．１．６．０／２４」「１０．１．７．０／２４」を表している。「１０．１．１．０／２４」を処理対象とすると、Ｍ＝２３ではＬＩＮＫＩＤが一致する他のネットワークは存在しない。
【００４５】
そこで、ＬＳＡ集約部Ａ又はＢは、Ｍ＝Ｚであるか判断する（ステップＳ４３）。Ｚは、予め定められた集約限界であり、例えば「８」以上の整数が設定される。Ｍ＝Ｚでなければ、Ｍを１デクリメントし（ステップＳ４７）、ステップＳ４１に戻る。「１０．１．１．０／２４」が処理対象であれば、Ｍ＝２２で（２）及び（３）と一致するようになる。そうすると、ＬＳＡ集約部Ａ又はＢは、ＬＩＮＫＩＤに、一致する範囲のネットワークアドレスを設定し、ＬＩＮＫＤＡＴＡにＭを設定し、ＬＳＡ集約テーブルＡ又はＢに登録する（ステップＳ５１）。上で述べた例では、ＬＩＮＫＩＤ＝「１０．１．０．０」、ＬＩＮＫＤＡＴＡ＝２２となり、「１０．１．０．０／２２」がＬＳＡ集約テーブルＡ又はＢに登録される。さらに、一致するネットワークについての（Ｘ＋１）番目以降のレコードをＬＳＡ参照テーブルＡ又はＢから削除する（ステップＳ５３）。上で述べた例では、（２）及び（３）のレコードを削除する。そしてＸを１インクリメントし（ステップＳ５５）、ステップＳ３７に戻る。
【００４６】
なお、Ｍ＝Ｚになった場合には（ステップＳ４３：Ｙｅｓルート）、集約は不可能と判断し、処理に係るＬＳＡ（すなわち新規ＬＳＡ）をＬＳＡ集約テーブルＡ又はＢに登録する（ステップＳ４９）。そしてステップＳ５５に移行する。
【００４７】
上で述べた例では、（４）が次の処理対象となる。（４）が処理対象となった場合、Ｍ＝２３で（５）と一致することになるので、「１０．１．４．０／２３」がＬＳＡ集約テーブルＡ又はＢに登録される。そして（５）が削除される。
【００４８】
さらに、（６）が次の処理対象となる。（６）が処理対象となった場合、Ｍ＝２３で（７）と一致することになるので、「１０．１．６．０／２３」がＬＳＡ集約テーブルＡ又はＢに登録される。そして（７）が削除される。このようにして処理が終了する。
【００４９】
また、図３で示した下段の例をバイナリ表現に直すと図１２のようになる。（１）を処理対象とすると、Ｍ＝２１になったときに（２）及び（３）と一致することになる。従って、「１０．１．１６．０／２１」がＬＳＡ集約テーブルＡ又はＢに登録される。（４）が処理対象になると他には集約対象がないので、「１０．１．２０．０／２４」をＬＳＡ集約テーブルＡ又はＢに登録する。
【００５０】
以上のような処理を実施するとおよそＬＳＡを１／２に集約することができる。但し、ステップＳ４１では１つでも他のネットワークに一致すれば「一致」と判断するが、これを例えば３つ以上他のネットワークに一致しなければ「一致」と判断しないといったような形で変形することも可能である。例えば、図１１の例で、（１）を処理対象としたとき、上で述べた例ではＭ＝２２で（１）乃至（３）が一致と判断されたが、３つ以上他のネットワークに一致するという要件を課せば、Ｍ＝２１にしなければこの要件を満たしたことにならない。Ｍ＝２１にすれば、（１）乃至（７）が一致と判断されるので、「１０．１．０．０／２１」がＬＳＡ集約テーブルＡ又はＢに登録される。すなわち、状況によってはより集約を進めることができるようになり、データ量を減少させることができる。
【００５１】
なお、図１０の処理をＬＳＡ集約テーブル内のレコードについてもう一度実施するようにすれば、さらに集約が進みデータを圧縮することができるようになる。
【００５２】
次に、図１３及び図１４を用いてＬＳＵ処理の詳細について説明する。ＬＳＵ処理は、初期的なＬＳＵの集約処理が終了した後にＬＳＵパケットを受信した場合に実施される。
【００５３】
まず、ＬＳＵパケットを受信すると、ＯＳＰＦパケット判定部Ａ又はＢは、ＬＳＵパケットに含まれるＬＳＡをＬＳＡテーブルＡ又はＢとＬＳＡ参照テーブルＡ又はＢに格納する（ステップＳ６１）。ＬＳＡ集約部Ａ又はＢは、ＬＳＵパケットの送信元の方のＬＳＡ集約テーブル内のデータと受信ＬＳＡとを比較して、受信ＬＳＡが既登録レコードで表されるネットワーク内に含まれるか判断する（ステップＳ６３）。例えば、図３の例でネットワークＡの１つのサブネットワーク「１０．１．７．０／２４」が除去された場合には、残りの６つのサブネットワークに対応してリンク情報１乃至６をＬＳＡ情報として含むＬＳＵパケットを受信することになる。このような場合には、受信ＬＳＡはＬＳＡ集約テーブルＡの既登録レコードで表されるネットワーク内に含まれるので、ＬＳＡ集約テーブルＡを更新する必要はない。
【００５４】
また、ＬＳＡ集約テーブルＡに、「１０．１０．０．０／１６」というレコードが存在しているところに、「１０．１０．１０．０／２４」というＬＳＡを受信した場合にも、明らかに既登録レコードで表されるネットワークに含まれると判断される。
【００５５】
従って、受信ＬＳＡが既登録レコードで表されるネットワーク内に含まれる場合には、ＬＳＡ集約部Ａ又はＢは、受信ＬＳＡをＬＳＡ参照テーブルＡ又はＢから削除し（ステップＳ６５）、例えばＬＳＡ集約部Ａ又はＢ（ＯＳＰＦパケット判定部Ａ又はＢの場合もある）は、ＬＳＵパケットの送信元のルータに対してＬＳＡｃｋを返信する（ステップＳ６７）。そして元の処理に戻る。
【００５６】
一方、ＬＳＡ集約テーブルＡに「１０．１０．０．０／１６」というレコードが存在しているところに、「１０．２０．０．０／１６」というＬＳＡを受信した場合など、受信ＬＳＡが既登録レコードで表されるネットワーク内に含まれないと判断された場合には、ＬＳＡ集約部Ａ又はＢは、受信ＬＳＡが対向側のＬＳＡ集約テーブルの既登録レコードで表されるネットワーク内に含まれるか判断する（ステップＳ６９）。これは、矛盾するようなＬＳＡ情報を受信したか判断するものである。このような、受信ＬＳＡが、対向側のＬＳＡ集約テーブルの既登録レコードで表されるネットワーク内に含まれると判断された場合には、例えばＬＳＡ集約部Ａ又はＢは、受信ＬＳＵパケットと同じものを対向側のルータに送信する（ステップＳ７１）。また、ＬＳＡ集約部Ａ又はＢは、受信ＬＳＡをＬＳＵパケットの送信元の方のＬＳＡ集約テーブルに登録する（ステップＳ７３）。さらに、パターンＡを設定する（ステップＳ７５）。これによってステップＳ１９でＬＳＡｃｋパケットの転送が行われるようになる。処理は元の処理に戻る。
【００５７】
一方、受信ＬＳＡが、対向側のＬＳＡ集約テーブルの既登録レコードで表されるネットワーク内に含まれないと判断された場合には、例えばＬＳＡ集約部Ａ又はＢは、送信元ルータに対してＬＳＡｃｋを返信する（ステップＳ７７）。
【００５８】
そして、ＬＳＡ集約部Ａ又はＢは、Ｍ＝新規ＬＳＡサブネットマスク（受信ＬＳＡのサブネットマスク）−１と設定する（ステップＳ７９）。例えば、「１０．１．８．０／２４」が受信ＬＳＡである場合には、Ｍ＝２３となる。そして、サブネットマスクＭとしたときに、ＬＳＡ集約テーブルにＬＩＮＫＩＤ（すなわち、ＩＰアドレス部分）が一致するレコードが存在するか判断する（ステップＳ８１）。
【００５９】
例えば、図１４の（Ａ）（Ｂ）（Ｃ）というレコードがＬＳＡ集約テーブルＡに含まれ、図１４の下段に示すような「１０．１．８．０／２４」というＬＳＡを受信した場合には、Ｍ＝２３では、ＬＳＡ集約テーブルＡにＬＩＮＫＩＤが一致するレコードは存在しない。
【００６０】
Ｍの時に受信ＬＳＡのＬＩＮＫＩＤとＬＳＡ集約テーブルＡ又はＢに登録されているレコードのＬＩＮＫＩＤとが一致しない場合には、ＬＳＡ集約部Ａ又はＢは、Ｍ＝Ｚであるか判断する（ステップＳ８３）。Ｚは、予め定められた集約限界であり、初期ＬＳＵ処理とは異なる値を設定できる。例えば「８」以上の整数が設定される。なお、小さな値を設定すると、集約されすぎることもあるので、初期ＬＳＵ処理で「８」でも、ここでは例えば「１６」を設定するといったようなことを行っても良い。Ｍ＝Ｚでなければ、Ｍを１デクリメントし（ステップＳ８５）、ステップＳ８１に戻る。
【００６１】
図１４の例では、Ｍ＝２２でも一致せず、Ｍ＝２１でも一致せず、Ｍ＝２０となるとＬＳＡ集約テーブルＡのレコード（Ａ）（Ｂ）（Ｃ）と受信ＬＳＡとが一致することになる。そうすると、ＬＳＡ集約部Ａ又はＢは、ＬＩＮＫＩＤに、一致する範囲のネットワークアドレスを設定し、ＬＩＮＫＤＡＴＡにＭを設定して新規集約レコードを生成し、当該新規集約レコードでＬＳＡ集約テーブルＡ又はＢを更新する（ステップＳ８９）。上で述べた例では、Ｍ＝２０で「１０．１．０．０／２０」に全て集約されたので、ＬＳＡ集約テーブルのレコードを全て削除して、「１０．１．０．０／２０」のみを登録することになる。
【００６２】
その後、例えばＬＳＡ集約部Ａ又はＢは、新規集約レコードを含むＬＳＵパケット生成して、対向側ルータに送信する（ステップＳ９１）。これにてネットワークの変更を対向側ルータに通知することになる。なお、パターンＡというモードではないので、対向側ルータからＬＳＡｃｋパケットを受信しても、ＯＳＰＦパケット判定部Ａ又はＢが破棄する。そして元の処理に戻る。
【００６３】
一方、ステップＳ８３でＭ＝Ｚになった場合には、ＬＳＡ集約部Ａ又はＢは、集約は不可能と判断し、受信ＬＳＡをＬＳＡ集約テーブルＡ又はＢに登録する（ステップＳ８７）。例えば「２０．１．１．０／２４」といったＬＳＡを受信した場合には、ステップＳ８７で、そのまま登録される。そして元の処理に戻る。
【００６４】
なお、受信ＬＳＡが複数の場合には、ステップＳ７９乃至Ｓ９１については、各ＬＳＡについて実施する。
【００６５】
このような処理を実施することによって、サブネットマスクについてできるだけ長いビット長で且つ可能な限り集約を行うことができるようになる。
【００６６】
以上本発明に実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、図４に示したルート集約装置１００の機能ブロック図は一例であって、必ずしも実際のモジュール分けが図４と一致しない場合もある。また、各機能はハードウエアによって実装される場合もあれば、ソフトウエアで実装される場合もある。
【００６７】
また、上で述べた初期ＬＳＵ処理では、Ｍをデクリメントするような処理を行ったが、ＭをＺから順にインクリメントして一致するものが１つも無くなった場合にＭを１つ戻してその段階で一致するもので集約するといった処理に置き換えることもできる。ＬＳＵ処理でも同様な処理に変更することも可能である。
【００６８】
さらに、処理フローは同様の結果を得られれば、ステップの処理順番を入れ替えたり同時に実施して良い。
【００６９】
以上述べた実施の形態をまとめると以下のようになる。ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置は、ＯＳＰＦに係るパケットを抽出する手段と、ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出する手段と、抽出されたＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約手段と、ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信する手段とを有する。
【００７０】
このようなルート集約装置を採用することによって、ルート集約装置に接続されるネットワーク装置には、それぞれ対向側のネットワークのデータが集約された形で提示されるので、ＬＳＤＢに保持すべきデータ量が削減され、それらのネットワーク装置の能力が低い場合においても安定的に動作するようになる。
【００７１】
また、ＬＳＡ集約テーブルが一度生成された後にＬＳＵパケットを受信した場合には、上で述べた集約手段が、受信したＬＳＵパケットに含まれるＬＳＡ情報と、ＬＳＡ集約テーブルに登録されている情報との集約を行い、ＬＳＡ集約テーブルを更新するようにしてもよい。このようにすれば、ネットワーク装置起動時だけではなく、その後のネットワーク構成の変更に対しても、ＬＳＤＢに保持すべきデータ量が削減される。
【００７２】
また、上で述べたＬＳＡ集約テーブルが、第１のネットワーク装置用のＬＳＡ集約テーブルと、ルート集約装置を挟んで第１のネットワーク装置と対向する第２のネットワーク装置用のＬＳＡ集約テーブルとを含むようにしてもよい。その場合、ＬＳＡ集約テーブルが一度生成された後にＬＳＵパケットを受信した場合には、上で述べた集約手段が、受信したＬＳＵパケットの送信元のネットワーク装置に対向する対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報と、受信したＬＳＵパケットに含まれるＬＳＡ情報とを比較し、当該ＬＳＡ情報が対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報に包含されるものであれば、受信したＬＳＵパケットを、対向ネットワーク装置に送信するようにしてもよい。通常では受信ＬＳＡ情報が対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報に包含されるということはないので、上で述べたケースは矛盾したＬＳＡ情報を受信したことになる。このような矛盾についてはルート集約装置では解決できないので、集約手段で集約処理を実施することなく、対向するネットワーク装置に送信するものである。
【００７３】
また、上で述べた集約手段が、サブネットマスクを順に例えばビット長を長くする方向又は短くする方向に変更し、変更後のサブネットマスクの状態でアドレス部分が一致するＬＳＡ情報を、当該一致するアドレス部分と変更後のサブネットマスクとで集約するようにしてもよい。このようにすれば適切にＬＳＡ情報を集約することができるようになる。なお、「一致」については同じものが２つで「一致」と判断することも可能であるが、３つ以上同じものがある場合に「一致」と判断するようにして、データ削減割合を増加させるようにしても良い。
【００７４】
なお、上記装置を実現するためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークなどを介してデジタル信号として配信される場合もある。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【００７５】
（付記１）
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置であって、
ＯＳＰＦに係るパケットを抽出する手段と、
前記ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出する手段と、
抽出された前記ＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約手段と、
前記ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、前記ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信する手段と、
を有するルート集約装置。
【００７６】
（付記２）
前記ＬＳＡ集約テーブルが一度生成された後に前記ＬＳＵパケットを受信した場合には、前記集約手段が、受信した前記ＬＳＵパケットに含まれるＬＳＡ情報と、前記ＬＳＡ集約テーブルに登録されている情報との集約を行い、前記ＬＳＡ集約テーブルを更新する
付記１記載のルート集約装置。
【００７７】
（付記３）
前記ＬＳＡ集約テーブルが、第１のネットワーク装置用のＬＳＡ集約テーブルと、第２のネットワーク装置用のＬＳＡ集約テーブルとを含み、
前記ＬＳＡ集約テーブルが一度生成された後に前記ＬＳＵパケットを受信した場合には、前記集約手段が、受信した前記ＬＳＵパケットの送信元のネットワーク装置に対向する対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報と、受信した前記ＬＳＵパケットに含まれるＬＳＡ情報とを比較し、当該ＬＳＡ情報が前記対向ネットワーク装置用のＬＳＡ集約テーブルに登録されている情報に包含されるものであれば、受信した前記ＬＳＵパケットを、前記対向ネットワーク装置に送信する
付記１記載のルート集約装置。
【００７８】
（付記４）
前記集約手段が、
サブネットマスクを順に変更し、変更後のサブネットマスクの状態でアドレス部分が一致するＬＳＡ情報を、当該一致するアドレス部分と前記変更後のサブネットマスクとで集約する
付記１記載のルート集約装置。
【００７９】
（付記５）
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置に、
ＯＳＰＦに係るパケットを抽出するステップと、
前記ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出するステップと、
抽出された前記ＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約ステップと、
前記ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、前記ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信するステップと、
を実行させるプログラム。
【００８０】
（付記６）
ＯＳＰＦ（Open Shortest Path Fast）によるルーティングを実施する複数のネットワーク装置間に接続するためのルート集約装置により実行される集約処理方法であって、
ＯＳＰＦに係るパケットを抽出するステップと、
前記ＯＳＰＦに係るパケットからＬＳＵ（Link-State Update）パケットを抽出するステップと、
抽出された前記ＬＳＵパケットに含まれるＬＳＡ（Link-State Advertisement）情報を集約して、ＬＳＡ集約テーブルに登録する集約ステップと、
前記ＬＳＡ集約テーブルに登録されている情報を用いてＬＳＵパケットを生成し、前記ＬＳＵパケットの送信元ネットワーク装置に対向するネットワーク装置に対して送信するステップと、
を含む集約処理方法。
【図面の簡単な説明】
【００８１】
【図１】従来技術の問題を説明するための図である。
【図２】従来技術の問題を説明するための図である。
【図３】本発明の実施の形態の概要を説明するための図である。
【図４】ルート集約装置の機能ブロック図である。
【図５】ルータ起動時の処理を説明するための図である。
【図６】ルータ起動時の処理を説明するための図である。
【図７】ルータ起動時の処理を説明するための図である。
【図８】ルート集約装置の処理フローを示す図である。
【図９】ルート集約装置の処理フローを示す図である。
【図１０】初期ＬＳＵ処理の処理フローを示す図である。
【図１１】初期ＬＳＵ処理を説明するための具体例を示す図である。
【図１２】初期ＬＳＵ処理を説明するための具体例を示す図である。
【図１３】ＬＳＵ処理の処理フローを示す図である。
【図１４】ＬＳＵ処理を説明するための具体例を示す図である。
【符号の説明】
【００８２】
１００  ルート集約装置    １０１  パケット判別部
【図１】
0005045551.tif 000002
【図２】
0005045551.tif 000003
【図３】
0005045551.tif 000004
【図４】
0005045551.tif 000005
【図５】
0005045551.tif 000006
【図６】
0005045551.tif 000007
【図７】
0005045551.tif 000008
【図８】
0005045551.tif 000009
【図９】
0005045551.tif 000010
【図１０】
0005045551.tif 000011
【図１１】
0005045551.tif 000012
【図１２】
0005045551.tif 000013
【図１３】
0005045551.tif 000014
【図１４】
0005045551.tif 000015