(57)【要約】【課題】複数のＡＳが結合して構成される通信ネットワークシステムの信頼性向上に寄与することを図る。【解決手段】複数のＡＳが結合して構成される通信ネットワークシステムにおける通信経路を算出するパス算出装置において、自装置が属する自ＡＳ及び自ＡＳと連携している連携先ＡＳについての各ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを記憶するＡＳパス・プレフィックス記憶部６と、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出するＡＳパス算出部１０とを備える。【選択図】図１
2010068316.tif 000002
【特許請求の範囲】
【請求項１】
複数のＡＳが結合して構成される通信ネットワークシステムにおける通信経路を算出するパス算出装置において、
自装置が属する自ＡＳ及び自ＡＳと連携している連携先ＡＳについての各ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを記憶するＡＳパス・プレフィックス記憶部と、
前記ＡＳパス・プレフィックス記憶部に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出するＡＳパス算出部と、
を備えたことを特徴とするパス算出装置。
【請求項２】
自ＡＳではもともと知り得なかったＡＳパスを示すフラグを設けたことを特徴とする請求項１に記載のパス算出装置。
【請求項３】
自ＡＳのルータと通信回線を介して通信するルータ間通信部と、
前記ＡＳパス算出部により算出されたＡＳパス及び該当するネットワークプレフィックスを前記フラグとともに自ＡＳのルータへ通知する経路情報通知部と、
を備えたことを特徴とする請求項２に記載のパス算出装置。
【請求項４】
連携先ＡＳに属するパス算出装置と通信回線を介して通信するパス算出装置間通信部と、
連携先ＡＳに属するパス算出装置との間で、ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを交換するＡＳパス・プレフィックス交換部と、
を備えたことを特徴とする請求項１に記載のパス算出装置。
【請求項５】
自ＡＳのＢＧＰルータと通信回線を介して通信するルータ間通信部と、
前記ＢＧＰルータから受信した経路情報を記憶する経路情報記憶部と、
前記経路情報記憶部に記憶される経路情報から、連携先ＡＳのネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを取得するＡＳパス・プレフィックス取得部と、
を備えたことを特徴とする請求項１に記載のパス算出装置。
【請求項６】
複数のＡＳが結合して構成される通信ネットワークシステムにおける通信経路を算出するためのコンピュータプログラムであって、
自装置が属する自ＡＳ及び自ＡＳと連携している連携先ＡＳについての各ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを記憶するＡＳパス・プレフィックス記憶部に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出する機能をコンピュータに実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の自律システム（Autonomous System：ＡＳ）が結合して構成される通信ネットワークシステム（例えば、インターネット）における通信経路（パス）を算出するパス算出装置及びコンピュータプログラムに関する。
【背景技術】
【０００２】
インターネットは、巨大なＴＣＰ（Transmission Control Protocol）／ＩＰ（Internet Protocol）ネットワークであるが、ＡＳと呼ばれる独立したＴＣＰ／ＩＰネットワーク管理単位が結合して構成されている。各ＡＳには識別番号（ＡＳ番号）が付与される。ＡＳ間では、境界ゲートウェイ・プロトコル（Border Gateway Protocol：ＢＧＰ）と呼ばれる経路制御プロトコルを利用して経路情報の交換を行うことで、ＡＳ間の到達性を維持している。経路情報は、経路情報の生成元のＡＳが管理しているネットワークを示すアドレス情報であるネットワークプレフィックス（以下、単にプレフィックスと称する）と該プレフィックスに係るパス属性を有する。パス属性の一つにＡＳパスがある。ＡＳパスは、当該経路情報が生成元のＡＳから順次経由してきたＡＳのＡＳ番号が、経由順で並べられたＡＳ番号列である。従って、経路情報に含まれるプレフィックスへは、該経路情報に含まれるＡＳパスにより到達できることが分かる。
【０００３】
例えば、図１３において、ＡＳ２００が、自身が生成する経路情報を、隣接するＡＳ１５０、ＡＳ１６０及びＡＳ１７０に広報すると、ＡＳ１５０、ＡＳ１６０及びＡＳ１７０はＡＳ２００から受信した経路情報を同様に隣接するＡＳに広報する。このように隣接するＡＳ間で経路情報を伝達することで、インターネット全体に経路情報が伝搬される。
【０００４】
但し、実際には、各ＡＳは、隣接するＡＳから受信した経路情報をそのまま他の隣接するＡＳに広報するのではなく、各ＡＳが持つポリシーに基づき広報対象の経路情報を選択している。
【０００５】
例えば、図１３において、ＡＳ１１０がＡＳ２００を起源とする経路情報を、ＡＳ１３０とＡＳ１４０からそれぞれ受信すると、ＡＳ１１０は、ＡＳ２００からの経路情報について、自身のポリシーに基づいて最適経路を選択し、隣接するＡＳ１００には最適経路のみを広報する。このとき、ＡＳ２００が隣接するＡＳに対して同じ経路情報を広報していた場合、ＡＳ１００からＡＳ１１０を経由してＡＳ２００に至る経路は、実際は「ＡＳ１００−ＡＳ１１０−ＡＳ１３０−ＡＳ１５０−ＡＳ２００」と「ＡＳ１００−ＡＳ１１０−ＡＳ１４０−ＡＳ１６０−ＡＳ２００」の２つが存在するが、ＡＳ１００にはどちらか１つしか広報されない。
【０００６】
このようにＢＧＰでは、各ＡＳはプレフィックス毎に最適経路を選択し、隣接するＡＳに対しては最適経路のみを広報するため、あるプレフィックスへの経路が複数あったとしても、ＡＳはそれを全て知ることはできない。しかし、現在、インターネットは社会上欠かせない通信基盤となっているため、インターネットの信頼性向上のために可能な限り複数の経路を利用可能とする経路制御方式の導入が望まれている。
【０００７】
上記した問題を解決するため、非特許文献１ではＡＳに問い合わせを行い他の経路を教えてもらう手法を提案している。例えば、図１３において、ＡＳ１００はＡＳ２００に至る経路として「ＡＳ１００−ＡＳ１１０−ＡＳ１３０−ＡＳ１５０−ＡＳ２００」を知っているとする。このとき、ＡＳ１００は、他の経路を利用したい場合、ＡＳ１１０に対し、ＡＳ２００への他の経路を問い合わせ、ＡＳ１１０から「ＡＳ１１０−ＡＳ１４０−ＡＳ１６０−ＡＳ２００」という回答をもらう。これにより、ＡＳ１００はＡＳ２００への経路として、自身が知っていた経路以外の経路を知ることができる。
【非特許文献１】Wen Xu and Jennifer Rexford，“MIRO：Multi-path Interdomain ROuting”，SIGCOMM’06
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、上述した従来技術では、他のＡＳに経路情報を問合せて未知であった経路情報を取得したとしても、少なくとも自ＡＳと問合せ先のＡＳの間の経路は同じであるため、そのＡＳ間で障害が発生すると、該ＡＳ間を含む経路によって到達可能なプレフィックスへは全て到達できなくなる、という問題がある。
【０００９】
本発明は、このような事情を考慮してなされたもので、その目的は、自ＡＳにおいてもともと知り得た経路情報と他のＡＳとの間で連携して取得できた経路情報とに基づいて重なりの少ない経路を算出することにより、複数のＡＳが結合して構成される通信ネットワークシステムの信頼性向上に寄与することのできるパス算出装置及びコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、本発明に係るパス算出装置は、複数のＡＳが結合して構成される通信ネットワークシステムにおける通信経路を算出するパス算出装置において、自装置が属する自ＡＳ及び自ＡＳと連携している連携先ＡＳについての各ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを記憶するＡＳパス・プレフィックス記憶部と、前記ＡＳパス・プレフィックス記憶部に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出するＡＳパス算出部と、を備えたことを特徴とする。
【００１１】
本発明に係るパス算出装置においては、自ＡＳではもともと知り得なかったＡＳパスを示すフラグを設けたことを特徴とする。
【００１２】
本発明に係るパス算出装置においては、自ＡＳのルータと通信回線を介して通信するルータ間通信部と、前記ＡＳパス算出部により算出されたＡＳパス及び該当するネットワークプレフィックスを前記フラグとともに自ＡＳのルータへ通知する経路情報通知部と、を備えたことを特徴とする。
【００１３】
本発明に係るパス算出装置においては、連携先ＡＳに属するパス算出装置と通信回線を介して通信するパス算出装置間通信部と、連携先ＡＳに属するパス算出装置との間で、ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを交換するＡＳパス・プレフィックス交換部と、を備えたことを特徴とする。
【００１４】
本発明に係るパス算出装置においては、自ＡＳのＢＧＰルータと通信回線を介して通信するルータ間通信部と、前記ＢＧＰルータから受信した経路情報を記憶する経路情報記憶部と、前記経路情報記憶部に記憶される経路情報から、連携先ＡＳのネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを取得するＡＳパス・プレフィックス取得部と、を備えたことを特徴とする。
【００１５】
本発明に係るコンピュータプログラムは、複数のＡＳが結合して構成される通信ネットワークシステムにおける通信経路を算出するためのコンピュータプログラムであって、自装置が属する自ＡＳ及び自ＡＳと連携している連携先ＡＳについての各ネットワークプレフィックス及び該ネットワークプレフィックスに係るＡＳパスを記憶するＡＳパス・プレフィックス記憶部に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出する機能をコンピュータに実現させるためのコンピュータプログラムである。
これにより、前述のパス算出装置がコンピュータを利用して実現できるようになる。
【発明の効果】
【００１６】
本発明によれば、自ＡＳにおいてもともと知り得た経路情報と他のＡＳとの間で連携して取得できた経路情報とに基づいて重なりの少ない経路を算出することができる。これにより、複数のＡＳが結合して構成される通信ネットワークシステムの信頼性向上に寄与することができるという効果が得られる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照し、本発明の実施形態について説明する。
図１は、本発明の一実施形態に係るパス算出装置１の構成を示すブロック図である。図１において、パス算出装置１は、回線インタフェース部２とルータ間通信部３と経路情報記憶部４とＡＳパス・プレフィックス取得部５とＡＳパス・プレフィックス記憶部６と経路情報通知部７とパス算出装置間通信部８とＡＳパス・プレフィックス交換部９とＡＳパス算出部１０を備える。
【００１８】
回線インタフェース部２は、通信回線によりデータを送受信する。ルータ間通信部３は、自装置１が属する自ＡＳ内のルータとパケット通信を行う。ルータ間通信部３には、あらかじめ、自ＡＳ内に設置されたルータのアドレスを設定しておく。経路情報記憶部４は、自ＡＳ内のＢＧＰ対応のルータから受信した経路情報を記憶する。ＡＳパス・プレフィックス取得部５は、経路情報記憶部４に記憶される経路情報から、自ＡＳと連携している連携先ＡＳのプレフィックス及び該プレフィックスに係るＡＳパスを取得する。ＡＳパス・プレフィックス取得部５は、取得したプレフィックス及びＡＳパスの組をＡＳパス・プレフィックス記憶部６に格納する。
【００１９】
ＡＳパス・プレフィックス記憶部６は、自ＡＳ及び連携先ＡＳについての各プレフィックス及び該プレフィックスに係るＡＳパスを記憶する。経路情報通知部７は、自装置１で算出したＡＳパス及び該当するプレフィックスを自ＡＳのルータへ通知する。
【００２０】
パス算出装置間通信部８は、連携先ＡＳに属するパス算出装置１とパケット通信を行う。パス算出装置間通信部８には、あらかじめ、連携先ＡＳ内に設置されたパス算出装置１のアドレスを設定しておく。ＡＳパス・プレフィックス交換部９は、連携先ＡＳに属するパス算出装置１との間で、プレフィックス及び該プレフィックスに係るＡＳパスを交換する。ＡＳパス・プレフィックス交換部９は、交換により取得したプレフィックス及びＡＳパスの組をＡＳパス・プレフィックス記憶部６に格納する。
【００２１】
ＡＳパス算出部１０は、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出する。
【００２２】
図２は、本実施形態に係る通信ネットワークシステムの構成例である。図２に示す通信ネットワークシステムは、複数のＡＳから構成されるものであり、ＡＳ同士が通信回線により相互に接続されている。この通信ネットワークシステムは、インターネットを想定しており、ＡＳ間ではＢＧＰにより経路情報を交換する。各ＡＳはＡＳ番号を有している。本実施形態では、ＡＳ番号「Ｘ」のＡＳのことを「ＡＳＸ」と称する。
【００２３】
図２において、ＡＳ１００、ＡＳ２００及びＡＳ３００は連携している。連携しているＡＳ１００、ＡＳ２００及びＡＳ３００のそれぞれは、本実施形態に係るパス算出装置１を有する。
【００２４】
ＡＳ１００はプレフィックス「１０．０．０．０／２４」及び「１０．０．１．０／２４」を管理している。ＡＳ２００はプレフィックス「１０．１．０．０／２４」及び「１０．１．１．０／２４」を管理している。ＡＳ３００はプレフィックス「１０．２．０．０／２４」及び「１０．２．１．０／２４」を管理している。なお、これらプレフィックスの値は、説明の便宜上の値である。
【００２５】
ＡＳ１００はＡＳ６００及びＡＳ７００とそれぞれに通信回線で接続されている。ＡＳ２００はＡＳ７００及びＡＳ８００とそれぞれに通信回線で接続されている。ＡＳ３００はＡＳ８００及びＡＳ９００とそれぞれに通信回線で接続されている。また、ＡＳ６００とＡＳ９００間、ＡＳ７００とＡＳ９００間、ＡＳ８００とＡＳ９００間が、それぞれに通信回線で接続されている。
【００２６】
次に、図３を参照して、本実施形態に係るパス算出装置１の動作の全体を説明する。図３は、本実施形態に係るパス算出装置１の動作フローの全体を説明するための説明図であり、図２の通信ネットワークシステムに対応している。ここでは、図２の通信ネットワークシステムを具体例として説明する。
【００２７】
ステップＳ１；ＢＧＰ対応のルータ２０が、隣接するＡＳから経路情報を受信する。
【００２８】
ステップＳ２；ルータ２０が、受信した経路情報を自ＡＳが有するパス算出装置１へ送信する。パス算出装置１において、自ＡＳのルータ２０から受信した経路情報は、経路情報記憶部４に格納される。図４に経路情報記憶部４の構成例を示す。図４は、ＡＳ１００内のパス算出装置１の経路情報記憶部４の構成例である。図４に示されるように、経路情報はプレフィックスと該プレフィックスに係るＡＳパス及びネクストホップを有する。
【００２９】
ステップＳ３；パス算出装置１において、ＡＳパス・プレフィックス取得部５が、経路情報記憶部４に記憶される経路情報から、自ＡＳと連携している連携先ＡＳを起源とするプレフィックスとそのＡＳパスを取得する。ＡＳパス・プレフィックス取得部５は、取得したプレフィックスとＡＳパスの組をＡＳパス・プレフィックス記憶部６に格納する。
【００３０】
図５にＡＳパス・プレフィックス記憶部６の構成例を示す。図５は、ＡＳ１００内のパス算出装置１のＡＳパス・プレフィックス記憶部６の構成例であり、図４の経路情報記憶部４の例に対応している。図５に示されるように、ＡＳパス・プレフィックス記憶部６は、ＡＳパスとプレフィックスの組を記憶する。ここで、ＡＳパス・プレフィックス記憶部６に格納するＡＳパスには、自ＡＳのＡＳ番号を終点の位置に追加する。図５の例では、自ＡＳ（ＡＳ１００）から連携先ＡＳ（ＡＳ２００、ＡＳ３００）に至るＡＳパスごとに、プレフィックスが記憶されている。
【００３１】
また、ＡＳパス・プレフィックス記憶部６には、ＡＳパスごとに、交換フラグと確定フラグを設定することができるようになっている。交換フラグは、自ＡＳではもともと知り得なかったＡＳパスを示す。図５の例では、全て、自ＡＳのルータ２０からの経路情報から取得されたＡＳパス及びプレフィックスであるので、交換フラグは設定されていない。確定フラグは、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスのうち、自ＡＳへ情報提供することが確定したＡＳパスを示す。図５の例では、まだ確定フラグは設定されていない。
【００３２】
ステップＳ４；パス算出装置１において、ＡＳパス・プレフィックス交換部９が、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスのうち、自ＡＳのルータ２０からの経路情報から取得されたＡＳパス及びプレフィックスの組（交換フラグの設定なしのもの）を、連携先ＡＳのパス算出装置１へ通知する。
【００３３】
また、ＡＳパス・プレフィックス交換部９は、連携先ＡＳのパス算出装置１から受信したＡＳパス及びプレフィックスの組を、ＡＳパス・プレフィックス記憶部６に格納する。このとき、連携先ＡＳのパス算出装置１から受信したＡＳパスに対し、交換フラグを設定する。図６に、連携先ＡＳのパス算出装置１から受信したＡＳパス及びプレフィックスの組が格納された、ＡＳパス・プレフィックス記憶部６の構成例を示す。図６は、ＡＳ１００内のパス算出装置１のＡＳパス・プレフィックス記憶部６の構成例であり、図５のＡＳパス・プレフィックス記憶部６の例に対し、連携先ＡＳ（ＡＳ２００、ＡＳ３００）のパス算出装置１から受信したＡＳパス及びプレフィックスの組（交換フラグの設定あり（図６中、○印で示す）のもの）が追加されたものである。連携しているＡＳ（ＡＳ１００、ＡＳ２００、ＡＳ３００）間でＡＳパスを交換することにより、各ＡＳ（ＡＳ１００、ＡＳ２００、ＡＳ３００）のパス算出装置１は共通のＡＳパスを有することになる。
【００３４】
ステップＳ５；パス算出装置１において、ＡＳパス算出部１０が、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出する。このＡＳパス算出方法については後述する。ＡＳパス算出部１０は、算出したＡＳパスに対し、確定フラグを設定する。
【００３５】
ステップＳ６；パス算出装置１において、経路情報通知部７が、ＡＳパス算出部１０により算出されたＡＳパス（確定フラグの設定ありのもの）から経路情報を生成し、生成した経路情報を自ＡＳのＢＧＰ対応のルータ２０へ通知する。このとき、交換フラグも含めて通知する。交換フラグが設定されているＡＳパスは、自ＡＳでＢＧＰにより取得できなかったＡＳパスであるので、当該ＡＳパスを利用するためには特別な設定を行う必要がある。具体的には、交換フラグが設定されているＡＳパスに対応したトンネリングを行うための設定が必要となる。このため、ルータ２０に対して、交換フラグを通知することによりトンネリングの設定が必要であることを知らせる。
【００３６】
次に、本実施形態に係るＡＳパス算出方法を説明する。
【００３７】
ＡＳパス算出部１０は、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスの中から、自ＡＳと連携先ＡＳ間の通信経路として、重なりが最も少ないＡＳパスを算出する。ここで、ＡＳパスにおける重なりとは、（１）ＡＳの重なり、及び、（２）リンクの重なり、の２つがある。
【００３８】
（１）ＡＳの重なり
ある２つのＡＳパスにおいて、自ＡＳのＡＳ番号と起点のＡＳ番号を除外した残りのＡＳ番号の中に同じＡＳ番号が含まれている場合に、その２つのＡＳパスはＡＳの重なりがあると定義する。なお、ＢＧＰ対応のルータ２０から受信した経路情報に含まれるＡＳパスには、自ＡＳのＡＳ番号は含まれていないが、本実施形態ではＡＳパス・プレフィックス記憶部６に格納されるＡＳパスに対し、自ＡＳのＡＳ番号を終点の位置に追加している。例えば、図６の例で、ＡＳ１００からＡＳ２００に至るＡＳパス「１００  ７００  ２００」とＡＳ１００からＡＳ３００に至る２つのＡＳパス「１００  ６００  ９００  ３００」では、ＡＳ１００とＡＳ２００，ＡＳ３００を除外した残りのＡＳ番号の中に、同じＡＳ番号が含まれていない。従って、その２つのＡＳパス「１００  ７００  ２００」，「１００  ６００  ９００  ３００」には、ＡＳの重なりがない。他方、ＡＳ１００からＡＳ２００に至るＡＳパス「１００  ７００  ２００」とＡＳ１００からＡＳ３００に至るＡＳパス「１００  ７００  ９００  ３００」では、ＡＳ１００とＡＳ２００，ＡＳ３００を除外した残りのＡＳ番号の中に、同じＡＳ番号「７００」が含まれている。従って、その２つのＡＳパス「１００  ７００  ２００」，「１００  ７００  ９００  ３００」には、ＡＳの重なりがある。
【００３９】
（２）リンクの重なり
ある２つのＡＳパスにおいて、連続する２つのＡＳ番号の組が共通している場合に、その２つのＡＳパスはリンクの重なりがあると定義する。例えば、図６の例で、ＡＳ１００からＡＳ２００に至るＡＳパス「１００  ７００  ２００」とＡＳ１００からＡＳ３００に至る２つのＡＳパス「１００  ６００  ９００  ３００」では、連続する２つのＡＳ番号の組が１つも共通していない。従って、その２つのＡＳパス「１００  ７００  ２００」，「１００  ６００  ９００  ３００」には、リンクの重なりがない。他方、ＡＳ１００からＡＳ２００に至るＡＳパス「１００  ７００  ２００」とＡＳ１００からＡＳ３００に至るＡＳパス「１００  ７００  ９００  ３００」では、連続する２つのＡＳ番号の組「１００  ７００」が共通している。従って、その２つのＡＳパス「１００  ７００  ２００」，「１００  ７００  ９００  ３００」には、リンクの重なりがある。
【００４０】
以下、図７を参照して、本実施形態に係るＡＳパス算出部１０が行うＡＳパス算出処理を説明する。図７は、本実施形態に係るＡＳパス算出方法の手順を示すフローチャートである。ここでは、図２の通信ネットワークシステムについて、図６のＡＳパス・プレフィックス記憶部６の例を用いて、ＡＳの重なりが最も少ないＡＳパスを算出する場合を具体例に挙げて説明する。なお、リンクの重なりが最も少ないＡＳパスを算出する場合は、「ＡＳの重なり」を「リンクの重なり」と読み替えればよく、同様の手順で実施可能である。
【００４１】
まずステップＳ１１では、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスを用いて、連携しているＡＳ間のそれぞれについて、ＡＳパスの組（ＡＳパスセット）を生成する。そして、各ＡＳパスセットについて、ＡＳパス長の短い順にＡＳパスの順位を付ける。なお、ＡＳパス長が同じである複数のＡＳパスが存在する場合には、所定の規則（例えば、文字列の比較など）に従って順位を付ける。
【００４２】
図８に、連携しているＡＳ間のそれぞれについてのＡＳパスセットの例を示す。図８の例では、図６のＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスを用いて、連携しているＡＳ（ＡＳ１００，ＡＳ２００，ＡＳ３００）間のそれぞれについて、ＡＳパス長の短い順に順位付けされたＡＳパスから成るＡＳパスセットが作成されている。具体的には、ＡＳ１００からＡＳ２００に至るＡＳパスのＡＳパスセット（１００→２００ＡＳパスセット）、ＡＳ２００からＡＳ１００に至るＡＳパスのＡＳパスセット（２００→１００ＡＳパスセット）、ＡＳ１００からＡＳ３００に至るＡＳパスのＡＳパスセット（１００→３００ＡＳパスセット）、ＡＳ３００からＡＳ１００に至るＡＳパスのＡＳパスセット（３００→１００ＡＳパスセット）、ＡＳ２００からＡＳ３００に至るＡＳパスのＡＳパスセット（２００→３００ＡＳパスセット）、ＡＳ３００からＡＳ２００に至るＡＳパスのＡＳパスセット（３００→２００ＡＳパスセット）、の６個のＡＳパスセットがある。
【００４３】
次いで、ステップＳ１２では、各ＡＳパスセットから先頭のＡＳパス（最上位のもの）を取り出し、取り出した各先頭ＡＳパスのうちＡＳパス長の短い方から順番に一つを調査対象ＡＳパスに選択し、調査対象ＡＳパス以外の先頭ＡＳパスを比較対象ＡＳパスとし、調査対象ＡＳパスと各比較対象ＡＳパスの組を対象にしてＡＳの重なりを調べる。このとき、調査対象ＡＳパスと比較対象ＡＳパスの組ごとに、「ＡＳの重なり」が何個あるのかを数える。なお、取り出した先頭ＡＳパスの中にＡＳパス長が同じである複数の先頭ＡＳパスが存在する場合には、所定の規則（例えば、文字列の比較など）に従って、調査対象ＡＳパスに選択する順番を決定する。
【００４４】
次いで、ステップＳ１３では、調査対象ＡＳパスと比較対象ＡＳパスの組の全てについて、各組の「ＡＳの重なり」の個数が所定の上限値以内であるか否かを判断する。この結果、全ての組について「ＡＳの重なり」の個数が上限値以内である場合には（ステップＳ１３、ＹＥＳ）、ステップＳ１４において、当該調査対象ＡＳパスに対して確定フラグを設定し、該当するＡＳパスセットから当該調査対象ＡＳパスを削除する。一方、１組でも「ＡＳの重なり」の個数が上限値を超える場合には（ステップＳ１３、ＮＯ）、ステップＳ１５において、当該調査対象ＡＳパスを該当するＡＳパスセットから削除する。このステップＳ１５では確定フラグを設定しない。
【００４５】
次いで、ステップＳ１６では、全ての先頭ＡＳパスを調査対象ＡＳパスとして、ＡＳの重なりの調査が終了したか判断する。この結果、調査終了の場合にはステップＳ１７に進む。一方、まだ調査対象ＡＳパスとして未調査の先頭ＡＳパスが残っている場合には、ステップＳ１２に戻り、調査を継続する。なお、２回目以降のステップＳ１２では、確定フラグが設定済みのＡＳパスについても全て比較対象ＡＳパスにして、調査対象ＡＳパスとのＡＳの重なりを調べる。
【００４６】
図９に、図８の例に対してＡＳの重なりを調べた結果を示す。図９中、削除されたＡＳパスは括弧（）で囲んでいる。ここでは、「ＡＳの重なり」の個数の上限値は１とする。図９に示されるように、各ＡＳパスセットの先頭ＡＳパスのうち、他の先頭ＡＳパスとの組において「ＡＳの重なり」の個数が１以下であるのは４つ（図９中、○印で示す）あり、他の２つ（図９中、×印で示す）は他の先頭ＡＳパスとの組において「ＡＳの重なり」の個数が２以上である。図９中、○印で示された４つの先頭ＡＳパスに対しては確定フラグが設定される。
【００４７】
次いで、ステップＳ１７では、全てのＡＳパスセットに対して、ＡＳパスが確定したか（確定フラグが設定済みであるか）否かを判断する。この結果、全てのＡＳパスセットに対してＡＳパスが確定した場合には（ステップＳ１７、ＹＥＳ）、ステップＳ２５に進み、まだＡＳパスが確定していないＡＳパスセットがある場合には（ステップＳ１７、ＮＯ）、ステップＳ１８に進む。
【００４８】
ステップＳ１８では、ＡＳパスが確定していないＡＳパスセットを対象にして、各ＡＳパスセットから先頭のＡＳパス（まだ残っているＡＳパスのうち最上位のもの）を取り出し、取り出した各先頭ＡＳパスのうちＡＳパス長の短い方から順番に一つを調査対象ＡＳパスに選択し、調査対象ＡＳパス以外の先頭ＡＳパスを比較対象ＡＳパスとし、調査対象ＡＳパスと各比較対象ＡＳパスの組を対象にしてＡＳの重なりを調べる。この調査方法は上記ステップＳ１２と同じである。
【００４９】
次いで、ステップＳ１９では、上記ステップＳ１３と同様に、調査対象ＡＳパスと比較対象ＡＳパスの組の全てについて、各組の「ＡＳの重なり」の個数が上限値以内であるか否かを判断し、この結果、全ての組について「ＡＳの重なり」の個数が上限値以内である場合には（ステップＳ１９、ＹＥＳ）、ステップＳ２０において、当該調査対象ＡＳパスに対して確定フラグを設定し、該当するＡＳパスセットから当該調査対象ＡＳパスを削除する。その後、ステップＳ２４に進む。
【００５０】
一方、１組でも「ＡＳの重なり」の個数が上限値を超える場合には（ステップＳ１９、ＮＯ）、ステップＳ２１において、当該調査対象ＡＳパスを該当するＡＳパスセットから削除する。このステップＳ２１では確定フラグを設定しない。次いで、ステップＳ２２では、まだＡＳパスが確定していない当該ＡＳパスセットが空（ＡＳパスが残っていない）であるか判断する。この結果、当該ＡＳパスセットが空である場合には（ステップＳ２２、ＹＥＳ）、ステップＳ２４に進み、当該ＡＳパスセットにまだＡＳパスが残っている場合には（ステップＳ２２、ＮＯ）、ステップＳ２３に進む。ステップＳ２３では、当該ＡＳパスセットから先頭のＡＳパス（まだ残っているＡＳパスのうち最上位のもの）を取り出し、取り出した先頭ＡＳパスを調査対象ＡＳパスとし、ステップＳ１７においてまだＡＳパスが確定していなかった他のＡＳパスセットの先頭ＡＳパスを比較対象ＡＳパスとし、調査対象ＡＳパスと各比較対象ＡＳパスの組を対象にしてＡＳの重なりを調べる。この調査方法は上記ステップＳ１２と同じである。その後、ステップＳ１９に戻る。
【００５１】
ステップＳ２４では、ステップＳ１７においてまだＡＳパスが確定していなかったＡＳパスセットの全てを対象にして、ＡＳパスが確定したか、又は、ＡＳパスセットが空になったか、を判断する。この結果、該全てのＡＳパスセットで、ＡＳパスが確定した、又は、ＡＳパスセットが空になった、場合には（ステップＳ２４、ＹＥＳ）、ステップＳ２５に進む。一方、該全てのＡＳパスセットで、ＡＳパスが確定していない、且つ、ＡＳパスセットが空ではない（まだＡＳパスが残っている）、場合には（ステップＳ２４、ＮＯ）、ステップＳ１８に戻る。
【００５２】
なお、ステップＳ１８，Ｓ２３では、ステップＳ１７においてまだＡＳパスが確定していなかったＡＳパスセット内の確定フラグが設定済みのＡＳパスについても全て比較対象ＡＳパスにして、調査対象ＡＳパスとのＡＳの重なりを調べる。
【００５３】
図１０に、図９の例において、まだＡＳパスが確定していないＡＳパスセットを対象にし、ＡＳの重なりを調べた結果を示す。図９の例では、「１００→３００ＡＳパスセット」と「３００→１００ＡＳパスセット」の２つが、まだＡＳパスが確定していない。この２つのＡＳパスセットを対象にしてＡＳの重なりを調べた結果、図１０に示されるように、「１００→３００ＡＳパスセット」と「３００→１００ＡＳパスセット」の両方ともにＡＳパスが確定し、確定フラグが設定された。これにより、全てのＡＳパスセットでＡＳパスが確定した。
【００５４】
ステップＳ２５では、全てのＡＳパスセットが空になったか（ＡＳパスが残っていないか）を判断する。この結果、全てのＡＳパスセットが空である場合には（ステップＳ２５、ＹＥＳ）、図７の処理を終了する。一方、空でない（まだＡＳパスが残っている）ＡＳパスセットがある場合には（ステップＳ２５、ＮＯ）、ステップＳ１２に戻り、処理を継続する。
【００５５】
図１１に、図１０の例において、まだＡＳパスが残っているＡＳパスセットを対象にし、ＡＳの重なりを調べた結果を示す。図１０の例では、「１００→２００ＡＳパスセット」、「２００→１００ＡＳパスセット」、「２００→３００ＡＳパスセット」及び「３００→２００ＡＳパスセット」の４つが、まだＡＳパスが残っている。この４つのＡＳパスセットを対象にしてＡＳの重なりを調べた結果、図１１に示されるようになった。この例では、４ついずれのＡＳパスセットにおいても、追加の確定したＡＳパスはなかった。
【００５６】
図１２に、図１０の例が反映されたＡＳパス・プレフィックス記憶部６の構成例を示す。図１２において、確定されたＡＳパス（図１０中、○印で示す）に対し、確定フラグが設定されている（図１２中、確定フラグの欄に○印で示す）。ＡＳパス算出部１０は、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスに対してＡＳパス算出処理を行った結果、確定したＡＳパスに対して確定フラグを設定する。
【００５７】
経路情報通知部７は、自ＡＳのルータ２０に通知する経路情報を生成する際、ＡＳパス・プレフィックス記憶部６に記憶されるＡＳパスのうちから確定フラグが設定されているＡＳパスと、該ＡＳパスと組になっているプレフィックスとを組にして経路情報に含める。さらに、確定フラグに加えて交換フラグも設定されているＡＳパスについては、交換フラグも該ＡＳパスと組にして経路情報に含める。従って、自ＡＳのルータ２０に通知される経路情報には、確定フラグが設定されたＡＳパスと、該ＡＳパスに該当するプレフィックスと、交換フラグ（該ＡＳパスに設定ありの場合のみ）との組が含まれる。
【００５８】
経路情報通知部７は、生成した経路情報を自ＡＳのＢＧＰ対応のルータ２０に通知する。該経路情報を受信したルータ２０は、該経路情報に含まれるＡＳパスを利用することができる。但し、交換フラグがあるＡＳパスについては、自ＡＳではＢＧＰにより知り得なかったものであるので、自ＡＳから該ＡＳパスまでの経路が確立していない。従って、自ＡＳから該ＡＳパスに至るまでのトンネリングを行うように設定する必要がある。
【００５９】
次に、ＡＳパス算出処理において、ＡＳパスの重なりを調べる方法の一実施例を説明する。
説明の便宜上、調査対象ＡＳパスを５つのＡＳ（ＡＳ番号がａ１，ａ２，ａ３，ａ４，ａ５）から成るＡＳパス「ａ１  ａ２  ａ３  ａ４  ａ５」とする。また、比較対象ＡＳパスを４つのＡＳ（ＡＳ番号がｂ１，ｂ２，ｂ３，ｂ４）から成るＡＳパス「ｂ１  ｂ２  ｂ３  ｂ４」とする。
【００６０】
まず、ＡＳの重なりを調べる場合は、変数ａｓ［］を定義し、調査対象ＡＳパスについて、ａｓ［ａ２］＝ａｓ［ａ３］＝ａｓ［ａ４］＝１、と設定する。次いで、比較対象ＡＳパスについて、「ａｓ［ｂ２］＋ａｓ［ｂ３］」を計算し、この和が「ＡＳの重なり」の個数の上限値以内であるか否かを調べる。
【００６１】
リンクの重なりを調べる場合は、変数ｌｉｎｋ［］［］を定義し、調査対象ＡＳパスについて、ｌｉｎｋ［ａ１］［ａ２］＝ｌｉｎｋ［ａ２］［ａ３］＝ｌｉｎｋ［ａ３］［ａ４］＝ｌｉｎｋ［ａ４］［ａ５］＝１、と設定する。次いで、比較対象ＡＳパスについて、「ｌｉｎｋ［ｂ１］［ｂ２］＋ｌｉｎｋ［ｂ２］［ｂ３］＋ｌｉｎｋ［ｂ３］［ｂ４］」を計算し、この和が「リンクの重なり」の個数の上限値以内であるか否かを調べる。
【００６２】
このＡＳパスの重なりを調べる方法によれば、重なりの調査回数はたかだかＡＳパスセットに含まれるＡＳパス数となる。
【００６３】
本実施形態によれば、自ＡＳにおいてもともと知り得た経路情報と他のＡＳとの間で連携して取得できた経路情報とに基づいて重なりの少ないＡＳパスを算出することができる。このＡＳパスを利用すれば、あるＡＳ間で障害が発生した場合に、該ＡＳ間を含むＡＳパスによって到達可能なプレフィックスに対して、障害箇所を迂回して到達できる可能性が高くなる。これにより、インターネット等、複数のＡＳが結合して構成される通信ネットワークシステムの信頼性向上に寄与することができるという効果が得られる。
【００６４】
また、ＢＧＰにより自ＡＳでは知り得なかったＡＳパスをＡＳの連携によって知ることができ、連携しているＡＳ間でより多くの通信経路を発見することができる。これにより、連携しているＡＳ間の通信の信頼性、耐障害性、可用性が向上することが期待できる。さらに、上述したように重なりの少ないＡＳパスを利用することにより、連携しているＡＳ間の通信における耐障害性が一層向上することが期待できる。この結果として、連携しているＡＳのユーザからの通信に対する満足度の向上が期待できるため、連携していないＡＳに対してサービスの差別化を図ることができる。
【００６５】
なお、本実施形態に係るパス算出装置１は、専用のハードウェアにより実現されるものであってもよく、あるいはパーソナルコンピュータ等のコンピュータシステムにより構成され、図１に示されるパス算出装置１の各部の機能を実現するためのプログラムを実行することによりその機能を実現させるものであってもよい。
【００６６】
また、そのパス算出装置１には、周辺機器として入力装置、表示装置等（いずれも図示せず）が接続されるものとする。ここで、入力装置とはキーボード、マウス等の入力デバイスのことをいう。表示装置とはＣＲＴ（Cathode Ray Tube）や液晶表示装置等のことをいう。
また、上記周辺機器については、パス算出装置１に直接接続するものであってもよく、あるいは通信回線を介して接続するようにしてもよい。
【００６７】
また、図３、図７に示す各ステップを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、パス算出処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disk）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００６８】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００６９】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
例えば、ＢＧＰ対応のルータ２０が経路情報からＡＳパスとプレフィックスの組を取得してパス算出装置１に送信するようにしてよい。この場合、パス算出装置１には経路情報記憶部４及びＡＳパス・プレフィックス取得部５が不要となる。
【００７０】
また、パス算出装置１をオフラインで動作させるようにしてもよい。この場合、連携しているＡＳ間で共有するＡＳパスとプレフィックスの組を、オフラインでＡＳパス・プレフィックス記憶部６に格納する。
【図面の簡単な説明】
【００７１】
【図１】本発明の一実施形態に係るパス算出装置１の構成を示すブロック図である。
【図２】本発明の一実施形態に係る通信ネットワークシステムの構成例である。
【図３】図１に示すパス算出装置１の動作フローの全体を説明するための説明図である。
【図４】図１に示す経路情報記憶部４の構成例である。
【図５】図１に示すＡＳパス・プレフィックス記憶部６の構成例である。
【図６】図１に示すＡＳパス・プレフィックス記憶部６の構成例である。
【図７】本発明の一実施形態に係るＡＳパス算出方法の手順を示すフローチャートである。
【図８】同実施形態に係るＡＳパス算出方法を説明するための説明図である。
【図９】同実施形態に係るＡＳパス算出方法を説明するための説明図である。
【図１０】同実施形態に係るＡＳパス算出方法を説明するための説明図である。
【図１１】同実施形態に係るＡＳパス算出方法を説明するための説明図である。
【図１２】図１に示すＡＳパス・プレフィックス記憶部６の構成例である。
【図１３】通信ネットワークシステムの構成例である。
【符号の説明】
【００７２】
１…パス算出装置、２…回線インタフェース部、３…ルータ間通信部、４…経路情報記憶部、５…ＡＳパス・プレフィックス取得部、６…ＡＳパス・プレフィックス記憶部、７…経路情報通知部、８…パス算出装置間通信部、９…ＡＳパス・プレフィックス交換部、１０…ＡＳパス算出部、２０…ルータ
【図１】
2010068316.tif 000003
【図２】
2010068316.tif 000004
【図３】
2010068316.tif 000005
【図４】
2010068316.tif 000006
【図５】
2010068316.tif 000007
【図６】
2010068316.tif 000008
【図７】
2010068316.tif 000009
【図８】
2010068316.tif 000010
【図９】
2010068316.tif 000011
【図１０】
2010068316.tif 000012
【図１１】
2010068316.tif 000013
【図１２】
2010068316.tif 000014
【図１３】
2010068316.tif 000015