JP7073920B2 - 時刻付与方法、時刻付与装置及びプログラム - Google Patents

時刻付与方法、時刻付与装置及びプログラム Download PDF

Info

Publication number
JP7073920B2
JP7073920B2 JP2018107151A JP2018107151A JP7073920B2 JP 7073920 B2 JP7073920 B2 JP 7073920B2 JP 2018107151 A JP2018107151 A JP 2018107151A JP 2018107151 A JP2018107151 A JP 2018107151A JP 7073920 B2 JP7073920 B2 JP 7073920B2
Authority
JP
Japan
Prior art keywords
time
data
delay time
message
delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018107151A
Other languages
English (en)
Other versions
JP2019213033A (ja
Inventor
弘順 越地
直樹 肥後
俊光 椿
将尚 中野
達也 石原
欣子 末田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2018107151A priority Critical patent/JP7073920B2/ja
Priority to PCT/JP2019/017784 priority patent/WO2019235101A1/ja
Priority to US15/734,917 priority patent/US11349586B2/en
Publication of JP2019213033A publication Critical patent/JP2019213033A/ja
Application granted granted Critical
Publication of JP7073920B2 publication Critical patent/JP7073920B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • GPHYSICS
    • G04HOROLOGY
    • G04GELECTRONIC TIME-PIECES
    • G04G7/00Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0673Clock or time synchronisation among packet nodes using intermediate nodes, e.g. modification of a received timestamp before further transmission to the next packet node, e.g. including internal delay time or residence time into the packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/004Synchronisation arrangements compensating for timing error of reception due to propagation delay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/0055Synchronisation arrangements determining timing error of reception due to propagation delay
    • H04W56/0065Synchronisation arrangements determining timing error of reception due to propagation delay using measurement of signal travel time

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Electric Clocks (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本発明は、時刻付与方法、時刻付与装置及びプログラムに関する。
近年、IoT(Internet of Things)の進展に伴い、通信ネットワークを介して様々なデバイスからデータを取得できるようになってきた。しかしながら、これらのデータのほとんどは活用されておらず、特に、複数のデバイスからそれぞれ取得可能なデータを組み合わせた活用に関しては皆無に近い。この原因の1つとしては、複数のデバイスからそれぞれ取得されたデータの時刻を同期させることが難しいことが挙げられる。
これに対して、様々な時刻同期の手法が従来から提案されている。これらの従来手法は、大きく2つの手法に分類することができる。1つ目の手法は、データを取得する前にデバイス同士が通信することにより、これらのデバイス同士が保持する時刻情報を同期させる手法である(例えば、非特許文献1参照)。2つ目の手法は、デバイスの性能等の特徴に基づいて、データに付与されている時刻情報のずれを補正する手法である(例えば、非特許文献2参照)。
澤田, 志波, 小国, "加速度計測のための無線センサネットワークの実用的な時刻同期手法の開発," 土木学会論文集A1(構造・地震工学), Vol.65, No.1(地震工学論文集第30巻), 2009. 塚本, 小幡, 高松, 浅田, "無線センサネットワークによる行動と状況理解に関する研究," 富山県工業技術センター研究報告, No.25, 2011.
しかしながら、例えば、単機能・単性能なセンサデバイス等の場合、時刻情報を保持することができない等の制約があるため、上記の1つ目の手法を用いることが難しいことがある。
また、仮に上記の1つ目の手法を用いてデバイス同士が保持する時刻情報を同期させたとしても、デバイスが正しい時刻情報を保持していない場合があるため、実際の正確な時刻とのずれが生じることがある。このことは、上記の2つ目の手法を用いた場合であっても同様である。
これに対して、デバイスから送信されたデータ(以降、「デバイスデータ」と表す。)に対して、当該デバイスデータが生成された時刻を示す時刻情報を付与することができれば、複数のデバイスからそれぞれ取得されたデータの時刻を同期させることができるようになる。
本発明は、上記の点に鑑みてなされたもので、デバイスデータに対して時刻情報を付与することを目的とする。
上記目的を達成するために、本発明の実施の形態は、デバイスからのデータを受信すると、前記データの受信時刻と、予め推定された前記デバイスの第1の遅延時間とを用いて、前記データの生成時刻を推定する生成時刻推定手順と、前記生成時刻を示す情報を前記データに付与する付与手順と、前記生成時刻を示す情報が付与されたデータを、前記データの宛先に送信する送信手順と、をコンピュータが実行することを特徴とする。
本発明によれば、デバイスデータに対して時刻情報を付与することができる。
本発明の実施の形態における時刻付与システムの全体構成の一例を示す図である。 本発明の実施の形態における時刻付与装置のハードウェア構成の一例を示す図である。 本発明の実施の形態における時刻付与システムが実行する各処理の流れの一例を示す図である。 本発明の実施の形態における時刻付与装置の機能構成の一例を示す図である。 本発明の実施の形態における時刻補正処理の一例を示すフローチャートである。 本発明の実施の形態における遅延時間推定処理の一例を示すフローチャートである。 本発明の実施の形態における時刻付与処理の一例を示すフローチャートである。
以下、本発明の実施の形態について説明する。本発明の実施の形態では、デバイスデータに対して、当該デバイスデータが生成された時刻(以降、「生成時刻」とも表す。)を示す時刻情報を付与する時刻付与システム1について説明する。なお、本発明の実施の形態では、「時刻」との用語を用いるが、時刻には時分秒だけでなく、例えば、年月日等が含まれていても良い。
<全体構成>
まず、本発明の実施の形態における時刻付与システム1の全体構成について、図1を参照しながら説明する。図1は、本発明の実施の形態における時刻付与システム1の全体構成の一例を示す図である。
図1に示すように、本発明の実施の形態における時刻付与システム1は、時刻付与装置10と、NTP(Network Time Protocol)サーバ20と、複数のデバイス30と、1以上のデータ利用装置40とを有する。また、デバイス30とデータ利用装置40とは、通信ネットワーク50を介して通信可能に接続される。なお、通信ネットワーク50は、例えば、TCP/IPプロトコルスタックをサポートするネットワークである。
時刻付与装置10は、通信ネットワーク50内のシステム環境(例えば、通信事業者のシステム環境)に設置されたコンピュータ又はコンピュータシステムである。時刻付与装置10は、通信ネットワーク50を介してデバイス30からデータ利用装置40に送信されるデバイスデータに対して、当該デバイスデータの生成時刻を示す時刻情報を付与する。なお、生成時刻とは、デバイスデータがデバイス30で生成又は作成された時刻のことである。ただし、生成時刻は、デバイスデータがデバイス30から送信された時刻であっても良い。
また、時刻付与装置10は、NTPサーバ20と通信を行って、自身が保持している時刻情報(すなわち、システムクロックの時刻情報)を補正する。なお、システムクロックとは、OS(Operating System)等により管理される時計機能のことである。
NTPサーバ20は、通信ネットワーク50内のシステム環境(例えば、通信事業者のシステム環境)に設置されたコンピュータ又はコンピュータシステムである。NTPサーバ20は、時刻付与装置10に対して正確な時刻情報を提供する。
デバイス30は、デバイスデータを生成し、データ利用装置40に送信する各種機器である。デバイス30としては、例えば、種々のセンサデバイス等が挙げられる。なお、デバイス30としては、通信ネットワーク50を介して通信可能なデバイスであれば良く、例えば、家電製品、車両、ウェアラブルデバイス、ゲーム機器等であっても良い。また、複数のデバイス30の各々は、その機能や性能、仕様等が異なっていても良い。
データ利用装置40は、デバイス30から受信したデバイスデータを種々のアプリケーションに活用するコンピュータ又はコンピュータシステムである。このようなアプリケーションとしては、例えば、デバイスデータの分析やデバイスデータを用いた予測等が挙げられる。データ利用装置40又は当該データ利用装置40が提供するアプリケーションは、例えば、アプリケーションを提供する事業者等により管理される。なお、データ利用装置40は、例えば、クラウドサービス等のサービス形態で、デバイスデータを活用したアプリケーションを提供しても良い。
なお、図1に示す時刻付与システム1の全体構成は一例であって、他の構成であっても良い。例えば、NTPサーバ20が、通信ネットワーク50内のシステム環境に含まれていなくも良い。また、例えば、時刻付与装置10とNTPサーバ20とが一体で構成されていても良い。
<ハードウェア構成>
次に、本発明の実施の形態における時刻付与装置10のハードウェア構成について、図2を参照しながら説明する。図2は、本発明の実施の形態における時刻付与装置10のハードウェア構成の一例を示す図である。
図2に示すように、本発明の実施の形態における時刻付与装置10は、入力装置11と、表示装置12と、RAM(Random Access Memory)13と、ROM(Read Only Memory)14と、CPU(Central Processing Unit)15と、外部I/F16と、通信I/F17と、補助記憶装置18とを有する。これら各ハードウェアは、それぞれがバス19を介して通信可能に接続されている。
入力装置11は、例えばキーボードやマウス、タッチパネル等であり、ユーザが各種操作を入力するのに用いられる。表示装置12は、例えばディスプレイ等であり、ユーザに対して処理結果等を表示するのに用いられる。なお、時刻付与装置10は、入力装置11及び表示装置12のうちの少なくとも一方を有していなくても良い。
RAM13は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM14は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。CPU15は、ROM14や補助記憶装置18等からプログラムやデータをRAM13上に読み出して処理を実行する演算装置である。
外部I/F16は、外部装置とのインタフェースである。外部装置には、記録媒体16a等がある。記録媒体16aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
通信I/F17は、時刻付与装置10が他の装置(例えば、NTPサーバ20やデバイス30、データ利用装置40等)との間でデータ通信を行うためのインタフェースである。
補助記憶装置18は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置18に格納されているプログラムやデータには、例えば、OSや当該OS上で動作する各種プログラム等がある。
本発明の実施の形態における時刻付与装置10は、図2に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。なお、図2に示す例では、本発明の実施の形態における時刻付与装置10が1台の装置(コンピュータ)で実現されている場合について説明したが、これに限られない。本発明の実施の形態における時刻付与装置10は、複数台の装置(コンピュータ)で実現されていても良い。
<各処理の流れ>
以降では、時刻付与システム1が実行する各処理の流れについて、図3を参照しながら説明する。図3は、本発明の実施の形態における時刻付与システム1が実行する各処理の流れの一例を示す図である。
本発明の実施の形態における時刻付与システム1は、時刻付与装置10の時刻情報をNTPサーバ20の時刻情報で補正する「時刻補正処理」と、デバイス30と時刻付与装置10との間の遅延時間(デバイスデータの送受信に要する時間)を算出する「遅延時間推定処理」と、デバイスデータに対して、遅延時間を用いて算出された時刻情報を付与する「時刻付与処理」とを実行する。
時刻補正処理では、時刻付与装置10は、時刻補正メッセージをNTPサーバ20に送信する(ステップS11)。なお、時刻補正メッセージとは、例えば、現在時刻を示す時刻情報の取得をNTPサーバ20に要求するためのメッセージである。
次に、NTPサーバ20は、時刻補正メッセージの応答として、時刻情報が含まれる応答メッセージを時刻付与装置10に送信する(ステップS12)。
そして、時刻付与装置10は、応答メッセージを受信すると、当該応答メッセージに含まれる時刻情報で、自身が保持する時刻情報を補正する(ステップS13)。これにより、時刻付与装置10のシステムクロックの時刻情報が、NTPサーバ20が管理する時刻情報(すなわち、正確な時刻を示す時刻情報)に同期される。
遅延時間推定処理では、時刻付与装置10は、遅延時間計測メッセージをデバイス30に送信する(ステップS21)。なお、遅延時間計測メッセージとは、遅延時間の計測に用いられる所定のメッセージであり、例えば、ICMP(Internet Control Message Protocol)のecho requestパケット等を用いることができる。
次に、デバイス30は、遅延時間計測メッセージに対する応答として、応答メッセージを送信する(ステップS22)。次に、時刻付与装置10は、遅延時間計測メッセージの送信後、当該遅延時間計測メッセージに対する応答メッセージを時刻付与装置10が受信するまでに要した時間(以降、「計測遅延時間」とも表す。)を計測する(ステップS23)。
そして、時刻付与装置10は、上記のステップS21~ステップS23を所定の回数繰り返した後、全ての計測遅延時間から遅延時間(以降、この遅延時間を「推定遅延時間」とも表す。)を算出する(ステップS24)。これにより、時刻付与装置10とデバイス30との間のデバイスデータの推定遅延時間が算出される。
時刻付与処理では、デバイス30は、データ利用装置40を宛先として、デバイスデータを送信する(ステップS31)。このデバイスデータは、通信ネットワーク50内の通信事業者のシステム環境に設置されている時刻付与装置10に受信される。
次に、時刻付与装置10は、デバイスデータを受信すると、推定遅延時間を用いて当該デバイスデータの生成時刻を算出した上で、この生成時刻を示す時刻情報を当該デバイスデータに付与する(ステップS32)。
そして、時刻付与装置10は、時刻情報が付与されたデバイスデータをデータ利用装置40に送信する(ステップS33)。これにより、時刻情報が付与されたデバイスデータがデータ利用装置40に送信される。
<機能構成>
次に、本発明の実施の形態における時刻付与装置10の機能構成について、図4を参照しながら説明する。図4は、本発明の実施の形態における時刻付与装置10の機能構成の一例を示す図である。
図4に示すように、本発明の実施の形態における時刻付与装置10は、通信処理部110と、時刻補正処理部120と、遅延時間推定処理部130と、時刻付与処理部140とを有する。これらの各処理部は、時刻付与装置10にインストールされた1以上のプログラムがCPU15に実行させる処理により実現される。
また、本発明の実施の形態における時刻付与装置10は、計測遅延時間記憶部150と、推定遅延時間記憶部160とを有する。これらの各記憶部は、例えば補助記憶装置18を用いて実現可能である。なお、これらの各記憶部のうちの少なくとも1つの記憶部が、例えば、時刻付与装置10とネットワークを介して接続される記憶装置等を用いて実現されていても良い。
通信処理部110は、他の装置との間でデータ通信のための通信処理を実行する。ここで、通信処理部110には、デバイスデータ通信部111と、時刻補正メッセージ通信部112と、計測メッセージ通信部113とが含まれる。
デバイスデータ通信部111は、デバイス30からのデバイスデータを受信すると共に、時刻情報が付与されたデバイスデータをデータ利用装置40に送信する。
時刻補正メッセージ通信部112は、時刻補正メッセージをNTPサーバ20に送信すると共に、NTPサーバ20からの応答メッセージを受信する。
計測メッセージ通信部113は、遅延時間計測メッセージをデバイス30に送信すると共に、デバイス30からの応答メッセージを受信する。
時刻補正処理部120は、時刻補正処理を実行する。ここで、時刻補正処理部120には、時刻情報補正部121が含まれる。時刻情報補正部121は、NTPサーバ20からの応答メッセージに含まれる時刻情報で、時刻付与装置10が保持する時刻情報(すなわち、システムクロックの時刻情報)を補正する。
遅延時間推定処理部130は、遅延時間推定処理を実行する。ここで、遅延時間推定処理部130には、対象設定部131と、送信回数設定部132と、遅延時間計測部133と、遅延時間算出部134とが含まれる。
対象設定部131は、推定遅延時間の算出する対象(算出対象)として、デバイス30又はデバイス30の集合を設定する。
送信回数設定部132は、遅延時間計測メッセージをデバイス30に送信する回数(送信回数)Nを設定する。
遅延時間計測部133は、遅延時間計測メッセージと、当該遅延時間計測メッセージに対する応答メッセージとを用いて、計測遅延時間を計測する。そして、遅延時間計測部133は、計測遅延時間を計測遅延時間記憶部150に格納する。
遅延時間算出部134は、計測遅延時間記憶部150に記憶されているN個の計測遅延時間を用いて、推定遅延時間を算出する。そして、遅延時間算出部134は、推定遅延時間を推定遅延時間記憶部160に格納する。
時刻付与処理部140は、時刻付与処理を実行する。ここで、時刻付与処理部140には、受信時刻取得部141と、推定遅延時間取得部142と、生成時刻推定部143と、時刻付与部144とが含まれる。
受信時刻取得部141は、デバイス30からのデバイスメッセージを受信した時刻を示す時刻情報を取得する。なお、デバイスメッセージを受信した時刻を示す時刻情報は、時刻付与装置10のシステムクロックから取得される。
推定遅延時間取得部142は、推定遅延時間記憶部160から推定遅延時間を取得する。生成時刻推定部143は、受信時刻と推定遅延時間とを用いて、デバイスメッセージの生成時刻を算出する。時刻付与部144は、生成時刻を示す時刻情報をデバイスメッセージに付与する。
なお、図3に示す時刻付与装置10の機能構成は一例であって、他の構成であっても良い。例えば、時刻付与装置10が複数の装置(コンピュータ)で構成されている場合、遅延時間推定処理部130と時刻付与処理部140とをそれぞれ異なる装置が有していても良い。
<時刻補正処理>
以降では、本発明の実施の形態における時刻補正処理について、図5を参照しながら説明する。図5は、本発明の実施の形態における時刻補正処理の一例を示すフローチャートである。以降で説明する時刻補正処理は、例えば、予め設定された所定の時間毎に繰り返し実行される。
ステップS101:通信処理部110の時刻補正メッセージ通信部112は、時刻補正メッセージをNTPサーバ20に送信する。これにより、時刻補正メッセージを受信したNTPサーバ20から、当該時刻補正メッセージに対する応答メッセージが送信される。
ステップS102:通信処理部110の時刻補正メッセージ通信部112は、上記の時刻補正メッセージに対する応答メッセージを受信する。なお、応答メッセージには、NTPサーバ20が保持する時刻情報が含まれる。
ステップS103:時刻補正処理部120の時刻情報補正部121は、応答メッセージに含まれる時刻情報で、時刻付与装置10が保持する時刻情報を補正する。これにより、時刻付与装置10が保持する時刻情報が、NTPサーバ20が管理する時刻情報(すなわち、正確な時刻を示す時刻情報)に同期される。なお、時刻情報補正部121は、例えば、時刻付与装置10とNTPサーバ20との間のデータ送受信に要する時間(すなわち、往復遅延時間)を考慮して、応答メッセージに含まれる時刻情報で、時刻付与装置10が保持する時刻情報を補正する。
以上のように、本発明の実施の形態における時刻付与装置10は、所定の時間毎に、NTPサーバ20との間で時刻情報を同期する。これにより、本発明の実施の形態における時刻付与装置10は、正確な時刻情報を保持しておくことができる。
<遅延時間推定処理>
次に、本発明の実施の形態における遅延時間推定処理について、図6を参照しながら説明する。図6は、本発明の実施の形態における遅延時間推定処理の一例を示すフローチャートである。以降で説明する遅延時間推定処理は、ネットワーク環境の変化等に伴う遅延時間の変動を考慮して、例えば、予め設定された所定の時間毎に繰り返し実行される。
ステップS201:遅延時間推定処理部130の対象設定部131は、推定遅延時間の算出対象のデバイス30又はデバイス30の集合を設定する。ここで、デバイス30の数が少ない場合は、各デバイス30を算出対象としても良いが、デバイス30の数が膨大である場合、例えば、デバイス30の種別等の特性情報に基づいて、これらのデバイス30を複数の集合に分類した上で、この集合(以降、「デバイス集合V」とも表す。)を算出対象とすれば良い。
より具体的には、例えば、デバイス30の総数がMであり、各デバイス30を算出対象とする場合は、対象設定部131は、デバイス30,デバイス30,・・・,デバイス30のM台の各デバイス30をそれぞれ算出対象に設定すれば良い。一方で、例えば、デバイス30の種別等の特性情報に基づいて、M台のデバイス30がC(<M)個のデバイス集合Vに分類される場合、対象設定部131は、デバイス集合V,デバイス集合V,・・・,デバイス集合VのC個の各デバイス集合Vをそれぞれ算出対象に設定すれば良い。
ステップS202:遅延時間推定処理部130の送信回数設定部132は、遅延時間計測メッセージの送信回数Nを設定する。なお、送信回数Nは予め決められた値を用いても良いし、ユーザにより指定された値を用いても良い。
以降のステップS203~ステップS208は、算出対象(すなわち、デバイス30又はデバイス集合V)毎に繰り返し実行される。ただし、上記のステップS201で設定された算出対象のうち、いくつかの算出対象を選択した上で、選択された算出対象毎に以降のステップS203~ステップS208を繰り返し実行するようにしても良い。
ステップS203:通信処理部110の計測メッセージ通信部113は、遅延時間計測メッセージをデバイス30に送信する。これにより、遅延時間計測メッセージを受信したデバイス30から、当該遅延時間計測メッセージに対する応答メッセージが送信される。
ここで、デバイス集合Vが算出対象に設定されている場合、計測メッセージ通信部113は、当該デバイス集合Vに属するデバイス30のうちの1台のデバイス30に対して遅延時間計測メッセージを送信すれば良い。なお、このような1台のデバイス30は、デバイス集合Vからランダムに選択されても良いし、デバイス集合Vから何等かの基準により選択されても良い。
ステップS204:通信処理部110の計測メッセージ通信部113は、上記の遅延時間計測メッセージに対する応答メッセージを受信する。
ステップS205:遅延時間推定処理部130の遅延時間計測部133は、遅延時間計測メッセージと、当該遅延時間計測メッセージに対する応答メッセージとを用いて、計測遅延時間を計測する。そして、遅延時間計測部133は、計測遅延時間を計測遅延時間記憶部150に格納する。
ここで、遅延時間計測部133は、例えば、上記のステップS203で送信された遅延時間計測メッセージの送信時刻と、上記のステップS204で受信した応答メッセージの受信時刻とを用いて、受信時刻と送信時刻との差を計測遅延時間とすれば良い。これは、RTT(Round-Trip-Time)を計測する方法と同様の方法である。ただし、この方法に限られず、遅延時間計測部133は、遅延時間計測メッセージの送信後、当該遅延時間計測メッセージに対する応答メッセージを時刻付与装置10が受信するまでに要した時間を計測することができる方法であれば、任意の方法を用いて良い。
ステップS206:遅延時間推定処理部130の遅延時間計測部133は、上記のステップS203で当該デバイス30に対する遅延時間計測メッセージの送信回数がN以上となったか否かを判定する。
上記のステップS206において、当該デバイス30に対する遅延時間計測メッセージの送信回数がN未満であると判定された場合、遅延時間推定処理部130は、ステップS203に戻る。これにより、当該デバイス30に対して、遅延時間計測メッセージがN回送信される。
一方で、上記のステップS206において、当該デバイス30に対する遅延時間計測メッセージの送信回数がN以上であると判定された場合、遅延時間推定処理部130は、ステップS207に進む。これにより、計測遅延時間記憶部150には、算出対象毎に、N個の遅延計測時間が格納される。
ステップS207:遅延時間推定処理部130の遅延時間算出部134は、計測遅延時間記憶部150に記憶されているN個の計測遅延時間を用いて、推定遅延時間を算出する。これにより、時刻付与装置10と、デバイス30(算出対象のデバイス30又は算出対象のデバイス集合Vに属するデバイス30)との間の遅延時間が推定される。
ここで、遅延時間算出部134は、例えば、以下の(a)~(d)のいずれかの方法により推定遅延時間を算出すれば良い。以降では、N個の計測遅延時間をt,t,・・・,t,推定遅延時間をTで表す。
(a)計測遅延時間t,t,・・・,tの平均値を推定遅延時間Tとする。すなわち、遅延時間算出部134は、以下の式(1)により推定遅延時間Tを算出する。
Figure 0007073920000001
(b)計測遅延時間t,t,・・・,tの中央値を推定遅延時間Tとする。すなわち、計測遅延時間t,t,・・・,tを昇順に並び替えた上で、この並び替え後の計測遅延時間を改めてt,t,・・・,tと表した場合、遅延時間算出部134は、以下の式(2)により推定遅延時間Tを算出する。
Figure 0007073920000002
(c)遅延時間算出部134は、計測遅延時間t,t,・・・,tの経験分布関数に基づいて、推定遅延時間Tを数値計算により算出する、又は、当該経験分布関数に対する近似関数を求めた上で、この近似関数から推定遅延時間Tを解析的に算出する。ここで、推定遅延時間がTとなる確率F(T)は以下の式(3)で表される。なお、遅延時間算出部134により算出される推定遅延時間Tに対応する確率F(T)は、例えば、ユーザ等によって指定される。言い換えれば、遅延時間算出部134は、例えば、ユーザ等により指定された確率F(T)に対応する推定遅延時間Tを、上記の数値解析又は近似関数の解析により算出する。
Figure 0007073920000003
(d)遅延時間が或る確率分布に従うものと仮定した上で、遅延時間算出部134は、累積分布関数に基づいて、推定遅延時間Tを数値計算により算出する。例えば、遅延時間が正規分布に従うと仮定した場合、確率密度関数F(T)は以下の式(4)で表される。なお、遅延時間算出部134により算出される推定遅延時間Tに対応する確率F(T)は、例えば、ユーザ等によって指定される。(c)と同様に、遅延時間算出部134は、例えば、ユーザ等により指定された確率F(T)に対応する推定遅延時間Tを、上記の数値解析により算出する。
Figure 0007073920000004
ここで、μは計測遅延時間t(i=1,2,・・・,N)の平均値、σは計測遅延時間t(i=1,2,・・・,N)の標準偏差、erfは誤差関数である。
ステップS208:遅延時間推定処理部130の遅延時間算出部134は、上記のステップS207で算出した推定遅延時間Tを推定遅延時間記憶部160に格納する。
なお、推定遅延時間Tは、算出対象毎に算出され、推定遅延時間記憶部160に記憶される。例えば、算出対象がデバイス30であり、デバイス30の総数がMである場合、デバイス30毎に、推定遅延時間T,T,・・・,Tが算出され、推定遅延時間記憶部160に記憶される。また、例えば、算出対象がデバイス集合Vであり、デバイス集合Vの数がCである場合、デバイス集合V毎に、推定遅延時間T,T,・・・,Tが算出され、推定遅延時間記憶部160に記憶される。
以上のように、本発明の実施の形態における時刻付与装置10は、デバイス30との間の遅延時間が推定される。また、このとき、本発明の実施の形態における時刻付与装置10は、デバイス30の総数Mが膨大である場合、これらのデバイス30が分類されたデバイス集合毎に遅延時間を推定する。これにより、デバイス30の総数が膨大である場合であっても、遅延時間の推定精度を維持したまま、当該推定に伴う計算時間を削減することができる。
<時刻付与処理>
次に、本発明の実施の形態における時刻付与処理について、図7を参照しながら説明する。図7は、本発明の実施の形態における時刻付与処理の一例を示すフローチャートである。以降では、デバイス30から、データ利用装置40宛のデバイスデータが送信されたものとする。
ステップS301:通信処理部110のデバイスデータ通信部111は、デバイス30からのデバイスデータを受信する。
ステップS302:時刻付与処理部140の受信時刻取得部141は、当該デバイスメッセージを受信した時刻を示す時刻情報を取得する。なお、デバイスメッセージを受信した時刻を示す時刻情報は、時刻付与装置10のシステムクロックから取得される。
ステップS303:時刻付与処理部140の推定遅延時間取得部142は、推定遅延時間記憶部160に記憶されている推定遅延時間Tのうち、該当の推定遅延時間Tを取得する。すなわち、推定遅延時間取得部142は、当該デバイスデータの送信元のデバイス30に対応する推定遅延時間T又は当該デバイスデータの送信元のデバイス30が属するデバイス集合Vに対応する推定遅延時間Tを推定遅延時間記憶部160から取得する。
ステップS304:時刻付与処理部140の生成時刻推定部143は、上記のステップS302で取得した時刻情報が示す時刻(デバイスメッセージの受信時刻)と、推定遅延時間Tとを用いて、当該デバイスメッセージの生成時刻を算出する。すなわち、生成時刻推定部143は、推定遅延時間Tに対して1/2を乗じた時間を、当該デバイスメッセージの受信時刻から減ずることで、生成時刻を算出する。これにより、デバイスメッセージの生成時刻が推定される。
ステップS305:時刻付与処理部140の時刻付与部144は、生成時刻を示す時刻情報を当該デバイスメッセージに付与する。ここで、時刻付与部144は、当該デバイスメッセージのデータ構造における所定の位置に時刻情報を付与することができる。例えば、時刻付与部144は、OSI参照モデルのアプリケーション層に該当するアプリケーションデータの内部構造に対して時刻情報を付与しても良いし、ネットワーク層に該当するIPヘッダに付与しても良い。IPヘッダに時刻情報を付与する場合には、例えば、IPヘッダの拡張情報のオプション領域にインターネットタイムスタンプとして書き込むことが考えられる。
なお、例えば、アプリケーションデータの内部構造に対して時刻情報が付与される場合、データ利用装置40は、当該アプリケーションデータのどの位置に時刻情報が付与されているのかを特定するための情報を保持しておく必要がある。
ステップS306:通信処理部110のデバイスデータ通信部111は、上記のステップS305で時刻情報(生成時刻を示す時刻情報)が付与されたデバイスデータをデータ利用装置40に送信(転送)する。
以上のように、本発明の実施の形態における時刻付与装置10は、デバイスデータの受信時刻と、推定遅延時間とを用いて、当該デバイスデータの生成時刻を推定した上で、この推定した生成時刻を示す時刻情報を当該デバイスデータに付与する。そして、本発明の実施の形態における時刻付与装置10は、時刻情報が付与されたデバイスデータを、データ利用装置40に送信(転送)する。これにより、データ利用装置40は、複数のデバイス30から取得したデバイスデータを時刻で同期させることができるようになる。
しかも、本発明の実施の形態における時刻付与システム1では、様々なデバイス30が共通的に利用する通信ネットワーク50内のシステム環境(例えば、通信事業者のシステム環境)に設置された時刻付与装置10がデバイスデータに対して時刻情報を付与する。また、このとき、本発明の実施の形態における時刻付与装置10は、所定の時間毎に自身の時刻情報をNTPサーバ20と同期すると共に、デバイスの種別等によって異なる遅延時間を考慮した生成時刻を推定し、この推定した生成時刻を示す時刻情報をデバイスデータに対して付与する。
これにより、本発明の実施の形態における時刻付与システム1では、データ利用装置40において、デバイスデータ同士を高い精度で時刻同期させることができるようになる。このため、例えば、データストリーミング等のリアルタイム性が要求される場合であっても、データ利用装置40は、高い精度でデバイスデータを時刻同期させて活用することができるようになる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
1 時刻付与システム
10 時刻付与装置
20 NTPサーバ
30 デバイス
40 データ利用装置
50 通信ネットワーク
110 通信処理部
111 デバイスデータ通信部
112 時刻補正メッセージ通信部
113 計測メッセージ通信部
120 時刻補正処理部
121 時刻情報補正部
130 遅延時間推定処理部
131 対象設定部
132 送信回数設定部
133 遅延時間計測部
134 遅延時間算出部
140 時刻付与処理部
141 受信時刻取得部
142 推定遅延時間取得部
143 生成時刻推定部
144 時刻付与部
150 計測遅延時間記憶部
160 推定遅延時間記憶部

Claims (8)

  1. デバイスの種別によって複数のデバイスが分類されたデバイス集合毎に、前記デバイス集合に含まれる一のデバイスに対して遅延時間を計測するためのメッセージを送信し、前記メッセージの送信時刻と、前記メッセージに対する応答の受信時刻とに基づいて、前記デバイス集合に対応する第1の遅延時間を推定する遅延時間推定手順と、
    デバイスからのデータを受信すると、前記データの受信時刻と、前記データを送信したデータが属するデバイス集合に対応する第1の遅延時間とを用いて、前記データの生成時刻を推定する生成時刻推定手順と、
    前記生成時刻を示す情報を前記データに付与する付与手順と、
    前記生成時刻を示す情報が付与されたデータを、前記データの宛先に送信する送信手順と、
    をコンピュータが実行することを特徴とする時刻付与方法。
  2. 前記遅延時間推定手順は、
    前記デバイス集合毎に、前記デバイス集合の中からランダム又は所定の基準で選択された一のデバイスに対して前記メッセージを送信し、前記メッセージの送信時刻と、前記メッセージに対する応答の受信時刻とに基づいて、前記デバイス集合に対応する第1の遅延時間を推定する、ことを特徴とする請求項1に記載の時刻付与方法。
  3. 前記生成時刻推定手順は、
    前記データの受信時刻から、前記第1の遅延時間に対して1/2を乗じた時間を減算した時刻を前記生成時刻として推定する、ことを特徴とする請求項1又は2に記載の時刻付与方法。
  4. 前記遅延時間推定手順は、
    前記メッセージの送信時刻と前記応答の受信時刻とから前記一のデバイスの第2の遅延時間を計測し、前記第2の遅延時間から前記第1の遅延時間を推定する、ことを特徴とする請求項1乃至3の何れか一項に記載の時刻付与方法。
  5. 前記遅延時間推定手順は、
    予め設定されたN個の前記メッセージを前記一のデバイスに送信し、N個の前記メッセージの送信時刻と前記応答の受信時刻とからN個の前記第2の遅延時間をそれぞれ計測し、N個の前記第2の遅延時間の平均と、N個の前記第2の遅延時間の中央値と、N個の前記第2の遅延時間の経験分布関数に基づく数値計算値若しくは近似値と、N個の前記第2の遅延時間の累積分布関数に基づく数値計算値とのうちのいずかを前記第1の遅延時間として推定する、ことを特徴とする請求項4に記載の時刻付与方法。
  6. 所定の時間毎に、NTPサーバとの間で、データ又はメッセージの送受信時刻を得るための時刻情報を同期させる同期手順を前記コンピュータが実行する、ことを特徴とする請求項1乃至5の何れか一項に記載の時刻付与方法。
  7. デバイスの種別によって複数のデバイスが分類されたデバイス集合毎に、前記デバイス集合に含まれる一のデバイスに対して遅延時間を計測するためのメッセージを送信し、前記メッセージの送信時刻と、前記メッセージに対する応答の受信時刻とに基づいて、前記デバイス集合に対応する第1の遅延時間を推定する遅延時間推定手段と、
    デバイスからのデータを受信すると、前記データの受信時刻と、前記データを送信したデータが属するデバイス集合に対応する第1の遅延時間とを用いて、前記データの生成時刻を推定する生成時刻推定手段と、
    前記生成時刻を示す情報を前記データに付与する付与手段と、
    前記生成時刻を示す情報が付与されたデータを、前記データの宛先に送信する送信手段と、
    を有することを特徴とする時刻付与装置。
  8. コンピュータに、請求項1乃至6の何れか一項に記載の時刻付与方法における各手順を実行させるためのプログラム。
JP2018107151A 2018-06-04 2018-06-04 時刻付与方法、時刻付与装置及びプログラム Active JP7073920B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018107151A JP7073920B2 (ja) 2018-06-04 2018-06-04 時刻付与方法、時刻付与装置及びプログラム
PCT/JP2019/017784 WO2019235101A1 (ja) 2018-06-04 2019-04-25 時刻付与方法、時刻付与装置及びプログラム
US15/734,917 US11349586B2 (en) 2018-06-04 2019-04-25 Time stamping method, time stamping apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018107151A JP7073920B2 (ja) 2018-06-04 2018-06-04 時刻付与方法、時刻付与装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2019213033A JP2019213033A (ja) 2019-12-12
JP7073920B2 true JP7073920B2 (ja) 2022-05-24

Family

ID=68769513

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018107151A Active JP7073920B2 (ja) 2018-06-04 2018-06-04 時刻付与方法、時刻付与装置及びプログラム

Country Status (3)

Country Link
US (1) US11349586B2 (ja)
JP (1) JP7073920B2 (ja)
WO (1) WO2019235101A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3794880A1 (en) * 2018-06-20 2021-03-24 Sony Corporation Infrastructure equipment, communications device and methods
WO2022038788A1 (ja) * 2020-08-21 2022-02-24 日本電信電話株式会社 推定装置、推定方法及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013115824A (ja) 2011-11-28 2013-06-10 Nhn Corp ユーザ端末の接続ネットワーク識別装置、方法及びコンピュータ読み取り可能な記録媒体
JP2016201690A (ja) 2015-04-10 2016-12-01 日本電気株式会社 情報処理装置、プログラム、及び制御方法
JP2017126864A (ja) 2016-01-13 2017-07-20 エヌ・ティ・ティ・コミュニケーションズ株式会社 通信システム、通信装置、第二装置、通信方法及びコンピュータプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100457508B1 (ko) * 1999-10-29 2004-11-17 삼성전자주식회사 타임 스탬프 옵셋 설정 장치 및 그 방법
JP5754206B2 (ja) * 2011-03-29 2015-07-29 富士通株式会社 アドホックネットワークにおける時刻同期方法および装置
JP5804086B2 (ja) * 2011-12-28 2015-11-04 富士通株式会社 ノード装置および時刻同期方法
KR101987756B1 (ko) * 2012-07-24 2019-06-11 삼성전자주식회사 미디어 재생 방법 및 미디어 장치
KR101466501B1 (ko) * 2013-08-29 2014-11-28 엘에스산전 주식회사 네트워크 트래픽 제어 장치
GB2518921B (en) * 2014-03-24 2016-02-17 Imagination Tech Ltd High definition timing synchronisation function
CN107431845B (zh) * 2015-03-31 2021-03-26 松下电器(美国)知识产权公司 发送方法、接收方法、发送装置以及接收装置
US10772055B2 (en) * 2015-04-08 2020-09-08 Alcatel Lucent Base station synchronization
EP3361741A4 (en) * 2015-10-07 2019-01-23 Panasonic Intellectual Property Management Co., Ltd. RECEIVING DEVICE AND RECEIVING METHOD
JP6490298B2 (ja) * 2016-03-10 2019-03-27 三菱電機株式会社 受信装置及び事象検知時刻の推定方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013115824A (ja) 2011-11-28 2013-06-10 Nhn Corp ユーザ端末の接続ネットワーク識別装置、方法及びコンピュータ読み取り可能な記録媒体
JP2016201690A (ja) 2015-04-10 2016-12-01 日本電気株式会社 情報処理装置、プログラム、及び制御方法
JP2017126864A (ja) 2016-01-13 2017-07-20 エヌ・ティ・ティ・コミュニケーションズ株式会社 通信システム、通信装置、第二装置、通信方法及びコンピュータプログラム

Also Published As

Publication number Publication date
JP2019213033A (ja) 2019-12-12
US20210234626A1 (en) 2021-07-29
US11349586B2 (en) 2022-05-31
WO2019235101A1 (ja) 2019-12-12

Similar Documents

Publication Publication Date Title
US11387925B2 (en) System for establishing and maintaining a clock reference indicating one-way latency in a data network
US11038609B2 (en) Sensing system and time synchronization method
JP6079879B2 (ja) 配信装置、配信システム及び配信方法
US9256658B2 (en) Ranging scalable time stamp data synchronization
JP2011529208A (ja) 非同期分散システムにおけるクロックの同期
JP7073920B2 (ja) 時刻付与方法、時刻付与装置及びプログラム
CN108075851B (zh) 用于同步时钟的设备和方法
US10075520B2 (en) Distributed aggregation of real-time metrics for large scale distributed systems
Jabbarifar et al. Online incremental clock synchronization
JP2016006604A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Liu Parallel simulation of hybrid network traffic models
US20140237136A1 (en) Communication system, communication controller, communication control method, and medium
Hielscher et al. A low-cost infrastructure for high precision high volume performance measurements of web clusters
JP6572136B2 (ja) 通信システム、通信装置、第二装置、通信方法及びコンピュータプログラム
JP2020150359A (ja) 解析プログラム、解析装置、及び解析方法
CN112671493B (zh) 一种复杂网络环境下时间传递质量评价方法
US11627063B1 (en) Systems and methods for measuring unidirectional latency of applications over asymmetric links
KR102037002B1 (ko) 분산 데이터 처리 시스템의 성능 측정 방법 및 이를 위한 분산 데이터처리 시스템의 노드 장치
Liu et al. Parallel hybrid network traffic models
Dietrich et al. A measurement-based simulation model of a web cluster representing system and application level dynamics
Vinogradov et al. Measurement of one-way delays in IP networks
Shannon et al. Synchronisation Challenges for Wireless Networks
Dittrich et al. Responsiveness of service discovery in wireless mesh networks
JP2018142807A (ja) 分散dbシステムおよびタイマ設定方法
JPWO2013145222A1 (ja) 情報処理装置およびデータ保存処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220425

R150 Certificate of patent or registration of utility model

Ref document number: 7073920

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150