(57)【要約】【課題】方路選択動作をルーティングテーブルに基づいて行う複数のルータなどの通信装置が回線で接続されたネットワークにおいて、通信装置または回線に状態変化が生じたときに送信されるフラッディングメッセージの量を削減することが可能なフラッディング量削減方法を得ること。【解決手段】フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置にフラッディングメッセージを送信する。【選択図】      図２
2004349881.tif 000002
【特許請求の範囲】
【請求項１】
インタフェースから入力される通信データを、その宛先アドレスに基づいて所定のインタフェースに出力して転送処理を行う複数の通信装置が通信回線を介して接続されたネットワークにおいて送信されるフラッディングメッセージの量を削減するフラッディング量削減方法であって、
前記フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置に前記フラッディングメッセージを送信することを特徴とするフラッディング量削減方法。
【請求項２】
前記フラッディングメッセージには、該フラッディングメッセージの送信を行う通信装置に隣接する通信装置を示す隣接ノード情報が格納されることを特徴とする請求項１に記載のフラッディング量削減方法。
【請求項３】
前記フラッディングメッセージには、該フラッディングメッセージの送信を行う通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信することができない通信装置を除外した通信装置の隣接ノード情報が格納されることを特徴とする請求項１に記載のフラッディング量削減方法。
【請求項４】
前記通信装置は、前記ネットワーク内の全通信装置についての隣接ノード情報を格納する隣接ノードデータベースを保持し、この隣接ノードデータベースを参照して、前記フラッディングメッセージを送信した通信装置に隣接する通信装置と、自通信装置に隣接する通信装置を取得することを特徴とする請求項１に記載のフラッディング量削減方法。
【請求項５】
複数のインタフェース手段と、いずれかの前記インタフェース手段から入力した通信データを、その宛先アドレスに基づいて所定の前記インタフェース手段に出力するように切替えるスイッチ手段と、を備える通信装置において、
自通信装置に隣接する通信装置を示す隣接ノード情報を格納する隣接ノードデータベースと、
フラッディングメッセージを送信する場合に、前記隣接ノード情報を格納した前記フラッディングメッセージを、自通信装置に隣接する通信装置にのみ送信するフラッディングメッセージ処理手段と、
を備えることを特徴とする通信装置。
【請求項６】
前記フラッディングメッセージ処理手段は、他の通信装置から前記フラッディングメッセージを受信した場合に、前記隣接ノードデータベースから取得した自通信装置に隣接する通信装置のうち、前記フラッディングメッセージの前記隣接ノード情報に格納される通信装置と一致する通信装置を除いた通信装置にのみ、前記フラッディングメッセージを転送する機能をさらに備えることを特徴とする請求項５に記載の通信装置。
【請求項７】
前記フラッディングメッセージ処理手段は、前記フラッディングメッセージを送信することができない自通信装置に隣接する通信装置を、前記フラッディングメッセージに格納する前記隣接ノード情報から除外する機能をさらに備えることを特徴とする請求項５または６に記載の通信装置。
【請求項８】
複数のインタフェース手段と、いずれかの前記インタフェース手段から入力した通信データを、その宛先アドレスに基づいて所定の前記インタフェース手段に出力するように切替えるスイッチ手段と、を備える通信装置において、
自通信装置が所属するネットワーク内に存在する全通信装置に関して、前記通信装置に隣接する通信装置を示す隣接ノード情報を格納する隣接ノードデータベースと、
フラッディングメッセージを送信する場合に、前記隣接ノード情報を格納した前記フラッディングメッセージを、自通信装置に隣接する通信装置にのみ送信するフラッディングメッセージ処理手段と、
を備えることを特徴とする通信装置。
【請求項９】
前記フラッディングメッセージ処理手段は、他の通信装置から前記フラッディングメッセージを受信した場合に、前記隣接ノードデータベースから取得した自通信装置に隣接する通信装置のうち、前記隣接ノードデータベースから取得した前記フラッディングメッセージを送信した通信装置に隣接する通信装置と一致する通信装置を除いた通信装置にのみ、前記フラッディングメッセージを転送する機能をさらに備えることを特徴とする請求項８に記載の通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、障害情報や輻輳情報など経路選択に関わる情報を１つのネットワーク内の全てのノードで共有するためのフラッディングメッセージの転送方法において、そのフラッディング量を削減することが可能なフラッディング量削減方法と、このフラッディング量削減方法を実現する通信装置に関するものである。
【０００２】
【従来の技術】
通信データの方路選択動作をルーティングテーブルに基づいて行うルータなどの複数の通信装置が回線で接続されたネットワークにおいて、ある回線に障害などの状態変化が発生した場合に、その状態変化をネットワーク内の通信装置に通知し、その状態変化を回避してデータ通信を行う方法として、種々の従来技術が提案されている。
【０００３】
第１の従来技術には、それぞれのノード（通信装置）が、自ノードに接続されたリンク（回線）の状態変化を検出した場合、または他ノードからのリンク状態変化の通知を受けた場合に、そのリンクの状態変化に応じて方路選択テーブルを更新し、その更新によって、方路の存在しない宛先が生じたか否かを判断し、方路の存在しない宛先が生じた場合のみ他のノードにリンク状態変化通知情報を通知する方路制御方式が開示されている（たとえば、特許文献１参照）。
【０００４】
また、第２の従来技術として、ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）で標準化されたＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）がある（たとえば、非特許文献１参照）。このＯＳＰＦには、状態の変化を全ネットワークに転送するフラッディングについての機能も規定されている。ここでは、フラッディング量を削減するために、指名ルータというものを定義し、指名ルータ以外のルータは状態変化を通知すべきフラッディングメッセージが生じた場合に、まず指名ルータにフラッディングメッセージを転送する。そして、フラッディングメッセージを受信した指名ルータが、ネットワーク内の全ルータに対してフラッディングを行なう。また、指名ルータの障害などに備えて、バックアップ指名ルータも定義しておくことにより、ネットワークの信頼性を確保している。
【０００５】
【特許文献１】
特開昭６１−１３１６４８号公報（第２〜３頁）
【非特許文献１】
Ｊ．  Ｍｏｙ，  ”Ｒｅｑｕｅｓｔ  ｆｏｒ  Ｃｏｍｍｅｎｔｓ：  ２３２８，  ＯＳＰＦ  Ｖｅｒｓｉｏｎ  ２”，  ［ｏｎｌｉｎｅ］，  Ａｐｒｉｌ，  １９９８，  ｒｅｔｒｉｅｖｅｄ  ｆｒｏｍ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ：  ＜ＵＲＬ：  ｈｔｔｐ：／／ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｒｆｃ／ｒｆｃ２３２８．ｔｘｔ？ｎｕｍｂｅｒ＝２３２８＞
【０００６】
【発明が解決しようとする課題】
しかしながら、第１の従来技術の手順では、方路の存在しない宛先ノードが生じない場合には、状態変化通知情報がネットワークに通知されないため、ネットワーク全体の状態をネットワーク内のすべてのノードで共有することができないという問題点があった。また、宛先ノードまでの経路が存在するか否かという観点に着目した方路制御方式であるため、方路変更テーブルの更新は、ホップ数や帯域などを考慮した最適な経路になり得ないという問題点もあった。さらに、各ノードで方路の存在しない宛先ノードが生じた場合に、状態変化通知情報がネットワーク内のノードに対して通知されるが、この通知は通常のフラッディング手順、すなわち、フラッディングメッセージを送信したノードを除く、フラッディングメッセージを受信したノードに隣接するすべてのノードに対してフラッディングメッセージを送信するという手順、によって行なわれるため、フラッディングメッセージの削減が行なわれないという問題点もあった。
【０００７】
一方、第２の従来技術の手順では、第１の従来技術による方路の存在しない宛先ノードが生じない場合に、ネットワーク全体の状態をネットワーク内のすべてのノードで共有できないという問題点や、方路変更テーブルの更新は、ホップ数や帯域などを考慮した最適な経路になり得ないという問題点を解決するものではある。しかし、指名ルータやバックアップ指名ルータがつぎつぎに障害になった場合や、指名ルータやバックアップ指名ルータへの通信経路が閉ざされてしまったルータの場合には、指名ルータやバックアップ指名ルータを使用したフラッディングを行うことができないので、通常のフラッディング手順と同じになってしまい、フラッディングメッセージの削減が行なわれないという問題点があった。
【０００８】
この発明は、上記に鑑みてなされたもので、方路選択動作をルーティングテーブルに基づいて行う複数のルータなどの通信装置が回線で接続されたネットワークにおいて、通信装置または回線に状態変化が生じたときに送信されるフラッディングメッセージの量を削減することが可能なフラッディング量削減方法を得ることを目的とする。また、そのフラッディング量削減方法を実現するための通信装置を得ることも目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するため、この発明にかかるフラッディング量削減方法は、インタフェースから入力される通信データを、その宛先アドレスに基づいて所定のインタフェースに出力して転送処理を行う複数の通信装置が通信回線を介して接続されたネットワークにおいて送信されるフラッディングメッセージの量を削減するフラッディング量削減方法であって、前記フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置に前記フラッディングメッセージを送信することを特徴とする。
【００１０】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるフラッディング量削減方法および通信装置の好適な実施の形態を詳細に説明する。
【００１１】
実施の形態１．
図１は、この発明によるフラッディング量削減方法が適用されるネットワークの一例を示す図である。このネットワークは、いわゆるＩＧＰ（Ｉｎｔｅｒｉｏｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ）が適用される所定の領域に設けられるネットワークであり、複数の通信装置（以下、ノードという）Ａ〜Ｆが、回線Ｌによって接続されて構成される。ノードＡ〜Ｆは、通信データを宛先アドレスに基づいて転送する機能を有するルータなどの通信装置である。
【００１２】
図２は、図１におけるノードの構成の一例を示すブロック図である。このノードは、他のノードにつながる回線と接続される複数のインタフェース部（図中、Ｉ／Ｆと表記）１１、複数のインタフェース部１１と接続され、インタフェース部１１に入力される通信データを他のインタフェース部１１に出力するように交換するスイッチ部（図中、ＳＷと表記）１２、ネットワーク内のノードＡ〜Ｆのコスト情報を含めたリンク状態が格納される接続状態データベース１３、この接続状態データベース１３に基づいて生成されるルーティングテーブル１４、自ノードに隣接するノードについて情報が格納される隣接ノードデータベース１５、自ノード全体を制御する制御部１６を有する。
【００１３】
なお、接続状態データベース１３からルーティングテーブル１４を作成する処理や、ルーティングテーブル１４に基づいてパケットの転送を行う処理については、公知のＯＳＰＦを使用したルータなどの通信装置で使用される技術と同じものであり、この発明の範囲外なので説明を省略し、このノードの構成の中で特徴となる隣接ノードデータベース１５と制御部１６について、さらに詳細に説明する。
【００１４】
隣接ノードデータベース１５は、自ノードに隣接するノードを示す隣接ノード情報を格納する。図３は、図１のネットワーク内の各ノードの有する隣接ノードデータベースの構成を示す図である。この隣接ノードデータベース１５ａ〜１５ｆは、ネットワーク内のノードを識別する項目「ノード番号」と、ネットワーク内でこの「ノード番号」を有するノードに隣接するノード番号が格納される項目「隣接ノード番号」を含む隣接ノード情報から構成される。たとえば、ノードＡの隣接ノードデータベース１５ａの場合、図１に示されるネットワーク構成からこのノードＡに隣接するノードは、ノードＢ〜Ｄとなるので、図３（ａ）に示されるように隣接ノード情報が格納される。ノードＢ〜Ｆについても同様にして、それぞれ図３（ｂ）〜図３（ｆ）に示される隣接ノード情報を有する隣接ノードデータベース１５ｂ〜１５ｆが得られる。このような各ノードＡ〜Ｆにおける隣接ノードの認識は、たとえば、上述した第２の従来技術の非特許文献１に記載されているＨｅｌｌｏプロトコルによって実行することができる。なお、隣接ノードデータベース１５に格納されるノード番号は、必ずしも番号である必要はなく、ネットワーク内のノードを一意に識別することが可能なものであればよい。
【００１５】
制御部１６は、ルーティングテーブル作成機能、ルーティング機能およびフラッディングメッセージ処理機能を有する。ルーティングテーブル作成機能は、接続状態データベース１３を用いて、最短パス優先アルゴリズムによって通信データの宛先アドレスに対応する出力先（インタフェース部）からなるルーティングテーブル１４を生成する公知の機能である。ルーティング機能は、回線を介してインタフェース部１１に入力される通信データの宛先アドレスに対応する出力先をルーティングテーブル１４から求め、通信データがその出力先に出力されるようにスイッチ部１２に指示を出す公知の機能である。
【００１６】
また、制御部１６のフラッディングメッセージ処理機能は、自ノードまたは回線の状態変化時にフラッディングメッセージを送信する際に、隣接ノードデータベース１５から自ノードに隣接する隣接ノード番号を抽出し、これを隣接ノード番号情報としてフラッディングメッセージに格納するとともに、このフラッディングメッセージを隣接するノードに送信するようにスイッチ部１２に指示を出す。また、フラッディングメッセージ処理機能は、他の隣接するノードからフラッディングメッセージを受信した場合には、隣接ノード番号情報を隣接ノードデータベース１５から抽出してフラッディングメッセージに格納するとともに、自ノードに隣接するノードのうち、受信したフラッディングメッセージの隣接ノード番号情報内に格納されているノードと一致するノードを除いたノードに対して、フラッディングメッセージを送信するようにスイッチ部１２に指示を出す。なお、隣接ノード番号情報は、フラッディングメッセージのヘッダ部分ではなく、データ部分に格納されるので、フラッディングメッセージ処理機能は、フラッディングメッセージのデータ部分を確認する必要がある。
【００１７】
つぎに、ノードによるフラッディング量削減方法について説明する。図４は、状態変化を検出したノードによるフラッディングメッセージの送信の処理手順を示すフローチャートである。まず、ノードの制御部１６は、それぞれのノードでなんらかの状態変化が生じたか否かを監視する（ステップＳ１１）。この状態変化は、ネットワーク内の全ノードが共有する情報であれば何でもよい。たとえば、ネットワークの輻輳を起こす可能性のあるような回線使用率や、メッセージを迂回しなければならないような障害や、選択する経路が複数ある場合の選択する回線の優先度などを例示することができる。ここでは、状態変化が生じるまで監視状態にあるものとする（ステップＳ１１でＮｏの場合）。
【００１８】
ノードにおいて、何らかの状態変化を検知した場合（ステップＳ１１でＹｅｓの場合）には、制御部１６は、隣接ノードデータベース１５を参照して、自ノードに隣接するノードのノード番号（隣接ノード番号）を取得する（ステップＳ１２）。そして、この取得したノード番号を隣接ノード番号情報としてフラッディングメッセージに付与し（ステップＳ１３）、隣接するノードにフラッディングメッセージを送信して（ステップＳ１４）、処理が終了する。
【００１９】
図５は、他の隣接ノードからフラッディングメッセージを受信したノードによるフラッディングメッセージ転送の処理手順を示すフローチャートである。まず、インタフェース部１１を介して他の隣接ノードからのフラッディングメッセージを受信すると（ステップＳ２１）、制御部１６は、同じフラッディングメッセージを既に受信したか否かを判断する（ステップＳ２２）。ここで、同じフラッディングメッセージを受信したか否かは、たとえば、上述した非特許文献１に記載されているように、フラッディングメッセージに格納されている発信元ノード番号情報とシーケンス番号を用いて認識することができる。
【００２０】
同じフラッディングメッセージをまだ受信していない場合（ステップＳ２２でＮｏの場合）には、隣接ノードデータベース１５から自ノードに隣接するノードの隣接ノード番号を取得する（ステップＳ２３）。また、制御部１６は、受信したフラッディングメッセージの隣接ノード番号情報を取得する（ステップＳ２４）。
【００２１】
制御部１６は、自ノードに隣接するノードのうち、隣接ノード番号情報内のノード番号と一致するノード番号以外のノードを抽出し（ステップＳ２５）、抽出されたノードの数が０より多いか否かを判定する（ステップＳ２６）。抽出されたノードの数が０の場合（ステップＳ２６でＮｏの場合）には、フラッディングメッセージを送信すべきノードが存在しないので、処理が終了する。一方、抽出されたノードの数が０より多い場合（ステップＳ２６でＹｅｓの場合）には、ステップＳ２３で取得した隣接ノード番号を新たな隣接ノード番号情報としてフラッディングメッセージ内に格納する（ステップＳ２７）。そして、ステップＳ２５で抽出したノードに対して、フラッディングメッセージを送信して（ステップＳ２８）、処理が終了する。
【００２２】
一方、ステップＳ２２で、既に同じフラッディングメッセージを受信している場合（ステップＳ２２でＹｅｓの場合）には、最初に受信したフラッディングメッセージは隣接するすべてのノードに転送していることを保証しているため、２番目以降に受信した同じフラッディングメッセージに関しては転送する必要がないので、処理はそのまま終了する。
【００２３】
ここで、フラッディング量削減方法の具体例について説明する。図６と図７は、図１のノードＡからフラッディングメッセージが送信される場合の各ノードの動作を説明するための図である。ここでは、ノードＡでなんらかの状態変化が生じたものとする。すると、ノードＡは、上述した図４の手順にしたがって、隣接ノードデータベース１５から抽出した隣接ノード番号情報３１ａを格納したフラッディングメッセージ３１を隣接するノードＢ〜Ｄに送信する。
【００２４】
ノードＢは、フラッディングメッセージ３１を受信すると、上述した図５の手順にしたがって、自ノードに隣接するノードＡ，Ｃ，Ｅから、フラッディングメッセージを送信したノードＡに隣接するノードＢ，Ｃ，Ｄ（フラッディングメッセージ３１に格納されている隣接ノード番号情報３１ａから取得する）と一致するノードＣを除外して得られるノードＥを、フラッディングメッセージ３３の宛先ノードとして決定する。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース１５から得られる隣接ノードのうちノードＡには、フラッディングメッセージは転送されない。そして、上記決定したノードに、隣接ノードデータベース１５ｂから取得した隣接ノード番号を隣接ノード番号情報３３ａとしてフラッディングメッセージ３３に格納して送信する。
【００２５】
同様に、ノードＣは、フラッディングメッセージ３４の宛先としてノードＥ，Ｆを決定して、これらのノードＥ，Ｆに、隣接ノードデータベース１５ｃから取得した隣接ノード番号を隣接ノード番号情報３４ａとしてフラッディングメッセージ３４に格納して送信する。また、ノードＤは、フラッディングメッセージ３５の宛先としてノードＥを決定して、このノードＥに、隣接ノードデータベース１５ｄから取得した隣接ノード番号を隣接ノード番号情報３５ａとしてフラッディングメッセージ３５に格納して送信する。
【００２６】
つぎに、ノードＥは、ノードＢ〜Ｄからそれぞれフラッディングメッセージ３３〜３５を受信すると、最初に受け取ったフラッディングメッセージについて、図５のステップＳ２２でＮｏの場合の手順にしたがって、フラッディングメッセージをつぎに送信するノードを決定し、この決定したノードに、隣接ノードデータベース１５ｅから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。その後に受け取ったフラッディングメッセージについては、上記フラッディングメッセージと同じメッセージであると判断されるので、図５のステップＳ２２でＹｅｓの場合の手順にしたがって、転送する処理は行われない。
【００２７】
たとえば、最初にノードＢからフラッディングメッセージ３３を受信したタイミングでは、図７のノードＥの隣接ノードデータベース１５ｅの２７ａに示されるように、自ノードに隣接するノードＢ，Ｃ，Ｄ，Ｆから、フラッディングメッセージを送信したノードＢに隣接するノードＡ，Ｃ，Ｅと一致するノードＣを除外して得られるノードＤ，Ｆを、フラッディングメッセージの宛先として決定する。そして、隣接ノードデータベース１５ｅから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードＣ，Ｄからのフラッディングメッセージについての転送処理は行われない。
【００２８】
また、同様に、最初にノードＣからフラッディングメッセージ３４を受信したタイミングでは、図７のノードＥの隣接ノードデータベース１５ｅの２７ｂに示されるように、フラッディングメッセージをつぎに送信するノードとしてノードＤを決定し、隣接ノードデータベース１５ｅから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードＢ，Ｄからのフラッディングメッセージについての転送処理は行われない。
【００２９】
同じく、最初にノードＤからフラッディングメッセージ３５を受信したタイミングでは、図７のノードＥの隣接ノードデータベース１５ｅの２７ｃに示されるように、フラッディングメッセージをつぎに送信するノードとしてノードＢ，Ｃ，Ｆを決定し、隣接ノードデータベース１５ｅから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードＢ，Ｃからのフラッディングメッセージについての転送処理は行われない。
【００３０】
また、ノードＦは、ノードＣからフラッディングメッセージ３４を受信すると、図５の手順にしたがって、図７のノードＦの隣接ノードデータベース１５ｆに示されるように、自ノードに隣接するノードＣ，Ｅから、フラッディングメッセージを送信したノードＣに隣接するノードＡ，Ｅと一致するノードＥを除外する。その結果、フラッディングメッセージを送信すべきノードが存在しないので、ノードＦはフラッディングメッセージを送信する処理を行わない。
【００３１】
一方、この発明によらないでフラッディングメッセージを送信する場合には、ノードＢはノードＣに対して、ノードＣはノードＢに対して、ノードＦはノードＥに対して、それぞれフラッディングメッセージを送信しなければならない。このことからも明らかなように、この発明では、ネットワーク中を流れるフラッディングメッセージの量を削減することが可能となる。
【００３２】
なお、フラッディングメッセージを受信したノードは、そのフラッディングメッセージに基づいて、接続状態データベース１３を更新し、さらにルーティングテーブル１４を更新する。
【００３３】
この実施の形態１によれば、フラッディングメッセージを受信した回線に接続するノード以外の全てのノードに対してフラッディングメッセージを転送する場合に比べて、フラッディングメッセージを転送する量を減らすことができ、リアルタイム性を損なわずにトラフィック量の削減と、通信装置にかかる処理負荷の軽減が可能となる効果がある。
【００３４】
実施の形態２．
たとえば、図１において、ノードＡが自身のリソース不足などにより、ノードＣと接続する回線ＬＡＣにフラッディングメッセージ３１を転送できなかったとする。このとき回線ＬＡＣは一時的な障害であると考えられるため、隣接ノードを確認するプロトコル、たとえばＯＳＰＦのＨｅｌｌｏプロトコルだけでは、隣接ノードが存在しなくなったことを認識できず、ノードＡの有する隣接ノードデータベース１５ａの隣接ノード番号の一覧からノードＣを削除することができない。そのため、隣接ノード番号情報にノードＣの情報が含まれたフラッディングメッセージが送信されてしまう。このとき、上述した実施の形態１の手順では、ノードＣはノードＢからもフラッディングメッセージを受信することができなくなり、ネットワーク内で迅速に情報を共有することができなくなってしまう。そこで、この実施の形態２では、このような事態を回避するための方法について説明する。
【００３５】
実施の形態１の図２に示される通信装置（ノード）の制御部１６のフラッディングメッセージ処理機能は、フラッディングメッセージを送信する際に、フラッディングメッセージに隣接ノードデータベース１５から抽出した隣接ノード番号を格納していたが、この実施の形態２では、ノードの制御部１６は、実際にフラッディングメッセージを転送するノード番号を隣接ノード番号情報としてフラッディングメッセージに格納することを特徴とする。なお、他の構成要素は、上述した実施の形態１の図２と同一であるので、その説明を省略している。
【００３６】
つぎに、ノードによるフラッディング量削減方法について説明する。図８は、状態変化を検出したノードによるフラッディングメッセージの送信の処理手順を示すフローチャートである。まず、実施の形態１の図４で説明したステップＳ１１と同じ処理を行って、ノードの制御部１６は、それぞれのノードでなんらかの状態変化が生じるまで監視を行う（ステップＳ３１）。制御部１６は、状態変化を検出すると（ステップＳ３１でＹｅｓの場合）、送信不可能な隣接ノードのノード番号を取得し（ステップＳ３２）、隣接ノードデータベース１５から、自ノードに隣接するノードの隣接ノード番号を取得する（ステップＳ３３）。
【００３７】
その後、制御部１６は、ステップＳ３３で取得したノード番号からステップＳ３２で取得した送信不可能な隣接ノードのノード番号を除外したものを隣接ノード番号情報としてフラッディングメッセージに付与し（ステップＳ３４）、送信可能な隣接するノードにフラッディングメッセージを送信して（ステップＳ３５）、処理が終了する。
【００３８】
図９は、他の隣接ノードからフラッディングメッセージを受信したノードが、なんらかの原因によって隣接するノードの一部にフラッディングメッセージを送信できない場合のフラッディングメッセージ転送の処理手順を示すフローチャートである。まず、実施の形態１の図５で説明したステップＳ２１〜Ｓ２３と同じ処理を行って、同じフラッディングメッセージを受信していない場合には、隣接ノードデータベース１５から隣接ノード番号を取得する（ステップＳ４１〜Ｓ４３）。すなわち、フラッディングメッセージを受信すると、制御部１６は、同じフラッディングメッセージを既に受信している場合には処理を終了し、そうでない場合には隣接ノードデータベース１５から隣接ノード番号を取得する。
【００３９】
つぎに、制御部１６は、現時点で送信不可能な隣接ノードのノード番号を取得し（ステップＳ４４）、フラッディングメッセージから隣接ノード番号情報を取得する（ステップＳ４５）。その後、自ノードに隣接するノードのうち、取得した隣接ノード番号情報内のノード番号と一致するノード番号と送信不可能な隣接ノードのノード番号に一致するノード番号以外のノードを抽出し（ステップＳ４６）、抽出されたノードの数が０より多いか否かを判定する（ステップＳ４７）。抽出されたノードの数が０の場合（ステップＳ４７でＮｏの場合）には、フラッディングメッセージを送信すべきノードが存在しないので、処理が終了する。一方、抽出されたノードの数が０より多い場合（ステップＳ４７でＹｅｓの場合）には、ステップＳ４３で取得した隣接ノード番号からステップＳ４４で取得した送信不可能なノード番号を除外したノード番号を新たな隣接ノード番号情報としてフラッディングメッセージ内に格納する（ステップＳ４８）。そして、ステップＳ４６で抽出したノードに対して、フラッディングメッセージを送信して（ステップＳ４９）、処理が終了する。
【００４０】
なお、他の隣接ノードからフラッディングメッセージを受信したノードが、正常である場合には、実施の形態１の図５に示されるフローチャートと同じ処理手順によってフラッディングメッセージを転送する。
【００４１】
ここで、フラッディング量削減方法の具体例について説明する。図１０は、ノードＡからフラッディングメッセージが送信されるときに、ノードＣには送信できない場合の各ノードの動作を説明するための図である。フラッディングメッセージを送信しようとしているノードＡが、上述したようにノードＡ自身のリソース不足などによってノードＣと接続する回線ＬＡＣにフラッディングメッセージを送信できない場合には、上述した図８の手順にしたがって、隣接ノードのうちノードＣを除外したノードＢ，Ｄを隣接ノード番号情報として格納したフラッディングメッセージを、ノードＢ，Ｄに送信する。
【００４２】
ノードＢは、フラッディングメッセージ３１を受信すると、上述した実施の形態１の図５の手順にしたがって、自ノードに隣接するノードＡ，Ｃ，Ｅから、フラッディングメッセージの隣接ノード番号情報に格納されているノードＢ，Ｄと一致するノードを除外して得られるノードＣ，Ｅを、つぎのフラッディングメッセージの宛先として決定する。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース１５から得られる隣接ノードのうちノードＡには、フラッディングメッセージが転送されない。そして、決定した宛先に、隣接ノードデータベース１５ｂから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。同様に、ノードＤは、つぎのフラッディングメッセージの宛先としてノードＥを決定して、このノードＥに、隣接ノードデータベース１５ｄから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。
【００４３】
このようにして、ノードＡに隣接するノードであって、ノードＡからフラッディングメッセージが送信されなかったノードＣは、ノードＢからフラッディングメッセージを受信することができる。なお、その後の処理は、上述した実施の形態１の図５の手順に基づいた処理と同様であるので、その説明を省略する。
【００４４】
なお、フラッディングメッセージを受信したノードは、そのフラッディングメッセージに基づいて、接続状態データベース１３を更新し、さらにルーティングテーブル１４を更新する。
【００４５】
この実施の形態２によれば、フラッディングメッセージを転送するノードの一時的な障害などにも対応することができる。そして、ネットワーク内において確実なフラッディングメッセージの転送を実現することができる。
【００４６】
実施の形態３．
この実施の形態３では、ノードが、ネットワーク内のすべてのノードについての隣接ノード情報を隣接ノードデータベース１５に保有することを特徴とする。
【００４７】
ＯＳＰＦを使用するネットワークにおけるノードでは、図２に示されるように、各ノードが同じ接続状態データベース１３を保有しており、ネットワーク内における各ノードがどのように接続されているのかというネットワークトポロジを把握することができる。また、接続状態データベース１３は、フラッディングメッセージがネットワーク内の全ノードに行き渡ると、そのフラッディングメッセージの内容に基づいて変更されるので、変更後のネットワークトポロジを把握することもできる。そこで、この実施の形態３では、接続状態データベース１３からネットワーク内の各ノードの隣接ノードを把握して、全ノードの隣接ノード情報を格納する隣接ノードデータベース１５を作成する隣接ノードデータベース作成機能を、実施の形態１の制御部１６にさらに有するように構成することを特徴とする。ノードのその他の構成については、実施の形態１の図２と同一であるので、説明は省略する。
【００４８】
図１１は、実施の形態１の図１に示されるネットワーク内の各ノードが共通に保有する隣接ノードデータベースの構成を示す図である。この図１１は、各ノードＡ〜Ｆが保持する接続状態データベース１３から作成されたものであり、図３（ａ）〜（ｆ）のデータが１つにまとめられたものである。この隣接ノードデータベース１５が、図１のノードＡ〜Ｆに格納される。
【００４９】
つぎに、このノードの動作について説明する。図１２は、この発明のフラッディング量削減方法の実施の形態３におけるノードの動作を説明するための図である。たとえば、ノードＢがノードＡから隣接ノード番号情報が付与されていないフラッディングメッセージ３６を受信すると、ノードＢは、隣接ノードデータベース１５の「ノード番号」がノードＡである隣接ノード番号を参照する。この隣接ノード番号によって、ノードＡがノードＢ〜Ｄと接続しているという情報を得て、ノードＡはフラッディングメッセージ３６をノードＢ〜Ｄに送信したと推測することができる。
【００５０】
これによって、ノードＢは、フラッディングメッセージ３６に格納されているはずの隣接ノード番号情報として、隣接ノードデータベース１５のノードＡの隣接ノード番号を用いて、上述した実施の形態１の図５の手順にしたがってフラッディングメッセージの処理を行う。すなわち、ノードＢは、隣接ノードデータベース１５から自ノードに隣接するノードＡ，Ｃ，Ｅを取得し、上記ノードＡに隣接するノードＢ，Ｃ，Ｄと重複しているノードＣ以外のノードＥにのみフラッディングメッセージを転送する処理を行う。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース１５から得られる隣接ノードのうちノードＡには、フラッディングメッセージは転送されない。
【００５１】
また、各ノードがネットワーク内の全ノードの隣接ノード情報を保持することによって、上述した処理を行うことが可能となるので、制御部１６のフラッディングメッセージ処理機能による隣接ノード番号情報のフラッディングメッセージへの格納処理を省くことも可能となる。
【００５２】
なお、隣接ノード番号情報が付与されていないフラッディングメッセージを受信した他のノードＣ，ＤもノードＢの場合と同様にして、自ノードの有する隣接ノードデータベース１５を参照してフラッディングメッセージを転送する処理を行う。
【００５３】
この実施の形態３によれば、ネットワーク内のノードが、転送されるフラッディングメッセージから更新される接続状態データベース１３を利用してそれぞれのノードの隣接ノードの様子を得て、隣接ノードデータベース１５に格納するようにしたので、ネットワーク内のすべてのノードについての隣接ノード情報を得ることができ、それに基づいて隣接ノード番号情報を有しないフラッディングメッセージを受信した場合でも、フラッディングメッセージ量を削減することができるという効果を有する。
【００５４】
【発明の効果】
以上説明したように、この発明によれば、既存のインタフェースの変更をともなわないで、受信した回線に接続するノード以外の全てのノードに対してフラッディングメッセージを転送する場合に比べて、フラッディングメッセージを転送する量を減らすことができるとともに、リアルタイム性を損なわずにトラフィック量の削減と処理負荷の軽減ができるという効果を有する。
【図面の簡単な説明】
【図１】この発明によるフラッディング量削減方法が適用されるネットワークの一例を示す図である。
【図２】この発明による通信装置の構成の一例を示すブロック図である。
【図３】図１のネットワーク内の各ノードの有する隣接ノードデータベースの構成を示す図である。
【図４】フラッディングメッセージの送信の処理手順を示すフローチャートである。
【図５】フラッディングメッセージ転送の処理手順を示すフローチャートである。
【図６】フラッディングメッセージの送信処理の具体例を示す図である。
【図７】フラッディングメッセージの送信処理の具体例を示す図である。
【図８】フラッディングメッセージの送信の処理手順を示すフローチャートである。
【図９】フラッディングメッセージ転送の処理手順を示すフローチャートである。
【図１０】フラッディングメッセージの送信処理の具体例を示す図である。
【図１１】図１に示されるネットワーク内の各ノードが共通に保有する隣接ノードデータベースの構成を示す図である。
【図１２】フラッディングメッセージの送信処理の具体例を示す図である。
【符号の説明】
１１  インタフェース部、１２  スイッチ部、１３  接続状態データベース、１４  ルーティングテーブル、１５  隣接ノードデータベース、１６  制御部、３１〜３７  フラッディングメッセージ、Ａ〜Ｆ  ノード、Ｌ  回線。
【図１】
2004349881.tif 000003
【図２】
2004349881.tif 000004
【図３】
2004349881.tif 000005
【図４】
2004349881.tif 000006
【図５】
2004349881.tif 000007
【図６】
2004349881.tif 000008
【図７】
2004349881.tif 000009
【図８】
2004349881.tif 000010
【図９】
2004349881.tif 000011
【図１０】
2004349881.tif 000012
【図１１】
2004349881.tif 000013
【図１２】
2004349881.tif 000014