(57)【要約】  通信ネットワークを形成するパケット転送装置のリンクの種類が複数ある場合でも、フローの経路を適切に定められる通信システムを提供することを目的とする。パケット転送装置情報記憶手段７１は、パケット転送装置毎に、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とを記憶する。リンク種別判定手段７３は、パケット転送装置８０から新規フロー検出通知を受信すると、その新規フロー検出通知に含まれるパケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段７１に記憶された情報とに基づいて、パケット転送装置が受信したパケットが通過するリンクの種別を判定する。経路計算手段７４は、判定されたリンクの種別に関するトポロジー情報に基づいて、パケットの通信経路を計算する。
2011108205.tif 000002
【特許請求の範囲】
【請求項１】
受信したパケットを転送する複数のパケット転送装置と、
各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置とを備え、
各パケット転送装置は、
少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信手段と、
受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知手段とを含み、
経路制御装置は、
各パケット転送装置の情報送信手段から受信した情報を記憶するパケット転送装置情報記憶手段と、
パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶手段と、
パケット転送装置から新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶された情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定手段と、
リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算手段と、
前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成手段と、
前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信手段とを含む
ことを特徴とする通信システム。
【請求項２】
各パケット転送装置の情報送信手段は、経路制御装置とのコネクション確立時に、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する
請求項１に記載の通信システム。
【請求項３】
経路制御装置は、
新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析手段を備え、
経路計算手段は、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算する
請求項１または請求項２に記載の通信システム。
【請求項４】
経路制御装置は、
新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末で用いられるアプリケーションソフトウェアの種類を解析する解析手段を備え、
経路計算手段は、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末で用いられるアプリケーションソフトウェアの種類に応じた通信経路を計算する
請求項１から請求項３のうちのいずれか１項に記載の通信システム。
【請求項５】
各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置であって、
パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とを記憶するパケット転送装置情報記憶手段と、
パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶手段と、
パケット転送装置から、当該パケット転送装置が受信した新規フローのパケットに関する情報と、当該パケット転送装置の識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶された情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定手段と、
リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算手段と、
前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成手段と、
前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信手段とを備える
ことを特徴とする経路制御装置。
【請求項６】
新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析手段を備え、
経路計算手段は、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算する
請求項５に記載の経路制御装置。
【請求項７】
経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するパケット転送装置であって、
少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信手段と、
受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知手段とを備える
ことを特徴とするパケット転送装置。
【請求項８】
受信したパケットを転送する複数のパケット転送装置が、それぞれ、
少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信し、
各パケット転送装置を制御する経路制御装置が、
パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶手段に記憶させ、
パケット転送装置が、
受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信し、
経路制御装置が、
前記新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶させた情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定し、
判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算し、
前記通信経路上のパケット転送装置毎にパケット転送ルールを生成し、
前記通信経路上のパケット転送装置毎に、生成したパケット転送ルールを送信する
ことを特徴とする経路制御方法。
【請求項９】
各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御するコンピュータに搭載される経路制御プログラムであって、
前記コンピュータに、
パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶手段に記憶させる情報登録処理、
パケット転送装置から、当該パケット転送装置が受信した新規フローのパケットに関する情報と、当該パケット転送装置の識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶させた情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定処理、
リンク種別判定処理で判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算処理、
前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成処理、および、
前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信処理
を実行させるための経路制御プログラム。
【請求項１０】
経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するコンピュータに搭載されるパケット転送装置用プログラムであって、
前記コンピュータに、
少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信処理、および、
受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知処理
を実行させるためのパケット転送装置用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、経路制御装置、パケット転送装置、経路制御方法、経路制御プログラム、およびパケット転送装置用プログラムに関し、特に、パケットを転送するパケット転送装置と、パケット転送装置のパケット転送を制御することにより通信経路を制御する経路制御装置とを備える通信システム、およびその通信システムに適用される経路制御装置、パケット転送装置、経路制御方法、経路制御プログラム、およびパケット転送装置用プログラムに関する。
【背景技術】
【０００２】
パケットを転送するフロースイッチと、フロースイッチのパケット転送を制御することにより通信経路を制御する経路制御装置とを備える通信システムの例が、特許文献１および非特許文献１，２に記載されている。また、非特許文献２には、経路制御装置が、フロースイッチに適用すべきフローエントリ情報を定めるとともに、タイマー値を規定し、フロースイッチがタイマー値に応じて時限式に動作することについても記載されている。【０００３】
このような通信システムの一般的な構成の例を図１１に示す。図１１に例示する通信システムは、経路制御装置１１０と、通信ネットワーク１００に属するフロースイッチ１２０〜１２５とを備える。なお、経路制御装置がフロースイッチを制御するためのプロトコルはオープンフロー（ＯｐｅｎＦｌｏｗ）と呼ばれる。【０００４】
経路制御装置１１０は、各フロースイッチ１２０〜１２５にフローエントリ情報を設定する。フローエントリ情報は、送られてくるパケットに応じたフロースイッチの動作を定めた情報である。フローエントリ情報は、パケット転送ルールと称することもできる。経路制御装置１１０は、各フロースイッチ１２０〜１２５のフローエントリ情報を設定することで、通信ネットワーク１００に接続される通信端末１３０〜１３３が通信を行うための経路制御を行う。【０００５】
経路制御装置１１０は、ネットワークトポロジー管理機能と、通信端末位置管理機能と、フローエントリ生成機能と、経路計算機能と、フロースイッチ管理機能とを具備する。【０００６】
ネットワークトポロジー管理機能は、フロースイッチから収集した情報を元に、フロースイッチ群が形成するネットワークトポロジーを表す情報を記憶する機能である。【０００７】
フローエントリ生成機能は、フローエントリ情報を作成する機能である。経路制御装置１１０は、フローエントリ生成機能により、分類情報、アクション情報、およびタイマー値を決定し、これらの情報を含むフローエントリ情報を作成する。分類情報は、フローを識別する情報であり、例えば、フローに属するパケットの要件として表される。フロースイッチが受信したパケットがどのフローに属するのかは分類情報に基づいて判定される。アクション情報は、フローに応じたフロースイッチの動作（例えば、特定のポートへの転送、フラッディング、廃棄等）を示す情報である。タイマー値は、フローエントリ情報の有効期間を定めるための値である。経路制御装置１１０は、タイマー値をアクション情報に含め、フロー毎に、分類情報とアクション情報とを含むフローエントリ情報を作成する。【０００８】
経路計算機能は、パケットのフローの通信経路を計算する機能である。【０００９】
フロースイッチ管理機能は、フロースイッチを制御するための機能である。具体的には、フロースイッチ管理機能は、フロースイッチに関する初期設定を行ったり、フロースイッチに対してフローエントリの設定を行ったりする機能である。また、フロースイッチから新規フロー検出通知を受信した時における後述のフロー解析（ステップＳ２０２）を行う機能も、フロースイッチ管理機能に含まれる。【００１０】
また、フロースイッチ１２０〜１２５は、経路制御装置１１０によって設定されたフローエントリ情報に基づいて、受信したパケットを転送するパケット転送装置である。フロースイッチ１２０〜１２５は、パケットを受信すると、分類情報に従ってそのパケットがどのフローに属するのかを判定し、そのフローに対して定められたフローエントリ情報内のアクション情報が示す処理を、そのパケットに対して行う。例えば、フロースイッチ１２０〜１２５は、受信したパケットのフローに応じて、そのパケットを特定のポートに転送したり、あるいは、フラッディングしたり、廃棄したりする。なお、フロースイッチは、受信したパケット等に関する統計情報を作成する。【００１１】
また、フロースイッチ１２０〜１２５は、フローエントリ情報のアクション情報に含まれるタイマー値を時間経過とともに減少させ（換言すれば、カウントダウンし）、新たにパケットを受信した時には、そのパケットが属するフローエントリのタイマー値を初期値にリセットする。フロースイッチ１２０〜１２５は、タイマー値が０になると、フローエントリ情報を削除する。また、フロースイッチ１２０〜１２５がタイマー値をリセットしない態様もある。【００１２】
各フロースイッチ１２０〜１２５は、他のノード（他のフロースイッチや通信端末）とのリンクを、全てＥｔｈｅｒｎｅｔ（登録商標）で構築される。【００１３】
図１２は、図１１に例示する通信システムの処理経過の例を示す説明図である。ここでは、図１１に示す通信端末１３０が通信端末１３２にパケットを送信する場合を例にして説明する。【００１４】
通信端末１３０は、通信端末１３２宛にパケットを送信する（ステップＳ１０１）。このパケットは、通信端末１３０が接続されているフロースイッチ１２０に届く。【００１５】
フロースイッチ１２０は、パケットを受信すると、フロースイッチ１２０自身に設定されたフローエントリ情報の中から、受信したパケットに適合するフローエントリ情報を検索する。しかし、通信端末１３０が通信端末１３２に送信したパケットをフロースイッチ１２０が初めて受信したときには、そのパケットに適合するフローエントリ情報は設定されていない。そのため、フロースイッチ１２０は、ステップＳ１０１で受信したパケットをバッファリングしてから、新たなフローを検出したことを示す通知（新規フロー検出通知と記す。）を経路制御装置１１０に送信する（ステップＳ１０２）。フロースイッチ１２０は、この新規フロー検出通知に、新たなフローを識別する分類情報を作成するための情報、および、送信元から宛先までの経路を決定するための情報を含める。フロースイッチ１２０は、これらの情報として、例えば、送信元および宛先の両方に関するＭＡＣ（Media Access Control）アドレス、ＩＰアドレス、ポート番号や、フロースイッチ１２０がデータパケットを受信したパケット受信ポート番号等を含めた新規フロー検出通知を送信する。【００１６】
ここでは、フロースイッチ１２０が、受信したデータパケットをバッファリングして、新たなフローを識別する分類情報を作成するための情報、および、送信元から宛先までの経路を決定するための情報を抽出し、その情報を経路制御装置１１０に送信する場合を例にしているが、フロースイッチ１２０は、受信したデータパケット自体を経路制御装置１１０に送信してもよい。【００１７】
経路制御装置１１０は、新規フロー検出通知を受信すると、新規フローに関するフローエントリ情報を作成し、フロースイッチに設定する（ステップＳ１０３）。図１３は、新規フロー検出通知を受信した経路制御装置１１０の処理経過の例を示すフローチャートである。すなわち、ステップＳ１０３の処理経過の例を示すフローチャートである。【００１８】
経路制御装置１１０は、フロースイッチから新規フロー検出通知を受信すると（ステップＳ２０１）、そのフロースイッチによって検出された新規フローの解析を行う（ステップＳ２０２）。ステップＳ２０２の解析処理は、具体的には、Ｅｔｈｅｒｎｅｔヘッダ、ＩＰヘッダ、トランスポート層のプロトコル（ＴＣＰ(Transmission Control Protocol )やＵＤＰ(User Datagram Protocol)）のヘッダを順に参照して得られるＩＰアドレスやポート番号等の情報に基づいて、通信端末や、通信端末で用いられるアプリケーションソフトウェアの種類を判定する処理である。そして、このステップＳ２０２の解析処理では、各フロースイッチ１２０〜１２５が、他のノード（他のフロースイッチや通信端末）とのリンクを、全てＥｔｈｅｒｎｅｔで構築されていることを前提としている。【００１９】
ステップＳ２０１の後、経路制御装置１１０は、新たに発生したフローの通信を許可するか否かを判定する（ステップＳ２０３）。許可すると判定した場合には（ステップＳ２０３におけるＹｅｓ）、経路制御装置１１０は、その新規フローの経路として、アプリケーションソフトウェアの種類に適した経路を計算し（ステップＳ２０４）、計算した経路をフローが通過するようにフローエントリ情報を作成する（ステップＳ２０５）。例えば、経路上のフロースイッチ毎に、次にパケットを転送すべきノードを定め、新規フローの分類情報と、そのノードへの転送を指示するアクション情報とを対応付けたフローエントリ情報を作成する。そして、経路制御装置１１０は、経路上の各フロースイッチに、フロースイッチ毎に作成したフローエントリ情報を送信することによって、フローエントリ情報を設定する（ステップＳ２０６）。【００２０】
また、ステップＳ２０３で通信を許可しないと判定した場合には（ステップＳ２０３におけるＮｏ）、経路制御装置１１０は、その新規フローの分類情報と、その新規フローに属するパケットの廃棄を指示するフローエントリ情報を作成し（ステップＳ２０５）、フロースイッチにそのフローエントリ情報を設定する（ステップＳ２０６）。【００２１】
図１２に示す例では、経路制御装置１１０が、ステップＳ２０３でフローの通信を許可すると判定し、ステップＳ２０４で、フロースイッチ１２０、フロースイッチ１２２、フロースイッチ１２４、フロースイッチ１２５、通信端末１３２という経路を定めた場合を示している。経路制御装置１１０は、その経路上のフロースイッチ１２０，１２２，１２４，１２５に対してそれぞれフローエントリ情報を作成し、フローエントリ情報を設定する（ステップＳ２０５，Ｓ２０６）。【００２２】
図１２に示すステップＳ１０３（図１３に示すステップＳ２０１〜Ｓ２０６）の処理でフローエントリ情報の設定が完了すると、フロースイッチ１２０は、バッファリングしていたパケットをフローエントリ情報に従って転送する。すなわち、新たに設定されたフローエントリ情報中のアクション情報に従って、フロースイッチ１２２にパケットを転送する（ステップＳ１０４）。【００２３】
経路制御装置１１０に定められた通信経路上のフロースイッチ１２２，１２４，１２５は、このパケットに適合するフローエントリ情報を設定されている。よって、このフロースイッチ１２２，１２４，１２５は、このパケットをフローエントリ情報に従って順次転送し（ステップＳ１０５〜Ｓ１０７）、このパケットは通信端末１３２に届く。【００２４】
通信端末１３０から通信端末１３２までの通信に関するフローエントリ設定は完了しているので、これ以降に、通信端末１３０が通信端末１３２宛にパケットを送信した場合には、フロースイッチ１２０，１２２，１２４，１２５は経路制御装置１１０への問い合わせを行うことなく、フロースイッチ毎に設定されたフローエントリ情報に従ってパケットを転送すればよい。【００２５】
通信端末１３２が通信端末１３０宛にパケットを送信する場合にも、通信システムは、上記と同様の処理を行えばよい。【００２６】
また、特許文献２には、ハードウェアを利用して、特定のタイプのフレームに対しルーティングを実行することによって、ソフトウェアの効率を部分的に改善する発明が記載されている。特許文献２に記載された発明は、ファイバーチャネルネットワークのアーキテクチャの一部として実行されるとき、ファイバーチャネルのフレームヘッダ内のルーティング制御／タイプ（Ｒ＿ＣＴＬ／ＴＹＰＥ）フィールドを使用して、受信フレームを、ホストメモリ内のバッファの特定のリングにマップする。
【先行技術文献】
【特許文献】
【００２７】
【特許文献１】米国特許出願公開第２００８／０１８９７６９号明細書
【特許文献２】特表２００２−５１３９６８号公報
【非特許文献】
【００２８】
【非特許文献１】Nick McKeown, 外７名、“OpenFlow: Enabling Innovation in Campus Networks”、２００８年３月１４日、[平成２１年１１月２４日検索]、インターネット<http://www.openflowswitch.org//documents/openflow-wp-latest.pdf>
【非特許文献２】“OpenFlow Switch Specification Version 0.9.0”、２００９年７月２０日、[平成２１年１１月２４日検索]、インターネット<http://www.openflowswitch.org/documents/openflow-spec-v0.9.0.pdf>
【発明の概要】
【発明が解決しようとする課題】
【００２９】
図１１に示す通信システムにおいて、経路制御装置１１０は、通信ネットワーク１００に属する各フロースイッチのリンクが全てＥｔｈｅｒｎｅｔであることを前提にして、通信端末で用いられるアプリケーションソフトウェアを解析し、新規フローの通信経路を計算する。従って、通信ネットワーク１００に属する各フロースイッチのリンク技術として、Ｅｔｈｅｒｎｅｔのリンクしか採用することができない。【００３０】
ノード間のリンク技術には、Ｅｔｈｅｒｎｅｔ以外のリンク技術（例えば、ファイバチャネル）もある。通信ネットワーク１００内の各フロースイッチに複数のリンク技術が用いられている場合、経路制御装置１１０は、ステップＳ２０２の解析処理を適切に行うことができず、新規フローの経路を適切に計算できなくなってしまう。【００３１】
そこで、本発明は、通信ネットワークを形成するパケット転送装置のリンクの種類が複数ある場合でも、フローの経路を適切に定めることができる通信システム、およびその通信システムに適用される経路制御装置、パケット転送装置、経路制御方法、経路制御プログラム、およびパケット転送装置用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００３２】
本発明による通信システムは、受信したパケットを転送する複数のパケット転送装置と、各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置とを備え、各パケット転送装置が、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信手段と、受信したパケットに適合するパケット転送ルールを保持していない場合に、そのパケットに関する情報と、自ノードの識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知手段とを含み、経路制御装置が、各パケット転送装置の情報送信手段から受信した情報を記憶するパケット転送装置情報記憶手段と、パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶手段と、パケット転送装置から新規フロー検出通知を受信したときに、その新規フロー検出通知に含まれるパケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶された情報とに基づいて、パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定手段と、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、パケットの通信経路を計算する経路計算手段と、通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成手段と、通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信手段とを含むことを特徴とする。【００３３】
また、本発明による経路制御装置は、各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置であって、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とを記憶するパケット転送装置情報記憶手段と、パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶手段と、パケット転送装置から、そのパケット転送装置が受信した新規フローのパケットに関する情報と、パケット転送装置の識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、その新規フロー検出通知に含まれるパケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶された情報とに基づいて、パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定手段と、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、パケットの通信経路を計算する経路計算手段と、通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成手段と、通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信手段とを備えることを特徴とする。【００３４】
また、本発明によるパケット転送装置は、経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するパケット転送装置であって、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信手段と、受信したパケットに適合するパケット転送ルールを保持していない場合に、そのパケットに関する情報と、自ノードの識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知手段とを備えることを特徴とする。【００３５】
また、本発明による経路制御方法は、受信したパケットを転送する複数のパケット転送装置が、それぞれ、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信し、各パケット転送装置を制御する経路制御装置が、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶手段に記憶させ、パケット転送装置が、受信したパケットに適合するパケット転送ルールを保持していない場合に、そのパケットに関する情報と、自ノードの識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信し、経路制御装置が、新規フロー検出通知を受信したときに、その新規フロー検出通知に含まれるパケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶させた情報とに基づいて、パケット転送装置が受信したパケットが通過するリンクの種別を判定し、判定したリンクの種別に関するトポロジー情報に基づいて、パケットの通信経路を計算し、通信経路上のパケット転送装置毎にパケット転送ルールを生成し、通信経路上のパケット転送装置毎に、生成したパケット転送ルールを送信することを特徴とする。【００３６】
また、本発明による経路制御プログラムは、各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御するコンピュータに搭載される経路制御プログラムであって、コンピュータに、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶手段に記憶させる情報登録処理、パケット転送装置から、そのパケット転送装置が受信した新規フローのパケットに関する情報と、パケット転送装置の識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、その新規フロー検出通知に含まれるパケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶させた情報とに基づいて、パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定処理、リンク種別判定処理で判定したリンクの種別に関するトポロジー情報に基づいて、パケットの通信経路を計算する経路計算処理、通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成処理、および、通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信処理を実行させることを特徴とする。【００３７】
また、本発明によるパケット転送装置用プログラムは、経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するコンピュータに搭載されるパケット転送装置用プログラムであって、コンピュータに、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信処理、および、受信したパケットに適合するパケット転送ルールを保持していない場合に、そのパケットに関する情報と、自ノードの識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知処理を実行させることを特徴とする。
【発明の効果】
【００３８】
本発明によれば、通信ネットワークを形成するパケット転送装置のリンクの種類が複数ある場合でも、フローの経路を適切に定めることができる。
【図面の簡単な説明】
【００３９】
【図１】本発明の通信システムの例を示すブロック図である。
【図２】本発明の経路制御装置の構成例を示すブロック図である。
【図３】本発明のパケット転送装置の構成例を示すブロック図である。
【図４】初期設定時の処理経過の例を示す説明図である。
【図５】トポロジー情報生成時の処理経過の例を示す説明図である。
【図６】通信端末間で送受信されるパケットを転送するときの通信システムの処理経過の例を示す説明図である。
【図７】新規フロー検出通知を受信した経路制御装置の処理経過の例を示すフローチャートである。
【図８】本発明の通信システムの最小構成の例を示すブロック図である。
【図９】本発明の経路制御装置の最小構成の例を示すブロック図である。
【図１０】本発明のパケット転送装置の最小構成の例を示すブロック図である。
【図１１】フロースイッチと経路制御装置とを含む一般的な通信システムの構成例を示す説明図である。
【図１２】図１１に例示する通信システムの処理経過の例を示す説明図である。
【図１３】図１１に例示する経路制御装置の処理経過の例を示すフローチャートである。
【発明を実施するための形態】
【００４０】
以下、本発明の実施形態を図面を参照して説明する。
図１は、本発明の通信システムの例を示すブロック図である。本発明の通信システムは、経路制御装置１０と、通信ネットワーク１に属するパケット転送装置２０〜２５とを備える。図１では、６台のパケット転送装置２０〜２５を図示しているが、図１は通信システムの例示であり、パケット転送装置の台数やトポロジーは、図１に示す例に限定されない。図１に示す例では、通信端末３０がパケット転送装置２０に接続され、通信端末３１がパケット転送装置２１に接続され、通信端末３２，３３がパケット転送装置２５に接続されている。そして、各パケット転送装置は、通信端末間で送受信されるパケットを転送する。なお、通信端末の台数や、通信端末が通信ネットワーク１のどのパケット転送装置に接続されるのかに関しても、特に限定されない。
【００４１】
経路制御装置１０と、個々のパケット転送装置２０〜２５とは、専用の制御チャネルを介して接続され、経路制御装置１０と各パケット転送装置２０〜２５とは、その専用の制御チャネルを介して情報の送受信を行う。
【００４２】
また、本発明において、パケット転送装置同士を接続させるリンク、および、パケット転送装置と通信端末とを接続させるリンクの種類は、１種類に限定されず、複数種類であってよい。図１に示す例では、リンクの種類として、Ｅｔｈｅｒｎｅｔのリンクと、ファイバチャネルのリンクがある場合を示している。例えば、図１に示す例では、パケット転送装置２０，２２を接続させるリンクや、パケット転送装置２０と通信端末３０とを接続させるリンクは、Ｅｔｈｅｒｎｅｔのリンクである。また、パケット転送装置２１，２２を接続させるリンクや、パケット転送装置２１と通信端末３１とを接続させるリンクは、ファイバチャネルのリンクである。図１では、リンクの種類が２種類である場合を示したが、リンクの種類は３種類以上であってもよい。また、Ｅｔｈｅｒｎｅｔやファイバチャネル以外のリンク技術が用いられていてもよい。
【００４３】
各パケット転送装置２０〜２５は、経路制御装置１０の制御により、受信したパケットを次のノードに転送する。具体的には、各パケット転送装置２０〜２５は、経路制御装置１０が設定するパケット転送ルールに従って、受信したパケットに対する処理を行う。パケット転送ルールは、パケット転送装置がパケットを受信したときにおけるパケット転送装置の動作を定めた情報である。
【００４４】
パケット転送ルールは、フローを識別する情報である分類情報と、分類情報によって特定されるフローに属すると判定されたパケットに対して行うアクション情報とを含む。分類情報は、例えば、「宛先ＭＡＣアドレスおよび宛先ＩＰアドレスが通信端末３３のＭＡＣアドレスおよびＩＰアドレスと一致している」等のような、フローに属するパケットが満たす要件として表されるが、分類情報の表現態様は特に限定されない。また、アクション情報の内容の例として、例えば、「受信したパケットを特定のポートに転送する」、「フラッディングする」、「廃棄する」等が挙げられるが、アクション情報の内容はこれらに限定されない。また、アクション情報には、タイマー値が含まれる。タイマー値は、パケット転送ルールの有効期間を定めるための値である。パケット転送ルールは、分類情報と、アクション情報と、タイマー値とを含むが、さらに他の情報を含んでいてもよい。本例では、アクション情報にタイマー値を含める場合を例にして説明するが、タイマー値はアクション情報に含まれていなくても、パケット転送ルールに含まれていればよい。
【００４５】
経路制御装置１０は、フローに応じた分類情報およびアクション情報を含むパケット転送ルールを生成し、そのフローの通信経路上のパケット転送装置にそのパケット転送ルールを設定する。
【００４６】
各パケット転送装置２０〜２５は、設定されたパケット転送ルールのアクション情報に含まれるタイマー値を時間経過とともに減少させ（換言すれば、カウントダウンし）、タイマー値が０になると、パケット転送ルールを削除する。なお、各パケット転送装置２０〜２５は、パケット転送ルール内の分類情報に適合するパケットを受信したときに、そのパケット転送ルールのタイマー値を初期値にリセットしてもよい。あるいは、各パケット転送装置２０〜２５は、そのようなパケットを受信しても、タイマー値の初期値を行わずに、タイマー値のカウントダウンを継続する構成であってもよい。
【００４７】
パケット転送装置２０〜２５は、例えば、オープンフローにおけるフロースイッチである。また、経路制御装置１０は、例えば、オープンフローにおける経路制御装置である。また、パケット転送ルールは、例えば、オープンフローにおけるフローエントリ情報である。
【００４８】
図２は、本発明の経路制御装置１０の構成例を示すブロック図である。経路制御装置１０は、トポロジー情報記憶手段３１と、トポロジー情報登録手段３２と、通信端末位置管理手段３３と、パケット転送ルール生成手段３４と、経路計算手段３５と、ルール設定内容記憶手段３６と、パケット転送装置管理手段３７と、パケット転送装置情報記憶手段３８と、解析用情報記憶手段３９とを備える。
【００４９】
トポロジー情報記憶手段３１は、パケット転送装置群が形成するネットワークトポロジーを表すトポロジー情報を記憶する記憶装置である。ただし、トポロジー情報記憶手段３１は、リンクの種別毎に、トポロジー情報を記憶する。例えば、図１に示すようにリンクの種別として、Ｅｔｈｅｒｎｅｔのリンクとファイバチャネルのリンクがある場合、トポロジー情報記憶手段３１は、Ｅｔｈｅｒｎｅｔのリンクにより接続されるパケット転送装置群のトポロジー情報と、ファイバチャネルのリンクにより接続されるパケット転送装置群のトポロジー情報とをそれぞれ記憶する。
【００５０】
トポロジー情報登録手段３２は、各パケット転送装置から受信した情報に基づいて、リンクの種別毎にトポロジー情報を作成し、作成したトポロジー情報をトポロジー情報記憶手段３１に記憶させる。
【００５１】
通信端末位置管理手段３３は、通信ネットワーク１に接続された各通信端末がどのパケット転送装置のどのポートに接続されているのかを管理する。例えば、端末装置がＤＨＣＰ（Dynamic Host Configuration Protocol ） Requestメッセージ等の何かしらのパケットを送信した際に、その通信端末に接続されたパケット転送装置が、その通信端末がパケット転送装置のどのポートに接続されているのかを経路制御装置１０に送信し、通信端末位置管理手段３３は、それらの情報を保持しておけばよい。
【００５２】
パケット転送ルール生成手段３４は、分類情報とアクション情報とを決定し、その分類情報およびアクション情報を含むパケット転送ルールを生成する。また、パケット転送ルール生成手段３４は、通信経路上の各パケット転送装置に対してパケット転送ルールを生成する。ここで、パケット転送ルール生成手段３４は、同一フローの通信経路上の各パケット転送装置に対しては、分類情報を共通とする。ただし、アクション情報は、パケット転送装置毎に異なるように定めてもよい。
【００５３】
ただし、パケット転送ルール生成手段３４は、分類情報によって特定されるフローの通信経路において、その分類情報と同一の分類情報を含むパケット転送ルールが設定済みのパケット転送装置に対しては、パケット転送ルールを生成しない。
【００５４】
経路計算手段３５は、フローの通信経路を計算する。ただし、経路計算手段３５は、そのフローのパケットから特定されるリンクの種別に応じたトポロジー情報を参照し、そのトポロジー情報を用いて通信経路を計算する。例えば、通信経路の計算対象となる新たなフローのパケットから特定されるリンク種別が、ファイバチャネルのリンクであるとする。この場合、経路計算手段３５は、トポロジー情報記憶手段３１にリンクの種別毎に記憶されているトポロジー情報のうち、ファイバチャネルのリンクに関するトポロジー情報を参照し、そのトポロジー情報を用いて通信経路を計算する。このとき、経路計算手段３５は、パケットを送受信する通信端末で用いられているアプリケーションソフトウェアの種類に応じた基準で通信経路を計算する。
【００５５】
ルール設定内容記憶手段３６は、どのパケット転送装置にどのようなパケット転送ルールを設定したのかを示す情報を記憶する記憶装置である。ルール設定内容記憶手段３６により、どのパケット転送装置にどのようなパケット転送ルールを設定したのかを管理することができる。
【００５６】
パケット転送装置管理手段３７は、各パケット転送装置２０〜２５を管理する。具体的には、パケット転送装置管理手段３７は、パケット転送ルール生成手段３４に生成されたパケット転送ルールをパケット転送装置に設定する処理等を行う。そして、パケット転送装置管理手段３７は、パケット転送ルールをパケット転送装置に設定したときに、どのパケット転送装置にどのようなパケット転送ルールを設定したのかをルール設定内容記憶手段３６に記憶させる。
【００５７】
また、パケット転送装置管理手段３７は、パケット転送装置とのコネクションを確立したときに、そのパケット転送装置から情報を収集し、収集した情報をパケット転送装置情報記憶手段３８に記憶させる。新たにコネクションを確立したパケット転送装置が経路制御装置１０に情報を送り、経路制御装置１０がその情報を記憶する処理を初期設定と記す。本発明では、初期設定時に収集する情報には、例えば、個々のパケット転送装置の識別子や、個々のパケット転送装置の各ポートのポート識別子、およびその個々のポートに接続されるリンクの種別や、リンクに関連する情報が含まれる。
【００５８】
パケット転送装置情報記憶手段３８は、パケット転送装置の初期設定処理時にパケット転送装置管理手段３７が各パケット転送装置２０〜２５から収集した情報を記憶する記憶装置である。パケット転送装置情報記憶手段３８に記憶された情報を参照することで、各リンクの種別や、リンクに関連する情報等を判断することができる。
【００５９】
また、パケット転送装置管理手段３７は、新たなフローのパケットに関する情報がパケット転送装置から送られてきた場合に、そのパケットに関する情報に基づいて、そのパケットを送受信する通信端末で用いられているアプリケーションソフトウェアの種類を解析する。パケット転送装置管理手段３７は、解析用情報記憶手段３９に記憶された情報を参照して、解析を行えばよい。なお、通信端末で用いられているアプリケーションソフトウェアの種類の解析は、通信端末の特徴の解析の一態様であるということができる。
【００６０】
解析用情報記憶手段３９は、パケットを送受信する通信端末で用いられているアプリケーションソフトウェアの種類を解析するための情報を記憶する記憶装置である。解析用情報記憶手段３９は、パケットのフィールドから抽出された情報と、アプリケーションソフトウェアの種類との対応関係を示す情報を記憶する。すなわち、パケットのフィールドからどのような情報が抽出されたときに、そのパケットを送受信する通信端末で用いられているアプリケーションソフトウェアがどのような種類のものであるのかを示す情報を記憶する。また、解析用情報記憶手段３９は、パケットのフィールドから抽出された情報とアプリケーションソフトウェアの種類との対応関係を示す情報をリンクの種別毎に記憶しておけばよい。アプリケーションソフトウェアの種類を特定するために参照するパケットのフィールドは、パケットから特定されるリンクの種別毎に異なっていてよい。
【００６１】
トポロジー情報登録手段３２、通信端末位置管理手段３３、パケット転送ルール生成手段３４、経路計算手段３５およびパケット転送装置管理手段３７は、例えば、経路制御プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、コンピュータのプログラム記憶装置（図示略）が経路制御プログラムを記憶し、ＣＰＵがそのプログラムを読み込み、そのプログラムに従って、トポロジー情報登録手段３２、通信端末位置管理手段３３、パケット転送ルール生成手段３４、経路計算手段３５およびパケット転送装置管理手段３７として動作すればよい。また、これらの各手段がそれぞれ別々のハードウェアで実現されていてもよい。
【００６２】
また、トポロジー情報記憶手段３１、ルール設定内容記憶手段３６、パケット転送装置情報記憶手段３８および解析用情報記憶手段３９は、同一の記憶装置で実現されていても、あるいは、別々の記憶装置で実現されていてもよい。
【００６３】
図３は、本発明のパケット転送装置の構成例を示すブロック図である。図３では、図１におけるパケット転送装置２０を例にして説明するが、他のパケット転送装置２１〜２５に関しても同様の構成である。パケット転送装置２０は、ルールテーブル記憶手段４１と、ルール管理手段４２と、フロー特定手段４３と、アクション実行手段４４と、初期設定処理手段４５と、トポロジー決定用情報提供手段４６とを備える。
【００６４】
ルールテーブル記憶手段４１は、パケット転送ルールを記憶する記憶装置である。フローが異なれば、異なるパケット転送ルールが設定されるので、ルールテーブル記憶手段４１に記憶されるパケット転送ルールは１つとは限らない。ルールテーブル記憶手段４１に記憶されるパケット転送ルールの集合をパケット転送ルールテーブルと記す。
【００６５】
ルール管理手段４２は、各パケット転送ルールを管理する。例えば、経路制御装置１０のパケット転送装置管理手段３７（図２参照）がパケット転送装置にパケット転送ルールを設定する場合、設定指示とともにパケット転送ルールをパケット転送装置に送信する。ルール管理手段４２は、経路制御装置１０から受信したパケット転送ルールを、この指示に応じてルールテーブル記憶手段４１に記憶させる。
【００６６】
また、ルール管理手段４２は、ルールテーブル記憶手段４１に記憶されている各パケット転送ルールで指定されているタイマー値を時間経過とともに減少させる。そして、ルール管理手段４２は、タイマー値が０になったならば、そのタイマー値を含むパケット転送ルールをルールテーブル記憶手段４１から削除し、その旨の情報を経路制御装置１０に送信する。なお、経路制御装置１０のパケット転送装置管理手段３７（図２参照）は、この情報を受信すると、パケット転送装置においてルールテーブル記憶手段４１から削除されたパケット転送ルールの情報を、ルール設定内容記憶手段３６（図２参照）から削除する。
【００６７】
フロー特定手段４３は、他のノード（例えば、通信端末や他のパケット転送装置）からパケットを受信したときに、そのパケットに適合する分類情報を含むパケット転送ルールを、ルールテーブル記憶手段４１に記憶されているパケット転送ルールテーブルから検索する。検索に失敗したということは、記憶済みのパケット転送ルールに対応するフロー以外の新たなフローに属するパケットを受信したことを意味する。この場合、フロー特定手段４３は、新規フローを検出したことを示す通知（新規フロー検出通知）を経路制御装置１０に送信する。このとき、フロー特定手段４３は、フローの通信経路を特定可能な情報、分類情報を作成可能な情報、新規フローに属するパケットを送受信する通信端末で用いられるアプリケーションソフトウェアの解析に用いる情報を新規フロー検出通知に含める。さらに、フロー特定手段４３は、自ノード（図３に示す例ではパケット転送装置２０）の識別子および、新規フローのパケットを受信した自ノードのポート番号も新規フロー検出通知に含める。
【００６８】
ここで、新規フロー検出通知に含められる、フローの通信経路を特定可能な情報、分類情報を作成可能な情報、および、新規フローに属するパケットを送受信する通信端末で用いられるアプリケーションソフトウェアの解析に用いる情報について説明する。
【００６９】
フローの通信経路を特定可能な情報は、受信したパケットが属している新規フローの通過経路を特定可能な情報である。フローの通信経路を特定可能な情報の例として、通信経路の両端点となる送信元および宛先の通信端末のアドレス情報が挙げられる。ただし、パケットが通信ネットワーク１（図１参照）のゲートウェイ（図示略）を介して、他の通信ネットワークに送られる場合には、通信経路の端点となる送信元の通信端末のアドレス情報があれば、ゲートウェイまでの通信経路を特定することができる。従って、通信経路の両端点となる送信元および宛先の通信端末のアドレス情報は、フローの通信経路を特定可能な情報の一例であり、宛先までの経路の態様によっては、宛先となる通信端末のアドレス情報が不要な場合もある。
【００７０】
分類情報として何を用いるかは、フローの識別流度に応じて予め定めておけばよい。例えば、送信元および送信先のＭＡＣアドレス、ＩＰアドレス、送信元ポート番号、送信先ポート番号等の種々の情報の組み合わせでフローを識別する場合、パケット転送ルール生成手段３４は、パケットから特定されるそれらの情報を分類情報として定めればよい。あるいは、宛先ポート番号のみ、送信元ポート番号のみ等のように粗い粒度でフローを識別する場合には、パケット転送ルール生成手段３４は、パケットから特定されるそれらの情報を分類情報として定めればよい。また、パケット転送装置のポートのうち、パケットを受信したポートのポート番号を分類情報として用いてもよい。分類情報を作成可能な情報は、パケット転送ルール生成手段３４によって分類情報とされる情報が包含されていればよい。
【００７１】
新規フローに属するパケットを送受信する通信端末で用いられるアプリケーションソフトウェアの解析に用いる情報は、例えば、パケットのヘッダである。
【００７２】
パケットのヘッダには、フローの通信経路を特定可能な情報が含まれている。従って、分類情報を作成可能な情報として定められた情報も、ヘッダに含まれているのであれば、フロー特定手段４３は、新規フローのパケットのヘッダと、自ノードの識別子と、パケットを受信した自ノードのポート番号とを新規フロー検出通知に含めて、新規フロー検出通知を経路制御装置１０に送信すればよい。分類情報を作成可能な情報として定められた情報の中に、パケットのヘッダ、および、パケットを受信した自ノードのポート番号以外の情報があるならば、フロー特定手段４３は、その情報も新規フロー検出通知に含めればよい。
【００７３】
アクション実行手段４４は、フロー特定手段４３がパケット転送ルールの検索に成功した場合、受信したパケットに対して、そのパケット転送ルールに含まれるアクション情報が示す処理を実行する。
【００７４】
初期設定処理手段４５は、自ノード（パケット転送装置）が経路制御装置１０とのコネクションを確立したときに、経路制御装置１０のパケット転送装置管理手段３７（図２参照）からの要求に応じて、自ノードの情報を経路制御装置１０に送信する。このとき、送信する情報には、例えば、自ノードの識別子、自ノードの各ポートのポート識別子、および、その個々のポートに接続されるリンクの種別や、リンクに関連する情報等が含まれる。
【００７５】
トポロジー決定用情報提供手段４６は、リンクの種別毎にトポロジー情報を作成するためのパケット（以下、トポロジー決定用パケットと記す）を送信する。トポロジー決定用情報提供手段４６は、リンクの種別毎にトポロジー決定用パケットを送信する。そして、トポロジー決定用情報提供手段４６は、あるリンクの種別に対応するトポロジー決定用パケットを送信する際には、その種別のリンクに接続されている自ノードのポートから送信する。
【００７６】
あるパケット転送装置から送信されたトポロジー決定用パケットは、他のパケット転送装置によって受信される。トポロジー決定用パケットを受信したパケット転送装置は、トポロジー決定用パケットに情報を付加し、経路制御装置１０に送信する。経路制御装置１０のトポロジー情報登録手段３２は、このようにして、リンクの種別毎にトポロジー決定用パケットを受信し、そのトポロジー決定用パケットに基づいて、リンクの種別毎にトポロジー情報を作成する。
【００７７】
トポロジー決定用情報提供手段４６は、自ノードからトポロジー決定用パケットを送信する処理の他に、他のパケット転送装置からトポロジー決定用パケットを受信したときに、そのトポロジー決定用パケットに情報を付加し、経路制御装置１０に送信する処理も行う。
【００７８】
ルール管理手段４２、フロー特定手段４３、アクション実行手段４４、初期設定処理手段４５およびトポロジー決定用情報提供手段４６は、例えば、パケット転送装置用プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、コンピュータのプログラム記憶装置（図示略）がパケット転送装置用プログラムを記憶し、ＣＰＵがそのプログラムを読み込み、そのプログラムに従って、ルール管理手段４２、フロー特定手段４３、アクション実行手段４４、初期設定処理手段４５およびトポロジー決定用情報提供手段４６として動作すればよい。また、これらの手段がそれぞれ別々のハードウェアで実現されていてもよい。
【００７９】
次に、動作について説明する。
図４は、初期設定時の処理経過の例を示す説明図である。図４では、パケット転送装置２０を例にして説明するが、他のパケット転送装置２１〜２５も経路制御装置１０とともに同様の処理を行う。
【００８０】
パケット転送装置２０が通信ネットワーク１に配置され、経路制御装置１０と接続されると、パケット転送装置２０の初期設定処理手段４５（図３参照）と、経路制御装置１０のパケット転送装置管理手段３７（図２参照）は、パケット転送装置２０と経路制御装置１０との間のコネクションを確立する（ステップＳ１）。ステップＳ１で確立されるコネクションは、例えば、制御チャネル用のポート番号を用いたＴＣＰコネクションである。
【００８１】
コネクションが確立すると、経路制御装置１０のパケット転送装置管理手段３７は、パケット転送装置２０に対して情報要求を送信する（ステップＳ２）。情報要求は、パケット転送装置に対して、経路制御装置１０への情報送信を要求する旨の情報である。
【００８２】
パケット転送装置２０の初期設定処理手段４５は、ステップＳ２で送信された情報要求を受信すると、その情報要求に対する応答として、パケット転送装置２０に関する情報を経路制御装置１０に送信する（ステップＳ３）。そして、経路制御装置１０のパケット転送装置管理手段３７は、この情報を受信すると、パケット転送装置情報記憶手段３８に記憶させる。
【００８３】
ステップＳ３において、パケット転送装置２０の初期設定処理手段４５が経路制御装置１０に送信する情報について、具体的に説明する。
【００８４】
ステップＳ３で送信する第１の情報として、パケット転送装置自身（本例では、パケット転送装置２０）の識別子がある。初期設定処理手段４５は、パケット転送装置自身の識別子として、例えば、ＩＰアドレスを送信してもよい。ＩＰアドレスは、パケット転送装置の識別子の例であり、識別子としてＩＰアドレス以外の情報を送信してもよい。
【００８５】
ステップＳ３で送信する第２の情報として、パケット転送装置自身（本例では、パケット転送装置２０）の各ポートに関する情報がある。各ポートに関する情報とは、例えば、パケット転送装置の各ポートのポート識別子、個々のポートに接続されているリンクの種別（以下、リンクタイプ情報と記す場合がある。）、個々のポートに接続されているリンクに関連する情報である。初期設定処理手段４５は、パケット転送装置自身の各ポートに関するこれらの情報を、上記の第１の情報（パケット転送装置の識別子）とともに、経路制御装置１０に送信する。
【００８６】
上記のポートの識別子として、例えば、ポート番号を用いることができる。リンクタイプ情報は、例えば、Ｅｔｈｅｒｎｅｔ、ファイバチャネル、Ｉｎｆｉｎｉｂａｎｄ等のフレームタイプの異なるリンク種別を表す情報である。リンクに関連する情報の内容は、リンクの種別により変化する。例えば、リンクの種別がＥｔｈｅｒｎｅｔである場合、リンクに関連する情報として、ＭＡＣアドレスや、サポートする通信速度や、通信方式（例えば、全二重、半二重）等が挙げられる。リンクに関連する情報は、リンクの属性情報と称することもできる。
【００８７】
また、初期設定処理手段４５は、ステップＳ３において、上記の各情報以外に、他の情報も合わせて送信してもよい。例えば、パケット転送装置自身（本例では、パケット転送装置２０）の能力に関する情報を送信してもよい。パケット転送装置の能力に関する情報として、例えば、統計情報を取得するか否かという情報や、パケット転送装置がサポートするアクションの情報等が挙げられる。パケット転送装置がサポートするアクションの例として、送信元／宛先ＭＡＣアドレス変換、送信元／宛先ＩＰアドレス変換、送信元／宛先ポート番号変換等が挙げられる。経路制御装置１０は、パケット転送装置がサポートするアクションの情報を収集することにより、例えば、特定のフローに対して宛先ＭＡＣアドレス変換処理が必要になる場合に、宛先ＭＡＣアドレス変換処理をサポートしているパケット転送装置を特定し、そのパケット転送装置に宛先ＭＡＣアドレス変換を行わせるようにする等の制御が可能になる。
【００８８】
次に、経路制御装置１０がトポロジー情報を生成する動作について説明する。図５は、トポロジー情報生成時の処理経過の例を示す説明図である。以下の説明では、トポロジー決定用パケットの送信元となるパケット転送装置を符号“Ａ”で表し、そのトポロジー決定用パケットを経路制御装置１０に転送するパケット転送装置を符号“Ｂ”で表す。
【００８９】
パケット転送装置Ａのトポロジー決定用情報提供手段４６（図３参照）は、自ノード（パケット転送装置Ａ自身）の各ポートに接続された各リンクの種別から一つの種別を選択する（ステップＳ１１）。例えば、パケット転送装置Ａに設けられた複数のポートのうち、一部のポートがＥｔｈｅｒｎｅｔのリンクに接続され、残りのポートがファイバチャネルのリンクに接続されている場合、「Ｅｔｈｅｒｎｅｔ」、「ファイバチャネル」という種別のうち、一つの種別を選択する。ここでは、「Ｅｔｈｅｒｎｅｔ」を選択した場合を例にして説明する。
【００９０】
パケット転送装置Ａのトポロジー決定用情報提供手段４６は、ステップＳ１１で選択したリンクの種別に応じたトポロジー決定用パケットとして、自ノード（パケット転送装置Ａ自身）の識別子（例えば、アドレス）と、そのトポロジー決定用パケットを出力するポートの識別子とを付加したパケットを作成する。ここで、トポロジー決定用パケットを出力するポートとは、ステップＳ１１で選択した種別のリンクに接続されているポートである。パケット転送装置Ａのトポロジー決定用情報提供手段４６は、自ノードの識別子およびポートの識別子を付加したトポロジー決定用パケットを、そのポートから出力（すなわち送信）する（ステップＳ１２）。
【００９１】
ステップＳ１１で選択した種別のリンクに接続されているポートが複数存在する場合、パケット転送装置Ａのトポロジー決定用情報提供手段４６は、そのポート毎に、トポロジー決定用パケットを作成し、送信する。また、ステップＳ１１で選択した種別とは異なるリンクに接続されたポートに関しては、トポロジー決定用パケットの作成および送信は行わない。
【００９２】
例えば、パケット転送装置Ａに４つのポートがあり、ポート番号（ポート識別子）“１”，“２”のポートは、Ｅｔｈｅｒｎｅｔのリンクに接続され、ポート番号“３”，“４”のポートは、ファイバチャネルのポートに接続されているとする。ステップＳ１１で「Ｅｔｈｅｒｎｅｔ」を選択した場合、トポロジー決定用情報提供手段４６は、パケット転送装置Ａの識別子およびポート番号“１”を付加したトポロジー決定用パケットをポート番号“１”のポートから送信する。同様に、トポロジー決定用情報提供手段４６は、パケット転送装置Ａの識別子およびポート番号“２”を付加したトポロジー決定用パケットをポート番号“２”のポートから送信する。ポート番号“３”，“４”に関しては、「Ｅｔｈｅｒｎｅｔ」のリンクに該当しないので、トポロジー決定用パケットの作成および送信は行わない。
【００９３】
パケット転送装置Ｂのトポロジー決定用情報提供手段４６は、ステップＳ１２で送信されたトポロジー決定用パケットを受信すると、そのトポロジー決定用パケットに、自ノード（パケット転送装置Ｂ）の識別子（例えば、アドレス）と、そのトポロジー決定用パケットを受信した自ノードのポートのポート識別子とを付加し、トポロジー決定用パケットを経路制御装置１０に送信する（ステップＳ１３）。
【００９４】
この結果、選択された種別のリンクによって、どのパケット転送装置におけるどのポートと、どのパケット転送装置におけるどのポートとが接続されているかを示すトポロジー決定用パケットを、経路制御装置１０のトポロジー情報登録手段３２が受信する。
【００９５】
例えば、パケット転送装置Ｂのトポロジー決定用情報提供手段４６が受信したトポロジー決定用パケットに、パケット転送装置Ａの識別子とポート番号“１”が付加されていたとする。そして、パケット転送装置Ｂは、パケット転送装置Ｂ自身のポート番号“３”のポートでトポロジー決定用パケットを受信したとする。この場合、パケット転送装置Ｂのトポロジー決定用情報提供手段４６は、パケット転送装置Ｂ自身の識別子と、ポート番号“３”とをトポロジー決定用パケットに付加し、経路制御装置１０に送信する。
【００９６】
この結果、パケット転送装置Ａのポート番号“１”のポートと、パケット転送装置Ｂのポート番号“３”のポートとがＥｔｈｅｒｎｅｔのリンクで接続されていることを示すトポロジー決定用パケットを、経路制御装置１０が受信する。
【００９７】
図５では、トポロジー決定用パケットを転送するパケット転送装置Ｂを１つだけ図示しているが、ステップＳ１２で送信されたトポロジー決定用パケットを受信したパケット転送装置は、いずれもステップＳ１３の処理を行う。例えば、パケット転送装置Ａの識別子とポート番号“２”が付加されたトポロジー決定用パケットを受信したパケット転送装置もステップＳ１３を実行する。
【００９８】
また、図５では、トポロジー決定用パケットの送信元となるパケット転送装置Ａを１つだけ図示しているが、通信ネットワーク１内の各パケット転送装置が、ステップＳ１１，Ｓ１２の処理を行う。
【００９９】
従って、経路制御装置１０のトポロジー情報登録手段３２は、Ｅｔｈｅｒｎｅｔのリンク毎に、そのリンクに関するトポロジー決定用パケットを受信する。そして、個々のトポロジー決定用パケットには、どのパケット転送装置におけるどのポートと、どのパケット転送装置におけるどのポートとがＥｔｈｅｒｎｅｔのリンクで接続されているかが示されている。トポロジー情報登録手段３２は、受信した各トポロジー決定用パケットに基づいて、Ｅｔｈｅｒｎｅｔのリンクで接続されたパケット転送装置のトポロジー情報を作成し、トポロジー情報記憶手段３１に記憶させる。
【０１００】
その後、通信ネットワーク１内の各パケット転送装置が、ステップＳ１１において、未選択の種別（本例では、ファイバチャネル）を選択し、以下、同様の処理を行う。この結果、ファイバチャネルのリンクで接続されたパケット転送装置のトポロジー情報も、トポロジー情報登録手段３２によって作成され、トポロジー情報記憶手段３１に記憶される。
【０１０１】
通信システムは、リンクの種別毎に、図５で説明した処理を行うことにより、リンクの種別毎のトポロジー情報をトポロジー情報記憶手段３１に記憶させる。
【０１０２】
ただし、上記のトポロジー情報作成処理は例示であり、通信システムは、他の方法で、リンクの種別毎のトポロジー情報を作成してもよい。
【０１０３】
次に、パケット転送時の動作について説明する。図６は、通信端末間で送受信されるパケットを転送するときの通信システムの処理経過の例を示す説明図である。ここでは、図１に示す通信端末３０が通信端末３２にパケットを送信する場合を例にして説明する。
【０１０４】
通信端末３０は、通信端末３２宛にパケットを送信する（ステップＳ２１）。このパケットは、通信端末３０が接続されているパケット転送装置２０に届く。
【０１０５】
パケット転送装置２０がパケットを受信すると、パケット転送装置２０のフロー特定手段４３（図３参照）は、受信したパケットに適合するパケット転送ルールがルールテーブル記憶手段４１に記憶されているか否かを判定する。通信端末３０が通信端末３２宛に送信したパケットをパケット転送装置２０が初めて受信したときには、そのパケットに適合するパケット転送ルールは、パケット転送装置２０のルールテーブル記憶手段４１に記憶されていない。そのため、パケット転送装置２０のフロー特定手段４３は、受信したパケットをバッファリングし、自ノード（パケット転送装置２０）の識別子（例えばＩＰアドレス）と、そのパケットを受信した自ノードのポートのポート識別子（例えばポート番号）と、そのパケットのヘッダとを含む新規フロー検出通知を作成し、経路制御装置１０に送信する（ステップＳ２２）。
【０１０６】
ここで、パケットのヘッダには、フローの通信経路を特定可能な情報、分類情報を作成可能な情報（例えば、送信元および宛先の両方に関するＭＡＣアドレス、ＩＰアドレス、ポート番号等）、および、新規フローに属するパケットを送受信する通信端末で用いられるアプリケーションソフトウェアの解析に用いる情報が含まれている。分類情報を作成可能な情報として定められた情報の中に、パケットのヘッダ、および、パケットを受信した自ノードのポート番号以外の情報があるならば、フロー特定手段４３は、その情報も新規フロー検出通知に含めればよい。
【０１０７】
また、「フローの通信経路を特定可能な情報」、「分類情報を作成可能な情報」、および「新規フローに属するパケットを送受信する通信端末で用いられるアプリケーションソフトウェアの解析に用いる情報」を包含する情報であれば、パケットのヘッダ全体ではなく、その一部を新規フロー検出通知に含めてもよい
【０１０８】
また、ステップＳ２２において、パケット転送装置２０のフロー特定手段４３は、受信したパケットそのものと、自ノードの識別子と、パケットを受信した自ノードのポートのポート識別子とを含む新規フロー検出通知を作成し、経路制御装置１０に送信してもよい。
【０１０９】
経路制御装置１０は、新規フロー検出通知を受信すると、新規フローに関するパケット転送ルールを作成し、パケット転送装置に設定する（ステップＳ２３）。図７は、新規フロー検出通知を受信した経路制御装置１０の処理経過の例を示すフローチャートである。
【０１１０】
経路制御装置１０のパケット転送装置管理手段３７は、新規フロー検出通知を受信すると（ステップＳ３１）、新たなフローのパケット（ここでは、パケット転送装置２０が通信端末３０から受信したパケット）のフレームタイプを判定する（ステップＳ３２）。換言すれば、パケット転送装置管理手段３７は、新たなフローのパケットの転送経路となるべきリンクの種別を判定する。ステップＳ３２において、パケット転送装置管理手段３７は、新規フロー検出通知に含まれている、新規フロー検出通知の送信元となるパケット転送装置の識別子と、そのパケット転送装置がパケットを受信したポートのポート識別子とを参照し、パケット転送装置情報記憶手段３８に記憶されている情報に基づいて、そのポートに接続されているリンクの種別を判定すればよい。
【０１１１】
本例では、新規フロー検出通知には、パケット転送装置２０の識別子が含まれている。そして、その新規フロー検出通知には、パケット転送装置２０がパケットを受信したポートのポート識別子としてポート番号“１”が含まれているとする。初期設定の結果、パケット転送装置情報記憶手段３８には、各パケット転送装置における各ポートに接続されるリンクの種類が記憶されている。従って、パケット転送装置管理手段３７は、新規フロー検出通知から特定したパケット転送装置のポートのリンクタイプ情報をパケット転送装置情報記憶手段３８から読み込むことにより、リンクの種別（パケットのフレームタイプ）を判定すればよい。上記の例では、パケット転送装置２０におけるポート番号“１”のリンクの種別をパケット転送装置情報記憶手段３８から読み込めばよい。
【０１１２】
本例では、ステップＳ３２において、パケット転送装置管理手段３７は、リンクの種別がＥｔｈｅｒｎｅｔであると判定する。
【０１１３】
次に、パケット転送装置管理手段３７は、ステップＳ３２で判定した種別に基づいて、新たなフローのパケットを送受信する通信端末（本例では、通信端末３０，３２）で用いられているアプリケーションソフトウェアの種類を解析する（ステップＳ３２）。本例では、パケット転送装置管理手段３７は、解析用情報記憶手段３９に記憶された情報を参照してこの解析を行う。
【０１１４】
解析用情報記憶手段３９は、リンクの種別毎に、パケットのフィールドから抽出される内容と、アプリケーションソフトウェアの種類との対応関係を示す情報を記憶する。ここでは、「Ｅｔｈｅｒｎｅｔ」に関しては、Ｅｔｈｅｒｎｅｔヘッダおよびその上位の各ヘッダにおけるＩＰアドレス、ポート番号等の値と、アプリケーションソフトウェアの種類とが対応付けられているものとする。
【０１１５】
パケット転送装置管理手段３７は、ステップＳ３１で判定された種別に基づいて、下層のヘッダから上層のヘッダを順に参照していき、通信端末で用いられているアプリケーションソフトウェアの種類を特定する。
【０１１６】
例えば、パケット転送装置管理手段３７は、ステップＳ３１で判定された種別が「Ｅｔｈｅｒｎｅｔ」であることに基づいて、パケットのヘッダのうち、Ｅｔｈｅｒｎｅｔヘッダにおけるタイプ番号を参照し、上位のヘッダがＩＰｖ４ヘッダであると判定すると、Ｅｔｈｅｒｎｅｔヘッダに続いて、ＩＰヘッダの内容を参照する。同様の手順で、トランスポート層のヘッダまで参照し、参照した情報の内容と、解析用情報記憶手段３９に記憶された情報とを照合して、パケットを送受信する通信端末で用いられているアプリケーションソフトウェアの種類を特定する。
【０１１７】
次に、経路計算手段３５は、新たに発生したフローの通信を許可するか否かを判定する（ステップＳ３４）。ステップＳ３４において、経路計算手段３５は、予め定められたパケット転送装置の動作決定用ルールに従って、通信を許可するか否かを判定すればよい。パケット転送装置の動作決定用ルールは、パケット転送装置の動作を定めたルールである。例えば、パケット転送装置の動作決定用ルールとして、「通信端末の種類に依らず、各通信端末は、経路制御装置１０以外のどの端末とも通信可能であり、細かなフロー制御は行わない」というルールが予め定められているとする。また、例えば、宛先ＭＡＣアドレスを分類情報としているものとする。このルールが定められている場合、経路計算手段３５は、新規フロー検出通知に含まれている宛先ＭＡＣアドレスが経路制御装置１０以外の端末のＭＡＣアドレスであるならば、通信を許可すると判定する（ステップＳ３４におけるＹｅｓ）。また、新規フロー検出通知に含まれている宛先ＭＡＣアドレスが経路制御装置１０のＭＡＣアドレスである場合、通信を許可しないと判定する（ステップＳ３４におけるＮｏ）。
【０１１８】
なお、パケット転送装置の動作決定用ルールの内容は上記の内容に限定されない。
【０１１９】
通信を許可すると判定した場合（ステップＳ３４におけるＹｅｓ）、経路計算手段３５は、ステップＳ３２で判定されたリンクの種別に関するトポロジー情報を参照し、ステップＳ３３で判定されたアプリケーションソフトウェアの種類に応じた基準で経路を計算する（ステップＳ３５）。
【０１２０】
なお、ステップＳ３５において、通信端末位置管理手段３３は、新規フロー検出通知に含まれる、宛先となる通信端末のアドレス情報を元に、その通信端末が、どのパケット転送装置のどのポートに接続されているのかを判定する。本例では、宛先となる通信端末３２に接続されたパケット転送装置２５を特定し、さらに、パケット転送装置２５のポートのうち、通信端末３２に接続されたポートを特定する。
【０１２１】
そして、経路計算手段３５は、ステップＳ３２で判定されたリンクの種別に関するトポロジー情報（ここでは、Ｅｔｈｅｒｎｅｔのトポロジー情報）をトポロジー情報記憶手段３１から読み込み、そのトポロジー情報と、通信端末位置管理手段３３による位置確認結果に基づいて、送信元の通信端末から宛先の通信端末への通信経路を計算する。
【０１２２】
このとき、経路計算手段３５は、ステップＳ３３で判定されたアプリケーションソフトウェアの種類に応じた基準で経路を計算する。経路計算手段３５は、個々のリンクが、アプリケーションソフトウェアの種類に応じた基準を満たしているか否かを、例えば、初期設定時に記憶された個々のリンクに関連する情報に基づいて判定し、基準を満たしているリンクを用いて送信元の通信端末から宛先の通信端末への通信経路を定めればよい。
【０１２３】
例えば、アプリケーションソフトウェアの種類がＶｏＩＰ（Voice over IP ）であるならば、経路計算手段３５は、Ｅｔｈｅｒｎｅｔのトポロジー情報から、低遅延であるという基準を満たすリンクを特定し、そのリンクを用いて送信元の通信端末から宛先の通信端末への通信経路を定めればよい。
【０１２４】
また、例えば、アプリケーションソフトウェアが大容量ファイルのダウンロードを行うものであれば、経路計算手段３５は、Ｅｔｈｅｒｎｅｔのトポロジー情報から、広帯域であるという基準を満たすリンクを特定し、そのリンクを用いて送信元の通信端末から宛先の通信端末への通信経路を定めればよい。
【０１２５】
本例では、パケット転送装置２０、パケット転送装置２２、パケット転送装置２４、パケット転送装置２５、通信端末３２の順に経由する通信経路を定めたものとする。
【０１２６】
通信経路の計算後、パケット転送ルール生成手段３４は、ステップＳ３５で定められた経路上のパケット転送装置毎に、パケット転送ルールを生成する（ステップＳ３６）。このとき、パケット転送ルール生成手段３４は、まず、新規フロー検出通知に含まれている「分類情報を作成可能な情報」を用いて、分類情報を決定する。パケット転送ルール生成手段３４は、「分類情報を作成可能な情報」に含まれる項目の一部または全部を分類情報として決定すればよい。どのような項目を分類情報とするかは、例えば、ネットワーク管理者によって予め定められている。分類情報は、経路上の各パケット転送装置で共通である。
【０１２７】
そして、パケット転送ルール生成手段３４は、通信経路上のパケット転送装置毎に、通信経路上の次のノードへのフォワーディング（Forwarding）を、アクション情報として定める。
【０１２８】
パケット転送ルール生成手段３４は、通信経路上の各パケット転送装置で共通の分類情報と、通信経路上のパケット転送装置毎に定めたアクション情報とを組み合わせて、各パケット転送装置に設定するパケット転送ルールを決定する。なお、パケット転送ルール生成手段３４は、アクション情報にタイマー値も含めるが、タイマー値の値は、例えば、予め定められた値を用いればよい。
【０１２９】
ステップＳ３６の後、パケット転送装置管理手段３７は、通信経路上の各パケット転送装置に対して、パケット転送装置に対応するパケット転送ルールを、そのルールの設定指示とともに送信する（ステップＳ３７）。例えば、パケット転送装置２０に対して作成されたパケット転送ルールを、ルールの設定指示とともにパケット転送装置２０に送信する。他のパケット転送ルールに関しても同様である。
【０１３０】
ステップＳ３７において、各パケット転送装置２０，２２，２４，２５のルール管理手段４２は、経路制御装置１０からパケット転送ルールおよびその設定指示を受信すると、その指示に従って、パケット転送ルールを設定する。具体的には、受信したパケット転送ルールをルールテーブル記憶手段４１に記憶させる。
【０１３１】
また、ステップＳ３４において通信を許可しないと判定した場合（ステップＳ３４におけるＮｏ）、パケット転送ルール生成手段３４は、例えば、新規フロー検出通知の送信元であるパケット転送装置２０に対するパケット転送ルールを作成する（ステップＳ３６）。既に説明したように、パケット転送ルール生成手段３４は、「分類情報を作成可能な情報」に含まれる項目の一部または全部を分類情報として決定すればよい。また、この場合、パケット転送ルール生成手段３４は、パケットの廃棄を指示するアクション情報を作成すればよい。パケット転送ルール生成手段３４は、この分類情報およびアクション情報を含むパケット転送ルールを作成する。なお、アクション情報に含めるタイマー値の値は、例えば、予め定められた値を用いればよい。
【０１３２】
このパケット転送ルールをパケット転送装置２０に設定する動作（ステップＳ３７）は、既に説明した動作と同様である。なお、ここでは、通信を許可しない場合に、新規フロー検出通知の送信元であるパケット転送装置２０に対してパケット転送ルールを設定する場合を例にして説明したが、経路制御装置１０は、他のパケット転送装置に対しても同様のパケット転送ルールを設定してもよい。
【０１３３】
図６に示すステップＳ２３（図７に示すステップＳ３１〜Ｓ３７）の処理で、通信経路上の各パケット転送装置２０，２２，２４，２５に対するパケット転送ルールの設定が完了すると、パケット転送装置２０のアクション実行手段４４は、設定されたパケット転送ルールに従って、バッファリングしていたパケットを転送する（ステップＳ２４、図６参照）。すなわち、設定されたパケット転送ルールのアクション情報で定められていたとおりに、パケットを次のノードであるパケット転送装置２２に転送する。
【０１３４】
また、経路制御装置１０に定められた通信経路上のパケット転送装置２２，２４，２５にも、このパケットに適合するパケット転送ルールが設定されている。よって、各パケット転送装置２２，２４，２５では、パケット受信時に、フロー特定手段４３が、パケットに適合するパケット転送ルールを検索し、アクション実行手段４４が、そのパケット転送ルールに従って、パケットを次のノードに転送する（ステップＳ２５，Ｓ２６，Ｓ２７）。この結果、パケットは宛先の通信端末３２に届く。
【０１３５】
通信端末３０から通信端末３２までの通信に関するパケット転送ルールの設定は完了しているので、これ以降に、通信端末３０が通信端末３２宛にパケットを送信した場合には、パケット転送装置２０，２２，２４，２５は、経路制御装置１０に問い合わせを行うことなく、各パケット転送装置に設定されたパケット転送ルールに従ってパケットを転送すればよい。
【０１３６】
通信端末３２が通信端末３０宛にパケットを送信する場合にも、本発明の通信システムは、上記と同様の処理を行えばよい。
【０１３７】
また、通信端末３０，３２以外の端末がパケットを送受信する場合にも、本発明の通信システムは、上記と同様の処理を行えばよい。
【０１３８】
本発明によれば、経路制御装置１０は、リンクの種別毎にトポロジー情報を記憶する。また、経路制御装置１０は、新規フロー検出通知を受信したときに、新たなフローのパケットが通過するリンクの種別を特定し、また、パケットを送受信する通信端末で用いられるアプリケーションソフトウェアの種類を解析する。そして、経路制御装置１０は、特定したリンクの種別に対応するトポロジー情報を用いて、そのアプリケーションソフトウェアの種類に応じた基準で通信経路を計算し、経路上のパケット転送装置にパケット転送ルールを設定する。従って、本発明によれば、通信ネットワークを形成するパケット転送装置のリンクの種類が複数ある場合でも、フローの経路を適切に定めることができる。
【０１３９】
また、上記の実施形態では、ファイバチャネルとＥｔｈｅｒｎｅｔとで、それぞれリンク種別が完全に別となるトポロジーが形成される場合を説明した。Fibre Channel over Ethernet （ＦＣｏＥ）のように、ある特定のリンク種別のフレームを別のリンク種別のフレームでカプセル化して転送できる場合もある。この場合、各パケット転送装置の初期設定処理手段４５は、この機能（フレームのカプセル化機能）を具備することを経路制御装置１０に通知してもよい。そして、経路制御装置１０は、新規フロー検出による経路計算において、ペイロードに別種別のフレームを格納したフレームの経路を計算してもよい。
【０１４０】
この経路計算では、例えば、通信端末位置管理手段３３が、送信元の通信端末と宛先の通信端末の位置を特定する。そして、経路計算手段３５は、この２つの通信端末が別のリンクシステムに隔てられた異なる通信ネットワークに接続されていることを判断する。また、経路計算手段３５は、異なる２点間をフレームのカプセル化によって通信可能とするパケット転送装置が存在することを初期設定の結果から判断する。そして、経路計算手段３５は、以下の３つの経路を計算する。
【０１４１】
第１の経路は、パケットの送信元の通信端末から、その通信端末と同じ通信ネットワークに属し、パケットのカプセル化機能を有するパケット転送装置（Ｐと記す）までの経路である。
【０１４２】
第２の経路は、そのパケット転送装置Ｐから、宛先の端末装置と同じ通信ネットワークに属し、パケットのカプセル化機能を有するパケット転送装置（Ｑと記す）までの経路である。
【０１４３】
第３の経路は、そのパケット転送装置Ｑから、宛先の通信端末までの経路である。
【０１４４】
次に、本発明の最小構成について説明する。図８は、本発明の通信システムの最小構成の例を示すブロック図である。図９は、本発明の経路制御装置の最小構成の例を示すブロック図である。図１０は、本発明のパケット転送装置の最小構成の例を示すブロック図である。
【０１４５】
本発明の通信システムは、受信したパケットを転送する複数のパケット転送装置８０と、各パケット転送装置８０にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置７０とを備える（図８参照）。
【０１４６】
そして、パケット転送装置８０は、情報送信手段８１と、新規フロー検出通知手段８２とを備える（図８、図１０参照）。
【０１４７】
情報送信手段８１（例えば、初期設定処理手段４５）は、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置７０に送信する。
【０１４８】
新規フロー検出通知手段８２（例えば、フロー特定手段４３）は、受信したパケットに適合するパケット転送ルールを保持していない場合に、そのパケットに関する情報と、自ノードの識別子と、そのパケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する。
【０１４９】
また、経路制御装置７０は、パケット転送装置情報記憶手段７１と、トポロジー情報記憶手段７２と、リンク種別判定手段７３と、経路計算手段７４と、ルール生成手段７５と、ルール送信手段７６とを備える（図８、図９参照）。
【０１５０】
パケット転送装置情報記憶手段７１（例えば、パケット転送装置情報記憶手段３８）は、各パケット転送装置８０の情報送信手段８１から受信した情報を記憶する。すなわち、パケット転送装置情報記憶手段７１は、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とを記憶する。
【０１５１】
トポロジー情報記憶手段７２（例えば、トポロジー情報記憶手段３１）は、パケット転送装置８０の各ポートに接続されるリンクの種別毎に、パケット転送装置８０のトポロジー情報を記憶する。
【０１５２】
リンク種別判定手段７３（例えば、ステップＳ３２を実行するパケット転送装置管理手段３７）は、パケット転送装置８０から新規フロー検出通知を受信したときに、その新規フロー検出通知に含まれるパケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段７１に記憶された情報とに基づいて、パケット転送装置が受信したパケットが通過するリンクの種別を判定する。
【０１５３】
経路計算手段７４（例えば、経路計算手段３５）は、リンク種別判定手段７３が判定したリンクの種別に関するトポロジー情報に基づいて、パケットの通信経路を計算する。
【０１５４】
ルール生成手段７５（例えば、パケット転送ルール生成手段３４）は、通信経路上のパケット転送装置毎にパケット転送ルールを生成する。
【０１５５】
ルール送信手段７６（例えば、ステップＳ３７を実行するパケット転送装置管理手段３７）は、通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信する。
【０１５６】
以上のような構成により、通信ネットワークを形成するパケット転送装置のリンクの種類が複数ある場合でも、フローの経路を適切に定めることができる。
【０１５７】
また、本発明の経路制御装置７０に関しても、同様の効果を得ることができる。また、本発明のパケット転送装置８０に関しても、経路制御装置７０と組み合わせることで、同様の効果をえることができる。
【０１５８】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１５９】
（付記１）受信したパケットを転送する複数のパケット転送装置と、各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置とを備え、各パケット転送装置は、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信手段と、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知手段とを含み、経路制御装置は、各パケット転送装置の情報送信手段から受信した情報を記憶するパケット転送装置情報記憶手段と、パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶手段と、パケット転送装置から新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶された情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定手段と、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算手段と、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成手段と、前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信手段とを含むことを特徴とする通信システム。
【０１６０】
（付記２）各パケット転送装置の情報送信手段は、経路制御装置とのコネクション確立時に、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する付記１に記載の通信システム。
【０１６１】
（付記３）経路制御装置は、新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析手段を備え、
経路計算手段は、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算する付記１または付記２に記載の通信システム。
【０１６２】
（付記４）経路制御装置は、新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末で用いられるアプリケーションソフトウェアの種類を解析する解析手段を備え、経路計算手段は、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末で用いられるアプリケーションソフトウェアの種類に応じた通信経路を計算する付記１から付記３のうちのいずれかに記載の通信システム。
【０１６３】
（付記５）各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置であって、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とを記憶するパケット転送装置情報記憶手段と、
パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶手段と、パケット転送装置から、当該パケット転送装置が受信した新規フローのパケットに関する情報と、当該パケット転送装置の識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶された情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定手段と、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算手段と、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成手段と、前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信手段とを備えることを特徴とする経路制御装置。
【０１６４】
（付記６）新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析手段を備え、経路計算手段は、リンク種別判定手段が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算する付記５に記載の経路制御装置。
【０１６５】
（付記７）経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するパケット転送装置であって、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信手段と、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知手段とを備えることを特徴とするパケット転送装置。
【０１６６】
（付記８）情報送信手段は、経路制御装置とのコネクション確立時に、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する付記７に記載のパケット転送装置。
【０１６７】
（付記９）受信したパケットを転送する複数のパケット転送装置が、それぞれ、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信し、各パケット転送装置を制御する経路制御装置が、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶手段に記憶させ、パケット転送装置が、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信し、経路制御装置が、前記新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶させた情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定し、判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算し、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成し、前記通信経路上のパケット転送装置毎に、生成したパケット転送ルールを送信することを特徴とする経路制御方法。
【０１６８】
（付記１０）各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御するコンピュータに搭載される経路制御プログラムであって、前記コンピュータに、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶手段に記憶させる情報登録処理、パケット転送装置から、当該パケット転送装置が受信した新規フローのパケットに関する情報と、当該パケット転送装置の識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶手段に記憶させた情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定処理、リンク種別判定処理で判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算処理、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成処理、および、前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信処理
を実行させるための経路制御プログラム。
【０１６９】
（付記１１）コンピュータに、新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析処理を実行させ、
経路計算処理で、リンク種別判定処理で判定されたリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算させる付記１０に記載の経路制御プログラム。
【０１７０】
（付記１２）経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するコンピュータに搭載されるパケット転送装置用プログラムであって、前記コンピュータに、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信処理、および、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知処理を実行させるためのパケット転送装置用プログラム。
【０１７１】
（付記１３）コンピュータに、経路制御装置とのコネクション確立時に情報送信処理を実行させる付記１２に記載のパケット転送装置用プログラム。
【０１７２】
（付記１４）受信したパケットを転送する複数のパケット転送装置と、各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置とを備え、各パケット転送装置は、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信部と、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知部とを含み、経路制御装置は、各パケット転送装置の情報送信部から受信した情報を記憶するパケット転送装置情報記憶部と、パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶部と、パケット転送装置から新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶部に記憶された情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定部と、リンク種別判定部が判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算部と、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成部と、前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信部とを含むことを特徴とする通信システム。
【０１７３】
（付記１５）各パケット転送装置の情報送信部は、経路制御装置とのコネクション確立時に、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する付記１４に記載の通信システム。
【０１７４】
（付記１６）経路制御装置は、新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析部を備え、経路計算部は、リンク種別判定部が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算する付記１４に記載の通信システム。
【０１７５】
（付記１７）経路制御装置は、新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末で用いられるアプリケーションソフトウェアの種類を解析する解析部を備え、経路計算部は、リンク種別判定部が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末で用いられるアプリケーションソフトウェアの種類に応じた通信経路を計算する付記１４に記載の通信システム。
【０１７６】
（付記１８）各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御する経路制御装置であって、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とを記憶するパケット転送装置情報記憶部と、パケット転送装置の各ポートに接続されるリンクの種別毎に、パケット転送装置のトポロジー情報を記憶するトポロジー情報記憶部と、パケット転送装置から、当該パケット転送装置が受信した新規フローのパケットに関する情報と、当該パケット転送装置の識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶部に記憶された情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定部と、リンク種別判定部が判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算部と、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成部と、前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信部とを備えることを特徴とする経路制御装置。
【０１７７】
（付記１９）新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析部を備え、経路計算部は、リンク種別判定部が判定したリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算する付記１８に記載の経路制御装置。
【０１７８】
（付記２０）経路制御装置が生成したパケット転送ルールに従って、受信したパケットを転送するパケット転送装置であって、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する情報送信部と、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信する新規フロー検出通知部とを備えることを特徴とするパケット転送装置。
【０１７９】
（付記２１）情報送信部は、経路制御装置とのコネクション確立時に、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信する付記２０に記載のパケット転送装置。
【０１８０】
（付記２２）受信したパケットを転送する複数のパケット転送装置が、それぞれ、少なくとも、自ノードの識別子と、自ノードの各ポートのポート識別子と、自ノードの各ポートに接続されるリンクの種別とを経路制御装置に送信し、各パケット転送装置を制御する経路制御装置が、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶部に記憶させ、パケット転送装置が、受信したパケットに適合するパケット転送ルールを保持していない場合に、前記パケットに関する情報と、自ノードの識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を経路制御装置に送信し、経路制御装置が、前記新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶部に記憶させた情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定し、判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算し、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成し、前記通信経路上のパケット転送装置毎に、生成したパケット転送ルールを送信することを特徴とする経路制御方法。
【０１８１】
（付記２３）各パケット転送装置にパケット転送ルールを設定することによりパケットの通信経路を制御するコンピュータに搭載される経路制御プログラムであって、
前記コンピュータに、パケット転送装置毎に、少なくとも、パケット転送装置の識別子と、パケット転送装置の各ポートのポート識別子と、パケット転送装置の各ポートに接続されるリンクの種別とをパケット転送装置情報記憶部に記憶させる情報登録処理、パケット転送装置から、当該パケット転送装置が受信した新規フローのパケットに関する情報と、当該パケット転送装置の識別子と、前記パケットを受信したポートのポート識別子とを含む新規フロー検出通知を受信したときに、当該新規フロー検出通知に含まれる前記パケット転送装置の識別子およびポート識別子と、パケット転送装置情報記憶部に記憶させた情報とに基づいて、前記パケット転送装置が受信したパケットが通過するリンクの種別を判定するリンク種別判定処理、リンク種別判定処理で判定したリンクの種別に関するトポロジー情報に基づいて、前記パケットの通信経路を計算する経路計算処理、前記通信経路上のパケット転送装置毎にパケット転送ルールを生成するルール生成処理、および、前記通信経路上のパケット転送装置毎に、生成されたパケット転送ルールを送信するルール送信処理を実行させるための経路制御プログラム。
【０１８２】
（付記２４）コンピュータに、新規フロー検出通知に含まれるパケットに関する情報に基づいて、前記パケットを送受信する通信端末の特徴を解析する解析処理を実行させ、
経路計算処理で、リンク種別判定処理で判定されたリンクの種別に関するトポロジー情報に基づいて、前記通信端末の特徴に応じた通信経路を計算させる付記２３に記載の経路制御プログラム。
【０１８３】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１８４】
この出願は、２０１０年３月５日に出願された日本特許出願２０１０−０４８８８４を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用の可能性】
【０１８５】
本発明は、パケットを転送する複数のパケット転送装置と、各パケット転送装置を制御してフローの経路を制御する経路制御装置とを備える通信システムに好適に適用可能である。
【符号の説明】
【０１８６】
１０  経路制御装置
２０〜２５  パケット転送装置
３１  トポロジー情報記憶手段
３２  トポロジー情報登録手段
３３  通信端末位置管理手段
３４  パケット転送ルール生成手段
３５  経路計算手段
３６  ルール設定内容記憶手段
３７  パケット転送装置管理手段
３８  パケット転送装置情報記憶手段
３９  解析用情報記憶手段
４１  ルールテーブル記憶手段
４２  ルール管理手段
４３  フロー特定手段
４４  アクション実行手段
４５  初期設定処理手段
４６  トポロジー決定用情報提供手段
【図１】
2011108205.tif 000003
【図２】
2011108205.tif 000004
【図３】
2011108205.tif 000005
【図４】
2011108205.tif 000006
【図５】
2011108205.tif 000007
【図６】
2011108205.tif 000008
【図７】
2011108205.tif 000009
【図８】
2011108205.tif 000010
【図９】
2011108205.tif 000011
【図１０】
2011108205.tif 000012
【図１１】
2011108205.tif 000013
【図１２】
2011108205.tif 000014
【図１３】
2011108205.tif 000015
【国際調査報告】
2011108205.tif 000016
2011108205.tif 000017
2011108205.tif 000018
2011108205.tif 000019