(57)【要約】【課題】複数回線から最適な回線を選択する通信システムを提供する。【解決手段】通信システムは、第１〜第３のゲートウェイと、コントローラと、を含む。第１のゲートウェイは、端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続されている。第２のゲートウェイは、第１のゲートウェイと第１の回線を介して接続されている。第３のゲートウェイは、第２のゲートウェイと同じセンタに設置され、インターネットと接続するための第３の回線と接続されている。コントローラは、第１のゲートウェイ、第２のゲートウェイ及び第３のゲートウェイを制御する。コントローラは、第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出し、算出された指標に対して統計処理を施した結果に基づいて第１のゲートウェイにおける回線切替を制御する。【選択図】図１
2020010215.tif 000002
【特許請求の範囲】
【請求項１】
端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続された第１のゲートウェイと、
前記第１のゲートウェイと前記第１の回線を介して接続されている第２のゲートウェイと、
前記第２のゲートウェイと同じセンタに設置され、インターネットと接続するための第３の回線と接続されている第３のゲートウェイと、
前記第１、第２及び第３のゲートウェイを制御するコントローラと、
を含み、
前記コントローラは、前記第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出し、前記算出された指標に対して統計処理を施した結果に基づいて前記第１のゲートウェイにおける回線切替を制御する、通信システム。
【請求項２】
前記コントローラは、
過去の所定期間において複数の前記指標を算出し、前記算出された複数の指標の代表値に基づき、前記第１のゲートウェイにおける回線切替を制御する、請求項１に記載の通信システム。
【請求項３】
前記コントローラは、
前記第１の回線が逼迫していると判断した場合に、前記端末から送信されるパケットが前記第２の回線から転送されるように、前記第１のゲートウェイにおける回線切替を制御する、請求項１又は２に記載の通信システム。
【請求項４】
前記コントローラは、
前記第３の回線が逼迫していると判断した場合に、前記端末から送信されるパケットが前記第２の回線から転送されるように、前記第１のゲートウェイにおける回線切替を制御する、請求項１又は２に記載の通信システム。
【請求項５】
前記コントローラは、
前記端末からインターネットに送信されるパケットのペイロードに記載された情報に基づき、前記第１のゲートウェイにおける回線切替を制御する、請求項１乃至４のいずれか一項に記載に通信システム。
【請求項６】
前記コントローラは、
前記端末からインターネットに送信されるパケットを利用するアプリケーションの種別に基づき、前記第１のゲートウェイにおける回線切替を制御する、請求項５に記載の通信システム。
【請求項７】
前記第２の回線はモバイル回線であり、
前記コントローラは、
前記第２の回線を介して前記端末からインターネットに送信されたデータの総量を算出し、前記算出されたデータの総量に基づいて前記第２の回線の総量制限が適用され通信速度が抑制されると予測される場合、前記第２の回線における契約上の許容データの上限を引き上げるための処理を行う、請求項１乃至６のいずれか一項に記載の通信システム。
【請求項８】
前記コントローラは、
前記第２の回線の総量制限が適用されると予測される場合には、前記第１のゲートウェイから前記第２の回線を介して転送されるパケットが所定の割合で破棄されるように前記第１のゲートウェイを制御する、請求項７に記載の通信システム。
【請求項９】
前記コントローラは、
第２の回線の使用を許可しないアプリケーションにて使用されるパケットが前記第１のゲートウェイにて破棄されるように前記第１のゲートウェイを制御する、請求項８に記載の通信システム。
【請求項１０】
端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続された第１のゲートウェイと、
前記第１のゲートウェイと前記第１の回線を介して接続されている第２のゲートウェイと、
前記第２のゲートウェイと同じセンタに設置され、インターネットと接続するための第３の回線と接続されている第３のゲートウェイと、
前記第１、第２及び第３のゲートウェイを制御するコントローラと、
を含む通信システムにおいて、
前記第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出するステップと、
前記算出された指標に対して統計処理を施した結果に基づいて前記第１のゲートウェイにおける回線切替を制御するステップと、
を含む通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム及び通信方法に関する。
【背景技術】
【０００２】
ＳＤ−ＷＡＮ（Software Defined Wide Area Network）が適用されたネットワークにおいて、拠点からのインターネットアクセス経路が２回線以上存在することがある。例えば、ＭＰＬＳ（Multi-Protocol Label Switching）による専用回線や、ＬＴＥ（Long Term Evolution）等によるモバイル回線によりＳＤ−ＷＡＮが適用されたネットワークにおいて、拠点からインターネットアクセスが行われる。
【０００３】
このようなネットワークにおいて、ＩＰ（Internet protocol）−５ｔｕｐｌｅ（タプル）と称される情報（送信元アドレス等）やアプリケーション種別（ＤＰＩ；Deep Packet Inspection）等により使用回線（専用回線、モバイル回線）の選択が行われている。
【０００４】
非特許文献１は、ＳＤＮ（Software Defined Network）を構築するにあたり用いられるオープンフロースイッチの仕様書である。特許文献１には、過去１回分のネットワーク情報（ＲＴＴ；Round Trip Time、空き帯域等）を参照し、複数回線のうち使用する回線を決定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１８７０３９号公報
【非特許文献】
【０００６】
【非特許文献１】ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ  １．５．１  （Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ  ０ｘ０６）、ＯＮＦ、［ｏｎｌｉｎｅ］、［平成３０（２０１８）年６月２６日検索］、インターネット〈URL: https://3vf60mmveq1g8vzn48q2o71a-wpengine.netdna-ssl.com/wp-content/uploads/2014/10/openflow-switch-v1.5.1.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００７】
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
【０００８】
上述のように、ＳＤ−ＷＡＮが適用されたネットワークにおいて、拠点からのインターネットアクセス経路が２回線以上（ＭＰＬＳ回線、モバイル回線など）存在する場合に、通信先やアプリケーション種別等に応じて使用回線の選択が行われることがある。しかし、キャリアデータセンタ側のインターネットアクセス回線や各企業支店のＭＰＬＳ回線の空き帯域を考慮して各拠点（例えば、企業の支店）では使用回線の選択ができなかった。
【０００９】
ここで、ＭＰＬＳ回線には「帯域保証型、通信量の制限がない」という契約が多く、モバイル回線には「ベストエフォート型、通信量に総量制限がある」という契約が多い。各企業等がこのような契約を結んでいる場合、ＭＰＬＳ回線が混雑状態となった場合にモバイル回線を代替え回線として使用することになる。しかし、回線切り替えの判定基準（クライテリア）が曖昧なため、高品質かつ総量制限もない高価なＭＰＬＳ回線の契約帯域を上限まで有効活用できていないのが現状である。
【００１０】
特許文献１に開示された技術では、過去１回分のネットワーク情報を利用して使用する回線を選択している。しかしながら、実際のネットワークにおける状態は時間と共に変化するため、過去１回のネットワーク情報に基づく回線の選択では最適な回線が選択されないこともある。例えば、回線の空き帯域を参照し、複数回線の中から使用する回線を選択したとしてもネットワークには通信の揺らぎやバースト（瞬間的な通信量の増加）が存在する。そのため、これらネットワークに生じうる現象（揺らぎ、バースト）を考慮せず、回線を選択すると最適な回線の選択が行えないことがある。
【００１１】
本発明は、複数回線から最適な回線を選択することに寄与する、通信システム及び通信方法を提供することを主たる目的とする。
【課題を解決するための手段】
【００１２】
本発明乃至開示の第１の視点によれば、端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続された第１のゲートウェイと、前記第１のゲートウェイと前記第１の回線を介して接続されている第２のゲートウェイと、前記第２のゲートウェイと同じセンタに設置され、インターネットと接続するための第３の回線と接続されている第３のゲートウェイと、前記第１、第２及び第３のゲートウェイを制御するコントローラと、を含み、前記コントローラは、前記第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出し、前記算出された指標に対して統計処理を施した結果に基づいて前記第１のゲートウェイにおける回線切替を制御する、通信システムが提供される。
【００１３】
本発明乃至開示の第２の視点によれば、端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続された第１のゲートウェイと、前記第１のゲートウェイと前記第１の回線を介して接続されている第２のゲートウェイと、前記第２のゲートウェイと同じセンタに設置され、インターネットと接続するための第３の回線と接続されている第３のゲートウェイと、前記第１、第２及び第３のゲートウェイを制御するコントローラと、を含む通信システムにおいて、前記第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出するステップと、前記算出された指標に対して統計処理を施した結果に基づいて前記第１のゲートウェイにおける回線切替を制御するステップと、を含む通信方法が提供される。
【発明の効果】
【００１４】
本発明乃至開示の各視点によれば、複数回線から最適な回線を選択することに寄与する、通信システム及び通信方法が、提供される。
【図面の簡単な説明】
【００１５】
【図１】一実施形態の概要を説明するための図である。
【図２】第１の実施形態に係る通信システムの概略構成の一例を示す図である。
【図３】第１の実施形態に係るコントローラの処理構成（処理モジュール）の一例を示す図である。
【図４】第１の実施形態に係るゲートウェイの処理構成（処理モジュール）の一例を示す図である。
【図５】第１の実施形態に係る通信システムの動作の一例を示すシーケンス図である。
【図６】第１に実施形態に係る通信システムの動作を説明するための図である。
【図７】第２に実施形態に係る通信システムの動作を説明するための図である。
【図８】第２の実施形態に係る通信システムの変形例を説明するための図である。
【図９】第３の実施形態に係る通信システムの動作を説明するための図である。
【図１０】コントローラのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１６】
初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。また、各図におけるブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号（データ）の流れを模式的に示すものであり、双方向性を排除するものではない。さらに、本願開示に示す回路図、ブロック図、内部構成図、接続図などにおいて、明示は省略するが、入力ポート及び出力ポートが各接続線の入力端及び出力端のそれぞれに存在する。入出力インターフェイスも同様である。
【００１７】
一実施形態に係る通信システムは、第１のゲートウェイ１０１と、第２のゲートウェイ１０２と、第３のゲートウェイ１０３と、コントローラ１０４と、を含む（図１参照）。第１のゲートウェイ１０１は、端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続されている。第２のゲートウェイ１０２は、第１のゲートウェイ１０１と第１の回線を介して接続されている。第３のゲートウェイ１０３は、第２のゲートウェイ１０２と同じセンタに設置され、インターネットと接続するための第３の回線と接続されている。コントローラ１０４は、第１のゲートウェイ１０１、第２のゲートウェイ１０２及び第３のゲートウェイ１０３を制御する。コントローラ１０４は、第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出し、算出された指標に対して統計処理を施した結果に基づいて第１のゲートウェイ１０１における回線切替を制御する。
【００１８】
上記通信システムは、拠点からインターネットにアクセスするための回線の状態を示す指標（例えば、回線混雑率）を算出し、当該算出された指標に対して統計処理（例えば、中央値の算出）を実行する。当該統計処理により得られる結果は、ネットワークの回線状態が正確に反映された値となるので、コントローラ１０４が当該統計処理の結果に基づき回線の切り替えを制御することで、不適切な回線が選択されることが回避される。
【００１９】
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
【００２０】
［第１の実施形態］
第１の実施形態について、図面を用いてより詳細に説明する。
【００２１】
図２は、第１の実施形態に係る通信システムの概略構成の一例を示す図である。図２を参照すると、通信システムには、キャリアデータセンタと、拠点Ａ及びＢが含まれる。
【００２２】
キャリアデータセンタには、コントローラ１０と、ゲートウェイ２０−１及び２０−２と、が含まれる。キャリアデータセンタは、ＭＰＬＳ回線を提供する業者が運営、管理する拠点（サイト）である。
【００２３】
拠点Ａ及びＢは、キャリアデータセンタが提供するＭＰＬＳ回線を利用する企業等の支店等が該当する。各拠点には複数の端末が含まれる。各拠点の端末は、インターネット上のサーバ等にアクセスする。
【００２４】
なお、本願開示において、ＭＰＬＳ回線は伝送メディア（光ファイバーや電波などの物理回線の種別）の違いやＳＬＡ（Service Level Agreement）契約などにより高品位の通信が提供される回線である事を前提とする。
【００２５】
ゲートウェイ２０−１は、ゲートウェイ２０−３とＭＰＬＳ回線（第１の回線）を介して接続されているゲートウェイである。ゲートウェイ２０−１は、ＭＰＬＳ回線を終端する。ゲートウェイ２０−２は、ゲートウェイ２０−１と同じセンタ（キャリアデータセンタ）に設置され、インターネットと接続するための回線（第３の回線）と接続されている。ゲートウェイ２０−２は、キャリアデータセンタとインターネットを接続する通信装置である。ゲートウェイ２０−１及びゲートウェイ２０−２は、有線又は無線により接続され相互にデータ（パケット）の交換が可能に構成されている。
【００２６】
拠点Ａには、ゲートウェイ２０−３が設置されている。同様に、拠点Ｂには、ゲートウェイ２０−４が設置されている。ゲートウェイ２０−３、ゲートウェイ２０−４は、端末を含む拠点に設置されたゲートウェイであって、少なくともＭＰＬＳ回線（第１の回線）及びモバイル回線（第２の回線）に接続されたゲートウェイである。
【００２７】
なお、以降の説明において、ゲートウェイ２０−１〜２０−４を区別する特段の理由がない場合には単に「ゲートウェイ２０」と表記する。ゲートウェイ２０は、コントローラ１０から制御されるＳＤ−ＷＡＮゲートウェイ（ＳＤ−ＷＡＮルータ）である。
【００２８】
コントローラ１０は、ゲートウェイ２０を制御するＳＤ−ＷＡＮコントローラである。コントローラ１０は、ＭＰＬＳ回線、モバイル回線、インターネットとの接続回線のうち少なくとも１つの回線の状態を示す指標を算出し、当該算出された指標に対して統計処理を施した結果に基づいて各拠点のゲートウェイ２０における回線切替を制御する。
【００２９】
図２に示すように、キャリアデータセンタはゲートウェイ２０−２を介してインターネットと接続されている。各拠点とキャリアデータセンタはＭＰＬＳ回線による仮想的な専用回線で接続されている。また、各拠点は、ＬＴＥ（Long Term Evolution）等のモバイル回線（モバイルネットワーク回線）を介してインターネットと接続可能に構成されている。
【００３０】
このように、第１の実施形態に係る通信システムでは、拠点Ａ、Ｂからのインターネットアクセス経路として、キャリアデータセンタを経由するＭＰＬＳ回線（ＭＰＬＳ網）とモバイル回線（モバイル網）の２回線が存在する。
【００３１】
なお、図２の構成は例示であって、通信システムの構成を限定する趣旨ではないことは勿論である。例えば、図２では、キャリアデータセンタからのインターネットアクセス回線は１回線となっているが当該回線は複数でもよい。また、図２には、２つの拠点Ａ、Ｂを図示しているが、拠点の数を制限する趣旨ではないことは勿論である。
【００３２】
コントローラ１０とゲートウェイ２０は、専用の制御線（図示せず）により接続されており、制御情報等の授受が可能に構成されている。コントローラ１０は、例えば、オープンフローコントローラであり、ゲートウェイ２０は、例えば、オープンフロースイッチである。これらの基本動作は、非特許文献１に記載されているので説明を省略する。
【００３３】
図３は、コントローラ１０の処理構成（処理モジュール）の一例を示す図である。図３を参照すると、コントローラ１０は、通信制御部２０１と、情報入力部２０２と、ゲートウェイ制御部２０３と、回線状態測定部２０４と、回線管理部２０５と、記憶部２０６と、を含んで構成される。
【００３４】
通信制御部２０１は、ゲートウェイ２０との間の通信を制御する手段である。通信制御部２０１は、他の処理モジュール（例えば、ゲートウェイ制御部２０３等）から取得したパケットをゲートウェイ２０に向けて送信する。また、通信制御部２０１は、ゲートウェイ２０から取得したパケットを他の処理モジュールに振り分ける。
【００３５】
情報入力部２０２は、外部（システム管理者等）からコントローラ１０の動作に必要な情報等を入力する手段である。例えば、情報入力部２０２は、キャリアデータセンタのインターネット接続回線（ゲートウェイ２０−２とインターネットを接続する回線）の契約プランに関する情報を入力する。契約プランに関する情報には、当該回線の帯域上限に関する情報が含まれる。
【００３６】
また、情報入力部２０２は、各拠点のアクセス回線（ＭＰＬＳ回線、モバイル回線）に関する契約プラン情報も入力する。例えば、各拠点のＭＰＬＳ回線契約における帯域の上限がコントローラ１０に入力される。
【００３７】
ゲートウェイ制御部２０３は、ゲートウェイ２０に設定する制御情報（フローテーブルに設定するエントリ）を生成する。ゲートウェイ制御部２０３は、当該制御情報をゲートウェイ２０に設定することで、各ゲートウェイ２０の動作を制御する。
【００３８】
上述のように、各拠点に含まれる端末がインターネットにアクセスするための回線は２種類存在する。ＭＰＬＳ回線とモバイル回線である。
【００３９】
例えば、拠点Ａの端末がＭＰＬＳ回線を利用してインターネットにアクセスする場合には、コントローラ１０は、ゲートウェイ２０−１〜２０−３のそれぞれに処理規則を設定し、拠点Ａから送信されるパケットのインターネットへの転送を実現する。とりわけ、コントローラ１０は、ゲートウェイ２０−３に対し、ＭＰＬＳ回線を利用するフローを特定するための識別情報（送信元アドレス、宛先アドレス等）、出力ポート等に関する情報を含む処理規則を設定する。当該処理規則にはＭＰＬＳ回線を利用するためのラベル付与に関する処理も含まれる。
【００４０】
拠点Ａの端末がモバイル回線を利用してインターネットにアクセスする場合には、コントローラ１０は、ゲートウェイ２０−３に対してモバイル回線を利用するフローを特定するための識別情報、出力ポートに関する情報を含む処理規則を設定する。
【００４１】
ゲートウェイ制御部２０３は、各ゲートウェイ２０に対し、統計情報を定期的にコントローラ１０に送信させる処理規則を設定する。例えば、ゲートウェイ制御部２０３は、フローごと（フローエントリごと）に送受信されたパケット数、送受信されたバイト数に関する統計情報がコントローラ１０に送信されるように処理規則をゲートウェイ２０に設定する。当該処理規則により得られる統計情報（トラヒック情報）を用いて、コントローラ１０は、各拠点からＭＰＬＳ回線やモバイル回線を経由してインターネットにアクセスするフローのネットワーク使用帯域を計算できる。
【００４２】
ゲートウェイ制御部２０３は、各拠点からインターネットにアクセスする際に使用する回線としてＭＰＬＳ回線を優先的に選択する。より具体的には、ゲートウェイ制御部２０３は、ゲートウェイ２０から処理規則の設定を要求された場合に、ゲートウェイ２０が受信したパケット（未知のパケット）の転送先（フローの収容先）としてＭＰＬＳ回線を選択する。
【００４３】
ゲートウェイ制御部２０３がゲートウェイ２０に設定した処理規則や取得した統計情報等は、記憶部２０６に格納される。
【００４４】
回線状態測定部２０４は、キャリアデータセンタとインターネットを接続する回線の状態を測定する手段である。具体的には、回線状態測定部２０４は、キャリアデータセンタのインターネット接続回線における混雑率を測定する。混雑率の具体的な測定方法は以下のとおりである。
【００４５】
はじめに、回線状態測定部２０４は、情報入力部２０２が取得したキャリアデータセンタのインターネット接続回線の契約プラン情報から帯域上限を読み取る。
【００４６】
次に、回線状態測定部２０４は、キャリアデータセンタのインターネット側出口のゲートウェイであるゲートウェイ２０−２から取得したトラヒック情報（統計情報）から現在の使用帯域（送信レート）を算出する。
【００４７】
例えば、回線状態測定部２０４は、ゲートウェイ２０−２から送信されてくる転送バイト数を統計情報の送信間隔で除算することで使用帯域を算出する。次に、回線状態測定部２０４は、算出した使用帯域と読み取った帯域上限から回線混雑率を算出する。具体的には、回線状態測定部２０４は、算出した使用帯域を帯域上限で除算することで回線混雑率を算出する。
【００４８】
回線状態測定部２０４は、上記の回線混雑率の算出を所定間隔（例えば、１秒ごと）ごとに所定回数（例えば、１０回）繰り返し、算出した複数の回線混雑率に対して統計処理を行う。例えば、回線状態測定部２０４は、複数の回線混雑率の平均値、中央値、最頻値等を算出し、回線混雑率の代表値を算出する。回線状態測定部２０４は、算出した回線混雑率の代表値を回線管理部２０５に引き渡す。
【００４９】
回線管理部２０５は、各拠点の端末がインターネットにアクセスする際に使用する回線を管理する手段である。回線管理部２０５は、回線状態測定部２０４から取得した回線混雑率の代表値に閾値処理を実行し、回線混雑率の代表値が所定値（閾値）を上回っているか否かを判定する。
【００５０】
回線混雑率の代表値が所定値を上回っている場合には、回線管理部２０５は、キャリアデータセンタとインターネット間の回線が逼迫（輻輳）していると判断する。回線管理部２０５は、キャリアデータセンタとインターネット間の回線が逼迫している場合に、ＭＰＬＳ回線を経由してインターネットに転送されるデータ（パケット）の一部をモバイル回線にオフロードする。具体的には、回線管理部２０５は、上記オフロードを実現する処理規則を生成し、ゲートウェイ制御部２０３を介してゲートウェイ２０に当該生成した処理規則を設定する。
【００５１】
上述のように、各拠点のゲートウェイ２０には、ＭＰＬＳ回線が使用される処理規則が設定されている。つまり、システム運用時には、コントローラ１０から各拠点のゲートウェイ２０に対してＭＰＬＳ回線に全通信を振り分けるように指示がされている。
【００５２】
また、ゲートウェイ制御部２０３は、各拠点のゲートウェイ２０に対し、ＭＰＬＳ回線でパケット破棄（パケットロス）を検出すると、コントローラ１０に対して当該事実（パケット破棄）を通知させる処理規則を設定しておく。
【００５３】
回線管理部２０５は、各拠点のゲートウェイ２０にてパケットロスが発生した場合に、ＭＰＬＳ回線の使用帯域が契約帯域上限を超えたと判断する。回線管理部２０５は、ＭＰＬＳ回線の使用帯域が契約帯域上限を超えたと判断した場合に、各拠点からのＭＰＬＳ回線を介してインターネットに転送されるパケットの一部を段階的にモバイル回線にオフロードする。
【００５４】
例えば、回線管理部２０５は、各拠点のＭＰＬＳ回線を利用する複数のフローからランダムにフローを選択する。回線管理部２０５は、当該選択したフローに対応する処理規則（フローエントリ）を記憶部２０６から読み出す。回線管理部２０５は、当該選択したフローに属するパケットはモバイル回線を介して転送されるような処理規則に上記読み出した処理規則を変更する。具体的には、回線管理部２０５は、通信先（（ＩＰ-５ｔｕｐｌｅ）やアプリケーション種別（ＤＰＩ）単位）によりオフロードするフローを指定し、出力先を変更した新たな処理規則を生成する。生成された処理規則はゲートウェイ制御部２０３を介して各ゲートウェイ２０に設定される（フローエントリが書き換えられる）。
【００５５】
上記処理（一部フローのパケットをオフロード）によってもＭＰＬＳ回線におけるパケットロスが解消しない場合には、回線管理部２０５は、パケットロスが解消するまでオフロードする対象となるフローを増やす。即ち、コントローラ１０は、キャリアデータセンタとインターネット間の回線混雑率の代表値が所定値（閾値）を下回るまで各拠点のＭＰＬＳ回線の一部データの転送先をモバイル回線に切り替えるよう各拠点のゲートウェイ２０に対して指示を行う。
【００５６】
図４は、ゲートウェイ２０の処理構成（処理モジュール）の一例を示す図である。図４を参照すると、ゲートウェイ２０は、パケット処理部３０１と、記憶部３０２と、を含んで構成される。
【００５７】
パケット処理部３０１は、コントローラ１０から設定された処理（パケット処理）を実行する手段である。パケット処理部３０１は、ゲートウェイ２０が持つ転送テーブルの更新およびパケット転送の機能を備える。例えば、コントローラ１０から処理規則（フローエントリ）を受信した場合、命令通りに転送するように自身の転送テーブルを変更する。
【００５８】
また、パケット処理部３０１は、受信パケットを受信した際に、当該受信パケットに適合するフローエントリが存在しない場合には、当該受信パケット（未知のパケット）を処理するための処理規則の設定をコントローラ１０に要求する。
【００５９】
パケット処理部３０１は、当該要求に応じて送信された処理規則を転送テーブルに追加する。あるいは、パケット処理部３０１は、ＭＰＬＳ回線からモバイル回線にパケットをオフロードするための処理規則を受信した場合には、既存の処理規則と新たな処理規則を入れ替える（フローテーブルを更新する）。
【００６０】
記憶部３０２は、上記転送テーブル（フローテーブル）を保持する。
【００６１】
続いて、図面を参照しつつ、第１の実施形態に係る通信システムの動作を説明する。図５は、第１の実施形態に係る通信システムの動作の一例を示すシーケンス図である。図６は、第１に実施形態に係る通信システムの動作を説明するための図である。
【００６２】
はじめに、各拠点の端末は、インターネット上のサーバ等に向けてパケットを送信する（ステップＳ０１）。
【００６３】
ゲートウェイ２０は、当該パケットを受信し、自装置の転送テーブル（フローテーブル）を検索し、当該パケットを処理するための処理規則が存在するか否かを判定する。処理規則が存在しなければ、ゲートウェイ２０は、当該パケットを付して、コントローラ１０に対して処理規則の設定要求を行う（ステップＳ０２）。
【００６４】
コントローラ１０は、当該処理規則の設定要求に応じて処理規則を生成する（ステップＳ０３）。その際、コントローラ１０は、各拠点の端末からのパケットはＭＰＬＳ回線に転送されるように処理規則を設定する。
【００６５】
コントローラ１０は、生成した処理規則をゲートウェイ２０に設定する（ステップＳ０４）。
【００６６】
ゲートウェイ２０は、当該設定された処理規則に従い端末からのパケットを処理（転送）する（ステップＳ０５）。コントローラ１０は、ＭＰＬＳ回線が優先的に使用されるように処理規則を生成するため、端末が送信するパケットはＭＰＬＳ回線に転送される。
【００６７】
コントローラ１０は、定期的又は所定のタイミングにて、キャリアデータセンタとインターネットを接続する回線の回線混雑率（回線混雑率の代表値）を算出する（ステップＳ１１、図６のステップＡ０１）。
【００６８】
コントローラ１０は、回線混雑率の代表値に基づき上記回線が逼迫していると判断した場合には、ＭＰＬＳ回線を介してインターネットに接続されるフローの一部をモバイル回線にオフロードする。
【００６９】
具体的には、コントローラ１０は、モバイル回線にオフロードするフローを選択する（ステップＳ１２）。その後、コントローラ１０は、選択したフローのオフロードを実現するための新たな処理規則を生成する（ステップＳ１３；処理規則の変更）。
【００７０】
コントローラ１０は、生成した処理規則をゲートウェイ２０に設定（ステップＳ１４）し、各ゲートウェイ２０に対して一部フローのオフロードを指示する（図６のステップＡ０２）。
【００７１】
ゲートウェイ２０は、受信した処理規則（オフロード用の処理規則）により既存の処理規則を変更する（ステップＳ１５）。
【００７２】
当該処理規則の変更後に各拠点の端末がインターネット上のサーバ等に向けてパケットを送信すると（ステップＳ１６）、ゲートウェイ２０は、当該パケットをモバイル網に転送する（ステップＳ１７、図６のステップＡ０３）。
【００７３】
このように、コントローラ１０は、過去の所定期間において複数の指標（複数個の回線混雑率）を算出し、当該算出された複数の指標の代表値に基づき、各拠点のゲートウェイ２０を制御する。また、コントローラ１０は、キャリアデータセンタとインターネットを結ぶ回線が逼迫していると判断した場合に、端末から送信されるパケットがモバイル回線から転送されるように、各拠点のゲートウェイ２０における回線切替を制御する。
【００７４】
各拠点のゲートウェイ２０は、コントローラ１０からの指示通りにモバイル回線へのトラヒックオフロードを実施する。例えば、ゲートウェイ２０−３において、１０本のフローそれぞれに対応するフローエントリが設定されていれば、コントローラ１０は、当該１０本のフローのうち一部（例えば、３本）を選択する。コントローラ１０は、当該選択したフローに対応する処理規則を記憶部２０６から読み出し、当該処理規則の出力先ポートをＭＰＬＳ回線からモバイル回線に変更する。コントローラ１０は、新たな処理規則（オフロード用の処理規則）をゲートウェイ２０−３に設定する。
【００７５】
以上のように、第１の実施形態では、インターネット接続回線が逼迫し、且つ、ＭＰＬＳ回線にパケットロスが発生した場合にＭＰＬＳ回線からモバイル回線にパケットオフロードを実行する。その結果、ユーザがＭＰＬＳ回線にて利用できる帯域を有効に活用することができる。その際、第１の実施形態では、ネットワークの回線状態を示す指標（回線混雑率）を複数回測定し、複数の測定値に対して統計処理を施すことでネットワークの回線状態が適切（正確）に反映された値（回線混雑率の代表値）を算出する。
【００７６】
第１の実施形態では、当該ネットワークの状態が正確に反映された値に基づき、回線の選択を行うので不適切な回線が選択されることがない。例えば、上記の例において、回線混雑率に統計処理を施さず、１回の測定による回線混雑率を用いると、キャリアデータセンタからインターネットに送信されるデータが瞬間的に増加した場合に、当該回線が逼迫していると判断されうる。この場合、ＭＰＬＳ回線を使用する一部のフローがモバイル回線にオフロードされ、結果的に不適切な回線（モバイル回線）が選択されることになる。しかし、実際には、上記回線に逼迫が発生していないのであれば、上記オフロードは不要であり、引き続き利用者にとってメリット（高品質、定額料金）の大きいＭＰＬＳ回線を使用するのが正しい回線選択となる。
【００７７】
第１の実施形態では、ネットワークの状態を示す指標を複数回算出し、その代表値を計算することで当該ネットワークに生じる「ゆらぎ」や「バースト」の影響を排除する。その結果、複数回線から最適な回線を選択することができる。より具体的には、図２に示すようなＳＤ−ＷＡＮが適用されたネットワークにおいて、拠点からのインターネットアクセス経路が複数（ＭＰＬＳ回線、モバイル回線など）ある場合を想定する。この場合、第１の実施形態では、キャリアデータセンタからのインターネットアクセス回線の混雑率を考慮して代替え経路に迂回することにより高品質なＭＰＬＳ回線の契約帯域を上限まで有効活用できる。
【００７８】
［第２の実施形態］
続いて、第２の実施形態について図面を参照して詳細に説明する。
【００７９】
第１の実施形態では、キャリアデータセンタとインターネット間の回線状態に基づき、各拠点におけるパケットオフロードを実行している。第２の実施形態では、各拠点とキャリアデータセンタ間の回線状態に基づき、各拠点におけるパケットオフロードの実行について説明する。
【００８０】
なお、第２の実施形態に係る通信システムの構成や、各装置（コントローラ１０、ゲートウェイ２０）の処理構成等は、第１の実施形態と同一とすることができるのでその説明を省略する。
【００８１】
第２の実施形態に係る回線状態測定部２０４は、各拠点とキャリアデータセンタを接続するＭＰＬＳ回線の状態を測定する。回線状態測定部２０４は、拠点ごとのＭＰＬＳ回線の契約プラン情報からＭＰＬＳ回線における真の帯域上限を読み取る。
【００８２】
次に、回線状態測定部２０４は、読み取った帯域上限に基づきＭＰＬＳ網の状態を測定するための帯域上限を設定する。例えば、回線状態測定部２０４は、ＭＰＬＳ網の真の帯域上限に対し８割程度をＭＰＬＳ回線の帯域上限に設定する。あるいは、回線状態測定部２０４は、上記上限を帯域使用実績等から決定してもよい。回線状態測定部２０４は、ＭＰＬＳ回線の帯域上限をＭＰＬＳ回線の揺らぎ及び／又はバーストを考慮して、ある程度のマージンを持たせて決定する。
【００８３】
次に、回線状態測定部２０４は、ＭＰＬＳ回線の使用帯域を算出する。具体的には、回線状態測定部２０４は、各拠点からインターネットにアクセスするフローごと（フローエントリごと）の統計情報（トラヒック情報）に基づき、各フローの使用帯域を計算する。各フローの使用帯域の合計が、拠点とキャリアデータセンタを接続するＭＰＬＳ回線における使用帯域となる。
【００８４】
次に、回線状態測定部２０４は、各拠点のＭＰＬＳ回線の帯域上限からＭＰＬＳ回線の使用帯域を減算することで、空き帯域を算出する。回線状態測定部２０４は、ＭＰＬＳ回線の契約プラン情報から得られる帯域上限とＭＰＬＳ回線の使用帯域（ゲートウェイ２０から得られるトラヒック情報から算出される使用帯域）に基づき、ＭＰＬＳ回線の空き帯域を算出する。
【００８５】
回線状態測定部２０４は、上記の空き帯域の算出を所定間隔ごとに所定回数繰り返し、算出した複数の空き帯域に対して統計処理を行う。例えば、回線状態測定部２０４は、複数の空き帯域の平均値、中央値、最頻値等を算出し、空き帯域の代表値を算出する。回線状態測定部２０４は、算出した空き帯域の代表値を回線管理部２０５に引き渡す。
【００８６】
回線管理部２０５は、取得した空き帯域の代表値がマイナスの値であれば、ＭＰＬＳ回線における使用帯域がマージンを持たせた帯域上限よりも大きいことを意味するので、ＭＰＬＳ回線が逼迫していると判断する。対して、回線管理部２０５は、取得した空き帯域の代表値がプラス又はゼロの値であれば、ＭＰＬＳ回線における使用帯域がマージンを持たせた帯域上限以下であることを意味するので、ＭＰＬＳ回線が逼迫しているとは判断しない。
【００８７】
回線管理部２０５は、ＭＰＬＳ回線が逼迫していると判断した場合には、当該逼迫が解消するように各拠点の回線を制御する。回線管理部２０５は、各拠点のＭＰＬＳ回線からモバイル回線へのパケットオフロードを実行する処理規則を生成する。生成された処理規則は、ゲートウェイ制御部２０３を介してゲートウェイ２０に設定される。
【００８８】
具体的には、回線管理部２０５は、各拠点のゲートウェイ２０から得られる統計情報（トラヒック情報）に基づき、ＭＰＬＳ回線の帯域上限を超過している使用帯域よりも多くの帯域を消費しているフローを選択する。あるいは、回線管理部２０５は、複数のフローにおける使用帯域の合計が上記ＭＰＬＳ回線の帯域上限を超過している使用帯域よりも大きい複数のフローを選択する。
【００８９】
回線管理部２０５は、当該選択したフローに属するパケットがＭＰＬＳ回線からモバイル回線にオフロードされるような処理規則を生成する（処理規則を変更する）。
【００９０】
回線管理部２０５は、ゲートウェイ２０のトラヒック情報から各フローの使用帯域を算出し、当該使用帯域の総和がＭＰＬＳ回線の帯域上限に収まるようにフローを特定し、当該特定したフロー以外のフローがオフロードされるように処理規則を生成してもよい。回線管理部２０５は、ゲートウェイ２０のトラヒック情報から空き帯域に収まる分のデータ（通信先（ＩＰ−５ｔｕｐｌｅ）やアプリケーション種別（ＤＰＩ）単位）を選定し、ＭＰＬＳ回線側に振り分けるようゲートウェイ２０に指示する。この場合、ＭＰＬＳ回線側に収まらない分のデータはモバイル回線側にオフロードされる（コントローラ１０からゲートウェイ２０に対してオフロードが指示される）。
【００９１】
なお、回線管理部２０５によるオフロード実行可否は、過去のトラヒック情報やＯＳ（Operating System）ベンダーのＯＳ更新情報を参照して判断されてもよい。例えば、回線管理部２０５は、年間を通して見た場合の１日のトラヒック分布、特定の１日を通して見た場合の分単位のトラヒック分布などの過去データ、更に多種多様の外部データ（Ｂｉｇ  ｄａｔａ）を参照する事で近未来のトラヒックを予想しモバイル回線への振り分けを判断してもよい。例えば、回線管理部２０５は、過去のトラヒック情報を参照し、ＯＳの更新によるサイズの大きいデータが送受信されるタイミングを予測し、当該ＯＳ更新のデータはＭＰＬＳ回線を利用して送受信されるようにしてもよい。また、近未来のトラヒックの予想は、ＡＩ（Artificial Intelligence：人工知能）を用いて実施されてもよい。
【００９２】
続いて、図面を参照しつつ、第２の実施形態に係る通信システムの動作を説明する。図７は、第２に実施形態に係る通信システムの動作を説明するための図である。
【００９３】
図７に示すように、コントローラ１０は、ＭＰＬＳ回線の空き帯域（未使用帯域）を算出する（ステップＢ０１）。コントローラ１０は、推定した空き帯域に基づき、ＭＰＬＳ回線が逼迫していると判断した場合には、ＭＰＬＳ回線を使用するフローの一部をモバイル回線にオフロードする（ステップＢ０２）。
【００９４】
このように、コントローラ１０は、ＭＰＬＳ回線が逼迫していると判断した場合に、各拠点の端末から送信されるパケットがモバイル回線から転送されるように、各拠点のゲートウェイ２０における回線切替を制御する。
【００９５】
＜第２の実施形態の変形例＞
上記の説明では、コントローラ１０は、ゲートウェイ２０から取得するトラヒック情報から空き帯域を静的（Ｐｒｏａｃｔｉｖｅ／Ｓｔａｔｉｃ）に算出しているが、他の方法により空き帯域を算出してもよい。具体的には、コントローラ１０は、ＭＰＬＳ回線における空き帯域を動的（Ｐｒｏａｃｔｉｖｅ／Ｄｙｎａｍｉｃ）に測定しパケットオフロードの参考にしてもよい。
【００９６】
はじめに、ゲートウェイ制御部２０３は、キャリアデータセンタのゲートウェイ２０と各拠点のゲートウェイ２０の間で最低優先度（IP Precedence値が「０」等）を設定したテスト用のデータを送受信する処理規則を生成し、各ゲートウェイに設定する。また、ゲートウェイ制御部２０３は、各ゲートウェイ２０に対し、テスト用データを受信した場合には、その旨をコントローラ１０に通知させる処理規則を設定する。
【００９７】
さらに、ゲートウェイ制御部２０３は、ゲートウェイ２０から上記通知（テスト用データの受信通知）を取得すると、よりサイズの大きいテスト用のデータをゲートウェイ２０間で送受信させる処理規則をゲートウェイ２０に設定する。ゲートウェイ制御部２０３は、所定期間経過してもゲートウェイ２０から上記通知（テスト用データの受信通知）を受信できない場合に、その旨を回線状態測定部２０４に通知する。同時に、ゲートウェイ制御部２０３は、テスト用データの受信通知が受信できなかった場合、最後に受信したテスト用データのデータサイズも回線状態測定部２０４に通知する。
【００９８】
ここで、ＭＰＬＳ回線の契約帯域上限を超えた分のデータはＭＰＬＳ回線内で破棄される。回線状態測定部２０４は、当該事実を利用し、テスト用データの送受信から得られる情報に基づき、ＭＰＬＳ回線の空き帯域を測定する。上述のように、テスト用データは最低優先度で転送されているため、上限を超えてＭＰＬＳ回線内のゲートウェイで破棄されるデータはテストデータとなる（図８参照）。換言すれば、破棄されないテスト用データが使用する通信帯域は、通常のデータ（業務使用のデータ）が使用していない通信帯域に相当する。つまり、破棄されていないテスト用データの通信帯域はＭＰＬＳ回線の空き帯域に相当する。
【００９９】
回線状態測定部２０４は、取得したテスト用データの送受信時刻とパケットサイズから当該テスト用データの使用帯域を計算し、空き帯域とする。回線状態測定部２０４は、上記空き帯域の算出を繰り返し、得られた複数の空き帯域に対して統計処理を施すことで、代表値を算出する。
【０１００】
回線管理部２０５は、先に説明した場合と同様に、空き帯域の代表値に収まる分のデータをＭＰＬＳ回線に、収まらないデータをモバイル回線にそれぞれ収容するように処理規則を設定（変更）する。
【０１０１】
以上のように、第２の実施形態に係るコントローラ１０は、各拠点のＭＰＬＳ回線契約における帯域の上限に基づきＭＰＬＳ回線からモバイル回線に切り替えるデータ量を決定する。より具体的には、第２の実施形態に係るコントローラ１０は、各拠点によるＭＰＬＳ回線の使用帯域が帯域上限に到達してパケット伝送速度が低下した場合に、一部フローをモバイル回線にオフロードする。その結果、第１の実施形態と同様に、ユーザがＭＰＬＳ回線にて利用できる帯域を有効に活用することができる。
【０１０２】
［第３の実施形態］
続いて、第３の実施形態について図面を参照して詳細に説明する。
【０１０３】
第３の実施形態では、モバイル回線の状態を測定し、モバイル回線の総量制限を回避するように各拠点の回線を制御する場合について説明する。なお、第３の実施形態に係る通信システムの構成や、各装置（コントローラ１０、ゲートウェイ２０）の処理構成等は、第１の実施形態と同一とすることができるのでその説明を省略する。
【０１０４】
通常、モバイル回線において通信量の総量制限が適用されると、通信速度が低速（例えば、１２８ｋｂｐｓ）に抑制される。このような状況下では、各拠点における業務に支障がありモバイル回線の通常使用が困難になる。第３の実施形態では、このような状況を回避するため、モバイル回線側で通信量の総量制限にかからないように以下の制御を行う。
【０１０５】
第３の実施形態に係る回線状態測定部２０４は、各拠点のゲートウェイ２０から取得する統計情報（トラヒック情報）に基づき、モバイル回線ごとのデータ使用量の傾向を分析する。
【０１０６】
第３の実施形態に係る回線管理部２０５は、モバイル回線の総量制限が適用され通信速度が抑制されると予測されるか否かの判断を行う。具体的には、回線管理部２０５は、モバイル回線の使用データ量とモバイル回線の契約上の許容データ量を参照し、許容データ量に対する使用データ量の割合（使用率）を計算する。回線管理部２０５は、当該使用率に対して閾値処理を実行し、使用率が一定値を超えた場合に、総量制限が適用され得ると判断する。例えば、モバイル回線の契約において月単位にて許容データが設定されている場合を考える。この場合、月初からの経過日数と総量制限が適用されると想定される使用率を対応付けて管理する。例えば、月の半分を経過する前に使用率が５０％を超えていれば、回線管理部２０５は、当月において総量制限が適用されると判断する。対して、月の半分を経過してもなお使用率が５０％以下であれば、回線管理部２０５は、総量制限は適用されないと判断する。
【０１０７】
回線管理部２０５は、モバイル回線の総量制限が適用されると判断された場合、以下の対応を行う。
【０１０８】
例えば、回線管理部２０５は、総量制限の上限を拡張するための追加データ量をモバイル通信を提供するキャリアから購入する。具体的には、回線管理部２０５は、総量制限の上限を拡張するための追加データ量の購入（枠の購入）を促すアラートを管理者等に通知する。例えば、回線管理部２０５は、コントローラ１０の保守管理画面上に上記内容のポップアップ通知やメール送信等を用いて上記アラートを実行する。
【０１０９】
このように、コントローラ１０は、モバイル回線を介して端末からインターネットに送信されたデータの総量を算出し、算出されたデータの総量に基づいてモバイル回線の総量制限が適用され通信速度が抑制されるか否かを判断する。総量制限が適用されると判断さえた場合、コントローラ１０は、モバイル回線における契約上の許容データの上限を引き上げるための処理を行う。
【０１１０】
あるいは、回線管理部２０５は、モバイル回線側で通信している非優先アプリケーション（業務アプリケーション以外）のパケットをドロップするようにしてもよい。具体的には、回線管理部２０５は、上記非優先アプリケーションに係るパケットを破棄するような処理規則を各拠点のゲートウェイ２０に設定する。つまり、回線管理部２０５は、モバイル回線の使用を許可しないアプリケーション（非優先アプリケーション；業務に使用しないアプリケーション）にて使用されるパケットが各拠点のゲートウェイ２０にて破棄されるような処理規則を生成する。
【０１１１】
あるいは、回線管理部２０５は、上記モバイル回線ごとのデータ使用量の傾向分析結果に基づき、モバイル回線のデータ使用量がリセット（初期化）される月末まで総量制限が適用されないように所定の割合でパケットを破棄してもよい。
【０１１２】
例えば、毎月７ＧＢを超えたら通信速度が１２８ｋｂｐｓに抑制される契約において、４月１０日までのデータ使用量が３ＧＢであるとする。当該分析によれば、一日の平均通信データ量は、０．３ＧＢと把握される。従って、総量制限が適用されるのは（７ＧＢに通信データ量が到達するのは）、４月２４日であると予想される。現時点が４月１０日であれば、月末までの残り日数は２０日であり、この期間にて使用可能な通信データ量は４ＧＢである。従って、月末までに総量制限が適用されないようにするには、１日あたりの平均データ量を０．２ＧＢ（＝４ＧＢ／２０日）に抑える必要がある。
【０１１３】
そこで、回線管理部２０５は、現時点での一日あたりの平均通信データ量を０．２ＧＢに抑えるように、モバイル回線を利用するパケットを破棄する処理規則を生成する。この場合、一日あたり０．３ＧＢのデータ使用量を一日あたり０．２ＧＢに抑える必要があるため、回線管理部２０５は、３３（＝０．２／０．３）％の割合でパケットを破棄する処理規則をゲートウェイ２０に設定する。
【０１１４】
上記所定割合でのパケット破棄の動作をまとめると図９のとおりとなる。はじめに、コントローラ１０、モバイル回線ごとのデータ使用量に関する分析を行う（ステップＣ０１）。コントローラ１０は、分析の結果に基づき、現状のペースにてモバイル回線の利用を進めると総量制限が適用されるか否かを判断する。
【０１１５】
総量制限が適用されると判断された場合には、コントローラ１０は、モバイル回線を介してインターネットに転送されるパケットを所定の割合で破棄する（ステップＣ０２）。
【０１１６】
以上のように、第３の実施形態では、モバイル回線の状態を測定し、当該測定結果に基づきモバイル回線におけるパケット処理を制御する。その結果、モバイル回線における総量制限が適用されず、各拠点における業務を円滑に進めることができる。
【０１１７】
［ハードウェア構成］
ネットワークシステムを構成する各装置のハードウェア構成を説明する。
【０１１８】
図１０は、コントローラ１０のハードウェア構成の一例を示す図である。コントローラ１０は、図１０に例示する構成を備える。例えば、コントローラ１０は、内部バスにより相互に接続される、ＣＰＵ（Central Processing Unit）１１、メモリ１２、入出力インターフェイス１３及び通信手段であるＮＩＣ（Network Interface Card）１４等を備える。なお、図１０に示す構成は、コントローラ１０のハードウェア構成を限定する趣旨ではない。コントローラ１０には、図示しないハードウェアも含まれていてもよい。
【０１１９】
メモリ１２は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）等である。
【０１２０】
入出力インターフェイス１３は、図示しない入出力装置のインターフェイスとなる手段である。入出力装置には、例えば、表示装置、操作デバイス等が含まれる。表示装置は、例えば、液晶ディスプレイ等である。操作デバイスは、例えば、キーボードやマウス等である。
【０１２１】
上述のコントローラ１０の各処理モジュールは、例えば、メモリ１２に格納されたプログラムをＣＰＵ１１が実行することで実現される。また、そのプログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。即ち、上記処理モジュールが行う機能を何らかのハードウェア、及び／又は、ソフトウェアで実行する手段があればよい。
【０１２２】
なお、ゲートウェイ２０もコントローラ１０と同一のハードウェア構成とするこができるので説明を省略する。
【０１２３】
［変形例］
上記第１乃至第３の実施形態にて説明した通信システムは例示であって、システムの構成等を限定する趣旨ではない。例えば、上記実施形態では、モバイル回線にオフロードするフローの内容（パケットの中身）を考慮していない。つまり、通信データ（通信先（ＩＰ-５ｔｕｐｌｅ）やアプリケーション種別（ＤＰＩ）単位）を回線ごとに振り分ける際に、上記実施形態では、通信データの内容を意識せず回線を切り替える。
【０１２４】
このような対応に加え、コントローラ１０は、パケットのペイロードに記載された情報に基づき、各拠点のゲートウェイ２０における回線切替を制御してもよい。つまり、コントローラ１０は、通信データの内容を考慮してオフロードするフローを選択してもよい。具体的には、ロードバランシングする通信データ（フロー）の選定に関し、以下の対応があり得る。
【０１２５】
第１に、コントローラ１０は、ＭＰＬＳ回線を経由してインターネットに接続するフローの「セッション」、「プロトコル」を意識して回線を切り替えてもよい。例えば、ＨＴＴＰ（Hypertext Transfer Protocol）、ＱＵＩＣ（Quick UDP Internet Connections）、ＳＩＰ（Session Initiation Protocol）等に関しては、上位レイヤでセッション維持が可能である。
【０１２６】
そこで、コントローラ１０は、このようなプロトコルに係るパケット（通信データ）を収容しているフローに関しては、優先的にモバイル回線にオフロードする。対して、ＦＴＰ（File Transfer Protocol）、ＴＥＬＮＥＴ（テルネット）、ＳＳＨ（Secure Shell）等に関しては、回線切り替えによりセッションが切断される。そのため、コントローラ１０は、このようなプロトコルに係るパケットを収容するフローに関しては可能な限り回線切替（モバイル回線へのオフロード）を控える。
【０１２７】
また、音声通信、ＴＶ電話など、最低の伝送速度（Guaranteed Bit Rate）が保障される事で提供可能なサービスに関しては、ＭＰＬＳ回線が優先して利用されるようにする。
【０１２８】
このように、コントローラ１０は、各拠点の端末からインターネットに送信されるパケットを利用するアプリケーションの種別に基づき、各拠点のゲートウェイ２０における回線切替を制御してもよい。
【０１２９】
第２に、コントローラ１０は、セッション、プロトコル及びセッションの通信時間を意識して回線を切り替えてもよい。例えば、一度の通信時間が短いセッションは、セッション接続中タイミングと回線切り替えタイミングが衝突する可能性が低い。そのため、コントローラ１０は、セッション継続時間が短いセッション、プロトコルに係るパケットを収容するフローを優先的にモバイル回線にオフロードする。
【０１３０】
上記実施形態では、コントローラ１０から各拠点のゲートウェイ２０に対して、フローを指定してオフロードを実現しているが、各拠点のゲートウェイ２０がオフロードするフローを決定してもよい。この場合、コントローラ１０は、ＭＰＬＳ回線の上限をゲートウェイ２０に通知する。ゲートウェイ２０は、当該上限を超えると判断した場合に、一部フローをモバイル回線にオフロードしてもよい。
【０１３１】
また、モバイル回線への切り替え指示には、切り替え対象となるトラヒック情報が含まれていてもよい。例えば、サービスサーバ（例えば、図２等に示すクラウドサービスサーバ）をトラヒック情報として含む事により、各支店のゲートウェイ２０は特定のトラヒックに限ってモバイル回線に切り替える事が可能となる。
【０１３２】
上記実施形態では、ＭＰＬＳ回線からモバイル回線にフローをオフロードする際の方式について説明したが、上記説明した方式を単独で用いても良いし、複数のオフロード方式を組み合わせてもよい。また、各拠点のゲートウェイ２０から、ＭＰＬＳ回線、モバイル回線経由それぞれの通信先サーバまでのＰｉｎｇ測定を実施し、その測定結果に応じて回線の切り替えが行われてもよい。例えば、Ｐｉｎｇ測定の結果、ＭＰＬＳ回線よりもモバイル回線の方が高品質であれば、モバイル回線にオフロードを実施するという判断が行われても良い。
【０１３３】
さらに、以下の様な情報を用いて回線の切り替え判断をゲートウェイ２０に指示してもよい。
・インターネット接続回線が不通と判断された場合。
・サービスサーバ（例えば、クラウドサービスサーバ）から到来するパケットに輻輳を示す情報が設定されている場合。
なお、輻輳を示す情報として、ＲＦＣ３１６８で規定されるＥＣＮ（Explicit Congestion Notification）を用いることができる。
【０１３４】
上記の説明により、本発明の産業上の利用可能性は明らかであるが、本発明は、専用線サービス（ＭＰＬＳ、ＩＰ−ＶＰＮ；IP Virtual Private Networkなど）に好適に適用可能である。
【０１３５】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
［付記１］
上述の第１の視点に係る通信システムのとおりである。
［付記２］
前記コントローラは、
過去の所定期間において複数の前記指標を算出し、前記算出された複数の指標の代表値に基づき、前記第１のゲートウェイにおける回線切替を制御する、好ましくは付記１に記載の通信システム。
［付記３］
前記コントローラは、
前記第１の回線が逼迫していると判断した場合に、前記端末から送信されるパケットが前記第２の回線から転送されるように、前記第１のゲートウェイにおける回線切替を制御する、好ましくは付記１又は２に記載の通信システム。
［付記４］
前記コントローラは、
前記第３の回線が逼迫していると判断した場合に、前記端末から送信されるパケットが前記第２の回線から転送されるように、前記第１のゲートウェイにおける回線切替を制御する、好ましくは付記１又は２に記載の通信システム。
［付記５］
前記コントローラは、
前記端末からインターネットに送信されるパケットのペイロードに記載された情報に基づき、前記第１のゲートウェイにおける回線切替を制御する、好ましくは付記１乃至４のいずれか一項に記載に通信システム。
［付記６］
前記コントローラは、
前記端末からインターネットに送信されるパケットを利用するアプリケーションの種別に基づき、前記第１のゲートウェイにおける回線切替を制御する、好ましくは付記５に記載の通信システム。
［付記７］
前記第２の回線はモバイル回線であり、
前記コントローラは、
前記第２の回線を介して前記端末からインターネットに送信されたデータの総量を算出し、前記算出されたデータの総量に基づいて前記第２の回線の総量制限が適用され通信速度が抑制されると予測される場合、前記第２の回線における契約上の許容データの上限を引き上げるための処理を行う、好ましくは付記１乃至６のいずれか一に記載の通信システム。
［付記８］
前記コントローラは、
前記第２の回線の総量制限が適用されると予測される場合には、前記第１のゲートウェイから前記第２の回線を介して転送されるパケットが所定の割合で破棄されるように前記第１のゲートウェイを制御する、好ましくは付記７に記載の通信システム。
［付記９］
前記コントローラは、
第２の回線の使用を許可しないアプリケーションにて使用されるパケットが前記第１のゲートウェイにて破棄されるように前記第１のゲートウェイを制御する、好ましくは付記８に記載の通信システム。
［付記１０］
前記算出された複数の指標の代表値は、平均値、中央値及び最頻値のいずれかである、好ましくは付記２乃至９のいずれか一に記載の通信システム。
［付記１１］
前記第１の回線は、ＭＰＬＳ（Multi-Protocol Label Switching）回線である、好ましくは付記１乃至１０のいずれか一に記載の通信システム。
［付記１２］
上述の第２の視点に係る通信方法のとおりである。
［付記１３］
端末を含む拠点に設置されたゲートウェイであって、少なくとも第１及び第２の回線に接続された第１のゲートウェイと、
前記第１のゲートウェイと前記第１の回線を介して接続されている第２のゲートウェイと、
前記第２のゲートウェイと同じセンタに設置され、インターネットと接続するための第３の回線と接続されている第３のゲートウェイと、のそれぞれを制御するコントローラに搭載されたコンピュータに、
前記第１、第２及び第３の回線のうち少なくとも１つの回線の状態を示す指標を算出する処理と、
前記算出された指標に対して統計処理を施した結果に基づいて前記第１のゲートウェイにおける回線切替を制御する処理と、
を実行させるプログラム。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント（non-transient）なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
なお、付記１２の形態及び付記１３の形態は、付記１の形態と同様に、付記２の形態〜付記１１の形態に展開することが可能である。
【０１３６】
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択（部分的削除を含む）が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【０１３７】
１０、１０４  コントローラ
１１  ＣＰＵ（Central Processing Unit）
１２  メモリ
１３  入出力インターフェイス
１４  ＮＩＣ（Network Interface Card）
２０、２０−１〜２０−４  ゲートウェイ
１０１  第１のゲートウェイ
１０２  第２のゲートウェイ
１０３  第３のゲートウェイ
２０１  通信制御部
２０２  情報入力部
２０３  ゲートウェイ制御部
２０４  回線状態測定部
２０５  回線管理部
２０６、３０２  記憶部
３０１  パケット処理部
【図１】
2020010215.tif 000003
【図２】
2020010215.tif 000004
【図３】
2020010215.tif 000005
【図４】
2020010215.tif 000006
【図５】
2020010215.tif 000007
【図６】
2020010215.tif 000008
【図７】
2020010215.tif 000009
【図８】
2020010215.tif 000010
【図９】
2020010215.tif 000011
【図１０】
2020010215.tif 000012