特許第5677524号(P5677524)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許5677524通信制御装置、通信制御システム及び通信制御方法
<>
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000002
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000003
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000004
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000005
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000006
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000007
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000008
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000009
  • 特許5677524-通信制御装置、通信制御システム及び通信制御方法 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5677524
(24)【登録日】2015年1月9日
(45)【発行日】2015年2月25日
(54)【発明の名称】通信制御装置、通信制御システム及び通信制御方法
(51)【国際特許分類】
   H04L 12/801 20130101AFI20150205BHJP
   G06F 13/00 20060101ALI20150205BHJP
   H04L 12/70 20130101ALI20150205BHJP
【FI】
   H04L12/801
   G06F13/00 357Z
   H04L12/70 100Z
【請求項の数】12
【全頁数】20
(21)【出願番号】特願2013-148858(P2013-148858)
(22)【出願日】2013年7月17日
(65)【公開番号】特開2015-23364(P2015-23364A)
(43)【公開日】2015年2月2日
【審査請求日】2013年8月6日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100166006
【弁理士】
【氏名又は名称】泉 通博
(74)【代理人】
【識別番号】100124084
【弁理士】
【氏名又は名称】黒岩 久人
(72)【発明者】
【氏名】杉田 徹哉
(72)【発明者】
【氏名】寺下 雅人
【審査官】 大石 博見
(56)【参考文献】
【文献】 特開2010−178185(JP,A)
【文献】 特開2013−126244(JP,A)
【文献】 特開2006−174231(JP,A)
【文献】 特開2003−143250(JP,A)
【文献】 特開2009−171009(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/801
G06F 13/00
H04L 12/70
(57)【特許請求の範囲】
【請求項1】
端末からサーバに送信されたリクエストの数を監視するトラヒック監視部と、
前記リクエストの数に基づいて輻輳を検出する輻輳検出部と、
前記輻輳検出部が前記輻輳を検出した場合に、前記端末に対して前記サーバが送信するレスポンスの代わりとなる代理レスポンスを送信する代理応答部とを備える、
通信制御装置。
【請求項2】
前記代理応答部は、前記輻輳検出部が前記輻輳を検出した場合に、前記端末に対して、前記リクエストに対応するアプリケーションに対して輻輳制御効果がある前記代理レスポンスを送信する、
請求項1に記載の通信制御装置。
【請求項3】
前記トラヒック監視部は、前記サーバから送信された前記レスポンスの数を監視し、
前記輻輳検出部は、前記リクエストの数と前記レスポンスの数との比率に基づいて前記輻輳を検出する、
請求項1又は2に記載の通信制御装置。
【請求項4】
前記トラヒック監視部は、前記サーバにリクエストを送信した前記端末の数を監視し、
前記輻輳検出部は、前記リクエストの数と前記レスポンスの数との比率、及び前記端末の数に基づいて前記輻輳を検出する、
請求項に記載の通信制御装置。
【請求項5】
前記トラヒック監視部は、複数の前記端末のうちの一部の端末から送信された前記リクエストの数と、当該サーバから前記一部の端末に送信された前記レスポンスの数とを監視する、
請求項又はに記載の通信制御装置。
【請求項6】
前記代理応答部は、前記リクエストに基づいて前記サーバが管理するアプリケーションを特定し、複数のプロトコルのうち、当該アプリケーションに対して輻輳制御効果があるプロトコルを選択し、選択したプロトコルに対応する前記代理レスポンスを送信する、
請求項からのいずれか1項に記載の通信制御装置。
【請求項7】
前記代理応答部は、前記リクエストに基づいて前記アプリケーションが備える機能を特定し、前記複数のプロトコルのうち、当該機能に対して輻輳制御効果があるプロトコルを選択する、
請求項に記載の通信制御装置。
【請求項8】
前記代理応答部は、前記リクエストに基づいて前記端末のオペレーティングシステムを特定し、前記複数のプロトコルのうち、当該オペレーティングシステム上で実行される前記アプリケーションの機能に対して輻輳制御効果があるプロトコルを選択する、
請求項に記載の通信制御装置。
【請求項9】
前記代理応答部は、前記サーバの代わりに前記代理レスポンスを送信した後、前記トラヒック監視部が監視した前記リクエストの数と前記レスポンスの数との比率に基づいて、前記代理レスポンスを送信したことによる輻輳制御効果を測定し、前記輻輳制御効果に基づいて、未だ選択されていない前記複数のプロトコルから、前記輻輳制御効果があるプロトコルを再選択する、
請求項からのいずれか1項に記載の通信制御装置。
【請求項10】
前記代理応答部は、
前記代理レスポンスを送信する対象である制御対象端末数を算出し、
前記輻輳時に前記端末が前記リクエストを送信する輻輳時リトライ間隔に相当する時間において前記代理レスポンスを送信可能な端末数と、前記制御対象端末数とに基づいて、前記代理レスポンスを送信する対象の前記端末の集合を示すブロックの数を算出し、
前記ブロックの数と、前記輻輳が発生していない場合に前記端末がリクエストを送信する通常時リトライ間隔とに基づいて、1ブロックあたりの前記代理レスポンスを送信する制御を実行する制御実行時間を特定し、
前記ブロックのそれぞれについて、当該制御実行時間にわたって前記制御を実行する、
請求項からのいずれか1項に記載の通信制御装置。
【請求項11】
端末と、前記端末とサーバとの間の通信を制御する通信制御装置とを備える通信制御システムであって、
前記端末は、前記サーバにリクエストを送信し、
前記通信制御装置は、
前記端末から前記サーバに送信された前記リクエストの数を監視するトラヒック監視部と、
前記リクエストの数に基づいて輻輳を検出する輻輳検出部と、
前記輻輳検出部が前記輻輳を検出した場合に、前記端末に対して前記サーバが送信するレスポンスの代わりに代理レスポンスを送信する代理応答部とを有する通信制御装置と、
を備える、
通信制御システム。
【請求項12】
端末とサーバとの間の通信を制御する通信制御方法であって、
前記端末から前記サーバに送信されたリクエストの数を監視するステップと、
前記リクエストの数に基づいて輻輳を検出するステップと、
前記輻輳を検出した場合に、前記端末に対して前記サーバが送信するレスポンスの代わりに代理レスポンスを送信するステップと、を備える、
通信制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、輻輳を制御する通信制御装置、通信制御システム及び通信制御方法に関する。
【背景技術】
【0002】
従来、ネットワーク障害への対策として、リクエストに対応するレスポンスがあるか否かに基づいてアクセス成否回数を計数して、当該アクセス成否回数からアクセス成功率を算出し、当該アクセス成功率に基づいて、ネットワーク障害があるか否かを判定する方法が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−171009号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、サーバにおいて障害が発生すると、端末からのリクエストに対応するサーバからのレスポンスが遅くなる。そして、サーバとの通信を行なっていた端末は、サーバからレスポンスを受信できなかった場合に、サーバに対してリクエストの再送を繰り返す。すると、サーバにおいて障害が発生していない場合に比べて、端末からサーバに送信されるリクエスト数が増加して輻輳が発生する。
【0005】
しかしながら、従来の、アクセス成否回数から求められたアクセス成功率に基づいて、ネットワーク障害があるか否かを判定する方法では、リクエストに対応するレスポンスがあるか否かに基づいてアクセス成否回数を計数することから、アクセス成否回数の算出が遅くなってしまう。このため、輻輳の検出を早期に行うことができないという問題があった。
【0006】
そこで、本発明はこれらの課題を解決するためになされたものであり、輻輳の発生を早期に検出して制御することができる通信制御装置、通信制御システム及び通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の第1の態様に係る通信制御装置(例えば、後述の通信制御装置1)は、端末からサーバに送信されたリクエストの数を監視するトラヒック監視部(例えば、後述のトラヒック監視部121)と、前記リクエストの数に基づいて輻輳を検出する輻輳検出部(例えば、後述の輻輳検出部122)と、前記輻輳検出部が前記輻輳を検出した場合に、前記端末に対して前記サーバが送信するレスポンスの代わりとなる代理レスポンスを送信する代理応答部(例えば、後述の代理応答部123)とを備えることを特徴とする。
【0008】
この発明によれば、輻輳検出部がリクエストの数に基づいて輻輳を検出するので、サーバからリクエストに対応するレスポンスが送信されない場合であっても早期に輻輳を検出することができる。また、代理応答部が、端末に対してサーバが送信するレスポンスの代わりとなる代理レスポンスを送信するので、端末において代理レスポンスに基づいてエラー表示等を行わせて、レスポンスを受信しないことによるリクエストの再送を抑制することができる。よって、通信制御装置は、輻輳の発生を早期に検出して制御することができる。
【0009】
また、前記トラヒック監視部は、前記サーバから送信された前記レスポンスの数を監視し、前記輻輳検出部は、前記リクエストの数と前記レスポンスの数との比率に基づいて前記輻輳を検出することを特徴とする。
【0010】
この発明によれば、輻輳検出部が、リクエストの数と、サーバから送信されたレスポンスの数との比率に基づいて輻輳を検出するので、通信制御装置は、サーバにおいて障害等が発生してレスポンスが正常に送信されていない場合に輻輳を検出することができる。よって、通信制御装置は、リクエストの数のみに基づいて輻輳を検出する場合に比べて、精度よく輻輳を検出することができる。
【0011】
また、前記トラヒック監視部は、前記サーバにリクエストを送信した前記端末の数を監視し、前記輻輳検出部は、前記リクエストの数と前記レスポンスの数との比率、及び前記端末の数に基づいて前記輻輳を検出することを特徴とする。
【0012】
この発明によれば、通信制御装置は、サーバに対してリクエストを送信している端末の数が多い場合に限定して輻輳を検出することができるので、限られた台数の端末が意図的に再送を繰り返しているときに輻輳と検出せず、さらに精度よく輻輳を検出することができる。
【0013】
また、前記トラヒック監視部は、複数の前記端末のうちの一部の端末から送信された前記リクエストの数と、当該サーバから前記一部の端末に送信された前記レスポンスの数とを監視することを特徴とする。
【0014】
ここで、一の通信事業者のコアネットワークを介して通信する端末は、数千万台である。この発明によれば、通信制御装置は、例えば、数千万台の端末からサンプリングした数千台の端末に基づいて輻輳を検出することができるので、通信制御装置を過負荷とすることなく、輻輳を検出することができる。
【0015】
また、前記代理応答部は、前記リクエストに基づいて前記サーバが管理するアプリケーションを特定し、複数のプロトコルのうち、当該アプリケーションに対して輻輳制御効果があるプロトコルを選択し、選択したプロトコルに対応する前記代理レスポンスを送信する。
また、前記代理応答部は、前記リクエストに基づいて前記アプリケーションが備える機能を特定し、前記複数のプロトコルのうち、当該機能に対して輻輳制御効果があるプロトコルを選択する。
また、前記代理応答部は、前記リクエストに基づいて前記端末のオペレーティングシステムを特定し、前記複数のプロトコルのうち、当該オペレーティングシステム上で実行される前記アプリケーションの機能に対して輻輳制御効果があるプロトコルを選択する。
【0016】
この発明によれば、通信制御装置は、アプリケーションの機能それぞれに対して適したプロトコルによって代理レスポンスを送信するので、効果的に輻輳を制御することができる。また、通信制御装置は、アプリケーションがオペレーティングシステムごとに異なる通信制御を行っていても、アプリケーションごと、かつ、オペレーティングシステムごとに、輻輳制御効果があるプロトコルを選択して効果的に輻輳を制御することができる。
【0017】
また、前記代理応答部は、前記サーバの代わりに前記代理レスポンスを送信した後、前記トラヒック監視部が監視した前記リクエストの数と前記レスポンスの数との比率に基づいて、前記代理レスポンスを送信したことによる輻輳制御効果を測定し、前記輻輳制御効果に基づいて、未だ選択されていない前記複数のプロトコルから、前記輻輳制御効果があるプロトコルを再選択する。
【0018】
この発明によれば、通信制御装置は、選択したプロトコルによる輻輳制御効果がない場合に、新たにプロトコルを選択して輻輳制御を行う。このようにすることで、通信制御装置は、一のプロトコルによる輻輳制御効果が小さい場合であっても、複数のプロトコルによって輻輳制御を行うので、より確実に輻輳を制御することができる。
【0019】
また、前記代理応答部は、前記代理レスポンスを送信する対象である制御対象端末数を算出し、前記輻輳時に前記端末が前記リクエストを送信する輻輳時リトライ間隔に相当する時間において前記代理レスポンスを送信可能な端末数と、前記制御対象端末数とに基づいて、前記代理レスポンスを送信する対象の前記端末の集合を示すブロックの数を算出し、前記ブロックの数と、前記輻輳が発生していない場合に前記端末がリクエストを送信する通常時リトライ間隔とに基づいて、1ブロックあたりの前記代理レスポンスを送信する制御を実行する制御実行時間を特定し、前記ブロックのそれぞれについて、当該制御実行時間にわたって前記制御を実行することを特徴とする。
【0020】
この発明によれば、通信制御装置は、例えば、制御対象端末数が数千万台であっても、分割して処理を行うことで、通信制御装置に係る負荷を大幅に抑制することができる。また、処理を複数のブロックに分割し、さらに複数のブロックそれぞれの制御実行時間を、正常時リトライ間隔に基づいて調整するので、複数のブロックそれぞれについて、均一に輻輳制御を行うことができる。また、通信制御装置は、各ブロックに対して制御を行った後、当該制御の効果の有無を判定し、効果があると判定した場合にのみ、次のブロックに対して制御を行う。これにより、負荷を抑制する効果のない制御を行った場合の影響範囲を一のブロックに限定し、他のブロックに対する当該制御の実行を防止することができる。
【0021】
本発明の第2の態様に係る通信制御システムは、端末と、前記端末とサーバとの間の通信を制御する通信制御装置とを備える通信制御システムであって、前記端末は、前記サーバにリクエストを送信し、前記通信制御装置は、前記端末から前記サーバに送信された前記リクエストの数を監視するトラヒック監視部と、前記リクエストの数に基づいて輻輳を検出する輻輳検出部と、前記輻輳検出部が前記輻輳を検出した場合に、前記端末に対して前記サーバが送信するレスポンスの代わりに代理レスポンスを送信する代理応答部とを有する通信制御装置と、を備えることを特徴とする。
【0022】
本発明の第3の態様に係る通信制御方法は、端末とサーバとの間の通信を制御する通信制御方法であって、前記端末から前記サーバに送信されたリクエストの数を監視するステップと、前記リクエストの数に基づいて輻輳を検出するステップと、前記輻輳を検出した場合に、前記端末に対して前記サーバが送信するレスポンスの代わりに代理レスポンスを送信するステップと、を備える。
【0023】
これらの発明によれば、第1の態様に係る通信制御装置と同等の効果を奏することができる。
【発明の効果】
【0024】
本発明によれば、輻輳の発生を早期に検出して制御することができる。
【図面の簡単な説明】
【0025】
図1】第1の実施形態に係る通信制御システムの概要図である。
図2】第1の実施形態に係る通信制御装置の機能構成図である。
図3】第1の実施形態に係る輻輳監視処理のフローチャートである。
図4】第1の実施形態に係る輻輳制御処理のフローチャートである。
図5】第1の実施形態に係る制御効果測定処理のフローチャートである。
図6】第1の実施形態に係るプロトコル別効果情報の一例を示す図である。
図7】第1の実施形態に係る制御効果測定処理の検証結果を示す図である。
図8】第2の実施形態に係る複数のブロックに分割して輻輳制御を行った場合のトラヒックの変化を説明する図である。
図9】第2の実施形態に係る輻輳制御処理のフローチャートである。
【発明を実施するための形態】
【0026】
以下、本発明の実施形態について説明する。
<第1の実施形態>
[通信制御システムSの概要]
図1は、第1の実施形態に係る通信制御システムSの概要図である。
通信制御システムSは、通信制御装置1と、複数の携帯端末2(携帯端末2A、携帯端末2B、携帯端末2C・・・)と、複数のサーバ3(サーバ3A、サーバ3B、サーバ3C)と、コアネットワーク4と、L1(レイヤ1)スイッチ5と、ゲートウェイ6と、インターネット7とを備える。
【0027】
携帯端末2は、コアネットワーク4、L1スイッチ5、ゲートウェイ6及びインターネット7を介してサーバ3に通信可能に接続されている。携帯端末2は、サーバ3との通信を行うアプリケーションがインストールされている。携帯端末2において当該アプリケーションが実行されると、当該アプリケーションは、サーバ3に対して定期的にリクエストを送信する。ここで、リクエストとは、携帯端末2からサーバ3に対して送信されるコマンド全般を示す。携帯端末2は、サーバ3からレスポンスを受信できる場合、すなわち、通常時には、通常時のリトライ間隔でリクエストを送信し、サーバ3から当該リクエストに対する応答であるレスポンスを受信できなかった場合には、輻輳時のリトライ間隔でリクエストをサーバ3に再送する。
【0028】
コアネットワーク4は、所定の通信事業者の基幹通信回線である。L1スイッチ5は、コアネットワーク4を通過するパケットをレイヤ1で複製する装置であり、携帯端末2が送信するリクエストをサーバ3及び通信制御装置1に送信するとともに、当該リクエストに対応するレスポンスを携帯端末2及び通信制御装置1に送信する。
【0029】
サーバ3は、携帯端末2にインストールされているアプリケーションに係るサービスを提供するものであり、例えば、アプリケーションサーバである。サーバ3は、携帯端末2において起動中のアプリケーションからリクエストを受信すると、携帯端末2にレスポンスを送信する。
【0030】
通信制御装置1は、L1スイッチ5を介して、コアネットワーク4におけるトラヒックを監視することによりサーバ3の障害に起因する輻輳の発生を検出し、当該輻輳を抑制する輻輳制御を行う。具体的には、通信制御装置1は、コアネットワーク4におけるトラヒックを監視して、一部の携帯端末2からサーバ3に送信されたリクエストの数と、サーバ3から当該携帯端末2に送信されたレスポンスの数とを集計する(図1の(1))。その後、サーバ3のいずれかにおいて障害が発生し、当該サーバ3がダウンすると(図1の(2))、当該サーバ3との通信を行っていた携帯端末2は、当該サーバ3に対して大量のリクエストを送信し(図1の(3))、輻輳が発生する。通信制御装置1は、集計したリクエストの数とレスポンスの数とに基づいて、サーバ3の障害に起因する輻輳を検出する。通信制御装置1は、サーバ3の障害に起因した輻輳を検出した場合に、携帯端末2が当該サーバ3に対して送信したリクエストに対して、当該サーバ3の代わりとなる代理レスポンスを送信する(図1の(4))。
【0031】
[通信制御装置1の構成]
続いて、通信制御装置1が備える機能について説明する。図2は、第1の実施形態に係る通信制御装置1の機能構成図である。
【0032】
通信制御装置1は、記憶部11と、制御部12とを備える。
記憶部11は、例えば、ROM及びRAM等により構成される。記憶部11は、通信制御装置1を機能させるための各種プログラムを記憶する。記憶部11は、外部メモリ等の記憶媒体に記憶されたプログラムや外部装置から取得したプログラムを記憶してもよい。
【0033】
制御部12は、例えば、CPUにより構成される。制御部12は、記憶部11に記憶されている各種プログラムを実行することにより、通信制御装置1に係る機能を統括的に制御する。制御部12は、トラヒック監視部121と、輻輳検出部122と、代理応答部123とを備える。
【0034】
トラヒック監視部121は、携帯端末2からサーバ3に送信されたリクエストの数と、サーバ3から送信されたレスポンスの数と、サーバ3にリクエストを送信した携帯端末2の数とを監視する。輻輳検出部122は、トラヒック監視部121が集計したリクエストの数とレスポンスの数との比率、及びリクエスト端末数に基づいてサーバ3の障害に起因する輻輳を検出する。
【0035】
トラヒック監視部121及び輻輳検出部122は、協働して輻輳監視処理を繰り返し実行する。以下、トラヒック監視部121及び輻輳検出部122の機能について、フローチャートを用いながら説明する。図3は、第1の実施形態に係る輻輳監視処理のフローチャートである。
【0036】
まず、トラヒック監視部121は、複数の携帯端末2のうちの一部の携帯端末2からサーバ3に対して送信されたリクエストの数と、当該サーバ3から当該一部の携帯端末に送信されたレスポンスの数とを監視する。具体的には、トラヒック監視部121は、所定期間において一部の携帯端末2からサーバ3に送信されたリクエストの数を集計する(S1)。トラヒック監視部121は、所定期間において、サーバ3から一部の携帯端末2に送信されたレスポンスの数を集計する(S2)。これら一部の携帯端末2を、監視対象とされている携帯端末2ともいう。ここで、トラヒック監視部121は、リクエストに含まれているサーバ3のIPアドレスとポート番号、及びレスポンスに含まれているサーバ3のIPアドレスとポート番号に基づいて、複数のサーバ3のそれぞれについて、リクエストの数及びレスポンスの数を集計する。すなわち、トラヒック監視部121は、リクエスト及びレスポンスに含まれているIPアドレスとポート番号がサーバ3のIPアドレスとポート番号に一致している場合に、リクエストの数及びレスポンスの数を集計する。
【0037】
輻輳検出部122は、サーバ3から携帯端末2に送信されるレスポンスを解析して所定期間におけるエラーレスポンスの数を計数する。輻輳検出部122は、記憶部11に予め記憶されている、サーバ3における障害の発生を検出するための閾値を取得する。輻輳検出部122は、エラーレスポンスの数が閾値より大きいか否かを判定する(S3)。輻輳検出部122は、エラーレスポンスの数が閾値より大きい場合(判定がYesの場合)、S11に処理を移し、エラーレスポンスの数が閾値以下の場合(判定がNoの場合)、S4に処理を移す。
【0038】
続いて、輻輳検出部122は、トラヒック監視部121が所定期間に集計したリクエストの数とレスポンスの数との比率を算出することにより、サーバ3の応答率を算出する(S4)。
【0039】
続いて、輻輳検出部122は、現在の日時に対応する基準応答率を取得する(S5)。具体的には、記憶部11には、各曜日の各時間帯と、当該各曜日の各時間帯において輻輳が発生していない場合のサーバ3の平均的な応答率である基準応答率とを関連付けた基準応答情報が記憶されている。輻輳検出部122は、記憶部11に記憶されている基準応答情報を参照して、現在時刻に対応する基準応答率を取得する。
【0040】
続いて、輻輳検出部122は、S4において算出された応答率が、S5において取得された基準応答率よりも低いか否かを判定する(S6)。輻輳検出部122は、応答率が基準応答率よりも低いと判定した場合(判定がYesの場合)、S8に処理を移し、応答率が基準応答率以上と判定した場合(判定がNoの場合)、S7に処理を移す。
【0041】
輻輳検出部122は、S6において、応答率が基準応答率以上であると判定した場合、輻輳が発生していないので、所定時間(例えば、1分)待機する(S7)。その後、輻輳検出部122は、S1に処理を移す。これにより、トラヒック監視部121においてリクエスト及びレスポンスの集計が行われ、輻輳の監視が継続して行われる。
【0042】
S6において、輻輳検出部122が、応答率が基準応答率よりも低いと判定した場合、トラヒック監視部121は、サーバ3に対してリクエストを送信している携帯端末2の数、すなわち、リクエスト端末数を集計する。
【0043】
続いて、輻輳検出部122は、現在の日時に対応する基準端末数を取得する(S9)。具体的には、記憶部11には、各曜日の各時間帯と、当該各曜日の各時間帯において輻輳が発生していない場合の平均的なリクエスト端末数を示す基準端末数とを関連付けた基準端末数情報が記憶されている。輻輳検出部122は、記憶部11に記憶されている基準端末数情報を参照して、現在時刻に対応する基準端末数を取得する。
【0044】
続いて、輻輳検出部122は、S8において集計されたリクエスト端末数が、S9において取得された基準端末数よりも多いか否かを判定する(S10)。輻輳検出部122は、リクエスト端末数が基準端末数よりも多いと判定した場合(判定がYesの場合)、輻輳が発生していることを検出してS11に処理を移す。輻輳検出部122は、リクエスト端末数が基準端末数以下と判定した場合(判定がNoの場合)、S7に処理を移す。
【0045】
続いて、代理応答部123は、輻輳制御処理を実行する(S11)。この処理については、後述する。
【0046】
続いて、代理応答部123の機能について説明する。代理応答部123は、輻輳検出部122が輻輳を検出した場合に、輻輳制御処理を実行することにより、携帯端末2に対してサーバ3が送信するレスポンスの代わりとなる代理レスポンスを送信する。以下、代理応答部123が実行する輻輳制御処理の詳細について、フローチャートを用いながら説明する。図4は、第1の実施形態に係る輻輳制御処理のフローチャートである。
【0047】
まず、代理応答部123は、携帯端末2からサーバ3に送信されたリクエストに含まれている宛先、すなわち、サーバ3のIPアドレスとポート番号に基づいて、輻輳中のサービスである輻輳サービスを特定する(S21)。ここで、サービスとは、サーバ3において管理されているアプリケーションに係るサービスを示す。
【0048】
具体的には、記憶部11には、サーバ3のIPアドレスとポート番号と、当該サーバ3が管理するアプリケーションの名称とを関連付けた管理テーブルが記憶されている。代理応答部123は、管理テーブルを参照して、リクエストに含まれるIPアドレスとポート番号に対応するアプリケーション名を特定することにより、リクエストに基づいてサーバ3が管理するアプリケーションを特定する。
【0049】
ここで、管理テーブルにおいて、IPアドレスとポート番号と、アプリケーションが備える機能とを関連付けておき、代理応答部123が、リクエストに基づいて、アプリケーションが備える機能を特定してもよい。また、管理テーブルにおいて、IPアドレスとポート番号と、携帯端末2のオペレーティングシステム(以下、OSという。)の種別とを関連付けておき、代理応答部123が、リクエストに基づいて、携帯端末2のOSの種別を特定してもよい。ここで、アプリケーションが備える機能とは、例えば、通話機能やメッセージ送信機能、バックグラウンド処理に関する機能であり、サーバ3に対してリクエストを送信する機能である。
【0050】
続いて、代理応答部123は、輻輳時のリトライ間隔を取得する(S22)。具体的には、記憶部11には、サーバ3が管理するアプリケーション名と、輻輳時に携帯端末2から当該サーバ3に送信されるリクエストのリトライ間隔(輻輳時のリトライ間隔)とを関連付けた輻輳時リトライ情報が記憶されている。代理応答部123は、輻輳時リトライ情報に基づいて、S21で特定したアプリケーションの輻輳時のリトライ間隔を取得する。
【0051】
続いて、代理応答部123は、輻輳時のリトライ間隔に基づいて、輻輳制御実行時間を決定する(S23)。具体的には、代理応答部123は、輻輳時のリトライ間隔を輻輳制御実行時間とする。このように輻輳時のリトライ間隔を輻輳制御実行時間とすると、通信制御装置1は、輻輳制御の実行中に、携帯端末2からリクエストを1回以上受信することができる。そして、通信制御装置1が、当該リクエストに対して代理レスポンスを送信することで、携帯端末2では、エラー表示等が行われ、サーバ3へのリクエストの送信が一定時間にわたって抑制される。
【0052】
続いて、代理応答部123は、S21で特定されたアプリケーション(輻輳サービス)を管理するサーバ3にリクエストを送信している携帯端末2を、代理レスポンスを送信する対象である制御対象端末と特定し、制御対象端末の数である制御対象端末数を取得する(S24)。具体的には、L1スイッチ5は、携帯端末2からコアネットワーク4を介してサーバ3に送信されるリクエストを複製し、サーバ3及び通信制御装置1に供給する。そして、代理応答部123は、当該リクエストの数を集計することにより、制御対象端末数を特定する。
【0053】
続いて、代理応答部123は、未実施の制御の中で最も優先度が高い制御を選択する(S25)。優先度が高い制御の選択は、以下のように行われる。
まず、記憶部11には、アプリケーション名と、複数のプロトコルのそれぞれの当該アプリケーションに係る輻輳制御効果を示す情報と、を関連付けたプロトコル別効果情報が記憶されている。図6は、第1の実施形態に係るプロトコル別効果情報の一例を示す図である。図6には、一例として、携帯端末2のOSの種別が「OS1」である場合のアプリケーションA〜Fについての、各プロトコルの輻輳制御効果を示す情報が示されている。
【0054】
例えば、「ICMP1(TYPE3)」は、ICMPプロトコルにおける「宛先到達不能」を示しており、「ICMP2(TYPE4)」は、ICMPプロトコルにおける「始点抑制」を示している。また、「SYN1(FIN)」は、TCPプロトコルにおける「FIN(終了)フラグ」を示しており、「SYN2(RST)」は、TCPプロトコルにおける「RST(リセット)フラグ」を示している。図6には、携帯端末2のOSの種別が「OS2」である場合のアプリケーションA、Bについての、各プロトコルの輻輳制御効果を示す情報が示されている。ここでは、各プロトコルの輻輳制御効果を示す情報として「◎」、「○」、「△」、「×」の4種類の情報が示されている。例えば、「◎」は、輻輳制御効果が最も高いことを示しており、「×」は、輻輳制御効果が最も低いことを示している。各プロトコルの輻輳制御効果を示す情報は、代理応答部123によるプロトコルの選択に用いられる。図6に示されているように、アプリケーションA及びアプリケーションBは、同一のアプリケーションであっても、携帯端末2のOSの種別ごとに、輻輳制御効果が高いプロトコルが異なっている。
【0055】
代理応答部123は、プロトコル別効果情報を参照して、複数のプロトコルのうち、アプリケーションに対して輻輳制御効果があるプロトコルを選択する。具体的には、代理応答部123は、複数のプロトコルのうち、アプリケーションに対して最も輻輳制御効果が高いプロトコルを選択する。ここで、代理応答部123は、アプリケーションの機能ごとに輻輳制御効果があるプロトコルを選択してもよい。また、代理応答部123は、OS上で実行されるアプリケーションの機能に対して輻輳制御効果があるプロトコルを選択してもよい。
【0056】
続いて、代理応答部123は、サーバ3からの応答を待つか否かを判定する(S26)。具体的には、サーバ3ごとに予め応答を待つか否かの設定値を予め記憶部11に記憶させておき、代理応答部123は、当該設定値に基づいてサーバ3からの応答を待つか否かを判定する。代理応答部123は、サーバ3からの応答を待つ場合、S27に処理を移し、サーバ3からの応答を待たない場合、S28に処理を移す。
【0057】
続いて、代理応答部123は、サーバ3からレスポンスを受信している制御対象端末があるか確認する(S27)。代理応答部123は、レスポンスの受信が確認できた場合には、サーバ3が復旧して正常にレスポンスを送信することにより輻輳が解消できると判定し、本フローチャートの処理を終了する。代理応答部123は、当該レスポンスが確認できなかった場合には、S28に処理を移す。
【0058】
続いて、代理応答部123は、S23において決定された輻輳制御実行時間にわたって、輻輳制御を実行する(S28)。具体的には、代理応答部123は、S23において決定された輻輳制御実行時間内に、トラヒック監視部121が制御対象端末である携帯端末2からサーバ3にリクエストを送信したことを検出すると、当該携帯端末2に対して代理レスポンスを送信する。なお、この制御において、監視対象とされている携帯端末2については、後述する制御効果測定を正確に行うため、輻輳制御の実行を遅延させてもよい。
【0059】
代理応答部123は、制御効果測定処理を行い、S27において実行した制御の効果を測定する(S29)。制御効果測定処理の詳細については、後述する。
続いて、代理応答部123は、S29において測定された制御効果が閾値よりも高いか否かを判定する(S30)。代理応答部123は、効果の割合が閾値よりも高いと判定した場合(判定がYesの場合)、輻輳制御処理を終了する。また、代理応答部123は、効果の割合が閾値以下と判定した場合(判定がNoの場合)、S25に処理を移す。S25に処理を移すことにより、代理応答部123は、プロトコル別効果情報を参照することにより、未だ選択されていない複数のプロトコルから輻輳制御効果があるプロトコルを再選択する。
【0060】
続いて、制御効果測定処理の詳細について説明する。制御効果測定処理において、代理応答部123は、サーバ3の代わりにレスポンスを送信した後、トラヒック監視部121が監視したリクエストの数とレスポンスの数との比率に基づいて、代理レスポンスを送信したことによる輻輳制御効果を測定する。図5は、第1の実施形態に係る制御効果測定処理のフローチャートである。
【0061】
まず、代理応答部123は、監視対象の携帯端末2における輻輳サービスの応答率を取得する(S31)。具体的には、代理応答部123は、トラヒック監視部121が監視対象としている一部の携帯端末2から送信されたリクエストの数と、当該一部の携帯端末2に送信されたレスポンスの数とに基づいて応答率を取得する。以下、S31において取得する応答率を応答率(a)という。
【0062】
続いて、代理応答部123は、制御後の端末における輻輳サービスの応答率を取得する(S32)。具体的には、代理応答部123は、輻輳制御処理のS24において特定された制御対象端末から送信されたリクエストの数と、当該制御対象端末に送信されたレスポンスの数とに基づいて応答率を取得する。以下、S32において取得する応答率を応答率(b)という。
【0063】
続いて、代理応答部123は、S31において取得した応答率(a)が、S32において取得した応答率(b)に比べて小さいか否かを判定する(S33)。代理応答部123は、応答率(a)が応答率(b)に比べて小さいと判定した場合(判定がYesの場合)、「効果有り」と判定する(S34)。応答率(a)が応答率(b)以上であると判定した場合(判定がNoの場合)、「効果無し」と判定する(S38)。
【0064】
代理応答部123は、「効果有り」と判定した場合、応答率(a)と応答率(b)とに基づいて、効果割合を算出する(S35)。具体的には、代理応答部123は、応答率(a)に対する応答率(b)の割合、すなわち応答率の増加率を効果割合として算出する。
続いて、代理応答部123は、制御方法及び効果割合を記録する(S36)。ここで、制御方法とは、複数のプロトコルのそれぞれに基づく制御の種別を示し、代理応答部123は、複数のプロトコルに関連付けて、効果割合の数値を記憶部11に記憶させる。
【0065】
続いて、代理応答部123は、算出した効果割合に基づいて、制御方法の優先度を変更する(S37)。具体的には、代理応答部123は、記憶部11に記録した効果割合の数値に基づいて、効果割合を「◎」、「○」、「△」、「×」の4種類の輻輳制御効果を示す情報のいずれかに分類し、プロトコル別効果情報を更新する。これにより、プロトコル別効果情報を動的に変更して、次回実行される輻輳制御処理においてプロトコルの優先度を動的に変更することができる。
【0066】
続いて、代理応答部123は、応答率(a)と応答率(b)とに基づいて、制御効果を算出する(S39)。具体的には、代理応答部123は、効果割合の数値に基づいて分類した輻輳制御効果を示す情報に基づいて、制御効果を示す数値を算出する。例えば、輻輳制御効果を示す情報が「◎」の場合に、制御効果は最大値を示し、S38において「効果無し」と判定された場合に、制御効果は最小値を示す。
【0067】
[検証結果]
続いて、上述の輻輳制御処理についての検証結果を示す。
図7は、第1の実施形態に係る制御効果測定処理の検証結果を示す図である。検証では、1台の携帯端末2をL2スイッチ及びルータを介してサーバ3と接続させた状態において、ルータによって携帯端末2とサーバ3との通信を遮断して、疑似的にサーバ3がダウンした状態を模擬した。そして、通信制御装置1が、L2スイッチを介して携帯端末2に代理レスポンスを行った。
【0068】
例えば、アプリケーションAのバックグラウンド処理は、代理レスポンスを送信していない場合には、1分間にリクエストが8回発生したが、通信制御装置1によって、代理レスポンスとして、TCPプロトコルのSYN/ACKフラグを送信し、その後、FINフラグを送信した。この結果、1分間のリクエストが3回に軽減された。
【0069】
また、アプリケーションBのアプリケーションの起動処理は、代理レスポンスを送信していない場合には、1分間にリクエストが8回発生したが、通信制御装置1によって、代理レスポンスとして、ICMPプロトコルのTYPE3(宛先到達不能)を送信した。この結果、1分間のリクエストが2回に軽減された。
【0070】
また、アプリケーションCのバックグラウンド処理は、代理レスポンスを送信していない場合には、1分間にリクエストが12回発生したが、通信制御装置1によって、代理レスポンスとして、DNSエラー(問い合わせ不明)を送信した。この結果、1分間のリクエストが1回に軽減された。
【0071】
[第1の実施形態における効果]
以上のとおり、第1の実施形態に係る通信制御装置1は、携帯端末2からサーバ3に送信されたリクエストの数を監視するトラヒック監視部121と、リクエストの数に基づいて輻輳を検出する輻輳検出部122と、輻輳検出部122が輻輳を検出した場合に、携帯端末2に対してサーバ3が送信するレスポンスの代わりとなる代理レスポンスを送信する代理応答部123とを備える。
【0072】
通信制御装置1は、輻輳検出部122がリクエストの数に基づいて輻輳を検出するので、サーバ3からリクエストに対応するレスポンスが送信されない場合であっても早期に輻輳を検出することができる。また、代理応答部123が、携帯端末2に対してサーバ3が送信するレスポンスの代わりとなる代理レスポンスを送信するので、携帯端末2において代理レスポンスに基づいてエラー表示等を行わせて、サーバ3からレスポンスを受信しないことによるリクエストの再送を抑制することができる。よって、通信制御装置1は、輻輳の発生を早期に検出して制御することができる。ここでの制御とは、例えばリクエスト数の3割減等の間引きをさせたり、リクエストそのものを停止させたりすることを指す。
【0073】
<第2の実施形態>
[制御対象端末に対する輻輳制御を分割して実行する]
続いて、第2の実施形態について説明する。第2の実施形態は、代理応答部123が、輻輳制御処理において、制御対象端末に対する輻輳制御を分割して実行する点で第1の実施形態と異なり、その他の点では同じである。
【0074】
第2の実施形態の代理応答部123は、輻輳制御の携帯端末2である制御対象端末の数(制御対象端末数)を算出する。ここで、制御対象端末数は、例えば、数千万台であり、通信制御装置1は、輻輳時のリトライ間隔(例えば、10秒)に相当する時間において、全ての制御対象端末に対して代理レスポンスを送信することができない。
【0075】
ここで、携帯端末2は、サーバ3からレスポンスを受信できる場合、すなわち、通常時には、通常時のリトライ間隔でリクエストを送信し、サーバ3からレスポンスを受信できなかった場合には、輻輳時のリトライ間隔でリクエストをサーバ3に再送する。そして、携帯端末2は、代理レスポンスを受信することにより、通常時のリトライ間隔(例えば、1分)に相当する時間にわたって待機し、その後、サーバ3に対してリクエストを再送する。
【0076】
つまり、携帯端末2は、輻輳検出時に代理レスポンスを受信すると、通常時のリトライ間隔に相当する時間にわたって待機するので、リトライ間隔は、輻輳時のリトライ間隔から通常時のリトライ間隔になる。よって、通常時のリトライ間隔に相当する時間において、全ての制御対象端末に対して代理レスポンスを送信すれば、全ての制御対象端末は、リトライ間隔が、輻輳時のリトライ間隔から通常時のリトライ間隔になる。
【0077】
そこで、代理応答部123は、通常時のリトライ間隔を、輻輳制御を行う輻輳制御実行時間に決定する。そして、代理応答部123は、輻輳時に携帯端末2がリクエストを送信する輻輳時リトライ間隔に相当する時間において代理レスポンスを送信可能な端末数と、制御対象端末数とに基づいて、制御対象端末のうち、一部の制御対象端末を含むブロックを複数生成する。ここで、ブロックとは、一の輻輳時のリトライ間隔に相当する時間において代理レスポンスを送信する対象となる一部の制御対象端末の集合である。例えば、制御対象端末数が、600万台であり、一度に処理可能な端末数(輻輳時リトライ間隔に相当する時間において代理レスポンスを送信可能な端末数)が100万台である場合、ブロック数は6に決定される。代理応答部123は、複数のブロックのそれぞれについて、順番に代理レスポンスを送信する。
【0078】
図8は、第2の実施形態に係る複数のブロックに分割して輻輳制御を行った場合のトラヒックの変化を説明する図である。例えば、図8に示されるように、制御対象端末がブロックAからブロックFの6個のブロックに分割されるものとする。また、輻輳時のリトライ間隔が10秒であり、通常時のリトライ間隔が60秒であるものとする。
【0079】
代理応答部123は、輻輳制御実行時間と、ブロック数とに基づいて、1ブロックあたりの制御実行時間を決定する。具体的には、代理応答部123は、通常時のリトライ間隔を輻輳制御実行時間とし、当該輻輳制御実行時間をブロック数で除算することにより、1ブロックあたりの制御実行時間を決定する。
【0080】
図8に示す例では、1ブロックあたりの制御実行時間は、10秒に決定される。なお、1ブロックあたりの制御実行時間が、輻輳時のリトライ間隔に相当する時間よりも長い場合、代理応答部123は、1ブロックあたりの制御実行時間を、輻輳時のリトライ間隔に相当する時間としてもよい。例えば、輻輳時のリトライ間隔に相当する時間が10秒であり、1ブロックあたりの制御実行時間が15秒である場合、代理応答部123は、10秒間にわたって制御を行うことで、1ブロックに含まれる全ての制御対象端末に対して、輻輳時のリトライ間隔に相当する時間以内に代理レスポンスを送信することができる。
【0081】
続いて、代理応答部123は、各ブロックに含まれる制御対象端末に対して、決定した制御実行時間ずつ代理レスポンスを送信する。図8に示す例では、代理応答部123は、0秒から10秒の間に、ブロックAに含まれる制御対象端末について輻輳制御を行う。すると、ブロックAに含まれる制御対象端末に対応するトラヒックは、通常時のリトライ間隔に相当する時間(60秒)にわたって抑制される。続いて、代理応答部123が、10秒から20秒の間に、ブロックBに含まれる制御対象端末について輻輳制御を行うと、ブロックBに含まれる制御対象端末に対応するトラヒックは、通常時のリトライ間隔に相当する時間にわたって抑制される。同様に、代理応答部123は、20秒から60秒の間に、ブロックC、ブロックD、ブロックE、ブロックFの順番で、10秒ずつ輻輳制御を行う。これにより、代理応答部123は、ブロックの処理順にトラヒックを抑制することができる。
【0082】
続いて、フローチャートを参照しながら、第2の実施形態に係る代理応答部123の輻輳制御処理について説明する。図9は、第2の実施形態に係る輻輳制御処理のフローチャートである。
【0083】
まず、代理応答部123は、携帯端末2からサーバ3に送信されたリクエストに含まれている宛先に基づいて、輻輳中のサービスである輻輳サービス(アプリケーション)を特定する(S41)。
続いて、代理応答部123は、通常時のリトライ間隔を取得する(S42)。具体的には、記憶部11には、サーバ3が管理するアプリケーション名と、通常時のリトライ間隔とを関連付けた通常時リトライ情報が記憶されている。代理応答部123は、通常時リトライ情報に基づいて、通常時のリトライ間隔を取得する。
【0084】
続いて、代理応答部123は、S42において取得した通常時のリトライ間隔に基づいて、輻輳制御実行時間を決定する(S43)。具体的には、代理応答部123は、通常時のリトライ間隔を輻輳制御実行時間とする。
続いて、代理応答部123は、制御対象端末数と、一度に処理可能な端末数とを取得する(S44)。例えば、代理応答部123は、輻輳時のリトライ間隔に相当する時間内に代理レスポンスを送信できる携帯端末2の数を制御対象端末数として取得する。
【0085】
続いて、代理応答部123は、S44において取得した、制御対象端末数と、一度に処理可能な端末数とに基づいて、ブロックの数を決定する。
続いて、代理応答部123は、S43において決定した輻輳制御実行時間と、S45において決定したブロック数とに基づいて、1ブロックあたりの制御実行時間を算出する(S46)。
【0086】
続いて、代理応答部123は、未実施の制御の中で最も優先度が高い制御を選択する(S47)。
続いて、代理応答部123は、サーバ3からの応答を待つか否かを判定する(S48)。代理応答部123は、サーバ3からの応答を待つ場合、S49に処理を移し、サーバ3からの応答を待たない場合、S50に処理を移す。
続いて、代理応答部123は、サーバ3からレスポンスを受信している制御対象端末があるか確認する(S49)。
【0087】
続いて、代理応答部123は、ブロックごとに輻輳制御を実行する(S50)。代理応答部123は、S46において算出された制御実行時間が、輻輳時のリトライ間隔に相当する時間よりも長い場合、輻輳時のリトライ間隔に相当する時間にわたって代理レスポンスを送信する。代理応答部123は、S46において算出された1ブロックあたりの制御実行時間が、輻輳時のリトライ間隔に相当する時間よりも短い場合、S46において算出された制御実行時間にわたって代理レスポンスを送信する。なお、1ブロックあたりの制御実行時間が、輻輳時のリトライ間隔に相当する時間よりも短い場合には、1ブロックに対応する制御対象端末の一部に代理レスポンスが送信される。
【0088】
より具体的には、代理応答部123は、S46において算出された制御実行時間内に、トラヒック監視部121が制御中のブロックに対応する制御対象端末である携帯端末2からサーバ3にリクエストを送信したことを検出すると、当該携帯端末2に対して代理レスポンスを送信する。ここで、1ブロックあたりの制御実行時間が、輻輳時のリトライ間隔よりも短くなる場合には、1ブロックに含まれる制御対象端末の全てに対して代理レスポンスを送信できないものの、一定の割合で代理レスポンスを送信することができることから、ブロック1に含まれる一部の制御対象端末に係るトラヒックを抑制することができる。
【0089】
代理応答部123は、制御効果測定処理を行い、S50において実行した制御の効果を測定する(S51)。制御効果測定処理は、第1の実施形態の制御効果測定処理と同様の処理を行うので、説明を省略する。
【0090】
続いて、代理応答部123は、S51において測定された制御効果が閾値よりも高いか否かを判定する(S52)。代理応答部123は、制御効果が閾値よりも高いと判定した場合(判定がYesの場合)、S53に処理を移す。また、代理応答部123は、制御効果が閾値以下と判定した場合(判定がNoの場合)、S47に処理を移す。
【0091】
続いて、代理応答部123は、全ての処理対象端末に対して制御を行ったか否か、すなわち、全てのブロックについて輻輳制御処理を行ったか否かを判定する(S53)。代理応答部123は、全ての処理対象端末に対して制御を行ったと判定した場合(判定がYesの場合)、輻輳制御処理を終了し、全ての処理対象端末に対して制御を行っていないと判定した場合(判定がNoの場合)、S48に処理を移す。
【0092】
[第2の実施形態における効果]
以上のとおり、第2の実施形態に係る代理応答部123は、代理レスポンスを送信する対象である制御対象端末数を算出し、輻輳時に携帯端末2がリクエストを送信する輻輳時リトライ間隔に相当する時間において代理レスポンスを送信可能な端末数と、制御対象端末数とに基づいて、代理レスポンスを送信する対象の携帯端末2の集合を示すブロックの数を算出し、ブロックの数と、輻輳が発生していない場合に携帯端末2がリクエストを送信する通常時リトライ間隔とに基づいて、1ブロックあたりの制御を実行する制御実行時間を特定し、ブロックのそれぞれについて、当該制御実行時間にわたって制御を実行する。
【0093】
この発明によれば、通信制御装置1は、例えば、制御対象端末数が数千万台であっても、分割して処理を行うことで、通信制御装置1に係る負荷を大幅に抑制することができる。また、処理を複数のブロックに分割し、さらに複数のブロックそれぞれの制御実行時間を、正常時リトライ間隔に基づいて調整するので、複数のブロックそれぞれについて、均一に輻輳制御を行うことができる。
【0094】
<第3の実施形態>
[リクエスト数に基づいて輻輳状態を判定する]
続いて、第3の実施形態について説明する。第3の実施形態は、輻輳検出部122が、レスポンス数を用いずに、リクエスト数に基づいて輻輳を判定する点で第1の実施形態と異なり、その他の点では同じである。
【0095】
第3の実施形態に係るトラヒック監視部121は、所定期間に携帯端末2からサーバ3に送信されたリクエストの数と、サーバ3にリクエストを送信した携帯端末2の数とを監視する。具体的には、トラヒック監視部121は、リクエストに宛先情報として含まれているサーバ3のIPアドレスとポート番号に基づいて、所定期間に携帯端末2からサーバ3に送信されたリクエストの数を集計する。また、トラヒック監視部121は、リクエストに送信元情報として含まれている携帯端末2のIPアドレスとポート番号に基づいて、所定期間にサーバ3にリクエストを送信した携帯端末2の数を集計する。
【0096】
輻輳検出部122は、トラヒック監視部121が集計したリクエストの数、及びリクエスト端末数に基づいてサーバ3の障害に起因する輻輳を検出する。具体的には、輻輳検出部122は、複数の所定期間においてトラヒック監視部121が集計したリクエストの数の変化率を算出する。そして、輻輳検出部122は、当該変化率が閾値を超えた場合、すなわち、リクエストの数が急上昇した場合に、輻輳を検出する。
【0097】
[第3の実施形態における効果]
以上のとおり、第3の実施形態に係る通信制御装置1は、携帯端末2からサーバ3に送信されたリクエストの数を監視するトラヒック監視部121と、リクエストの数に基づいて輻輳を検出する輻輳検出部122と、輻輳検出部122が輻輳を検出した場合に、携帯端末2に対してサーバ3が送信するレスポンスの代わりとなる代理レスポンスを送信する代理応答部123とを備える。
【0098】
この発明によれば、トラヒック監視部121がレスポンスを集計する必要がないので、レスポンスを集計する場合に比べて、通信制御装置1にかかる負荷を軽減することができる。また、輻輳検出部122がリクエストの数のみに基づいて輻輳を検出するので、サーバからリクエストに対応するレスポンスが送信されない場合であっても早期に輻輳を検出することができる。
【0099】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。特に、装置の分散・統合の具体的な実施形態は以上に図示するものに限られず、その全部又は一部について、種々の付加等に応じて、又は、機能負荷に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【符号の説明】
【0100】
1・・・通信制御装置、11・・・記憶部、12・・・制御部、121・・・トラヒック監視部、122・・・輻輳検出部、123・・・代理応答部、2・・・携帯端末、3・・・サーバ、4・・・コアネットワーク、5・・・L1スイッチ、6・・・ゲートウェイ、7・・・インターネット、S・・・通信制御システム
図1
図2
図3
図4
図5
図6
図7
図8
図9