(57)【要約】【課題】ネットワークの経路制御を行う際に発生するパケットロスを低減させ、通信品質の劣化を防止する、経路制御装置、経路制御方法、およびプログラムを提供する。【解決手段】ネットワーク内の複数の転送装置を経由するフローの経路を制御する経路制御サーバ（経路制御装置）１００が、そのフローの経路の変更を各転送装置に設定する場合において、経路制御サーバ１００は、ネットワークに流れるフローの送信元、送信先についての情報および経路変更後に経由させたい転送装置に関する情報を取得する。そして、経路制御サーバ１００は、経路変更後に経由させたい転送装置を含む新たな経路を算出し、算出した新たな経路に属する各転送装置について、フローの送信先からのホップ数が少ない転送装置から順に、パケット転送先設定を行う。【選択図】図４
2011015346.tif 000002
【特許請求の範囲】
【請求項１】
パケットの送信元となる送信装置と、前記パケットの送信先となる受信装置と、前記パケットを転送する複数の転送装置とを含んで構成されるネットワークにおいて、前記複数の転送装置と接続され前記複数の転送装置を経由するフローの経路の変更を制御する経路制御装置であって、
（１）前記経路制御装置が前記ネットワークにおいて制御可能な前記転送装置の装置情報を示す経路設定対象装置情報、（２）前記ネットワーク内の前記送信装置、前記受信装置、および前記複数の転送装置の接続関係を示す装置間接続情報、が記憶される記憶部と、
前記経路の変更に必要な情報の入力を行う入力部と、
経路制御の変更対象となるフローの送信元と送信先を示す情報と、経路変更後に経由させたい転送装置に関する情報とを、前記入力部を介して受け付ける経路制御対象情報取得部と、
前記記憶部から前記装置間接続情報を取得して前記経路制御の変更対象となるフローの送信元と送信先とを結ぶ経路を算出し、前記算出した経路のうち、前記経路変更後に経由させたい転送装置を含む経路を選択して経路変更後の新たな経路とし、前記新たな経路に属する転送装置について、パケット転送先設定を行う順序を、前記新たな経路における前記送信先からのホップ数が少ない順として決定し、前記記憶部に記憶された経路設定対象装置情報を用いて、前記新たな経路に属する転送装置ごとのパケット転送先に関する設定情報を生成する制御順序決定部と、
前記決定した順序に基づいて、前記新たな経路に属する転送装置に前記設定情報を送信する送信処理部と、
を備えることを特徴とする経路制御装置。
【請求項２】
パケットの送信元となる送信装置と、前記パケットの送信先となる受信装置と、前記パケットを転送する複数の転送装置とを含んで構成されるネットワークにおいて、前記複数の転送装置と接続され前記複数の転送装置を経由するフローの経路の変更を制御する経路制御装置に用いられる経路制御方法であって、
前記経路制御装置は、
（１）前記経路制御装置が前記ネットワークにおいて制御可能な前記転送装置の装置情報を示す経路設定対象装置情報、（２）前記ネットワーク内の前記送信装置、前記受信装置、および前記複数の転送装置の接続関係を示す装置間接続情報、が記憶される記憶部と、
前記経路の変更に必要な情報の入力を行う入力部と、を備え、
経路制御の変更対象となるフローの送信元と送信先を示す情報と、経路変更後に経由させたい転送装置に関する情報とを、前記入力部を介して受け付けるステップと、
前記記憶部から前記装置間接続情報を取得して前記経路制御の変更対象となるフローの送信元と送信先とを結ぶ経路を算出し、前記算出した経路のうち、前記経路変更後に経由させたい転送装置を含む経路を選択して経路変更後の新たな経路とし、前記新たな経路に属する転送装置について、パケット転送先設定を行う順序を、前記新たな経路における前記送信先からのホップ数が少ない順として決定し、前記記憶部に記憶された経路設定対象装置情報を用いて、前記新たな経路に属する転送装置ごとのパケット転送先に関する設定情報を生成するステップと、
前記決定した順序に基づいて、前記新たな経路に属する転送装置に前記設定情報を送信するステップと、
を実行することを特徴とする経路制御方法。
【請求項３】
請求項２に記載の経路制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路制御装置、経路制御方法、およびプログラムに関する。
【背景技術】
【０００２】
ネットワークに流れるパケットの経路を制御するために、ネットワーク上の転送装置へ制御信号を送り、パケットの流れる経路（転送先の設定）を制御する技術がある。パケットは、宛先（送信先）の情報を含み、転送装置はパケットの送信先の情報を参照して、転送装置に設定されたルーティング情報を用いてパケットを送信する。
【０００３】
経路を制御する技術としては、経路制御サーバ（経路制御装置）から各転送装置にログインし、経路制御用のメッセージを送信することで経路設定を行う方法があり、転送装置固有の制御メッセージを用いる、Ｔｅｌｎｅｔ（非特許文献１参照）やＳＳＨ（Secure Shell）と、標準化された制御メッセージを用いる、例えばＢＧＰ−４（Border Gateway Protocol version 4：非特許文献２参照）とがある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】RFC854, “Telnet Protocol Specification”, J.Postel, J.Roynolds, May 1983
【非特許文献２】RFC1771, “A Border Gateway Protocol 4 (BGP-4)”, Y.Rekhter and T.Li., Jan 2006
【発明の概要】
【発明が解決しようとする課題】
【０００５】
まず、従来技術（ＳＳＨやＢＧＰ−４等）を用いて、ネットワークに流れるパケットの経路を変更する方法について説明する。図１は従来技術における、パケットの経路変更方法を説明するための図である。図１に示すネットワークシステム１は、ＩＰ（Internet Protocol）パケットを送信するデータ送信クライアント（送信装置）３０１と、そのデータ送信クライアント３０１から送信されたパケットを受信するデータ受信サーバ（受信装置）３０２とを備える。そして、データ送信クライアント３０１とデータ受信サーバ３０２との間に、複数の転送装置（図１においては、転送装置２０１，２０２，２０３，２０４，２０５）が接続されている。この転送装置は、送られてきたパケットのヘッダを参照し、ヘッダ内の送信先情報と装置内に設定されたルーティング情報とに基づき、送られてきたパケットを次の転送装置へ転送する。また、各転送装置は、それぞれ経路制御サーバ１００に接続されている。この経路制御サーバ（経路制御装置）１００は、転送装置に制御情報を送信することにより、転送装置内の宛先別のパケット転送先設定（ルーティング情報）を書き換える。
【０００６】
図２は、図１に示したネットワークシステム１における転送装置の転送先設定の一例を説明するための図である。図２においては、データ送信クライアント３０１からデータ受信サーバ３０２へ、転送装置２０１，２０５経由で流れているパケットの経路を、転送装置２０１，２０２，２０３，２０４，２０５経由に変更するものとして説明する。
【０００７】
ここで、初期設定については、図２に示すように、各転送装置のパケット転送先が、転送装置２０２では転送装置２０１宛て、転送装置２０３では転送装置２０２宛て、転送装置２０４では転送装置２０３宛てに設定されているものとする。そして、図２においては、転送装置２０１，２０２，２０３，２０４が、経路制御サーバ１００によるパケット転送先設定変更の対象となり、転送装置の設定順序によっては、パケットロスが発生する。
【０００８】
以下具体的に説明する。ＩＰパケットヘッダには、パケットが通過できるノードの数であるＴＴＬ（Time To Live）が規定されている。そして、パケット送信時にはＴＴＬに１以上の数値が設定されており、パケットが転送装置に到着するたびにＴＴＬが１減算される。ＴＴＬ＝０になった時点で、ルーティングループを防ぐためにパケットが破棄される。
【０００９】
図３は、従来技術において、経路変更に伴いパケットロスが発生することを説明するための図である。図３においては、データ送信クライアント３０１からデータ受信サーバ３０２への経路を、転送装置２０１，２０２，２０３，２０４，２０５経由に切り替えるため、経路制御サーバ１００が、転送装置２０１，２０３，２０４，２０２の順にパケット転送先設定を行う場合において、転送装置２０１のパケット転送先設定が終了した状態を示している。転送装置２０１の経路設定を切り替えると、データ送信クライアント３０１からデータ受信サーバ３０２へ流れるパケットは、転送装置２０２へ流れる。しかし、転送装置２０２ではデータ受信サーバ３０２宛てのパケットは転送装置２０１に流れる設定となっているため、パケットは転送装置２０１と転送装置２０２との間を往復し続ける。そして、転送装置２０１と転送装置２０２間を往復しているパケットのＴＴＬは減算され続け、ＴＴＬ＝０となった時点で、ルーティングループが発生していることを転送装置２０１もしくは転送装置２０２が検出し、そのパケットが破棄されパケットロスが発生する。
【００１０】
近年ＩＰ網には、通信の品質が保証されていないベストエフォート型のフローのほか、通信速度や回線障害発生時の迂回路を確保することで一定の品質を保証するギャランティ型のフローが流れており、ギャランティ型のフローにおいては、品質の確保が優先され、パケットロス率の上限が規定されている。そして、工事等の際にはネットワーク管理者によってフローの迂回措置がとられるが、従来は迂回設定を転送装置に行う際に、前記に説明したようなパケットロスを引き起こす場合があった。
【００１１】
このような背景に鑑みて本発明がなされたのであり、本発明は、ネットワークの経路制御を行う際に発生するパケットロスを低減させ、通信品質の劣化を防止する、経路制御装置、経路制御方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
前記した課題を解決するため、請求項１に記載の発明は、パケットの送信元となる送信装置と、前記パケットの送信先となる受信装置と、前記パケットを転送する複数の転送装置とを含んで構成されるネットワークにおいて、前記複数の転送装置と接続され前記複数の転送装置を経由するフローの経路の変更を制御する経路制御装置であって、（１）前記経路制御装置が前記ネットワークにおいて制御可能な前記転送装置の装置情報を示す経路設定対象装置情報、（２）前記ネットワーク内の前記送信装置、前記受信装置、および前記複数の転送装置の接続関係を示す装置間接続情報、が記憶される記憶部と、前記経路の変更に必要な情報の入力を行う入力部と、経路制御の変更対象となるフローの送信元と送信先を示す情報と、経路変更後に経由させたい転送装置に関する情報とを、前記入力部を介して受け付ける経路制御対象情報取得部と、前記記憶部から前記装置間接続情報を取得して前記経路制御の変更対象となるフローの送信元と送信先とを結ぶ経路を算出し、前記算出した経路のうち、前記経路変更後に経由させたい転送装置を含む経路を選択して経路変更後の新たな経路とし、前記新たな経路に属する転送装置について、パケット転送先設定を行う順序を、前記新たな経路における前記送信先からのホップ数が少ない順として決定し、前記記憶部に記憶された経路設定対象装置情報を用いて、前記新たな経路に属する転送装置ごとのパケット転送先に関する設定情報を生成する制御順序決定部と、前記決定した順序に基づいて、前記新たな経路に属する転送装置に前記設定情報を送信する送信処理部と、を備えることを特徴とする。
【００１３】
請求項２に記載の発明は、パケットの送信元となる送信装置と、前記パケットの送信先となる受信装置と、前記パケットを転送する複数の転送装置とを含んで構成されるネットワークにおいて、前記複数の転送装置と接続され前記複数の転送装置を経由するフローの経路の変更を制御する経路制御装置に用いられる経路制御方法であって、前記経路制御装置は、（１）前記経路制御装置が前記ネットワークにおいて制御可能な前記転送装置の装置情報を示す経路設定対象装置情報、（２）前記ネットワーク内の前記送信装置、前記受信装置、および前記複数の転送装置の接続関係を示す装置間接続情報、が記憶される記憶部と、前記経路の変更に必要な情報の入力を行う入力部と、を備え、経路制御の変更対象となるフローの送信元と送信先を示す情報と、経路変更後に経由させたい転送装置に関する情報とを、前記入力部を介して受け付けるステップと、前記記憶部から前記装置間接続情報を取得して前記経路制御の変更対象となるフローの送信元と送信先とを結ぶ経路を算出し、前記算出した経路のうち、前記経路変更後に経由させたい転送装置を含む経路を選択して経路変更後の新たな経路とし、前記新たな経路に属する転送装置について、パケット転送先設定を行う順序を、前記新たな経路における前記送信先からのホップ数が少ない順として決定し、前記記憶部に記憶された経路設定対象装置情報を用いて、前記新たな経路に属する転送装置ごとのパケット転送先に関する設定情報を生成するステップと、前記決定した順序に基づいて、前記新たな経路に属する転送装置に前記設定情報を送信するステップと、を実行することを特徴とする。
【００１４】
このようにすることで、ネットワーク内の複数の転送装置を経由するフローの経路を制御する経路制御装置が、そのフローの経路の変更を各転送装置に設定する場合において、経路制御装置は、経路制御の変更対象となるフローの送信元、送信先を示す情報および経路変更後に経由させたい転送装置に関する情報を取得する。そして、経路制御装置は、経路制御の変更対象となるフローの送信元と送信先とを結ぶ経路を算出し、その算出した経路のうち、経路変更後に経由させたい転送装置を含む経路を選択して経路変更後の新たな経路とする。続いて、経路制御装置は、新たな経路に属する転送装置について、パケット転送先設定を行う順序を、新たな経路における送信先からのホップ数が少ない順として決定する。そして、経路制御装置は、決定した順序に基づいて、新たな経路に属する転送装置に経路変更のための設定情報を送信する。
【００１５】
したがって、本発明によれば、送信先からのホップ数が少ない転送装置から順に、パケットの転送先設定を行うことができ、フローの経路変更の際のパケットロスの発生を低減することができる。
【００１６】
請求項３に記載の発明は、請求項２に記載の経路制御方法をコンピュータに実行させるためのプログラムとした。
【００１７】
このようなプログラムによれば、請求項２に記載の経路制御方法を一般的なコンピュータに実行させることができる。
【発明の効果】
【００１８】
本発明によれば、ネットワークの経路制御を行う際に発生するパケットロスを低減させ、通信品質の劣化を防止する、経路制御装置、経路制御方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【００１９】
【図１】従来技術における、パケットの経路変更方法を説明するための図である。
【図２】従来技術における、パケットの経路変更方法を説明するための図である。
【図３】従来技術において、経路変更に伴いパケットロスが発生することを説明するための図である。
【図４】本実施形態に係る経路制御方法を説明するための図である。
【図５】本実施形態に係る経路制御サーバの構成例を示す機能ブロック図である。
【図６】本実施形態に係る経路制御サーバが行う経路制御処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２０】
次に、発明を実施するための形態（以下、「実施形態」という）について、適宜図面を参照しながら詳細に説明する。まず、本実施形態における経路制御方法の概要を説明する。
【００２１】
まず、前提として図２において説明したように、データ送信クライアント（送信装置）３０１からデータ受信サーバ（受信装置）３０２へ、転送装置２０１，２０５経由で流れているパケットの経路を、転送装置２０１，２０２，２０３，２０４，２０５経由に変更するものとして説明する。さらに、初期設定として、データ受信サーバ３０２への経路は、転送装置２０１では転送装置２０５宛て、転送装置２０２では転送装置２０１宛て、転送装置２０３では転送装置２０２宛て、転送装置２０４では転送装置２０３宛てに設定されているものとする。
【００２２】
ここで、転送装置は、パケット内に含まれる送信先情報と、転送装置自身が記憶するルーティング情報とを参照して、パケットを転送する。なお、ルーティング情報は、送信先群とパケットの転送先（ネクストホップ）とのペアのリストで構成される情報である。転送装置は、外部からログインされ、ルーティング情報の設定を変更し、その変更処理を行った結果（成功、失敗）を返信する。従来技術で説明した図３においては、パケット転送先設定を行う各転送装置の設定順序を考慮せず、２つの転送装置間で同じ宛先のパケット転送先が向かい合うために、パケットが往復し続けるルーティングループによるパケットロスが発生する。これを防ぐために、本実施形態においては、パケットの宛先（送信先）であるデータ受信サーバ３０２からのホップ数（経由する転送装置数）が少ない転送装置から順にパケット転送先設定を行う。
【００２３】
図２に示す設定において、変更後の転送装置２０１，２０２，２０３，２０４，２０５経由の経路における各転送装置のデータ受信サーバ３０２からのホップ数は、パケット転送先設定の変更が必要となる転送装置のうち転送装置２０４が最も小さく、続いて転送装置２０３、転送装置２０２となり、最もホップ数の大きい装置が転送装置２０１となる。このため、本実施形態に係る経路制御処理において、パケット転送先設定は、転送装置２０４，２０３，２０２，２０１の順に行う。
【００２４】
図４は、本実施形態に係る経路制御方法を説明するための図である。図４は、最初の処理として、経路変更によりパケット転送先設定の変更が必要となる転送装置２０１，２０２，２０３，２０４のうち、ホップ数が最も小さい（送信先に最も近い）転送装置２０４のパケット転送先設定を変更した状態を示している。このとき、転送装置２０３と転送装置２０４との間では、パケット転送先設定が向かい合う状態とはならない。転送装置２０３と転送装置２０２、転送装置２０２と転送装置２０１において、順番にパケット転送先設定の変更をした場合においても同様となるため、ルーティングループによるパケットロスの発生を抑制することが可能となる。なお、パケット転送先設定を元に戻す場合は、逆の順序、つまりパケットの宛先であるデータ受信サーバ（受信装置）３０２からホップ数の多い転送装置から順にパケット転送先設定を行うことで、設定したパケット転送先設定を解除することができる。
【００２５】
また、本実施形態に係る経路制御方法を実行するには、データ送信クライアント３０１、データ受信サーバ３０２、転送装置２０１，２０２，２０３，２０４，２０５の接続関係が既知であることが必要となる。この接続関係を経路制御サーバ１００が取得する手段として、ネットワーク内の各装置の接続関係を管理するデータベースを用意し、そのデータベースから各装置の接続関係を取得する。なお、詳細は後記して説明する。
【００２６】
次に、本実施形態に係る経路制御サーバ（経路制御装置）１００について具体的に説明する。図５は、本実施形態に係る経路制御サーバ１００の構成例を示す機能ブロック図である。図５に示すように、経路制御サーバ１００は、制御部１０と、通信部２０と、入出力部３０と、メモリ部４０と、記憶部５０とを含んで構成される。
【００２７】
制御部１０は、経路制御サーバ１００が行う各転送装置へのパケット転送先設定処理の全般を司り、経路制御対象情報取得部１１と、制御順序決定部１２と、送信制御部１３と、制御情報送信部１４と、返信情報受信部１５と、表示制御部１６とを含んで構成される。なお、この制御部１０の機能は、例えば記憶部５０に記憶されたプログラムをＣＰＵ（Central Processing Unit）がメモリ部４０に展開し実行することで実現される。
【００２８】
経路制御対象情報取得部１１は、経路制御の変更対象となるパケットが流れるフローの情報（送信元と送信先の装置のＩＰアドレス等）と、経路変更後に経由させたい転送装置に関する情報（装置のＩＰアドレス等）を、入出力部３０を介して受け付ける。そして、その受け付けた情報を、制御順序決定部１２へ渡す。
【００２９】
制御順序決定部１２は、まず、経路設定対象装置情報５１と装置間接続情報５２とを取得する。ここで、経路設定対象装置情報５１は、経路制御サーバ１００がネットワークにおいて制御可能な転送装置群を示す情報である。また、装置間接続情報５２は、ネットワーク内の転送装置や、データ送信クライアント３０１、データ受信サーバ３０２それぞれの接続関係を示す情報である。なお、この経路設定対象装置情報５１および装置間接続情報５２の詳細は、後記において説明する。そして、制御順序決定部１２は、取得した経路設定対象装置情報５１と装置間接続情報５２とを用いて、経路制御対象情報取得部１１が受け付けた経路変更後に経由させたい転送装置を含む新たな経路を算出する。続いて、制御順序決定部１２は、算出した新たな経路に基づき、送信先からのホップ数が少ない転送装置の順に制御順序を決定し、各転送装置ごとの設定内容を生成する。ここで生成する各転送装置ごとの設定内容は、パケットの宛先とパケットの転送先（ネクストホップ）に加え、ユーザ情報、パスワード情報などの転送装置のパケット転送先設定に必要な情報を含むものである。
【００３０】
送信制御部１３は、制御順序決定部１２が決定した各転送装置の制御順序に基づき、制御情報送信部１４に、各転送装置への設定内容を含むパケットの生成とその生成したパケットの送信指示とを行う。また、送信制御部１３は、返信情報受信部１５から取得した返信情報をトリガとして、転送装置の受信結果（成功、失敗を示すステータス情報）に基づき、そのパケットの再送が必要か否かを判定する。そして、パケットの再送が必要と判定した場合には、再び制御情報送信部１４に送信指示を行う。
【００３１】
制御情報送信部１４は、転送装置への設定内容を含むパケットを生成し、通信部２０を介して制御情報（パケット転送先の設定情報）を送信する。返信情報受信部１５は、通信部２０を介して転送装置から返信情報（成功、失敗を示すステータス情報）を受信し、その内容を送信制御部１３に引き渡す。また、表示制御部１６は、送信制御部１３から取得した情報を、入出力部３０を介して液晶ディスプレイ（不図示）等に表示させる制御を行う。なお、請求項の送信処理部は、送信制御部１３、制御情報送信部１４、および返信情報受信部１５の機能を有する。
【００３２】
次に、通信部２０は、各転送装置との間で情報の送受信を行うための通信インタフェースで構成される。また、入出力部（入力部）３０は、外部装置とのデータ入出力を行うための入出力インタフェースから構成され、不図示のキーボードやタッチパネル等から制御部１０が行う処理に関する指示を受け付けたり、表示制御部１６の制御のもと、不図示の液晶ディスプレイ等に制御部１０の処理内容等を表示させる。
【００３３】
メモリ部４０は、ＲＡＭ（Random Access Memory）等の一次記憶装置からなり、経路制御対象情報取得部１１が取得した、経路変更後に経由させたい転送装置に関する情報や、制御順序決定部１２が決定した転送装置の制御順序に関する情報、各転送装置ごとの設定内容等を記録する。
【００３４】
記憶部５０は、ハードディスク、フラッシュメモリ等の記憶装置から構成され、経路設定対象装置情報５１と装置間接続情報５２とが記憶される。
【００３５】
経路設定対象装置情報５１は、経路制御サーバ１００がネットワークにおいて制御可能な転送装置群を示す情報であり、〔表１〕に示すように、各装置ごとに、ＩＰアドレス、ユーザ名、パスワード等のその装置の制御に必要な設定情報が記憶される。
【００３６】
【表１】
2011015346.tif 000003
【００３７】
装置間接続情報５２は、ネットワーク内の転送装置や、データ送信クライアント３０１、データ受信サーバ３０２それぞれの接続関係を示す情報であり、〔表２〕に示すように、各装置ごとに、その装置と対向（直接接続）する装置（対向側装置）に関する情報が記憶される。
【００３８】
【表２】
2011015346.tif 000004
【００３９】
この装置間接続情報５２の更新は、Tracerouteコマンドを用いる方法もある。Unix（登録商標）やWindows（登録商標）で多く用いられるTracerouteコマンドは、コマンド発行元装置から指定ＩＰアドレス間に接続されている転送装置のＩＰアドレスを収集するコマンドである。このコマンドを利用して装置間の接続状況に関するデータを作成する。なお、データを更新する場合は、Traceroute コマンドを再度発行すればよく、ネットワークの構成変更に伴いネットワーク管理者によりTracerouteコマンドが発行される。
【００４０】
また、経路設定対象装置情報５１および装置間接続情報５２は、本実施形態においては、予めネットワーク管理者により、経路制御サーバ１００内の記憶部５０に記憶されているものとして説明するが、経路制御サーバ１００とは別の記憶サーバを設けて、経路制御サーバ１００が、その記憶サーバから通信部２０を介して取得するようにしてもよい。
【００４１】
次に、本実施形態に係る経路制御サーバ１００が行う経路制御処理の流れを説明する。図６は、本実施形態に係る経路制御サーバ１００が行う経路制御処理の流れを示すフローチャートである。
【００４２】
まず、経路制御サーバ１００の経路制御対象情報取得部１１が、経路の変更対象となるフローの情報（送信元と送信先の装置のＩＰアドレス等）と、経路変更後に経由させたい転送装置に関する情報（装置名、ＩＰアドレス等）を、ネットワーク管理者からの入力により入出力部（入力部）３０を介して受け付ける（ステップＳ６０１）。なお、ここで、経路変更後に経由させたい転送装置に関する情報が、ネットワーク管理者により入力される理由は、例えば、複数の迂回経路が考えられる場合に、帯域に余裕のあるリンクと繋がった転送装置を意図的に用いて、新たな経路を設定させるためである。
【００４３】
次に、経路制御サーバ１００の制御順序決定部１２は、記憶部５０に記録されている、経路設定対象装置情報５１（表１参照）と、装置間接続情報５２（表２参照）とを取得する（ステップＳ６０２）。
【００４４】
続いて、制御順序決定部１２は、取得した装置間接続情報５２を用いて、経路変更の対象となるフローの送信元と送信先の装置を結ぶ経路のすべてを算出する（ステップＳ６０３）。
【００４５】
具体的には、制御順序決定部１２は、経路制御の変更対象となるフローの送信元が、装置間接続情報５２（表２参照）の装置名（インデックス）に設定されている情報と、送信先が装置名（インデックス）に設定されている情報とを取得する。送信元が装置Ａ、送信先が装置Ｄの場合、以下の〔表３〕の情報が取り出される。これは、データベースであれば、装置名を主キーとして検索すればよく、テキストファイルでは行頭が送信元もしくは送信先となっている行を抜き出せばよい。
【００４６】
【表３】
2011015346.tif 000005
【００４７】
制御順序決定部１２は、同様にして、取得した送信元と送信先間に存在する装置を、装置間接続情報５２を用いてすべて検索し、通りうる経路をすべて算出する。〔表３〕の例においては、装置Ａが装置Ｂ，Ｅに、装置Ｄが装置Ｃ，Ｆに接続されていることを、制御順序決定部１２が取得する。さらに、制御順序決定部１２は、装置間接続情報５２を用いて、装置Ｂ，Ｃ，Ｅ，Ｆが接続されている情報を取り出し、〔表４〕のような、各装置の接続情報を読み出す。
【００４８】
【表４】
2011015346.tif 000006
【００４９】
これにより、制御順序決定部１２は、装置Ｂは装置Ｃに接続されていることが分かることから、通りうる経路のリストとして、装置Ａ−Ｂ−Ｃ−Ｄを生成する。同様の処理を装置Ｅ，Ｆにも繰り返すことで、制御順序決定部１２は、通りうる経路のリストを複数個生成する。なお、リストを所定数作成した後は、経路の生成を中止するようにしてもよい。
【００５０】
図６に戻り、ステップＳ６０４において、制御順序決定部１２は、生成した複数の経路の中から、経路変更後に経由させたい装置を含む経路を抽出する。経由させたい装置が装置Ｂである場合、制御順序決定部１２は、生成した複数の経路のリストから、装置Ｂを含むものを抽出する。ここでは、例えば、装置Ａ−Ｂ−Ｃ−Ｄが抽出される。なお、経由させたい装置を含む経路が複数抽出された場合には、表示制御部１６の制御により入出力部３０を介してディスプレイ等に、それらの経路のリストを表示し、ネットワーク管理者に選択させてもよいし、予めホップ数がより少ない経路を選択する等の設定をしておいてもよい。
【００５１】
次に、制御順序決定部１２は、抽出した経路のリストを用いて経路変更後のフローを決定し、その決定したフローにおいて、送信先からのホップ数が少ない装置から順（装置Ｄ→Ｃ→Ｂ→Ａ）にパケット転送先設定を行う順序を決定する（ステップＳ６０５）。
【００５２】
そして、制御順序決定部１２は、パケット転送先設定を行う各転送装置ごとに、経路設定対象装置情報５１を用いて、転送装置のＩＰアドレス、パスワード等のパケット転送先設定に必要な情報を取得する（ステップＳ６０６）。例えば、制御順序決定部１２は、装置Ａ，Ｂ，Ｃ，Ｄについて、経路設定対象装置情報５１より、装置名をインデックスとして、以下の〔表５〕に示す情報を取得する。
【００５３】
【表５】
2011015346.tif 000007
【００５４】
図６に戻り、経路制御サーバ１００の送信制御部１３は、ステップＳ６０５で決定した変更後の経路の装置のうち、経路変更の設定処理の終わっていない転送装置の中から、送信先（装置Ｄ）に最も近い転送装置を一つ抽出（例えば、最もホップ数が少ない装置Ｃを抽出）し、制御情報送信部１４にパケットの生成とその生成したパケットの送信指示を行う（ステップＳ６０７）。そして、制御情報送信部１４が、生成したパケットを通信部２０を介して、抽出した転送装置へ送信する（ステップＳ６０８）。
【００５５】
次に、返信情報受信部１５は、転送装置からの返信パケットが届いたか否かを判定する（ステップＳ６０９）。そして、転送装置からの返信パケットが届かなければ（ステップＳ６０９→Ｎｏ）、その転送装置への再送回数が所定値以下かを判定し（ステップＳ６１０）、所定値を超えていれば（ステップＳ６１０→Ｎｏ）、処理を終了する。一方、所定値以下であれば（ステップＳ６１０→Ｙｅｓ）、ステップＳ６０８に戻り、制御情報送信部１４が生成したパケットを再送する。
【００５６】
また、返信情報受信部１５は、ステップＳ６０９において、転送装置からの返信パケットが届いた場合には（ステップＳ６０９→Ｙｅｓ）、そのパケットに含まれる、変更処理が成功したか否かを示すステータス情報を取得し、送信制御部１３に渡す。そして、送信制御部１３は、そのステータス情報に基づき、経路変更が成功したか否かを判定し（ステップＳ６１１）、経路変更が成功していなければ（ステップＳ６１１→Ｎｏ）、ステップＳ６０８へ戻りパケットを再送する。一方、経路変更が成功していれば（ステップＳ６１１→Ｙｅｓ）、次のステップＳ６１２へ進む。
【００５７】
ステップＳ６１２において、送信制御部１３は、設定変更が必要なすべての転送装置へのパケット送信処理が終了したか否かを判定する（ステップＳ６１２）。そして、まだ送信処理を行っていない転送装置がある場合には（ステップＳ６１２→Ｎｏ）、ステップＳ６０７へ戻り、処理を終えていない転送装置のうち、送信先に最も近い転送装置（例えば、装置Ｃの次にホップ数が少ない装置Ｂ）の経路設定を行うため、制御情報送信部１４にパケットの生成とその生成したパケットの送信指示を行い、処理を続ける。一方、すべての転送装置への処理を終えている場合には（ステップＳ６１２→Ｙｅｓ）、パケット転送先設定が決定した順番ですべて終了したものとして処理を終える。
【００５８】
本実施形態に係る経路制御装置、経路制御方法、およびプログラムによれば、従来の経路制御技術において、ネットワークの経路変更を行う場合に発生したパケットロスを防止し、通信品質を維持することが可能となる。
【００５９】
なお、本実施形態においては、経路制御サーバ１００が、各転送装置へパケット転送先の設定情報を送信するものとして説明したが、転送装置自体が別の転送装置へ信号を送り宛先別のパケット転送先設定情報を設定する機能を有する場合には、各転送装置間でパケット転送先制御情報を受け渡す形態とすることもできる。
【符号の説明】
【００６０】
１      ネットワークシステム
１０    制御部
１１    経路制御対象情報取得部
１２    制御順序決定部
１３    送信制御部（送信処理部）
１４    制御情報送信部（送信処理部）
１５    返信情報受信部（送信処理部）
１６    表示制御部
２０    通信部
３０    入出力部（入力部）
４０    メモリ部
５０    記憶部
５１    経路設定対象装置情報
５２    装置間接続情報
１００  経路制御サーバ（経路制御装置）
２０１，２０２，２０３，２０４，２０５  転送装置
３０１  データ送信クライアント（送信装置）
３０２  データ受信サーバ（受信装置）
【図１】
2011015346.tif 000008
【図２】
2011015346.tif 000009
【図３】
2011015346.tif 000010
【図４】
2011015346.tif 000011
【図５】
2011015346.tif 000012
【図６】
2011015346.tif 000013