(57)【特許請求の範囲】
【請求項１】
一定間隔で送出される情報を受信する受信部と、
前記一定間隔の推定値を、受信された複数の情報のそれぞれに付された情報に基づいて算出する第１の推定部と、
新たに受信された第１の情報の受信時刻と、前記第１の情報の一つ前に受信された第２の情報の受信時刻から前記一定間隔の推定値の経過後の時点とを比較して、前記第１の情報についての前記一定間隔に対する遅延時間の推定値を算出する第２の推定部と、
を有し、
前記第２の推定部は、
前記第１の情報の受信時刻が前記時点以前である場合には、前記第１の情報の遅延時間を０として推定し、前記第１の情報の受信時刻から前記一定間隔の推定値の経過後の時点を、前記第１の情報の次に受信される第３の情報の受信時刻との比較対象とする、
ことを特徴とする遅延推定装置。
【請求項２】
前記第１の推定部は、受信された複数の情報のそれぞれに付されたシーケンス番号に基づいて、前記一定間隔の推定値を推定する、
ことを特徴とする請求項１記載の遅延推定装置。
【請求項３】
前記第１の推定部は、受信された複数の情報のそれぞれに付されたタイムスタンプに基づいて、前記一定間隔の推定値を推定する、
ことを特徴とする請求項１記載の遅延推定装置。
【請求項４】
一定間隔で送出される情報を受信する受信手順と、
前記一定間隔の推定値を、受信された複数の情報のそれぞれに付された情報に基づいて算出する第１の推定手順と、
新たに受信された第１の情報の受信時刻と、前記第１の情報の一つ前に受信された第２の情報の受信時刻から前記一定間隔の推定値の経過後の時点とを比較して、前記第１の情報についての前記一定間隔に対する遅延時間の推定値を算出する第２の推定手順と、
をコンピュータが実行し、
前記第２の推定手順は、
前記第１の情報の受信時刻が前記時点以前である場合には、前記第１の情報の遅延時間を０として推定し、前記第１の情報の受信時刻から前記一定間隔の推定値の経過後の時点を、前記第１の情報の次に受信される第３の情報の受信時刻との比較対象とする、
ことを特徴とする遅延推定方法。
【請求項５】
前記第１の推定手順は、受信された複数の情報のそれぞれに付されたシーケンス番号に基づいて、前記一定間隔の推定値を推定する、
ことを特徴とする請求項４記載の遅延推定方法。
【請求項６】
前記第１の推定手順は、受信された複数の情報のそれぞれに付されたタイムスタンプに基づいて、前記一定間隔の推定値を推定する、
ことを特徴とする請求項４記載の遅延推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遅延推定装置及び遅延推定方法に関する。
【背景技術】
【０００２】
今後出現が期待される、リアルタイムに動作制御を行うようなＩｏＴ（Internet of Things）デバイスでは、伝達路の変動遅延を把握した上でシステムの設計、制御のパラメタ決定、情報の取捨選択、通信環境の推定が必要である。
【０００３】
従来、変動遅延を推定する技術として、往復遅延を計測する方法や、各ＩｏＴデバイスの時刻同期により変動遅延を計測する方法等が有る。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】太田等、「ＩＰネットワーク上の高精度な時刻同期のための適応最小値フィルタ」、電子情報通信学会技術研究報告  １０９巻、４３６号（ＣＳ２００９  ７３−１３６）、電子情報通信学会、２０１０年２月２２日、１０９号、ｐ９９−１０４
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、伝達路の上りと下りでは、無線区間が含まれる場合や、動画のダウンロードが有るために下りの方が広帯域を占有するなどの利用のされ方の違いにより、通信品質は異なってしまうため、往復遅延を計測しても、システムの設計および制御のパラメタ決定等に計測結果を利用するのは困難である。
【０００６】
また、ＩｏＴデバイスの通信には、無線区間が含まれることが多く、時刻同期の精度は低い。また、頻繁に時刻同期を行うことは、デバイス数が多いＩｏＴデバイスにおいてはＮＴＰ（Network Time Protocol）サーバの負荷の問題やセキュリティの観点から非現実的であると考えられる。
【０００７】
本発明は、上記の点に鑑みてなされたものであって、デバイスのリアルタイムな動作制御に利用可能な変動遅延の推定を可能とすることを目的とする。
【課題を解決するための手段】
【０００８】
そこで上記課題を解決するため、遅延推定装置は、一定間隔で送出される情報を受信する受信部と、前記一定間隔の推定値を、受信された複数の情報のそれぞれに付された情報に基づいて算出する第１の推定部と、新たに受信された第１の情報の受信時刻と、前記第１の情報の一つ前に受信された第２の情報の受信時刻から前記一定間隔の推定値の経過後の時点とを比較して、前記第１の情報についての前記一定間隔に対する遅延時間の推定値を算出する第２の推定部と、を有し、前記第２の推定部は、前記第１の情報の受信時刻が前記時点以前である場合には、前記第１の情報の遅延時間を０として推定し、前記第１の情報の受信時刻から前記一定間隔の推定値の経過後の時点を、前記第１の情報の次に受信される第３の情報の受信時刻との比較対象とする。
【発明の効果】
【０００９】
デバイスのリアルタイムな動作制御に利用可能な変動遅延の推定を可能とすることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態における変動遅延の推定方法を説明するための図である。
【図２】第１の実施の形態における送出間隔の推定方法を説明するための図である。
【図３】第１の実施の形態における遅延推定装置のハードウェア構成例を示す図である。
【図４】第１の実施の形態における遅延推定装置の機能構成例を示す図である。
【図５】第１の実施の形態における変動遅延の推定処理の処理手順の一例を説明するための図である。
【図６】第１の実施の形態における関数ｔ＾（ｉ）の処理手順の一例を説明するための図である。
【図７】第２の実施の形態における送出間隔の推定方法を説明するための図である。
【図８】第２の実施の形態における関数ｔ＾（ｉ）の処理手順の一例を説明するための図である。
【図９】遅延計算機能と収集機能との処理が並列に実行せる場合の処理手順の一例を説明するための図である。
【図１０】遅延推定装置の第１の実装例を示す図である。
【図１１】遅延推定装置の第２の実装例を示す図である。
【図１２】遅延推定装置の第３の実装例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて本発明の実施の形態を説明する。まず、本実施の形態の考え方について説明する。ＩｏＴ（Internet of Things）デバイスの通信に関して、どれくらいの変動遅延が生じて情報が到着したのかを計測するために、変動遅延が無い場合に情報が到着するはずの時刻ｔ＾の推定が必要である。本実施の形態では、図１に示されるように、情報の送出元（のＩｏＴデバイス）の、情報の送出間隔に基づいて、ｔ＾が推定される。なお、変動遅延とは、遅延時間が必ずしも一定でない遅延をいう。また、本文中におけるｔ＾の表記は、図面における、
【００１２】
【数１】
0006492019.tif 000002
に対応する。
【００１３】
図１は、本発明の実施の形態における変動遅延の推定方法を説明するための図である。図１には、変動遅延の推定手順が、（１）〜（４）の４つの手順によって示されている。
【００１４】
（１）は、情報の送出元から情報の受取先又は情報の通過点（以下、受取先又は通過点を「受取先等」という。）に、最初の情報が到着した時点を示す。ここで、送出元における送出間隔は、Ｉであることが示されている。
【００１５】
（２）では、２番目の情報について、受取先等において、変動遅延が推定されている。すなわち、受取先等では、最初の情報の到着時ｔ０とＩとに基づいて、２番目の情報について推定されるｔ＾＝ｔ０＋Ｉ×１に対する遅延時間が、２番目の情報の変動遅延であると推定される。すなわち、送出元の送出間隔Ｉが一定であることを利用して、ｔ＾が推定される。
【００１６】
（３）では、２番目の情報に対するｔ＾とＩとに基づいて、３番目の情報について推定されるｔ＾＝ｔ＾＋Ｉ×１よりも早い時期に、３番目の情報が到着した場合が示されている。この場合、ｔ＾は、３番目の情報の到着時に修正される。すなわち、３番目の情報については、変動遅延が０であると推定される。
【００１７】
（４）では、４番目の情報が受取先等に到着した場合を示す。この場合、３番目の情報に対するｔ＾（修正されたｔ＾）と、Ｉとに基づいて、４番目の情報について推定されるｔ＾＝ｔ＾＋Ｉ×１に対する遅延時間が、４番目の情報の変動遅延であると推定される。
【００１８】
ここで、受取先等が、送出間隔Ｉをどの様に知るのかが問題となる。
【００１９】
図２は、第１の実施の形態における送出間隔の推定方法を説明するための図である。第１の実施の形態では、情報に付帯されるシーケンス番号に基づいて、受取先等で送出間隔Ｉが推定される。
【００２０】
図２には、ｎ個の情報が受取先等に到着した例が示されている。受取先等は、ｎ個の情報のうちの最初の情報の到着時から、ｎ番目の情報の到着時まので経過時間を計測し、その計測時間をｎで除することで、Ｉを求める。
【００２１】
なお、実現するレイヤは所定のものに限定されない。例えば、ＲＴＰ（Real-time Transport Protocol）ヘッダが用いられてもよいし，ペイロード内のアプリケーション情報の中のシーケンス番号が用いられてもよい。
【００２２】
以下、上記の方法で変動遅延を推定する遅延推定装置１０について説明する。遅延推定装置１０は、例えば、受取先等の装置に該当する。
【００２３】
図３は、第１の実施の形態における遅延推定装置のハードウェア構成例を示す図である。図３の遅延推定装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００２４】
遅延推定装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２５】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従って遅延推定装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２６】
図４は、第１の実施の形態における遅延推定装置の機能構成例を示す図である。図４において、遅延推定装置１０は、情報受信部１１、送出間隔推定部１２、到着予定推定部１３、及び遅延推定部１４等を有する。これら各部は、遅延推定装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。
【００２７】
情報受信部１１は、送出元から一定間隔で送出される情報を受信する。送出間隔推定部１２は、受信された複数の情報のそれぞれに付されているシーケンス番号に基づいて、送出間隔の推定値を算出する。到着予定推定部１３は、送出間隔の推定値と、一つ前に受信された情報のｔ＾とに基づいて、新たに受信された情報のｔ＾を算出する。遅延推定部１４は、新たに受信された情報の受信時刻と、当該新たに受信された情報に関するｔ＾とを比較して、当該情報の変動遅延の推定値を算出する。
【００２８】
以下、第１の実施の形態の遅延推定装置１０が実行する処理手順について説明する。図５は、第１の実施の形態における変動遅延の推定処理の処理手順の一例を説明するための図である。
【００２９】
情報受信部１１は、シーケンス番号がｋである情報ｋが到着すると、現在のシステムの時刻をｔｋに代入する（Ｓ１０１）。
【００３０】
続いて、遅延推定部１４は、ｔｋ−ｔ＾（ｋ）の演算結果を、ｄに代入する（Ｓ１０２）。ここで、ｔ＾（ｉ）は、シーケンス番号ｉを持つ情報のｔ＾を返す関数である。当該関数の処理内容については後述される。すなわち、ｄには、情報ｋの実際の到着時刻と、情報ｋの到着予定時刻（変動遅延が無ければ到着すべき時刻）との差分が格納される。
【００３１】
ｄの値が０より大きい場合、遅延推定部１４は、ｔ〜に対して、ｔｋ−ｄを代入し、ｄｋに対して、ｄを代入する（Ｓ１０３）。ｔ〜は、最後に到着した情報（すなわち、この時点における情報ｋ）が、変動遅延が無く到着したと見なせる時刻を格納する変数であり、図中における、
【００３２】
【数２】
0006492019.tif 000003
に対応する。なお、ｔ〜は、次に到着する情報に関して、関数ｔ＾（ｋ）内において利用される。また、ｄｉは、シーケンス番号がｉである情報の変動遅延の推定値を格納する変数である。すなわち、ｄ＞０の場合、ｄの値が、変動遅延として推定される。
【００３３】
続いて、遅延推定部１４は、ｌにｋの値を代入し、集合Ｄとｄｋとの和集合を集合Ｄに代入する（Ｓ１０５）。ｌは、最後に到着した情報（すなわち、この時点における情報ｋ）のシーケンス番号を格納する変数であり、次に到着する情報に関して、関数ｔ＾（ｋ）内において利用される。また、集合Ｄは、変動遅延の集合である。
【００３４】
一方、ｄが０以下である場合、遅延推定部１４は、ｔ〜にｔｋを代入し、集合Ｄの各要素の値からｄを差し引いて、ｄｋに０を代入する（Ｓ１０４）。すなわち、図１の（３）に対応した処理が実行される。続いて、遅延推定部１４は、ステップＳ１０５を実行する。
【００３５】
ステップＳ１０５に続いて、情報受信部１１は、新しい情報の到着まで待機する（Ｓ１０６）。
【００３６】
続いて、関数ｔ＾（ｉ）の処理手順について説明する。図６は、第１の実施の形態における関数ｔ＾（ｉ）の処理手順の一例を説明するための図である。
【００３７】
ステップＳ２０１において、送出間隔推定部１２は、（ｔ〜−ｔｉｎｉｔ）／（ｌ−ｋｉｎｉｔ）の演算結果を、Ｉに代入する。ここで、ｔｉｎｉｔは、最初の情報の到着時刻である。また、ｋｉｎｉｔは、最初の情報のシーケンス番号である。すなわち、前回に到着した情報が変動遅延が無い場合に到着すべき時刻から最初の情報の到着時刻を差し引いた値を、前回に到着した情報のシーケンス番号から最初の情報のシーケンス番号を差し引いた値で除することで、送出間隔Ｉの推定値が算出される。
【００３８】
続いて、到着予定推定部１３は、ｔ〜＋（ｉ−ｌ）Ｉの演算結果を、ｔ＾（ｉ）の返却値とする（Ｓ２０２）。
【００３９】
上述したように、第１の実施の形態によれば、情報のシーケンス番号に基づいて、送出間隔Ｉが推定され、送出間隔Ｉが一定であることを利用して、各情報のｔ＾が推定される。したがって、ｔ＾に基づいて、各情報の変動遅延を推定することができる。また、ｔ＾より前に情報が到着した場合には、ｔ＾が修正される。したがって、その後の情報についての変動遅延についても適切に推定することができる。ここで、本実施の形態によれば、変動遅延の推定のための処理負荷を低く抑えることができるため、デバイスのリアルタイムな動作制御に利用可能な変動遅延の推定を可能とするこができる。
【００４０】
例えば、動作制御の対象となるＩｏＴデバイスが数十ｍｓｅｃ間隔で情報を伝達する場合には、その間隔と同等の変動遅延があるときには、情報の受け手側で情報が不要となる事象が発生するが、本実施の形態によれば、数ｍｓｅｃ〜数十ｍｓｅｃオーダーで、片道の変動遅延を推定することができる。したがって、数秒以内に遅延の分布の変化を見極めて通信環境を推定することができる。
【００４１】
また、動作制御を行う上では通信品質の変化等を即座に検出することが重要であり、エンド‐エンドだけでなくネットワーク側でも計測・監視することでより通信品質の変化の検出に貢献することができるが、本実施の形態によれば、情報の通過点においても、変動遅延を推定することができる。
【００４２】
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。第２の実施の形態において特に言及されない点については、第１の実施の形態と同様でもよい。
【００４３】
第２の実施の形態では、送出間隔Ｉの推定方法が、第１の実施の形態と異なる。図７は、第２の実施の形態における送出間隔の推定方法を説明するための図である。第２の実施の形態では、情報に付帯されるタイムスタンプに基づいて、受取先等で送出間隔Ｉが推定される。
【００４４】
図７には、タイムスタンプｔｋが付された情報と、タイムスタンプｔｋ＋１付された情報とが受取先等に到着した例が示されている。この場合、受取先等は、ｔｋ＋１−ｔｋの演算結果を、送出間隔Ｉとして推定する。
【００４５】
なお、実現するレイヤは所定のものに限定されない。例えば、ＲＴＰ（Real-time Transport Protocol）ヘッダが用いられてもよいし，ペイロード内のアプリケーション情報の中のタイムスタンプが用いられてもよい。
【００４６】
以下、第２の実施の形態の遅延推定装置１０が実行する処理手順について説明する。第２の実施の形態では、図６の処理手順が、図８に示される処理手順に置き換わる。
【００４７】
図８は、第２の実施の形態における関数ｔ＾（ｉ）の処理手順の一例を説明するための図である。
【００４８】
ステップＳ３０１において、送出間隔推定部１２は、ｔＳｋ−ｔＳｌの演算結果を、Ｉに代入する。ここで、ｔＳｋは、シーケンス番号がｋである情報に付されたタイムスタンプを示す。また、ｔＳｌは、シーケンス番号がｌである情報に付されたタイムスタンプを示す。
【００４９】
続いて、到着予定推定部１３は、ｔ〜＋Ｉの演算結果を、ｔ＾（ｉ）の返却値とする（Ｓ３０２）。
【００５０】
上述したように、第２の実施の形態によれば、第１の実施の形態と同様の効果を得ることができる。
【００５１】
なお、上記各実施の形態における図５の処理手順について、遅延推定部１４の機能を、遅延計算機能と収集機能とに分離し、それぞれの機能が並列的に実行されることで、リアルタイム性の向上が図られてもよい。
【００５２】
図９は、遅延計算機能と収集機能との処理が並列に実行せる場合の処理手順の一例を説明するための図である。図９中、図５に対応するステップには、共通のステップ番号を付している。図９において、左側が遅延計算機能の処理手順を示し、右側が収集機能の処理手順を示す。
【００５３】
遅延計算機能では、ステップＳ１０３ａ〜Ｓ１０５ａにおいて、ｄｋやＤへの値の代入は行われない。また、ステップＳ１０５ａにおいて、シーケンス番号ｋと、ｄとの組を含む変動遅延情報が、収集機能へ送出される。
【００５４】
収集機能では、当該変動遅延情報に含まれているｋ及びｄに基づいて、ステップＳ１０３ｂ〜Ｓ１０５ｂにおいて、ｄｋやＤへの値の代入が行われる。
【００５５】
また、上記各実施の形態における遅延推定装置１０は、例えば、図１０〜図１２に示されるような構成で実装されてもよい。
【００５６】
図１０は、遅延推定装置の第１の実装例を示す図である。図１０には、装置Ａから装置Ｂへ、一方向に情報が送出される例が示されている。この場合、遅延推定装置１０は、装置Ｂに実装されればよい。
【００５７】
図１１は、遅延推定装置の第２の実装例を示す図である。図１１では、装置Ａ及び装置Ｂの双方から、他方に対して一定間隔で情報が送出される例が示されている。この場合、装置Ａ及び装置Ｂの双方に、遅延推定装置１０が実装されればよい。また、一方又は双方の装置が、双方向の変動遅延を収集してもよい。例えば、装置Ｂは、装置Ｂから装置Ａへ送信する情報に、装置Ａから装置Ｂへの変動遅延を示す情報を付与してもよい。そうすることで、装置Ａにおいて、双方向の変動遅延を収集することができる。
【００５８】
図１２は、遅延推定装置の第３の実装例を示す図である。図１２では、装置Ａと装置Ｂとの双方向の通信に関する中継装置にも、遅延推定装置１０が実装される例が示されている。この場合、中継箇所における変動遅延を計測することができる。
【００５９】
なお、本実施の形態において、送出間隔推定部１２は、第１の推定部の一例である。遅延推定部１４は、第２の推定部の一例である。
【００６０】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００６１】
１０          遅延推定装置
１１          情報受信部
１２          送出間隔推定部
１３          到着予定推定部
１４          遅延推定部
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【図１】
0006492019.tif 000004
【図２】
0006492019.tif 000005
【図３】
0006492019.tif 000006
【図４】
0006492019.tif 000007
【図５】
0006492019.tif 000008
【図６】
0006492019.tif 000009
【図７】
0006492019.tif 000010
【図８】
0006492019.tif 000011
【図９】
0006492019.tif 000012
【図１０】
0006492019.tif 000013
【図１１】
0006492019.tif 000014
【図１２】
0006492019.tif 000015