(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。例えば、本実施の形態は、トンネル接続を行うトンネル接続装置20とトンネル終端装置30間の通信を複数の中継装置40で中継する形態を例として説明しているが、本発明の適用先はこの形態に限られるわけではなく、パケット通信を行う通信装置間の通信の中継全般に適用することが可能である。
【0012】
(システム構成)
図1に、本発明の実施の形態における通信システムの全体構成図を示す。
図1に示すように、本実施の形態における通信システムは、トンネル接続装置20、トンネル終端装置30、中継装置41〜44、接続制御装置10を有する。各装置は、インターネット等のIPネットワークに接続されている。トンネル接続装置20にはユーザ端末50(クライアント機器)が接続されているが、ユーザ端末50の中にトンネル接続装置20の機能を含む形態を採用してもよい。トンネル終端装置30には、サーバや他のユーザ端末等が接続される。なお、
図1には、代表として、1つのトンネル終端装置20、及び1つのトンネル接続装置30を示しているが、実際にはそれぞれ複数の装置が存在してよい。また、中継装置の数が4つであることも一例に過ぎない。
【0013】
トンネル接続装置20とトンネル終端装置30との間では、例えば特許文献1に記載されているL2モード、L3モード等の方式により、トンネル接続がなされ、仮想ネットワークが構築される。このトンネルはパスと呼んでもよい。ただし、本実施の形態では、トンネル通信のパケットが、中継装置41〜44を経由する。以降、中継装置41〜44の中の特定の中継装置を指さない場合、中継装置40と記述する。
【0014】
各中継装置40は、トンネル接続装置20とトンネル終端装置30との間の通信の中継を行う装置である。本実施の形態において、中継装置40はフルメッシュで接続されているがフルメッシュでなくてもよい。また、1つの中継装置40がトンネル接続装置20と接続され、1つの中継装置40がトンネル接続装置30と接続される。
図1では、トンネル接続装置20が中継装置41に接続され、トンネル終端装置30が中継装置42に接続される例を示している。
【0015】
本実施の形態において、トンネル接続装置20と中継装置41との間、中継装置40間、中継装置42とトンネル終端装置30との間はそれぞれIPトンネルで接続されることで仮想的なリンク(仮想リンク)を構成している。
【0016】
本実施の形態では、トンネル接続装置20、中継装置40、及びトンネル終端装置30にラベルを設定することで、トンネル接続装置20とトンネル終端装置30との間のパス(仮想的なコネクション)が構築される。また、本実施の形態では、トンネル接続装置20は地理的に近い中継装置41に接続され、同様に、トンネル終端装置30も地理的に近い中継装置42に接続されるとともに、トンネル接続装置20とトンネル終端装置30との間のパスが経由する中継装置40の経路については、中継装置間のリンク状態等から最適な経路が選択される。
【0017】
接続制御装置10は、トンネル接続装置20/トンネル終端装置30に対して地理的に近い中継装置40を決定し、当該中継装置40の情報をFirstHop中継装置としてトンネル接続装置20/トンネル終端装置30に通知したり、各中継装置40からリンク状態の観測結果を受信し、リンク状態に基づき最適な経路を計算し、パス設定(ラベル配布)を行う機能を含む装置である。
【0018】
図2を参照して、本実施の形態におけるパケット転送について説明する。
図2は、トンネル接続装置20とトンネル終端装置30間のラベルによるパスが3つの中継装置1〜3を経由するように設定されている例を示しており、装置間のパケット転送は仮想リンク(IPトンネル)を介して行われる。また、
図2では、トンネル終端装置30内にラベル処理機能が含まれている例を示している。
【0019】
図2において、各装置の上側には、ラベル情報配布により設定されたラベルとネクストホップの情報が記載されている。例えば、「10−>20:中継装置2」と記述されている場合、入力パケットに付されているラベルが10であれば、ラベルを20に付け替えて、パケットをネクストホップである中継装置2に転送することを示している。
【0020】
図2において、まず、トンネル接続装置20において、ユーザ端末50側から出力されたパケットに所定のヘッダ(VN)が付される。このヘッダは、仮想NWヘッダであり、メタ情報等が記述されるヘッダである。ただし、このヘッダは必須ではない。また、ヘッダが付されるパケットは、例えばL2モードであればイーサフレームであり、L3モードであれば、ソースIPアドレスが所定のIPアドレスに置換されたIPパケットである。
【0021】
次に、トンネル接続装置20において、パケットにラベル10が付され、パケットは中継装置1に転送される。
【0022】
中継装置1が受信したパケットは、設定に従って、ラベル10がラベル20に交換され、中継装置2に転送される。中継装置2が受信したパケットは、設定に従って、ラベル20がラベル30に交換され、中継装置3に転送される。中継装置3が受信したパケットは、設定に従って、ラベル30がラベル40に交換され、トンネル終端装置30に転送される。トンネル終端装置30が受信したパケットは、設定に従って、ラベル40が取り除かれるとともに、仮想NWヘッダも取り除かれて、元のパケットの宛先であるサーバ等に転送される。
【0023】
図2は、トンネル接続装置20からトンネル終端装置30へのパケット転送を示しているが、トンネル終端装置30からトンネル接続装置20へのパケット転送も同様に行われる。
【0024】
(装置構成)
次に、本実施の形態に係る各装置の機能構成例を説明する。
【0025】
図3に、接続制御装置10の機能構成図を示す。
図3に示すように、接続制御装置10は、制御通信処理部11、登録情報格納部12、設定情報格納部13、リンク状態格納部15、接続先決定部16、接続中継装置決定部17、経路決定部18、通信情報設定部19を有する。各機能部の機能概要は以下のとおりである。
【0026】
制御通信処理部11は、トンネル接続装置20、トンネル終端装置30、中継装置40等の制御対象となる装置との間で制御情報の送受信を行う。登録情報格納部12は、トンネル終端装置のIDと位置情報(アドレス情報)を格納する。設定情報格納部13は、トンネル接続装置のID毎に、トンネル接続装置のトンネル接続先となるトンネル終端装置のIDが格納されるとともに、各中継装置40の地理的位置情報やアドレス情報等が格納される。これらの情報は予め管理者等により設定される情報である。
【0027】
リンク状態格納部15は、中継装置間のリンク毎に、スループット、遅延等のリンク状態情報を格納する。接続先決定部16は、設定情報格納部13を検索することにより、トンネル接続装置20の接続先となるトンネル終端装置30を決定する。接続中継装置決定部17は、トンネル接続装置20/トンネル終端装置30が接続すべき最適な中継装置40を決定する。経路決定部18は、トンネル接続装置20に接続される中継装置40と、トンネル終端装置30に接続される中継装置40との間での中継装置の最適な経路を決定する。また、経路決定部18は、トンネル接続装置20とトンネル終端装置30間での中継装置の最適な経路を決定することもできる。
【0028】
通信情報設定部19は、接続中継装置決定部17、及び経路決定部18により決定された経路等に基づくパス(仮想コネクション)を設定するために、経路上の各装置にラベル情報等を配布する。ラベルは通信情報の例である。なお、接続制御装置10は、1つの装置(コンピュータ)で実現してもよいし、複数の装置で実現してもよい。
【0029】
本実施の形態に係る接続制御装置10は、CPU、記憶装置等からなるコンピュータに、接続制御装置10の各機能部の機能を実現するためのプログラムを実行させることにより実現できる。当該プログラムは可搬メモリ等の記録媒体からコンピュータにインストールすることとしてもよいし、ネットワーク上のサーバからダウンロードすることとしてもよい。
【0030】
図4に、トンネル接続装置20の機能構成図を示す。
図4に示すように、トンネル接続装置20は、制御通信処理部21、ラベル情報格納部22、トンネル通信処理部23、ラベル処理部24を有する。
【0031】
制御通信処理部21は、接続制御装置10と制御情報の送受信を行う。ラベル情報格納部22は、接続制御装置10から受信したラベル情報等を格納する。トンネル通信処理部23は、例えば、特許文献1に示すL2モード、L3モード等のトンネル通信を行う機能部である。例えば、L3モードであれば、ユーザ端末から受信したIPパケットのソースアドレスを置換し、置換したパケットに所定のヘッダを付ける等の処理を行う。ただし、中継装置40を用いる本実施の形態では、トンネル通信処理部23は、トンネル終端装置30との間でIPトンネル通信を行うのではなく、ラベル処理部24でのラベル処理を経て、接続制御装置10の接続中継装置決定部17により決定された中継装置40との間でIPトンネル通信を行う。ラベル処理部24は、パケットへのラベル付加を行って、リンク(IPトンネル)にパケットの送付を行うとともに、ラベル付きパケットを受信したときに、ラベルを除去する等の処理を行う。
【0032】
トンネル接続装置20は、コンピュータ(CPU、メモリ等を含む構成を有する通信装置を含む)に、各機能部に対応するプログラムを実行させることにより実現できる。
【0033】
図5に、トンネル終端装置30の機能構成図を示す。
図5に示すように、トンネル終端装置30は、制御通信処理部31、ラベル情報格納部32、トンネル通信処理部33、ラベル処理部34を有する。
【0034】
制御通信処理部31は、接続制御装置10との間で制御情報の送受信を行う。ラベル情報格納部32は、接続制御装置10から受信したラベル情報等を格納する。トンネル通信処理部33は、例えば、特許文献1に示すL2モード、L3モード等のトンネル通信を行う機能部である。ただし、中継装置40を用いる本実施の形態では、トンネル通信処理部33は、トンネル接続装置20との間でIPトンネル通信を行うのではなく、ラベル処理部34でのラベル処理を経て、接続制御装置10の接続中継装置決定部17により決定された中継装置40との間でIPトンネル通信を行う。ラベル処理部34は、パケットへのラベル付加を行って、リンク(IPトンネル)にパケットの送付を行うとともに、ラベル付きパケットを受信したときに、ラベルを除去する等の処理を行う。
【0035】
なお、
図5に示す例は、トンネル終端装置30内にラベル処理機能を含む例である。
図5の構成に代えて、ラベル処理機能をトンネル終端装置30の外部に備えることしてもよい。この場合、トンネル終端装置30の直前に1つの中継装置40を備えることと同等である。
【0036】
トンネル終端装置30は、コンピュータ(CPU、メモリ等を含む構成を有する通信装置を含む)に、各機能部に対応するプログラムを実行させることにより実現できる。
【0037】
図6に、中継装置40の機能構成図を示す。
図6に示すように、中継装置40は、制御通信処理部401、ラベル情報格納部402、パケット通信処理部403、リンク状態監視部404を有する。
【0038】
制御通信処理部401は、接続制御装置10との間で制御情報の送受信を行う。ラベル情報格納部402は、接続制御装置10から受信したラベル情報等を格納する。パケット通信処理部403は、ラベル情報格納部402に格納されたラベル情報等を参照することにより、他の中継装置40やトンネル接続装置20/トンネル終端装置30とパケットの送受信を行う。リンク状態監視部404は、例えば他の中継装置やトンネル接続装置20/トンネル終端装置30とpingの送受信を行うことにより、リンク状態(スループット、遅延等)を取得し、接続制御装置10に報告する。
【0039】
中継装置40は、コンピュータ(CPU、メモリ等を含む構成を有する通信装置を含む)に、各機能部に対応するプログラムを実行させることにより実現できる。
【0040】
(システムの動作例)
以下、トンネル接続装置20が、新たに接続を開始する場合におけるシステムの動作例を
図7と
図8を参照して説明する。
【0041】
以下で説明する動作の前提として、各中継装置40は、例えば定期的に、リンク状態監視部404により、他の中継装置との間でpingの送受信を行って、各リンクのスループットと遅延を測定し、これらの値をリンク状態情報として接続制御装置10に報告し、当該リンク状態情報が接続制御装置10のリンク状態格納部15に格納されているものとする。また、本実施の形態では、接続先となる予定のトンネル終端装置30は、接続制御装置10に対して登録処理を既に行っており、接続制御装置10には、トンネル終端装置30のIDと位置情報(IPアドレス)が既に登録されているものとする。
【0042】
図7に示すように、まず、トンネル接続装置20は、制御通信処理部21によりパス設定要求を接続制御装置10に送信する(ステップ1)。パス設定要求には、トンネル接続装置20のIDと、IPアドレス(中継装置40とリンク接続する側のIPアドレス)が含まれる。
【0043】
パス設定要求を受信した接続制御装置10は、トンネル接続装置20とトンネル終端装置30間のトンネル通信のための最適パスの選択と各装置への設定を行う(ステップ2)。ここでの処理を、
図8のフローチャートに示す手順に沿って説明する。
【0044】
まず、接続先決定部16が、設定情報格納部13を参照することにより、接続先のトンネル終端装置30のIDを検出し、当該トンネル終端装置30を接続先として決定する(ステップ21)
次に、接続中継装置決定部17は、トンネル接続装置20が、IPトンネルングでリンク接続するべき最適な中継装置40(本例では、中継装置41になる)を決定する(ステップ22)。本実施の形態では、一例として、トンネル接続装置20から地理的に最も近い中継装置40を最適な中継装置としている。そこで、接続中継装置決定部17は、例えばGeoIPの技術を用いて、トンネル接続装置20のIPアドレスからトンネル接続装置20の存在場所を取得し、設定情報格納部13に格納されている各中継装置40の位置情報を用いて、トンネル接続装置20と各中継装置40との距離を計算し、最も短い距離にある中継装置41をリンク接続する中継装置であると決定する。同様にして、接続中継装置決定部17は、トンネル終端装置30のIPアドレスを用いて、トンネル終端装置30とリンク接続するべき最適な中継装置40(本例では中継装置42になる)を決定する。なお、トンネル終端装置30が固定的に設置されることが想定される場合、トンネル終端装置30にとっての最適な中継装置40を予め決定しておき、設定情報格納部13にその中継装置40の情報を格納しておいてもよい。
【0045】
また、上記の例では、最適な中継装置40を選択する基準として距離を用いているがこれは一例に過ぎず、例えば、中継装置40が属するISPに基づいて最適な中継装置40を選択してもよい。例えば、トンネル接続装置20/トンネル終端装置30のISPと同じISPの中継装置40を選択する、トンネル接続装置20/トンネル終端装置30のISPと異なるISPであるが、ISP間の通信容量の大きい中継装置40を選択する、こと等が考えられる。また、距離とISPの両方を考慮して最適な中継装置40を選択してもよい。
【0046】
次に、経路決定部18は、中継装置41から中継装置42間での最適な中継装置40の経路を決定する(ステップ23)。経路の決定方法には種々の方法があるが、例えば、経路決定部18は、リンク状態格納部15に格納されたリンク毎の遅延を用いて、中継装置41から中継装置42までの遅延が最小となる経路を最適経路であると決定する。また、スループットが予め定めた値以上であるリンクのみを用いるという条件で、遅延が最小となる経路を最適経路として決定してもよい。本例では、中継装置41と中継装置42とを直接リンクで結ぶ経路が最適経路であると決定される。
【0047】
なお、経路決定部18は、トンネル接続装置20/トンネル終端装置30と中継装置40との間の距離、及び中継装置40間のリンク状態に基づいて、トンネル接続装置20からトンネル終端装置30への経路を決定することとしてもよい。この場合、接続中継装置決定部17を備えなくてもよい。
【0048】
通信情報設定部19は、上記のようにして決定された経路でパス(仮想的コネクション)が設定されるように、制御通信処理部11を介して、経路上の各中継装置40にラベル情報を配布する(ステップ24)。具体的には、例えば
図2に示したように、入力ラベル、出力ラベル、及びネクストホップの情報が経路上の各中継装置に配布される。ネクストホップの情報は、例えば、ネクストホップとなる中継装置40のアドレス情報(IPアドレス等)として与えられる。
【0049】
ラベル情報を受信した経路上の各中継装置40は、ラベル情報をラベル情報格納部402に格納する。パケット通信時に、パケット通信処理部403が当該ラベル情報を参照することで、
図2に示したようなラベルに基づくパケット転送を行う。
【0050】
次に、接続制御装置10の通信情報設定部19は、制御通信処理部11を介して、パス設定応答をトンネル接続装置20に返す(ステップ25)。パス設定応答には、ラベル情報と中継装置41のアドレス情報(IPアドレス/ポート)等が含まれる。これらの情報は、トンネル接続装置20のラベル情報格納部22に格納される。
【0051】
以上の処理により、トンネル接続のためのパス設定が完了し、トンネル接続装置20はトンネル通信(ユーザ通信)を開始し(
図8のステップ3)、
図2に示したようにしてパケットの転送が行われる。
【0052】
上記のように、トンネル接続装置20とトンネル終端装置30との間の通信を仮想リンクにより接続された中継装置40により中継するようにしたので、複数の中継装置40を接続する経路を適切に選択することが可能となり、トンネル接続装置20とトンネル終端装置30との間のアンダーレイネットワークの特定のポイントで輻輳が発生しているような場合でも、当該輻輳を回避することが可能となる。
【0053】
上記の例では、トンネル接続装置20からトンネル終端装置30への経路の決定及び設定について示したが、トンネル終端装置30からトンネル接続装置20への経路も同様に決定され、設定が行われる。実際には、両方向の経路の決定及び設定が同時に行われる。なお、トンネル終端装置30からトンネル接続装置20への経路は、トンネル接続装置20からトンネル終端装置30への経路と同じでもよいし、異なっていてもよい。
【0054】
また、上記の例は、トンネル接続装置20が接続を開始する場合の動作例であるが、トンネル接続装置20とトンネル終端装置30がトンネル接続をしているときに、接続制御装置10が、リンク状態情報に基づいて通信経路のパスのスループットもしくは遅延性能の劣化(所定の値よりも悪くなる等)を検出した場合に、再度経路決定を行って、新たな経路で中継装置区間におけるパス設定を行い、パス設定完了後に、現在のパスから新たなパスに切り替えを行うようにしてもよい。
【0055】
本実施の形態では、接続制御装置10の装置構成として
図3に例を示したが、装置構成は
図3に限られるわけではなく、本発明に係る技術を実施できる構成であればどのような構成でもよい。例えば、接続制御装置を、仮想リンクで接続された複数の中継装置により第1の通信装置と第2の通信装置との間の通信を中継するように構成される通信ネットワークにおいて用いられる接続制御装置であって、前記第1の通信装置が接続するべき中継装置を前記複数の中継装置の中から決定する中継装置決定手段と、前記第1の通信装置と前記第2の通信装置との間の通信が経由する前記中継装置の経路を決定する経路決定手段と、前記中継装置決定手段により決定された中継装置の情報を前記第1の通信装置に通知する通知手段とを備えるように構成してもよい。
【0056】
前記接続制御装置は、例えば、前記経路決定手段により決定された経路のパスを設定するために、当該経路上の各中継装置に通信情報を送信する通信情報設定手段を備える。前記中継装置決定手段は、例えば、前記第1の通信装置と中継装置との間の距離、又は、これらの装置の属するISPに基づいて決定を行う。また、前記経路決定手段は、前記中継装置から各仮想リンクの通信状態情報を受信し、当該通信状態情報に基づいて前記経路を決定するようにしてもよい。
【0057】
前記第1の通信装置は前記決定された中継装置と仮想リンクにより接続し、当該仮想リンク、及び前記中継装置間の仮想リンクは例えばIPトンネルである。また、前記第1の通信装置と前記第2の通信装置は、例えば、トンネル接続することで仮想ネットワークを構成する通信装置である。
明細書には以下の事項が開示されている。
(第1項)
仮想リンクで接続された複数の中継装置により第1の通信装置と第2の通信装置との間の通信を中継するように構成される通信ネットワークにおいて用いられる接続制御装置であって、
前記第1の通信装置が接続するべき中継装置を前記複数の中継装置の中から決定する中継装置決定手段と、
前記第1の通信装置と前記第2の通信装置との間の通信が経由する前記中継装置の経路を決定する経路決定手段と、
前記中継装置決定手段により決定された中継装置の情報を前記第1の通信装置に通知する通知手段と
を備えることを特徴とする接続制御装置。
(第2項)
前記経路決定手段により決定された経路のパスを設定するために、当該経路上の各中継装置に通信情報を送信する通信情報設定手段
を備えることを特徴とする第1項に記載の接続制御装置。
(第3項)
前記中継装置決定手段は、前記第1の通信装置と中継装置との間の距離、又は、これらの装置の属するISPに基づいて決定を行う
ことを特徴とする第1項又は第2項に記載の接続制御装置。
(第4項)
前記経路決定手段は、前記中継装置から各仮想リンクの通信状態情報を受信し、当該通信状態情報に基づいて前記経路を決定する
ことを特徴とする第1項ないし第3項のうちいずれか1項に記載の接続制御装置。
(第5項)
前記第1の通信装置は前記決定された中継装置と仮想リンクにより接続し、当該仮想リンク、及び前記中継装置間の仮想リンクはIPトンネルである
ことを特徴とする第1項ないし第4項のうちいずれか1項に記載の接続制御装置。
(第6項)
前記第1の通信装置と前記第2の通信装置は、トンネル接続することで仮想ネットワークを構成する通信装置である
ことを特徴とする第1項ないし第5項のうちいずれか1項に記載の接続制御装置。
(第7項)
第1項ないし第6項のうちいずれか1項に記載の通信ネットワークにおいて用いられる前記中継装置であって、
前記接続制御装置から通信情報を受信し、当該通信情報に従って前記経路上の隣接する中継装置に前記仮想リンクを介してパケットを転送するパケット通信処理手段
を備えることを特徴とする中継装置。
(第8項)
コンピュータを、第1項ないし第6項のうちいずれか1項に記載の接続制御装置における各手段として機能させるためのプログラム。
(第9項)
仮想リンクで接続された複数の中継装置により第1の通信装置と第2の通信装置との間の通信を中継するように構成される通信ネットワークに対し、接続制御装置が実行する接続制御方法であって、
前記第1の通信装置が接続するべき中継装置を前記複数の中継装置の中から決定する中継装置決定ステップと、
前記第1の通信装置と前記第2の通信装置との間の通信が経由する前記中継装置の経路を決定する経路決定ステップと、
前記中継装置決定ステップにより決定された中継装置の情報を前記第1の通信装置に通知する通知ステップと
を備えることを特徴とする接続制御方法。
【0058】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。