(57)【要約】【課題】種類の異なる無線通信ネットワークを跨るハンドオーバを適切な条件を契機に行うことができる通信システムを提供する。【解決手段】パケット転送手段９２は、パケットを転送する。位置計測手段９４は、パケット転送手段９２の位置を計測する。複数の通信インタフェース９３は、互いに異なる無線通信ネットワークに対応している。制御手段９１は、パケット転送手段９２がパケットを出力すべき通信インタフェース９３を規定したールを生成することによって、パケット転送手段９２を制御する。パケット転送手段９２は、ルールに従って、パケットをルールで規定された通信インタフェース９３から出力する。制御手段９１は、少なくとも、位置計測手段９４によって計測された位置に基づいて、ルールで規定されている通信インタフェースを更新する。【選択図】図２２
2015154398.tif 000002
【特許請求の範囲】
【請求項１】
パケットを転送するパケット転送手段と、
前記パケット転送手段の位置を計測する位置計測手段と、
互いに異なる無線通信ネットワークに対応する複数の通信インタフェースと、
前記パケット転送手段がパケットを出力すべき通信インタフェースを規定したールを生成することによって、前記パケット転送手段を制御する制御手段とを備え、
前記パケット転送手段は、
前記ルールに従って、パケットを前記ルールで規定された通信インタフェースから出力し、
制御手段は、
少なくとも、前記位置計測手段によって計測された位置に基づいて、前記ルールで規定されている通信インタフェースを更新する
ことを特徴とする通信システム。
【請求項２】
通信インタフェースに対応する無線通信ネットワークの通信品質を計測する通信品質計測手段を備え、
制御手段は、少なくとも、位置計測手段によって計測された位置と、前記通信品質計測手段によって計測された無線通信ネットワークの通信品質とに基づいて、ルールで規定されている通信インタフェースを更新する
請求項１に記載の通信システム。
【請求項３】
制御手段は、位置計測手段によって計測された位置と、少なくとも、天候、時間帯、曜日、日付、パケット転送手段の移動経路近傍で開催されるイベントの有無の一部または全部とに基づいて、ルールで規定されている通信インタフェースを更新する
請求項１または請求項２に記載の通信システム。
【請求項４】
制御手段は、ルールを更新する条件と、当該条件が満たされたときのルールの更新内容とを表す更新情報を提供する制御装置から前記更新情報を受信し、前記更新情報に従って、ルールで規定されている通信インタフェースを更新する
請求項１から請求項３のうちのいずれか１項に記載の通信システム。
【請求項５】
パケット転送手段、位置計測手段、複数の通信インタフェース、および制御手段がルータに設けられ、
前記ルータは、乗り物に設置される
請求項１から請求項４のうちのいずれか１項に記載の通信システム。
【請求項６】
互いに異なる無線通信ネットワークに対応する複数の通信インタフェースからパケットを出力することによってパケットを転送するパケット転送手段に対して、パケットを出力すべき通信インタフェースを規定したールを設定することで、制御手段が、前記パケット転送手段を制御し、
前記パケット転送手段が、前記ルールに従って、パケットを前記ルールで規定された通信インタフェースから出力し、
位置計測手段が、前記パケット転送手段の位置を計測し、
制御手段が、少なくとも、前記位置計測手段によって計測された位置に基づいて、前記ルールで規定されている通信インタフェースを更新する
ことを特徴とする通信方法。
【請求項７】
通信品質計測手段が、通信インタフェースに対応する無線通信ネットワークの通信品質を計測し、
制御手段が、少なくとも、位置計測手段によって計測された位置と、前記通信品質計測手段によって計測された無線通信ネットワークの通信品質とに基づいて、ルールで規定されている通信インタフェースを更新する
請求項６に記載の通信方法。
【請求項８】
パケットを転送するパケット転送手段と、前記パケット転送手段の位置を計測する位置計測手段と、互いに異なる無線通信ネットワークに対応する複数の通信インタフェースと、前記パケット転送手段がパケットを出力すべき通信インタフェースを規定したールを生成することによって、前記パケット転送手段を制御する制御手段とを備えたコンピュータに搭載される通信プログラムであって、
前記コンピュータに、
前記パケット転送手段が、前記ルールに従って、パケットを前記ルールで規定された通信インタフェースから出力する出力処理、および
前記制御手段が、少なくとも、前記位置計測手段によって計測された位置に基づいて、前記ルールで規定されている通信インタフェースを更新するルール更新処理
を実行させるための通信プログラム。
【請求項９】
コンピュータに、
通信インタフェースに対応する無線通信ネットワークの通信品質を計測する通信品質計測処理を実行させ、
ルール更新処理で、制御手段が、少なくとも、位置計測手段によって計測された位置と、前記通信品質計測処理で計測された無線通信ネットワークの通信品質とに基づいて、ルールで規定されている通信インタフェースを更新する処理を実行させる
請求項８に記載の通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、通信方法および通信プログラムに関し、特に、ハンドオーバを行う通信システム、および、その通信システムに適用される通信方法、通信プログラムに関する。
【背景技術】
【０００２】
ハンドオーバ方法の例が特許文献１に記載されている。特許文献１に記載されたハンドオーバ方法では、基地局がハンドオーバ要求におけるハンドオーバ原因に応じて、ユーザ装置の通信条件に適合するＲＡＴ（Radio Access Technology ：モバイル通信方式）および対応する搬送波周波数を確定してユーザ装置に通知する。そして、ユーザ装置は、通知されたＲＡＴおよび搬送波周波数に対してサービス品質検証を行い、現在の通信のサービス品質より優れている場合、そのＲＡＴに対応する搬送波周波数にハンドオーバする。
【０００３】
また、パケットを転送するスイッチを制御装置が制御するプロトコルとして、オープンフロー（ＯｐｅｎＦｌｏｗ）が知られている。オープンフローは、非特許文献１で規定されている。
【０００４】
オープンフローでは、制御装置がスイッチにフローエントリを設定する。そして、スイッチは、受信したパケットをそのフローエントリに従って処理する。フローエントリとは、パケットをどのように処理するか（例えば、転送、廃棄等）を規定した情報である。フローエントリは、パケットのフロー毎に設定される。スイッチがパケットを受信したときに、そのパケットのフローに対応するフローエントリが存在する場合、スイッチは、そのフローエントリに従ってそのパケットを処理する。一方、受信したパケットのフローに対応するフローエントリが存在しない場合、スイッチはその旨を制御装置に通知する。そして、制御装置は、そのパケットのフローに対応するフローエントリを決定し、スイッチに設定する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２０１３−５３１９２８号公報
【非特許文献】
【０００６】
【非特許文献１】“OpenFlow Switch Specification Version 1.0.0 (Wire Protocol 0x01)”、２００９年１２月３１日、［平成２６年１月２８日検索］、インターネット<http://www.openflow.org/documents/openflow-spec-v1.0.0.pdf>
【発明の概要】
【発明が解決しようとする課題】
【０００７】
乗り物に乗車しているユーザが、例えば、その乗り物に設けられているルータを介して乗り物の外部のサーバ等と通信を行う場合、乗り物の移動に伴い、そのルータのハンドオーバが発生する。このとき、種類の異なる無線通信ネットワークを跨るハンドオーバを適切な条件を契機に行えることが好ましい。
【０００８】
そこで、本発明は、種類の異なる無線通信ネットワークを跨るハンドオーバを適切な条件を契機に行うことができる通信システム、および、その通信システムに適用される通信方法、通信プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明による通信システムは、パケットを転送するパケット転送手段と、パケット転送手段の位置を計測する位置計測手段と、互いに異なる無線通信ネットワークに対応する複数の通信インタフェースと、パケット転送手段がパケットを出力すべき通信インタフェースを規定したールを生成することによって、パケット転送手段を制御する制御手段とを備え、パケット転送手段が、ルールに従って、パケットをルールで規定された通信インタフェースから出力し、制御手段が、少なくとも、位置計測手段によって計測された位置に基づいて、ルールで規定されている通信インタフェースを更新することを特徴とする。
【００１０】
また、本発明による通信方法は、互いに異なる無線通信ネットワークに対応する複数の通信インタフェースからパケットを出力することによってパケットを転送するパケット転送手段に対して、パケットを出力すべき通信インタフェースを規定したールを設定することで、制御手段が、パケット転送手段を制御し、パケット転送手段が、ルールに従って、パケットをルールで規定された通信インタフェースから出力し、位置計測手段が、パケット転送手段の位置を計測し、制御手段が、少なくとも、位置計測手段によって計測された位置に基づいて、ルールで規定されている通信インタフェースを更新することを特徴とする。
【００１１】
また、本発明による通信プログラムは、パケットを転送するパケット転送手段と、パケット転送手段の位置を計測する位置計測手段と、互いに異なる無線通信ネットワークに対応する複数の通信インタフェースと、パケット転送手段がパケットを出力すべき通信インタフェースを規定したールを生成することによって、パケット転送手段を制御する制御手段とを備えたコンピュータに搭載される通信プログラムであって、コンピュータに、パケット転送手段が、ルールに従って、パケットをルールで規定された通信インタフェースから出力する出力処理、および、制御手段が、少なくとも、位置計測手段によって計測された位置に基づいて、ルールで規定されている通信インタフェースを更新するルール更新処理を実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、種類の異なる無線通信ネットワークを跨るハンドオーバを適切な条件を契機に行うことができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の通信システムの構成例を示すブロック図である。
【図２】通信部が複数の通信インタフェースからパケットを出力する例を示す模式図である。
【図３】制御部がルータの外部に設けられた構成例を示すブロック図である。
【図４】ルータ内の制御部とは別にルータの外部に制御装置を設けた構成例を示すブロック図である。
【図５】本発明の第２の実施形態の通信システムの構成例を示すブロック図である。
【図６】第２の実施形態におけるルータの処理経過の例を示すフローチャートである。
【図７】通信部が各フローのパケットを出力する例を示す模式図である。
【図８】通信品質計測部を備える構成例を示すブロック図である。
【図９】本発明の第３の実施形態の通信システムの構成例を示すブロック図である。
【図１０】第３の実施形態におけるルータの処理経過の例を示すフローチャートである。
【図１１】ステップＳ３４での通信部の処理経過の例を示すフローチャートである。
【図１２】ステップＳ３４での通信部の処理経過の例を示すフローチャートである。
【図１３】複数の通信インタフェースが同一のパケットを出力する状況を示す模式図である。
【図１４】パケットの宛先となるサーバの構成例を示すブロック図である。
【図１５】本発明の第４の実施形態の通信システムの構成例を示すブロック図である。
【図１６】第４の実施形態におけるルータの処理経過の例を示すフローチャートである。
【図１７】本発明の第５の実施形態の通信システムの構成例を示すブロック図である。
【図１８】第５の実施形態におけるフローエントリ設定時の処理経過の例を示すフローチャートである。
【図１９】フローエントリを更新する動作の例を示すフローチャートである。
【図２０】フローエントリの更新の具体例を示す模式図である。
【図２１】通信品質計測部等を備える構成例を示すブロック図である。
【図２２】本発明の通信システムの概要を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態を図面を参照して説明する。
【００１５】
実施形態１．
図１は、本発明の通信システムの構成例を示すブロック図である。図１では、通信システム１がルータである場合を例にして説明する。以下、通信システム１をルータ１と記す場合がある。ルータ１は、ユーザが使用する端末装置２０から受信したパケットをサーバ（図示略。）に送信する等のパケットの中継処理を行う。
【００１６】
ルータ１は、通信部１２と、制御部１１と、複数の通信インタフェース１０ａ，１０ｂとを備える。なお、個々の通信インタフェース１０ａ，１０ｂを区別しない場合には、通信インタフェース１０と記す。また、図１では、２つの通信インタフェース１０ａ，１０ｂを図示しているが、通信インタフェース１０の数は２つに限定されず、３つ以上であってもよい。
【００１７】
個々の通信インタフェース１０ａ，１０ｂは、互いに異なる無線通信ネットワークに対応している。例えば、通信インタフェース１０ａは、ＵＴＲＡＮ（Universal Terrestrial Radio Access Network）の無線通信ネットワークに対応し、通信インタフェース１０ｂは、ＷｉＭＡＸ（Worldwide Interoperability for Microwave Access 、登録商標）の無線通信ネットワークに対応する。ただし、ＵＴＲＡＮやＷｉＭＡＸは例示であり、ＬＴＥ（Long Term Evolution ）等の他の規格の無線通信ネットワークに対応する通信インタフェース１０が設けられていてもよい。
【００１８】
通信部１２は、端末装置２０から受信したパケットをサーバ（図示略。）に転送する。同様に、通信部１２は、サーバから受信したパケットも端末装置２０に転送するが、ここでは、端末装置２０から受信したパケットをサーバに転送する時の動作を中心に説明する。
【００１９】
制御部１１は、通信部１２を制御する。例えば、制御部１１は、オープンフローに従って通信部１２を制御してもよい。例えば、通信部１２は、フローエントリに合致しないパケットを受信した場合、そのパケットを制御部１１に送り、そのパケットに対応するフローのフローエントリの生成を制御部１１に要求し、制御部１１は、要求に応じて生成したフローエントリを通信部１２に設定し、通信部１２にパケットを返す。通信部１２は、そのフローエントリに従って、そのフローのパケットに対する処理を実行してもよい。この場合、通信部１２は、オープンフローにおけるスイッチに相当し、制御部１１は、オープンフローにおける制御装置に相当する。また、フローエントリは、通信部１２の動作を規定したルールであるということができる。
【００２０】
制御部１１は、端末装置２０の通信のフローに関して、通信部１２が少なくとも２つ以上の通信インタフェースからパケットを出力するように、通信部１２を制御する。
【００２１】
なお、制御部１１および通信部１２は、例えば、通信プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、例えば、コンピュータのプログラム記憶装置等のプログラム記録媒体に通信プログラムを記憶させておく。そして、ＣＰＵがその通信プログラムを読み込み、通信プログラムに従って制御部１１および通信部１２として動作すればよい。
【００２２】
また、制御部１１および通信部１２が別々のハードウェアで実現されていてもよい。後述するように、制御部１１がルータ１の外部に設けられている構成であってもよい。
【００２３】
図２は、通信部１２が複数の通信インタフェース１０からパケットを出力する例を示す模式図である。図２に示す例では、通信部１２は、通信インタフェース１０ａからパケットを出力するとともに（ステップＳ１）、通信インタフェース１０ｂからもパケットを出力する（ステップＳ２）。通信インタフェース１０ａから出力されたパケットは、例えば、ＵＴＲＡＮの無線通信ネットワークを介して宛先（サーバ）に到達する。また、通信インタフェース１０ｂから出力されたパケットは、例えば、ＷｉＭＡＸの無線通信ネットワークを介して宛先（サーバ）に到達する。
【００２４】
従って、ルータ１は、複数の無線通信ネットワークを同時に利用できる。そして、その結果、本発明によれば、複数の無線通信ネットワークを有効に利用できる。
【００２５】
一般的な通信装置では、１つの無線通信ネットワークを選択した場合、その無線通信ネットワークだけを用いて通信を行い、他の無線通信ネットワークを利用しない。これに対して、本実施形態では、ルータ１は、上記のように、複数の無線通信ネットワークを有効に利用できる。
【００２６】
図２に示す例において、通信インタフェース１０ａ，１０ｂから出力されるパケットは、同一フローのパケットであってもよく、あるいは、異なるフローのパケットであってもよい。また、端末装置２０は、複数台存在していてもよい。制御部１１がどのようなルール（フローエントリ）を生成するかに関しては、予め定められている。制御部１１が通信部１２を制御する具体的な態様については、後述の各実施形態で説明する。
【００２７】
次に、制御部１１の配置の他の例について説明する。図３は、制御部１１がルータ１の外部に設けられた構成例を示すブロック図である。図３に示すように、制御部１１がルータ１の外部に設けられている構成であってもよい。図３に示す構成例では、制御部１１は、例えば、データセンタ（図示略。）に配置される。ただし、図３に示す構成例では、通信部１２と、制御部１１とが通信を行う必要がある。ここで、通信部１２と制御部１１との通信が断となると、通信部１２は、制御部１１からの制御を受けられなくなってしまう。そのため、制御部１１がルータ１に設けられる構成が好ましい。
【００２８】
また、図４は、ルータ１内の制御部１１とは別に、ルータ１の外部に制御装置１５を設けた構成例を示すブロック図である。図４に示すように、制御部１１とは別にルータ１の外部に制御装置１５が設けられていてもよい。制御装置１５は、例えば、データセンタ（図示略。）に配置される。制御装置１５は、制御部１１がどのようなルール（フローエントリ）を生成すべきかを定めた情報（以下、この情報をルール生成情報と記す。）をルータ１内の制御部１１に送信する。制御部１１は、そのルール生成情報を受信し、ルール生成情報に基づいて、通信部１２の動作を規定したルール（フローエントリ）を生成する。図４に示す構成によれば、一旦、制御装置１５がルール生成情報を制御部１１に送信すれば、その後、制御装置１５と制御部１１との通信が断となったとしても、制御部１１は、フローエントリを生成することができる。なお、制御部１１は、一部のフローエントリに関しては、ルール生成情報に依存せずに生成してもよい。
【００２９】
実施形態２．
図５は、本発明の第２の実施形態の通信システムの構成例を示すブロック図である。第１の実施形態における構成要素と同様の構成要素については、図１や図４と同一の符号を付し、詳細な説明を省略する。図５では、ルータ１が３つの通信インタフェース１０ａ，１０ｂ，１０ｃを備えている場合を例示しているが、通信インタフェース１０の数は、２つであってもよく、あるいは、４つ以上であってもよい。本実施形態では、通信インタフェース１０ａがＵＴＲＡＮの無線通信ネットワークに対応し、通信インタフェース１０ａがＷｉＭＡＸの無線通信ネットワークに対応し、通信インタフェース１０ｃがＬＴＥの無線通信ネットワークに対応している場合を例にして説明する。
【００３０】
また、図５では、３台の端末装置２０ａ，２０ｂ，２０ｃを図示しているが、端末装置２０の台数は特に限定されない。なお、個々の端末装置２０ａ〜２０ｃを区別しない場合には、端末装置２０と記す。
【００３１】
また、制御装置１５は、制御部１１がどのようなルール（フローエントリ）を生成すべきかを定めたルール生成情報を予め制御部１１に送信し、制御部１１はそのルール生成情報を受信する。そして、制御部１１は、ルール生成情報に基づいてフローエントリを生成する。
【００３２】
なお、制御部１１がどのようなルール（フローエントリ）を生成するかに関して、ルータ１の管理者が直接、制御部１１に設定する態様であってもよい。この場合、制御装置１５が設けられていなくてもよい。また、制御部１１が、ルータ１の外部に設けられていてもよい。これらの点は、後述の第３の実施形態や第４の実施形態でも同様である。
【００３３】
通信部１２は、フローエントリに合致しないパケット（すなわち、新たに発生したフローのパケット）をいずれかの端末装置２０から受信した場合、そのパケットを制御部１１に送り、そのパケットに対応する新たなフローのフローエントリの生成を制御部１１に要求する。
【００３４】
制御部１１は、その要求を通信部１２から受けると、その新たなフローのパケットの出力先となる通信インタフェース１０を決定する。そして、制御部１１は、通信部１２から送られたパケットのヘッダから定まるフローの識別情報を条件とし、決定した通信インタフェース１０からパケットを出力することをアクションとして定めたフローエントリを生成し、通信部１２にそのフローエントリを設定する。
【００３５】
制御部１１は、例えば、ラウンドロビン方式を採用して、新たなフローのパケットの出力先となる通信インタフェース１０を決定してもよい。例えば、制御部１１は、新しいフローが発生する毎に、その新たなフローのパケットの出力先となる通信インタフェース１０を、通信インタフェース１０ａ、通信インタフェース１０ｂ、通信インタフェース１０ｃ、通信インタフェース１０ａ、通信インタフェース１０ｂ、通信インタフェース１０ｃ、・・・の順に規則的に決定してもよい。以下の説明では、説明を簡単にするために、制御部１１が、ラウンドロビン方式を採用して、フロー毎に、パケットの出力先となる通信インタフェース１０を順番に割り当てる場合を例にして説明する。ただし、後述するように、制御部１１は、ラウンドロビン方式以外の方法で、パケットの出力先となる通信インタフェース１０を決定してもよい。
【００３６】
なお、フローのパケットの出力先となる通信インタフェース１０を定めるということは、そのフローとその通信インタフェース１０とを対応づけていることであると言うことができる。
【００３７】
図６は、第２の実施形態におけるルータ１の処理経過の例を示すフローチャートである。通信部１２は、端末装置２０からパケットを受信すると、そのパケットに合致するフローエントリが通信部１２に設定されているか否かを判定する（ステップＳ１１）。具体的には、通信部１２は、受信したパケットのヘッダから特定されるフローの識別情報に合致するフローエントリが通信部１２に設定されているか否かを判定する。
【００３８】
受信したパケットに合致するフローエントリが設定されていないということは、新たなフローが生じたことを意味する。この場合（ステップＳ１１のＮｏ）、通信部１２は、そのパケットを制御部１１に送り、その新たなフローに対するフローエントリの生成を要求する（ステップＳ１２）。
【００３９】
すると、制御部１１は、その新たなフローのパケットの出力先となる通信インタフェース１０を決定する。本例では、制御部１１は、ラウンドロビン方式によってフロー毎に通信インタフェース１０を決定する。従って、前回のステップＳ１３で、パケット出力先として通信インタフェース１０ａを決定していた場合、制御部１１は、今回のステップＳ１３では、パケット出力先として通信インタフェース１０ｂを決定する。また、前回のステップＳ１３で、パケット出力先として通信インタフェース１０ｂを決定していた場合、制御部１１は、今回のステップＳ１３では、パケット出力先として通信インタフェース１０ｃを決定する。また、前回のステップＳ１３で、パケット出力先として通信インタフェース１０ｃを決定していた場合、制御部１１は、今回のステップＳ１３では、パケット出力先として通信インタフェース１０ａを決定する。
【００４０】
そして、制御部１１は、ステップＳ１２で通信部１２から受け取ったパケットのヘッダからフローの識別情報を特定し、そのフローの識別情報を条件として、決定した通信インタフェース１０からパケットを出力することをアクションとして定めたフローエントリを生成する（ステップＳ１３）。制御部１１は、このフローエントリを通信部１２に設定し、また、パケットを通信部１２に返す。
【００４１】
制御装置１５は、ステップＳ１３における制御部１１の動作を定めた情報を、ルール生成情報として、事前に制御部１１に送信しておけばよい。
【００４２】
通信部１２は、制御部１１から返されたパケットを、ステップＳ１３で設定されたフローエントリに従って送信する（ステップＳ１４）。すなわち、通信部１２は、そのパケットを、制御部１１がパケット出力先として決定した通信インタフェース１０から出力する。
【００４３】
また、受信したパケットに合致するフローエントリが設定されている場合（ステップＳ１１のＹｅｓ）、通信部１２は、そのパケットをそのフローエントリに従って送信する（ステップＳ１５）。
【００４４】
従って、新たに発生したフローに対してステップＳ１３でフローエントリが設定された後、そのフローにおける後続のパケットを通信部１２が受信した場合、通信部１２は、そのフローエントリに従って、そのパケットを出力すればよい（ステップＳ１５）。
【００４５】
個々の端末装置２０がサーバ等と通信を行うことで複数のフローが発生する。仮に、端末装置１台当たりのフロー数がｎであるとする。図５に示すように、３台の端末装置２０ａ，２０ｂ，２０ｃが存在しているとするとフロー数は３ｎとなる。これらのフローを発生順にフロー１、フロー２、・・・、フロー３ｎとする。図７は、通信部１２が各フローのパケットを出力する例を示す模式図である。なお、個々のフローのフローエントリは既に設定されているものとする。
【００４６】
各フロー１，４，・・・，３ｎ−２のパケットの出力先は、通信インタフェース１０ａであると規定される。従って、通信部１２は、フロー１，４，・・・，３ｎ−２のいずれかのパケットを端末装置２０から受信した場合、そのパケットを通信インタフェース１０ａから出力する（ステップＳ２１）。このパケットは、ＵＴＲＡＮの無線通信ネットワークを介して宛先に到達する。
【００４７】
また、各フロー２，５，・・・，３ｎ−１のパケットの出力先は、通信インタフェース１０ｂであると規定される。従って、通信部１２は、フロー２，５，・・・，３ｎ−１のいずれかのパケットを端末装置２０から受信した場合、そのパケットを通信インタフェース１０ｂから出力する（ステップＳ２２）。このパケットは、ＷｉＭＡＸの無線通信ネットワークを介して宛先に到達する。
【００４８】
また、各フロー３，６，・・・，３ｎのパケットの出力先は、通信インタフェース１０ｃであると規定される。従って、通信部１２は、フロー３，６，・・・，３ｎのいずれかにのパケットを端末装置２０から受信した場合、そのパケットを通信インタフェース１０ｃから出力する（ステップＳ２３）。このパケットは、ＬＴＥの無線通信ネットワークを介して宛先に到達する。
【００４９】
従って、ルータ１は、複数のフローのパケットを、複数の無線通信ネットワークを同時に利用して、転送することができる。そのため、フローが多数発生する場合であっても、各フローのパケットを、フロー毎に複数の無線通信ネットワークに振り分けて転送することが可能となり、高速通信を実現できる。
【００５０】
第２の実施形態では、制御部１１がパケットの出力先となる通信インタフェース１０を決定する際にラウンドロビン方式を採用する場合を例にして説明した。ラウンドロビン方式を採用する場合、各通信インタフェース１０ａ，１０ｂ，１０ｃに振り分けられるフロー数は均等になる。制御部１１は、パケットの出力先となる通信インタフェース１０を他の態様で決定してもよい。
【００５１】
例えば、特定の通信インタフェース１０の使用優先度を高くして、その特定の通信インタフェース１０に対応付けられるフローを、他の通信インタフェース１０に対応付けられるフローよりも多くなるように、制御部１１がパケットの出力先となる通信インタフェース１０を決定してもよい。例えば、通信インタフェース１０ａに対応する無線ネットワークの通信品質が他の無線ネットワークの通信品質に比べて高いということが分かっているとする。この場合、新たに生じたフローのパケットの出力先となる通信インタフェース１０を制御部１１が確率的に選択し、選択した通信インタフェース１０をそのパケットの出力先として決定すればよい。そして、このとき、特定の通信インタフェース１０ａの選択確率を、通信インタフェース１０ｂ，１０ｃそれぞれの選択確率よりも高く設定しておけばよい。
【００５２】
さらに、図８に示すように、ルータ１が、各通信インタフェース１０ａ，１０ｂ，１０ｃに対応する各無線通信ネットワークの通信品質を計測する通信品質計測部１８を備える構成であってもよい。そして、制御部１１は、通信品質計測部１８によって計測された各無線通信ネットワークの通信品質に応じて、各無線通信ネットワークに対応する各通信インタフェース１０ａ，１０ｂ，１０ｃの選択確率を調整してもよい。例えば、通信品質計測部１８による計測結果によって通信インタフェース１０ａに対応する無線通信ネットワークの通信品質が他の無線ネットワークよりも良好であることが分かった場合、制御部１１は、通信インタフェース１０ａの選択確率を、通信インタフェース１０ｂ，１０ｃそれぞれの選択確率よりも高く設定すればよい。なお、通信品質計測部１８は、例えば、通信プログラムに従って動作するコンピュータのＣＰＵによって実現される。また、通信品質計測部１８は、他の構成要素とは別個のハードウェアとして実現されていてもよい。
【００５３】
また、図８に示す構成において、ある通信インタフェース１０（ここでは、通信インタフェース１０ｂとする。）に対応する無線通信ネットワークの通信品質が基準を満たさないことが明らかになったとする。この場合、制御部１１は、通信インタフェース１０ｂに対応付けられていた各フローのフローエントリを通信部１２から削除してもよい。この結果、それらのフローのパケットを通信部１２が端末装置２０から受信した場合、通信部１２は制御部１１にフローエントリの生成を要求するが、このとき、制御部１１は、パケットの出力先となる通信インタフェース１０を、通信インタフェース１０ｂ以外から決定する。このような動作により、複数の通信ネットワークのうち、通信品質が基準を満たしている通信ネットワークに各フローを振り分けることができる。
【００５４】
実施形態３．
図９は、本発明の第３の実施形態の通信システムの構成例を示すブロック図である。第１の実施形態や第２の実施形態における構成要素と同様の構成要素については、図１、図４、図５と同一の符号を付し、詳細な説明を省略する。ただし、制御部１１が生成するフローエントリの内容は、第２の実施形態とは異なる。
【００５５】
第２の実施形態と同様に、通信インタフェース１０ａがＵＴＲＡＮの無線通信ネットワークに対応し、通信インタフェース１０ａがＷｉＭＡＸの無線通信ネットワークに対応し、通信インタフェース１０ｃがＬＴＥの無線通信ネットワークに対応している場合を例にして説明する。なお、第２の実施形態と同様に、通信インタフェース１０の数は、２つであってもよく、あるいは、４つ以上であってもよい。
【００５６】
第２の実施形態と同様に、制御装置１５は、ルール生成情報を予め制御部１１に送信し、制御部１１はそのルール生成情報を受信する。そして、制御部１１は、ルール生成情報に基づいてフローエントリを生成する。
【００５７】
また、第３の実施形態では、端末装置２０は、同一のフローの各パケットに対してそれぞれシーケンス番号を付加し、シーケンス番号を付加したパケットをルータ１の通信部１２に送信する。シーケンス番号を付加する態様は特に限定されない。
【００５８】
通信部１２は、フローエントリに合致しないパケット（すなわち、新たに発生したフローのパケット）を端末装置２０から受信した場合、そのパケットに対応する新たなフローのフローエントリの生成を制御部１１に要求する。
【００５９】
制御部１１は、その要求を通信部１２から受けると、その新たなフローに対応するフローエントリを生成する。具体的には、そのフローのパケットが各通信インタフェース１０ａ，１０ｂ，１０ｃから出力されることを規定したフローエントリを生成し、通信部１２にそのフローエントリを設定する。このフローエントリが設定されることによって、フローにおける任意のパケットをパケットＡとすると、パケットＡは、通信インタフェース１０ａ，１０ｂ，１０ｃからそれぞれ出力されることになる。
【００６０】
以下、第３の実施形態におけるフローエントリの例を説明する。
【００６１】
第３の実施形態におけるフローエントリの一例として、以下のフローエントリが挙げられる。このフローエントリでは、通信部１２から送られたパケットのヘッダから定まるフローの識別情報を条件とする。そして、このフローエントリでは、その条件に合致するパケットのコピーを作成することによって、その条件に合致するパケットと同一のパケットを通信インタフェース１０の数（本例では３つ）と同数揃え、そのパケットをそれぞれ個々の通信インタフェース１０ａ，１０ｂ，１０ｃから出力することをアクションとして規定する。制御部１１は、通信部１２からのフローエントリの設定要求に応じて、このようなフローエントリを生成し、通信部１２に設定してもよい。以下、このようなフローエントリを第１タイプのフローエントリと記す。
【００６２】
また、第３の実施形態におけるフローエントリの他の例として、以下のフローエントリが挙げられる。以下に示すフローエントリを第２タイプのフローエントリと記す。制御部１１は、個々の通信インタフェース１０ａ，１０ｂ，１０ｃ毎に、パケットを出力することを定めたフローエントリを別々に作成し、そのフローエントリの集合を第２タイプのフローエントリとする。また、通信部１２は、第２タイプのフローエントリに属する各フローエントリのうち、通信インタフェース１０ａからパケットを出力することを定めたフローエントリを格納するテーブル（第１テーブルと記す。）と、通信インタフェース１０ｂからパケットを出力することを定めたフローエントリを格納するテーブル（第２テーブルと記す。）と、通信インタフェース１０ｃからパケットを出力することを定めたフローエントリを格納するテーブル（第３テーブルと記す。）とを備える。
【００６３】
第２タイプのフローエントリに属する各フローエントリの条件の記述は共通であり、通信部１２から送られたパケットのヘッダから定まるフローの識別情報が条件として記述される。
【００６４】
そして、通信インタフェース１０ａからパケットを出力することを定めたフローエントリでは、条件に合致するパケットを通信インタフェース１０ａから出力するとともに、そのパケットのコピーを作成し、第２テーブルでもそのパケットに対応するフローエントリの検索を行うことがアクションとして記述される。制御部１１は、このフローエントリを生成すると、通信部１２の第１テーブルに設定する。
【００６５】
また、通信インタフェース１０ｂからパケットを出力することを定めたフローエントリでは、条件に合致するパケットを通信インタフェース１０ｂから出力するとともに、そのパケットのコピーを作成し、第３テーブルでもそのパケットに対応するフローエントリの検索を行うことがアクションとして記述される。制御部１１は、このフローエントリを生成すると、通信部１２の第２テーブルに設定する。
【００６６】
また、通信インタフェース１０ｃからパケットを出力することを定めたフローエントリでは、条件に合致するパケットを通信インタフェース１０ｃから出力することがアクションとして記述される。制御部１１は、このフローエントリを生成すると、通信部１２の第３テーブルに設定する。
【００６７】
上記のように第１テーブル、第２テーブルおよび第３テーブルに設定されるフローエントリの集合が、第２タイプのフローエントリに該当する。
【００６８】
第３の実施形態では、制御部１１は、第１タイプのフローエントリを生成しても、第２タイプのフローエントリを生成してもよい。
【００６９】
図１０は、第３の実施形態におけるルータ１の処理経過の例を示すフローチャートである。ここでは、まず、制御部１１が第１タイプのフローエントリを生成する場合を例にして説明する。
【００７０】
通信部１２は、端末装置２０からパケットを受信すると、そのパケットに合致するフローエントリが通信部１２に設定されているか否かを判定する（ステップＳ３１）。受信したパケットに合致するフローエントリが設定されていなければ（ステップＳ３１のＮｏ）、通信部１２は、そのパケットを制御部１１に送り、そのパケットに対応する新たなフローのフローエントリの生成を要求する（ステップＳ３２）。ステップＳ３１，Ｓ３２は、第２の実施形態におけるステップＳ１１，Ｓ１２（図６参照。）と同様の処理である。
【００７１】
ステップＳ３２の後、制御部１１は、通信部１２からの要求に応じてフローエントリを生成し、そのフローエントリを通信部１２に設定する（ステップＳ３３）。このとき、制御部１１は、ステップＳ３２で受け取ったパケットを通信部１２に返す。
【００７２】
本例では、制御部１１が第１タイプのフローエントリを生成する。この場合、制御部１１は、フローエントリ内の条件として、通信部１２から送られたパケットのヘッダから定まるフローの識別情報を記述する。また、制御部１１は、フローエントリ内のアクションとして、その条件に合致するパケットのコピーを作成することによって、その条件に合致するパケットと同一のパケットを通信インタフェース１０の数と同数揃え、そのパケットをそれぞれ個々の通信インタフェース１０から出力することを規定したアクションを記述する。制御部１１は、ステップＳ３３でこのフローエントリを生成し、通信部１２に設定するとともに、パケットを通信部１２に返す。
【００７３】
制御装置１５は、ステップＳ３３における制御部１１の動作を定めた情報を、ルール生成情報として、事前に制御部１１に送信しておけばよい。
【００７４】
通信部１２は、制御部１１から返されたパケットを、ステップＳ３３で設定されたフローエントリに従って送信する（ステップＳ３４）。図１１は、ステップＳ３４での通信部１２の処理経過の例を示すフローチャートである。制御部１１から返されたパケット（処理対象のパケット）は、ステップＳ３３で設定したフローエントリの条件に合致する。従って、通信部１２は、そのパケットのコピーを生成する（ステップＳ４１）。本例では、通信インタフェース１０ａ，１０ｂ，１０ｃの数に合わせてパケットが３個になるように、パケットをコピーすればよい。
【００７５】
次に、通信部１２は、３個のパケットのうち、１つのパケットを通信インタフェース１０ａから出力し（ステップＳ４２）、他の１つのパケットを通信インタフェース１０ｂから出力し（ステップＳ４３）、残りの１つのパケットを通信インタフェース１０ｃから出力する（ステップＳ４４）。すなわち、通信部１２は、同一のパケットを、通信インタフェース１０ａ〜１０ｃからそれぞれ出力する。
【００７６】
通信インタフェース１０ａから出力されたパケットは、ＵＴＲＡＮの無線通信ネットワークを介して宛先に到達する。通信インタフェース１０ｂから出力されたパケットは、ＷｉＭＡＸの無線通信ネットワークを介して宛先に到達する。通信インタフェース１０ｃから出力されたパケットは、ＬＴＥの無線通信ネットワークを介して宛先に到達する。すなわち、宛先には、複数の同一パケットがそれぞれ異なる無線通信ネットワークを経由して到達する。
【００７７】
また、受信したパケットに合致するフローエントリが設定されている場合（ステップＳ３１のＹｅｓ）、通信部１２は、そのパケットをそのフローエントリに従って送信する（ステップＳ３５）。従って、新たに発生したフローに対してステップＳ３３でフローエントリが設定された後、そのフローにおける後続のパケットを通信部１２が受信した場合、通信部１２は、そのフローエントリに従って、パケットを出力する（ステップＳ３５）。ステップＳ３５における通信部１２のパケット出力動作は、ステップＳ３４における動作（図１１参照。）と同様である。
【００７８】
従って、同一フローにおける個々のパケットはいずれも、通信インタフェース１０ａ〜１０ｃからそれぞれ出力され、複数の同一パケットがそれぞれ異なる無線通信ネットワークを経由して宛先に到達する。
【００７９】
次に、制御部１１が第２タイプのフローエントリを生成する場合を例にして説明する。以下の説明に関しても、図１０を参照して説明する。
【００８０】
制御部１１が第２タイプのフローエントリを生成する場合、通信部１２は、端末装置２０からパケットを受信すると、ステップＳ３１（図１０参照。）において、そのパケットに合致するフローエントリが通信部１２の第１テーブルに設定されているか否かを判定する。
【００８１】
受信したパケットに合致するフローエントリが第１テーブルに設定されていなければ（ステップＳ３１のＮｏ）、通信部１２は、そのパケットを制御部１１に送り、そのパケットに対応する新たなフローに対するフローエントリの生成を要求する（ステップＳ３２）。
【００８２】
続いて、制御部１１は、通信部１２からの要求に応じてフローエントリを生成し、そのフローエントリを通信部１２に設定する（ステップＳ３３）。このとき、制御部１１は、ステップＳ３２で受け取ったパケットを通信部１２に返す。
【００８３】
本例では、制御部１２は、第２タイプのフローエントリとして、３つのフローエントリを生成する。制御部１１は、この３つのフローエントリのいずれにおいても、条件として、通信部１２から送られたパケットのヘッダから定まるフローの識別情報を記述する。
【００８４】
また、通信インタフェース１０ａからパケットを出力することを規定するフローエントリ（１番目のフローエントリと記す。）では、制御部１２は、アクションとして、条件に合致するパケットを通信インタフェース１０ａから出力するとともに、そのパケットのコピーを作成し、第２テーブルでもそのパケットに対応するフローエントリの検索を行うことを記述する。
【００８５】
また、通信インタフェース１０ｂからパケットを出力することを規定するフローエントリ（２番目のフローエントリと記す。）では、制御部１２は、アクションとして、条件に合致するパケットを通信インタフェース１０ｂから出力するとともに、そのパケットのコピーを作成し、第３テーブルでもパケットに対応するフローエントリの検索を行うことを記述する。
【００８６】
また、通信インタフェース１０ｃからパケットを出力することを規定するフローエントリ（３番目のフローエントリと記す。）では、制御部１２は、アクションとして、条件に合致するパケットを通信インタフェース１０ｃから出力することを記述する。
【００８７】
そして、制御部１２は、１番目のフローエントリを制御部１２の第１テーブルに設定し、２番目のフローエントリを制御部１２の第２テーブルに設定し、３番目のフローエントリを制御部１２の第３テーブルに設定するとともに、パケットを通信部１２に返す。
【００８８】
通信部１２は、制御部１１から返されたパケットを、ステップＳ３３で設定された第２タイプのフローエントリ（具体的には、１番目のフローエントリ、２番目のフローエントリおよび３番目のフローエントリ）に従って送信する（ステップＳ３４）。図１２は、第２タイプのフローエントリが生成される場合におけるステップＳ３４での通信部１２の処理経過の例を示すフローチャートである。通信部１２は、最初に、第１テーブルに設定されたフローエントリに従って動作する。制御部１１から返されたパケット（処理対象のパケット）は、第１テーブルに設定された１番目のフローエントリの条件に合致する。従って、通信部１２は、１番目のフローエントリのアクションに従い、そのパケットのコピーを生成し（ステップＳ５１）、そのパケットを通信インタフェース１０ａから出力する（ステップＳ５２）。そして、通信部１２は、コピーによって得たパケットに合致するフローエントリを第２テーブルから検索し、２番目のフローエントリを得る（ステップＳ５３）。
【００８９】
通信部１２は、その２番目のフローエントリに従って、そのパケットのコピーを生成し（ステップＳ５４）、そのパケットを通信インタフェース１０ｂから出力する（ステップＳ５５）。そして、通信部１２は、コピーによって得たパケットに合致するフローエントリを第３テーブルから検索し、３番目のフローエントリを得る（ステップＳ５６）。
【００９０】
通信部１２は、その３番目のフローエントリに従って、そのパケットを通信インタフェース１０ｃから出力する（ステップＳ５７）。
【００９１】
図１２に示す動作においても、通信部１２は、同一のパケットを、通信インタフェース１０ａ〜１０ｃからそれぞれ出力する。そして、宛先には、複数の同一パケットがそれぞれ異なる無線通信ネットワークを経由して到達する。
【００９２】
また、受信したパケットに合致するフローエントリが第１テーブルに設定されている場合（ステップＳ３１のＹｅｓ）、通信部１２は、そのパケットをそのフローエントリに従って処理する（ステップＳ３５）。本例では、制御部１２は、ステップＳ３５において、ステップＳ３４（図１２参照。）と同様の処理を行う。
【００９３】
従って、制御部１１が第２タイプのフローエントリを生成する場合においても、同一フローにおける個々のパケットはいずれも、通信インタフェース１０ａ〜１０ｃからそれぞれ出力され、複数の同一パケットがそれぞれ異なる無線通信ネットワークを経由して到達する。
【００９４】
なお、上記の例では、第２タイプのフローエントリとして１番目から３番目までの３つのフローエントリを制御部１１が生成し、通信部１２がそれらのフローエントリに順番に従って処理を行う場合を説明した。第２タイプのフローエントリとして生成されるフローエントリの数は、パケットを出力する通信インタフェース１０の数に合わせればよい。
【００９５】
第３の実施形態では、制御部１１が第１タイプのフローエントリを生成する場合であっても、第２タイプのフローエントリを生成する場合であっても、通信部１２は、各通信インタフェース１０から同一のパケットを出力する。従って、いずれかの通信インタフェース１０から出力されたパケットにパケットロスが生じたとしても、パケットの宛先（サーバ）は、他の通信インタフェースから出力された同一のパケットを受信し、処理を進めることができる。従って、本実施形態によれば、通信の信頼性を高めることができる。
【００９６】
図１３は、複数の通信インタフェース１０が同一のパケットを出力する状況を示す模式図である。図１３内に番号とともに示した矩形はパケットを表し、また、その番号はパケットのシーケンス番号を示す。また、図１３に示すパケットは、いずれも同一フローのパケットである。通信部１２は、各通信インタフェース１０ａ，１０ｂ，１０ｃからそれぞれシーケンス番号が１である同一のパケットを出力する。通信部１２は、他のシーケンス番号のパケットに関しても、各通信インタフェース１０ａ，１０ｂ，１０ｃからそれぞれ同一のパケットを出力する。また、図１３において、破線で示したパケットは、宛先のサーバに到達するまでに消失したパケットである。例えば、図１３に示すように、通信インタフェース１０ａから出力されたシーケンス番号１のパケットが消失したとしても、宛先のサーバは、通信インタフェース１０ｂや通信インタフェース１０ｃから出力された同一のパケット（シーケンス番号１のパケット）を受信することができる。このように、同一のパケットが別々の通信インタフェース１０からそれぞれ出力され、その各パケットが異なる無線通信ネットワークを経由して宛先に到達する。従って、一部のパケットが消失したとしても、宛先となるサーバは、他の無線通信ネットワークを経由する同一パケットを受信できる。そのため、ルータ１は、パケットロスに伴うパケットの再送を行う必要がなく、通信の信頼性を向上させることができる。
【００９７】
次に、本実施形態において、パケットの宛先となるサーバの動作について説明する。図１４は、パケットの宛先となるサーバの構成例を示すブロック図である。サーバ３１は、複数の受信ポート３２ａ，３２ｂ，３２ｃと、受信部３３と、処理部３４とを備える。各受信ポート３２ａ，３２ｂ，３２ｃは、それぞれ、ルータ１の通信インタフェース１０ａ，１０ｂ，１０ｃに対応する。例えば、受信ポート３２ａは、通信インタフェース１０ａから出力されたパケットを受信し、受信ポート３２ｂは、通信インタフェース１０ｂから出力されたパケットを受信し、受信ポート３２ｃは、通信インタフェース１０ｃから出力されたパケットを受信する。受信部３３は、受信ポート３３が受信したパケットを、処理部３４に伝達する。処理部３４は、入力されたパケットに応じた処理を行う。
【００９８】
処理部３４には、同一のパケットを重複して入力する必要はない。そこで、サーバ３１は、例えば、以下に示す動作を行えばよい。各受信ポート３２ａ，３２ｂ，３２ｃは、それぞれ、パケットを受信すると、そのパケットを受信部３３に送る。
【００９９】
受信部３３は、同一のフローにおける各シーケンス番号のパケット毎に、受信ポート３２ａ〜３２ｃのいずれかで、既にパケットを受信しているか否かを管理する。初期状態では、各シーケンス番号のパケットに関し、「未受信」という情報を記憶する。例えば、任意のシーケンス番号（Ｐとする。）のパケットが、受信ポート３２ａ〜３２ｃのいずれかから送られたとする。すると、受信部３３は、シーケンス番号Ｐのパケットに関して「未受信」であるか否かを判定し、「未受信」である場合には「受信済み」に更新し、そのシーケンス番号Ｐのパケットを処理部３４に送る。一方、シーケンス番号Ｐのパケットが送られた場合、シーケンス番号Ｐのパケットに関して「受信済み」であるならば、受信部３３は、そのシーケンス番号Ｐのパケットを破棄する。従って、受信部３３は、受信ポート３２ａ〜３２ｃのいずれかから、最初にシーケンス番号Ｐのパケットを受信した場合のみ、そのパケットを処理部３４に送り、２回目以降に送られたシーケンス番号Ｐのパケットに関しては破棄する。この結果、処理部３４には、シーケンス番号Ｐのパケットは１個のみ送られる。よって、処理部３４に同一パケットが重複して送られることを防ぐことができる。
【０１００】
また、サーバ３１の動作は、上記の動作に限定されず、以下に示す動作を行ってもよい。受信部３３は、パケットを受け取る受信ポートを、受信ポート３２ａ〜３２ｃの中から１つ定め、その受信ポート（ここでは、受信ポート３２ａとする。）は、受信したパケットを受信部３３に送る。その他の受信ポート３２ｂ，３２ｃは、受信したポートを受信部３３に送らず、一時的にバッファに記憶し、一定時間経過後に削除する。受信部３３は、受信ポート３２ａから送られたパケットを処理部３４に送る。ただし、受信ポート３２ａから送られたパケットのうち、パケットロスに起因して欠如しているシーケンス番号を検出した場合、そのシーケンス番号のパケットを、他の受信ポート３２ｂ，３２ｃのバッファ内から検索し、読み込む。そして、そのパケットも処理部３４に送る。すなわち、受信部３３は、受信ポート３２ａから送られたパケットを処理部３４に送るとともに、消失したパケットを検出した場合、そのパケットを他の受信ポート３２ｂ，３２ｃのバッファ内から読み込んで処理部３４に送る。このような動作を行う場合にも、処理部３４に同一パケットが重複して送られることを防ぐことができる。なお、受信部３３に対してパケットを送る受信ポートは、例えば、対応する無線通信ネットワークの電波状況や通信の安定性に基づいて定めておけばよい。また、各受信ポート３２ａ，３２ｂ，３２ｃに対応する無線通信ネットワークの電波状況や通信の安定性を計測する計測手段（図示略）をサーバ３１に設け、計測手段の計測結果に応じて、受信部３３に対してパケットを送る受信ポートを受信部３３が動的に変更してもよい。
【０１０１】
実施形態４．
図１５は、本発明の第４の実施形態の通信システムの構成例を示すブロック図である。第１ないし第３の実施形態における構成要素と同様の構成要素については、図１、図４、図５、図９等と同一の符号を付し、詳細な説明を省略する。ただし、制御部１１が生成するフローエントリの内容は、第２の実施形態や第３の実施形態とは異なる。
【０１０２】
図９では、３つの通信インタフェース１０ａ，１０ｂ，１０ｃを示しているが、通信インタフェース１０の数は２つであってもよく、あるいは、４つ以上であってもよい。
【０１０３】
第２の実施形態や第３の実施形態と同様に、制御装置１５は、ルール生成情報を予め制御部１１に送信し、制御部１１はそのルール生成情報を受信する。そして、制御部１１は、ルール生成情報に基づいてフローエントリを生成する。
【０１０４】
第４の実施形態において、ルータ１は、制御部１１、通信部１２、複数の通信インタフェース１０に加えて、ユーザ情報記憶部１３を備える。
【０１０５】
ユーザ情報記憶部１３は、予め、ユーザの識別情報（以下、ユーザＩＤと記す。）に対応付けて、ユーザに関する情報を記憶する記憶装置である。本実施形態では、ユーザ情報記憶部１３が、ユーザＩＤに対応付けて、ユーザが通常ユーザ、優遇ユーザ、特別優遇ユーザのいずれかであるかを記憶する場合を例にして説明する。なお、特別優遇ユーザ、優遇ユーザ、通常ユーザの順に、通信品質が高い無線通信ネットワークを利用できるものとする。
【０１０６】
なお、ユーザ情報記憶部１３は、ルータ１の外部に設けられていてもよい。
【０１０７】
通信部１２は、ユーザが使用する端末装置２０との間で通信を確立する際に、その端末装置２０と一対一に対応する仮想ポートを設定する。図１５では、端末装置２０ａに対応する仮想ポート６１、および、端末装置２０ｂに対応する仮想ポート６２を図示している。個々の仮想ポート６１，６２には、制御部１１によって優先度が定められる。
【０１０８】
また、通信インタフェース１０ａ，１０ｂ，１０ｃには、どの優先度の仮想ポートが受信したパケットを出力するのかが予め定められている。本例では、説明を簡単にするため、仮想ポートの優先度が“１”，“２”，“３”のいずれかに設定されるものとする。ここで、優先度“１”が最も高く、優先度“３”が最も低いものとする。ただし、優先度は、より細かく分類されていてもよい。
【０１０９】
そして、通信インタフェース１０ａに対応する無線通信ネットワークは通信品質が非常に高く、通信インタフェース１０ａは、優先度“１”の仮想ポートが受信したパケットを出力するものとして定められているとする。また、通信インタフェース１０ｂに対応する無線通信ネットワークは通信品質が高く、通信インタフェース１０ｂは、優先度“２”の仮想ポートが受信したパケットを出力するものとして定められているとする。また、通信インタフェース１０ｃに対応する無線通信ネットワークは通信品質が中程度であり、通信インタフェース１０ｃは、優先度“３”の仮想ポートが受信したパケットを出力するものとして定められているものとする。
【０１１０】
通信部１２は、新たに端末装置２０との間で通信を確立する際に、その端末装置２０と一対一に対応する仮想ポートを設定するとともに、その端末装置２０から、その端末装置２０を使用するユーザのユーザＩＤを受信する。また、通信部１２は、設定した仮想ポートに対して仮想ポート識別情報（仮想ポートの識別情報）を割り当てる。通信部１２は、ユーザＩＤおよび仮想ポート識別情報を制御部１１に送ることによって、その仮想ポートが端末装置２０から受信するフローに対応するフローエントリの生成を制御部１１に要求する。
【０１１１】
制御部１１は、ユーザＩＤをキーとしてユーザ情報記憶部１３に記憶されたユーザの情報を参照し、そのユーザの情報に基づいて、仮想ポート識別情報が示す仮想ポートの優先度を決定する。そして、その優先度に基づいて、仮想ポートが受信するフローの出力先を特定し、フローエントリを生成する。
【０１１２】
図１６は、第４の実施形態におけるルータ１の処理経過の例を示すフローチャートである。ここでは、端末装置２０ａと通信部１２との通信が確立する場合を例にして説明する。通信部１２は、端末装置２０ａとの間で通信を確立する場合、端末装置２０ａに対応する仮想ポート６１を設定するとともに（ステップＳ６１）、端末装置２０ａからユーザＩＤを受信する（ステップＳ６２）。また、通信部１２は、設定した仮想ポート６１に対して仮想ポート識別情報を割り当てる。
【０１１３】
次に、通信部１２は、そのユーザＩＤおよび、仮想ポート６１の仮想ポート識別情報（以下、Ｑとする。）を制御部１１に送ることによって、仮想ポート６１が端末装置２０ａから受信するフローに対応するフローエントリの生成を制御部１１に要求する（ステップＳ６３）。
【０１１４】
制御部１１は、通信部１２から送られたユーザＩＤをキーとしてユーザ情報記憶部１３からユーザＩＤに対応するユーザの情報を検索し、そのユーザの情報に基づいて、仮想ポート識別情報が示す仮想ポート６１の優先度を判定する（ステップＳ６４）。例えば、ユーザＩＤに対応するユーザの情報が「特別優遇ユーザ」であれば、制御部１１は、仮想ポート６１の優先度を“１”とする。また、例えば、ユーザＩＤに対応するユーザの情報が「優遇ユーザ」であれば、制御部１１は、仮想ポート６１の優先度を“２”とする。また、例えば、ユーザＩＤに対応するユーザの情報が「通常ユーザ」であれば、制御部１１は、仮想ポート６１の優先度を“３”とする。本例では、制御部１１は、仮想ポート６１の優先度を“１”と判定した場合を例にして説明する。なお、「特別優遇ユーザ」等は、ユーザの情報の例示であり、制御部１１は、ユーザに関する他の情報に基づいて、仮想ポートの優先度を判定してもよい。
【０１１５】
ステップＳ６４の次に、制御部１１は、フローエントリの条件として、ステップＳ６３で送られた仮想ポート識別情報“Ｑ”を記述する。また、制御部１１は、ステップＳ６４で判定した仮想ポートの優先度に対応する通信インタフェース１０を特定する。そして、制御部１１は、その通信インタフェース１０からパケットを出力することを規定したアクションを記述する。本例では、ステップＳ６４で、仮想ポート６１の優先度を“１”と判定しているので、通信インタフェース１０ａからパケットを出力することを規定したアクションを記述する。制御部１１は、このように条件およびアクションを記述することによってフローエントリを生成し、通信部１２に設定する（ステップＳ６５）。このフローエントリは、条件に記述された仮想ポート識別情報によって特定される仮想ポートから受信したパケットに関して、アクションに記述した通り処理することを定めている。
【０１１６】
ステップＳ６５の後、通信部１２は、条件として記述された仮想ポート識別情報“Ｑ”によって特定される仮想ポート６１がパケットを受信すると、フローエントリのアクションに従って、通信インタフェース１０ａからそのパケットを出力する（ステップＳ６６）。このパケットは、通信インタフェース１０ａに対応する無線通信ネットワークを介して宛先のサーバに到達する。
【０１１７】
本例では、端末装置２０ａと通信部１２との通信が確立する場合を例にして説明したが、他の端末装置２０ｂと通信部１２との通信が確立する場合の動作も同様である。
【０１１８】
本実施形態によれば、端末装置２０を使用するユーザの属性に応じて、端末装置２０から受信するパケットをどの無線通信ネットワークに向けて出力するかを制御することができる。
【０１１９】
また、第４の実施形態では、端末装置２０がユーザＩＤを通信部１２に送信する場合を例にして示したが、端末装置２０がユーザの情報（例えば、ユーザが「特別優遇ユーザ」であること等）を通信部１２に送信してもよい。この場合、通信部１２は、そのユーザの情報を制御部１１に送り、制御部１１は、そのユーザの情報に基づいて仮想ポートの優先度を判定すればよい。この場合、ユーザ情報記憶部１３は、設けられていなくてもよい。
【０１２０】
また、第１から第４までの各実施形態において、個々の通信インタフェース１０に対応する無線通信ネットワークの通信品質が分かっている場合、制御部１１は、フローのパケットの出力先となる通信インタフェース１０を決定して、フローエントリを生成するときに、パケット出力先となる通信インタフェース１０に対応する無線通信ネットワークの通信品質に応じた頻度で誤り訂正用パケットを挿入し、その誤り訂正用パケットもその通信インタフェース１０から出力するアクションを規定してもよい。誤り訂正用パケットの挿入頻度は、パケットの出力先として決定した通信インタフェース１０に対応する無線通信ネットワークの通信品質に応じて定めればよい。例えば、パケットロス率が高ければ、誤り訂正用パケットの挿入頻度を多くし、パケットロス率が低ければ、誤り訂正用パケットの挿入頻度を少なくすればよい。通信部１２は、パケットから特定されるフローエントリに従って、そのパケットを通信インタフェース１０から出力するとともに、そのフローエントリで規定された頻度で誤り訂正用パケットを生成し、その誤り訂正用パケットも同一の通信インタフェース１０から出力する。通信部１２は、誤り訂正用パケットを例えば、ＦＥＣ（Forward Error Correction）によって生成してもよい。また、この場合、図８に示すように、通信品質計測部１８が設けられ、通信品質計測部１８が個々の通信インタフェース１０に対応する無線通信ネットワークの通信品質を測定してもよい。
【０１２１】
実施形態５．
図１７は、本発明の第５の実施形態の通信システムの構成例を示すブロック図である。第５の実施形態の通信システムは、通信装置１と、制御装置１５とを備える。第５の実施形態では、通信装置１がルータである場合を例にして説明する。ルータ１は、例えば、列車やバス等のように走行ルートが定められている乗り物に配置される。そして、ルータ１は、乗り物に乗車しているユーザが使用する端末装置２０から受信したパケットをサーバ（図示略。）に送信する等のパケットの中継処理を行う。なお、後述するように、ルータ１は、自動車等のように走行ルートの自由度が高い乗り物に配置されてもよい。
【０１２２】
ルータ１は、通信部１２と、制御部１１と、複数の通信インタフェース１０ａ，１０ｂ，１０ｃと、位置計測部５１とを備える。個々の通信インタフェース１０ａ，１０ｂ，１０ｃは、互いに異なる無線通信ネットワークに対応している。既に説明したように、個々の通信インタフェース１０ａ，１０ｂ，１０ｃを区別しない場合には、通信インタフェース１０と記す。また、図１７では、３つの通信インタフェース１０を図示しているが、通信インタフェース１０の数は３つに限定されない。
【０１２３】
通信部１２は、端末装置２０から受信したパケットをサーバ（図示略。）に転送する。第５の実施形態においても、通信部１２が、端末装置２０から受信したパケットをサーバに転送する時の動作を中心に説明する。
【０１２４】
位置計測部５１は、通信部１２の現在の位置（換言すれば、ルータ１の現在の位置）を計測する。位置計測部５１は、例えば、ＧＰＳ（Ｇｌｏｂａｌ   Ｐｏｓｉｔｉｏｎｉｎｇ   Ｓｙｓｔｅｍ）を用いて位置を計測するセンサである。位置計測部５１は、定期的に、ルータ１の現在の位置を計測する。
【０１２５】
制御部１１は、通信部１２を制御する。例えば、制御部１１は、オープンフローに従って通信部１２を制御してもよい。例えば、通信部１２は、フローエントリに合致しないパケットを受信した場合、そのパケットを制御部１１に送り、そのパケットに対応するフローのフローエントリの生成を制御部１１に要求し、制御部１１は、要求に応じて生成したフローエントリを通信部１２に設定し、通信部１２にパケットを返す。通信部１２は、そのフローエントリに従って、そのフローのパケットに対する処理を実行する。
【０１２６】
ただし、本実施形態では、制御部１１は、通信部１２に設定済みのフローエントリを更新する条件が満たされた場合、そのフローエントリを更新する。
【０１２７】
ここで、通信部１２に設定済みのフローエントリを更新する条件と、その条件が満たされたときのフローエントリの更新内容とを表す情報を更新情報と記す。更新情報は、制御装置１５から制御部１１に提供される。すなわち、制御装置１５が更新情報を制御部１１に送信し、制御部１１が、その更新情報を受信する。そして、制御部１１は、その更新情報に従って、条件が満たされたときにフローエントリを更新する。具体的には、更新情報では、フローエントリのアクションに記述される通信インタフェース１０を更新する条件と、その条件が満たされたときに、フローエントリのアクションに記述する通信インタフェース１０をどの通信インタフェース１０に更新するかが定められている。さらに、この条件として、乗り物に配置されたルータ１が、異なる種類の無線通信ネットワークを跨いで基地局をハンドオーバする位置が少なくとも定められている。また、ハンドオーバの位置として、切り替え後の基地局よりも手前の位置を定めておけばよい。
【０１２８】
列車やバス等の走行ルートは定められている。従って、その走行ルートの周辺に存在する様々な種類の無線通信ネットワークの基地局の位置も予め分かっている。そして、乗り物が走行ルートに沿って移動している場合、異なる種類の無線通信ネットワークを跨いで基地局をハンドオーバする必要が生じ得る。例えば、ある区間ではＬＴＥの基地局と通信していたが、移動に伴いその基地局と離れるので、ＷｉＭＡＸの基地局にハンドオーバする必要があるといったことが生じ得る。この場合、更新情報において、フローエントリの更新条件として、ＷｉＭＡＸの基地局よりも手前の位置を定めておき、フローエントリのアクションの更新内容として、「ＷｉＭＡＸに対応する通信インタフェース１０ｂからパケットを出力する。」という内容を定めておく。更新情報では、このような条件と更新内容の組み合わせを、ハンドオーバの必要な箇所毎に定めておく。
【０１２９】
制御部１１がフローエントリを更新することによって、通信部１２は、パケットを出力する通信インタフェース１０を切り替える。この結果、パケットは、フローエントリの更新前とは異なる無線通信ネットワークの基地局に送られ、異なる種類の無線通信ネットワークを跨るハンドオーバが実現される。
【０１３０】
また、フローエントリの更新条件には、少なくとも、位置に関する条件が定められる。この更新条件として、位置とともに他の条件が定められていてもよいが、図１７に示す例では、説明を簡単にするために、フローエントリの更新条件として、位置に関する条件のみが定められる場合を例にして説明する。位置以外の条件も用いる場合については後述する。
【０１３１】
共通の走行ルートを移動する各乗り物に配置される各ルータ１には、共通の更新情報を提供すればよい。従って、制御装置１５は、共通の走行ルートを移動する各乗り物に配置される各ルータ１に対して、共通の更新情報を送信すればよい。一旦、制御装置１５が各ルータ１に対して更新情報を送信すれば、その後、制御装置１５と制御部１１との通信が断となったとしても、制御部１１は、フローエントリを更新できる。
【０１３２】
なお、各ルータ１の管理者が直接、制御部１１に更新情報を設定してもよい。この場合、制御装置１５は設けられていなくてもよい。ただし、この場合、管理者の設定操作の負担が大きいので、上記のように、共通の走行ルートを移動する各乗り物に配置される各ルータ１に対して、制御装置１５が共通の更新情報を送信することが、より好ましい。
【０１３３】
また、制御部１１が、ルータ１の外部に設けられていてもよい。ただし、この場合、通信部１２と制御部１１との通信が断となると、通信部１２は、制御部１１からの制御を受けられなくなってしまう。そのため、制御部１１がルータ１に設けられる構成が好ましい。
【０１３４】
制御部１１および通信部１２は、例えば、通信プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、例えば、コンピュータのプログラム記憶装置等のプログラム記録媒体に通信プログラムを記憶させておく。そして、ＣＰＵがその通信プログラムを読み込み、通信プログラムに従って制御部１１および通信部１２として動作すればよい。また、制御部１１および通信部１２が別々のハードウェアで実現されていてもよい。
【０１３５】
図１８は、第５の実施形態におけるフローエントリ設定時の処理経過の例を示すフローチャートである。通信部１２は、端末装置２０からパケットを受信すると、そのパケットに合致するフローエントリが通信部１２に設定されているか否かを判定する（ステップ７１）。受信したパケットに合致するフローエントリが設定されていなければ（ステップＳ７１のＮｏ）、通信部１２は、そのパケットを制御部１１に送り、そのパケットに対応する新たなフローに対するフローエントリの生成を要求する（ステップＳ７２）。ステップＳ７１，Ｓ７２は，第２の実施形態におけるステップＳ１１，Ｓ１２（図６参照。）と同様の処理である。
【０１３６】
フローエントリの生成要求を受けると、制御部１１は、位置計測部５１によって計測されたルータ１の現在位置と、更新情報とを参照する。そして、制御部１１は、現在位置が、フローエントリの更新条件に該当する位置同士（換言すれば、ハンドオーバを行う位置同士）の間のどの区間に該当するかを判定し、その区間において、パケットを出力する通信インタフェース１０を特定する。また、制御部１１は、ステップＳ７２で通信部１２から受け取ったパケットのヘッダからフローの識別情報を特定する。そして、制御部１１は、そのフローの識別情報を条件として記述し、特定した通信インタフェース１０からパケットを出力することをアクションとして記述することによってフローエントリを生成する（ステップＳ７３）。制御部１１は、このフローエントリを通信部１２に設定し、また、パケットを通信部１２に返す。
【０１３７】
また、制御部１１は、通信部１２に設定したフローエントリと同一内容のフローエントリを保持し、通信部１２に設定されているフローエントリを認識できるようにしておく。
【０１３８】
ステップＳ７３の後、通信部１２は、制御部１１から返されたパケットを、ステップＳ７３で設定されたフローエントリに従って送信する（ステップＳ７４）。すなわち、通信部１２は、そのパケットを、制御部１１がパケット出力先として決定した通信インタフェース１０から出力する。
【０１３９】
また、受信したパケットに合致するフローエントリが設定されている場合（ステップＳ７１のＹｅｓ）、通信部１２は、そのパケットをそのフローエントリに従って送信する（ステップＳ７５）。従って、新たに発生したフローに対してステップＳ７３でフローエントリが設定された後、そのフローにおける後続のパケットを通信部１２が受信した場合、通信部１２は、そのフローエントリに従って、そのパケットを出力すればよい（ステップＳ７５）。ステップＳ７４，Ｓ７５は、第２の実施形態におけるステップＳ１４，Ｓ１５（図６参照。）と同様の処理である。
【０１４０】
次に、制御部１１が、通信部１２に設定したフローエントリを更新する動作について説明する。図１９は、フローエントリを更新する動作の例を示すフローチャートである。位置計測部５１は、ルータ１の現在の位置を計測する（ステップＳ８１）。なお、位置計測部５１は、ステップＳ８１の処理を定期的に行う。
【０１４１】
ステップＳ８１の後、制御部１１は、ステップＳ８１で計測されたルータ１の位置を参照して、フローエントリの更新条件が満たされたか否かを判定する（ステップＳ８２）。例えば、制御部１１は、ステップＳ８１で計測された位置を参照し、更新情報内で更新条件として定められた位置にルータ１が到達しているか否かを判定し、到達していれば更新条件が満たされていると判定し、到達していなければ更新条件が満たされていないと判定する。
【０１４２】
更新条件が満たされていない場合（ステップＳ８２のＮｏ）、ルータ１は、次回のステップＳ８１まで待機し、次回のステップＳ８１の実行時に、ステップＳ８１以降の処理を繰り返す。
【０１４３】
更新条件が満たされている場合（ステップＳ８２のＹｅｓ）、制御部１１は、その更新条件が満たされた場合の更新内容に従って、通信部１２に設定しているフローエントリのアクションを更新する（ステップＳ８３）。具体的には、制御部１１は、フローエントリのアクションで規定されている通信インタフェース１０を更新する。この結果、パケットが出力される通信インタフェース１０が変更され、パケットは更新後の通信インタフェース１０に対応する無線通信ネットワークの基地局に送信される。この結果、種類の異なる無線通信ネットワークを跨いでハンドオーバが実現される。
【０１４４】
ステップＳ８３の後、ルータ１は、次回のステップＳ８１まで待機し、次回のステップＳ８１の実行時に、ステップＳ８１以降の処理を繰り返す。
【０１４５】
この結果、フローエントリの更新条件が満たされる毎に、通信部１２に設定されたフローエントリのアクションは更新され、ハンドオーバが実現される。
【０１４６】
図２０は、フローエントリの更新の具体例を示す模式図である。更新前に、通信部１２に、図２０（ａ）に示すフローエントリが設定されているとする。この状態で、フローＡのパケットを通信部１２が受信した場合、通信部１２は、そのパケットを通信インタフェース１０ｂから出力する。すると、そのパケットは、通信インタフェース１０ｂに対応する無線通信ネットワークの基地局（Ｋ１とする。）を介して、宛先に到達する。
【０１４７】
また、予め、図２０（ｂ）に示す更新情報が定められているとする。図２０（ｂ）に示す更新情報は、位置Ｘに到達したとういう条件が満たされたときに、フローエントリのアクションを「パケットを通信インタフェース１０ａから出力」という内容に更新することを意味している。
【０１４８】
ステップＳ８１で計測された位置に基づいて、ルータ１が位置Ｘに到達したと制御部１１が判断した場合（ステップＳ８２のＹｅｓ）、制御部１１は、図２０（ａ）に示すフローエントリのアクションを「パケットを通信インタフェース１０ａから出力」に更新する。この結果、通信部１２は、図２０（ｃ）に示すフローエントリが設定された状態となる。ここで、フローＡのパケットを通信部１２が受信した場合、通信部１２は、そのパケットを通信インタフェース１０ａから出力する。すると、そのパケットは、通信インタフェース１０ａに対応する無線通信ネットワークの基地局（Ｋ２とする。）を介して、宛先に到達する。従って、基地局Ｋ１から基地局Ｋ２へのハンドオーバが実現されたことになる。
【０１４９】
本実施形態によれば、種類の異なる無線通信ネットワークを跨るハンドオーバを適切な条件を契機に行える。
【０１５０】
一般的なハンドオーバでは、通信中の基地局との距離が離れ、その基地局からの電波が弱くなったことを契機に、切り替え先の基地局を探索する。
【０１５１】
これに対して、本発明では、フローエントリの更新条件を満たした時点で、フローエントリを更新することでハンドオーバを実現する。従って、通信中の基地局からの電波が弱くなる前であっても、早期にハンドオーバを実現することができる。また、種類の異なる無線通信ネットワークを跨るハンドオーバを実現することができる。
【０１５２】
以下、第５の実施形態の変形例を説明する。
【０１５３】
第５の実施形態において、ルータ１は、走行ルートが定められている乗り物のみに適用されるわけではない。ルータ１は、自動車等のように、走行ルートの自由度が高い乗り物に配置されていてもよい。この場合、例えば、自動車に設けられたナビゲーションシステムが目的地までの走行ルートを計算したときに、ルータ１の制御部１１がその走行ルートの情報を制御装置１５に送信する。制御装置１５は、その走行ルートの情報を参照して、その走行ルートに応じた更新情報を導出し、その更新情報を制御部１１に提供すればよい。この場合、制御装置１５は、種々の無線通信ネットワークの基地局の位置の情報をデータベースとして保持し、そのデータベースを用いて、与えられた走行ルートに応じた更新情報を導出すればよい。
【０１５４】
また、上記の説明では、説明を簡単にするため、更新情報において、フローエントリの更新条件として、位置に関する条件のみが定められた場合を例にして説明した。フローエントリの更新条件として、位置とともに他の条件が定められていてもよい。
【０１５５】
例えば、フローエントリの更新条件として、「ルータ１が所定の位置に到達し、かつ、更新後の通信インタフェース１０に対応する無線通信ネットワークの通信品質が所定の基準を満たしていること」等の条件が定められていてもよい。
【０１５６】
この場合、図２１に示すように、ルータ１は、例えば、通信品質計測部１８を備える。通信品質計測部１８は、各通信インタフェース１０ａ，１０ｂ，１０ｃに対応する各無線通信ネットワークの通信品質を計測する。
【０１５７】
また、例えば、フローエントリの更新条件として、「ルータ１が所定の位置に到達し、かつ、更新後の通信インタフェース１０に対応する無線通信ネットワークの基地局からの電波強度が所定値以上であること」等の条件が定められていてもよい。
【０１５８】
この場合、通信品質計測部１８は、通信品質として、各通信インタフェース１０ａ，１０ｂ，１０ｃに対応する各無線通信ネットワークの基地局からの電波強度を計測する。通信品質計測部１８は、電波強度と、電波強度以外の通信品質とを計測してもよい。
【０１５９】
制御部１１は、ステップＳ８２において、ルータ１の位置だけでなく、新たに使用しようとしている通信インタフェース１０に対応する無線通信ネットワークの通信品質（例えば、電波強度）も参照して、フローエントリの更新条件が満たされているか否かを判定する。
【０１６０】
さらに、制御部１１は、位置の他に、少なくとも、天候、時間帯、曜日、日付、ルータ１の移動経路（換言すれば、通信部１２の移動経路）近傍で開催されるイベントの有無の一部、または、全部を参照して、フローエントリの更新条件が満たされているか否かを判定してもよい。
【０１６１】
この場合、例えば、天候、時間帯、曜日、日付、イベント開催の有無の一部または全部の組み合わせを定め、その組み合わせ毎に、更新情報を用意しておけばよい。更新情報の内容（条件の内容やフローエントリの更新内容）は、天候や時間帯等の組み合わせ毎に定めればよい。そして、制御装置１５は、天候や時間帯等の種々の組み合わせ（例えば、「晴れ」かつ「夜間」かつ「土曜日」等の組み合わせ）毎に用意された更新情報をそれぞれ、制御部１１に送信すればよい。
【０１６２】
また、この場合、図２１に示すように、ルータ１は、例えば、時刻計算部５４と、天候計測部５５とを備える。時刻計算部５４は、定期的に、時刻、曜日、日付を算出する。天候計測部５５は、天候を計測するセンサである。天候計測部５５は、定期的に、ルータ１が配置された乗り物の周囲の天候を計測する。制御部１１は、時刻計算部５４や天候計測部５５から得られた天候や時間帯等の組み合わせ（例えば、「晴れ」かつ「夜間」かつ「土曜日」等の組み合わせに対応する更新情報を用いて、フローエントリの更新条件が満たされているか否かを判定し、更新条件が満たされていれば、その更新情報で定められた更新内容に従って、フローエントリを更新する。
【０１６３】
なお、イベントの有無に関する情報は、例えば、制御装置１５に対して管理者が入力し、制御装置１５が、イベントの有無、および、イベントが開催される場合には、イベントの開催場所、開催日時を制御部１１に送信すればよい。
【０１６４】
天候、時間帯、曜日、日付等によって、乗り物内で端末装置２０を使用するユーザの数や、ルータ１の移動経路近傍で端末装置を使用する人数が変動すると考えられる。また、ルータ１の移動経路近傍で開催されるイベントの有無によっても、移動経路近傍で端末装置を使用する人数が変動すると考えられる。そして、このような人数の多寡は、無線通信ネットワークの通信品質に影響する。従って、天候、時間帯、曜日、日付、イベント開催の有無等の組み合わせ毎に更新情報を定めることによって、通信品質を考慮した、より適切なフローエントリ更新条件を定めることができる。
【０１６５】
なお、通信品質計測部１８および時刻計算部５４は、例えば、通信プログラムに従って動作するコンピュータのＣＰＵによって実現される。また、通信品質計測部１８および時刻計算部５４は、他の構成要素とは別個のハードウェアとして実現されていてもよい。
【０１６６】
次に、本発明の概要について説明する。図２２は、本発明の通信システムの概要を示すブロック図である。本発明の通信システムは、制御手段９１と、パケット転送手段９２と、複数の通信インタフェース９３と、位置計測手段９４とを備える。
【０１６７】
パケット転送手段９２（例えば、通信部１２）は、パケットを転送する。
【０１６８】
位置計測手段９４（例えば、位置計測部５１）は、パケット転送手段９２の位置を計測する。
【０１６９】
複数の通信インタフェース９３（例えば、通信インタフェース１０ａ，１０ｂ，１０ｃ）は、互いに異なる無線通信ネットワークに対応している。
【０１７０】
制御手段９１（例えば、制御部１１）は、パケット転送手段９２がパケットを出力すべき通信インタフェース９３を規定したール（例えば、フローエントリ）を生成することによって、パケット転送手段９２を制御する。
【０１７１】
パケット転送手段９２は、ルールに従って、パケットをルールで規定された通信インタフェース９３から出力する。
【０１７２】
制御手段９１は、少なくとも、位置計測手段９４によって計測された位置に基づいて、ルールで規定されている通信インタフェースを更新する。
【０１７３】
そのような構成によって、種類の異なる無線通信ネットワークを跨るハンドオーバを適切な条件を契機に行うことができる。
【０１７４】
上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下に限定されるわけではない。
【０１７５】
（付記１）パケットを転送するパケット転送手段と、  前記パケット転送手段の位置を計測する位置計測手段と、互いに異なる無線通信ネットワークに対応する複数の通信インタフェースと、前記パケット転送手段がパケットを出力すべき通信インタフェースを規定したールを生成することによって、前記パケット転送手段を制御する制御手段とを備え、前記パケット転送手段は、前記ルールに従って、パケットを前記ルールで規定された通信インタフェースから出力し、制御手段は、少なくとも、前記位置計測手段によって計測された位置に基づいて、前記ルールで規定されている通信インタフェースを更新することを特徴とする通信システム。
【０１７６】
（付記２）通信インタフェースに対応する無線通信ネットワークの通信品質を計測する通信品質計測手段を備え、制御手段は、少なくとも、位置計測手段によって計測された位置と、前記通信品質計測手段によって計測された無線通信ネットワークの通信品質とに基づいて、ルールで規定されている通信インタフェースを更新する付記１に記載の通信システム。
【０１７７】
（付記３）制御手段は、位置計測手段によって計測された位置と、少なくとも、天候、時間帯、曜日、日付、パケット転送手段の移動経路近傍で開催されるイベントの有無の一部または全部とに基づいて、ルールで規定されている通信インタフェースを更新する付記１または付記２に記載の通信システム。
【０１７８】
（付記４）制御手段は、ルールを更新する条件と、当該条件が満たされたときのルールの更新内容とを表す更新情報を提供する制御装置から前記更新情報を受信し、前記更新情報に従って、ルールで規定されている通信インタフェースを更新する付記１から付記３のうちのいずれかに記載の通信システム。
【０１７９】
（付記５）パケット転送手段、位置計測手段、複数の通信インタフェース、および制御手段がルータに設けられ、前記ルータは、乗り物に設置される付記１から付記４のうちのいずれかに記載の通信システム。
【産業上の利用可能性】
【０１８０】
本発明は、ハンドオーバを行う通信システムに好適に適用可能である。
【符号の説明】
【０１８１】
１０ａ，１０ｂ，１０ｃ  通信インタフェース
１１  制御部
１２  通信部
１５  制御装置
１８  通信品質計測部
５１  位置計測部
５４  時刻計測部
５５  天候計測部
【図１】
2015154398.tif 000003
【図２】
2015154398.tif 000004
【図３】
2015154398.tif 000005
【図４】
2015154398.tif 000006
【図５】
2015154398.tif 000007
【図６】
2015154398.tif 000008
【図７】
2015154398.tif 000009
【図８】
2015154398.tif 000010
【図９】
2015154398.tif 000011
【図１０】
2015154398.tif 000012
【図１１】
2015154398.tif 000013
【図１２】
2015154398.tif 000014
【図１３】
2015154398.tif 000015
【図１４】
2015154398.tif 000016
【図１５】
2015154398.tif 000017
【図１６】
2015154398.tif 000018
【図１７】
2015154398.tif 000019
【図１８】
2015154398.tif 000020
【図１９】
2015154398.tif 000021
【図２０】
2015154398.tif 000022
【図２１】
2015154398.tif 000023
【図２２】
2015154398.tif 000024