(57)【特許請求の範囲】
【請求項１】
少なくとも第１中継装置及び第２中継装置を含む複数の中継装置、時刻提供装置、並びに時刻同期対象装置を有する情報通信システムであって、
前記時刻提供装置は、
第１データを前記複数の中継装置を介して前記時刻同期対象装置に送信する第１データ送信部と、
第２データを前記複数の中継装置を介して前記時刻同期対象装置から受信する第１データ受信部と、
前記第１データ送信部による前記第１データの第１送信時刻と前記第１データ受信部による前記第２データの第１受信時刻との時間差を求め、求めた時間差、前記第１送信時刻及び前記第１受信時刻を前記時刻同期対象装置に送信する時間差通知部とを備え、
前記第１中継装置は、
カプセル化又はカプセル化の解除をしてデータの転送を行い、かつ前記時刻提供装置とカプセル化されていないデータの送受信を行う第１転送部と、
前記第１転送部が前記時刻提供装置から前記第１データを受信した第１時刻、及び前記第１転送部が前記第２中継装置から送信された前記第２データを前記時刻提供装置に向けて送信した第２時刻を記憶する第１記憶部と、
前記第１時刻及び前記第２時刻を前記第２中継装置に送信する時刻通知部とを備え、
前記第２中継装置は、
カプセル化又はカプセル化の解除をしてデータの転送を行い、かつ前記時刻同期対象装置とカプセル化されていないデータの送受信を行う第２転送部と、
前記第２転送部が前記時刻同期対象装置に向けて前記第１データを送信した第３時刻、及び前記第２転送部が前記時刻同期対象装置から前記第２データを受信した第４時刻を記憶する第２記憶部と、
前記第１時刻と前記第３時刻との差である第１遅延時間及び前記第２時刻と前記第４時刻との差である第２遅延時間を算出し、前記時刻同期対象装置へ送信する遅延時間算出部とを備え、
前記時刻同期対象装置は、
前記第１データを前記複数の中継装置を介して前記時刻提供装置から受信する第２データ受信部と、
前記第２データを前記複数の中継装置を介して前記時刻提供装置に送信する第２データ送信部と、
前記時間差通知部から取得した前記時間差から、前記第２データ受信部が前記第１データを受信した時刻と前記第２データ送信部が前記第２データを送信した時刻との差、前記第１遅延時間、及び、前記第２遅延時間を減算して伝送遅延時間を求め、前記伝送遅延時間、前記第１送信時刻、及び、前記第２遅延時間の合計から、前記第１受信時刻を減算して補正値を算出し、自装置の現在時刻に前記補正値を加算して補正する補正部とを備える
ことを特徴とする情報通信システム。
【請求項２】
前記第１転送部は、
前記時刻提供装置から受信したデータをカプセル化し前記第２中継装置に向けて送信し、前記第２中継装置から送信されたデータのカプセル化を解除して前記時刻提供装置へ送信し、
前記第２転送部は、
前記時刻同期対象装置から受信したデータをカプセル化し前記第１中継装置に向けて送信し、前記第１中継装置から送信されたデータのカプセル化を解除して前記時刻同期対象装置へ送信する
ことを特徴とする請求項１に記載の情報通信システム。
【請求項３】
前記第１転送部は、
前記第１データ、前記第１データに続いて前記時刻提供装置から送信されるフォローアップデータ、及び前記第２データに対する応答データを前記時刻提供装置から受信し前記第２中継装置に向けて転送し、
前記第２中継装置から送信された前記第２データを受信して前記時刻提供装置に転送し、
前記時刻通知部は、
前記第１時刻を前記フォローアップデータに付加し、前記第２時刻を前記応答データに付加することで、前記第１時刻及び前記第２時刻を前記第２中継装置へ送信する
ことを特徴とする請求項１又は請求項２に記載の情報通信システム。
【請求項４】
前記第２中継装置は、
前記第１時刻、前記第２時刻、前記第３時刻及び前記第４時刻を用いて、前記第１中継装置との時刻のずれを補正する時刻補正部をさらに備えたことを特徴とする請求項１乃至請求項３のいずれか一つに記載の情報通信システム。
【請求項５】
少なくとも第１中継装置及び第２中継装置を含む複数の中継装置、時刻提供装置、並びに時刻同期対象装置を有する情報通信システムにおける時刻同期方法であって、
前記時刻提供装置に、第１データを前記複数の中継装置を介して前記時刻同期対象装置へ送信させ、
前記第１中継装置に、前記時刻提供装置から前記第１データを受信し、カプセル化して前記第２中継装置に送信させ、
前記第１中継装置に、前記第１データを受信した第１時刻を前記第２中継装置に送信させ、
前記第２中継装置に、前記第１データを受信させ、カプセル化を解除させて前記時刻同期対象装置に送信させ、
前記第２中継装置に、前記第１データを送信した第２時刻を記憶させ、
前記時刻同期対象装置に、前記第１データを受信させ、
前記時刻同期対象装置に、第２データを前記複数の中継装置を介して前記時刻提供装置へ送信させ、
前記第２中継装置に、前記時刻同期対象装置から前記第２データを受信させ、カプセル化して前記第１中継装置へ送信させ、
前記第２中継装置に、前記第２データを受信した第３時刻を記憶させ、
前記第１中継装置に、前記第２データを受信させ、カプセル化を解除して前記時刻提供装置へ送信させ、
前記第１中継装置に、前記第２データを送信した第４時刻を前記第２中継装置へ送信させ、
前記第２中継装置に、前記第１時刻と前記第２時刻との差である第１遅延時間及び前記第３時刻と前記第４時刻との差である第２遅延時間を算出させ、前記第１遅延時間及び前記第２遅延時間を前記時刻同期対象装置へ送信させ、
前記時刻提供装置に、前記第１データの第１送信時刻と前記第２データの第１受信時刻との時間差、前記第１送信時刻及び前記第１受信時刻を前記時刻同期対象装置へ送信させ、
前記時刻同期対象装置に、前記時刻同期対象装置が前記第１データを受信した時刻と前記時刻同期対象装置が前記第２データを送信した時刻との差、前記第１遅延時間、及び、前記第２遅延時間を、前記時間差から減算させて伝送遅延時間を求めさせ、前記伝送遅延時間、前記第１送信時刻、及び、前記第２遅延時間の合計から、前記第１受信時刻を減算させて補正値を算出させ、前記補正値を現在時刻に加算させることで補正させる
ことを特徴とする時刻同期方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報通信システム及び処理遅延時間算出方法に関する。
【背景技術】
【０００２】
パケット網の監視やパケット網を介したクロック周波数の同期などの用途のために、Ethernet（登録商標）網を介して時刻同期を行う技術が近年注目を集めている。ここで、パケット網とは、データ通信時にデータ列を小さな単位（パケット）に分割し、このパケットを送受信する方式を採るデータ通信網である。この時刻同期においては、IEEE(Institute of Electrical and Electronic Engineers)1588のような技術が標準化されている。IEEE1588では、Precision Time Protocolと呼ばれるプロトコル（以下、「PTPプロトコル」と言う。）が規定されている。このPTPプロトコルは、ネットワーク内の通信装置の間で精度良く時刻を同期させるプロトコルである。
【０００３】
ここで、図８を参照して、IEEE1588を用いた時刻のずれの検出及び時刻同期の一例について説明する。図８は、IEEE1588を用いた時刻同期の一例を説明するための図である。図８に示されたタイムサーバ９１０とは、同期の基準となる時刻を提供する装置である。そして、図８のクライアントコンピュータ９２０（以下では、単に「クライアント９２０」という。）は、タイムサーバ９１０が提供する時刻に自装置の時刻を同期させるコンピュータである。さらに、タイムサーバ９１０とクライアント９２０との間に図示された二つの装置は、タイムサーバ９１０とクライアント９２０との間の通信における通信の中継装置９３１、９３２である。この中継装置９３１、９３２は、例えばIEEE802.1Q Ethernet Bridge のような装置である。また、図８に記載された２本の縦軸は下に向かって時間の経過を表している。そして、各縦軸は、それぞれの上部に記載されたタイムサーバ９１０又はクライアント９２０の経時的な動作及びデータの送受信のタイミングを表している。また、縦軸の間の各装置間を結ぶ矢印はそれぞれの装置間のデータの送受信を表している。
【０００４】
まず、タイムサーバ９１０はクライアント９２０に向けてSyncメッセージを送信する（ステップＳ３０１）。Syncメッセージとは時刻同期用のデータ（時刻同期メッセージ）である。そして、タイムサーバ９１０は、Syncメッセージを送出した時刻ｔ１を記憶する。次に、タイムサーバ９１０は、時刻ｔ１の値を含むFollow_UPメッセージを作成する（ステップＳ３０２）。そして、タイムサーバ９１０は、Follow_UPメッセージをクライアント９２０に向けて送信する（ステップＳ３０３）。
【０００５】
クライアント９２０は、Syncメッセージを受信する（ステップＳ３０４）と、そのSyncメッセージを受信した時刻ｔ２を記憶する。次に、クライアント９２０は、Follow_UPメッセージを受信し（ステップＳ３０５）、Follow_UPメッセージの中から時刻ｔ１の値を取り出して記憶する。次に、クライアント９２０は、Delay_Reqメッセージをタイムサーバ９１０に向けて送信する（ステップＳ３０６）。そして、クライアント９２０は、Delay_Reqメッセージを送出した時刻ｔ３を記憶する。
【０００６】
タイムサーバ９１０は、Delay_Reqメッセージを受信する（ステップＳ３０７）と、そのDelay_Reqメッセージを受信した時刻ｔ４を記憶する。次に、タイムサーバ９１０は、時刻ｔ４の値を含むDelay_Respメッセージを作成する（ステップＳ３０８）。そして、タイムサーバ９１０は、作成したDelay_Respメッセージをクライアント９２０に向けて送信する（ステップＳ３０９）。
【０００７】
クライアント９２０は、Delay_Respメッセージを受信する（ステップＳ３１０）と、Delay_Respメッセージの中から時刻ｔ４の値を取り出して記憶する。
【０００８】
そして、クライアント９２０は、時刻ｔ１、ｔ２、ｔ３、及びｔ４の値を用いてタイムサーバ９１０からクライアント９２０までのSyncメッセージの伝送遅延を算出する。具体的には、クライアント９２０は、次の式１を用いて伝送遅延を算出する。ここで、伝送遅延とは、データをタイムサーバ９１０からクライアント９２０まで送信するときに発生する全体的な遅延を指す。また、処理遅延とは各中継装置においてデータを転送する際に発生する遅延を指す。
【０００９】
伝送遅延＝１／２｛（ｔ４−ｔ１）−（ｔ３−ｔ２）｝  （式１）
【００１０】
さらに、クライアント９２０は、式１で表される伝送遅延と時刻ｔ１及び時刻ｔ２の値とを用いて自己の時計の補正値を算出する。具体的には、クライアント９２０は、次の式２を用いて補正値を算出する。
【００１１】
補正値＝ｔ１＋伝送遅延−ｔ２  （式２）
【００１２】
クライアント９２０は、式２で求めた補正値を自己が有する時計に加算することにより、自己の時計の時刻をタイムサーバ９１０の時計の時刻に合わせることができる。
【００１３】
しかし、上述した方法ではタイムサーバ９１０とクライアント９２０との間に配置された各中継装置での処理遅延の影響により、タイムサーバ９１０からクライアント９２０までの伝送遅延時間を正しく計算することができない場合がある。例えば、図８に示すように、中継装置９３１、９３２において、Syncメッセージの処理遅延の時間よりもDelay_Reqメッセージの処理遅延の時間ほうが長かった場合を考える。このような状況は、ネットワーク内の負荷が刻一刻と変わっていることや、伝送方向毎に負荷が異なる可能性があることなどの理由により発生する。この場合、Syncメッセージに対する伝送遅延と、Delay_Reqに対する伝送遅延とは異なる値になるはずである。しかし、式１で算出される値は両者の平均値となる。このため、実際のメッセージの伝送遅延と式１で算出された値との差分が時刻を合わせる上で誤差となってしまう。
【００１４】
このような誤差を軽減する方法として、IEEE1588では中継装置での処理遅延時間を計測し、その計測した処理遅延時間を用いて時刻同期を行う手順も規定されている。そこで、図９を参照して、中継装置９３１、９３２での処理遅延時間を用いた時刻同期の手順を説明する。図９は、中継装置での処理遅延時間を用いた時刻同期の一例を説明するための図である。図９の各中継装置９３１、９３２はTransparent clockと呼ばれる機能を有するものとする。
【００１５】
タイムサーバ９１０は、クライアント９２０に向けてSyncメッセージを送信する（ステップＳ４０１）。そして、タイムサーバ９１０は、Syncメッセージを送出した時刻ｔ１を記憶する。さらに、タイムサーバ９１０は、時刻ｔ１の値を含むFollow_UPメッセージを作成する（ステップＳ４０２）。そして、タイムサーバ９１０は、作成したFollow_UPメッセージをクライアント９２０に向けて送信する（ステップＳ４０３）。
【００１６】
中継装置９３１は、ステップＳ４０１でタイムサーバ９１０から送信されたSyncメッセージを受信する。そして、中継装置９３１は、Syncメッセージを受信してから送出するまでの自己の処理による、Syncメッセージに対する処理遅延時間ｐｓ１を計測する（ステップＳ４０４）。中継装置９３１は，中継装置９３２にSyncメッセージを送信する（ステップＳ４０５）。次に、中継装置９３１は、ステップＳ４０３でタイムサーバ９１０から送信されたFollow_UPメッセージを受信する。そして、中継装置９３１は、受信したFollow_UPメッセージのcorrectionフィールドに計測した処理遅延時間ｐｓ１の値を加算する（ステップＳ４０６）。そして、中継装置９３１は、Follow_UPメッセージを中継装置９３２に送信する（ステップＳ４０７）。中継装置９３２は、中継装置９３１と同様の動作を行い、Syncメッセージをクライアント９２０へ送信し、さらに、自己の処理遅延時間ｐｓ２の値を追加したFollow_UPメッセージのcorrectionフィールドに加算し、クライアント９２０へ送信する。
【００１７】
クライアント９２０は、中継装置９３２からSyncメッセージを受信する（ステップＳ４０８）と、そのSyncメッセージを受信した時刻ｔ２を記憶する。次に、クライアント９２０は、Follow_UPメッセージを受信し（ステップＳ４０９）、Follow_UPメッセージの中から時刻ｔ１の値及び中継装置９３１、９３２において加算された時間ｐｓ１、ｐｓ２の和の値を取り出して記憶する。次に、クライアント９２０は、Delay_Reqメッセージをタイムサーバ９１０に向けて送信する（ステップＳ４１０）。そして、クライアント９２０は、Delay_Reqメッセージを送出した時刻ｔ３を記憶する。
【００１８】
中継装置９３２は、ステップＳ４１０でクライアント９２０から送信されたDelay_Reqメッセージを受信する。そして、中継装置９３２は、Delay_Reqメッセージを受信してから送出するまでの自己の処理による、Delay_Reqメッセージに対する処理遅延時間ｐｄ２を計測する（ステップＳ４１１）。そして、中継装置９３２は、Delay_Reqメッセージを中継装置９３１に送信する（ステップＳ４１２）。中継装置９３１は、中継装置９３２と同様の動作を行い、自己のDelay_Reqメッセージに対する処理遅延時間ｐｄ１を計測し、さらに、Delay_Reqメッセージをタイムサーバ９１０へ送信する。
【００１９】
タイムサーバ９１０は、Delay_Reqメッセージを受信する（ステップＳ４１３）と、そのDelay_Reqメッセージを受信した時刻ｔ４を記憶する。次に、タイムサーバ９１０は、時刻ｔ４の値を含むDelay_Respメッセージを作成する（ステップＳ４１４）。そして、タイムサーバ９１０は、Delay_Respメッセージをクライアント９２０に向けて送信する（ステップＳ４１５）。
【００２０】
中継装置９３１は、ステップＳ４１５でタイムサーバ９１０から送信されたDelay_Respメッセージを受信する。そして、中継装置９３１は、受信したDelay_Respメッセージに、Delay_Reqメッセージのcorrectionフィールドに対する処理遅延時間ｐｄ１の値を加算する（ステップＳ４１６）。そして、中継装置９３１は、Delay_Respメッセージを中継装置９３２に向けて送信する（ステップＳ４１７）。中継装置９３２は、中継装置９３１と同様の動作を行い、自己の処理遅延時間ｐｄ２の値を追加したDelay_Respメッセージのcorrectionフィールドに加算し、をクライアント９２０へ送信する。
【００２１】
クライアント９２０は、Delay_Respメッセージを受信する（ステップＳ４１８）と、Delay_Respメッセージの中から時刻ｔ４の値及び中継装置９３１、９３２において加算された時間ｐｄ１、ｐｄ２の和の値を取り出して記憶する。ここで、中継装置９３１における処理遅延時間ｐｓ１と中継装置９３２における処理遅延時間ｐｓ２とを加えた値をｐｓとする。すなわち、ｐｓ＝ｐｓ１＋ｐｓ２である。また、中継装置９３１における処理遅延時間ｐｄ１と中継装置９３２における処理遅延時間ｐｄ２とを加えた値をｐｄとする。すなわち、ｐｄ＝ｐｄ１＋ｐｄ２である。
【００２２】
そして、クライアント９２０は、時刻ｔ１、ｔ２、ｔ３、ｔ４、ｐｓ、及びｐｄの値を用いて、タイムサーバ９１０からクライアント９２０までのデータの伝送遅延を計算する。具体的には、クライアント９２０は、次の式３を用いて伝送遅延を計算する。
【００２３】
伝送遅延＝１／２｛（ｔ４−ｔ１）−（ｔ３−ｔ２）−ｐｓ−ｐｄ}    （式３）
【００２４】
さらに、クライアントは、式３で表される伝送遅延と時刻ｔ１及び時刻ｔ２の値とを用いて、自己の時計の補正値を計算する。具体的には、クライアント９２０は、次の式４を用いて補正値を計算する。
【００２５】
補正値＝ｔ１＋伝送遅延＋ｐｓ−ｔ２    （式４）
【００２６】
クライアント９２０は、式４で求めた補正値を自己が有する時計に加算することにより、自己の時計の時刻をタイムサーバの時計の時刻に合わせることができる。
【００２７】
このように、途中の各中継装置の処理遅延時間をクライアントに通知することにより、IEEE1588は時刻同期の精度を向上させることができる。
【００２８】
さらに、従来、時刻同期の技術として、時刻の設定を必要とするクライアントがタイムサーバとの時刻同期を自主的に行う技術が提案されている。また、各装置の時刻の同期に依存せずにネットワークにおけるデータの送受信の遅延時間を計算する技術が提案されている。さらに、各中継装置のクロックを同期化することで非同期ネットワークにおいてリアルタイム同期データの伝送を可能にする技術が提案されている。
【先行技術文献】
【特許文献】
【００２９】
【特許文献１】特開２００４−１９９３６６号公報
【特許文献２】特表２００６−５０３４８０号公報
【特許文献３】特開２００９−１５９４９９号公報
【発明の概要】
【発明が解決しようとする課題】
【００３０】
以上に説明したように、IEEE1588の時刻同期技術において、同期精度を向上させるためには途中の中継装置での処理遅延を計測し、これをクライアントに通知する機能が必要である。すなわち、IEEE1588の時刻同期技術を用いて時刻同期の精度を向上させるためには、タイムサーバからクライアントまでの伝送系路上のすべての中継装置がこの機能を有するなどの構成が必要となる。
【００３１】
図１０は、キャリア網におけるEthernetサービスフレームの伝送を説明するための図である。ここで、キャリア網とは通信事業者の独自のネットワークを指す。またEthernetサービスフレームとは、キャリア網を使用して通信を行う顧客が発信するデータを表す。以下では単に、「サービスフレーム」と言う。
【００３２】
図１０に示すように、一般にキャリア網においてサービスフレームを伝送する場合、PW：Pseudo Wire（RFC3985）やPBB：Provider Backbone Bridging(IEEE802.1ah)のような技術を用いて伝送が行われる。すなわち、キャリア網用ヘッダ９４０でサービスフレームのカプセル化を行い、そのキャリア網用ヘッダ９４０のみを用いてデータ転送を行う。このカプセル化は、データ転送におけるアプリケーション毎の差異を吸収し、効率的なデータ転送を実現させるための技術である。図１０では、キャリア網用ヘッダ９４０は、MPLS(Multi-Protocol Label Switching) labelやPW labelなどを用いている。そして、中継装置９３３では、キャリア網用ヘッダ９４０のみを参照してデータ転送を行う。そのため、中継装置９３３はサービスフレームが時刻同期メッセージか否かを把握することができない。したがって、中継装置９３３は処理遅延時間を測定することができない。これでは、クライアント９２０は、中継装置９３３での処理遅延時間を時刻同期に反映することができないため、精度良く時刻同期を行うことができない。
【００３３】
ここで、キャリア網の各中継装置において、キャリア網用ヘッダのみでなく、サービスフレームの中身まで解析して処理遅延時間の測定を行う方法が考えられる。しかし、この方法では、キャリア網内の多くの中継装置がこの機能を備える必要があり、非経済的である。
【００３４】
したがって、時刻同期の精度を効率よく高めるためには、キャリア網における処理遅延時間をいかに効率よく算出するかが課題である。この課題は、例として説明したキャリア網だけでなく、データをカプセル化して転送を行うネットワークにおいては同様に生じるものである。
【００３５】
開示の技術は、上記に鑑みてなされたものであって、キャリア網などでデータをカプセル化して転送を行う場合に、時刻同期の精度を効率よく向上させる情報通信システム及び処理遅延時間算出方法を提供することを目的とする。
【課題を解決するための手段】
【００３６】
本願の開示する情報通信システムは、一つの態様において、少なくとも第１中継装置及び第２中継装置を含む複数の中継装置、時刻提供装置、並びに時刻同期対象装置を有する情報通信システムである。前記時刻提供装置は、第１データを前記複数の中継装置を介して前記時刻同期対象装置に送信する第１データ送信部と、第２データを前記複数の中継装置を介して前記時刻同期対象装置から受信する第１データ受信部と、前記第１データ送信部による前記第１データの第１送信時刻と前記第１データ受信部による前記第２データの第１受信時刻との時間差を求め、求めた時間差、前記第１送信時刻及び前記第１受信時刻を前記時刻同期対象装置に送信する時間差通知部とを備える。前記第１中継装置は、カプセル化又はカプセル化の解除をしてデータの転送を行い、かつ前記時刻提供装置とカプセル化されていないデータの送受信を行う第１転送部と、前記第１転送部が前記時刻提供装置から前記第１データを受信した第１時刻、及び前記第１転送部が前記第２中継装置から送信された前記第２データを前記時刻提供装置に向けて送信した第２時刻を記憶する第１記憶部と、前記第１時刻及び前記第２時刻を前記第２中継装置に送信する時刻通知部とを備える。前記第２中継装置は、カプセル化又はカプセル化の解除をしてデータの転送を行い、かつ前記時刻同期対象装置とカプセル化されていないデータの送受信を行う第２転送部と、前記第２転送部が前記時刻同期対象装置に向けて前記第１データを送信した第３時刻、及び前記第２転送部が前記時刻同期対象装置から前記第２データを受信した第４時刻を記憶する第２記憶部と、前記第１時刻と前記第３時刻との差である第１遅延時間及び前記第２時刻と前記第４時刻との差である第２遅延時間を算出し、前記時刻同期対象装置へ送信する遅延時間算出部とを備える。前記時刻同期対象装置は、前記第１データを前記複数の中継装置を介して前記時刻提供装置から受信する第２データ受信部と、前記第２データを前記複数の中継装置を介して前記時刻提供装置に送信する第２データ送信部と、前記時間差通知部から取得した前記時間差から、前記第２データ受信部が前記第１データを受信した時刻と前記第２データ送信部が前記第２データを送信した時刻との差、前記第１遅延時間、及び、前記第２遅延時間を減算して伝送遅延時間を求め、前記伝送遅延時間、前記第１送信時刻、及び、前記第２遅延時間の合計から、前記第１受信時刻を減算して補正値を算出し、自装置の現在時刻に前記補正値を加算することで補正する補正部とを備える。
【発明の効果】
【００３７】
本願の開示する情報通信システム及び処理遅延時間算出方法の一つの態様によれば、データをカプセル化して転送を行う場合に、時刻同期の精度を効率よく向上させることができる。すなわち、キャリア網を解した時刻同期の精度を効率よく向上させることができるという効果を奏する。
【図面の簡単な説明】
【００３８】
【図１】図１は、実施例１に係る中継装置を用いた情報通信システムを示すブロック図である。
【図２】図２は、実施例２における情報通信システムの概略構成を示す図である。
【図３】図３は、実施例２に係る中継装置を用いた情報通信システムを示すブロック図である。
【図４】図４は、Follow_UPメッセージのカプセル化を説明するための図である。
【図５】図５は、Delay_Respメッセージのカプセル化を説明するための図である。
【図６】図６は、実施例２に係る情報通信システムにおける処理遅延時間の算出及び時刻同期の動作のシーケンス図である。
【図７】図７は、実施例３に係る中継装置を用いた情報通信システムを示すブロック図である。
【図８】図８は、IEEE1588を用いた時刻同期の一例を説明するための図である。
【図９】図９は、中継装置での処理遅延時間を用いた時刻同期の一例を説明するための図である。
【図１０】図１０は、キャリア網におけるEthernetサービスフレームの伝送を説明するための図である。
【発明を実施するための形態】
【００３９】
以下に、本願の開示する情報通信システム及び処理遅延時間算出方法の実施例を図面に基づいて詳細に説明する。なお、本願の情報通信システム及び処理遅延時間算出方法はこの実施例に限定されるものではない。
【実施例１】
【００４０】
図１は、実施例１に係る中継装置を用いた情報通信システムを示すブロック図である。図１に示すように、本実施例に係る情報通信システムは、少なくとも中継装置１及び中継装置２を有している。そして、中継装置１と中継装置２とはキャリア網を介して接続されており、データの送受信が可能である。ここで、キャリア網とはデータをカプセル化して転送するネットワーク網である。そして、中継装置１と中継装置２との間でデータの送受信が可能であれば、中継装置１と中継装置２との間には１つ又は複数の中継装置を介してデータの送受信を行うネットワークでも良い。本実施例では、中継装置１と中継装置２との間に複数の中継装置が配置されているものとする。この中継装置１が第１中継装置の一例であり、中継装置２が第２中継装置の一例である。
【００４１】
また、中継装置１及び中継装置２の外側はユーザ網である。ここで、ユーザ網とはデータをカプセル化せずに転送するネットワーク網である。このユーザ網の中に、所定の外部装置及び他の外部装置が配置されている。中継装置１は、ユーザ網を介して所定の外部装置とデータの送受信を行う。また、中継装置２は、ユーザ網を介して他の外部装置とデータの送受信を行う。
【００４２】
ここで、以下の説明では、処理遅延時間とは、各中継装置における処理遅延及び中継装置間でのデータの送受信にかかる時間を合わせた中継装置全体での処理遅延時間を指すものとする。
【００４３】
中継装置１は、第１転送部１１、第１記憶部１２及び時刻通知部１３を備えている。また、中継装置２は、第２転送部２１、第２記憶部２２及び遅延時間算出部２３を備えている。
【００４４】
第１転送部１１は、所定の外部装置からカプセル化されていない第１データを受信する。そして、第１転送部１１は、受信した第１データをカプセル化し、カプセル化した第１データを中継装置２に向けて送信する。ここで、「データを中継装置２に向けて送信」とは、最終的に中継装置２にたどり着くようにデータを送信することを指す。この場合、中継装置１は、直接には他の中継装置にデータを送信する。以下の説明における「データを中継装置１に向けて送信」も同様である。
【００４５】
そして、第１転送部１１は、所定の外部装置から第１データを受信した時刻である時刻ｔ１を第１記憶部１２に出力する。この時刻ｔ１が第１時刻の一例である。
【００４６】
また、第１転送部１１は、中継装置２から送信されたカプセル化された第２データを受信する。ここで、「中継装置２から送信されたデータ」とは、中継装置２から最終的に中継装置１にたどり着くように送信されたデータである。その場合、中継装置１は、直接には他の中継装置からデータを受信することになる。以下の説明における「中継装置１から送信されたデータ」も同様である。第１転送部１１は、受信した第２データのカプセル化を解除し、所定の外部装置へ送信する。
【００４７】
そして、第１転送部１１は、中継装置２から送信された第２データを受信した時刻である時刻ｔ４を第１記憶部１２に出力する。この時刻ｔ４が第２時刻の一例である。
【００４８】
第１記憶部１２は、メモリやハードディスクなどの記憶媒体である。そして、第１記憶部１２は、時刻ｔ１及び時刻ｔ４の入力を第１転送部１１から受ける。そして、第１記憶部１２は、受信した時刻ｔ１及び時刻ｔ４を記憶する。
【００４９】
時刻通知部１３は、第１記憶部１２が記憶している時刻ｔ１及び時刻ｔ４を取得し、中継装置２に向けて送信する。
【００５０】
第２転送部２１は、中継装置１から送信されたカプセル化された第１データを受信する。そして、第２転送部２１は、受信した第１データのカプセル化を解除し、他の外部装置へ送信する。
【００５１】
そして、第２転送部２１は、中継装置１から送信された第１データを他の外部装置へ送信した時刻である時刻ｔ２を第２記憶部２２に出力する。この時刻ｔ２が第３時刻の一例である。
【００５２】
第２転送部２１は、他の外部装置からカプセル化されていない第２データを受信する。そして、第２転送部２１は、受信した第２データをカプセル化し、カプセル化した第２データを中継装置１に向けて送信する。
【００５３】
そして、第２転送部２１は、他の外部装置から第２データを受信した時刻である時刻ｔ３を第２記憶部２２に出力する。この時刻ｔ３が第４時刻の一例である。
【００５４】
第２記憶部２２は、メモリやハードディスクなどの記憶媒体である。そして、第２記憶部２２は、時刻ｔ２及び時刻ｔ３の入力を第２転送部２１から受ける。そして、第２記憶部２２は、受信した時刻ｔ２及び時刻ｔ３を記憶する。
【００５５】
遅延時間算出部２３は、時刻通知部１３から入力された時刻ｔ１及び時刻ｔ４を取得する。さらに、遅延時間算出部２３は、第２記憶部２２から時刻ｔ２及び時刻ｔ３を取得する。
【００５６】
そして、遅延時間算出部２３は、時刻ｔ１、時刻ｔ２、時刻ｔ３及び時刻ｔ４を用いて、中継装置１がデータを所定の外部装置から受信してから中継装置２が当該データを他の外部装置へ送信するまでの処理に要する処理遅延時間を算出する。
【００５７】
上述してきたように、本実施例１は、データをカプセル化して転送を行うネットワークにおいて、カプセル化を行う中継装置からカプセル化を解除する中継装置までの処理遅延時間を自動的に算出することができる。そして、キャリア網ではカプセル化を行う中継装置はキャリア網の入口の中継装置であり、カプセル化を解除する中継装置はキャリア網の出口の中継装置である。すなわち、本実施例１によれば、キャリア網内でのデータ転送の処理遅延時間を自動的に算出することができる。そして、この算出された処理遅延時間を用いることで、キャリア網を介した時刻同期の精度を効率よく向上させることができる。
【実施例２】
【００５８】
図２は、実施例２における情報通信システムの概略構成を示す図である。また、図３は、実施例２に係る中継装置を用いた情報通信システムにおける中継装置のブロック図である。ここで、以下の説明でも、処理遅延時間とは、各中継装置における処理遅延及び中継装置間でのデータの送受信にかかる時間を合わせた中継装置全体での処理遅延時間を指すものとする。 
【００５９】
図２に示すように、本実施例に係る情報通信システムは、タイムサーバ３００、クライアント４００、中継装置１、中継装置２、中継装置３、・・・、及び中継装置ｎを備えている。ｎは３以上の自然数である。ここで、図２では中継装置３〜ｎとして模式的に一つの中継装置のみを記載しているが、実際には、中継装置３、・・・、中継装置ｎの中継装置がそれぞれ配置されているものとする。以下では、中継装置３〜ｎの各中継装置を区別しない場合には、単に「中継装置３〜ｎ」と記載する。また、タイムサーバ３００は、時刻をクライアント４００に提供する装置である。そして、クライアント４００は、タイムサーバ３００から提供される時刻に自己の時計を同期させる。ここで、タイムサーバ３００は時刻提供装置の一例である。また、クライアント４００は時刻同期対象装置の一例である。
【００６０】
本実施例に係る情報通信システムは、タイムサーバ３００とクライアント４００とが中継装置１、中継装置２及び中継装置３〜ｎを介して接続されている。中継装置１は、タイムサーバ３００とクライアント４００とを結ぶネットワークにおけるキャリア網の中で、最もタイムサーバ３００側に位置する中継装置である。ここで、キャリア網の中で最もタイムサーバ３００側に位置するとは、タイムサーバ３００と中継装置１とが間にカプセル化を行う中継装置を介さずにデータの送受信を行うことを示している。また、中継装置２は、タイムサーバ３００とクライアント４００とを結ぶネットワークのキャリア網の中で、最もクライアント４００側に位置する中継装置である。ここで、最もクライアント４００側に位置するとは、クライアント４００と中継装置２とが間にカプセル化を行う中継装置を介さずにデータの送受信を行うことを示している。ここで、図２及び図３では、タイムサーバ３００と中継装置１とが直接データの送受信を行うように記載しているが、タイムサーバ３００と中継装置１とはユーザ網を介してデータの送受信が行えればよい。ここで、ユーザ網とはカプセル化せずにデータの転送を行うネットワーク網である。また、クライアント２００と中継装置２もユーザ網を介してデータの送受信が行えればよい。
【００６１】
そして、タイムサーバ３００とクライアント４００とは、中継装置１、中継装置２及び中継装置３〜ｎを介してデータの送受信を行う。ここで、タイムサーバ３００からクライアント４００へのデータの送信について説明する。タイムサーバ３００から送出されたデータは、中継装置１においてカプセル化される。そして、当該データは、カプセル化されたデータの状態で中継装置３〜ｎを通過する。そして、当該データは中継装置２においてカプセル化が解除され、クライアント４００で受信される。また、クライアント４００からタイムサーバ３００へのデータの送信では、中継装置２で当該データがカプセル化され、中継装置１で当該データのカプセル化が解除される。
【００６２】
カプセル化されたデータは図２に示すキャリア網用ヘッダ５００が付加される。このキャリア網用ヘッダ５００は、MPLS labelやPW Labelなどである。そして、中継装置３〜ｎは、キャリア網用ヘッダ５００のみを参照して、タイムサーバ３００へ向けてもしくはクライアント４００へ向けてデータの転送を行っていく。
【００６３】
次に、図３を参照して、中継装置１及び中継装置２について詳述する。図３に示すように、中継装置１は、第１転送部１１、第１記憶部１２及び時刻通知部１３を備えている。また、中継装置２は、第２転送部２１、第２記憶部２２及び遅延時間算出部２３を備えている。ここで、図３には中継装置３〜ｎを省略しているが、実際には中継装置１と中継装置２との間には中継装置３〜ｎが配置されているものとする。
【００６４】
第１転送部１１は、時刻同期メッセージ検出部１１１、キャリア網用カプセル化部１１２及びタイムスタンプ生成部１１３を備えている。
【００６５】
第１転送部１１は、タイムサーバ３００からSyncメッセージを受信する。そして、第１転送部１１は、第２中継装置に向けてカプセル化したSyncメッセージを送信する。このSyncメッセージは、第１データの一例である。
【００６６】
また、第１転送部１１は、Syncメッセージに続いてFollow_UPメッセージを受信する。そして、第１転送部１１は、カプセル化したFollow_UPメッセージを中継装置３〜ｎに送信する。このFollow_UPメッセージは、フォローアップデータの一例である。
【００６７】
また、第１転送部１１は、中継装置３〜ｎからDelay_Reqメッセージを受信する。そして、第１転送部１１は、カプセル化を解除したDelay_Reqメッセージをタイムサーバ３００に送信する。このDelay_Reqメッセージは、第２データの一例である。
【００６８】
さらに、第１転送部１１は、タイムサーバ３００からDelay_Respメッセージを受信する。そして、第１転送部１１は、カプセル化したDelay_Reqメッセージを中継装置３〜ｎに送信する。このDelay_Respメッセージは、応答データの一例である。
【００６９】
時刻同期メッセージ検出部１１１は、タイムサーバ３００又は中継装置３〜ｎから受信したデータの中から時刻同期用のデータを検出する。ここで、時刻同期メッセージ検出部１１１は、カプセル化していないデータの内容を参照することで時刻同期用のデータの検出を行う。すなわち、時刻同期メッセージ検出部１１１は、タイムサーバ３００から受信したデータに関しては、キャリア網用カプセル化部１１２がカプセル化を行う前のデータに対して時刻同期用のデータの検出を行う。また、時刻同期メッセージ検出部１１１は、中継装置３〜ｎから受信したデータに関しては、キャリア網用カプセル化部１１２がカプセル化を解除した後のデータに対して時刻同期用のデータの検出を行う。ここで、時刻同期用のデータとは、時刻同期を実行するために用いられるデータであり、具体的には、Syncメッセージ、Follow_UPメッセージ、Delay_Reqメッセージ及びDelay_Respメッセージを指す。
【００７０】
時刻同期メッセージ検出部１１１は、Syncメッセージを検出する。そして、時刻同期メッセージ検出部１１１は、Syncメッセージの検出をタイムスタンプ生成部１１３に通知する。
【００７１】
また、時刻同期メッセージ検出部１１１は、Follow_UPメッセージを検出する。そして、時刻同期メッセージ検出部１１１は、Follow_UPメッセージの検出を時刻通知部１３へ通知する。
【００７２】
また、時刻同期メッセージ検出部１１１は、Delay_Reqメッセージを検出する。そして、時刻同期メッセージ検出部１１１は、Delay_Reqメッセージの検出をタイムスタンプ生成部１１３へ通知する。
【００７３】
また、時刻同期メッセージ検出部１１１は、Delay_Respメッセージを検出する。そして、時刻同期メッセージ検出部１１１は、Delay_Respメッセージの検出を時刻通知部１３へ通知する。
【００７４】
キャリア網用カプセル化部１１２は、タイムサーバ３００から受信したデータをカプセル化する。また、中継装置３〜ｎから受信したデータのカプセル化を解除する。具体的には、キャリア網用カプセル化部１１２は、Syncメッセージをカプセル化する。また、キャリア網用カプセル化部１１２は、Syncメッセージを受信した時刻Ｔ１の情報が付加されたFollow_UPメッセージをカプセル化する。また、キャリア網用カプセル化部１１２は、Delay_Reqメッセージを送信した時刻Ｔ４の情報が付加されたDealy_Respメッセージをカプセル化する。また、キャリア網用カプセル化部１１２は、Delay_Reqメッセージのカプセル化を解除する。
【００７５】
ここで、Follow_UPメッセージ及びDelay_Respメッセージのカプセル化について、図４及び図５を参照して具体的に説明する。図４は、Follow_UPメッセージのカプセル化を説明するための図である。図５は、Delay_Respメッセージのカプセル化を説明するための図である。
【００７６】
まず、Follow_UPメッセージについて説明する。図４のデータ６０１は、カプセル化する前のFollow_UPメッセージである。そして、データ６０２が、カプセル化されたFollow_UPメッセージである。データ６０２における本来のFollow_UPメッセージの部分のデータ６０３はデータ６０１と同様である。そして、キャリア網用カプセル化部１１２がカプセル化するFollow_UPメッセージには、Syncメッセージを受信した時刻Ｔ１のデータ６０４が時刻通知部１３によって付加されている。そして、キャリア網用カプセル化部１１２は、データ６０４が付加されたデータ６０３に、さらにキャリア網用ヘッダであるデータ６０５を付加してデータ６０２を生成することで、Follow_UPメッセージのカプセル化を行う。
【００７７】
次に、Delay_Respメッセージについて説明する。図５のデータ７０１は、カプセル化する前のDelay_Respメッセージである。そして、データ７０２が、カプセル化されたDelay_Respメッセージである。データ７０２における本来のDelay_Respメッセージの部分のデータ７０３はデータ７０１と同様である。そして、キャリア網用カプセル化部１１２がカプセル化するDelay_Respメッセージには、Delay_Reqメッセージを受信した時刻Ｔ４のデータ７０４が時刻通知部１３によって付加されている。そして、キャリア網用カプセル化部１１２は、データ７０４が付加されたデータ７０３に、さらにキャリア網用ヘッダであるデータ７０５を加えてデータ７０２を生成することで、Delay_Reqメッセージのカプセル化を行う。
【００７８】
ここで、このカプセル化されたデータ６０２及びデータ７０２のキャリア網用ヘッダ部分であるデータ６０５又はデータ７０５を参照することで、中継装置３〜ｎはデータ６０２及びデータ７０２の転送を行っていく。ここでは、Follow_UPメッセージ及びDelay_Respメッセージのカプセル化を説明したが、他のデータに対するカプセル化も同様に行われる。
【００７９】
タイムスタンプ生成部１１３は、時刻同期メッセージ検出部１１１からSyncメッセージの検出の通知を受信すると、時刻発生部１４に時刻発生の要求を行う。そして、タイムスタンプ生成部１１３は、時刻発生部１４からその時点の時刻を取得する。そして、タイムスタンプ生成部１１３は、その取得した時刻をSyncメッセージを受信した時刻Ｔ１として第１記憶部１２へ出力する。
【００８０】
また、タイムスタンプ生成部１１３は、時刻同期メッセージ検出部１１１からDelay_Reqメッセージの検出の通知を受信すると、時刻発生部１４に時刻発生の要求を行う。そして、タイムスタンプ生成部１１３は、時刻発生部１４からその時点の時刻を取得する。そして、タイムスタンプ生成部１１３は、その取得した時刻をDelay_Reqメッセージをタイムサーバ３００へ送出した時刻Ｔ４として第１記憶部１２へ出力する。
【００８１】
時刻発生部１４は、自装置のクロック周波数を用いて現在の時刻を発生させることができる。時刻発生部１４は、いわゆる時計である。そして、時刻発生部１４は、タイムスタンプ生成部１１３からの時刻発生の要求を受けて時刻を発生させ、発生させた時刻をタイムスタンプ生成部１１３に対して出力する。
【００８２】
第１記憶部１２は、メモリやハードディスクといった記憶媒体である。第１記憶部１２は、Syncメッセージを受信した時刻Ｔ１をタイムスタンプ生成部１１３から受信する。そして、第１記憶部１２は、時刻Ｔ１を記憶する。また、第１記憶部１２は、Delay_Reqメッセージをタイムサーバ３００へ送出した時刻Ｔ４をタイムスタンプ生成部１１３から受信する。そして、第１記憶部１２は、時刻Ｔ４を記憶する。
【００８３】
時刻通知部１３は、時刻同期メッセージ検出部１１１からのFollow_UPメッセージ検出の通知を受けて、第１記憶部１２から時刻Ｔ１の情報を取得する。そして、時刻通知部１３は、キャリア網用カプセル化部１１２がカプセル化を行うFollow_UPメッセージに時刻Ｔ１の情報を付加する。また、時刻通知部１３は、時刻同期メッセージ検出部１１１からのDelay_Respメッセージ検出の通知を受けて、第１記憶部１２から時刻Ｔ４の情報を取得する。そして、時刻通知部１３は、キャリア網用カプセル化部１１２がカプセル化を行うDelay_Reqメッセージに時刻Ｔ４の情報を付加する。
【００８４】
第２転送部２１は、時刻同期メッセージ検出部２１１、キャリア網用カプセル化部２１２及びタイムスタンプ生成部２１３を備えている。
【００８５】
第２転送部２１は、中継装置３〜ｎからSyncメッセージを受信する。そして、第２転送部２１は、カプセル化を解除したSyncメッセージをクライアント４００へ送信する。また第２転送部２１は、中継装置３〜ｎからFollow_UPメッセージを受信する。そして、第２転送部２１は、遅延時間算出部２３によって第１処理遅延時間が付加されたFollow_UPメッセージをクライアント４００へ送信する。また、第２転送部２１は、クライアント４００からDelay_Reqメッセージを受信する。そして、第２転送部２１は、カプセル化したDelay_Reqメッセージを中継装置１に向けて送信する。第２転送部２１は、中継装置３〜ｎからDelay_Respメッセージを受信する。そして、第２転送部２１は、遅延時間算出部２３によって第２処理遅延時間が付加されたDelay_Respメッセージをクライアント４００へ送信する。
【００８６】
時刻同期メッセージ検出部２１１は、クライアント４００又は中継装置３〜ｎから受信したデータの中から時刻同期用のデータを検出する。ここで、時刻同期メッセージ検出部２１１は、カプセル化していないデータの内容を参照することで時刻同期用のデータの検出を行う。すなわち、時刻同期メッセージ検出部２１１は、クライアント４００から受信したデータに関しては、キャリア網用カプセル化部２１２がカプセル化を行う前のデータに対して時刻同期用のデータの検出を行う。また、時刻同期メッセージ検出部２１１は、中継装置３〜ｎから受信したデータに関しては、キャリア網用カプセル化部２１２がカプセル化を解除した後のデータに対して時刻同期用のデータの検出を行う。
【００８７】
時刻同期メッセージ検出部２１１は、Syncメッセージを検出する。そして、時刻同期メッセージ検出部２１１は、Syncメッセージの検出をタイムスタンプ生成部２１３に通知する。
【００８８】
また、時刻同期メッセージ検出部２１１は、Follow_UPメッセージを検出する。そして、時刻同期メッセージ検出部２１１は、Follow_UPメッセージの検出を遅延時間算出部２３へ通知する。
【００８９】
また、時刻同期メッセージ検出部２１１は、Delay_Reqメッセージを検出する。そして、時刻同期メッセージ検出部２１１は、Delay_Reqメッセージの検出をタイムスタンプ生成部２１３へ通知する。
【００９０】
また、時刻同期メッセージ検出部２１１は、Delay_Respメッセージを検出する。そして、時刻同期メッセージ検出部２１１は、Delay_Respメッセージの検出を遅延時間算出部２３へ通知する。
【００９１】
キャリア網用カプセル化部２１２は、クライアント４００から受信したデータをカプセル化する。また、キャリア網用カプセル化部２１２は、中継装置３〜ｎから受信したデータのカプセル化を解除する。具体的には、キャリア網用カプセル化部１１２は、Syncメッセージ、Follow_UPメッセージ及びDelay_Respメッセージのカプセル化を解除する。また、キャリア網用カプセル化部２１２は、Delay_Reqメッセージをカプセル化する。
【００９２】
タイムスタンプ生成部２１３は、時刻同期メッセージ検出部２１１からSyncメッセージの検出の通知を受信すると、時刻発生部２４に時刻発生の要求を行う。そして、タイムスタンプ生成部２１３は、時刻発生部２４からその時点の時刻を取得する。そして、タイムスタンプ生成部２１３は、その取得した時刻をSyncメッセージをクライアント４００へ送出した時刻Ｔ２として第２記憶部２２へ出力する。
【００９３】
また、タイムスタンプ生成部２１３は、時刻同期メッセージ検出部２１１からDelay_Reqメッセージの検出の通知を受信すると、時刻発生部２４に時刻発生の要求を行う。そして、タイムスタンプ生成部２１３は、時刻発生部２４からその時点の時刻を取得する。そして、タイムスタンプ生成部２１３は、その取得した時刻をDelay_Reqメッセージを受信した時刻T3として第２記憶部２２へ出力する。
【００９４】
時刻発生部２４は、自装置のクロック周波数を用いて現在の時刻を発生させることができる。時刻発生部２４は、いわゆる時計である。そして、時刻発生部２４は、タイムスタンプ生成部２１３からの時刻発生の要求を受けて時刻を発生させ、発生させた時刻をタイムスタンプ生成部２１３に対して出力する。
【００９５】
第２記憶部２２は、メモリやハードディスクといった記憶媒体である。第２記憶部２２は、Syncメッセージをクライアント４００へ送出した時刻Ｔ２をタイムスタンプ生成部２１３から受信する。そして、第２記憶部２２は、時刻Ｔ２を記憶する。また、第２記憶部２２は、Delay_Reqメッセージを受信した時刻Ｔ３をタイムスタンプ生成部２１３から受信する。そして、第２記憶部２２は、時刻Ｔ３を記憶する。
【００９６】
遅延時間算出部２３は、時刻同期メッセージ検出部２１１からのFollow_UPメッセージ検出の通知を受けて、該Follow_UPメッセージからＴ１の値を取得する。さらに、遅延時間算出部２３は、時刻Ｔ２の値を第２記憶部２２から取得する。そして、遅延時間算出部２３は、時刻Ｔ２から時刻Ｔ１を減算することにより第１処理遅延時間（Ｔ２−Ｔ１）を算出する。そして、遅延時間算出部２３は、算出した第１処理遅延時間（Ｔ２−Ｔ１）をFollow_UPメッセージのcorrectionフィールドに加算する。
【００９７】
また、遅延時間算出部２３は、時刻同期メッセージ検出部２１１からのDelay_Respメッセージ検出の通知を受けて、該Delay_Respメッセージから時刻Ｔ４の値を取得する。さらに、遅延時間算出部２３は、時刻Ｔ３の値を第２記憶部２２から取得する。そして、遅延時間算出部２３は、時刻Ｔ４から時刻Ｔ３を減算することにより第２処理遅延時間（Ｔ４−Ｔ３）を算出する。そして、遅延時間算出部２３は、算出した第２処理遅延時間（Ｔ４−Ｔ３）をDelay_Respメッセージのcorrectionフィールドに加算する。
【００９８】
次に、時刻同期の実行時のタイムサーバ３００及びクライアント４００の動作について説明する。タイムサーバ３００は、クライアント４００の時刻同期を行うためのSyncメッセージを第１転送部１１に送信する。そして、タイムサーバ３００は、Syncメッセージを送出した時刻ｔ１を記憶する。また、タイムサーバ３００は、Follow_UPメッセージを作成する。このFollow_UPメッセージには、時刻ｔ１の値が含まれている。そして、タイムサーバ３００は、Syncメッセージに続いて、Follow_UPメッセージを第１転送部１１に送信する。
【００９９】
また、タイムサーバ３００は、Syncメッセージに対する応答であるDelay_Reqメッセージを第１転送部１１から受信する。ここで、タイムサーバ３００は、Delay_Reqメッセージを受信した時刻ｔ４を記憶する。そして、タイムサーバ３００は、Delay_Reqメッセージに対する応答としてDylay_Respメッセージを作成する。このDelay_Respメッセージには、時刻ｔ４の情報が含まれている。そして、タイムサーバ３００は、Delay_Respメッセージを第１転送部１１に送信する。
【０１００】
クライアント４００は、第２転送部２１からSyncメッセージを受信する。そして、クライアント４００は、Syncメッセージを受信した時刻ｔ２を記憶する。また、クライアント４００は、第２転送部２１からFollo_UPメッセージを受信する。そして、クライアント４００は、Follow_UPメッセージに含まれる時刻ｔ１及び第１処理遅延時間（Ｔ２−Ｔ１）を取得する。また、クライアント４００は、Syncメッセージを受信すると、Delay_Reqメッセージをタイムサーバ３００へ向けて送信する。ここで、クライアント４００は、Delay_Reqメッセージを送出した時刻ｔ３を記憶する。さらに、クライアント４００は、第２転送部２１からDelay_Respメッセージを受信する。そして、クライアント４００は、Delay_Respメッセージに含まれる時刻ｔ４及び第２処理遅延時間（Ｔ２−Ｔ１）を取得する。
【０１０１】
クライアント４００の時刻同期部４０１は、時刻ｔ１〜ｔ４、第１処理遅延時間（Ｔ２−Ｔ１）及び第２処理遅延時間（Ｔ４−Ｔ３）を基に、下記の式５を用いて伝送遅延を算出する。
【０１０２】
伝送遅延＝１／２｛（ｔ４−ｔ１）−（ｔ３−ｔ２）−（Ｔ２−Ｔ１）−（Ｔ４−Ｔ３）}      （式５）
【０１０３】
そして、クライアント４００は、算出した伝送遅延を基に下記の式６を用いて補正値を算出する。
【０１０４】
補正値＝ｔ１＋伝送遅延＋（Ｔ２−Ｔ１）−ｔ２      （式６）
【０１０５】
そして、時刻同期部４０１は、算出した補正値を用いてクライアント４００の時計（不図示）を補正する。
【０１０６】
ここで、本実施例２では、時刻同期部４０１は、遅延時間算出部２３で算出した第１処理遅延時間及び第２処理遅延時間を用いて伝送遅延を求めているが、これは他の方法でも良い。例えば、中継装置２が、時刻Ｔ１〜Ｔ４をクライアント４００に送信し、時刻同期部４０１は、時刻ｔ１〜ｔ４と時刻Ｔ１〜Ｔ４とを用いて伝送遅延を算出しても良い。
【０１０７】
次に図６を参照して、本実施例に係る情報通信システムにおける処理遅延時間の算出及び時刻同期の動作の流れを説明する。ここで、図６は、本実施例に係る情報通信システムにおける処理遅延時間の算出及び時刻同期の動作のシーケンス図である。図６の２本の縦軸は、下に向かって時間の経過を表している。そして、タイムサーバ３００の下の縦軸は、経時的なタイムサーバ３００の動作及びデータの送受信を表している。また、クライアント４００の下の縦軸は、経時的なタイムサーバ３００の動作及びデータの送受信を表している。また、２本の縦軸の間に挟まれた、中継装置１、中継装置２及び中継装置３〜ｎのそれぞれに対応する位置では、各中継装置の経時的な動作及びデータの送受信が表されている。また、２本の縦軸の間における各装置の間を結ぶ矢印はデータの流れを表している。
【０１０８】
タイムサーバ３００は、クライアント４００に向けてSyncメッセージを送信する（ステップＳ１０１）。そして、タイムサーバ３００は、Syncメッセージを送出した時刻ｔ１を記憶する（ステップＳ１０２）。
【０１０９】
中継装置１は、タイムサーバ３００からSyncメッセージを受信し、そのSyncメッセージを受信した時刻Ｔ１を記憶する（ステップＳ１０３）。そして、中継装置１は、Syncメッセージをカプセル化し、中継装置３〜ｎにSyncメッセージを送信する（ステップＳ１０４）。
【０１１０】
中継装置３〜ｎは、中継装置１から受信したSyncメッセージを中継装置２に送信する（ステップＳ１０５）。図６では、説明の便宜上、中継装置３から中継装置ｎまでのデータの受け渡しは省略してある（以下同様）。
【０１１１】
中継装置２は、中継装置３〜ｎから受信したSyncメッセージのカプセル化を解除し、クライアント４００にSyncメッセージを送信する（ステップＳ１０６）。そして、中継装置２は、Syncメッセージを送出した時刻Ｔ２を記憶する（ステップＳ１０７）。
【０１１２】
クライアント４００は、中継装置２からSyncメッセージを受信した時刻ｔ２を記憶する（ステップＳ１０８）。
【０１１３】
タイムサーバ３００は、Syncメッセージを送出した時刻ｔ１を含むFollow_UPメッセージを作成する（ステップＳ１０９）。タイムサーバ３００は、Follow_UPメッセージをクライアント４００に向けて送信する（ステップＳ１１０）。ここで、以上では説明の都合上、Syncメッセージをクライアント４００が受信してから、タイムサーバ３００がFollow_UPメッセージを送信する順序で説明した。しかし実際は、タイムサーバ３００は、Syncメッセージを送信した後すぐにFollow_UPメッセージを送信して良い。
【０１１４】
中継装置１は、タイムサーバから受信したFollow_UPメッセージに自己がSyncメッセージを受信した時刻Ｔ１を加えた後、該Follow_UPメッセージをカプセル化する（ステップＳ１１１）。中継装置１は、Follow_UPメッセージを中継装置３〜ｎに送信する（ステップＳ１１２）。
【０１１５】
中継装置３〜ｎは、中継装置１から受信したFollo_UPメッセージを中継装置２に送信する（ステップＳ１１３）。
【０１１６】
中継装置２は、中継装置３〜ｎから受信したFollow_UPメッセージのカプセル化を解除する。そして、中継装置２は、Follow_UPメッセージに付加された時刻Ｔ１を取得する。そして、中継装置２は、時刻Ｔ２から時刻Ｔ１を減算し、中継装置１から中継装置２までSyncメッセージを転送する処理によって発生した第１処理遅延時間（Ｔ２−Ｔ１）を算出する（ステップＳ１１４）。そして、中継装置２は、Follow_UPメッセージのcorrectionフィールドに算出した第１処理遅延時間を加算する（ステップＳ１１５）。そして、中継装置２は、かかるFollow_UPメッセージをクライアント４００に送信する（ステップＳ１１６）。
【０１１７】
クライアント４００は、Syncメッセージを受信した後、タイムサーバ３００に向けてDelay_Reqメッセージを送信する（ステップＳ１１７）。ここで、図６ではクライアント４００は、Follow_UPメッセージを受信してからDelay_Reqメッセージを送信する順序で記載されている。しかし実際には、クライアント４００は、Syncメッセージを受信した後であればいつでもDelay_Reqメッセージの送信を行ってよい。
【０１１８】
クライアント４００は、Delay_Reqメッセージを中継装置２へ送出した時刻ｔ２を記憶する（ステップＳ１１８）。
【０１１９】
中継装置２は、クライアント４００からDelay_Reqメッセージを受信した時刻Ｔ３を記憶する（ステップＳ１１９）。そして、中継装置２は、Delay_Reqメッセージをカプセル化し、中継装置３〜ｎに送信する（ステップＳ１２０）。
【０１２０】
中継装置３〜ｎは、中継装置２から受信したDelay_Reqメッセージを中継装置１に送信する（ステップＳ１２１）。
【０１２１】
中継装置１は、中継装置３〜ｎからDelay_Reqメッセージを受信し、該Delay_Reqメッセージのカプセル化を解除する。そして、中継装置１は、Delay_Reqメッセージをタイムサーバ３００に送信する（ステップＳ１２２）。そして、中継装置１は、Delay_Reqメッセージを送出した時間Ｔ４を記憶する（ステップＳ１２３）。
【０１２２】
タイムサーバ３００は、中継装置１からDelay_Reqメッセージを受信した時刻ｔ４を記憶する（ステップＳ１２４）。そして、タイムサーバ３００は、Delay_Reqメッセージに対する応答として、Delay_Reqメッセージを受信した時刻ｔ４を含むDelay_Respメッセージを作成する（ステップＳ１２５）。そして、タイムサーバ３００は、Delay_Respメッセージをクライアント４００に向けて送信する（ステップＳ１２６）。
【０１２３】
中継装置１は、タイムサーバ３００から受信したDelay_Respメッセージに対し自己がDelay_Reqメッセージを送出した時刻Ｔ４を加えた後、該Delay_Respメッセージをカプセル化する（ステップＳ１２７）。中継装置１は、Delay_Respメッセージを中継装置３〜ｎに送信する（ステップＳ１２８）。
【０１２４】
中計装置３〜ｎは、中継装置１から受信したDelay_Respメッセージを中継装置２に送信する（ステップＳ１２９）。
【０１２５】
中継装置２は、中継装置３〜ｎから受信したDelay_Respメッセージのカプセル化を解除する。そして、中継装置２は、Delay_Respメッセージに付加された時刻Ｔ４を取得する。そして、中継装置２は、時刻Ｔ４から時刻Ｔ３を減算し、中継装置２から中継装置１までDelay_Reqメッセージを転送する処理によって発生した第２処理遅延時間（Ｔ４−Ｔ３）を算出する（ステップＳ１３０）。そして、中継装置２は、Delay_Respメッセージのcorrectionフィールドに算出した第２処理遅延時間を加算する（ステップＳ１３１）。そして、中継装置２は、かかるDelay_Respメッセージをクライアント４００に送信する（ステップＳ１３２）。
【０１２６】
クライアント４００は、Follow_UPメッセージに含まれる時刻ｔ１及び第１処理遅延時間（Ｔ２−Ｔ１）を取得する。さらに、クライアント４００は、Delay_Respメッセージに含まれる時刻ｔ４及び第２処理遅延時間（Ｔ４−Ｔ３）を取得する。そして、クライアント４００は、（式５）を用いて伝送遅延を算出し、（式６）を用いて補正値を算出する。そして、クライアント４００は、求めた補正値を用いて自己の時計の時刻をタイムサーバ３００の時計の時刻に同期させる（ステップＳ１３３）。
【０１２７】
以上に説明したように、本実施例２に係る中継装置は、データをカプセル化して転送する場合に、カプセル化を行う中継装置とカプセル化を解除する中継装置との間でのデータの処理にかかる処理遅延時間を自動的に算出することができる。具体的には、本実施例２に係る中継装置は、データがキャリア網に入ってからキャリア網から出るまでの処理遅延時間を算出できる。したがって、クライアントは、かかる処理遅延時間を用いることで、データをカプセル化して転送するキャリア網のような情報通信システムにおいて、自装置の時計とタイムサーバの時計とを精度良く同期させることができる。
【０１２８】
また、本実施例２によれば、キャリア網におけるデータの入口と出口の中継装置が、データを受信してから送出するまでの処理遅延を測定する機能（Transparent Clock）を有していれば、キャリア網内の処理遅延時間を算出できる。したがって、他の中継装置はTransparent Clockの機能を省くことができ、コストを低く押さえ、効率よく時刻同期を行うことができる。
【実施例３】
【０１２９】
図７は、実施例３に係る中継装置を用いた情報通信システムの概略構成を示す概念図である。また、図７は、実施例３に係る中継装置を用いた情報通信システムにおける中継装置のブロック図である。本実施例３は、中継装置２が自装置の時刻を中継装置１の時刻に同期させる時刻補正部２５を備えたことが、実施例２と異なるものである。そこで、以下では中継装置２の時刻同期の機能について主に説明する。図７と図３とで同じ符号を有する機能部は同じ機能を有するものとする。
【０１３０】
本実施例においてもタイムサーバ３００、中継装置１及びクライアント４００の動作は実施例２と同様である。
【０１３１】
第２転送部２１は、中継装置１がSyncメッセージを受信した時刻Ｔ１を含むFollow_UPメッセージ及び中継装置１がDelay_Reqメッセージを送出した時刻Ｔ４を含むDelay_Respメッセージを中継装置１から受信する。
【０１３２】
また、タイムスタンプ生成部２１３は、時刻同期メッセージ検出部２１１による時刻同期メッセージの検出を受けて、中継装置２がSyncメッセージを送出した時刻Ｔ２及び中継装置２がDelay_Reqメッセージを受信した時刻Ｔ３を取得する。そして、第２記憶部２２は、中継装置２がSyncメッセージを送出した時刻Ｔ２及び中継装置２がDelay_Reqメッセージを受信した時刻Ｔ３を記憶する。
【０１３３】
遅延時間算出部２３は、Follow_UPメッセージに含まれる中継装置１がSyncメッセージを受信した時刻Ｔ１及びDelay_Respメッセージに含まれる中継装置１がDelay_Reqメッセージを送出した時刻Ｔ４を取得する。さらに、遅延時間算出部２３は、第２記憶部２２から、中継装置２がSyncメッセージを送出した時刻Ｔ２及び中継装置２がDelay_Reqメッセージを受信した時刻Ｔ３を取得する。
【０１３４】
時刻補正部２５は、遅延時間処理部２３から時刻Ｔ１、時刻Ｔ２、時刻Ｔ３及び時刻Ｔ４の値を取得する。ここで、本実施例では、時刻補正部２５は遅延時間処理部２３を介して各時刻を取得しているが、これは他の方法でも良い。例えば、時刻補正部２５は、時刻Ｔ１及び時刻Ｔ４の値をFollow_UPメッセージ及びDelay_Respメッセージから取得し、時刻Ｔ２及び時刻Ｔ３の値を第２記憶部２２の中から取得しても良い。
【０１３５】
時刻補正部２５は、中継装置１から中継装置２へデータが送られる間の伝送遅延を例えば下記の式７を用いて算出する。
【０１３６】
伝送遅延＝１／２｛（Ｔ４−Ｔ１）−（Ｔ３−Ｔ２）｝    （式７）
【０１３７】
さらに、時刻補正部２５は、時刻発生部２４の補正値を例えば下記の式８を用いて算出する。
【０１３８】
補正値＝Ｔ１＋伝送遅延−Ｔ２      （式８）
【０１３９】
そして、時刻補正部２５は、かかる補正値を用いて時刻発生部２４の時刻の補正を行う。例えば、時刻補正部２５は、かかる補正値を時刻発生部２４の時計に加えることによって時刻の補正を行う。
【０１４０】
以上に説明したように、本実施例３に係る中継装置は、カプセル化を行う中継装置とカプセル化を解除する中継装置との時刻を同期させることができる。すなわち、本実施形態に係る中継装置によれば、キャリア網の信号の入口と出口に配置された中継装置の時刻を精度良く同期させることが可能となる。
【０１４１】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１４２】
（付記１）第１中継装置及び第２中継装置を含む情報通信システムであって、
前記第１中継装置は、
カプセル化又はカプセル化の解除を行いデータを転送する第１転送部と、
前記第１転送部が所定の外部装置から第１データを受信した時刻である第１時刻、及び前記第１転送部が前記第２中継装置から送信された第２データを前記所定の外部装置に向けて送信した時刻である第２時刻を記憶する第１記憶部と、
前記第１時刻及び前記第２時刻を前記第２中継装置に通知する時刻通知部とを備え、
前記第２中継装置は、
カプセル化又はカプセル化の解除を行いデータを転送する第２転送部と、
前記第２転送部が他の外部装置に向けて前記第１データを送信した時刻である第３時刻、及び前記第２転送部が前記他の外部装置から前記第２データを受信した時刻である第４時刻を記憶する第２記憶部と、
処理遅延時間として前記第１時刻と前記第３時刻との差及び前記第２時刻と前記第４時刻との差を算出する遅延時間算出部と
を備えたことを特徴とする情報通信システム。
【０１４３】
（付記２）前記第１転送部は、
前記所定の外部装置から受信したデータをカプセル化し前記第２中継装置に向けて送信し、前記第２中継装置から送信されたデータのカプセル化を解除して前記所定の外部装置へ送信し、
前記第２転送部は、
前記他の外部装置から受信したデータをカプセル化し前記第１中継装置に向けて送信し、前記第１中継装置から送信されたデータのカプセル化を解除して前記他の外部装置へ送信する
ことを特徴とする付記１に記載の情報通信システム。
【０１４４】
（付記３）前記第１転送部は、
前記第１データ、前記第１データに続いて前記所定の外部装置から送信されるフォローアップデータ、及び前記第２データに対する応答データを前記所定の外部装置から受信し前記第２中継装置に向けて転送し、
前記第２中継装置から送信された前記第２データを受信して前記他の外部装置に転送し、
前記時刻通知部は、
前記第１時刻を前記フォローアップデータに付加し、前記第２時刻を前記応答データに付加することで、前記第１時刻及び前記第２時刻を前記第２中継装置へ送信する
ことを特徴とする付記１又は付記２に記載の情報通信システム。
【０１４５】
（付記４）前記第２中継装置は、
前記第１時刻、前記第２時刻、前記第３時刻及び前記第４時刻を用いて、自装置の前記第１中継装置の時刻とのずれを補正する時刻補正部をさらに備えたことを特徴とする付記１乃至付記３のいずれか一つに記載の情報通信システム。
【０１４６】
（付記５）前記時刻補正部は、前記第１時刻をＴ１、前記第２時刻をＴ４、前記第３時刻をＴ２、前記第４時刻をＴ３とし、以下の式により伝送遅延及び補正値を求め、
伝送遅延＝１／２｛（Ｔ４−Ｔ１）−（Ｔ３−Ｔ２）｝
補正値＝Ｔ１＋伝送遅延−Ｔ２
前記補正値を基に自装置の時刻を補正する
ことを特徴とする付記４に記載の情報通信システム。
【０１４７】
（付記６）第１中継装置及び第２中継装置を含む情報通信システムにおける処理遅延時間算出方法であって、
前記第１中継装置において、所定の外部装置から第１データを受信し、カプセル化して前記第２中継装置に送信するステップと、
前記第１中継装置において、前記第１データを受信した時刻である第１時刻を記憶するステップと、
前記第１中継装置において、前記第１時刻を前記第２中継装置に送信するステップと、
前記第２中継装置において、前記第１データを受信しカプセル化を解除して他の外部装置に送信するステップと、
前記第２中継装置において、前記第１データを送信した時刻である第３時刻を記憶するステップと、
前記第２中継装置において、前記他の外部装置から第２データを受信し、カプセル化して前記第１中継装置に送信するステップと、
前記第２中継装置において、前記第２データを受信した時刻である第４時刻を記憶するステップと、
前記第１中継装置において、前記第２データを受信しカプセル化を解除して前記所定の外部装置に送信するステップと、
前記第１中継装置において、前記第２データを送信した時刻である第２時刻を記憶するステップと、
前記第１中継装置において、前記第２時刻を前記第２中継装置に送信するステップと、
前記第２中継装置において、処理遅延時間として前記第１時刻と前記第３時刻との差及び前記第２時刻と前記第４時刻との差を算出するステップと
を含むことを特徴とする処理遅延時間算出方法。
【０１４８】
（付記７）少なくとも第１中継装置及び第２中継装置を含む複数の中継装置、時刻提供装置、並びに時刻同期対象装置を含む情報通信システムであって、
前記時刻提供装置は、
第１データを前記複数の中継装置を介して前記時刻同期対象装置に送信する第１データ送信部を備え、
前記時刻提供装置は、
第２データを前記複数の中継装置を介して前記時刻提供装置に送信する第２データ送信部を備え、
前記第１中継装置は、
カプセル化又はカプセル化の解除をしてデータの転送を行い、かつ前記時刻提供装置とカプセル化されていないデータの送受信を行う第１転送部と、
前記第１転送部が前記時刻提供装置から第１データを受信した時刻である第１時刻、及び前記第１転送部が前記第２中継装置から送信された第２データを前記時刻提供装置に向けて送信した時刻である第２時刻を記憶する第１記憶部と、
前記第１時刻及び前記第２時刻を前記第２中継装置に送信する時刻通知部とを備え、
前記第２中継装置は、
カプセル化又はカプセル化の解除をしてデータの転送を行い、かつ前記時刻同期対象装置とカプセル化されていないデータの送受信を行う第２転送部と、
前記第２転送部が前記時刻同期対象装置に向けて前記第１データを送信した時刻である第３時刻、及び前記第２転送部が前記時刻同期対象装置から前記第２データを受信した時刻である第４時刻を記憶する第２記憶部と、
処理遅延時間として前記第１時刻と前記第３時刻との差及び前記第２時刻と前記第４時刻との差を算出する遅延時間算出部とを備える
ことを特徴とする情報通信システム。
【０１４９】
（付記８）前記時刻同期対象装置は、自装置における前記第１データの受信時間及び前記第２データの送信時間、前記時刻提供装置における前記第１データの送出時間及び前記第２データの受信時間、並びに前記第１処理遅延時間及び前記第２処理遅延時間を用いて前記時刻提供装置との時刻の同期を行う時刻同期部をさらに備えたことを特徴とする付記７に記載の情報通信システム。
【符号の説明】
【０１５０】
１  中継装置
２  中継装置
１１  第１転送部
１２  第１記憶部
１３  時刻通知部
１４  時刻発生部
２１  第２転送部
２２  第２記憶部
２３  遅延時間算出部
２４  時刻発生部
２５  時刻補正部
１１１  時刻同期メッセージ検出部
１１２  キャリア網用カプセル化部
１１３  タイムスタンプ生成部
２１１  時刻同期メッセージ検出部
２１２  キャリア網用カプセル化部
２１３  タイムスタンプ生成部
３００  タイムサーバ
４００  クライアント
４０１  時刻同期部
【図１】
0005509914.tif 000002
【図２】
0005509914.tif 000003
【図３】
0005509914.tif 000004
【図４】
0005509914.tif 000005
【図５】
0005509914.tif 000006
【図６】
0005509914.tif 000007
【図７】
0005509914.tif 000008
【図８】
0005509914.tif 000009
【図９】
0005509914.tif 000010
【図１０】
0005509914.tif 000011