JP4470820B2 - 障害回避ルーティングを行う通信ノード及びプログラム - Google Patents

障害回避ルーティングを行う通信ノード及びプログラム Download PDF

Info

Publication number
JP4470820B2
JP4470820B2 JP2005183292A JP2005183292A JP4470820B2 JP 4470820 B2 JP4470820 B2 JP 4470820B2 JP 2005183292 A JP2005183292 A JP 2005183292A JP 2005183292 A JP2005183292 A JP 2005183292A JP 4470820 B2 JP4470820 B2 JP 4470820B2
Authority
JP
Japan
Prior art keywords
routing
node
communication node
management
signal
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.)
Expired - Fee Related
Application number
JP2005183292A
Other languages
English (en)
Other versions
JP2007006088A (ja
Inventor
賢治 堀
貴仁 吉原
浩規 堀内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Research Inc
Original Assignee
KDDI R&D Laboratories Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by KDDI R&D Laboratories Inc filed Critical KDDI R&D Laboratories Inc
Priority to JP2005183292A priority Critical patent/JP4470820B2/ja
Publication of JP2007006088A publication Critical patent/JP2007006088A/ja
Application granted granted Critical
Publication of JP4470820B2 publication Critical patent/JP4470820B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、パケットルーティングに関し、より詳しくは、ネットワーク障害時においても、障害箇所を回避してメッセージの転送を可能とする障害回避ルーティングに関する。
インターネットの発展に伴い、1つのISP(Internet Service Provider)のネットワークが、数千から数万台に及ぶルータ等のネットワーク構成機器により構成される状態となり、これら大規模ネットワークに対応したネットワークの構成管理方式が必要となっている。ここで、構成管理とは、ネットワーク構成機器に対する各種設定の投入及び運用状態の監視をいう。
これら、大規模ネットワークの構成管理において、ネットワークの管理者に対してネットワーク構成管理のためのユーザインタフェースを提供する管理サーバとルータ等のネットワーク構成機器間で、構成管理のために交換される管理メッセージは、ネットワークの障害に拘らず、これら障害箇所を回避して高い信頼度で転送される必要がある。
非特許文献1には、各ルータがそれぞれの判断に従い隣接ルータにメッセージを転送する、hop−by−hop型の障害回避ルーティングが示されている。非特許文献1によると、各ルータは、ネットワーク全体のマップ、いわゆる、リンクステート情報を維持し、リンクステート情報に基づき、あらかじめ、隣接ルータに対する予備のルートを計算しておく。実際に障害が発生し、隣接ルータと通信不能になったときは、あらかじめ計算しておいた予備のルートにパケット又はメッセージの転送を行うことで障害を回避している。
また、非特許文献2には、メッセージ送信元のルータが、宛先までの経路を指定するソースルーティング型の障害回避ルーティングが示されている。非特許文献2によると、各ルータは、リンクステート情報を維持し、メッセージを送信するルータは、リンクステート情報に基づき転送経路を決定し、転送経路を含むメッセージの送信を行う。この指定転送経路をソースルートと呼ぶが、ソースルート上でメッセージの中継に失敗すると、中継に失敗したルータは、メッセージ送信元のルータに中継失敗の通知を行う。メッセージ送信元のルータは、中継失敗箇所をリンクステート情報から除去し、再度ソースルートを計算してメッセージの再送を行うことで障害回避を実現している。
S.Lee et al,"Proactive vs Reactive Approaches to Failure Resilent Routing",in proc. of IEEE inforcom,2004年 I.Avrampoulous et al,"Highly Secure and Efficient Routing" in proc. of IEEE Infocom,2004年
非特許文献1及び2に記載の障害回避ルーティングでは、IPネットワーク内の各ネットワーク構成機器のIPアドレスが効率的に経路集約可能でない場合、ルータ間及びルータと管理サーバ間で交換し、メモリ上に維持しなければならないリンクステート情報が大きくなってしまう。更に管理対象であるネットワーク規模が大規模である場合には、リンクステート情報も巨大なものとなり、ネットワーク帯域資源が、リンクステート情報交換及び維持のために消費され、ネットワーク構成機器に要求されるハードウェア能力が著しく高いものになるという問題がある。
従って、本発明は、ネットワーク内の通信ノード、即ち、各ネットワーク構成機器及び管理サーバに割り当てられたアドレスが効率的に経路集約可能でない場合においても、高い能力を必要とせず、かつ、巨大なリンクステート情報を維持交換する必要もなく、障害を回避してメッセージを宛先の通信ノードまで転送する通信ノード及び通信ノード用プログラムを提供することを目的とする。
本発明における通信ノードによれば、
管理アドレス及びルーティングID範囲を保存する保存手段と、使用しているルーティングIDを含む近隣広報信号を送信する近隣広報信号送信手段と、起動時に他の通信ノードから、近隣広報信号を受信しない場合は、ルートノードとなり、保存しているルーティングID範囲を自ノードが管理する管理ルーティングID空間とし、起動時に1以上の通信ノードから近隣広報信号を受信する場合は、選択した1つの通信ノードから、所定のルーティングID分割方法に基づき、前記選択した通信ノードの管理ルーティングID空間の一部の割当てを受けて、自ノードの管理ルーティングID空間とし、自ノードの管理ルーティングID空間から前記ルーティングID分割方法に基づき、自ノードが使用するルーティングIDを決定するルーティングID決定手段と、メッセージを宛先の通信ノードへ送信するメッセージ送信手段と、中継手段とを有し、メッセージ送信手段は、宛先通信ノードの管理アドレスから、宛先通信ノードが使用しているルーティングIDを取得するルーティングID取得手段と、前記ルーティングID分割方法で決まるルーティングIDの結合関係に従い、宛先通信ノードまでに経由する通信ノードであるソースルートを決定するソースルート決定手段と、ルーティングIDに対応する宛先アドレスと、ソースルートとを有するパケットを送信するパケット送信手段とを備え、中継手段は、他の通信ノードのルーティングIDに対応する宛先アドレスのパケットを受信した場合、ソースルートに従い転送し、ルーティングID決定手段は、管理ルーティングID空間の割当元通信ノードからの近隣広報信号を受信しなくなった場合は、受信している近隣広報信号の送信元である他の通信ノードから、新たに管理ルーティングID空間の割当てを受け、管理ルーティングID空間と使用するルーティングIDを変更することを特徴とする。
本発明の通信ノードにおける他の実施形態によれば、
近隣広報信号は、ルートノードの管理アドレスを含み、ルーティングID決定手段は、管理ルーティングID空間の割当元通信ノードが送信する近隣広報信号に含まれるルートノードより、優先順位の高いルートノードを含む近隣広報信号を受信した場合、優先順位の高いルートノードを含む近隣広報信号を送信している通信ノードから、新たに管理ルーティングID空間の割当てを受け、管理ルーティングID空間と使用するルーティングIDを変更することも好ましい。
また、本発明の通信ノードにおける他の実施形態によれば、
自ノードのルーティングIDに対応する宛先アドレスのパケットを受信した場合は、ソースルートに指定された通信ノードに確認信号を送信する確認信号送信手段を有し、前記中継手段は、ソースルートに指定された通信ノードが隣接する通信ノードではない場合は、自ノードの隣接ノードのルーティングIDを含む不存在通知信号を、中継したパケットについての到着確認を宛先通信ノードから所定の期間内に受信しない場合は、自ノードの隣接ノードのルーティングIDを含む障害通知信号を、送信元の通信ノードに送信し、ソースルート決定手段は、不存在通知信号又は障害通知信号を受信した場合には、通知される隣接ノードのルーティングIDと、ルーティングID分割方法で決まるルーティングIDの結合関係とに基づき、ソースルートの再計算を行うことも好ましい。
更に、本発明の通信ノードにおける他の実施形態によれば、
自ノードが使用する管理アドレスを所定の管理アドレス変換方法で変換し、変換後の値をルーティングIDとして使用している通信ノード宛に、自ノードが使用するルーティングIDと自ノードの管理アドレスを含むID登録信号を送信するルーティングID登録手段を有し、ルーティングID取得手段は、宛先通信ノードの管理アドレスを前記管理アドレス変換方法で変換し、変換後の値をルーティングIDとして使用している通信ノード宛に、宛先通信ノードのルーティングIDを問い合わせるID検索信号を送信し、ID登録信号又はID検索信号を受信した場合、前記ルーティングID分割方法に基づき存在が認識できる通信ノードのうち、自ノードのルーティングIDが、宛先に対応するルーティングIDと一番近い場合は、自ノードでID登録信号又はID検索信号の処理を行い、それ以外の場合は、ルーティングID分割方法で決まるルーティングIDの結合関係に従いID登録信号又はID検索信号の中継を行う手段を有することも好ましい。
更に、本発明の通信ノードにおける他の実施形態によれば、
前記管理アドレス変換方法は、ハッシュ関数を使用することも好ましい。
本発明におけるプログラムによれば、
コンピュータを、前記通信ノードとして機能させることを特徴とする。尚、コンピュータとは、パーソナルコンピュータ等の汎用的な目的に設計されたコンピュータのみならず、ルータ等の通信用途向けに設計されたハードウェア構成の機器をも含む。
各通信ノードが、所定のルーティングID分割方法に基づき、常にルーティングID分割方法で決定されるルーティングIDの結合関係を維持するように、自律分散的に使用するルーティングIDを決定することで、管理アドレスが集約可能でなくても、各ノードは、メッセージの宛先通信ノードへの経路を特定することができる。
自ノード宛のパケットを受信した場合は、ソースルートに指定された通信ノードに確認信号を送信することで、中継ノードは、中継したメッセージが宛先通信ノードに正常に到達したか否かを確認できる。各中継ノードは、メッセージが宛先通信ノードに到達しなかった場合、自ノードの隣接ノードのルーティングIDを含む障害通知信号をメッセージ送信元の通信ノードに送信し、また、ソースルートに指定された通信ノードが隣接する通信ノードではない場合には、自ノードの隣接ノードのルーティングIDを含む不存在通知信号をメッセージ送信元の通信ノードに送信することで、メッセージ送信元ノードは、ルーティングID分割方法で決定されるルーティングIDの結合関係以外のルートと、障害箇所を認識し、迂回ルートの計算が可能となる。本構成により、リンクが正常であるが、ノードの中継処理のみに異常があるような障害に対しても、障害箇所を迂回したルーティングが可能となる。
ルーティングIDと管理アドレスとの対応関係を、管理アドレスを所定の変換方法で変換して得られる値をルーティングIDとして使用するノードに、同一の値をルーティングIDとして使用する通信ノードが存在しない場合には、一番近い値をルーティングIDとして使用している通信ノードヘ分散配置することで、ノード障害に対して耐性の高いシステムとなる。
上記変換方法は、入力される値を、所定のビット長で、かつ、値域内に重複なく一様分布させるハッシュ関数を用いることにより確実に一様な分散配置とすることができる。
本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。
図1は、本発明を説明するために用いるネットワーク構成図である。図1において、ノードとは、ルータ等のネットワーク構成機器及び管理サーバといった通信装置、つまり通信ノードを表している。各ノードに対して、ネットワーク管理者は、あらかじめ、管理アドレス及びルーティングID範囲を設定保存しておく。管理アドレスは、例えばIPアドレスといった通信相手ノードを識別するためのアドレスであるが、ネットワークトポロジに対して、経路集約可能である必要はなく、また、インタフェース数等とも無関係に各ノードに1つだけ割当てを行う。ルーティングID範囲は、全ノードに対して同一値であり、各ノードは、ルーティングID範囲から、それぞれが管理メッセージの転送において使用するルーティングIDを自律分散処理で決定する。
図2に、図1の各ノードに設定された管理アドレス及びルーティングID範囲を示す。図2では、簡単のため管理アドレスを文字a、b、c、d、e、f、gで表している。また、後述するように、管理アドレスから、ルーティングIDを検索可能とするため、DHT(Distributed Hash Table)を用い、管理アドレスとルーティングIDの関係を、各ノードに分散共有する。より詳しくは、SHA−1(Secure Hash Algorithm 1)等のハッシュ関数により、管理アドレスを変換してハッシュ値を算出し、算出したハッシュ値に等しい、又は、一番近いルーティングIDのノードに管理アドレスとルーティングIDの関係を保存する。図2には、各ノードの管理アドレスの、ハッシュ関数によるハッシュ値も合わせて示している。
図3は、各ノードが使用するルーティングIDの決定方法を説明する図である。図3の(a)において、ノード1−Aが起動したものとする。起動したノードは、起動後T1秒間リスニング状態となり、近隣ノードが送信する、送信ノードのルーティングIDを含む近隣広報信号(以後、NA信号と呼ぶ。NA:Neighbor Advertisement)の受信確認を行い、NA信号を受信した場合は、含まれるルーティングIDを記録する。ノード1−Aは最初に起動したノードであり、リスニング状態の間にNA信号を受信しないため、本システムのルートノードとなり、設定されているルーティングID範囲0〜31のなかの最小値0を自身のルーティングIDとして使用する。また、自身が管理するルーティングID空間を、設定されているルーティングID範囲である0〜31とする。ルートノードであるノード1−Aは、以後、自身の各インタフェースに、自身のルーティングIDと、ルートノードの管理アドレス、即ちaを含むNA信号をT1秒間隔にて送信する。
続いて(b)において、ノード1−Bが起動したものとする。ノード1−Bは、リスニング状態の間に、ノード1−AよりNA信号を受信し、ルーティングIDが0であるノード1−Aの存在と、ルートノードの管理アドレスがaであることを認識する。T1秒経過後、ノード1−Bはリクエスティング状態に以降し、ノード1−AにID要求信号を送信する。ID要求信号を受信したノード1−Aは、自身が管理するルーティングID空間である0〜31を2分割し、後半16〜31をノード1−Bに与えることを示すID割当信号をノード1−Bに送信すると共に、自身が管理するルーティングID空間を、0〜15に更新する。ID割当信号を受信したノードBは、割り当てられたルーティング空間の最小値である16を、自身のルーティングIDとして使用すると共に、割り当てられたルーティングID空間16〜31を自身が管理するものとして記録する。以後、自身の各インタフェースに、自身のルーティングIDと、ルートノードの管理アドレスを含むNA信号をT1秒間隔にて送信する。
続いて、図3(c)及び(d)において、それぞれ、ノード1−C及びノード1−Dが起動するが、上記と同様ノード1−Cは、ID要求信号をノード1−Aに送信し、ノード1−Aは、ノード1−CにルーティングID空間8〜15を割当て、ノード1−Cは、8を自身のルーティングIDとして使用し、ノード1−Dは、ID要求信号をノード1−Cに送信し、ノード1−Cは、ノード1−DにルーティングID空間12〜15を割当て、ノード1−Dは、12を自身のルーティングIDとして使用する。
図3(e)でノード1−Eが起動するが、ノード1−Eは、リスニング状態の間にノード1−D及びノード1−Bから、それぞれNA信号を受信する。本実施形態においては、複数のノードからNA信号を受信した場合、ルーティングIDの最も小さいノードに、本例ではノード1−Eに対してID要求信号を送信するものとする。ノード1−Dは、ノード1−Eに対してルーティングID空間14〜15を割当て、ノード1−Eは、14を自身のルーティングIDとする。尚、ルーティングIDの大きいノードに対してID要求信号を送信する構成とすることも可能である。
その後、図3(f)においてノード1−Fが起動するが、上記と同様、ノード1−Fは、ID要求信号をノード1−Eに送信し、ノード1−Eは、ノード1−EにルーティングID空間15を割当て、ノード1−Eは、15を自身のルーティングIDとして使用する。
最後に、図3(g)において、ノード1−Gが起動するが、ノード1−Gは、ルーティングIDがノード1−Bより小さいノード1−AにID要求信号を送信し、ノード1−Aは、ノード1−GにルーティングID空間4〜7を割当て、ノード1−Gは、4を自身のルーティングIDとして使用する。
図4に、図3(g)の時点での各ノードのルーティングIDと、各ノードが管理しているルーティングID空間と、ルーティングID空間の割当元の関係を示す。尚、図4の対応関係については後述する。
上述したように、本発明でのルーティングIDの決定は、最初に起動したノードがルートノードとなって、初期設定で与えられたルーティングID範囲を自身の管理するルーティングID空間とし、ID要求信号の受信により、管理しているルーティングID空間を2分割し、後半部分をID要求信号の送信元ノードに割当て、更に、ルーティングID空間の割当てを受けたノードも同様に、ID要求信号の受信により、管理しているルーティングID空間の分割割当てを行うというものである。従って、初期設定で与えられたルーティングID範囲が、図2の通り5ビットで表現可能な0〜31とした場合に、ルーティングID=0であるルートノードを基点とする、各ルーティングIDのノードの結合関係は、図5のようになる。
例えば、ルーティングID=22を使用するノードが存在するということは、少なくともルーティングID=0、16、24、20というノードが他に存在することを意味する。つまり、ルーティングID=22のノードは、隣接ノードから受信するNA信号により認識するノード以外に、少なくとも、ルーティングID=0、16、24、20を有するノードの存在と、自身からルートノードへは、ルーティングID=20,16のノードを経由して到達可能であることは認識可能である。図5に示す各ルーティングID間のリンク、つまり、実際にID要求信号及びID割当信号の送受信を行ったリンクを、以後、自明な経路と呼ぶ。
各ノードは、メッセージの送信の際に、宛先通信ノードが使用しているルーティングIDが分かれば、ルーティングIDの結合関係から、メッセージを送信すべき隣接ノードを特定することができる。
尚、管理するルーティングID空間の分割方法及び割り当てられたルーティングID空間から使用するルーティングIDを決定する方法は、全ノードが共通の自明な経路及びルーティングIDの結合関係を認識できれば、その方法に限定はない。
続いて、ルーティングIDのリナンバリング処理について説明する。図6に示す様に、図3(g)のノード1−Fの接続先を、ノード1−Eからノード1−Bに変更したものとする。ノード1−Eともはや接続しないノード1−FのルーティングIDを、変更前と同じ15とすることは、システムで共通して認識しているルーティングIDの結合関係ではノード1−Fに到達不可能となる以上許容できない。このため各ノードは、受信するNA信号を監視して、ルーティングID空間割当元ノードからNA信号を受信しなくなった場合は、ルーティングIDのリナンバリング処理を開始する。本例においてノード1−Fは、ノード1−BにID要求信号を送信し、ノード1−Bから新たなルーティングID空間の割当てを受け、ルーティングIDを24に変更する。尚、ルーティングID空間割当元のノードも、ルーティングID空間割当先のノードからNA信号を受信しなくなった場合は、一定期間経過後に割り当てたルーティングID空間を自身の管理するルーティングID空間と変更する。
続いて、ルーティングID競合の解決処理について説明する。図7(a)は、ノード1−Aとノード1−Cが独立して起動した結果、お互いがルートノードとなっている状態を示している。更に、ノード1−Aはノード1−BにルーティングID空間の割当てを行い、ノード1−Cはノード1−Dに、ノード1−Dはノード1−EにルーティングID空間の割当てを既に行っている。この状態で、ノード1−B及びノード1−Eに接続するノード1−Fが起動したものとする。
新たに起動したノード1−Fは、ノード1−B及びノード1−EからNA信号を受信するが、複数のノードからNA信号を受信する場合には、NA信号に含まれるルートノードの管理アドレスが一致しているか否かの確認を行う。一致している場合は、既に述べたように、システムで所定の方法により決定されるノード、例えば、ルーティングIDの一番小さいノードにID要求信号を送信する。ルートノードが不一致である場合は、前記ルートノードが一致している場合の所定の決定方法に拘らず、優先順位の高いルートノード、例えば、管理アドレスの小さいルートノード、を含むNA信号を送信しているノードにID要求信号を送信する。本説明例においては、ノード1−Aの優先順位が高い、つまり、ノード1−Aとノード1−Cがルートノードとして競合した場合には、ノード1−Aが選択されるものとして説明を行う。従って、図7(b)に示す様に、ノード1−Fは、ノード1−Aをルートノードとするノード1−Bに対してID要求信号を送信し、ノード1−BからルーティングID区間の割当てを受け、ルーティングID=24を使用してNA信号の送信を開始する。
ノード1−Eは、図7(c)に示す様に、ノード1−Fから受信するNA信号に含まれるルートノードの管理アドレスと、ノード1−Dから受信するNA信号に含まれるルートノードの管理アドレスが不一致であることから、優先順位の高いノード1−Aをルートノードとするため、ノード1−Fに対してID要求信号を送信し、ノード1−FからルーティングID区間の割当てを受け、ルーティングID=28を使用してNA信号の送信を開始する。
以後、同様の処理がノード1−D及び1−Cでも行われ、図7(d)に示す様に、ノード1−D及びノード1−C共にルートノードをノード1−Aとし、ノード1−DはルーティングIDを30に、ノード1−Cは、ルーティングIDを31に変更する。
以上の処理によりルーティングIDの結合関係をシステムで共通に保つことができ、従って各ノードは常にメッセージの宛先ノードへの経路を認識することができる。
本発明においては、メッセージを送信する場合に、宛先通信ノードの管理アドレスから、宛先通信ノードが使用しているルーティングIDを取得する必要がある。例えば、ルートノードが、全ノードの管理アドレスとルーティングIDの関係を収集して保存する等も考えられるが、1つのノードが集中して管理する構成では、管理しているノードの障害時には総てのメッセージ送信が不可能となる問題が生じる。従って、本発明においては、DHTを用い管理アドレスとルーティングIDの関係を、各ノードに分散共有する。即ち、各ノードが自立分散的に決定したルーティングIDと管理アドレスの対応関係を、管理アドレスのハッシュ値をルーティングIDとするノードに、管理アドレスのハッシュ値をルーティングIDとするノードが未だ存在しない場合には、一番近い値をルーティングIDとするノードに保存する。このため、各ノードは、管理アドレスとルーティングIDの関係を示すID登録信号を、管理アドレスのハッシュ値を宛先として一定周期T2秒毎に送信する。図4の対応関係は、図3(g)の段階での管理アドレスとルーティングIDの関係の保存先である。例えば、ノード1−Eの管理アドレスのハッシュ値は、図2に示す様に7であり、ノード1−EのルーティングIDと管理アドレスの関係は、ハッシュ値7に一番近いルーティングIDを持つ、ノード1−Cに保存されている。
(ID登録信号の送信) ID登録信号の送信について、図3(g)の状態でのノード1−Gを用いて説明をする。
ID登録信号は、既に説明したようにID登録信号送信元ノードの管理アドレスのハッシュ値を宛先とする信号であり、ノード1−Gの場合には図2に示す様に、その宛先は14となる。図5に示すように、ルーティングID=4であるノード1−Gは、ルーティングID=14宛のID登録信号を、隣接するルーティングID=0のノードに送信すれば良いことを認識しており、よって、ID登録信号をノード1−Aに送信する。同様に、ノードAは、ルーティングID=14宛のID登録信号を、隣接するルーティングID=8のノードに送信すれば良いことを認識しており、よって、ID登録信号をノード1−Cに送信する。同様に、各ノードが自明な経路上で転送を行い、最終的に、ノード1−Gが送信したID登録信号は、ルーティングID=14であるノード1−Eに到達し、ノード1−Eは、受信したノード1−GからのID登録信号に含まれる、ノード1−Gの管理アドレスとルーティングIDの関係を保存する。
尚、宛先ノードが存在しない場合には、宛先ルーティングIDに一番近いルーティングIDを有するノードに保存される。
(ID検索信号の送信) 続いて、メッセージ送信の際に、宛先通信ノードの管理アドレスから宛先通信ノードが使用しているルーティングIDを取得するためのID検索信号の送信について、図3(g)の状態でのノード1−Gを用いて説明をする。まず、ノード1−Gが、管理アドレスf、即ち、ノード1−Fにメッセージを送信するものとする。この場合、ノード1−Gは、管理アドレスfのノードのルーティングIDを取得するため、管理アドレスfのハッシュ値を計算する。図2に示す様に、管理アドレスfのハッシュ値は21である。図5から明らかなように、ルーティングID=4であるノード1−Gは、ルーティングIDが21のノードには、ルーティングID列で0、16、20、21となる自明な経路で到達することを認識しているため、ID検索信号を、ID登録信号と同様にノード1−Aに送信する。ノード1−Aも同様に、受信したID検索信号をノード1−Bに転送する。ノード1−Bは、自身が管理しているルーティングID空間内であるルーティングID=17〜22のノードが存在しないことを認識しており、ルーティングID=21宛のID検索信号を自身が処理するものとして扱う。結果、ノード1−Bは、ノード1−Gに、ノード1−FのルーティングID=15を通知する。
尚、後述するメッセージの送信と異なり、ID登録信号及びID検索信号の送信については、宛先ルーティングIDが存在しない場合でも、一番近いルーティングIDのノードに配送されて、宛先に対する不着等の通知にはならない。
(メッセージの送信) 続いて、上述したID検索信号で、ルーティングIDを取得したノード1−F宛のメッセージ送信について、通常時と、障害時に分けて説明する。
図8は、通常時のメッセージ送信のシーケンス図である。メッセージ送信元のノード1−Gは、自明な経路を指定したソースルーティング方式によりノード1−Fにメッセージを送信する。図8の*は、自明な経路を示している。各ノードは、指定された経路、即ち、ソースルートに従い受信信号を順次転送する。宛先ノードであるノード1−Fは、ソースルート上の各ノードにメッセージを受信したことを通知する、確認信号を送信する。
各ノードは、宛先ノードであるノード1−Fからの確認信号の受信により、メッセージが正常に転送されたことを確認する。
図9は、障害時のメッセージ送信のシーケンス図である。ここでは、ノード1−Aとノード1−C間の自明な経路は正常であるが、ノード1−Cでのパケット転送が、何らかの原因により正常に行われない状態を仮定する。
メッセージ送信元のノード1−Gは、自明な経路を指定したソースルーティング方式によりノード1−Fにメッセージを送信する。ノード1−Aは、指定された経路に従いノード1−Cにメッセージを転送する。しかしながら、ノード1−Cの故障により、それ以降のメッセージ転送は行われない。メッセージ送信元ノード及びメッセージの中継を行うノードは、メッセージの送信及び中継後にタイマを起動しており、各中継ノードは、所定の期間内に宛先ノードからの確認信号を受信しない場合は、送信元ノードに、障害通知信号を送信する。
送信元ノードは、各中継ノードから受信する障害通知信号から、メッセージがどのノードまで正常に転送されたのかを判定することができる。また、障害通知信号には、各ノードの他の隣接ノード情報が含まれており、送信元ノードは、これら情報からソースルートの再計算を行う。本説明例では、ノード1−Gは、ノード1−Aからのみ障害通知信号を受信するため、ルーティングID=8ノードの障害であることを認識し、また、ノード1−Aからの障害通知信号に含まれるノード1−Aの他の隣接ノードがノード1−Bであることも認識する。
上記情報に基づいて、ノード1−Gは、ルーティングID=0であるノード1−Aの次に、ノード1−Aが通知したルーティングID=16であるノード1−Bを指定し、更に、その次に、ルーティングID=15のノードへの自明な経路上で、故障しているルーティングID=8のノード1−Cの次に位置するルーティングID=12を指定し、その後、自明な経路を指定した経路を、新しいソースルートとして算出し、算出した経路を指定したメッセージを送信する。尚、ノード1−Gは、ルーティングID=16であるノード1−Bが自身の隣接ノードであることを認識しているため、ノード1−Aを省略して、直接ノード1−Bへ送信するソースルートを選択することも、もちろん可能である。
ノード1−Aは、前記メッセージを、指定に従ってノード1−Bに転送する。しかし、ノード1−Bは、指定されたルーティングID=12は、自身の隣接ノードにはないため不存在通知信号により自身の隣接ノード、本例ではルーティングID=14を、ノード1−Gに通知する。
ノード1−Gは、不在通知信号の受信により、再度ソースルートの再計算を行い、新しい経路を指定してメッセージを再送信する。本説明例では、ノード1−Bから通知されたルーティングID=14が、ルーティングID=15のノードへの自明な経路上の、1つ手前のノードであることを認識できるため、経路として、4、0、16、14、15を指定したメッセージを送信し、宛先ノードであるノード1−Fからの確認信号により、メッセージが正常に転送されたことの確認を行う。
続いて、IPネットワークの場合を例として、ルーティングIDによるパケット転送について説明する。図10(a)に示す様に、管理アドレスが10.1.0.1で、ルーティングIDが1であるノード1−Aから、管理アドレスが10.1.0.5で、ルーティングIDが16であるノード1−Bにメッセージの転送を行うものとする。ノード1−Aは、通常のパケット送信処理と同様に、送信先アドレスを10.1.0.5、送信元アドレスを10.1.0.1とし、ペイロード部分にメッセージを含んだパケットを生成する。続いて、前記生成したパケットを、送信先アドレス及び送信元アドレスが、それぞれ、ノード1−B及びノード1−AのルーティングIDからシステムで共通の方法により求めたアドレスであり、ソースルートフィールドを有するパケットでカプセル化する。本説明例においては、ルーティングID=Xのノードは、アドレス20.1.0.Xに変換するものとしている。ソースルートフィールドには、上述したように、宛先ノードまでの、ルーティングIDを用いた経路が設定される。
また、ネットワークの管理メッセージ等、本発明によるルーティングIDを用いたパケット転送と、通常のパケット転送を混在させるために、管理アドレスの範囲を設定し、各ノードには、管理アドレス範囲内からアドレスの割当てを行う。
以上説明したように、本発明によるルーティングIDを用いたパケット転送は、既存ノードに、ルーティングIDを自律分散的に決定する処理と、宛先アドレスが管理アドレスである場合には、ルーティングIDに対応するアドレスのパケットでカプセル化する処理と、送信したカプセル化したパケットが不達となった場合の障害回避処理を実装するだけで実現可能である。
本発明を説明するために用いるネットワーク構成図である。 ノードの初期設定内容を示す図である。 ルーティングIDの決定方法を説明する図である。 図3(f)の時点での各ノードの状態を説明する図である。 ルーティングIDを5ビットとした場合の、各ノード結合関係を示す図である。 ルーティングIDのリナンバリング処理を説明する図である。 ルーティングID競合の解決処理について説明する図である。 通常時のメッセージ送信のシーケンス図である。 障害時のメッセージ送信のシーケンス図である。 ルーティングIDによるパケット転送を説明する図である。
符号の説明
1−A、1−B、1−C、1−D、1−E、1−F、1−G ノード

Claims (6)

  1. 管理アドレス及びルーティングID範囲を保存する保存手段と、
    使用しているルーティングIDを含む近隣広報信号を送信する近隣広報信号送信手段と、
    起動時に他の通信ノードから、近隣広報信号を受信しない場合は、ルートノードとなり、保存しているルーティングID範囲を自ノードが管理する管理ルーティングID空間とし、起動時に1以上の通信ノードから近隣広報信号を受信する場合は、選択した1つの通信ノードから、所定のルーティングID分割方法に基づき、前記選択した通信ノードの管理ルーティングID空間の一部の割当てを受けて、自ノードの管理ルーティングID空間とし、自ノードの管理ルーティングID空間から前記ルーティングID分割方法に基づき、自ノードが使用するルーティングIDを決定するルーティングID決定手段と、
    メッセージを宛先の通信ノードへ送信するメッセージ送信手段と、
    中継手段と、
    を有し、
    メッセージ送信手段は、
    宛先通信ノードの管理アドレスから、宛先通信ノードが使用しているルーティングIDを取得するルーティングID取得手段と、
    前記ルーティングID分割方法で決まるルーティングIDの結合関係に従い、宛先通信ノードまでに経由する通信ノードであるソースルートを決定するソースルート決定手段と、
    ルーティングIDに対応する宛先アドレスと、ソースルートとを有するパケットを送信するパケット送信手段と、
    を備え、
    中継手段は、他の通信ノードのルーティングIDに対応する宛先アドレスのパケットを受信した場合、ソースルートに従い転送し、
    ルーティングID決定手段は、管理ルーティングID空間の割当元通信ノードからの近隣広報信号を受信しなくなった場合は、受信している近隣広報信号の送信元である他の通信ノードから、新たに管理ルーティングID空間の割当てを受け、管理ルーティングID空間と使用するルーティングIDを変更することを特徴とする通信ノード。
  2. 近隣広報信号は、ルートノードの管理アドレスを含み、
    ルーティングID決定手段は、管理ルーティングID空間の割当元通信ノードが送信する近隣広報信号に含まれるルートノードより、優先順位の高いルートノードを含む近隣広報信号を受信した場合、優先順位の高いルートノードを含む近隣広報信号を送信している通信ノードから、新たに管理ルーティングID空間の割当てを受け、管理ルーティングID空間と使用するルーティングIDを変更することを特徴とする請求項1に記載の通信ノード。
  3. 自ノードのルーティングIDに対応する宛先アドレスのパケットを受信した場合は、ソースルートに指定された通信ノードに確認信号を送信する確認信号送信手段を有し、
    前記中継手段は、ソースルートに指定された通信ノードが隣接する通信ノードではない場合は、自ノードの隣接ノードのルーティングIDを含む不存在通知信号を、中継したパケットについての到着確認を宛先通信ノードから所定の期間内に受信しない場合は、自ノードの隣接ノードのルーティングIDを含む障害通知信号を、送信元の通信ノードに送信し、
    ソースルート決定手段は、不存在通知信号又は障害通知信号を受信した場合には、通知される隣接ノードのルーティングIDと、ルーティングID分割方法で決まるルーティングIDの結合関係とに基づき、ソースルートの再計算を行うことを特徴とする請求項1又は2に記載の通信ノード。
  4. 自ノードが使用する管理アドレスを所定の管理アドレス変換方法で変換し、変換後の値をルーティングIDとして使用している通信ノード宛に、自ノードが使用するルーティングIDと自ノードの管理アドレスを含むID登録信号を送信するルーティングID登録手段を有し、
    ルーティングID取得手段は、宛先通信ノードの管理アドレスを前記管理アドレス変換方法で変換し、変換後の値をルーティングIDとして使用している通信ノード宛に、宛先通信ノードのルーティングIDを問い合わせるID検索信号を送信し、
    ID登録信号又はID検索信号を受信した場合、前記ルーティングID分割方法に基づき存在が認識できる通信ノードのうち、自ノードのルーティングIDが、宛先に対応するルーティングIDと一番近い場合は、自ノードでID登録信号又はID検索信号の処理を行い、それ以外の場合は、ルーティングID分割方法で決まるルーティングIDの結合関係に従いID登録信号又はID検索信号の中継を行う手段を有することを特徴とする請求項1から3のいずれか1項に記載の通信ノード。
  5. 前記管理アドレス変換方法は、ハッシュ関数を使用することを特徴とする請求項4に記載の通信ノード。
  6. コンピュータを、
    管理アドレス及びルーティングID範囲を保存する保存手段と、
    使用しているルーティングIDを含む近隣広報信号を送信する近隣広報信号送信手段と、
    起動時に他の通信ノードから、近隣広報信号を受信しない場合は、ルートノードとなり、保存しているルーティングID範囲を自ノードが管理する管理ルーティングID空間とし、起動時に1以上の通信ノードから近隣広報信号を受信する場合は、選択した1つの通信ノードから、所定のルーティングID分割方法に基づき、前記選択した通信ノードの管理ルーティングID空間の一部の割当てを受けて、自ノードの管理ルーティングID空間とし、自ノードの管理ルーティングID空間から前記ルーティングID分割方法に基づき、自ノードが使用するルーティングIDを決定するルーティングID決定手段と、
    メッセージを宛先の通信ノードへ送信するメッセージ送信手段と、
    中継手段と、
    を有し、
    メッセージ送信手段は、
    宛先通信ノードの管理アドレスから、宛先通信ノードが使用しているルーティングIDを取得するルーティングID取得手段と、
    前記ルーティングID分割方法で決まるルーティングIDの結合関係に従い、宛先通信ノードまでに経由する通信ノードであるソースルートを決定するソースルート決定手段と、
    ルーティングIDに対応する宛先アドレスと、ソースルートとを有するパケットを送信するパケット送信手段と、
    を備え、
    中継手段は、他の通信ノードのルーティングIDに対応する宛先アドレスのパケットを受信した場合、ソースルートに従い転送し、
    ルーティングID決定手段は、管理ルーティングID空間の割当元通信ノードからの近隣広報信号を受信しなくなった場合は、受信している近隣広報信号の送信元である他の通信ノードから、新たに管理ルーティングID空間の割当てを受け、管理ルーティングID空間と使用するルーティングIDを変更する、
    通信ノードとして機能させることを特徴とするプログラム。
JP2005183292A 2005-06-23 2005-06-23 障害回避ルーティングを行う通信ノード及びプログラム Expired - Fee Related JP4470820B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005183292A JP4470820B2 (ja) 2005-06-23 2005-06-23 障害回避ルーティングを行う通信ノード及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005183292A JP4470820B2 (ja) 2005-06-23 2005-06-23 障害回避ルーティングを行う通信ノード及びプログラム

Publications (2)

Publication Number Publication Date
JP2007006088A JP2007006088A (ja) 2007-01-11
JP4470820B2 true JP4470820B2 (ja) 2010-06-02

Family

ID=37691267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005183292A Expired - Fee Related JP4470820B2 (ja) 2005-06-23 2005-06-23 障害回避ルーティングを行う通信ノード及びプログラム

Country Status (1)

Country Link
JP (1) JP4470820B2 (ja)

Also Published As

Publication number Publication date
JP2007006088A (ja) 2007-01-11

Similar Documents

Publication Publication Date Title
EP2137844B1 (en) Distributed routing table architecture and design
JP4938687B2 (ja) ネットワークシステムおよび中継装置
US7035202B2 (en) Network routing using link failure information
US7978631B1 (en) Method and apparatus for encoding and mapping of virtual addresses for clusters
JP5416596B2 (ja) ネットワーク中継装置、ネットワークシステム、それらの制御方法
US8798054B2 (en) IP network system
RU2441331C2 (ru) Соединение ячеистых сетей с множеством узлов-ретрансляторов с использованием сетевого моста подуровня управления доступом к среде передачи
JP3665622B2 (ja) ソースアドレス選択システム、ルータ装置、通信ノード及びソースアドレス選択方法
WO2021185043A1 (zh) 转发路径建立方法、装置以及计算机可读存储介质
WO2017058908A1 (en) Generating service-optimized paths based on enhanced eigrp telemetry
CN112910704B (zh) 一种支持动态自适应网络配置的局域网系统、方法和装置
CN103188153B (zh) 一种广播网链路上bfd报文发送方法和设备
CN110881006B (zh) 发送报文的方法、网络设备及计算机存储介质
JP2004260463A (ja) ルータ装置、通信装置、ネットワークアドレス管理システム、ネットワークアドレス管理方法及びネットワークアドレス管理プログラム
CN104038427A (zh) 路由更新方法和路由更新装置
CN107787020B (zh) 一种sfc网络中同步拓扑信息的方法及路由网元
JP2004159112A (ja) 通信制御システム、通信制御方法、これらに用いて好適なルーティング制御装置及びルータ装置
US20100232300A1 (en) Routing control device, routing control method, and storage medium storing routing control program
CN105723687A (zh) Ip网络的配置及管理方法、相对应设备及计算机程序
JP4391960B2 (ja) リソース管理装置、システムおよび方法
JP4470820B2 (ja) 障害回避ルーティングを行う通信ノード及びプログラム
WO2021077972A1 (zh) 转发报文的方法、装置及存储介质
US11050619B1 (en) Dynamic suspension of network operations by root for improved power outage recovery in low power and lossy network
JP5105124B2 (ja) ルータ装置、プレフィクス管理にもとづくパケット制御方法およびプログラム
CN108259292B (zh) 建立隧道的方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100209

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100222

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160312

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees