(57)【要約】【課題】データサーバへのデータ取得要求からクライアントへのデータ送信まで継続するセッションを短くする。【解決手段】パラメータ算出部１４は、データを受信した時刻であるデータ受信時刻を用いて、データ取得要求を次に送信すべき時刻を示すデータ取得要求送信指定時刻を算出する（Ｓ２５）。データ取得要求送信指定時刻は、直後のデータ受信時刻までの時間が可及的に短くなるようにする。クライアント通信部１２は、データを受信したなら、パラメータ記憶部１５からデータ取得要求送信指定時刻を読み出し、受信したデータとデータ取得要求送信指定時刻をクライアントに送信する（Ｓ３１）。クライアントは、データ取得要求送信指定時刻の時刻にデータ取得要求を送信する。【選択図】図３
2017016396.tif 000002
【特許請求の範囲】
【請求項１】
センサから受信したデータをクライアントに送信するデータサーバであって、
前記センサから受信したデータを記憶するデータ記憶部と、
前記センサからデータを受信した受信時刻であるデータ受信時刻を用いて、前記クライアントからデータサーバに対して次にデータ取得要求を送信すべき時刻を示すデータ取得要求送信指定時刻を、直後のデータ受信時刻までの時間が可及的に短くなるように算出するパラメータ算出部と、
前記算出されたデータ取得要求送信指定時刻を前記クライアントに通知し、前記クライアントからデータ取得要求を受信したなら、前記クライアントとのセッションを確立し、前記セッションの継続中に受信されたデータを前記クライアントに送信してセッションを終了するクライアント通信部と
を備えることを特徴とするデータサーバ。
【請求項２】
前記パラメータ算出部は、前記データ取得要求送信指定時刻を、最新の前記データ受信時刻、前記データ受信時刻の間隔の平均及び標準偏差に基づいて算出する
ことを特徴とする請求項１記載のデータサーバ。
【請求項３】
前記パラメータ算出部は、前記データ取得要求の受信時刻に確立されるセッションを継続できる最長時間長であるセッション継続時間長を算出し、
前記クライアント通信部は、前記クライアントとのセッションを確立してから前記セッション継続時間長に相当する時間が経過したならセッションを終了する
ことを特徴とする請求項１又は２記載のデータサーバ。
【請求項４】
前記パラメータ算出部は、前記セッション継続時間長を、前記データ受信時刻の間隔の標準偏差に基づいて算出する
ことを特徴とする請求項３記載のデータサーバ。
【請求項５】
請求項１乃至４のいずれかに記載のデータサーバとしてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データサーバ及びコンピュータプログラムに関する。
【背景技術】
【０００２】
従来においては、例えば、クライアントからデータ取得要求を受信したデータサーバは、クライアントとのセッションを確立する。データサーバは、センサからデータを受信したなら、そのデータをクライアントに送信し、セッションを終了する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ETSI M2M v2.1.1 TS 102 690 Machine-to-Machine communications(M2M); Functional architecture 9.3.2.26.6 Long polling based notifications delivered to issuer pp.217 - 220
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記例では、例えば、センサは一定間隔でデータを送信するが、クライアントは、データの送信タイミングを知り得ない。そのため、セッションの継続期間が長くなる可能性がある。セッションの継続中においては、データサーバにかかる負荷が増大する。また、クライアントにとっては、データ取得要求を送信してからデータが送信されるまで長時間データを待機しなければならない。よって、セッションの短縮化が望まれている。
【０００５】
本発明は、上記従来の課題を解決すべくなされたものであり、データサーバへのデータ取得要求からクライアントへのデータ送信まで継続するセッションを短くすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、センサから受信したデータをクライアントに送信するデータサーバであって、前記センサから受信したデータを記憶するデータ記憶部と、前記センサからデータを受信した受信時刻であるデータ受信時刻を用いて、前記クライアントからデータサーバに対して次にデータ取得要求を送信すべき時刻を示すデータ取得要求送信指定時刻を、直後のデータ受信時刻までの時間が可及的に短くなるように算出するパラメータ算出部と、前記算出されたデータ取得要求送信指定時刻を前記クライアントに通知し、前記クライアントからデータ取得要求を受信したなら、前記クライアントとのセッションを確立し、前記セッションの継続中に受信されたデータを前記クライアントに送信してセッションを終了するクライアント通信部とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、データ取得要求送信指定時刻を、直後のデータ受信時刻までの時間が可及的に短くなるように算出し、クライアントに通知することで、クライアントは、データ取得要求送信指定時刻の時刻にデータ取得要求を送信する。また、データ取得要求を受信したならセッションを確立し、データを送信してセッションを終了する。よって、セッションを短くできる。
【図面の簡単な説明】
【０００８】
【図１】本実施の形態に係るデータサーバの構成を示すブロック図である。
【図２】パラメータ記憶部１５の構成の一例を示す図である。
【図３】データ受信タイミング記憶部１７の構成の一例を示す図である。
【図４】データサーバ１の動作を示すシーケンス図である。
【図５】データ取得要求送信指定時刻を通知した後のシーケンス図である。
【図６】図５においてセッション継続中にデータを受信しなかった場合のシーケンス図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について図面を参照して説明する。
【００１０】
図１に示すように、データサーバ１は、センサ通信部１１、クライアント通信部１２、データ記憶部１３、パラメータ算出部１４、パラメータ記憶部１５、データ受信検知部１６、データ受信タイミング記憶部１７を備える。
【００１１】
センサは、データの検出を繰り返す。センサは、例えば一定間隔で最新のデータをデータサーバ１に送信する。センサ通信部１１は、データを受信する。
【００１２】
クライアントは、センサが検出したデータが必要となったなら、データの取得要求であるデータ取得要求をデータサーバ１に送信する。データ取得要求は、例えば、ロングポーリングの開始要求である。
【００１３】
クライアント通信部１２は、データ取得要求を受信後、センサより新たなデータを受信した時点で当該データをクライアントに送信する。また、クライアント通信部１２は、データ取得要求を次に送信すべき時刻を示すデータ取得要求送信指定時刻をクライアントに送信する。
【００１４】
クライアントは、データ取得要求送信指定時刻を通知された場合は、最新のデータ取得要求送信指定時刻にデータ取得要求を送信する。
【００１５】
データ記憶部１３は、受信した最新のデータを記憶する。また、これまでデータを受信した受信時刻であるデータ受信時刻を記憶しておく。
【００１６】
パラメータ算出部１４は、データ取得要求送信指定時刻並びに、クライアントとのセッションを継続できる最長時間長であるセッション継続時間長を算出する。セッションの開始、継続、終了は、ロングポーリングの開始、継続、終了と解釈してもよい。
【００１７】
パラメータ記憶部１５は、データ取得要求送信指定時刻とセッション継続時間長を記憶する。
【００１８】
データ受信検知部１６は、センサからデータを受信し、データがデータ記憶部１３に記憶されたことを検知する。
【００１９】
データ受信タイミング記憶部１７は、データ受信検知部１６によって検知されたデータ種別とデータ受信時刻の履歴を記憶する。
【００２０】
図２に示すように、パラメータ記憶部１５には、データ取得要求送信指定時刻とセッション継続時間長が、例えば、データ種別ごとに記憶される。
【００２１】
図３に示すように、データ受信タイミング記憶部１７は、受信したデータのデータ種別とデータ受信時刻の履歴を記憶する。
【００２２】
図４に示すように、クライアントは所望のデータ種別のデータについて、データ取得要求をデータサーバ１に送信し、クライアント通信部１２がデータ取得要求を受信する（Ｓ１）。クライアント通信部１２は、このデータ取得要求を受信するタイミングでクライアントとのセッションを確立する。
【００２３】
クライアント通信部１２は、パラメータ記憶部１５から、該当のデータ種別のセッション継続時間長を読み出す（Ｓ３）。クライアント通信部１２は、クライアントとのセッションを確立してからセッション継続時間長に相当する時間が経過したならセッションを終了する。
【００２４】
一方、センサは、検出した最新のデータをデータサーバ１に送信し、センサ通信部１１がデータを受信する（Ｓ１１）。センサ通信部１１は、データを受信した旨のメッセージをセンサに送信する（Ｓ１３）。
【００２５】
センサ通信部１１は、データ記憶部１３のデータを、受信した最新のデータに置き換える（Ｓ１５）。
【００２６】
データ受信検知部１６は、データ記憶部１３のデータが置き換わったことを検知したなら（Ｓ１７）、データと各データ受信時刻を読み出す（Ｓ１９）。そして、データ種別とデータ受信時刻をパラメータ算出部１４に与え（Ｓ２１）、データをクライアント通信部１２に送信する（Ｓ２３）。
【００２７】
パラメータ算出部１４は、データ受信検知部１６から受信したデータ種別とデータ受信時刻をデータ受信タイミング記憶部１７に記憶させる（Ｓ１０１）。その後、受信したデータ種別の過去の複数のデータ受信時刻をデータ受信タイミング記憶部１７から読み出し（Ｓ１０３）、データ受信時刻を用いて、データ取得要求送信指定時刻とセッション継続時間長を算出し（Ｓ２５）、これらによりパラメータ記憶部１５を更新する（Ｓ２７）。ここでパラメータ算出部１４は、は、データ受信時刻の間隔が正規分布に則るとの仮定のもとで、直後のデータ受信時刻までの時間が可及的に短くなるようにデータ取得要求送信指定時刻を算出する。詳しくは以下の式によりデータ取得要求送信指定時刻を算出する。
【００２８】
データ取得要求送信指定時刻＝最新のデータ受信時刻＋（データ受信時刻の間隔の平均）−３×（データ受信時刻の間隔の標準偏差）
例えば、最新のデータ受信時刻が０時１０分００秒、データ受信時刻の間隔の平均が３秒、データ受信時刻の間隔の標準偏差が０．２秒の場合、データ取得要求送信指定時刻は０時１０分２．４秒となる。なお、係数３は、一例である。
【００２９】
また、以下の式によりセッション継続時間長を算出する。
【００３０】
セッション継続時間長＝６×（データ受信時刻の間隔の標準偏差）
例えば、データ受信時刻の間隔の標準偏差が０．２秒の場合、セッション継続時間長は１．２秒となる。なお、係数６は、一例である。
【００３１】
これらのデータ受信時刻は、データ受信タイミング記憶部１７から読み出したものを用いる。
【００３２】
さて、クライアント通信部１２は、データを受信したなら、更新後のパラメータ記憶部１５からデータ取得要求送信指定時刻を読み出す（Ｓ２９）。
【００３３】
クライアント通信部１２は、受信したデータと読み出したデータ取得要求送信指定時刻をクライアントに送信する（Ｓ３１）。クライアント通信部１２は、このデータを送信するタイミングでクライアントとのセッションを終了する。
【００３４】
これにより、クライアントは、データ取得要求送信指定時刻の時刻にデータ取得要求を送信する。データ取得要求送信指定時刻は、直後のデータ受信時刻までの時間が可及的に短くなるように算出されているので、その後、可及的に短い間隔をおいて、データが送信される。
【００３５】
すなわち、図５に示すように、データ取得要求により確立されるセッションは、短い間隔をおいてデータを受信し、そのデータをクライアントに送信したタイミングで終了する。よって、セッションの時間を短くできる。その結果、データサーバ１の負荷を低減できる。また、クライアントは、データ取得要求から短時間でデータを受信できる。
【００３６】
また、図６に示すように、何らかの原因により、データ取得要求から短時間でデータを受信しなかった場合でも、セッションが確立されてからセッション継続時間長に相当する時間が経過したならセッションを終了し、タイムアウト又はデータを受信しなかった旨のメッセージをクライアントに通知する。セッション継続時間長を用いることで、セッションを終了するまでの時間を長めにとる必要がなく、よって、セッションの時間を短くできる。その結果、データサーバ１の負荷を低減できる。
【００３７】
なお、データ取得要求送信指定時刻は、直後のデータ受信時刻までの時間が可及的に短くなるように算出されているので、セッションが確立されてからデータを受信しないままセッション継続時間長に相当する時間が経過することは稀である。よって、セッション継続時間長は算出せず、一定の時間が経過したならセッションを終了することとしてもよい。
【００３８】
また、データサーバ１としてコンピュータを機能させるためのコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
【符号の説明】
【００３９】
１  データサーバ
１１  センサ通信部
１２  クライアント通信部
１３  データ記憶部
１４  パラメータ算出部
１５  パラメータ記憶部
１６  データ受信検知部
１７  データ受信タイミング記憶部
【図１】
2017016396.tif 000003
【図２】
2017016396.tif 000004
【図３】
2017016396.tif 000005
【図４】
2017016396.tif 000006
【図５】
2017016396.tif 000007
【図６】
2017016396.tif 000008