JP2004349881A - フラッディング量削減方法および通信装置 - Google Patents
フラッディング量削減方法および通信装置 Download PDFInfo
- Publication number
- JP2004349881A JP2004349881A JP2003142626A JP2003142626A JP2004349881A JP 2004349881 A JP2004349881 A JP 2004349881A JP 2003142626 A JP2003142626 A JP 2003142626A JP 2003142626 A JP2003142626 A JP 2003142626A JP 2004349881 A JP2004349881 A JP 2004349881A
- Authority
- JP
- Japan
- Prior art keywords
- communication device
- adjacent
- node
- flooding
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Abstract
【課題】方路選択動作をルーティングテーブルに基づいて行う複数のルータなどの通信装置が回線で接続されたネットワークにおいて、通信装置または回線に状態変化が生じたときに送信されるフラッディングメッセージの量を削減することが可能なフラッディング量削減方法を得ること。
【解決手段】フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置にフラッディングメッセージを送信する。
【選択図】 図2
【解決手段】フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置にフラッディングメッセージを送信する。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
この発明は、障害情報や輻輳情報など経路選択に関わる情報を1つのネットワーク内の全てのノードで共有するためのフラッディングメッセージの転送方法において、そのフラッディング量を削減することが可能なフラッディング量削減方法と、このフラッディング量削減方法を実現する通信装置に関するものである。
【0002】
【従来の技術】
通信データの方路選択動作をルーティングテーブルに基づいて行うルータなどの複数の通信装置が回線で接続されたネットワークにおいて、ある回線に障害などの状態変化が発生した場合に、その状態変化をネットワーク内の通信装置に通知し、その状態変化を回避してデータ通信を行う方法として、種々の従来技術が提案されている。
【0003】
第1の従来技術には、それぞれのノード(通信装置)が、自ノードに接続されたリンク(回線)の状態変化を検出した場合、または他ノードからのリンク状態変化の通知を受けた場合に、そのリンクの状態変化に応じて方路選択テーブルを更新し、その更新によって、方路の存在しない宛先が生じたか否かを判断し、方路の存在しない宛先が生じた場合のみ他のノードにリンク状態変化通知情報を通知する方路制御方式が開示されている(たとえば、特許文献1参照)。
【0004】
また、第2の従来技術として、IETF(Internet Engineering Task Force)で標準化されたOSPF(Open Shortest Path First)がある(たとえば、非特許文献1参照)。このOSPFには、状態の変化を全ネットワークに転送するフラッディングについての機能も規定されている。ここでは、フラッディング量を削減するために、指名ルータというものを定義し、指名ルータ以外のルータは状態変化を通知すべきフラッディングメッセージが生じた場合に、まず指名ルータにフラッディングメッセージを転送する。そして、フラッディングメッセージを受信した指名ルータが、ネットワーク内の全ルータに対してフラッディングを行なう。また、指名ルータの障害などに備えて、バックアップ指名ルータも定義しておくことにより、ネットワークの信頼性を確保している。
【0005】
【特許文献1】
特開昭61−131648号公報(第2〜3頁)
【非特許文献1】
J. Moy, ”Request for Comments: 2328, OSPF Version 2”, [online], April, 1998, retrieved from the Internet: <URL: http://www.ietf.org/rfc/rfc2328.txt?number=2328>
【0006】
【発明が解決しようとする課題】
しかしながら、第1の従来技術の手順では、方路の存在しない宛先ノードが生じない場合には、状態変化通知情報がネットワークに通知されないため、ネットワーク全体の状態をネットワーク内のすべてのノードで共有することができないという問題点があった。また、宛先ノードまでの経路が存在するか否かという観点に着目した方路制御方式であるため、方路変更テーブルの更新は、ホップ数や帯域などを考慮した最適な経路になり得ないという問題点もあった。さらに、各ノードで方路の存在しない宛先ノードが生じた場合に、状態変化通知情報がネットワーク内のノードに対して通知されるが、この通知は通常のフラッディング手順、すなわち、フラッディングメッセージを送信したノードを除く、フラッディングメッセージを受信したノードに隣接するすべてのノードに対してフラッディングメッセージを送信するという手順、によって行なわれるため、フラッディングメッセージの削減が行なわれないという問題点もあった。
【0007】
一方、第2の従来技術の手順では、第1の従来技術による方路の存在しない宛先ノードが生じない場合に、ネットワーク全体の状態をネットワーク内のすべてのノードで共有できないという問題点や、方路変更テーブルの更新は、ホップ数や帯域などを考慮した最適な経路になり得ないという問題点を解決するものではある。しかし、指名ルータやバックアップ指名ルータがつぎつぎに障害になった場合や、指名ルータやバックアップ指名ルータへの通信経路が閉ざされてしまったルータの場合には、指名ルータやバックアップ指名ルータを使用したフラッディングを行うことができないので、通常のフラッディング手順と同じになってしまい、フラッディングメッセージの削減が行なわれないという問題点があった。
【0008】
この発明は、上記に鑑みてなされたもので、方路選択動作をルーティングテーブルに基づいて行う複数のルータなどの通信装置が回線で接続されたネットワークにおいて、通信装置または回線に状態変化が生じたときに送信されるフラッディングメッセージの量を削減することが可能なフラッディング量削減方法を得ることを目的とする。また、そのフラッディング量削減方法を実現するための通信装置を得ることも目的とする。
【0009】
【課題を解決するための手段】
上記目的を達成するため、この発明にかかるフラッディング量削減方法は、インタフェースから入力される通信データを、その宛先アドレスに基づいて所定のインタフェースに出力して転送処理を行う複数の通信装置が通信回線を介して接続されたネットワークにおいて送信されるフラッディングメッセージの量を削減するフラッディング量削減方法であって、前記フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置に前記フラッディングメッセージを送信することを特徴とする。
【0010】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるフラッディング量削減方法および通信装置の好適な実施の形態を詳細に説明する。
【0011】
実施の形態1.
図1は、この発明によるフラッディング量削減方法が適用されるネットワークの一例を示す図である。このネットワークは、いわゆるIGP(Interior Gateway Protocol)が適用される所定の領域に設けられるネットワークであり、複数の通信装置(以下、ノードという)A〜Fが、回線Lによって接続されて構成される。ノードA〜Fは、通信データを宛先アドレスに基づいて転送する機能を有するルータなどの通信装置である。
【0012】
図2は、図1におけるノードの構成の一例を示すブロック図である。このノードは、他のノードにつながる回線と接続される複数のインタフェース部(図中、I/Fと表記)11、複数のインタフェース部11と接続され、インタフェース部11に入力される通信データを他のインタフェース部11に出力するように交換するスイッチ部(図中、SWと表記)12、ネットワーク内のノードA〜Fのコスト情報を含めたリンク状態が格納される接続状態データベース13、この接続状態データベース13に基づいて生成されるルーティングテーブル14、自ノードに隣接するノードについて情報が格納される隣接ノードデータベース15、自ノード全体を制御する制御部16を有する。
【0013】
なお、接続状態データベース13からルーティングテーブル14を作成する処理や、ルーティングテーブル14に基づいてパケットの転送を行う処理については、公知のOSPFを使用したルータなどの通信装置で使用される技術と同じものであり、この発明の範囲外なので説明を省略し、このノードの構成の中で特徴となる隣接ノードデータベース15と制御部16について、さらに詳細に説明する。
【0014】
隣接ノードデータベース15は、自ノードに隣接するノードを示す隣接ノード情報を格納する。図3は、図1のネットワーク内の各ノードの有する隣接ノードデータベースの構成を示す図である。この隣接ノードデータベース15a〜15fは、ネットワーク内のノードを識別する項目「ノード番号」と、ネットワーク内でこの「ノード番号」を有するノードに隣接するノード番号が格納される項目「隣接ノード番号」を含む隣接ノード情報から構成される。たとえば、ノードAの隣接ノードデータベース15aの場合、図1に示されるネットワーク構成からこのノードAに隣接するノードは、ノードB〜Dとなるので、図3(a)に示されるように隣接ノード情報が格納される。ノードB〜Fについても同様にして、それぞれ図3(b)〜図3(f)に示される隣接ノード情報を有する隣接ノードデータベース15b〜15fが得られる。このような各ノードA〜Fにおける隣接ノードの認識は、たとえば、上述した第2の従来技術の非特許文献1に記載されているHelloプロトコルによって実行することができる。なお、隣接ノードデータベース15に格納されるノード番号は、必ずしも番号である必要はなく、ネットワーク内のノードを一意に識別することが可能なものであればよい。
【0015】
制御部16は、ルーティングテーブル作成機能、ルーティング機能およびフラッディングメッセージ処理機能を有する。ルーティングテーブル作成機能は、接続状態データベース13を用いて、最短パス優先アルゴリズムによって通信データの宛先アドレスに対応する出力先(インタフェース部)からなるルーティングテーブル14を生成する公知の機能である。ルーティング機能は、回線を介してインタフェース部11に入力される通信データの宛先アドレスに対応する出力先をルーティングテーブル14から求め、通信データがその出力先に出力されるようにスイッチ部12に指示を出す公知の機能である。
【0016】
また、制御部16のフラッディングメッセージ処理機能は、自ノードまたは回線の状態変化時にフラッディングメッセージを送信する際に、隣接ノードデータベース15から自ノードに隣接する隣接ノード番号を抽出し、これを隣接ノード番号情報としてフラッディングメッセージに格納するとともに、このフラッディングメッセージを隣接するノードに送信するようにスイッチ部12に指示を出す。また、フラッディングメッセージ処理機能は、他の隣接するノードからフラッディングメッセージを受信した場合には、隣接ノード番号情報を隣接ノードデータベース15から抽出してフラッディングメッセージに格納するとともに、自ノードに隣接するノードのうち、受信したフラッディングメッセージの隣接ノード番号情報内に格納されているノードと一致するノードを除いたノードに対して、フラッディングメッセージを送信するようにスイッチ部12に指示を出す。なお、隣接ノード番号情報は、フラッディングメッセージのヘッダ部分ではなく、データ部分に格納されるので、フラッディングメッセージ処理機能は、フラッディングメッセージのデータ部分を確認する必要がある。
【0017】
つぎに、ノードによるフラッディング量削減方法について説明する。図4は、状態変化を検出したノードによるフラッディングメッセージの送信の処理手順を示すフローチャートである。まず、ノードの制御部16は、それぞれのノードでなんらかの状態変化が生じたか否かを監視する(ステップS11)。この状態変化は、ネットワーク内の全ノードが共有する情報であれば何でもよい。たとえば、ネットワークの輻輳を起こす可能性のあるような回線使用率や、メッセージを迂回しなければならないような障害や、選択する経路が複数ある場合の選択する回線の優先度などを例示することができる。ここでは、状態変化が生じるまで監視状態にあるものとする(ステップS11でNoの場合)。
【0018】
ノードにおいて、何らかの状態変化を検知した場合(ステップS11でYesの場合)には、制御部16は、隣接ノードデータベース15を参照して、自ノードに隣接するノードのノード番号(隣接ノード番号)を取得する(ステップS12)。そして、この取得したノード番号を隣接ノード番号情報としてフラッディングメッセージに付与し(ステップS13)、隣接するノードにフラッディングメッセージを送信して(ステップS14)、処理が終了する。
【0019】
図5は、他の隣接ノードからフラッディングメッセージを受信したノードによるフラッディングメッセージ転送の処理手順を示すフローチャートである。まず、インタフェース部11を介して他の隣接ノードからのフラッディングメッセージを受信すると(ステップS21)、制御部16は、同じフラッディングメッセージを既に受信したか否かを判断する(ステップS22)。ここで、同じフラッディングメッセージを受信したか否かは、たとえば、上述した非特許文献1に記載されているように、フラッディングメッセージに格納されている発信元ノード番号情報とシーケンス番号を用いて認識することができる。
【0020】
同じフラッディングメッセージをまだ受信していない場合(ステップS22でNoの場合)には、隣接ノードデータベース15から自ノードに隣接するノードの隣接ノード番号を取得する(ステップS23)。また、制御部16は、受信したフラッディングメッセージの隣接ノード番号情報を取得する(ステップS24)。
【0021】
制御部16は、自ノードに隣接するノードのうち、隣接ノード番号情報内のノード番号と一致するノード番号以外のノードを抽出し(ステップS25)、抽出されたノードの数が0より多いか否かを判定する(ステップS26)。抽出されたノードの数が0の場合(ステップS26でNoの場合)には、フラッディングメッセージを送信すべきノードが存在しないので、処理が終了する。一方、抽出されたノードの数が0より多い場合(ステップS26でYesの場合)には、ステップS23で取得した隣接ノード番号を新たな隣接ノード番号情報としてフラッディングメッセージ内に格納する(ステップS27)。そして、ステップS25で抽出したノードに対して、フラッディングメッセージを送信して(ステップS28)、処理が終了する。
【0022】
一方、ステップS22で、既に同じフラッディングメッセージを受信している場合(ステップS22でYesの場合)には、最初に受信したフラッディングメッセージは隣接するすべてのノードに転送していることを保証しているため、2番目以降に受信した同じフラッディングメッセージに関しては転送する必要がないので、処理はそのまま終了する。
【0023】
ここで、フラッディング量削減方法の具体例について説明する。図6と図7は、図1のノードAからフラッディングメッセージが送信される場合の各ノードの動作を説明するための図である。ここでは、ノードAでなんらかの状態変化が生じたものとする。すると、ノードAは、上述した図4の手順にしたがって、隣接ノードデータベース15から抽出した隣接ノード番号情報31aを格納したフラッディングメッセージ31を隣接するノードB〜Dに送信する。
【0024】
ノードBは、フラッディングメッセージ31を受信すると、上述した図5の手順にしたがって、自ノードに隣接するノードA,C,Eから、フラッディングメッセージを送信したノードAに隣接するノードB,C,D(フラッディングメッセージ31に格納されている隣接ノード番号情報31aから取得する)と一致するノードCを除外して得られるノードEを、フラッディングメッセージ33の宛先ノードとして決定する。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース15から得られる隣接ノードのうちノードAには、フラッディングメッセージは転送されない。そして、上記決定したノードに、隣接ノードデータベース15bから取得した隣接ノード番号を隣接ノード番号情報33aとしてフラッディングメッセージ33に格納して送信する。
【0025】
同様に、ノードCは、フラッディングメッセージ34の宛先としてノードE,Fを決定して、これらのノードE,Fに、隣接ノードデータベース15cから取得した隣接ノード番号を隣接ノード番号情報34aとしてフラッディングメッセージ34に格納して送信する。また、ノードDは、フラッディングメッセージ35の宛先としてノードEを決定して、このノードEに、隣接ノードデータベース15dから取得した隣接ノード番号を隣接ノード番号情報35aとしてフラッディングメッセージ35に格納して送信する。
【0026】
つぎに、ノードEは、ノードB〜Dからそれぞれフラッディングメッセージ33〜35を受信すると、最初に受け取ったフラッディングメッセージについて、図5のステップS22でNoの場合の手順にしたがって、フラッディングメッセージをつぎに送信するノードを決定し、この決定したノードに、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。その後に受け取ったフラッディングメッセージについては、上記フラッディングメッセージと同じメッセージであると判断されるので、図5のステップS22でYesの場合の手順にしたがって、転送する処理は行われない。
【0027】
たとえば、最初にノードBからフラッディングメッセージ33を受信したタイミングでは、図7のノードEの隣接ノードデータベース15eの27aに示されるように、自ノードに隣接するノードB,C,D,Fから、フラッディングメッセージを送信したノードBに隣接するノードA,C,Eと一致するノードCを除外して得られるノードD,Fを、フラッディングメッセージの宛先として決定する。そして、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードC,Dからのフラッディングメッセージについての転送処理は行われない。
【0028】
また、同様に、最初にノードCからフラッディングメッセージ34を受信したタイミングでは、図7のノードEの隣接ノードデータベース15eの27bに示されるように、フラッディングメッセージをつぎに送信するノードとしてノードDを決定し、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードB,Dからのフラッディングメッセージについての転送処理は行われない。
【0029】
同じく、最初にノードDからフラッディングメッセージ35を受信したタイミングでは、図7のノードEの隣接ノードデータベース15eの27cに示されるように、フラッディングメッセージをつぎに送信するノードとしてノードB,C,Fを決定し、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードB,Cからのフラッディングメッセージについての転送処理は行われない。
【0030】
また、ノードFは、ノードCからフラッディングメッセージ34を受信すると、図5の手順にしたがって、図7のノードFの隣接ノードデータベース15fに示されるように、自ノードに隣接するノードC,Eから、フラッディングメッセージを送信したノードCに隣接するノードA,Eと一致するノードEを除外する。その結果、フラッディングメッセージを送信すべきノードが存在しないので、ノードFはフラッディングメッセージを送信する処理を行わない。
【0031】
一方、この発明によらないでフラッディングメッセージを送信する場合には、ノードBはノードCに対して、ノードCはノードBに対して、ノードFはノードEに対して、それぞれフラッディングメッセージを送信しなければならない。このことからも明らかなように、この発明では、ネットワーク中を流れるフラッディングメッセージの量を削減することが可能となる。
【0032】
なお、フラッディングメッセージを受信したノードは、そのフラッディングメッセージに基づいて、接続状態データベース13を更新し、さらにルーティングテーブル14を更新する。
【0033】
この実施の形態1によれば、フラッディングメッセージを受信した回線に接続するノード以外の全てのノードに対してフラッディングメッセージを転送する場合に比べて、フラッディングメッセージを転送する量を減らすことができ、リアルタイム性を損なわずにトラフィック量の削減と、通信装置にかかる処理負荷の軽減が可能となる効果がある。
【0034】
実施の形態2.
たとえば、図1において、ノードAが自身のリソース不足などにより、ノードCと接続する回線LACにフラッディングメッセージ31を転送できなかったとする。このとき回線LACは一時的な障害であると考えられるため、隣接ノードを確認するプロトコル、たとえばOSPFのHelloプロトコルだけでは、隣接ノードが存在しなくなったことを認識できず、ノードAの有する隣接ノードデータベース15aの隣接ノード番号の一覧からノードCを削除することができない。そのため、隣接ノード番号情報にノードCの情報が含まれたフラッディングメッセージが送信されてしまう。このとき、上述した実施の形態1の手順では、ノードCはノードBからもフラッディングメッセージを受信することができなくなり、ネットワーク内で迅速に情報を共有することができなくなってしまう。そこで、この実施の形態2では、このような事態を回避するための方法について説明する。
【0035】
実施の形態1の図2に示される通信装置(ノード)の制御部16のフラッディングメッセージ処理機能は、フラッディングメッセージを送信する際に、フラッディングメッセージに隣接ノードデータベース15から抽出した隣接ノード番号を格納していたが、この実施の形態2では、ノードの制御部16は、実際にフラッディングメッセージを転送するノード番号を隣接ノード番号情報としてフラッディングメッセージに格納することを特徴とする。なお、他の構成要素は、上述した実施の形態1の図2と同一であるので、その説明を省略している。
【0036】
つぎに、ノードによるフラッディング量削減方法について説明する。図8は、状態変化を検出したノードによるフラッディングメッセージの送信の処理手順を示すフローチャートである。まず、実施の形態1の図4で説明したステップS11と同じ処理を行って、ノードの制御部16は、それぞれのノードでなんらかの状態変化が生じるまで監視を行う(ステップS31)。制御部16は、状態変化を検出すると(ステップS31でYesの場合)、送信不可能な隣接ノードのノード番号を取得し(ステップS32)、隣接ノードデータベース15から、自ノードに隣接するノードの隣接ノード番号を取得する(ステップS33)。
【0037】
その後、制御部16は、ステップS33で取得したノード番号からステップS32で取得した送信不可能な隣接ノードのノード番号を除外したものを隣接ノード番号情報としてフラッディングメッセージに付与し(ステップS34)、送信可能な隣接するノードにフラッディングメッセージを送信して(ステップS35)、処理が終了する。
【0038】
図9は、他の隣接ノードからフラッディングメッセージを受信したノードが、なんらかの原因によって隣接するノードの一部にフラッディングメッセージを送信できない場合のフラッディングメッセージ転送の処理手順を示すフローチャートである。まず、実施の形態1の図5で説明したステップS21〜S23と同じ処理を行って、同じフラッディングメッセージを受信していない場合には、隣接ノードデータベース15から隣接ノード番号を取得する(ステップS41〜S43)。すなわち、フラッディングメッセージを受信すると、制御部16は、同じフラッディングメッセージを既に受信している場合には処理を終了し、そうでない場合には隣接ノードデータベース15から隣接ノード番号を取得する。
【0039】
つぎに、制御部16は、現時点で送信不可能な隣接ノードのノード番号を取得し(ステップS44)、フラッディングメッセージから隣接ノード番号情報を取得する(ステップS45)。その後、自ノードに隣接するノードのうち、取得した隣接ノード番号情報内のノード番号と一致するノード番号と送信不可能な隣接ノードのノード番号に一致するノード番号以外のノードを抽出し(ステップS46)、抽出されたノードの数が0より多いか否かを判定する(ステップS47)。抽出されたノードの数が0の場合(ステップS47でNoの場合)には、フラッディングメッセージを送信すべきノードが存在しないので、処理が終了する。一方、抽出されたノードの数が0より多い場合(ステップS47でYesの場合)には、ステップS43で取得した隣接ノード番号からステップS44で取得した送信不可能なノード番号を除外したノード番号を新たな隣接ノード番号情報としてフラッディングメッセージ内に格納する(ステップS48)。そして、ステップS46で抽出したノードに対して、フラッディングメッセージを送信して(ステップS49)、処理が終了する。
【0040】
なお、他の隣接ノードからフラッディングメッセージを受信したノードが、正常である場合には、実施の形態1の図5に示されるフローチャートと同じ処理手順によってフラッディングメッセージを転送する。
【0041】
ここで、フラッディング量削減方法の具体例について説明する。図10は、ノードAからフラッディングメッセージが送信されるときに、ノードCには送信できない場合の各ノードの動作を説明するための図である。フラッディングメッセージを送信しようとしているノードAが、上述したようにノードA自身のリソース不足などによってノードCと接続する回線LACにフラッディングメッセージを送信できない場合には、上述した図8の手順にしたがって、隣接ノードのうちノードCを除外したノードB,Dを隣接ノード番号情報として格納したフラッディングメッセージを、ノードB,Dに送信する。
【0042】
ノードBは、フラッディングメッセージ31を受信すると、上述した実施の形態1の図5の手順にしたがって、自ノードに隣接するノードA,C,Eから、フラッディングメッセージの隣接ノード番号情報に格納されているノードB,Dと一致するノードを除外して得られるノードC,Eを、つぎのフラッディングメッセージの宛先として決定する。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース15から得られる隣接ノードのうちノードAには、フラッディングメッセージが転送されない。そして、決定した宛先に、隣接ノードデータベース15bから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。同様に、ノードDは、つぎのフラッディングメッセージの宛先としてノードEを決定して、このノードEに、隣接ノードデータベース15dから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。
【0043】
このようにして、ノードAに隣接するノードであって、ノードAからフラッディングメッセージが送信されなかったノードCは、ノードBからフラッディングメッセージを受信することができる。なお、その後の処理は、上述した実施の形態1の図5の手順に基づいた処理と同様であるので、その説明を省略する。
【0044】
なお、フラッディングメッセージを受信したノードは、そのフラッディングメッセージに基づいて、接続状態データベース13を更新し、さらにルーティングテーブル14を更新する。
【0045】
この実施の形態2によれば、フラッディングメッセージを転送するノードの一時的な障害などにも対応することができる。そして、ネットワーク内において確実なフラッディングメッセージの転送を実現することができる。
【0046】
実施の形態3.
この実施の形態3では、ノードが、ネットワーク内のすべてのノードについての隣接ノード情報を隣接ノードデータベース15に保有することを特徴とする。
【0047】
OSPFを使用するネットワークにおけるノードでは、図2に示されるように、各ノードが同じ接続状態データベース13を保有しており、ネットワーク内における各ノードがどのように接続されているのかというネットワークトポロジを把握することができる。また、接続状態データベース13は、フラッディングメッセージがネットワーク内の全ノードに行き渡ると、そのフラッディングメッセージの内容に基づいて変更されるので、変更後のネットワークトポロジを把握することもできる。そこで、この実施の形態3では、接続状態データベース13からネットワーク内の各ノードの隣接ノードを把握して、全ノードの隣接ノード情報を格納する隣接ノードデータベース15を作成する隣接ノードデータベース作成機能を、実施の形態1の制御部16にさらに有するように構成することを特徴とする。ノードのその他の構成については、実施の形態1の図2と同一であるので、説明は省略する。
【0048】
図11は、実施の形態1の図1に示されるネットワーク内の各ノードが共通に保有する隣接ノードデータベースの構成を示す図である。この図11は、各ノードA〜Fが保持する接続状態データベース13から作成されたものであり、図3(a)〜(f)のデータが1つにまとめられたものである。この隣接ノードデータベース15が、図1のノードA〜Fに格納される。
【0049】
つぎに、このノードの動作について説明する。図12は、この発明のフラッディング量削減方法の実施の形態3におけるノードの動作を説明するための図である。たとえば、ノードBがノードAから隣接ノード番号情報が付与されていないフラッディングメッセージ36を受信すると、ノードBは、隣接ノードデータベース15の「ノード番号」がノードAである隣接ノード番号を参照する。この隣接ノード番号によって、ノードAがノードB〜Dと接続しているという情報を得て、ノードAはフラッディングメッセージ36をノードB〜Dに送信したと推測することができる。
【0050】
これによって、ノードBは、フラッディングメッセージ36に格納されているはずの隣接ノード番号情報として、隣接ノードデータベース15のノードAの隣接ノード番号を用いて、上述した実施の形態1の図5の手順にしたがってフラッディングメッセージの処理を行う。すなわち、ノードBは、隣接ノードデータベース15から自ノードに隣接するノードA,C,Eを取得し、上記ノードAに隣接するノードB,C,Dと重複しているノードC以外のノードEにのみフラッディングメッセージを転送する処理を行う。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース15から得られる隣接ノードのうちノードAには、フラッディングメッセージは転送されない。
【0051】
また、各ノードがネットワーク内の全ノードの隣接ノード情報を保持することによって、上述した処理を行うことが可能となるので、制御部16のフラッディングメッセージ処理機能による隣接ノード番号情報のフラッディングメッセージへの格納処理を省くことも可能となる。
【0052】
なお、隣接ノード番号情報が付与されていないフラッディングメッセージを受信した他のノードC,DもノードBの場合と同様にして、自ノードの有する隣接ノードデータベース15を参照してフラッディングメッセージを転送する処理を行う。
【0053】
この実施の形態3によれば、ネットワーク内のノードが、転送されるフラッディングメッセージから更新される接続状態データベース13を利用してそれぞれのノードの隣接ノードの様子を得て、隣接ノードデータベース15に格納するようにしたので、ネットワーク内のすべてのノードについての隣接ノード情報を得ることができ、それに基づいて隣接ノード番号情報を有しないフラッディングメッセージを受信した場合でも、フラッディングメッセージ量を削減することができるという効果を有する。
【0054】
【発明の効果】
以上説明したように、この発明によれば、既存のインタフェースの変更をともなわないで、受信した回線に接続するノード以外の全てのノードに対してフラッディングメッセージを転送する場合に比べて、フラッディングメッセージを転送する量を減らすことができるとともに、リアルタイム性を損なわずにトラフィック量の削減と処理負荷の軽減ができるという効果を有する。
【図面の簡単な説明】
【図1】この発明によるフラッディング量削減方法が適用されるネットワークの一例を示す図である。
【図2】この発明による通信装置の構成の一例を示すブロック図である。
【図3】図1のネットワーク内の各ノードの有する隣接ノードデータベースの構成を示す図である。
【図4】フラッディングメッセージの送信の処理手順を示すフローチャートである。
【図5】フラッディングメッセージ転送の処理手順を示すフローチャートである。
【図6】フラッディングメッセージの送信処理の具体例を示す図である。
【図7】フラッディングメッセージの送信処理の具体例を示す図である。
【図8】フラッディングメッセージの送信の処理手順を示すフローチャートである。
【図9】フラッディングメッセージ転送の処理手順を示すフローチャートである。
【図10】フラッディングメッセージの送信処理の具体例を示す図である。
【図11】図1に示されるネットワーク内の各ノードが共通に保有する隣接ノードデータベースの構成を示す図である。
【図12】フラッディングメッセージの送信処理の具体例を示す図である。
【符号の説明】
11 インタフェース部、12 スイッチ部、13 接続状態データベース、14 ルーティングテーブル、15 隣接ノードデータベース、16 制御部、31〜37 フラッディングメッセージ、A〜F ノード、L 回線。
【発明の属する技術分野】
この発明は、障害情報や輻輳情報など経路選択に関わる情報を1つのネットワーク内の全てのノードで共有するためのフラッディングメッセージの転送方法において、そのフラッディング量を削減することが可能なフラッディング量削減方法と、このフラッディング量削減方法を実現する通信装置に関するものである。
【0002】
【従来の技術】
通信データの方路選択動作をルーティングテーブルに基づいて行うルータなどの複数の通信装置が回線で接続されたネットワークにおいて、ある回線に障害などの状態変化が発生した場合に、その状態変化をネットワーク内の通信装置に通知し、その状態変化を回避してデータ通信を行う方法として、種々の従来技術が提案されている。
【0003】
第1の従来技術には、それぞれのノード(通信装置)が、自ノードに接続されたリンク(回線)の状態変化を検出した場合、または他ノードからのリンク状態変化の通知を受けた場合に、そのリンクの状態変化に応じて方路選択テーブルを更新し、その更新によって、方路の存在しない宛先が生じたか否かを判断し、方路の存在しない宛先が生じた場合のみ他のノードにリンク状態変化通知情報を通知する方路制御方式が開示されている(たとえば、特許文献1参照)。
【0004】
また、第2の従来技術として、IETF(Internet Engineering Task Force)で標準化されたOSPF(Open Shortest Path First)がある(たとえば、非特許文献1参照)。このOSPFには、状態の変化を全ネットワークに転送するフラッディングについての機能も規定されている。ここでは、フラッディング量を削減するために、指名ルータというものを定義し、指名ルータ以外のルータは状態変化を通知すべきフラッディングメッセージが生じた場合に、まず指名ルータにフラッディングメッセージを転送する。そして、フラッディングメッセージを受信した指名ルータが、ネットワーク内の全ルータに対してフラッディングを行なう。また、指名ルータの障害などに備えて、バックアップ指名ルータも定義しておくことにより、ネットワークの信頼性を確保している。
【0005】
【特許文献1】
特開昭61−131648号公報(第2〜3頁)
【非特許文献1】
J. Moy, ”Request for Comments: 2328, OSPF Version 2”, [online], April, 1998, retrieved from the Internet: <URL: http://www.ietf.org/rfc/rfc2328.txt?number=2328>
【0006】
【発明が解決しようとする課題】
しかしながら、第1の従来技術の手順では、方路の存在しない宛先ノードが生じない場合には、状態変化通知情報がネットワークに通知されないため、ネットワーク全体の状態をネットワーク内のすべてのノードで共有することができないという問題点があった。また、宛先ノードまでの経路が存在するか否かという観点に着目した方路制御方式であるため、方路変更テーブルの更新は、ホップ数や帯域などを考慮した最適な経路になり得ないという問題点もあった。さらに、各ノードで方路の存在しない宛先ノードが生じた場合に、状態変化通知情報がネットワーク内のノードに対して通知されるが、この通知は通常のフラッディング手順、すなわち、フラッディングメッセージを送信したノードを除く、フラッディングメッセージを受信したノードに隣接するすべてのノードに対してフラッディングメッセージを送信するという手順、によって行なわれるため、フラッディングメッセージの削減が行なわれないという問題点もあった。
【0007】
一方、第2の従来技術の手順では、第1の従来技術による方路の存在しない宛先ノードが生じない場合に、ネットワーク全体の状態をネットワーク内のすべてのノードで共有できないという問題点や、方路変更テーブルの更新は、ホップ数や帯域などを考慮した最適な経路になり得ないという問題点を解決するものではある。しかし、指名ルータやバックアップ指名ルータがつぎつぎに障害になった場合や、指名ルータやバックアップ指名ルータへの通信経路が閉ざされてしまったルータの場合には、指名ルータやバックアップ指名ルータを使用したフラッディングを行うことができないので、通常のフラッディング手順と同じになってしまい、フラッディングメッセージの削減が行なわれないという問題点があった。
【0008】
この発明は、上記に鑑みてなされたもので、方路選択動作をルーティングテーブルに基づいて行う複数のルータなどの通信装置が回線で接続されたネットワークにおいて、通信装置または回線に状態変化が生じたときに送信されるフラッディングメッセージの量を削減することが可能なフラッディング量削減方法を得ることを目的とする。また、そのフラッディング量削減方法を実現するための通信装置を得ることも目的とする。
【0009】
【課題を解決するための手段】
上記目的を達成するため、この発明にかかるフラッディング量削減方法は、インタフェースから入力される通信データを、その宛先アドレスに基づいて所定のインタフェースに出力して転送処理を行う複数の通信装置が通信回線を介して接続されたネットワークにおいて送信されるフラッディングメッセージの量を削減するフラッディング量削減方法であって、前記フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置に前記フラッディングメッセージを送信することを特徴とする。
【0010】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるフラッディング量削減方法および通信装置の好適な実施の形態を詳細に説明する。
【0011】
実施の形態1.
図1は、この発明によるフラッディング量削減方法が適用されるネットワークの一例を示す図である。このネットワークは、いわゆるIGP(Interior Gateway Protocol)が適用される所定の領域に設けられるネットワークであり、複数の通信装置(以下、ノードという)A〜Fが、回線Lによって接続されて構成される。ノードA〜Fは、通信データを宛先アドレスに基づいて転送する機能を有するルータなどの通信装置である。
【0012】
図2は、図1におけるノードの構成の一例を示すブロック図である。このノードは、他のノードにつながる回線と接続される複数のインタフェース部(図中、I/Fと表記)11、複数のインタフェース部11と接続され、インタフェース部11に入力される通信データを他のインタフェース部11に出力するように交換するスイッチ部(図中、SWと表記)12、ネットワーク内のノードA〜Fのコスト情報を含めたリンク状態が格納される接続状態データベース13、この接続状態データベース13に基づいて生成されるルーティングテーブル14、自ノードに隣接するノードについて情報が格納される隣接ノードデータベース15、自ノード全体を制御する制御部16を有する。
【0013】
なお、接続状態データベース13からルーティングテーブル14を作成する処理や、ルーティングテーブル14に基づいてパケットの転送を行う処理については、公知のOSPFを使用したルータなどの通信装置で使用される技術と同じものであり、この発明の範囲外なので説明を省略し、このノードの構成の中で特徴となる隣接ノードデータベース15と制御部16について、さらに詳細に説明する。
【0014】
隣接ノードデータベース15は、自ノードに隣接するノードを示す隣接ノード情報を格納する。図3は、図1のネットワーク内の各ノードの有する隣接ノードデータベースの構成を示す図である。この隣接ノードデータベース15a〜15fは、ネットワーク内のノードを識別する項目「ノード番号」と、ネットワーク内でこの「ノード番号」を有するノードに隣接するノード番号が格納される項目「隣接ノード番号」を含む隣接ノード情報から構成される。たとえば、ノードAの隣接ノードデータベース15aの場合、図1に示されるネットワーク構成からこのノードAに隣接するノードは、ノードB〜Dとなるので、図3(a)に示されるように隣接ノード情報が格納される。ノードB〜Fについても同様にして、それぞれ図3(b)〜図3(f)に示される隣接ノード情報を有する隣接ノードデータベース15b〜15fが得られる。このような各ノードA〜Fにおける隣接ノードの認識は、たとえば、上述した第2の従来技術の非特許文献1に記載されているHelloプロトコルによって実行することができる。なお、隣接ノードデータベース15に格納されるノード番号は、必ずしも番号である必要はなく、ネットワーク内のノードを一意に識別することが可能なものであればよい。
【0015】
制御部16は、ルーティングテーブル作成機能、ルーティング機能およびフラッディングメッセージ処理機能を有する。ルーティングテーブル作成機能は、接続状態データベース13を用いて、最短パス優先アルゴリズムによって通信データの宛先アドレスに対応する出力先(インタフェース部)からなるルーティングテーブル14を生成する公知の機能である。ルーティング機能は、回線を介してインタフェース部11に入力される通信データの宛先アドレスに対応する出力先をルーティングテーブル14から求め、通信データがその出力先に出力されるようにスイッチ部12に指示を出す公知の機能である。
【0016】
また、制御部16のフラッディングメッセージ処理機能は、自ノードまたは回線の状態変化時にフラッディングメッセージを送信する際に、隣接ノードデータベース15から自ノードに隣接する隣接ノード番号を抽出し、これを隣接ノード番号情報としてフラッディングメッセージに格納するとともに、このフラッディングメッセージを隣接するノードに送信するようにスイッチ部12に指示を出す。また、フラッディングメッセージ処理機能は、他の隣接するノードからフラッディングメッセージを受信した場合には、隣接ノード番号情報を隣接ノードデータベース15から抽出してフラッディングメッセージに格納するとともに、自ノードに隣接するノードのうち、受信したフラッディングメッセージの隣接ノード番号情報内に格納されているノードと一致するノードを除いたノードに対して、フラッディングメッセージを送信するようにスイッチ部12に指示を出す。なお、隣接ノード番号情報は、フラッディングメッセージのヘッダ部分ではなく、データ部分に格納されるので、フラッディングメッセージ処理機能は、フラッディングメッセージのデータ部分を確認する必要がある。
【0017】
つぎに、ノードによるフラッディング量削減方法について説明する。図4は、状態変化を検出したノードによるフラッディングメッセージの送信の処理手順を示すフローチャートである。まず、ノードの制御部16は、それぞれのノードでなんらかの状態変化が生じたか否かを監視する(ステップS11)。この状態変化は、ネットワーク内の全ノードが共有する情報であれば何でもよい。たとえば、ネットワークの輻輳を起こす可能性のあるような回線使用率や、メッセージを迂回しなければならないような障害や、選択する経路が複数ある場合の選択する回線の優先度などを例示することができる。ここでは、状態変化が生じるまで監視状態にあるものとする(ステップS11でNoの場合)。
【0018】
ノードにおいて、何らかの状態変化を検知した場合(ステップS11でYesの場合)には、制御部16は、隣接ノードデータベース15を参照して、自ノードに隣接するノードのノード番号(隣接ノード番号)を取得する(ステップS12)。そして、この取得したノード番号を隣接ノード番号情報としてフラッディングメッセージに付与し(ステップS13)、隣接するノードにフラッディングメッセージを送信して(ステップS14)、処理が終了する。
【0019】
図5は、他の隣接ノードからフラッディングメッセージを受信したノードによるフラッディングメッセージ転送の処理手順を示すフローチャートである。まず、インタフェース部11を介して他の隣接ノードからのフラッディングメッセージを受信すると(ステップS21)、制御部16は、同じフラッディングメッセージを既に受信したか否かを判断する(ステップS22)。ここで、同じフラッディングメッセージを受信したか否かは、たとえば、上述した非特許文献1に記載されているように、フラッディングメッセージに格納されている発信元ノード番号情報とシーケンス番号を用いて認識することができる。
【0020】
同じフラッディングメッセージをまだ受信していない場合(ステップS22でNoの場合)には、隣接ノードデータベース15から自ノードに隣接するノードの隣接ノード番号を取得する(ステップS23)。また、制御部16は、受信したフラッディングメッセージの隣接ノード番号情報を取得する(ステップS24)。
【0021】
制御部16は、自ノードに隣接するノードのうち、隣接ノード番号情報内のノード番号と一致するノード番号以外のノードを抽出し(ステップS25)、抽出されたノードの数が0より多いか否かを判定する(ステップS26)。抽出されたノードの数が0の場合(ステップS26でNoの場合)には、フラッディングメッセージを送信すべきノードが存在しないので、処理が終了する。一方、抽出されたノードの数が0より多い場合(ステップS26でYesの場合)には、ステップS23で取得した隣接ノード番号を新たな隣接ノード番号情報としてフラッディングメッセージ内に格納する(ステップS27)。そして、ステップS25で抽出したノードに対して、フラッディングメッセージを送信して(ステップS28)、処理が終了する。
【0022】
一方、ステップS22で、既に同じフラッディングメッセージを受信している場合(ステップS22でYesの場合)には、最初に受信したフラッディングメッセージは隣接するすべてのノードに転送していることを保証しているため、2番目以降に受信した同じフラッディングメッセージに関しては転送する必要がないので、処理はそのまま終了する。
【0023】
ここで、フラッディング量削減方法の具体例について説明する。図6と図7は、図1のノードAからフラッディングメッセージが送信される場合の各ノードの動作を説明するための図である。ここでは、ノードAでなんらかの状態変化が生じたものとする。すると、ノードAは、上述した図4の手順にしたがって、隣接ノードデータベース15から抽出した隣接ノード番号情報31aを格納したフラッディングメッセージ31を隣接するノードB〜Dに送信する。
【0024】
ノードBは、フラッディングメッセージ31を受信すると、上述した図5の手順にしたがって、自ノードに隣接するノードA,C,Eから、フラッディングメッセージを送信したノードAに隣接するノードB,C,D(フラッディングメッセージ31に格納されている隣接ノード番号情報31aから取得する)と一致するノードCを除外して得られるノードEを、フラッディングメッセージ33の宛先ノードとして決定する。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース15から得られる隣接ノードのうちノードAには、フラッディングメッセージは転送されない。そして、上記決定したノードに、隣接ノードデータベース15bから取得した隣接ノード番号を隣接ノード番号情報33aとしてフラッディングメッセージ33に格納して送信する。
【0025】
同様に、ノードCは、フラッディングメッセージ34の宛先としてノードE,Fを決定して、これらのノードE,Fに、隣接ノードデータベース15cから取得した隣接ノード番号を隣接ノード番号情報34aとしてフラッディングメッセージ34に格納して送信する。また、ノードDは、フラッディングメッセージ35の宛先としてノードEを決定して、このノードEに、隣接ノードデータベース15dから取得した隣接ノード番号を隣接ノード番号情報35aとしてフラッディングメッセージ35に格納して送信する。
【0026】
つぎに、ノードEは、ノードB〜Dからそれぞれフラッディングメッセージ33〜35を受信すると、最初に受け取ったフラッディングメッセージについて、図5のステップS22でNoの場合の手順にしたがって、フラッディングメッセージをつぎに送信するノードを決定し、この決定したノードに、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。その後に受け取ったフラッディングメッセージについては、上記フラッディングメッセージと同じメッセージであると判断されるので、図5のステップS22でYesの場合の手順にしたがって、転送する処理は行われない。
【0027】
たとえば、最初にノードBからフラッディングメッセージ33を受信したタイミングでは、図7のノードEの隣接ノードデータベース15eの27aに示されるように、自ノードに隣接するノードB,C,D,Fから、フラッディングメッセージを送信したノードBに隣接するノードA,C,Eと一致するノードCを除外して得られるノードD,Fを、フラッディングメッセージの宛先として決定する。そして、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードC,Dからのフラッディングメッセージについての転送処理は行われない。
【0028】
また、同様に、最初にノードCからフラッディングメッセージ34を受信したタイミングでは、図7のノードEの隣接ノードデータベース15eの27bに示されるように、フラッディングメッセージをつぎに送信するノードとしてノードDを決定し、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードB,Dからのフラッディングメッセージについての転送処理は行われない。
【0029】
同じく、最初にノードDからフラッディングメッセージ35を受信したタイミングでは、図7のノードEの隣接ノードデータベース15eの27cに示されるように、フラッディングメッセージをつぎに送信するノードとしてノードB,C,Fを決定し、隣接ノードデータベース15eから取得した隣接ノード番号を隣接ノード番号情報として格納したフラッディングメッセージを、上記決定したノードに送信する。その後に到着するノードB,Cからのフラッディングメッセージについての転送処理は行われない。
【0030】
また、ノードFは、ノードCからフラッディングメッセージ34を受信すると、図5の手順にしたがって、図7のノードFの隣接ノードデータベース15fに示されるように、自ノードに隣接するノードC,Eから、フラッディングメッセージを送信したノードCに隣接するノードA,Eと一致するノードEを除外する。その結果、フラッディングメッセージを送信すべきノードが存在しないので、ノードFはフラッディングメッセージを送信する処理を行わない。
【0031】
一方、この発明によらないでフラッディングメッセージを送信する場合には、ノードBはノードCに対して、ノードCはノードBに対して、ノードFはノードEに対して、それぞれフラッディングメッセージを送信しなければならない。このことからも明らかなように、この発明では、ネットワーク中を流れるフラッディングメッセージの量を削減することが可能となる。
【0032】
なお、フラッディングメッセージを受信したノードは、そのフラッディングメッセージに基づいて、接続状態データベース13を更新し、さらにルーティングテーブル14を更新する。
【0033】
この実施の形態1によれば、フラッディングメッセージを受信した回線に接続するノード以外の全てのノードに対してフラッディングメッセージを転送する場合に比べて、フラッディングメッセージを転送する量を減らすことができ、リアルタイム性を損なわずにトラフィック量の削減と、通信装置にかかる処理負荷の軽減が可能となる効果がある。
【0034】
実施の形態2.
たとえば、図1において、ノードAが自身のリソース不足などにより、ノードCと接続する回線LACにフラッディングメッセージ31を転送できなかったとする。このとき回線LACは一時的な障害であると考えられるため、隣接ノードを確認するプロトコル、たとえばOSPFのHelloプロトコルだけでは、隣接ノードが存在しなくなったことを認識できず、ノードAの有する隣接ノードデータベース15aの隣接ノード番号の一覧からノードCを削除することができない。そのため、隣接ノード番号情報にノードCの情報が含まれたフラッディングメッセージが送信されてしまう。このとき、上述した実施の形態1の手順では、ノードCはノードBからもフラッディングメッセージを受信することができなくなり、ネットワーク内で迅速に情報を共有することができなくなってしまう。そこで、この実施の形態2では、このような事態を回避するための方法について説明する。
【0035】
実施の形態1の図2に示される通信装置(ノード)の制御部16のフラッディングメッセージ処理機能は、フラッディングメッセージを送信する際に、フラッディングメッセージに隣接ノードデータベース15から抽出した隣接ノード番号を格納していたが、この実施の形態2では、ノードの制御部16は、実際にフラッディングメッセージを転送するノード番号を隣接ノード番号情報としてフラッディングメッセージに格納することを特徴とする。なお、他の構成要素は、上述した実施の形態1の図2と同一であるので、その説明を省略している。
【0036】
つぎに、ノードによるフラッディング量削減方法について説明する。図8は、状態変化を検出したノードによるフラッディングメッセージの送信の処理手順を示すフローチャートである。まず、実施の形態1の図4で説明したステップS11と同じ処理を行って、ノードの制御部16は、それぞれのノードでなんらかの状態変化が生じるまで監視を行う(ステップS31)。制御部16は、状態変化を検出すると(ステップS31でYesの場合)、送信不可能な隣接ノードのノード番号を取得し(ステップS32)、隣接ノードデータベース15から、自ノードに隣接するノードの隣接ノード番号を取得する(ステップS33)。
【0037】
その後、制御部16は、ステップS33で取得したノード番号からステップS32で取得した送信不可能な隣接ノードのノード番号を除外したものを隣接ノード番号情報としてフラッディングメッセージに付与し(ステップS34)、送信可能な隣接するノードにフラッディングメッセージを送信して(ステップS35)、処理が終了する。
【0038】
図9は、他の隣接ノードからフラッディングメッセージを受信したノードが、なんらかの原因によって隣接するノードの一部にフラッディングメッセージを送信できない場合のフラッディングメッセージ転送の処理手順を示すフローチャートである。まず、実施の形態1の図5で説明したステップS21〜S23と同じ処理を行って、同じフラッディングメッセージを受信していない場合には、隣接ノードデータベース15から隣接ノード番号を取得する(ステップS41〜S43)。すなわち、フラッディングメッセージを受信すると、制御部16は、同じフラッディングメッセージを既に受信している場合には処理を終了し、そうでない場合には隣接ノードデータベース15から隣接ノード番号を取得する。
【0039】
つぎに、制御部16は、現時点で送信不可能な隣接ノードのノード番号を取得し(ステップS44)、フラッディングメッセージから隣接ノード番号情報を取得する(ステップS45)。その後、自ノードに隣接するノードのうち、取得した隣接ノード番号情報内のノード番号と一致するノード番号と送信不可能な隣接ノードのノード番号に一致するノード番号以外のノードを抽出し(ステップS46)、抽出されたノードの数が0より多いか否かを判定する(ステップS47)。抽出されたノードの数が0の場合(ステップS47でNoの場合)には、フラッディングメッセージを送信すべきノードが存在しないので、処理が終了する。一方、抽出されたノードの数が0より多い場合(ステップS47でYesの場合)には、ステップS43で取得した隣接ノード番号からステップS44で取得した送信不可能なノード番号を除外したノード番号を新たな隣接ノード番号情報としてフラッディングメッセージ内に格納する(ステップS48)。そして、ステップS46で抽出したノードに対して、フラッディングメッセージを送信して(ステップS49)、処理が終了する。
【0040】
なお、他の隣接ノードからフラッディングメッセージを受信したノードが、正常である場合には、実施の形態1の図5に示されるフローチャートと同じ処理手順によってフラッディングメッセージを転送する。
【0041】
ここで、フラッディング量削減方法の具体例について説明する。図10は、ノードAからフラッディングメッセージが送信されるときに、ノードCには送信できない場合の各ノードの動作を説明するための図である。フラッディングメッセージを送信しようとしているノードAが、上述したようにノードA自身のリソース不足などによってノードCと接続する回線LACにフラッディングメッセージを送信できない場合には、上述した図8の手順にしたがって、隣接ノードのうちノードCを除外したノードB,Dを隣接ノード番号情報として格納したフラッディングメッセージを、ノードB,Dに送信する。
【0042】
ノードBは、フラッディングメッセージ31を受信すると、上述した実施の形態1の図5の手順にしたがって、自ノードに隣接するノードA,C,Eから、フラッディングメッセージの隣接ノード番号情報に格納されているノードB,Dと一致するノードを除外して得られるノードC,Eを、つぎのフラッディングメッセージの宛先として決定する。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース15から得られる隣接ノードのうちノードAには、フラッディングメッセージが転送されない。そして、決定した宛先に、隣接ノードデータベース15bから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。同様に、ノードDは、つぎのフラッディングメッセージの宛先としてノードEを決定して、このノードEに、隣接ノードデータベース15dから取得した隣接ノード番号を隣接ノード番号情報としてフラッディングメッセージに格納して送信する。
【0043】
このようにして、ノードAに隣接するノードであって、ノードAからフラッディングメッセージが送信されなかったノードCは、ノードBからフラッディングメッセージを受信することができる。なお、その後の処理は、上述した実施の形態1の図5の手順に基づいた処理と同様であるので、その説明を省略する。
【0044】
なお、フラッディングメッセージを受信したノードは、そのフラッディングメッセージに基づいて、接続状態データベース13を更新し、さらにルーティングテーブル14を更新する。
【0045】
この実施の形態2によれば、フラッディングメッセージを転送するノードの一時的な障害などにも対応することができる。そして、ネットワーク内において確実なフラッディングメッセージの転送を実現することができる。
【0046】
実施の形態3.
この実施の形態3では、ノードが、ネットワーク内のすべてのノードについての隣接ノード情報を隣接ノードデータベース15に保有することを特徴とする。
【0047】
OSPFを使用するネットワークにおけるノードでは、図2に示されるように、各ノードが同じ接続状態データベース13を保有しており、ネットワーク内における各ノードがどのように接続されているのかというネットワークトポロジを把握することができる。また、接続状態データベース13は、フラッディングメッセージがネットワーク内の全ノードに行き渡ると、そのフラッディングメッセージの内容に基づいて変更されるので、変更後のネットワークトポロジを把握することもできる。そこで、この実施の形態3では、接続状態データベース13からネットワーク内の各ノードの隣接ノードを把握して、全ノードの隣接ノード情報を格納する隣接ノードデータベース15を作成する隣接ノードデータベース作成機能を、実施の形態1の制御部16にさらに有するように構成することを特徴とする。ノードのその他の構成については、実施の形態1の図2と同一であるので、説明は省略する。
【0048】
図11は、実施の形態1の図1に示されるネットワーク内の各ノードが共通に保有する隣接ノードデータベースの構成を示す図である。この図11は、各ノードA〜Fが保持する接続状態データベース13から作成されたものであり、図3(a)〜(f)のデータが1つにまとめられたものである。この隣接ノードデータベース15が、図1のノードA〜Fに格納される。
【0049】
つぎに、このノードの動作について説明する。図12は、この発明のフラッディング量削減方法の実施の形態3におけるノードの動作を説明するための図である。たとえば、ノードBがノードAから隣接ノード番号情報が付与されていないフラッディングメッセージ36を受信すると、ノードBは、隣接ノードデータベース15の「ノード番号」がノードAである隣接ノード番号を参照する。この隣接ノード番号によって、ノードAがノードB〜Dと接続しているという情報を得て、ノードAはフラッディングメッセージ36をノードB〜Dに送信したと推測することができる。
【0050】
これによって、ノードBは、フラッディングメッセージ36に格納されているはずの隣接ノード番号情報として、隣接ノードデータベース15のノードAの隣接ノード番号を用いて、上述した実施の形態1の図5の手順にしたがってフラッディングメッセージの処理を行う。すなわち、ノードBは、隣接ノードデータベース15から自ノードに隣接するノードA,C,Eを取得し、上記ノードAに隣接するノードB,C,Dと重複しているノードC以外のノードEにのみフラッディングメッセージを転送する処理を行う。このとき、受信した回線に接続するノードにはつぎのフラッディングメッセージを送信しないことは自明であるので、隣接ノードデータベース15から得られる隣接ノードのうちノードAには、フラッディングメッセージは転送されない。
【0051】
また、各ノードがネットワーク内の全ノードの隣接ノード情報を保持することによって、上述した処理を行うことが可能となるので、制御部16のフラッディングメッセージ処理機能による隣接ノード番号情報のフラッディングメッセージへの格納処理を省くことも可能となる。
【0052】
なお、隣接ノード番号情報が付与されていないフラッディングメッセージを受信した他のノードC,DもノードBの場合と同様にして、自ノードの有する隣接ノードデータベース15を参照してフラッディングメッセージを転送する処理を行う。
【0053】
この実施の形態3によれば、ネットワーク内のノードが、転送されるフラッディングメッセージから更新される接続状態データベース13を利用してそれぞれのノードの隣接ノードの様子を得て、隣接ノードデータベース15に格納するようにしたので、ネットワーク内のすべてのノードについての隣接ノード情報を得ることができ、それに基づいて隣接ノード番号情報を有しないフラッディングメッセージを受信した場合でも、フラッディングメッセージ量を削減することができるという効果を有する。
【0054】
【発明の効果】
以上説明したように、この発明によれば、既存のインタフェースの変更をともなわないで、受信した回線に接続するノード以外の全てのノードに対してフラッディングメッセージを転送する場合に比べて、フラッディングメッセージを転送する量を減らすことができるとともに、リアルタイム性を損なわずにトラフィック量の削減と処理負荷の軽減ができるという効果を有する。
【図面の簡単な説明】
【図1】この発明によるフラッディング量削減方法が適用されるネットワークの一例を示す図である。
【図2】この発明による通信装置の構成の一例を示すブロック図である。
【図3】図1のネットワーク内の各ノードの有する隣接ノードデータベースの構成を示す図である。
【図4】フラッディングメッセージの送信の処理手順を示すフローチャートである。
【図5】フラッディングメッセージ転送の処理手順を示すフローチャートである。
【図6】フラッディングメッセージの送信処理の具体例を示す図である。
【図7】フラッディングメッセージの送信処理の具体例を示す図である。
【図8】フラッディングメッセージの送信の処理手順を示すフローチャートである。
【図9】フラッディングメッセージ転送の処理手順を示すフローチャートである。
【図10】フラッディングメッセージの送信処理の具体例を示す図である。
【図11】図1に示されるネットワーク内の各ノードが共通に保有する隣接ノードデータベースの構成を示す図である。
【図12】フラッディングメッセージの送信処理の具体例を示す図である。
【符号の説明】
11 インタフェース部、12 スイッチ部、13 接続状態データベース、14 ルーティングテーブル、15 隣接ノードデータベース、16 制御部、31〜37 フラッディングメッセージ、A〜F ノード、L 回線。
Claims (9)
- インタフェースから入力される通信データを、その宛先アドレスに基づいて所定のインタフェースに出力して転送処理を行う複数の通信装置が通信回線を介して接続されたネットワークにおいて送信されるフラッディングメッセージの量を削減するフラッディング量削減方法であって、
前記フラッディングメッセージを受信した通信装置は、該通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信した通信装置に隣接する通信装置を除いた通信装置に前記フラッディングメッセージを送信することを特徴とするフラッディング量削減方法。 - 前記フラッディングメッセージには、該フラッディングメッセージの送信を行う通信装置に隣接する通信装置を示す隣接ノード情報が格納されることを特徴とする請求項1に記載のフラッディング量削減方法。
- 前記フラッディングメッセージには、該フラッディングメッセージの送信を行う通信装置に隣接する通信装置のうち、前記フラッディングメッセージを送信することができない通信装置を除外した通信装置の隣接ノード情報が格納されることを特徴とする請求項1に記載のフラッディング量削減方法。
- 前記通信装置は、前記ネットワーク内の全通信装置についての隣接ノード情報を格納する隣接ノードデータベースを保持し、この隣接ノードデータベースを参照して、前記フラッディングメッセージを送信した通信装置に隣接する通信装置と、自通信装置に隣接する通信装置を取得することを特徴とする請求項1に記載のフラッディング量削減方法。
- 複数のインタフェース手段と、いずれかの前記インタフェース手段から入力した通信データを、その宛先アドレスに基づいて所定の前記インタフェース手段に出力するように切替えるスイッチ手段と、を備える通信装置において、
自通信装置に隣接する通信装置を示す隣接ノード情報を格納する隣接ノードデータベースと、
フラッディングメッセージを送信する場合に、前記隣接ノード情報を格納した前記フラッディングメッセージを、自通信装置に隣接する通信装置にのみ送信するフラッディングメッセージ処理手段と、
を備えることを特徴とする通信装置。 - 前記フラッディングメッセージ処理手段は、他の通信装置から前記フラッディングメッセージを受信した場合に、前記隣接ノードデータベースから取得した自通信装置に隣接する通信装置のうち、前記フラッディングメッセージの前記隣接ノード情報に格納される通信装置と一致する通信装置を除いた通信装置にのみ、前記フラッディングメッセージを転送する機能をさらに備えることを特徴とする請求項5に記載の通信装置。
- 前記フラッディングメッセージ処理手段は、前記フラッディングメッセージを送信することができない自通信装置に隣接する通信装置を、前記フラッディングメッセージに格納する前記隣接ノード情報から除外する機能をさらに備えることを特徴とする請求項5または6に記載の通信装置。
- 複数のインタフェース手段と、いずれかの前記インタフェース手段から入力した通信データを、その宛先アドレスに基づいて所定の前記インタフェース手段に出力するように切替えるスイッチ手段と、を備える通信装置において、
自通信装置が所属するネットワーク内に存在する全通信装置に関して、前記通信装置に隣接する通信装置を示す隣接ノード情報を格納する隣接ノードデータベースと、
フラッディングメッセージを送信する場合に、前記隣接ノード情報を格納した前記フラッディングメッセージを、自通信装置に隣接する通信装置にのみ送信するフラッディングメッセージ処理手段と、
を備えることを特徴とする通信装置。 - 前記フラッディングメッセージ処理手段は、他の通信装置から前記フラッディングメッセージを受信した場合に、前記隣接ノードデータベースから取得した自通信装置に隣接する通信装置のうち、前記隣接ノードデータベースから取得した前記フラッディングメッセージを送信した通信装置に隣接する通信装置と一致する通信装置を除いた通信装置にのみ、前記フラッディングメッセージを転送する機能をさらに備えることを特徴とする請求項8に記載の通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003142626A JP2004349881A (ja) | 2003-05-20 | 2003-05-20 | フラッディング量削減方法および通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003142626A JP2004349881A (ja) | 2003-05-20 | 2003-05-20 | フラッディング量削減方法および通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004349881A true JP2004349881A (ja) | 2004-12-09 |
Family
ID=33530659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003142626A Abandoned JP2004349881A (ja) | 2003-05-20 | 2003-05-20 | フラッディング量削減方法および通信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004349881A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006270535A (ja) * | 2005-03-24 | 2006-10-05 | Matsushita Electric Works Ltd | マルチホップ無線通信装置およびそれにおけるルートテーブル作成方法 |
US8565236B2 (en) | 2010-07-08 | 2013-10-22 | Fujitsu Telecom Networks Limited | Relay apparatus for communication frames and relay method |
JP2014059242A (ja) * | 2012-09-18 | 2014-04-03 | Ricoh Co Ltd | 配置管理装置、配置管理システム、及び配置管理プログラム |
JP2015154236A (ja) * | 2014-02-14 | 2015-08-24 | 日本電信電話株式会社 | データ転送システム、ホーム加入者サーバ及びデータ転送方法 |
-
2003
- 2003-05-20 JP JP2003142626A patent/JP2004349881A/ja not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006270535A (ja) * | 2005-03-24 | 2006-10-05 | Matsushita Electric Works Ltd | マルチホップ無線通信装置およびそれにおけるルートテーブル作成方法 |
US8565236B2 (en) | 2010-07-08 | 2013-10-22 | Fujitsu Telecom Networks Limited | Relay apparatus for communication frames and relay method |
JP2014059242A (ja) * | 2012-09-18 | 2014-04-03 | Ricoh Co Ltd | 配置管理装置、配置管理システム、及び配置管理プログラム |
JP2015154236A (ja) * | 2014-02-14 | 2015-08-24 | 日本電信電話株式会社 | データ転送システム、ホーム加入者サーバ及びデータ転送方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7551551B2 (en) | Fast reroute (FRR) protection at the edge of a RFC 2547 network | |
EP2521308B1 (en) | Communications system and port information collection method | |
US7535828B2 (en) | Algorithm for backup PE selection | |
CN102598599B (zh) | 快速重新路由条件下的rsvp-te完美重启 | |
US10397044B2 (en) | Network function virtualization (“NFV”) based communications network resilience | |
US9769054B2 (en) | Network topology discovery method and system | |
US7693047B2 (en) | System and method for PE-node protection | |
JP4389221B2 (ja) | ネットワーク、ルータ装置、それに用いる切替方法及びそのプログラム並びに記録媒体 | |
EP2521309B1 (en) | Communications system and topology information generation method | |
JP4434867B2 (ja) | Mplsネットワークシステム及びノード | |
JP4682887B2 (ja) | 故障復旧方法およびノードならびにネットワーク | |
JP4277189B2 (ja) | ルータ装置及びパケット転送制御方法 | |
JP4109692B2 (ja) | ラベルスイッチネットワークにおけるセッション確立方法及びラベルスイッチノード | |
CN101326762A (zh) | 在自治系统中构造和实现备用路径 | |
US7969898B1 (en) | Technique for breaking loops in a communications network | |
JP2005252368A (ja) | 経路計算システム、経路計算方法、及び通信ノード | |
EP2658177B1 (en) | Method for detecting tunnel faults and traffic engineering node | |
JP2004128723A (ja) | ラベルスイッチルータ及びそのパス切替制御方法 | |
WO2002006918A2 (en) | A method, system, and product for preventing data loss and forwarding loops when conducting a scheduled change to the topology of a link-state routing protocol network | |
JP2008301517A (ja) | ルータ装置及びパケット転送制御方法 | |
JP6042838B2 (ja) | 管理システム、管理サーバ、および管理方法 | |
JP2004349881A (ja) | フラッディング量削減方法および通信装置 | |
Lin et al. | Redirection based recovery for MPLS network systems | |
JP2004248085A (ja) | 経路決定方法および経路決定装置 | |
JP3887301B2 (ja) | フレーム転送ネットワーク |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070926 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071030 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20071227 |