(58)【調査した分野】(Int.Cl.,DB名)
通信ネットワークを介してデータ伝送されるサーバ装置との間で確立されたコネクションのKeep-Aliveパケットを送信するアプリケーションを有する端末装置において、
前記コネクションの確立の際に前記コネクションのKeep-Aliveパケットを前記サーバ装置から送信することの通知を受信すると、前記アプリケーションに対して前記コネクションのKeep-Aliveパケットの送信停止を指示するKeep-Alive制御部を備えたことを特徴とする端末装置。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、上述した従来技術では、Keep-Aliveパケットを送信するための端末の負荷や消費電力の低減が課題である。
【0005】
本発明は、このような事情を考慮してなされたもので、Keep-Aliveパケットを送信するための端末の負荷や消費電力の低減を図ることを課題とする。
【課題を解決するための手段】
【0006】
(1)上記の課題を解決するために、本発明に係るKeep-Aliveパケット送信装置は、端末装置と、通信ネットワークを介して前記端末装置にデータ伝送されるサーバ装置との間で確立されたコネクションのKeep-Aliveパケットを送信するKeep-Aliveパケット送信装置であり、前記端末装置までは届かないように転送制限された前記コネクションのKeep-Aliveパケットを送信するKeep-Aliveパケット送信部を備えたことを特徴とする。
【0007】
(2)本発明に係るKeep-Aliveパケット送信装置において、前記コネクションのKeep-Aliveパケットは、前記サーバ装置から前記端末装置の直前のネットワーク機器までのパケット有効期間を有することを特徴とする。
【0008】
(3)本発明に係るKeep-Aliveパケット送信装置において、前記コネクションのKeep-Aliveパケットは、前記サーバ装置から、前記端末装置が接続する無線基地局装置の直前のネットワーク機器までのパケット有効期間を有することを特徴とする。
【0009】
(4)本発明に係るKeep-Aliveパケット送信装置においては、前記パケット有効期間に対応するネットワーク距離を測定するネットワーク距離測定部と、前記ネットワーク距離の測定値と当該測定時の前記端末装置の前記通信ネットワーク上の位置を示す測定情報とを関連付けて記憶するネットワーク距離記憶部と、前記ネットワーク距離記憶部に記憶されている測定情報の位置と同じ位置に在る端末装置と前記サーバ装置との間で確立されたコネクションのKeep-Aliveパケットに設定されるパケット有効期間を、該測定情報に関連付けられているネットワーク距離の測定値に基づいて決定するKeep-Alive制御部と、を備えたことを特徴とする。
【0010】
(5)本発明に係るKeep-Aliveパケット送信装置においては、前記コネクションの確立の際に、前記端末装置に対して、前記コネクションのKeep-Aliveパケットを前記サーバ装置から送信することを通知するKeep-Alive実行通知部を備えたことを特徴とする。
【0011】
(6)本発明に係る端末装置は、通信ネットワークを介してデータ伝送されるサーバ装置との間で確立されたコネクションのKeep-Aliveパケットを送信するアプリケーションを有する端末装置において、前記コネクションの確立の際に前記コネクションのKeep-Aliveパケットを前記サーバ装置から送信することの通知を受信すると、前記アプリケーションに対して前記コネクションのKeep-Aliveパケットの送信停止を指示するKeep-Alive制御部を備えたことを特徴とする。
【0012】
(7)本発明に係るKeep-Alive制御システムは、前述の(5)に記載のKeep-Aliveパケット送信装置と、前述の(6)に記載の端末装置とを有する。
【0013】
(8)本発明に係るKeep-Aliveパケット送信方法は、端末装置と、通信ネットワークを介して前記端末装置にデータ伝送されるサーバ装置との間で確立されたコネクションのKeep-Aliveパケットを送信するKeep-Aliveパケット送信方法であり、前記端末装置までは届かないように転送制限された前記コネクションのKeep-Aliveパケットを送信するKeep-Aliveパケット送信ステップを含むことを特徴とする。
【0014】
(9)本発明に係るコンピュータプログラムは、端末装置と、通信ネットワークを介して前記端末装置にデータ伝送されるサーバ装置との間で確立されたコネクションのKeep-Aliveパケットを送信するKeep-Aliveパケット送信処理を行うためのコンピュータプログラムであって、前記端末装置までは届かないように転送制限された前記コネクションのKeep-Aliveパケットを送信するKeep-Aliveパケット送信ステップをコンピュータに実行させるためのコンピュータプログラムであることを特徴とする。
【発明の効果】
【0015】
本発明によれば、Keep-Aliveパケットを送信するための端末の負荷や消費電力の低減を図ることができる。
【発明を実施するための形態】
【0017】
以下、図面を参照し、本発明の実施形態について説明する。
図1は、本発明の一実施形態に係る通信システムの概略構成図である。
図1において、端末1は無線回線により無線基地局3と接続する。無線基地局3としては、例えば、携帯電話網の基地局(例えば、3G回線の基地局)や無線LANのアクセスポイント(Access Point:AP)などが挙げられる。端末1は、無線基地局3を介して、インターネット等のIP(Internet Protocol)ネットワーク5に接続されるサーバ2との間で通信することができる。
【0018】
無線基地局3とサーバ2間の通信経路上には、NAT(Network Address Translation)やファイアウォール等のネットワーク機器4が、一つ若しくは複数存在する場合がある。一般的に、ネットワーク機器4は、自機器を経由するコネクションの有無を管理し、一定時間(コネクション保持時間)においてパケットの通過が無いコネクションについてはパケットを廃棄することが知られている。また、コネクション保持時間は、ネットワーク機器4によって異なる場合がある。
【0019】
端末1にはアプリケーション10が存在する。アプリケーション10は、サーバ2との間でコネクション100を確立し通信する。
【0020】
図2は、本実施形態に係る端末1およびサーバ2の構成を示すブロック図である。
図2において、端末1は、通信部11とアプリケーション10とKeep-Alive制御部12を有する。サーバ2は、アプリケーションサーバ部20と通信部21とネットワーク(NW)距離測定部22とNW距離記憶部23とKeep-Alive制御部24とKeep-Aliveパケット送信部25を有する。Keep-Alive制御部24は、Keep-Alive実行通知部26を有する。
【0021】
端末1において、通信部11は、無線基地局3を介して、IPネットワーク5に接続されるサーバ2との間で通信する。アプリケーション10は、サーバ2のアプリケーションサーバ部20との間でコネクション100を確立し通信する。Keep-Alive制御部12は、コネクション100の確立の際にコネクション100のKeep-Aliveパケットをサーバ2から送信することの通知を受信すると、アプリケーション10に対してコネクション100のKeep-Aliveパケットの送信停止を指示する。これにより、アプリケーション10は、コネクション100のKeep-Aliveパケットを送信しない。
【0022】
サーバ2において、通信部21は、IPネットワーク5を介して、端末1との間で通信する。アプリケーションサーバ部20は、端末1のアプリケーション10との間でコネクション100を確立し通信する。
【0023】
NW距離測定部22は、コネクション100に関するサーバ2からのNW距離を測定する。NW距離は、通信ネットワーク上のホップ数である。本実施形態では、NW距離測定部22は、コネクション100に関して、サーバ2から、端末1が接続する無線基地局3の直前のネットワーク機器4までの、ホップ数を測定する。
【0024】
NW距離記憶部23は、NW距離測定部22により測定されたNW距離測定値と当該測定時の端末1の通信ネットワーク上の位置を示す測定情報とを関連付けて記憶する。
図3は、本実施形態に係るNW距離記憶部23の構成例である。
図3の例では、測定情報は、端末1に割り当てられたIPアドレスである。NW距離測定値は、NW距離測定部22により測定されたホップ数である。
【0025】
Keep-Alive制御部24は、Keep-Aliveパケットの送信の制御を行う。Keep-Alive制御部24は、Keep-Aliveパケットに設定されるパケット有効期間(Time To Live:TTL)を、Keep-Aliveパケット送信部25に通知する。Keep-Aliveパケットに設定されるTTLは、端末1までは届かない値である。Keep-Aliveパケット送信部25は、Keep-Alive制御部24から通知されたTTLを有するKeep-Aliveパケットを、通信部21を介して送信する。該Keep-Aliveパケットは、TTLによって端末1までは届かないように転送制限されているので、端末1には届かない。
【0026】
Keep-Alive実行通知部26は、コネクション100の確立の際に、端末1に対して、コネクション100のKeep-Aliveパケットをサーバ2から送信することを通知する。この通知方法としては、コネクション100の確立手順でサーバ2から端末1へ送信するパケットにKeep-Aliveフラグを設け、Keep-Aliveフラグがオンである場合には、コネクション100のKeep-Aliveパケットをサーバ2から送信することを示し、一方、Keep-Aliveフラグがオフである場合には、コネクション100のKeep-Aliveパケットをサーバ2から送信しないことを示す、とする。
【0027】
次に
図4を参照して本実施形態に係るKeep-Aliveパケット送信処理を説明する。
図4は、本実施形態に係るKeep-Aliveパケット送信処理のシーケンスチャートである。
【0028】
(ステップS1)端末1の通信部11が無線基地局3に接続する。
【0029】
(ステップS2)端末1のアプリケーション10が、サーバ2のアプリケーションサーバ部20に対してコネクション100の確立を要求する。このコネクション100の確立要求の情報は、通信部21からKeep-Alive制御部24に出力される。
【0030】
ここで、端末1が接続する無線基地局3とサーバ2との間の通信経路上に在る各ネットワーク(NW)機器4(A),(B)は、コネクション100を特定するコネクション情報(IPパケットの送信元アドレス、宛先アドレス、ポート番号等)を保持する。各NW機器4(A),(B)は、保持したコネクション情報でコネクション100を特定し、コネクション保持時間においてコネクション100のIPパケットの通過が無い場合には該保持したコネクション情報を破棄する。各NW機器4(A),(B)は、コネクション情報が保持されていないコネクションのIPパケットを廃棄する。
【0031】
(ステップS3)サーバ2のアプリケーションサーバ部20は、端末1に対して、コネクション100の確立を応答する。このコネクション100の確立の応答パケットには、Keep-Alive制御部24からのKeep-Aliveフラグが付加される。ここでは、Keep-Aliveフラグはオンである。
【0032】
(ステップS4)端末1のKeep-Alive制御部12は、サーバ2から受信したコネクション100の確立の応答パケットにおいてKeep-Aliveフラグがオンである場合に、アプリケーション10に対してコネクション100のKeep-Aliveパケットの送信停止を指示する。これにより、アプリケーション10は、コネクション100のKeep-Aliveパケットを送信しない。
【0033】
(ステップS5)サーバ2のKeep-Alive制御部24は、NW距離記憶部23に対して、端末1のIPアドレスを通知し、NW距離を要求する。
【0034】
(ステップS6)NW距離記憶部23は、Keep-Alive制御部24から通知されたIPアドレスに対応する測定情報を探索する。この探索の結果、測定情報が発見された場合には、NW距離記憶部23は当該測定情報に関連付けられているNW距離をKeep-Alive制御部24へ回答する。一方、測定情報が発見されなかった場合には、NW距離記憶部23は、NW距離が無いことをKeep-Alive制御部24へ回答する。
【0035】
(ステップS7)Keep-Alive制御部24は、NW距離記憶部23からの回答がNW距離無しの場合に、NW距離測定部22に対して、コネクション100に関するNW距離の測定を指示する。
【0036】
(ステップS8)NW距離測定部22は、Keep-Alive制御部24からコネクション100に関するNW距離の測定の指示を受けると、コネクション100に関するNW距離の測定を行う。このNW距離の測定方法としては、端末1のIPアドレスを宛先にしたIPパケット(例えば、PingまたはUDPパケット)を、TTLを一つずつ増加させながら順次送信することで、サーバ2から、端末1が接続する無線基地局3の直前のネットワーク機器4までの、ホップ数を測定する。
【0037】
(ステップS9)NW距離測定部22は、NW距離測定値をKeep-Alive制御部24へ通知する。
【0038】
(ステップS10)Keep-Alive制御部24は、NW距離測定部22から通知されたNW距離測定値と端末1のIPアドレスをNW距離記憶部23に通知し保持させる。NW距離記憶部23は、該端末1のIPアドレスに関連付けて該NW距離測定値を保持する。
【0039】
(ステップS11)Keep-Alive制御部24は、コネクション100に関するNW距離をKeep-Aliveパケット送信部25に設定する。Keep-Alive制御部24は、コネクション100に関するNW距離がNW距離記憶部23に保持されていた場合には、該保持されていたNW距離(ステップS6で回答されたNW距離)を用いる。一方、Keep-Alive制御部24は、コネクション100に関するNW距離がNW距離記憶部23に保持されていなかった場合には、NW距離測定部22で測定されたNW距離(ステップS9で通知されたNW距離測定値)を用いる。
【0040】
(ステップS12)Keep-Aliveパケット送信部25は、Keep-Alive制御部24から通知されたNW距離に基づいてKeep-AliveパケットにTTLを設定し、通信部21を介して該Keep-Aliveパケットを送信する。これにより、該Keep-Aliveパケットは、端末1が接続する無線基地局3の直前のネットワーク機器4(
図4ではネットワーク機器4(A))まで到達し、当該ネットワーク機器4で廃棄される。但し、各ネットワーク(NW)機器4(A),(B)は、該Keep-Aliveパケットによって、コネクション100のコネクション情報を保持する。これにより、各ネットワーク(NW)機器4(A),(B)は、コネクション100を維持する。ステップS12のKeep-Aliveパケットの送信は定期的に行われる。
【0041】
(ステップS13)Keep-Alive制御部24は、ステップS12でサーバ2から送信されたコネクション100のKeep-Aliveパケットに対するエラーの応答パケットを、通信部21を介して受信する。
【0042】
上述した実施形態によれば、サーバ2がコネクション100のKeep-Aliveパケットを送信することにより、Keep-Aliveパケットを送信するため端末1の負荷や消費電力を低減できる。また、該Keep-Aliveパケットは、端末1までは届かないので、端末1は該Keep-Aliveパケットの受信処理を行わずに済む。また、該Keep-Aliveパケットは、端末1が接続する無線基地局3まで到達しないので、端末1と無線基地局3の間の無線区間の無線リソースを消費せずに済む。また、Keep-Aliveパケットの伝送の度に、無線基地局3が端末1をActive状態にしたり非Active状態にしたりするための制御信号の発生を抑制することができる。
【0043】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【0044】
例えば、Keep-Aliveパケットに設定するTTLは、サーバ2から端末1までのホップ数から少なくとも1を減算した値であればよい。
【0045】
また、上述した実施形態では、端末1は無線基地局3に接続し無線回線を介してIPネットワーク5に接続したが、これに限定されない。端末1は、無線回線を介さず、有線回線を介してIPネットワーク5に接続してもよい。
【0046】
また、上述したサーバ2を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0047】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。