JP2013165326A - 情報処理装置及び方法、プログラム、並びに情報処理システム - Google Patents

情報処理装置及び方法、プログラム、並びに情報処理システム Download PDF

Info

Publication number
JP2013165326A
JP2013165326A JP2012026181A JP2012026181A JP2013165326A JP 2013165326 A JP2013165326 A JP 2013165326A JP 2012026181 A JP2012026181 A JP 2012026181A JP 2012026181 A JP2012026181 A JP 2012026181A JP 2013165326 A JP2013165326 A JP 2013165326A
Authority
JP
Japan
Prior art keywords
port
ptp message
time
message
switch
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.)
Pending
Application number
JP2012026181A
Other languages
English (en)
Inventor
Mizuki Kaneda
瑞規 金田
Osamu Matsunaga
修 松永
Naoki Inomata
直樹 猪俣
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2012026181A priority Critical patent/JP2013165326A/ja
Publication of JP2013165326A publication Critical patent/JP2013165326A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

【課題】既存のネットワークシステムを再構築することなくクロックの同期を容易に実現することができるようにする。
【解決手段】トランスペアレントクロック処理部は、デバイス受信側ポートに受信されたパケットがPTPメッセージである場合、PTPメッセージを受信した第1の時刻と、PTPメッセージのパラメータとを対応付けて記録した後、PTPメッセージをスイッチ送信側ポートに伝送し、スイッチ受信側ポートに受信されたパケットがPTPメッセージである場合、PTPメッセージを受信した第2の時刻と第1の時刻の差分を残留時刻として演算し、残留時刻を含むようにパラメータを更新し、更新後のパラメータを含むPTPメッセージをデバイス送信側ポートに伝送する。本技術は、クロック同期を実行する情報処理装置に適用することができる。
【選択図】図7

Description

本技術は、情報処理装置及び方法、プログラム、並びに情報処理システムに関し、特に、既存のネットワークシステムを再構築することなくクロックの同期を容易に実現することができる、情報処理装置及び方法、プログラム、並びに情報処理システムに関する。
従来、複数のデバイス群でマスタ(Master)とスレーブ(Slave)の関係が構築されている場合、マスタのクロックに、スレーブのクロックを同期させる手法が存在している。
例えば、スレーブが、マスタから送信される同期情報が有効な場合には、当該同期情報からクロック補正値を算出し、当該クロック補正値に基づいて、マスタのクロックに同期させる手法が、特許文献1に開示されている。
また例えば、従来、ネットワーク接続された複数のデバイス間でクロックを同期させるプロトコルとして、IEEE1588(Precision Time Protocol、以下、PTPと称する)が存在する。ネットワーク往復伝搬遅延の差が一定であることはまれであるため、マスタのクロックに、スレーブのクロックを精度よく同期させるためには、このPTPで提供されるトランスペアレントクロックの機能を有するネットワークスイッチを用いることが必要である。トランスペアレントクロックは、PTPメッセージを所定のポートで受信してから他のポートで送信するまでの時間を記録して、当該時間の情報をPTPメッセージのヘッダに書き込む機能を有する。そこで、スレーブが、PTPメッセージのヘッダに書き込まれた当該情報を用いて、自機のクロックをマスタのクロックに同期させる。このように、トランスペアレントクロックの機能を有するネットワークスイッチを用いることにより、ネットワーク往復伝搬遅延が一定でない場合でも、マスタとスレーブとの間で精度よくクロック同期を行うことが可能となる。
特開2011−29918号公報
しかしながら、マスタのクロックに、スレーブのクロックを同期させる従来の手法では、マスタやスレーブの仕様を変更したり、既存のネットワークスイッチをトランスペアレントクロック機能を有するネットワークスイッチに交換しなければならない。即ち、ネットワークシステムの再構築が必要となる。このため、既存のネットワークシステムを再構築することなくクロックの同期を容易に実現する手法が要求されている状況である。
本技術は、このような状況に鑑みてなされたものであり、既存のネットワークシステムを再構築することなくクロックの同期を容易に実現することができるようにしたものである。
本技術の一側面の情報処理装置は、送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、前記デバイス受信側ポートに受信された前記パケットをネットワークスイッチに送信するスイッチ送信側ポートと、前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと、前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部とを備える。
前記トランスペアレントクロック処理部は、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである場合の第1の残留時間を演算し、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである場合の第2の残留時間を演算することができる。
前記デバイス受信側ポート又は前記スイッチ受信側ポートにおいてパケットが受信される毎に、前記パケットに対して、受信が行われたポートを識別可能なタグを付加するタグ付加部と、前記デバイス送信側ポート又は前記スイッチ送信側ポートにおいて、前記タグ付加部により前記タグが付加されたパケットが送信される毎に、前記パケットから前記タグを削除するタグ削除部と、前記トランスペアレントクロック処理部により処理された前記PTPメッセージに付加された前記タグを判定し、前記デバイス受信側ポートを識別する前記タグが付加されていると判定した場合には前記PTPメッセージを前記スイッチ送信側ポートに送信し、前記スイッチ受信側ポートを識別する前記タグが付加されていると判定した場合には前記PTPメッセージを前記デバイス送信側ポートに送信するタグ判定部とをさらに設けることができる。
前記第1の時刻及び第2の時刻を計時する計時部を設けることができる。
本技術の一側面の情報処理方法及びプログラムは、上述した本技術の一側面の情報処理装置に対応する方法及びプログラムである。
本技術の一側面の情報処理装置及び方法並びにプログラムにおいては、送信元デバイスから送信されたパケットが受信されるデバイス受信側ポートと、前記デバイス受信側ポートに受信された前記パケットがネットワークスイッチに送信されるスイッチ送信側ポートと、前記ネットワークスイッチから送信されてきた前記パケットが受信されるスイッチ受信側ポートと、前記スイッチ受信側ポートに受信された前記パケットが送信先デバイスに送信されるデバイス送信側ポートが設けられ、前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージが受信された第1の時刻と、前記PTPメッセージのパラメータとが対応付けられて記録された後、前記PTPメッセージが前記スイッチ送信側ポートに伝送され、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージが受信された第2の時刻と前記第1の時刻の差分が残留時刻として演算され、前記残留時刻を含むように前記パラメータが更新され、更新後の前記パラメータを含む前記PTPメッセージが前記デバイス送信側ポートに伝送される。
本技術の一側面の情報処理システムは、マスタと、スレーブと、クロック処理装置と、ネットワークスイッチとを含む情報処理システムであって、前記クロック処理装置は、送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、前記デバイス受信側ポートに受信された前記パケットを前記ネットワークスイッチに送信するスイッチ送信側ポートと、前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと、前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部とを備え、
前記トランスペアレントクロック処理部は、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである第1の場合の第1の残留時間を演算し、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである第2の場合の第2の残留時間を演算し、前記スレーブは、前記第1の残留時間、前記第2の残留時間、前記第1の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻、並びに、前記第2の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻を用いて、前記マスタとクロック同期を行う。
本技術の第一側面の情報処理システムにおいては、マスタと、スレーブと、クロック処理装置と、ネットワークスイッチとが含まれ、前記クロック処理装置は、送信元デバイスから送信されたパケットが受信されるデバイス受信側ポートと、前記デバイス受信側ポートに受信された前記パケットが前記ネットワークスイッチに送信されるスイッチ送信側ポートと、前記ネットワークスイッチから送信されてきた前記パケットが受信されるスイッチ受信側ポートと、前記スイッチ受信側ポートに受信された前記パケットが送信先デバイスに送信されるデバイス送信側ポートとが設けられ、前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージが受信された第1の時刻と、前記PTPメッセージのパラメータとが対応付けて記録された後、前記PTPメッセージが前記スイッチ送信側ポートに伝送され、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージが受信された第2の時刻と前記第1の時刻の差分が残留時刻として演算され、前記残留時刻が含まれるように前記パラメータが更新され、更新後の前記パラメータが含まれる前記PTPメッセージが前記デバイス送信側ポートに伝送され、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである第1の場合の第1の残留時間が演算され、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである第2の場合の第2の残留時間が演算され、前記スレーブにおいては、前記第1の残留時間、前記第2の残留時間、前記第1の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻、並びに、前記第2の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻が用いられて、前記マスタとクロック同期が行われる。
以上のごとく、本技術によれば、既存のネットワークシステムを再構築することなくクロックの同期を容易に実現することができる。
マスタとスレーブの間で送受信されるパケットの流れを示す図である。 マスタとスレーブが含まれるネットワークを示す図である。 トランスペアレントクロックの機能を有するネットワークスイッチを示す図である。 PTPメッセージのヘッダのフォーマットを示す図である。 本技術が適用される情報処理システムの構成例を示すブロック図である。 本技術が適用される情報処理システムの他の構成例を示すブロック図である。 クロック処理装置の構成を示すブロック図である。 基本処理の流れの一例を説明するフローチャートである。 情報処理システムの詳細な構成を示す図である。 マスタとスレーブの間で送受信されるパケットの流れを示す図である。 クロック同期処理の流れを説明するフローチャートである。 マスタからネットワークスイッチまでのSyncメッセージの具体例について説明する図である。 ネットワークスイッチからスレーブまでのSyncメッセージの具体例について説明する図である。 スレーブからネットワークスイッチまでのDelay_Reqメッセージの具体例について説明する図である。 ネットワークスイッチからマスタまでのDelay_Reqメッセージの具体例について説明する図である。 本技術が適用される情報処理装置のハードウエアの構成例を示すブロック図である。
はじめに、本技術の理解を容易なものとすべく、PTPについて説明する。
[マスタとスレーブの間で送受信されるパケット]
図1は、IEEE1588-2008(PTPv2)に記載されている、マスタとスレーブの間で送受信されるパケットの流れを示す図である。
図1において、左側にはマスタの時間軸(縦方向の矢印)が示され、右側にはスレーブの時間軸(縦方向の矢印)が示されている。
マスタは、Syncメッセージをスレーブに送信すると、Syncメッセージを送信した時刻t1を記録する。なお、時刻t1は、マスタが有するクロックにより計時された時刻である。
スレーブは、Syncメッセージを受信すると、Syncメッセージを受信した時刻t2を記録する。なお、時刻t2は、スレーブが有するクロックにより計時された時刻である。
そして、マスタは、Syncメッセージを送信した時刻t1をスレーブに通知するために、時刻t1の時刻情報をFollow_Upメッセージに埋め込み、スレーブに送信する。スレーブは、Follow_Upメッセージを受信した時点で、時刻t1,t2の時刻情報を有することになる。
次に、スレーブは、Delay_Reqメッセージをマスタに送信すると、Delay_Reqメッセージを送信した時刻t3を記録する。なお、時刻t3は、スレーブが有するクロックにより計時された時刻である。
マスタは、Delay_Reqメッセージを受信すると、Delay_Reqメッセージを受信した時刻t4を記録する。なお、時刻t4は、マスタが有するクロックにより計時された時刻である。
そして、マスタは、Delay_Reqメッセージを受信した時刻t4をスレーブに通知するために、時刻t4の時刻情報をDelay_Respメッセージに埋め込み、スレーブに送信する。スレーブは、Delay_Respメッセージを受信した時点で、時刻t1乃至t4の時刻情報を有することになる。
このように、図1に示される一連のパケットがマスタとスレーブの間で送受信されることで、スレーブは、時刻t1乃至t4の4つの時刻情報を取得することができる。スレーブは、時刻t1乃至t4の時刻情報を用いることによって、自機が有するクロックをマスタのクロックに同期させることができる。なお、以下では、上述した一連のパケットのうち、SyncメッセージとDelay_Reqメッセージを特にPTPメッセージと称する。
以下、時刻t1乃至t4の時刻情報に基づいてスレーブのクロックをマスタのクロックに同期させるための演算手法について、具体的に説明する。
先ず、当該演算手法の前提として、次のような定義がなされる。即ち、マスタのクロックとスレーブのクロックのそれぞれにより計時される時刻のズレが、OFFSETと定義される。また、マスタからスレーブへのネットワーク伝搬遅延がDELAY(M-S)と、スレーブからマスタへのネットワーク伝搬遅延をDELAY(S-M)と、それぞれ定義される。
この場合、時刻t1と時刻t2の関係は次の式(1)により、時刻t3と時刻t4の関係は次の式(2)により、それぞれ表すことができる。
t2−t1=OFFSET + DELAY(M−S) ・・・(1)
t4−t3=−OFFSET + DELAY(S−M)・・・(2)
ここで、ネットワーク往復伝搬遅延が一定であるとすると、即ちDELAY(M−S)=DELAY(S−M)であるとすると、式(1)− 式(2)から次の式(3)が導き出せる。
OFFSET={(t2−t1)−(t4−t3)}/2・・・(3)
スレーブは、式(3)の左辺におけるOFFSETの値が0となるように、自機のクロックの位相と周波数のうち少なくとも一方を補正することで、自機のクロックをマスタのクロックに同期させることができる。
しかしながら、図2を用いて説明するように、マスタとスレーブとが含まれる実際のネットワーク上では、ネットワーク往復伝搬遅延が一定であることはまれである。よって、式(3)を利用することができない。
[マスタとスレーブが含まれるネットワーク]
図2は、マスタとスレーブが含まれるネットワークを示す図である。
なお、以下の図面に示される"PTP マスタ"と"PTP スレーブ"の各々は、PTPにおけるマスタとスレーブであることを明確に示している。しかしながら、以下では、説明の簡略上、"PTP マスタ"と"PTP スレーブ"を、各々マスタとスレーブと略記する。
図2に示されるように、マスタ11とスレーブ12が含まれるネットワーク上には、"Network Switch(1)"乃至"Network Switch(n)(nは2以上の任意の整数値)"として示されるネットワークスイッチ21−1乃至21−nが配置される。また、当該ネットワーク上には、"PTP Messages"として示されるPTPメッセージ以外にも、"Other Packets"として示される他のパケットが、多く流れている。
即ち、マスタ11とスレーブ12とが含まれる実際のネットワーク上では、多数のネットワークスイッチ21−1乃至21−nが配置されたり、多量の他のパケットが流れている。そのため、各ネットワークスイッチ21−1乃至21−n内でのキューイング処理等によって、ネットワーク伝搬遅延は変動する。したがって、ネットワーク往復伝搬遅延が一定となることはまれであり、上述の式(3)を利用することは困難となる。
そこで、ネットワーク往復伝搬遅延が一定でない場合でも、マスタ11とスレーブ12との間でクロック同期が可能となるように、PTPでは、トランスペアレントクロックという仕組みが提供されている。このトランスペアレントクロックの機能を有するネットワークスイッチがマスタ11とスレーブ12が含まれるネットワーク上に配置されると、ネットワーク往復伝搬遅延が一定でない場合でも、クロック同期が可能となる。
[トランスペアレントクロック]
図3は、IEEE1588-2008(PTPv2)に記載されている、トランスペアレントクロックの機能を有するネットワークスイッチを示す図である。
マスタ11とスレーブ12といったデバイスは、ネットワークスイッチ31を介して接続される。この場合、一のデバイスから送信されたパケットは、ネットワークスイッチ31を介して、他のデバイスにより受信される。そこで、以下、ネットワークスイッチ31からみて、パケットを送信してくるデバイスを送信元デバイスと称し、パケットを送信する相手であるデバイスを送信先デバイスと称する。
トランスペアレントクロックの機能を有するネットワークスイッチ31は、"Port-1"乃至"Port-n"で示される複数のポート41、"Residence Time bridge"で示される残留時間ブリッジ42、"Local clock"で示されるローカルクロック43を有している。
ネットワークスイッチ31は、送信元デバイスから受信したパケットを送信先デバイスに転送する。このとき、ネットワークスイッチ31に受信されたパケットがPTPメッセージである場合には、残留時間ブリッジ42は、次のような処理を実行する。
即ち、残留時間ブリッジ42は、送信元デバイスから送信されたPTPメッセージが所定のポート41で受信された時刻から、他のポート41で送信先デバイスに対して送信されるまでの時刻の間の時間(Residence Time)を、ローカルクロック43により計測して記録する。なお、当該時間(Residence Time)は、PTPメッセージがネットワークスイッチ31内に残留した時間であるため、以下、残留時間と称する。また、送信元デバイスからのPTPメッセージが受信される所定のポート41を、以下、受信側ポート41と称し、当該PTPメッセージが送信先デバイスに送信される他のポート41を、送信側ポート41と称する。残留時間ブリッジ42は、記録された残留時間を、図4を参照して後述するPTPメッセージのヘッダのうちの所定のフィールドに書き込む。
この場合、残留時間ブリッジ42は、次の2つの残留時間を所定のフィールドに書き込む。まず、送信元デバイスがマスタ11で、送信先デバイスがスレーブ12の場合、受信側ポート41はマスタ11に接続されたものであり、送信側ポート41はスレーブ12に接続されたものである。この場合には、マスタ11から送信されて受信側ポート41に受信されたPTPメッセージが、送信側ポート41からスレーブ12に送信されるまでの時間が、残留時間として所定のフィールドに書き込まれる。このときの残留時間を、特に、残留時間(M−S)と称する。
次に、送信元デバイスがスレーブ12で、送信先デバイスがマスタ11の場合、受信側ポート41はスレーブ12に接続されたものであり、送信側ポート41はマスタ11に接続されたものである。この場合には、スレーブ12から送信されて受信側ポート41に受信されたPTPメッセージが、送信側ポート41からマスタ11に送信されるまでの時間が、残留時間として所定のフィールドに書き込まれる。このときの残留時間を、特に、残留時間(S−M)と称する。
[PTPメッセージのヘッダ]
図4は、IEEE1588-2008(PTPv2)に記載されている、PTPメッセージのヘッダのフォーマットを示す図である。
残留時間ブリッジ42は、PTPメッセージのヘッダに含まれるフィールドのうち、図4中斜線で示される”correctionField”に、残留時間(M−S),(S−M)を書き込む。このとき、残留時間(M−S),(S−M)は、所定のフォーマットに従って変換されてから書き込まれる。
具体的には、ローカルクロック43によってナノ秒のオーダーで計測された残留時間(M−S),(S−M)は、2の16乗(=65536)倍の値に変換され、その変換後の値が、correctionFieldに書き込まれる。ここで、残留時間(M−S)の変換後の値が書き込まれたcorrectionFieldを、以下、correctionField(M−S)と称する。一方、残留時間(S−M)の変換後の値が書き込まれたcorrectionFieldを、以下、correctionField(S−M)と称する。
例えば、残留時間(M−S)が2.5ナノ秒(ns)である場合には、変換後の0x2800の値がcorrectionField(M−S)の値となる。
スレーブ12は、上述の式(1)の演算をするときに、式(1)からcorrectionField(M−S)の値を減算する。同様に、スレーブ12は、上述の式(2)の演算をするときに、式(2)からcorrectionField(S−M)の値を減算する。これにより、ネットワーク伝搬遅延は、実質的にケーブルでの遅延のみになる。ケーブルの遅延はネットワークの往復で等しいので、ネットワーク往復伝搬遅延が一定でない場合であっても、マスタ11とスレーブ12との間でクロック同期が可能となる。
しかしながら、この場合、トランスペアレントクロックという特殊な機能を有するネットワークスイッチ31が必要となる。したがって、既存のネットワークスイッチを、トランスペアレントクロックの機能を有するネットワークスイッチ31に交換しなければならない。したがって、ネットワークシステムの再構築が必要となる。また、現在のところ、トランスペアレントクロックの機能を有するネットワークスイッチ31は希少であり、1Gネットワークスイッチに関しては利用されていない。
そこで、本発明者等は、既存のネットワークスイッチの外部に接続することで、ネットワークシステム内でトランスペアレントクロックの機能を実現することが可能となる手法を開発した。このような手法を、以下、本技術の手法と称すると、本技術の手法を適用することで、既存のネットワークシステムを再構築することなくクロックの同期を容易に実現することができる。
[本技術が適用される情報処理システムの構成例]
図5は、本技術が適用される情報処理システムの構成例を示すブロック図である。
図5に示されるように、情報処理システム71は、マスタ91、スレーブ92−1乃至92−N(Nは1以上の任意の整数値)、ネットワークスイッチ93、及びクロック処理装置101が接続されて構成されている。
マスタ91は、基準となるクロックを有するデバイスである。
スレーブ92−1乃至92−Nは、マスタ91のクロックに同期させるクロックを有するデバイスである。なお、以下、スレーブ92−1乃至92−Nを個々に区別する必要がない場合、これらをまとめてスレーブ92と称する。
ネットワークスイッチ93は、例えばLayer2スイッチやLayer3スイッチ等であり、パケットの転送を行う。ネットワークスイッチ93は、トランスペアレントクロックの機能を有しない。
クロック処理装置101は、本技術が適用される情報処理装置であり、トランスペアレントクロックの機能を有する。なお、クロック処理装置101は、ネットワークスイッチの機能を有しない。クロック処理装置101の詳細については、図7を参照して後述する。
マスタ91、複数のスレーブ92、及び1つのネットワークスイッチ93によって、ネットワークシステムが構築されているとする。このネットワークシステムに対して、クロック処理装置101が接続されることにより、本技術が適用される情報処理システム71が構築される。具体的には、クロック処理装置101が、マスタ91及びスレーブ92と、ネットワークスイッチ93との間に接続される。換言すれば、マスタ91及びスレーブ92は、クロック処理装置101を介してネットワークスイッチ93と接続される。
これにより、マスタ91及びスレーブ92から見ると、ネットワークスイッチ93は、トランスペアレントクロックの機能を有するネットワークスイッチとして動作することになる。即ち、クロック処理装置101が接続されることにより、ネットワーク往復伝搬遅延が一定でない場合であっても、マスタ91とスレーブ92との間でクロック同期が可能となる。このとき、既存のネットワークシステムは、再構築せずにそのまま利用することが可能となる。つまり、既存のマスタ91、スレーブ92、及びネットワークスイッチ93からなるネットワークシステムに、クロック処理装置101を追加するだけで、新たなネットワークシステムを構築することができる。
[本技術が適用される情報処理システムの他の構成例]
既存のネットワークシステムへのクロック処理装置101の接続手法は、図5の例に限定されず、その他にも、例えば図6に示されるように接続する手法が採用されてもよい。
図6は、本技術が適用される情報処理システムの他の構成例を示すブロック図である。
図6に示されるように、情報処理システム81は、マスタ91、スレーブ92、ネットワークスイッチ93−1乃至93−N、及びクロック処理装置101−1乃至101−Nが接続されて構成されている。
マスタ91、スレーブ92、及びマスタ91とスレーブ92の間にカスケードに接続されている複数のネットワークスイッチ93によって、ネットワークシステムが構成されているとする。このネットワークシステムに対して、複数のクロック処理装置101が接続されることにより、本技術が適用される情報処理システム81が構築される。具体的には、各クロック処理装置101に対して対応するネットワークスイッチ93が接続され、各クロック処理装置101はカスケードに接続され、マスタ91及びスレーブ92は端部のクロック処理装置101−1,101−Nに接続される。
これにより、マスタ91及びスレーブ92から見ると、複数のネットワークスイッチ93のそれぞれは、トランスペアレントクロックの機能を有するネットワークスイッチとして動作することになる。即ち、複数のクロック処理装置101が接続されることにより、ネットワーク往復伝搬遅延が一定でない場合であっても、マスタ91とスレーブ92との間でクロック同期が可能となる。このとき、既存のネットワークシステムは、再構築せずにそのまま利用することが可能となる。
[クロック処理装置の構成]
図7は、クロック処理装置101の構成を示すブロック図である。
図7に示されるように、クロック処理装置101は、ポート111−1A乃至111−NA(Nは1以上の任意の整数値)、ポート111−1B乃至111−NB、タグ付加部112−1A乃至112−NA、タグ付加部112−1B乃至112−NB、PTPメッセージ判定部113、トランスペアレントクロック処理部114、PTPメッセージ情報記録部115、クロック部116、タグ判定部117、タグ削除部118−1A乃至118−NA、及びタグ削除部118−1B乃至118−NBから構成される。
ポート111−kA(kは、1乃至Nのうちの何れかの整数値)には、タグ付加部112−kAとタグ削除部118−kAが接続されている。同様に、ポート111−kBには、タグ付加部112−kBとタグ削除部118−kBが接続されている。なお、以下、ポート111−1A乃至111−NAやポート111−1B乃至111−NBを個々に区別する必要がない場合、これらをまとめてポート111と称する。また、以下、タグ付加部112−1A乃至112−NAやタグ付加部112−1B乃至112−NBを個々に区別する必要がない場合、これらをまとめてタグ付加部112と称する。また、以下、タグ削除部118−1A乃至118−NAやタグ削除部118−1B乃至118−NBを個々に区別する必要がない場合、これらをまとめてタグ削除部118と称する。
なお、図5の情報処理システム71においては、クロック処理装置101のポート111−kA(kは、1乃至Nのうちの何れかの整数値)側にマスタ91及び複数のスレーブ92が接続され、ポート111−kB側にネットワークスイッチ93が接続されるものとする。また、図6の情報処理システム81においては、クロック処理装置101のポート111−kA側にマスタ91、クロック処理装置101、スレーブ92のうち、いずれかの種類の2つのデバイスが接続され、ポート111−kB側にネットワークスイッチ93が接続されるものとする。
なお、例えば図6の例では、マスタ91から送信されたPTPメッセージに関するクロック処理装置101−2の受信側ポートには、直接的にはクロック処理装置101−1が接続される。しかし、PTPメッセージの伝送という点で考えれば、マスタ91から送信されたPTPメッセージがクロック処理装置101−1を介して受信されたことになる。したがって、クロック処理装置101−2の受信側ポートには、クロック処理装置101−1を介してマスタ91が接続されていると把握することができる。
逆に、マスタ91から送信されたPTPメッセージに関するクロック処理装置101−2の送信側ポートには、直接的にはクロック処理装置101−3が接続される。しかし、PTPメッセージの伝送という点で考えれば、クロック処理装置101−2から送信されたPTPメッセージは、クロック処理装置101−3(及びその後段のクロック処理装置101−4乃至101−N)を介してスレーブ92に送信されることになる。したがって、クロック処理装置101−2の送信側ポートには、クロック処理装置101−3等を介してスレーブ92が接続されていると把握することができる。このことは、他のクロック処理装置101についても同様である。
同様に、スレーブ92から送信されたPTPメッセージに関するクロック処理装置101−2の受信側ポートには、直接的にはクロック処理装置101−3が接続される。しかし、PTPメッセージの伝送という点で考えれば、スレーブ92から送信されたPTPメッセージがクロック処理装置101−3(及びその前段のクロック処理装置101−4乃至101−N)を介して受信されたことになる。したがって、クロック処理装置101−2の受信側ポートには、クロック処理装置101−3等を介してスレーブ92が接続されていると把握することができる。
逆に、スレーブ92から送信されたPTPメッセージに関するクロック処理装置101−2の送信側ポートには、直接的にはクロック処理装置101−1が接続される。しかし、PTPメッセージの伝送という点で考えれば、クロック処理装置101−2から送信されたPTPメッセージは、クロック処理装置101−1を介してマスタ91に送信されることになる。したがって、クロック処理装置101−2の送信側ポートには、クロック処理装置101−1を介してマスタ91が接続されていると把握することができる。このことは、他のクロック処理装置101についても同様である。
したがって、以下、クロック処理装置101の説明をする場合には、他のクロック処理装置101を介する場合も含めて、受信側ポート及び送信側ポートのうち、一方にはマスタ91が接続され、他方にはスレーブ92が接続されているとする。すなわち、以下では、図5の情報処理システム71についてのみ説明するが、図6の情報処理システム81についても同様である。
ポート111−kAとポート111−kBは、対になって設けられている。即ち、マスタ91またはスレーブ92から送信され、ポート111−kAにより受信されたパケットは、対のポート111−kBからネットワークスイッチ93に送信される。同様に、ネットワークスイッチ93から送信され、ポート111−kBにより受信されたパケットは、対のポート111−kAからマスタ91またはスレーブ92に送信される。
ポート111−kAは、マスタ91またはスレーブ92から受信したパケットをタグ付加部112に供給する。
タグ付加部112−kAは、ポート111−kAから供給されたパケットに、当該ポート111−kAを識別可能なタグを付加する。タグが付加されたパケットは、PTPメッセージ判定部113に供給される。
PTPメッセージ判定部113は、タグ付加部112から供給されたパケットが、PTPメッセージであるか否か、即ち、SyncメッセージまたはDelay_Reqメッセージであるか否かを判定する。このとき、PTPメッセージ判定部113のこの判定は、当該パケットのIPアドレス、ポート番号、及び当該パケットに含まれるPTPヘッダのメッセージタイプに基づいて行われる。PTPメッセージであると判定されたパケットは、トランスペアレントクロック処理部114に供給され、それ以外のパケットはタグ判定部117に供給される。
トランスペアレントクロック処理部114は、PTPメッセージ判定部113から供給されたパケット(即ち、PTPメッセージ)に対してトランスペアレントクロック処理を施す。つまり、トランスペアレントクロック処理部114は、当該パケットにトランスペアレントクロック処理を施すことによって、マスタ91からスレーブ92へのネットワーク伝搬遅延の値(correctionField(M−S)の値)と、スレーブ92からマスタ91へのネットワーク伝搬遅延の値(correctionField(S−M)の値)を演算する。なお、トランスペアレントクロック処理の詳細については、図8のステップS4乃至S6等を参照して後述する。トランスペアレントクロック処理が施されたパケットは、タグ判定部117に供給される。
PTPメッセージ情報記録部115は、トランスペアレントクロック処理部114の指示により、PTPメッセージのパラメータや受信時刻を記録する。
クロック部116は、時刻を計時する。
タグ判定部117は、PTPメッセージ判定部113またはトランスペアレントクロック処理部114から供給されたパケットに付加されたタグから、当該パケットが送信されるポート111−kBを判定する。タグ判定部117は、当該パケットを、判定されたポート111−kBに接続されているタグ削除部118−kBに供給する。
タグ削除部118−kBは、タグ判定部117から供給されたパケットからタグを削除する。タグが削除されたパケットは、タグ判定部117により判定されたポート111−kBに供給される。
ポート111−kBは、タグ削除部118から供給されたパケットを、ネットワークスイッチ93に送信する。
ネットワークスイッチ93は、受信したパケットをポート111−mB(mはkと異なる1乃至Nのうちの任意の整数値)に送信する。ポート111−mBにより受信されたパケットは、対のポート111−mAからマスタ91またはスレーブ92に送信される。なお、ポート111−mBからポート111−mAまでのクロック処理装置101におけるタグ付加部112−mB、PTPメッセージ判定部113、トランスペアレントクロック処理部114、PTPメッセージ情報記録部115、クロック部116、タグ判定部117、タグ削除部118−mBの処理は、上述した場合と同様であり、その説明は繰り返しになるので省略する。
[基本処理]
次に、このような構成のクロック処理装置101が実行する処理(以下、基本処理と称する)の例について説明する。
図8は、基本処理の流れの一例を説明するフローチャートである。パケットは、送信元デバイスであるマスタ91とスレーブ92のうち、一方から送信されることで伝送が開始されて、ネットワークスイッチ93を介して伝送され、送信先デバイスである他方により受信されることで伝送が終了する。なお、以下の例では、送信元デバイスをマスタ91とし、送信先デバイスをスレーブ92として説明する。
ステップS1において、ポート111−kAは、マスタ91からパケットを受信する。受信されたパケットは、当該ポート111−kAに接続されたタグ付加部112−kAに供給される。
ステップS2において、タグ付加部112−kAは、タグを付加する。つまり、パケットが受信されたポート111−kAを識別可能なタグが、当該パケットに付加される。タグが付加されたパケットは、PTPメッセージ判定部113に供給される。
ステップS3において、PTPメッセージ判定部113は、受信したパケットが、PTPメッセージ(即ち、SyncメッセージまたはDelay_Reqメッセージ)であるかを判定する。
受信したパケットが、PTPメッセージでない場合、ステップS3においてNOであると判定されて、処理はステップS7に進む。これにより、PTPメッセージでないと判定されたパケットは、タグ判定部117に供給される。なお、ステップS7以降の処理については後述する。
これに対して、受信したパケットが、PTPメッセージである場合、ステップS3においてYESであると判定されて、処理はステップS4に進む。これにより、PTPメッセージであると判定されたパケットは、トランスペアレントクロック処理部114に供給される。
ステップS4において、トランスペアレントクロック処理部114は、PTPメッセージ判定部113から供給されたPTPメッセージが、受信済みのPTPメッセージであるかを判定する。ここで、受信済みとは、前回までの後述するステップS5の処理により、PTPメッセージのパラメータがPTPメッセージ情報記録部115に記録されていることを意味する。したがって、送信元デバイスからトランスペアレントクロック処理部114にPTPメッセージが伝送されてきたタイミングでは、当該PTPメッセージはPTPメッセージ情報記録部115に記録されていないので、ステップS4においてNOであると判定されて、処理はステップS5に進む。
ステップS5において、PTPメッセージ情報記録部115は、トランスペアレントクロック処理部114の指示に基づいて、PTPメッセージのパラメータと、PTPメッセージの受信時刻を対応付けて記録する。これにより、以後、PTPメッセージは受信済みとして取り扱われることになる。なお、PTPメッセージの受信時刻は、クロック部116から取得した現在時刻とされる。また、PTPメッセージのパラメータには、IPアドレス、ポート番号、PTPヘッダのメッセージタイプ、PTPドメイン番号、及びPTPシーケンスIDが含まれる。その後、PTPメッセージはタグ判定部117に供給されて、処理はステップS7に進む。
ステップS7において、タグ判定部117は、PTPメッセージ判定部113またはトランスペアレントクロック処理部114から供給されたパケットに付加されたタグから、当該パケットを送信するポート111を判別する。即ち、タグ判定部117は、パケットに付加されたタグから識別されるポート111−kAと対になって設けられているポート111−kBをパケットを送信するポート111として判別する。タグ判定部117は、パケットを、判別されたポート111−kBに接続されたタグ削除部118−kBに供給する。
ステップS8において、タグ削除部118−kBは、供給されたパケットに付加されたタグを削除する。タグが削除されたパケットは、ポート111−kBに供給される。
ステップS9において、ポート111−kBは、パケットをネットワークスイッチ93に送信する。これにより、基本処理は終了となる。
このように、パケットが送信元デバイスであるマスタ91からクロック処理装置101を通過してネットワークスイッチ93まで伝送される間に、上述のような基本処理が1回実行される。また、ネットワークスイッチ93に伝送されたパケットが、再度クロック処理装置101を通過して送信先デバイスであるスレーブ92に伝送される間に、次のような基本処理が1回実行される。
即ち、ネットワークスイッチ93は、受信したパケットをポート111−mB(mはkと異なる1乃至Nのうちの任意の整数値)に送信する。
すると、基本処理のステップS1において、ポート111−mBは、ネットワークスイッチ93からパケットを受信する。受信されたパケットは、当該ポート111−mBに接続されたタグ付加部112−mBに供給される。
ステップS2において、タグ付加部112−mBは、パケットが受信されたポート111−mBを識別可能なタグを、当該パケットに付加する。タグが付加されたパケットは、PTPメッセージ判定部113に供給される。
ステップS3において、PTPメッセージ判定部113は、受信したパケットが、PTPメッセージ(即ち、SyncメッセージまたはDelay_Reqメッセージ)であるかを判定する。
PTPメッセージでない場合、ステップS3においてNOであると判定されて、処理はステップS7に進む。これにより、PTPメッセージでないと判定されたパケットは、タグ判定部117に供給される。なお、ステップS7以降の処理については後述する。
これに対して、PTPメッセージである場合、ステップS3においてYESであると判定されて、処理はステップS4に進む。これにより、PTPメッセージであると判定されたパケットは、トランスペアレントクロック処理部114に供給される。
ステップS4において、トランスペアレントクロック処理部114は、PTPメッセージ判定部113から供給されたPTPメッセージが、受信済みのPTPメッセージであるかを判定する。即ちこの場合、上述したように、前回のステップS5の処理により、当該PTPメッセージのパラメータはすでにトランスペアレントクロック処理部114に受信され、PTPメッセージ情報記録部115に記録されている。したがって、ステップS4においてYESであると判定されて、処理はステップS6に進む。
ステップS6において、トランスペアレントクロック処理部114は、PTPメッセージのヘッダに含まれるcorrectionFieldの値を更新する。即ち、トランスペアレントクロック処理部114は、クロック部116から取得した現在時刻から、PTPメッセージ情報記録部115に記録されている受信時刻を減算することで、残留時間を演算する。トランスペアレントクロック処理部114は、演算された残留時間を所定のフォーマットに従って変換して、変換後の値でcorrectionFieldの値を更新する。その後、PTPメッセージはタグ判定部117に供給されて、処理はステップS7に進む。
ステップS7において、タグ判定部117は、PTPメッセージ判定部113またはトランスペアレントクロック処理部114から供給されたパケットに付加されたタグから、当該パケットを送信するポート111を判別する。即ち、タグ判定部117は、パケットに付加されたタグから識別されるポート111−mBと対になって設けられているポート111−mAを送信するポート111として判別する。タグ判定部117は、パケットを、判別されたポート111−mAに接続されたタグ削除部118−mAに供給する。
ステップS8において、タグ削除部118−mAは、供給されたパケットに付加されたタグを削除する。タグが削除されたパケットは、ポート111−mAに供給される。
ステップS9において、ポート111−mAは、パケットをスレーブ92に送信する。
以上により、基本処理は終了する。なお、トランスペアレントクロック処理部114により実行されるステップS4乃至S6の処理を、特にトランスペアレントクロック処理と称する。また、上述の基本処理は、送信元デバイスをマスタ91とし、送信先デバイスをスレーブ92として説明したが、送信元デバイスをスレーブ92とし、送信先デバイスをマスタ91とした場合も同様である。
図5の情報処理システム71及び図6の情報処理システム81において、スレーブ92は、クロック処理装置101が実行する以上の基本処理により送受信されるパケットを用いて、クロックをマスタ91のクロックに同期させることができる。このような基本処理に基づいて、クロック処理装置101に接続されたスレーブ92が、クロック同期を実行するまでの一連の処理をクロック同期処理と称する。
[情報処理システム71の詳細な構成]
図9は、情報処理システム71の詳細な構成を示す図である。なお、説明の簡略化のため、図9に示される情報処理システム71には、図5の情報処理システム71に含まれる複数のスレーブ92のうち、1つのスレーブ92のみが図示されている。
マスタ91は、クロック処理装置101のポート111−1Aに接続され、スレーブ92は、ポート111−2Aに接続されている。また、ネットワークスイッチ93は、クロック処理装置101のポート111−1B乃至NBに接続されている。
以下、ポート111の関係について説明する。上述したように、送信元デバイスから送信されたPTPメッセージは、複数のポート111のうち受信側ポートにより受信される。以下、このような受信側ポートをデバイス受信側ポートと称する。次に、当該PTPメッセージは、クロック処理装置101内のいくつかの構成要素で処理された後、複数のポート111のうち、受信側ポートと対となるポートから、ネットワークスイッチ93に送信される。以下、このようなポートをスイッチ送信側ポートと称する。
そして、ネットワークスイッチ93から送信されたPTPメッセージは、複数のポート111のうち、送信側ポートと対となるポートにおいて受信される。以下、このようなポートをスイッチ受信側ポートと称する。最終的に、当該PTPメッセージは、クロック処理装置101内のいくつかの構成要素で処理された後、複数のポート111のうち送信側ポートから送信先デバイスに送信される。以下、このような送信側ポートをデバイス送信側ポートと称する。
図9において、送信元デバイスがマスタ91であり、送信先デバイスがスレーブ92である場合のポート111の関係は次のとおりである。即ち、ポート111−1Aがデバイス受信側ポートになり、ポート111−1Bがスイッチ送信側ポートになる。また、ポート111−2Aがデバイス送信側ポートであり、ポート111−2Bがスイッチ受信側ポートである。具体的には、マスタ91から送信されたPTPメッセージは、デバイス受信側ポート111−1Aに受信され、クロック処理装置101内のいくつかの構成要素で処理された後、スイッチ送信側ポート111−1Bから、ネットワークスイッチ93に送信される。そして、ネットワークスイッチ93から送信されたPTPメッセージは、スイッチ受信側ポート111−2Bにおいて受信され、クロック処理装置101内のいくつかの構成要素で処理された後、デバイス送信側ポート111−2Aからスレーブ92に送信される。
なお、ネットワークスイッチ93は、アドレス(IPアドレスやMACアドレス)とポート番号が対になっている表を予め記憶しており、当該表を用いてパケットの送信先のポート111を判断する。したがって、ネットワークスイッチ93から送信されたPTPメッセージが、複数のスイッチ受信側ポート111−1B乃至NBのうちの、スレーブ92が接続されているデバイス送信側ポート111−2Aと対になっているスイッチ受信側ポート111−2Bに送信される。
一方、図9において、送信元デバイスがスレーブ92であり、送信先デバイスがマスタ91である場合のポート111の関係は次のとおりである。即ち、ポート111−2Aがデバイス受信側ポートになり、ポート111−2Bがスイッチ送信側ポートになる。また、ポート111−1Aがデバイス送信側ポートであり、ポート111−1Bがスイッチ受信側ポートである。具体的には、スレーブ92から送信されたPTPメッセージは、デバイス受信側ポート111−2Aに受信され、クロック処理装置101内のいくつかの構成要素で処理された後、スイッチ送信側ポート111−2Bから、ネットワークスイッチ93に送信される。そして、ネットワークスイッチ93から送信されたPTPメッセージは、スイッチ受信側ポート111−1Bにおいて受信され、クロック処理装置101内のいくつかの構成要素で処理された後、デバイス送信側ポート111−1Aからマスタ91に送信される。
このような構成の情報処理システム71において、スレーブ92が実行するクロック同期処理について図10と図11を参照して説明する。図10は、マスタ91とスレーブ92の間で送受信されるパケットの流れを示す図である。図11は、スレーブ92が実行するクロック同期処理の流れを示すフローチャートである。
図11に示されるクロック同期処理において、スレーブ92が受信するパケットとその順番は、図10を参照することで容易に理解することが可能である。即ち、図10の左側にはマスタ91の時間軸(縦方向の矢印)が示され、右側にはスレーブ92の時間軸(縦方向の矢印)が示されている。
図11のステップS21において、スレーブ92は、Syncメッセージを受信する。即ち、マスタ91が、時刻t1にSyncメッセージを送信すると、スレーブ92は、時刻t2にSyncメッセージを受信する。このSyncメッセージの例については図12と図13を参照して後述する。
ステップS22において、スレーブ92は、Follow_Upメッセージを受信する。即ち、マスタ91は、Syncメッセージを送信した時刻t1をスレーブ92に通知するために、時刻t1の時刻情報を埋め込んだFollow_Upメッセージを、スレーブ92に送信する。
これにより、スレーブ92は、時刻t1,t2の時刻情報を取得することができる。なお、詳細については後述するが、スレーブ92は、Syncメッセージを受信した時点(ステップS21)で、マスタ91からスレーブ92へのネットワーク伝搬遅延の値(SyncメッセージのcorrectionField(M−S)の値)を取得することができる。
ステップS23において、スレーブ92は、時刻t3にDelay_Reqメッセージを送信する。すると、マスタ91は、時刻t4にDelay_Reqメッセージを受信する。このDelay_Reqメッセージの例については図14と図15を参照して後述する。
ステップS24において、スレーブ92は、Delay_Respメッセージを受信する。即ち、マスタ91が、Delay_Reqメッセージを受信した時刻t4及びDelay_ReqメッセージのcorrectionFieldの値をスレーブ92に通知するために、時刻t4の時刻情報及びcorrectionFieldの値を埋め込んだDelay_Respメッセージを、スレーブ92に送信する。
これにより、スレーブ92は、時刻t3,t4の時刻情報を取得することができる。なお、詳細については後述するが、スレーブ92は、Delay_Respメッセージを受信した時点(ステップS24)で、スレーブ92からマスタ91へのネットワーク伝搬遅延の値(Delay_ReqメッセージのcorrectionField(S−M)の値)を取得することができる。
ステップS25において、スレーブ92は、クロックを同期させる。即ち、スレーブ92は、ステップS21乃至S24で取得した時刻t1乃至t4の時刻情報、マスタ91からスレーブ92間へのネットワーク伝搬遅延の値(SyncメッセージのcorrectionField(M−S)の値)、及びスレーブ92からマスタ91への間のネットワーク伝搬遅延の値(Delay_ReqメッセージのcorrectionField(S−M)の値)を用いてクロック同期を実行する。
これにより、クロック同期処理は終了する。
なお、上述の例では、マスタ91は、時刻t1をスレーブ92に通知するために、Follow_Upメッセージをスレーブ92に送信したが、時刻t1をスレーブ92に通知する手法はこれに限定されない。即ち、マスタ91は、Syncメッセージに時刻t1の時刻情報を含めてスレーブ92に送信するようにしてもよい。
[PTPメッセージの具体例]
次に、クロック同期処理(図11)により送受信されるPTPメッセージの具体例について、図12乃至図15を参照して説明する。具体的には、図12と図13を用いて、クロック同期処理のステップS21において、マスタ91から送信されてスレーブ92により受信されるSyncメッセージの具体例について説明する。次に、図14と図15を用いて、クロック同期処理のステップS23において、スレーブ92から送信されてマスタ91により受信されるDelay_Reqメッセージの具体例について説明する。なお、これらのPTPメッセージは、クロック処理装置101により実行される基本処理(図8)により送受信される。
[マスタ91からネットワークスイッチ93までのSyncメッセージ]
図12は、クロック同期処理のステップS21において、マスタ91から送信されてスレーブ92により受信されるSyncメッセージのうち、マスタ91からネットワークスイッチ93までのSyncメッセージの具体例について説明する図である。
基本処理のステップS1において、マスタ91が、時刻t1にSyncメッセージを送信すると、クロック処理装置101のデバイス受信側ポート111−1Aは、Syncメッセージを受信する。図12の状態C1は、基本処理のステップS1において、デバイス受信側ポート111−1Aにより受信されたSyncメッセージを示している。
状態C1に示されるように、Syncメッセージ401には、ネットワークプロトコルヘッダ411とPTPヘッダ412が含まれる。
ネットワークプロトコルヘッダ411には、「DST IP address」、「Src IP Address」、「Dst port」、「Src port」が含まれる。
「DST IP address」は、送信先のIPアドレスを示すパラメータであって、この例では「224.0.1.129」で示される。
「Src IP Address」は、送信元のIPアドレスを示すパラメータであって、この例では、「192.168.0.10」で示される。
「Dst port」は、送信先のポート番号を示すパラメータであって、この例では「319」で示される。
「Src port」は、送信元のポート番号を示すパラメータであって、この例では「20000」で示される。
PTPヘッダ412には、「messageType」、「domainNumber」、「correctionField」、「sequenceID」が含まれる。
「messageType」はPTPメッセージのタイプを示すパラメータであって、この例では、「0(Sync)」で示される。即ち、PTPメッセージのタイプがSyncメッセージであることが示される。
「domainNumber」はPTPメッセージのドメイン番号を示すパラメータであって、この例では、「10」で示される。なお、「domainNumber」は、情報処理システム71内に複数のマスタ91が存在する場合に、スレーブ92が、同期させるクロックを有するマスタ91を識別するためのパラメータである。
「correctionField」は、PTPメッセージの残留時間が所定のフォーマットに従って変換された値が記述されるフィールドであり、PTPメッセージがマスタ91からスレーブ92に到達すると残留時間(M−S)が変換されたcorrectionField(M−S)が記述される。ただし、図12の段階では、PTPメッセージは、マスタ91からネットワークスイッチ93に到達する途中の段階でありスレーブ92まで到達していないので、初期値として0が記述されている。
「sequenceID」は、PTPメッセージのシーケンスIDを示すパラメータであって、この例では、「100」で示される。なお、「sequenceID」は、PTPメッセージが送信される毎に変化するパラメータである。
なお、上述したネットワークプロトコルヘッダ411とPTPヘッダ412に含まれるパラメータを合わせて、適宜Syncメッセージ401のパラメータと称する。
受信側ポート111−1Aにより受信された、このような構成のSyncメッセージ401は、タグ付加部112−1Aに供給される。
基本処理のステップS2において、タグ付加部112−1Aは、受信側ポート111−1Aを識別可能なタグを付加する。状態C2は、基本処理のステップS2において、タグ付加部112−1Aによりタグが付加されたSyncメッセージ401を示している。
状態C2に示されるように、Syncメッセージ401には、ネットワークプロトコルヘッダ411とPTPヘッダ412に加えて、タグ413が付加される。タグ413は、Syncメッセージ401が受信された受信側ポート111−1Aを識別可能であり、この例では「Port1A-Port1B」で示される。即ち、タグ413は、Syncメッセージ401が、デバイス受信側ポート111−1Aにより受信されてスイッチ送信側ポート111−1Bからネットワークスイッチ93に送信されることを示している。
タグ413が付加されたSyncメッセージ401は、PTPメッセージ判定部113に供給される。
基本処理のステップS3において、PTPメッセージ判定部113は、受信したSyncメッセージ401が、PTPメッセージ(即ち、SyncメッセージまたはDelay_Reqメッセージ)であるかを判定する。
PTPメッセージ判定部113は、PTPヘッダ412の「messageType」が「0(sync)」であることから、Syncメッセージ401がSyncメッセージであること、即ちPTPメッセージであることを判定する。PTPメッセージであると判定されたSyncメッセージ401は、トランスペアレントクロック処理部114に供給される。
基本処理のステップS4において、トランスペアレントクロック処理部114は、供給されたSyncメッセージ401が、受信済みのPTPメッセージであるか、即ちSyncメッセージ401のパラメータP1が、PTPメッセージ情報記録部115に記録されているかを判定する。
いまの場合、Syncメッセージ401のパラメータP1は、まだPTPメッセージ情報記録部115に記録されていない。したがって、トランスペアレントクロック処理部114は、Syncメッセージ401が、受信済みのPTPメッセージでないと判定する。
基本処理のステップS5において、トランスペアレントクロック処理部114は、PTPメッセージ情報記録部115に、Syncメッセージ401のパラメータと受信時刻を対応付けて記録させる。
具体的には、PTPメッセージ情報記録部115は、状態C2に示されるパラメータP1(即ち、ネットワークプロトコルヘッダ411とPTPヘッダ412に含まれるパラメータ)とクロック部116から取得した現在時刻CT1を受信時刻CT1として、これらを対応付けて記録する。なお、この例では、受信時刻CT1は「Current Time(10:00:00)」で示されるように、「10:00:00」であるとする。
その後、Syncメッセージ401はタグ判定部117に供給される。
基本処理のステップS7において、タグ判定部117は、Syncメッセージ401に付加されたタグ413から、Syncメッセージ401を送信するポート111を判別する。いまの場合、「Port1A-Port1B」で示されるタグ413から、Syncメッセージ401を送信するポート111としてスイッチ送信側ポート111−1Bが判別される。タグ判定部117は、Syncメッセージ401を、判別されたスイッチ送信側ポート111−1Bに接続されたタグ削除部118−1Bに供給する。
基本処理のステップS8において、タグ削除部118−1Bは、供給されたSyncメッセージ401に付加されたタグ413を削除する。状態C3は、基本処理のステップS8において、タグ削除部118−1Bによりタグ413が削除されたSyncメッセージ401を示している。タグ413が削除されたSyncメッセージ401は、スイッチ送信側ポート111−1Bに供給される。
基本処理のステップS9において、スイッチ送信側ポート111−1Bは、Syncメッセージ401をネットワークスイッチ93に送信する。これにより、ネットワークスイッチ93は、Syncメッセージ401を受信する。
[ネットワークスイッチ93からスレーブ92までのSyncメッセージ]
図13は、クロック同期処理のステップS21において、マスタ91から送信されてスレーブ92により受信されるSyncメッセージのうち、ネットワークスイッチ93からスレーブ92までのSyncメッセージの具体例について説明する図である。
基本処理のステップS1において、ネットワークスイッチ93が、受信したSyncメッセージ401を送信すると、クロック処理装置101のスイッチ受信側ポート111−2Bは、Syncメッセージ401を受信する。図13の状態C11は、基本処理のステップS1において、スイッチ受信側ポート111−2Bにより受信されたSyncメッセージ401を示している。
スイッチ受信側ポート111−2Bにより受信されたSyncメッセージ401は、タグ付加部112−2Bに供給される。
基本処理のステップS2において、タグ付加部112−2Bは、スイッチ受信側ポート111−2Bを識別可能なタグを付加する。状態C12は、基本処理のステップS2において、タグ付加部112−2Bによりタグが付加されたSyncメッセージ401を示している。
状態C12に示されるように、Syncメッセージ401には、ネットワークプロトコルヘッダ411とPTPヘッダ412に加えて、タグ414が付加される。タグ414は、Syncメッセージ401が受信されたスイッチ受信側ポート111−2Bを識別可能であり、この例では「Port2B-Port2A」で示される。即ち、タグ414は、Syncメッセージ401が、スイッチ受信側ポート111−2Bにより受信されて、デバイス送信側ポート111−2Aからスレーブ92に送信されることを示している。
タグ414が付加されたSyncメッセージ401は、PTPメッセージ判定部113に供給される。
基本処理のステップS3において、PTPメッセージ判定部113は、受信したSyncメッセージ401が、PTPメッセージ(即ち、SyncメッセージまたはDelay_Reqメッセージ)であるかを判定する。
この例では、PTPメッセージ判定部113は、PTPヘッダ412の「messageType」が「0(sync)」であることから、Syncメッセージ401がSyncメッセージであること、即ちPTPメッセージであることを判定する。PTPメッセージであると判定されたSyncメッセージ401は、トランスペアレントクロック処理部114に供給される。
基本処理のステップS4において、トランスペアレントクロック処理部114は、供給されたSyncメッセージ401が、受信済みのPTPメッセージであるか、即ちSyncメッセージ401のパラメータP1が、PTPメッセージ情報記録部115に記録されているかを判定する。
いまの場合、図13に示されるように、Syncメッセージ401のパラメータP1が、既にPTPメッセージ情報記録部115に記録されている。したがって、トランスペアレントクロック処理部114は、Syncメッセージ401が、受信済みのPTPメッセージであると判定する。
基本処理のステップS6において、トランスペアレントクロック処理部114は、Syncメッセージ401のPTPヘッダ412に含まれるcorrectionFieldの値を更新する。
具体的には、トランスペアレントクロック処理部114は、図13に示されるように、クロック部116から現在時刻CT2を取得する。なお、この例では、現在時刻CT2は「Current Time(10:00:00+2.5ns)」で示されるように、「10:00:00+2.5ns」であるとする。
そして、トランスペアレントクロック処理部114は、クロック部116から取得した現在時刻CT2から、PTPメッセージ情報記録部115に記録されている受信時刻CT1を減算することで、残留時間(M−S)を演算する。さらに、トランスペアレントクロック処理部114は、演算されたを所定のフォーマットに従って変換して、変換後の値でcorrectionFieldの値を更新する(つまり、correctionField(M−S)の値になる)。
具体的には、図13の残留時間情報CF1に「Residence Time=10:00:00+2.5ns-10:00:00=2.5ns」で示されるように、残留時間(M−S)は「2.5ns」と演算される。また、図13の残留時間情報CF1に「correctionField=2.5ns×2^16=0x28000」で示されるように、演算された残留時間(M−S)である「2.5ns」は、所定のフォーマットに従って変換され、変換後の値である「0x28000」で、correctionFieldの値が更新される。
状態C13は、基本処理のステップS6において、トランスペアレントクロック処理部114によりcorrectionFieldの値が更新されたSyncメッセージ401を示している。即ち、correctionFieldの値が「0」から「0x28000」に更新されている。
その後、Syncメッセージ401はタグ判定部117に供給される。
基本処理のステップS7において、タグ判定部117は、Syncメッセージ401に付加されたタグ414から、Syncメッセージ401を送信するポート111を判別する。いまの場合、「Port2B-Port2A」で示されるタグ414から、Syncメッセージ401を送信するポート111としてデバイス送信側ポート111−2Aが判別される。タグ判定部117は、Syncメッセージ401を、判別されたデバイス送信側ポート111−2Aに接続されたタグ削除部118−2Aに供給する。
基本処理のステップS8において、タグ削除部118−2Aは、供給されたSyncメッセージ401に付加されたタグ414を削除する。状態C14は、基本処理のステップS8において、タグ削除部118−2Aによりタグ414が削除されたSyncメッセージ401を示している。タグ414が削除されたSyncメッセージ401は、デバイス送信側ポート111−2Aに供給される。
基本処理のステップS9において、デバイス送信側ポート111−2Aは、Syncメッセージ401をスレーブ92に送信する。
これにより、スレーブ92は、Syncメッセージ401を受信する。即ち、クロック同期処理のステップS21において、時刻t1にマスタ91から送信されたSyncメッセージ401が、時刻t2にスレーブ92により受信される。
次に、クロック同期処理のステップS22において、スレーブ92は、Follow_Upメッセージを受信する。即ち、マスタ91が、Syncメッセージを送信した時刻t1をスレーブ92に通知するために、時刻t1の時刻情報を埋め込んだFollow_Upメッセージを、スレーブ92に送信する。
Follow_Upメッセージについても、クロック処理装置101により実行される基本処理(図8)によりマスタ91からスレーブ92に送信される。したがって、その説明は繰り返しになるので省略する。しかしながら、Follow_Upメッセージは、PTPメッセージではないため、基本処理のステップS3においてNOであると判定され、ステップS4乃至S6のトランスペアレントクロック処理は実行されない。
クロック同期処理のステップS21,S22により、スレーブ92は、時刻t1,t2の時刻情報、及びマスタ91からスレーブ92へのネットワーク伝搬遅延の値(SyncメッセージのcorrectionField(M−S)の値)を取得することができる。
[スレーブ92からネットワークスイッチ93までのDelay_Reqメッセージ]
次に、クロック同期処理のステップS23において、スレーブ92から送信されてマスタ91により受信されるDelay_Reqメッセージの具体例について説明する。
図14は、クロック同期処理のステップS23において、スレーブ92から送信されてマスタ91により受信されるDelay_Reqメッセージのうち、スレーブ92からネットワークスイッチ93までのDelay_Reqメッセージの具体例について説明する図である。
基本処理のステップS1において、スレーブ92が、時刻t3にDelay_Reqメッセージを送信すると、クロック処理装置101のデバイス受信側ポート111−2Aは、Delay_Reqメッセージを受信する。図14の状態C21は、基本処理のステップS1において、デバイス受信側ポート111−2Aにより受信されたDelay_Reqメッセージを示している。
状態C21に示されるように、Delay_Reqメッセージ421には、ネットワークプロトコルヘッダ431とPTPヘッダ432が含まれる。なお、Delay_Reqメッセージ421の構成のうち、Syncメッセージ401と同一の構成については、繰り返しになるため、適宜その説明を省略する。
ネットワークプロトコルヘッダ431には、「DST IP address」、「Src IP Address」、「Dst port」、「Src port」が含まれる。
「DST IP address」は、Syncメッセージ401のネットワークプロトコルヘッダ411と同様に、「224.0.1.129」で示される。
「Src IP Address」は、この例では「192.168.0.20」で示される。
「Dst port」は、Syncメッセージ401のネットワークプロトコルヘッダ411と同様に、「319」で示される。
「Src port」は、この例では「30000」で示される。
PTPヘッダ432には、「messageType」、「domainNumber」、「correctionField」、「sequenceID」が含まれる。
「messageType」は、この例では「1(Delay_req)」で示される。即ち、PTPメッセージのタイプがDelay_Reqメッセージであることが示される。
「domainNumber」は、Syncメッセージ401のPTPヘッダ412と同様に、「10」で示される。
「correctionField」は、PTPメッセージがスレーブ92からマスタ91に到達すると残留時間(S−M)が変換されたcorrectionField(S−M)が記述される。ただし、図14の段階では、PTPメッセージは、スレーブ92からネットワークスイッチ93に到達する途中の段階でありマスタ91まで到達していないので、初期値として0が記述されている。
「sequenceID」は、この例では「200」で示される。
なお、上述したネットワークプロトコルヘッダ431とPTPヘッダ432に含まれるパラメータを合わせて、適宜Delay_Reqメッセージ421のパラメータと称する。
受信側ポート111−2Aにより受信された、このような構成のDelay_Reqメッセージ421は、タグ付加部112−2Aに供給される。
基本処理のステップS2において、タグ付加部112−2Aは、デバイス受信側ポート111−2Aを識別可能なタグを付加する。状態C22は、基本処理のステップS2において、タグ付加部112−2Aによりタグが付加されたDelay_Reqメッセージ421を示している。
状態C22に示されるように、Delay_Reqメッセージ421には、ネットワークプロトコルヘッダ431とPTPヘッダ432に加えて、タグ433が付加される。タグ433は、Delay_Reqメッセージ421が受信されたデバイス受信側ポート111−2Aを識別可能であり、この例では「Port2A-Port2B」で示される。即ち、タグ433は、Delay_Reqメッセージ421が、デバイス受信側ポート111−2Aにより受信されてスイッチ送信側ポート111−2Bからネットワークスイッチ93に送信されることを示している。
タグ433が付加されたDelay_Reqメッセージ421は、PTPメッセージ判定部113に供給される。
基本処理のステップS3において、PTPメッセージ判定部113は、受信したDelay_Reqメッセージ421が、PTPメッセージ(即ち、SyncメッセージまたはDelay_Reqメッセージ)であるかを判定する。
PTPメッセージ判定部113は、PTPヘッダ432の「messageType」が「1(Delay_req)」であることから、Delay_Reqメッセージ421がDelay_Reqメッセージであること、即ちPTPメッセージであることを判定する。PTPメッセージであると判定されたDelay_Reqメッセージ421は、トランスペアレントクロック処理部114に供給される。
基本処理のステップS4において、トランスペアレントクロック処理部114は、供給されたDelay_Reqメッセージ421が、受信済みのPTPメッセージであるか、即ちDelay_Reqメッセージ421のパラメータP21が、PTPメッセージ情報記録部115に記録されているかを判定する。
いまの場合、Delay_Reqメッセージ421のパラメータP21は、まだPTPメッセージ情報記録部115に記録されていない。したがって、トランスペアレントクロック処理部114は、Delay_Reqメッセージ421が、受信済みのPTPメッセージでないと判定する。
基本処理のステップS5において、トランスペアレントクロック処理部114は、PTPメッセージ情報記録部115に、Delay_Reqメッセージ421のパラメータと受信時刻を対応付けて記録させる。
具体的には、PTPメッセージ情報記録部115は、状態C22に示されるパラメータP21(即ち、ネットワークプロトコルヘッダ431とPTPヘッダ432に含まれるパラメータ)とクロック部116から取得した現在時刻CT21を受信時刻CT21として対応付けて記録する。なお、この例では、受信時刻CT21は「Current Time(10:00:10)」で示されるように、「10:00:10」であるとする。
その後、Delay_Reqメッセージ421はタグ判定部117に供給される。
基本処理のステップS7において、タグ判定部117は、Delay_Reqメッセージ421に付加されたタグ433から、Delay_Reqメッセージ421を送信するポート111を判別する。いまの場合、「Port2A-Port2B」で示されるタグ433から、Delay_Reqメッセージ421を送信するポート111としてスイッチ送信側対ポート111−2Bが判別される。タグ判定部117は、Delay_Reqメッセージ421を、判別されたスイッチ送信側ポート111−2Bに接続されたタグ削除部118−2Bに供給する。
基本処理のステップS8において、タグ削除部118−2Bは、供給されたDelay_Reqメッセージ421に付加されたタグ433を削除する。状態C23は、基本処理のステップS8において、タグ削除部118−2Bによりタグ433が削除されたDelay_Reqメッセージ421を示している。タグ433が削除されたDelay_Reqメッセージ421は、スイッチ送信側ポート111−2Bに供給される。
基本処理のステップS9において、スイッチ送信側ポート111−2Bは、Delay_Reqメッセージ421をネットワークスイッチ93に送信する。これにより、ネットワークスイッチ93は、Delay_Reqメッセージ421を受信する。
[ネットワークスイッチ93からマスタ91までのDelay_Reqメッセージ]
図15は、クロック同期処理のステップS23において、スレーブ92から送信されてマスタ91により受信されるDelay_Reqメッセージ421のうち、ネットワークスイッチ93からマスタ91までのDelay_Reqメッセージ421の具体例について説明する図である。
基本処理のステップS1において、ネットワークスイッチ93が、受信したDelay_Reqメッセージ421を送信すると、クロック処理装置101のスイッチ受信側ポート111−1Bは、Delay_Reqメッセージ421を受信する。図15の状態C31は、基本処理のステップS1において、スイッチ受信側ポート111−1Bにより受信されたDelay_Reqメッセージ421を示している。
スイッチ受信側ポート111−1Bにより受信されたDelay_Reqメッセージ421は、タグ付加部112−1Bに供給される。
基本処理のステップS2において、タグ付加部112−1Bは、スイッチ受信側ポート111−1Bを識別可能なタグを付加する。状態C32は、基本処理のステップS2において、タグ付加部112−1Bによりタグが付加されたDelay_Reqメッセージ421を示している。
状態C32に示されるように、Delay_Reqメッセージ421には、ネットワークプロトコルヘッダ431とPTPヘッダ432に加えて、タグ434が付加される。タグ434は、Delay_Reqメッセージ421が受信されたスイッチ受信側ポート111−1Bを識別可能であり、この例では「Port1B-Port1A」で示される。即ち、タグ434は、Delay_Reqメッセージ421が、スイッチ受信側ポート111−1Bにより受信されてデバイス送信側ポート111−1Aから送信されることを示している。
タグ434が付加されたDelay_Reqメッセージ421は、PTPメッセージ判定部113に供給される。
基本処理のステップS3において、PTPメッセージ判定部113は、受信したDelay_Reqメッセージ421が、PTPメッセージ(即ち、SyncメッセージまたはDelay_Reqメッセージ)であるかを判定する。
この例では、PTPメッセージ判定部113は、PTPヘッダ432の「messageType」が「1(Delay_req)」であることから、Delay_Reqメッセージ421がDelay_Reqメッセージであること、即ちPTPメッセージであることを判定する。PTPメッセージであると判定されたDelay_Reqメッセージ421は、トランスペアレントクロック処理部114に供給される。
基本処理のステップS4において、トランスペアレントクロック処理部114は、供給されたDelay_Reqメッセージ421が、受信済みのPTPメッセージであるか、即ちDelay_Reqメッセージ421のパラメータP21が、PTPメッセージ情報記録部115に記録されているかを判定する。
いまの場合、図15に示されるようにDelay_Reqメッセージ421のパラメータP21が、既にPTPメッセージ情報記録部115に記録されている。したがって、トランスペアレントクロック処理部114は、Delay_Reqメッセージ421が、受信済みのPTPメッセージであると判定する。
基本処理のステップS6において、トランスペアレントクロック処理部114は、Delay_Reqメッセージ421のPTPヘッダ432に含まれるcorrectionFieldの値を更新する。
具体的には、トランスペアレントクロック処理部114は、図15に示されるように、クロック部116から現在時刻CT22を取得する。なお、この例では、現在時刻CT22は「Current Time(10:00:10+2.0ns)」で示されるように、「10:00:10+2.0ns」であるとする。
そして、トランスペアレントクロック処理部114は、クロック部116から取得した現在時刻CT22から、PTPメッセージ情報記録部115に記録されている受信時刻CT21を減算することで、残留時間(S−M)を演算する。さらに、トランスペアレントクロック処理部114は、演算された残留時間(S−M)を所定のフォーマットに従って変換して、変換後の値でcorrectionFieldの値を更新する(つまり、correctionField(S−M)の値になる)。
具体的には、図15の残留時間情報CF21に「Residence Time=10:00:10+2.0ns-10:00:10=2.0ns」で示されるように、残留時間(S−M)は「2.0ns」と演算される。また、図15の残留時間情報CF21に「correctionField=2.0ns×2^16=0x20000」で示されるように、演算された残留時間(S−M)である「2.0ns」は、所定のフォーマットに従って変換され、変換後の値である「0x20000」で、correctionFieldの値が更新される。
状態C33は、基本処理のステップS6において、トランスペアレントクロック処理部114によりcorrectionFieldの値が更新されたDelay_Reqメッセージ421を示している。即ち、correctionFieldの値が「0」から「0x20000」に更新されている。
その後、Delay_Reqメッセージ421はタグ判定部117に供給される。
基本処理のステップS7において、タグ判定部117は、Delay_Reqメッセージ421に付加されたタグ434から、Delay_Reqメッセージ421を送信するポート111を判別する。いまの場合、「Port1B-Port1A」で示されるタグ434から、Delay_Reqメッセージ421を送信するポート111としてデバイス送信側ポート111−1Aが判別される。タグ判定部117は、Delay_Reqメッセージ421を、判別されたデバイス送信側ポート111−1Aに接続されたタグ削除部118−1Aに供給する。
基本処理のステップS8において、タグ削除部118−1Aは、供給されたDelay_Reqメッセージ421に付加されたタグ434を削除する。状態C34は、基本処理のステップS8において、タグ削除部118−1Aによりタグ434が削除されたDelay_Reqメッセージ421を示している。タグ434が削除されたDelay_Reqメッセージ421は、デバイス送信側ポート111−1Aに供給される。
基本処理のステップS9において、デバイス送信側ポート111−1Aは、Delay_Reqメッセージ421をマスタ91に送信する。
これにより、マスタ91は、Delay_Reqメッセージ421を受信する。即ち、クロック同期処理のステップS21において、時刻t3にスレーブ92から送信されたDelay_Reqメッセージ421が、時刻t4にマスタ91により受信される。
次に、クロック同期処理のステップS24において、スレーブ92は、Delay_Respメッセージを受信する。即ち、マスタ91が、Delay_Reqメッセージ421を受信した時刻t4及びDelay_Reqメッセージ421のcorrectionFieldの値をスレーブ92に通知するために、時刻t4の時刻情報及びcorrectionFieldの値を埋め込んだDelay_Respメッセージを、スレーブ92に送信する。
Delay_Respメッセージについても、クロック処理装置101により実行される基本処理(図8)によりマスタ91からスレーブ92に送信される。したがって、その説明は繰り返しになるので省略する。しかしながら、Delay_Respメッセージは、PTPメッセージではないため、基本処理のステップS3においてNOであると判定され、ステップS4乃至S6のトランスペアレントクロック処理は実行されない。
クロック同期処理のステップS23,S24により、スレーブ92は、時刻t3,t4の時刻情報、及びスレーブ92からマスタ91へのネットワーク伝搬遅延の値(Delay_Reqメッセージ421のcorrectionField(S−M)の値)を取得することができる。
クロック同期処理のステップS25において、スレーブ92は、クロックを同期させる。即ち、スレーブ92は、ステップS21乃至S24で取得した時刻t1乃至t4の時刻情報、マスタ91からスレーブ92へのネットワーク伝搬遅延の値(SyncメッセージのcorrectionField(M−S)の値)、及びスレーブ92からマスタ91へのネットワーク伝搬遅延の値(Delay_Reqメッセージ421のcorrectionField(S−M)の値)を用いてクロック同期を実行する。
つまり、スレーブ92は、上述の式(1)及び式(2)の演算をするときに、式(1)及び式(2)のそれぞれからcorrectionField(M−S),(S−M)の値のそれぞれを減算する。具体的には、スレーブ92は、式(1)の演算をするときに、SyncメッセージのcorrectionField(M−S)の値を減算する。また、スレーブ92は、式(2)の演算をするときに、Delay_Reqメッセージ421のcorrectionField(S−M)の値を減算する。
これにより、ネットワーク伝搬遅延は、実質的にケーブルでの遅延のみになる。ケーブルの遅延はネットワークの往復で等しいので、ネットワーク往復伝搬遅延が一定でない場合であっても、クロック同期が可能となる。
このように、クロック処理装置101が、マスタ91及びスレーブ92と、ネットワークスイッチ93との間に接続されることにより、マスタ91及びスレーブ92から見ると、ネットワークスイッチ93は、トランスペアレントクロックの機能を有するネットワークスイッチとして動作することになる。即ち、クロック処理装置101が接続されることにより、ネットワーク往復伝搬遅延が一定でない場合であっても、マスタ91とスレーブ92との間でクロック同期が可能となる。したがって、既存のネットワークシステムを再構築することなくクロックの同期を容易に実現することが可能となる。
また、クロック処理装置101を用いることにより、セッション単位(例えば、マスタ91からネットワークスイッチ93まで、または、ネットワークスイッチ93からスレーブ92まで)でのネットワークの情報のモニタリングが可能となる。したがって、クロック処理装置101は、ネットワーク上の故障検知や帯域検知といったネットワーク管理アプリケーションに応用可能である。
[本技術のプログラムへの適用]
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図16は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)601,ROM(Read Only Memory)602,RAM(Random Access Memory)603は、バス604により相互に接続されている。
バス604には、さらに、入出力インタフェース605が接続されている。入出力インタフェース605には、入力部606、出力部607、記憶部608、通信部609、及びドライブ610が接続されている。
入力部606は、キーボード、マウス、マイクロフォンなどよりなる。出力部607は、ディスプレイ、スピーカなどよりなる。記憶部608は、ハードディスクや不揮発性のメモリなどよりなる。通信部609は、ネットワークインタフェースなどよりなる。ドライブ610は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア611を駆動する。
以上のように構成されるコンピュータでは、CPU601が、例えば、記憶部608に記憶されているプログラムを、入出力インタフェース605及びバス604を介して、RAM603にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU601)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア611に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア611をドライブ610に装着することにより、入出力インタフェース605を介して、記憶部608にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部609で受信し、記憶部608にインストールすることができる。その他、プログラムは、ROM602や記憶部608に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本技術は、以下のような構成もとることができる。
(1)
送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、
前記デバイス受信側ポートに受信された前記パケットをネットワークスイッチに送信するスイッチ送信側ポートと、
前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、
前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと、
前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部と
を備える情報処理装置。
(2)
前記トランスペアレントクロック処理部は、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである場合の第1の残留時間を演算し、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである場合の第2の残留時間を演算する
前記(1)に記載の情報処理装置。
(3)
前記デバイス受信側ポート又は前記スイッチ受信側ポートにおいてパケットが受信される毎に、前記パケットに対して、受信が行われたポートを識別可能なタグを付加するタグ付加部と、
前記デバイス送信側ポート又は前記スイッチ送信側ポートにおいて、前記タグ付加部により前記タグが付加されたパケットが送信される毎に、前記パケットから前記タグを削除するタグ削除部と、
前記トランスペアレントクロック処理部により処理された前記PTPメッセージに付加された前記タグを判定し、前記デバイス受信側ポートを識別する前記タグが付加されていると判定した場合には前記PTPメッセージを前記スイッチ送信側ポートに送信し、前記スイッチ受信側ポートを識別する前記タグが付加されていると判定した場合には前記PTPメッセージを前記デバイス送信側ポートに送信するタグ判定部と
をさらに備える
前記(1)または(2)に記載の情報処理装置。
(4)
前記第1の時刻及び第2の時刻を計時する計時部を備える
前記(1)乃至(3)のいずれかに記載の情報処理装置。
(5)
マスタと、スレーブと、クロック処理装置と、ネットワークスイッチとを含む情報処理システムであって、
前記クロック処理装置は、
送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、
前記デバイス受信側ポートに受信された前記パケットを前記ネットワークスイッチに送信するスイッチ送信側ポートと、
前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、
前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと、
前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部と
を備え、
前記トランスペアレントクロック処理部は、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである第1の場合の第1の残留時間を演算し、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである第2の場合の第2の残留時間を演算し、
前記スレーブは、前記第1の残留時間、前記第2の残留時間、前記第1の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻、並びに、前記第2の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻を用いて、前記マスタとクロック同期を行う
情報処理システム。
本技術は、クロック同期を実行する情報処理装置に適用することができる。
71,81 情報処理システム, 91 マスタ, 92 スレーブ, 93 ネットワークスイッチ, 101 クロック処理装置, 111 クロック, 112 タグ付加部, 113 PTPメッセージ判定部, 114 トランスペアレントクロック処理部, 115 PTPメッセージ情報記録部, 116 クロック部, 117 タグ判定部, 118 タグ削除部

Claims (7)

  1. 送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、
    前記デバイス受信側ポートに受信された前記パケットをネットワークスイッチに送信するスイッチ送信側ポートと、
    前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、
    前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと、
    前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部と
    を備える情報処理装置。
  2. 前記トランスペアレントクロック処理部は、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである場合の第1の残留時間を演算し、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである場合の第2の残留時間を演算する
    請求項1に記載の情報処理装置。
  3. 前記デバイス受信側ポート又は前記スイッチ受信側ポートにおいてパケットが受信される毎に、前記パケットに対して、受信が行われたポートを識別可能なタグを付加するタグ付加部と、
    前記デバイス送信側ポート又は前記スイッチ送信側ポートにおいて、前記タグ付加部により前記タグが付加されたパケットが送信される毎に、前記パケットから前記タグを削除するタグ削除部と、
    前記トランスペアレントクロック処理部により処理された前記PTPメッセージに付加された前記タグを判定し、前記デバイス受信側ポートを識別する前記タグが付加されていると判定した場合には前記PTPメッセージを前記スイッチ送信側ポートに送信し、前記スイッチ受信側ポートを識別する前記タグが付加されていると判定した場合には前記PTPメッセージを前記デバイス送信側ポートに送信するタグ判定部と
    をさらに備える
    請求項1に記載の情報処理装置。
  4. 前記第1の時刻及び第2の時刻を計時する計時部を備える
    請求項1に記載の情報処理装置。
  5. 情報処理装置の情報処理方法において、
    送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、
    前記デバイス受信側ポートに受信された前記パケットをネットワークスイッチに送信するスイッチ送信側ポートと、
    前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、
    前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと
    を備える前記情報処理装置が、
    前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTメッセージPのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送する
    情報処理方法。
  6. 送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、
    前記デバイス受信側ポートに受信された前記パケットをネットワークスイッチに送信するスイッチ送信側ポートと、
    前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、
    前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと
    の間で送受信されるパケットを処理するコンピュータを、
    前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部と
    して機能させるためのプログラム。
  7. マスタと、スレーブと、クロック処理装置と、ネットワークスイッチとを含む情報処理システムであって、
    前記クロック処理装置は、
    送信元デバイスから送信されたパケットを受信するデバイス受信側ポートと、
    前記デバイス受信側ポートに受信された前記パケットを前記ネットワークスイッチに送信するスイッチ送信側ポートと、
    前記ネットワークスイッチから送信されてきた前記パケットを受信するスイッチ受信側ポートと、
    前記スイッチ受信側ポートに受信された前記パケットを送信先デバイスに送信するデバイス送信側ポートと、
    前記デバイス受信側ポートに受信された前記パケットがPTPメッセージである場合、前記PTPメッセージを受信した第1の時刻と、前記PTPメッセージのパラメータとを対応付けて記録した後、前記PTPメッセージを前記スイッチ送信側ポートに伝送し、前記スイッチ受信側ポートに受信されたパケットが前記PTPメッセージである場合、前記PTPメッセージを受信した第2の時刻と前記第1の時刻の差分を残留時刻として演算し、前記残留時刻を含むように前記パラメータを更新し、更新後の前記パラメータを含む前記PTPメッセージを前記デバイス送信側ポートに伝送するトランスペアレントクロック処理部と
    を備え、
    前記トランスペアレントクロック処理部は、第1デバイスが前記送信元デバイスであり、第2デバイスが前記送信先デバイスである第1の場合の第1の残留時間を演算し、前記第2デバイスが前記送信元デバイスであり、前記第1デバイスが前記送信先デバイスである第2の場合の第2の残留時間を演算し、
    前記スレーブは、前記第1の残留時間、前記第2の残留時間、前記第1の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻、並びに、前記第2の場合の前記送信元デバイスからの前記PTPメッセージの送信時刻及び前記送信先デバイスでの前記PTPメッセージの受信時刻を用いて、前記マスタとクロック同期を行う
    情報処理システム。
JP2012026181A 2012-02-09 2012-02-09 情報処理装置及び方法、プログラム、並びに情報処理システム Pending JP2013165326A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012026181A JP2013165326A (ja) 2012-02-09 2012-02-09 情報処理装置及び方法、プログラム、並びに情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012026181A JP2013165326A (ja) 2012-02-09 2012-02-09 情報処理装置及び方法、プログラム、並びに情報処理システム

Publications (1)

Publication Number Publication Date
JP2013165326A true JP2013165326A (ja) 2013-08-22

Family

ID=49176452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012026181A Pending JP2013165326A (ja) 2012-02-09 2012-02-09 情報処理装置及び方法、プログラム、並びに情報処理システム

Country Status (1)

Country Link
JP (1) JP2013165326A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015125439A1 (ja) * 2014-02-20 2015-08-27 日本電気株式会社 通信システム、無線通信装置及び無線通信方法
JP2015533040A (ja) * 2012-09-19 2015-11-16 アルカテル−ルーセント 障害が発生する場合にネットワークにおいて時刻の正確な配信を管理及び維持するための方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015533040A (ja) * 2012-09-19 2015-11-16 アルカテル−ルーセント 障害が発生する場合にネットワークにおいて時刻の正確な配信を管理及び維持するための方法
WO2015125439A1 (ja) * 2014-02-20 2015-08-27 日本電気株式会社 通信システム、無線通信装置及び無線通信方法
US10104657B2 (en) 2014-02-20 2018-10-16 Nec Corporation Communication system, wireless communication apparatus, and wireless communication method

Similar Documents

Publication Publication Date Title
US10498475B1 (en) Maintaining a time of day in physical layer circuit of a network device while periodically compensating for drift away from a master time of a grandmaster clock
US8923346B2 (en) Time synchronization method, device and system
JP6214008B2 (ja) 時間認識デバイス間で時間情報を通信する方法および装置
US8964790B2 (en) Communication apparatus
CN103929293B (zh) 非对称延迟的时间同步方法及系统
CN106464656B (zh) 一种时间同步方法及装置
US8953645B2 (en) Communication system, communication apparatus and time synchronization method
CN105262555B (zh) 一种时间同步方法、可编程逻辑器件、单板及网元
JP5636093B2 (ja) デバイス間におけるクロック同期の実行方法及び装置
WO2016112666A1 (zh) Otn网络中实现时间同步的方法、设备、系统及存储介质
KR20130126986A (ko) 원격통신 네트워크에서 시간 분배를 위한 방법, 장치 및 시스템
WO2016004644A1 (zh) 一种监控以太网时钟同步的方法及装置
KR20120035199A (ko) 광 전송 네트워크에서 시간 동기화 프로토콜을 베어링하는 방법 및 시스템
CN103716147A (zh) 一种具有路径延时测量功能的采样值传输及同步方法
KR20120084686A (ko) 독립적인 시간 소스로부터 시간 신호(들)를 사용한 미디어 스트림들의 동기화
WO2012149736A1 (zh) 一种时间同步的方法和系统及节点设备
CN105027489B (zh) 精确时钟协议同步方法和节点
CN103168440A (zh) 时间路径补偿方法和装置
WO2013086959A1 (zh) 线路非对称性补偿方法、设备及系统
CN103546268A (zh) 一种系统时间的补偿方法及设备
US9065748B2 (en) Symmetrical latency with TDM circuit emulated service
JP2013168811A (ja) ネットワークシステム及び時刻同期方法
EP3163788B1 (en) Communication system, communication method, and communication program
WO2011074529A1 (ja) 時刻同期システム、スレーブノード、時刻同期方法及び時刻同期用プログラム
CN113424466B (zh) 时钟同步的方法和装置