(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024010878
(43)【公開日】2024-01-25
(54)【発明の名称】通信装置
(51)【国際特許分類】
H04L 69/28 20220101AFI20240118BHJP
H04L 7/00 20060101ALI20240118BHJP
【FI】
H04L69/28
H04L7/00 990
【審査請求】有
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022112433
(22)【出願日】2022-07-13
(71)【出願人】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100124811
【弁理士】
【氏名又は名称】馬場 資博
(74)【代理人】
【識別番号】100088959
【弁理士】
【氏名又は名称】境 廣巳
(74)【代理人】
【識別番号】100097157
【弁理士】
【氏名又は名称】桂木 雄二
(74)【代理人】
【識別番号】100187724
【弁理士】
【氏名又は名称】唐鎌 睦
(72)【発明者】
【氏名】野尻 雅人
(72)【発明者】
【氏名】田中 大
(72)【発明者】
【氏名】奥野 義幸
【テーマコード(参考)】
5K047
【Fターム(参考)】
5K047AA18
(57)【要約】
【課題】各PTPクライアント装置について現用系のPTPスレーブポートを特定の1つの系統に統一することができないこと。
【解決手段】PTPに基づく時刻同期で通信を行う通信装置は、PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記通信装置が接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記通信装置のプライオリティ値を上位ビットに有する前記通信装置の識別子を保持する。通信装置は、現用系のGM装置から第1のアナウンスメッセージを受信し、受信された第1のアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータと前記識別子とに基づいて生成した第2のアナウンスメッセージを前記通信装置が接続されたPTPクライアント装置のPTPスレーブポートへ送信する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
PTP(Precision Time Protocol)に基づく時刻同期で通信を行う通信装置であって、
PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記通信装置が接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記通信装置のプライオリティ値を上位ビットに有する前記通信装置の識別子を保持する保持部と、
現用系のGM装置から第1のアナウンスメッセージを受信する受信部と、
前記受信部で受信された第1のアナウンスメッセージから抽出されたBMCA(Best Master Clock Algorithm)の優先度に関するパラメータと前記識別子とに基づいて第2のアナウンスメッセージを生成する生成部と、
前記生成された第2のアナウンスメッセージを前記通信装置が接続されたPTPクライアント装置のPTPスレーブポートへ送信する送信部と、
を備える通信装置。
【請求項2】
前記通信装置のMACアドレスと前記プライオリティ値とから前記識別子を作成して前記保持部に記憶させる算出部を、更に備える、
請求項1に記載の通信装置。
【請求項3】
前記識別子は、前記通信装置のEUI-64形式のインタフェースIDの上位8ビットを、前記プライオリティ値に置換して生成されたものである、
請求項1に記載の通信装置。
【請求項4】
前記第2のアナウンスメッセージは、前記識別子に基づいて作成されたヘッダ情報を含んで構成されている、
請求項1に記載の通信装置。
【請求項5】
前記ヘッダ情報は、前記識別子であるClockIdentity値と前記通信装置の送信ポートのPortNumber値とから構成されるsourcePortIdentityを含んで構成されている、
請求項4に記載の通信装置。
【請求項6】
前記プライオリティ値は、前記通信装置のPriority2である、
請求項1に記載の通信装置。
【請求項7】
前記プライオリティ値は、前記通信装置のPriority1である、
請求項1に記載の通信装置。
【請求項8】
少なくとも1つのグランドマスタークロック装置と、前記グランドマスタークロック装置が配信するグランドマスタークロックに同期した、複数の系統に冗長化された複数のBC(Boundary Clock)装置と、複数の系統に冗長化されたPTPスレーブポートを有し、各PTPクライアント装置の各系統のPTPスレーブポートが対応する系統の前記BC装置に接続された複数のPTPクライアント装置とを備え、前記BC装置は、請求項1乃至7の何れか1項に記載された通信装置によって構成されている、
通信システム。
【請求項9】
PTP(Precision Time Protocol)に基づく時刻同期で通信を行う通信装置であって、PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記通信装置が接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記通信装置のプライオリティ値を上位ビットに有する前記通信装置の識別子を保持する保持部を有する通信装置の動作方法であって、
現用系のGM装置から第1のアナウンスメッセージを受信し、
前記受信された第1のアナウンスメッセージから抽出されたBMCA(Best Master Clock Algorithm)の優先度に関するパラメータと前記識別子とに基づいて第2のアナウンスメッセージを生成し、
前記生成された第2のアナウンスメッセージを前記通信装置が接続されたPTPクライアント装置のPTPスレーブポートへ送信する、
通信装置の動作方法。
【請求項10】
PTP(Precision Time Protocol)に基づく時刻同期で通信を行うコンピュータであって、PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記コンピュータが接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記コンピュータのプライオリティ値を上位ビットに有する前記コンピュータの識別子を保持する保持部を有するコンピュータに、
現用系のGM装置から第1のアナウンスメッセージを受信する処理と、
前記受信された第1のアナウンスメッセージから抽出されたBMCA(Best Master Clock Algorithm)の優先度に関するパラメータと前記識別子とに基づいて第2のアナウンスメッセージを生成する処理と、
前記生成された第2のアナウンスメッセージを前記コンピュータが接続されたPTPクライアント装置のPTPスレーブポートへ送信する処理と、
を行わせるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、IEEE1588規格のPTP(Precision Time Protocol)に基づく時刻同期で通信を行う通信装置、その動作方法、および、プログラムに関する。
【背景技術】
【0002】
各産業分野でIP(Internet Protocol)を使ったシステム構築が積極的に行われており、NTP(Network Time Protocol)よりも高精度な時刻同期プロトコルであるPTPを使用した通信システムの構築が近年導入され始めている。PTPはNTPよりも同期精度が高いため、従来NTPでは実現できなかったような、社会インフラストラクチャー系や専門的な業種で求められる高精度な同期処理にも適用可能である。
【0003】
PTPに基づく時刻同期で通信を行う通信装置を記載した文献として、特許文献1がある。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、IEEE1588規格のBMCA(Best Master Clock Algorithm)を考慮した冗長構成の通信システムの一種に、各PTPクライアント装置に、1系と2系のように、複数系統に冗長化されたPTPスレーブポートを設け、各系統のPTPスレーブポートに対して、同一のGM(Grand Master)装置のグランドマスタークロックに同期した冗長構成のBC(Boundary Clock)装置からグランドマスタークロックを供給する構成がある。
【0006】
上記のような通信システムにおいて、各PTPクライアント装置は、各系統のPTPスレーブポートから受信したアナウンスメッセージから抽出したBMCAの優先度に関するパラメータに基づき、何れか1つの系統のPTPスレーブポートから入力されるグランドマスタークロックに同期することになる。この同期するグランドマスタークロックが入力される系統のPTPスレーブポートを現用系のPTPスレーブポートと呼ぶ。
【0007】
上記抽出されるBMCAの優先度に関するパラメータは、IEEE1588規格により、優先度の高いものから順に、
(1)GM Priority1
(2)GM clockClass
(3)GM clockAccuracy
(4)GM offsetScaledLogVariance
(5)GM Priority2
(6)GM clockIdentity
(7)StepsRemoved
(8)Identities of Senders
となる。ここで、(1)~(6)のパラメータは同じGM装置に関する値になるため、全てのPTPスレーブポートで同じ値になる。また、(7)のパラメータは、GM装置からPTPクライアント装置に至るまでに経由するTC(Transparent Clock)装置およびBC装置の数であり、それらの数が等しいPTPネットワーク構成では全てのPTPスレーブポートで同じ値になる。一方、(8)のパラメータは、アナウンスメッセージを送信しているBC装置のClockIdentityであり、アナウンスメッセージのヘッダ中のsourcePortIdentityから抽出される。BC装置のClockIdentityは、個々のBC装置で異なる値になる。その結果、最終的に、各PTPクライアント装置は、(8)のパラメータの値をPTPスレーブポート間で比較し、その数値が小さい側のPTPスレーブポートを現用系のPTPスレーブポートに決定する。
【0008】
ここで、BC装置のClockIdentityは、IEEE1588規格により、BC装置のMACアドレス(48ビット)を引用した64ビット長の数値となる。具体的には、BC装置のClockIdentityは、BC装置のMACアドレスの前半24ビットと後半24ビットの間に、16ビット長の値(hex)=ff:feを挿入して生成される。即ち、ClockIdentityは、EUI-64(Extended Unique Identifier 64-bit)形式のインタフェースIDである。本明細書では、こうして生成された既存のClockIdentityと本発明の実施形態で使用するClockIdentityと区別するために、前者を旧ClockIdentity、後者を新ClockIdentityと称して区別する。以上のようなことから、各BC装置および各PTPクライアント装置の物理的な構成および接続関係が決まった時点で、各PTPクライアント装置の各PTPスレーブポートに接続されているBC装置のClockIdentitity値、従ってIdentities of Senders値が確定する。その結果、通信システムの設計者は、PTPクライアント装置が有する冗長化された複数の系統のPTPスレーブポートのうち特定の1つの系統(例えば1系)を現用系のPTPスレーブポートに設定することができない。即ち、通信システム内の全てのPTPクライアント装置について現用系のPTPスレーブポートを複数の系統のうちの特定の1つの系統に統一することができない課題があった。
【0009】
本発明の目的は、上述した課題を解決する通信装置を提供することにある。
【課題を解決するための手段】
【0010】
本発明の一形態に係る通信装置は、
PTPに基づく時刻同期で通信を行う通信装置であって、
PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記通信装置が接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記通信装置のプライオリティ値を上位ビットに有する前記通信装置の識別子を保持する保持部と、
現用系のGM装置から第1のアナウンスメッセージを受信する受信部と、
前記受信部で受信された第1のアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータと前記識別子とに基づいて第2のアナウンスメッセージを生成する生成部と、
前記生成された第2のアナウンスメッセージを前記通信装置が接続されたPTPクライアント装置のPTPスレーブポートへ送信する送信部と、
を備えるように構成されている。
【0011】
また、本発明の他の形態に係る通信装置の動作方法は、
PTPに基づく時刻同期で通信を行う通信装置であって、PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記通信装置が接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記通信装置のプライオリティ値を上位ビットに有する前記通信装置の識別子を保持する保持部を有する通信装置の動作方法であって、
現用系のGM装置から第1のアナウンスメッセージを受信し、
前記受信された第1のアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータと前記識別子とに基づいて第2のアナウンスメッセージを生成し、
前記生成された第2のアナウンスメッセージを前記通信装置が接続されたPTPクライアント装置のPTPスレーブポートへ送信する、
ように構成されている。
【0012】
また、本発明の他の形態に係るプログラムは、
PTPに基づく時刻同期で通信を行うコンピュータであって、PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに前記コンピュータが接続されるときは、前記通信装置が前記特定の1つの系統のPTPスレーブポート以外のPTPスレーブポートに接続されるときに比較してより小さな値に設定された前記コンピュータのプライオリティ値を上位ビットに有する前記コンピュータの識別子を保持する保持部を有するコンピュータに、
現用系のGM装置から第1のアナウンスメッセージを受信する処理と、
前記受信された第1のアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータと前記識別子とに基づいて第2のアナウンスメッセージを生成する処理と、
前記生成された第2のアナウンスメッセージを前記コンピュータが接続されたPTPクライアント装置のPTPスレーブポートへ送信する処理と、
を行わせるように構成されている。
【発明の効果】
【0013】
本発明は、上述したような構成を有することにより、複数の系統に冗長化されたPTPスレーブポートを有するPTPクライアント装置において、現用系のPTPスレーブポートを複数の系統のうち特定の1つの系統に統一することができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の第1の実施形態に係る通信装置のブロック図である。
【
図2】本発明の第2の実施形態に係る通信システムのブロック図である。
【発明を実施するための形態】
【0015】
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態に係る通信装置10のブロック図である。本実施形態に係る通信装置10は、IEEE1588規格のPTPに基づく時刻同期で通信を行うものであり、複数の系統に冗長化されたPTPスレーブポートを有するPTPクライアント装置の何れか1つのPTPスレーブポートに接続されるBC装置として利用することができる。以下、冗長化は1系と2系の2系統とする。また、現用系のPTPスレーブポートを複数の系統のうち1系に統一するものとする。但し、本発明は2系統に限定されず、3系統以上に冗長化されていてもよいし、現用系のPTPスレーブポートを1系以外の系に統一するようにしてもよい。また、以下の説明では、PTPクライアント装置の1系のPTPスレーブポートに接続される通信装置10と2系のPTPスレーブポートに接続される通信装置10とを区別するため、前者を1系の通信装置10、後者を2系の通信装置10と称する。
【0016】
図1を参照すると、通信装置10は、PTPに基づく時刻同期に関連する主な機能部として、保持部11、受信部12、生成部13、送信部14、および、算出部15を含んで構成されている。
【0017】
保持部11は、通信装置10のMACアドレス111とプライオリティ値112と旧ClockIdentity値113と新ClockIdentity値114とを保持するように構成されている。
【0018】
MACアドレス111は、通信装置10のベンダーによって出荷時に書き込まれたMACアドレスである。MACアドレス111は、48ビットから成り、前半24ビットはベンダー識別子(OUI)、後半24ビットはベンダー内管理番号である。
【0019】
プライオリティ値112は、通信装置10が、PTPクライアント装置が有する複数の系統のPTPスレーブポートのうち現用系に統一する特定の1つの系統のPTPスレーブポートに接続されるときは、接続されないときに比較してより小さな値に設定されている。即ち、1系に統一する場合、1系の通信装置10のプライオリティ値112は、2系の通信装置10のプライオリティ値112より小さな値に設定される。所定ビット長は、例えば8ビットであってよいが、それに限定されない。
【0020】
また、プライオリティ値112は、通信装置10に設定されるIEEE1588規格のPriority1またはPriority2(何れも8ビット)を兼ねていてよい。このような兼用により、必要な記憶容量を削減することができる。ここで、通信装置10のPriority1をプライオリティ値112として使用する場合、通信装置10に設定するPriority2の値は任意でよい。一方、通信装置10のPriority2をプライオリティ値112として使用する場合、通信装置10に設定するPriority1の値は、1系の通信装置10のプライオリティ値112と2系の通信装置10のプライオリティ値112間の大小関係と同じ大小関係になるようにしておくことが望ましい。こうすることにより、後述する第2の実施形態に係る通信システムにおいて、両系のGM装置1-1、1-2が共に障害になって各BC装置3-1~3-4がクロック配信元となった場合に、PTPクライアント装置4-1~4-2の現用系のPTPスレーブポートを障害発生前と同じに維持することができる。
【0021】
旧ClockIdentity値113は、IEEE1588規格に従って、通信装置10のMACアドレス111に基づいて生成された64ビットのClockIdentity値である。即ち、旧ClockIdentity値113は、MACアドレス111の前半24ビットと後半24ビットの間に、所定の16ビットの値(hex)=ff:feを挿入して生成される。
【0022】
新ClockIdentity値114は、本実施形態において、旧ClockIdentity値113の代わりに使用される通信装置10のClockIdentity値である。新ClockIdentity値114は、次式に示されるように、その上位8ビットがプライオリティ値112で構成され、下位56ビットが変更前ClockIdentity値中の下位56ビットで構成される。
新ClockIdentity値(64ビット)
=プライオリティ値112(8ビット)
+旧ClockIdentity値113の下位56ビット
・・・(1)
旧ClockIdentity値113の上位24ビットは、MACアドレス111のベンダー識別子である。そのため、新ClockIdentity値114はベンダー識別子中の連続する8ビットをプライオリティ値112に置換することによって生成されている。同一ベンダー機種のBC装置を通信システムに複数使用する場合、各BC装置の旧ClockIdentity値113の上位24ビットは重複値となるため重要性は低く、その一部をプライオリティ値112に置換しても支障は殆ど生じない。新ClockIdentity値114は、通信装置の識別子とも称する。
【0023】
算出部15は、MACアドレス111とプライオリティ値112とから新ClockIdentity値114を作成して、保持部11に記憶させる手段である。通信装置10に対して新ClockIdentity値114を生成して保存する処理は、例えば通信装置10を組み込んだ通信システムを立ち上げる前に実施することが望ましい。算出部15は、例えば、以下のようにして新ClockIdentity値114の生成と保存を行う。
【0024】
先ず算出部15は、通信装置10からMACアドレス111を読み出す。次に算出部15は、通信システムの設計者などのユーザから通信装置10に設定すべきプライオリティ値112を入力する。次に、算出部15は、MACアドレス111からEUI-64形式のインタフェースIDである旧ClockIdentity値113を作成し、保持部11に保存する。次に、算出部15は、保持部11から上記作成した旧ClockIdentity値113を読み出し、その上位8ビットを、プライオリティ値112を構成する8ビットで置換することにより、新ClockIdentity値114を作成する。次に算出部15は、上記作成した新ClockIdentity値114を保持部11に書き込む。
【0025】
但し、算出部15が新ClockIdentity値114を作成する方法は上記に限定されず、以下のような方法であってもよい。先ず算出部15は、通信装置10からMACアドレス111を読み出し、また上記ユーザから通信装置10に設定すべきプライオリティ値112を入力する。次に算出部15は、MACアドレス111の上位24ビットと下位24ビットの間に所定の16ビット長の値(hex)=ff:feを挿入して生成した56ビット長の上位ビット側に、プライオリティ値112を構成する8ビットを連結することにより、64ビット長の新ClockIdentity値114を作成する。次に算出部15は、上記作成した新ClockIdentity値114を保持部11に書き込む。この方法によれば、旧ClockIdentity値113を生成する処理が省かれるため新ClockIdentity値114を高速に生成することができる。また、旧ClockIdentity値113を保持部11に保存する必要がないため、必要な記憶容量を削減することができる。
【0026】
なお、本実施形態では、新ClockIdentity値114を生成する機能を算出部15として通信装置10自体に持たせたが、そのような機能を外部のコンピュータに持たせるようにしてもよい。その場合、外部のコンピュータは、例えば、通信装置10からMACアドレス111を読み出す機能、オペレータからプライオリティ値112を入力する機能、読み出したMACアドレス111とオペレータから入力されたプライオリティ値112とから上述した方法と同様の方法で新ClockIdentity値114を作成する機能、作成した新ClockIdentity値114を通信装置10の保持部11に書き込む機能を備えていればよい。
【0027】
以上のようにして通信装置10に保持された新ClockIdentity値114は、通信装置10のClockIdentityのユニーク性を保証する。また、通信装置10のMACアドレス111の値にかかわらず、PTPクライアント装置の1系のPTPスレーブポートに接続される1系の通信装置10の新ClockIdentity値114は、2系のPTPスレーブポートに接続される2系の通信装置10の新ClockIdentity値114よりも常に小さな値になることが保証される。
【0028】
以下に、1系と2系の通信装置10のMACアドレス111、プライオリティ値112、旧ClockIdentity値113、新ClockIdentity値114の例を示す。
<1系の通信装置>
MACアドレス=11:11:11:44:44:66
プライオリティ値=Priority2(hex)=F0
旧ClockIdentity値(hex)=11:11:11:ff:fe:44:44:66
新ClockIdentity値(hex)=F0:11:11:ff:fe:44:44:66
<2系の通信装置>
MACアドレス=11:11:11:44:44:55
プライオリティ値=Priority2(hex)=F1
旧ClockIdentity値(hex)=11:11:11:ff:fe:44:44:55
新ClockIdentity値(hex)=F1:11:11:ff:fe:44:44:55
【0029】
受信部12は、少なくとも現用系のGM装置からグランドマスタークロックやアナウンスメッセージなどのPTPパケットを受信するように構成されている。また、受信部12は、GM装置が冗長化されている場合、複数のGM装置からグランドマスタークロックやアナウンスメッセージなどのPTPパケットを受信するように構成されている。GM装置から送信されるアナウンスメッセージには、BMCAの優先度に関して前述した(1)~(8)のパラメータが含まれている。
【0030】
生成部13は、受信部12で受信されたアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータに基づいて、現用系のGM装置を選出するように構成されている。また、生成部13は、選出した現用系のGM装置から受信したアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータと保持部11に保持された新ClockIdentity値114とに基づいて、PTPクライアント装置へ送信するアナウンスメッセージを生成するように構成されている。例えば、Announce 1588 V2の場合、生成部13は、上記パラメータ(1)~(7)はアナウンスメッセージのgrandmasterPriority1、grandmasterClockQuality、grandmasterPriority2、grandmasterIdentity、stepsRemovedに格納し、上記パラメータ(8)はヘッダ(Header 1588 V2)中のsourcePortIdentityに格納する。このため、ヘッダ中のsourcePortIdentityは、新ClockIdentity値114と通信装置10の上記送信するポートのPortNumber値とから構成されることになる。
【0031】
送信部14は、生成部13によって生成されたアナウンスメッセージなどの各種のメッセージを、通信装置10の送信ポートから、通信装置10に接続されたPTPクライアント装置のPTPスレーブポートへ送信するように構成されている。
【0032】
以上のような構成を有する通信装置10は、例えば、CPU(Central Processing Unit)などで構成された演算処理部と、ROMやRAMなどで構成された記憶部と、通信コネクタなどで実現することができる。記憶部は、保持部11のための記憶領域を提供すると共にプログラムを記憶する。プログラムは、コンピュータ読み取り可能な記録媒体に記録されて提供され、コンピュータの立ち上げ時などに演算処理部に読み取られ、演算処理部の動作を制御することにより、演算処理部上に受信部12と生成部13と送信部14と算出部15とを実現する。
【0033】
以上のように構成された通信装置10は、PTPに基づく時刻同期に関連して以下のように動作する。先ず、保持部11は、事前に通信装置10のMACアドレス111とプライオリティ値112とを保持する。次に、算出部15は、例えば通信装置10を組み込んだ通信システムを立ち上げる前に、保持部11に保持されたMACアドレス111をもとに旧ClockIdentity値113を生成して保持部11に保存した後、この保存した旧ClockIdentity値113とプライオリティ値113をもとに新ClockIdentity値114を生成して保持部11に保存する。或いは、算出部15は、保持部11に保持されたMACアドレス111とプライオリティ値112をもとに、旧ClockIdentity値113を生成せずに、直接に新ClockIdenttity値114を生成して保持部11に保存する。
【0034】
次に、受信部12は、通信装置10を組み込んだ通信システムの稼働中、通信装置10に接続された1以上のGM装置からアナウンスメッセージを受信する。次に、生成部13は、受信部12で受信されたアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータに基づいて、現用系のGM装置を選出する。次に、生成部13は、選出した現用系のGM装置から受信したアナウンスメッセージから抽出されたBMCAの優先度に関するパラメータと保持部11に保持された新ClockIdentity値114とに基づいて、通信装置10に接続されたPTPクライアント装置へ送信するアナウンスメッセージを生成する。次に、送信部14は、生成部13によって生成されたアナウンスメッセージを、通信装置10の送信ポートから、通信装置10に接続されたPTPクライアント装置のPTPスレーブポートへ送信する。
【0035】
以上説明したように、本実施形態に係る通信装置10を1系のBC装置としてPTPクライアント装置の1系のPTPスレーブポートに接続すると、当該PTPクライアント装置の2系のPTPスレーブポートに接続された2系のBC装置から2系のPTPスレーブポートに送信されるBMCAの優先度に関するパラメータの1つであるIdentities of Senders値よりも値の小さなIdentities of Senders値が設定されたHeaderを含むアナウンスメッセージを、当該PTPクライアント装置の1系のPTPスレーブポートへ送信することができる。一方、本実施形態に係る通信装置10を2系のBC装置としてPTPクライアント装置の2系のPTPスレーブポートに接続すると、当該PTPクライアント装置の1系のPTPスレーブポートに接続された1系のBC装置から1系のPTPスレーブポートに送信されるBMCAの優先度に関するパラメータの1つであるIdentities of Senders値よりも値の大きなIdentities of Senders値が設定されたHeaderを含むアナウンスメッセージを、当該PTPクライアント装置の2系のPTPスレーブポートへ送信することができる。そのため、1系のBC装置および2系のBC装置が同一のGM装置のグランドマスタークロックに同期している場合、1系と2系の2系統に冗長化されたPTPスレーブポートを有する各PTPクライアント装置の現用系のPTPスレーブポートを1系のPTPスレーブポートに統一することができる。
【0036】
[第2の実施形態]
図2は、第1の実施形態に係る通信装置10を1系のBC装置および2系のBC装置として用いた通信システム100の一例を示すブロック図である。本実施形態に係る通信システム100は、GM装置1-1、1-2、TC装置2-1、2-2、BC装置3-1~3-4、および、PTPクライアント装置4-1、4-2を含んで構成されている。これらGM装置1-1、1-2、TC装置2-1、2-2、BC装置3-1~3-4、および、PTPクライアント装置4-1、4-2は、IEEE1588規格に準拠した通信を行う。
【0037】
GM装置1-1およびGM装置1-2は、基準時刻の提供元であるマスター機器である。本例では、2台のGM装置1-1、1-2で冗長させている。GM装置1-1には、イーサネット(登録商標)のケーブル(以下、単にケーブルと記す)5-1を通じてTC装置2-1が接続され、GM装置1-2には、ケーブル5-2を通じてTC装置2-2が接続されている。また、TC装置2-1には、4本のケーブル5-3~5-6により、4台のBC装置3-1~3-4が1対1に接続され、TC装置2-2には、4本のケーブル5-7~5-10により、同じ4台のBC装置3-1~3-4が1対1に接続されている。
【0038】
このように各BC装置3-1~3-4は、TC装置2-1、2-2を介して、2台のGM装置1-1、1-2と通信することで、GM装置1-1、1-2の1台と通信できなくなっても、時刻同期することができる。各BC装置3-1~3-4が、2台のGM装置1-1、1-2のうちの何れを現用のGM装置として選出するかは、BMCAに従う。即ち、各BC装置3-1~3-4は、TC装置2-1を通じてGM装置1-1から受信するアナウンスメッセージから抽出したBMCAの優先度に関するパラメータと、TC装置2-2を通じてGM装置1-2から受信するアナウンスメッセージから抽出したBMCAの優先度に関するパラメータとを比較して、現用のGM装置を選出する。そして、各BC装置3-1~3-4は、選出した現用のGM装置をマスターとするスレーブ動作で、現用のGM装置が送出するグランドマスタークロックに同期して動作する。
【0039】
BC装置3-1には、ケーブル5-11によりPTPクライアント装置4-1の1系のPTPスレーブポート4-1-1が接続されている。BC装置3-2には、ケーブル5-12によりPTPクライアント装置4-1の2系のPTPスレーブポート4-1-2が接続されている。BC装置3-3には、ケーブル5-13によりPTPクライアント装置4-2の1系のPTPスレーブポート4-2-1が接続されている。BC装置3-4には、ケーブル5-14によりPTPクライアント装置4-2の2系のPTPスレーブポート4-2-2が接続されている。即ち、BC装置3-1、3-3は1系のBC装置であり、BC装置3-2、3-4は2系のBC装置である。なお、
図1では、1つのBC装置に1つのPTPクライアント装置が接続されているが、1つのBC装置に2つ以上のPTPクライアント装置が接続されていてよい。但し、1系のBC装置3-1、3-3に複数のPTPクライアント装置が接続される場合、それら全てのPTPクライアント装置は1系のPTPスレーブポートによって1系のBC装置に接続されている必要がある。同様に、2系のBC装置3-2、3-4に複数のPTPクライアント装置が接続される場合、それら全てのPTPクライアント装置は2系のPTPスレーブポートによって2系のBC装置に接続されている必要がある。
【0040】
PTPクライアント装置4-1は、ケーブル5-11、5-12を介して、2台のBC装置3-1、3-2と通信することで、BC装置3-1、3-2の1台と通信できなくなっても、時刻同期することができる。また、PTPクライアント装置4-2は、ケーブル5-13、5-14を介して、2台のBC装置3-3、3-4と通信することで、BC装置3-3、3-4の1台と通信できなくなっても、時刻同期することができる。各PTPクライアント装置4-1、4-2が、2台のBC装置のうちの何れを現用のBC装置として選出するかは、BMCAに従う。
【0041】
即ち、PTPクライアント装置4-1は、1系のPTPスレーブポート4-1-1においてBC装置3-1から受信するアナウンスメッセージから抽出したBMCAの優先度に関するパラメータと、2系のPTPスレーブポート4-1-2においてBC装置3-2から受信するアナウンスメッセージから抽出したBMCAの優先度に関するパラメータとを比較して、現用のBC装置を選出する。そして、PTPクライアント装置4-1は、選出した現用のBC装置をマスターとするスレーブ動作で、現用のBC装置が送出するグランドマスタークロックに同期して動作する。このとき、選出した現用のBC装置が接続されているPTPスレーブポートが現用系のPTPスレーブポートになる。PTPクライアント装置4-2においてもPTPクライアント装置4-1と同様の動作が行われることにより、現用のBC装置が選出され、選出された現用のBC装置をマスターとするスレーブ動作で、現用のBC装置が送出するグランドマスタークロックに同期して動作する。
【0042】
第1の実施形態で説明したように、1系のBC装置3-1、3-3から送出されるアナウンスメッセージ中のBMCAの優先度に関する1つのパラメータであるIdentities of Senders値は、2系のBC装置3-2、3-4から送出されるアナウンスメッセージ中のBMCAの優先度に関する1つのパラメータであるIdentities of Senders値より小さい。そのため、1系のBC装置3-1、3-3および2系のBC装置3-2、3-4が同一のGM装置のグランドマスタークロック、例えばGM装置1-1のグランドマスタークロックに同期している場合、PTPクライアント装置4-1、4-2は、Identities of Sendersの値が小さい側のBC装置3-1、3-2を現用のBC装置として選出する。その結果、PTPクライアント装置4-1、4-2は共に1系のPTPスレーブポートが現用系のPTPスレーブポートになる。
【0043】
これに対して、BC装置3-1~3-4に本発明に係る通信装置10を適用しなかった場合、PTPクライアント装置4-1、4-2の現用系のPTPスレーブポートを特定の1つの系に統一できる保証はない。その理由は、構築された通信システムにおけるBC装置3-1とBC装置3-2の旧ClockIdentity値の大小関係と、BC装置3-3とBC装置3-4の旧ClockIdentity値の大小関係とが一致している保証がないためである。若し、BC装置3-1の旧ClockIdentity値<BC装置3-2の旧ClockIdentity値、BC装置3-3の旧ClockIdentity値>BC装置3-4の旧ClockIdentity値であれば、PTPクライアント装置4-1では1系のPTPスレーブポートが現用系になり、PTPクライアント装置4-2では2系のPTPスレーブポートが現用系になり、統一されない。
【0044】
なお、通信システム構築時にシステム設計者が冗長関係にあるBC装置のMACアドレスを比較し、MACアドレス値の小さい方を、PTPを通したい系に配置すれば、当面の問題は回避できる。しかしながら、統一性および冗長性を維持するためには、運用中に故障したBC装置を保守用BC装置に交換する都度、冗長関係にある他のBC装置と所定の大小関係になるMACアドレス値を持った保守用BC装置が必要になり、そのような保守用BC装置がない場合、統一性および冗長性の双方を維持することが困難になる。PTPクライアント装置単位で現用系統が1系であるか、2系であるかがわからなくなる状態は、機器の保守交換や点検時に誤操作で意図せずに現用系経路を遮断させ、サービスに影響を及ぼす可能性があるため好ましくない。
【0045】
また、
図2に示される通信システム100において、各BC装置3-1~3-4は、現用のGM装置(例えばGM装置1-1とする)に障害が発生し、現用のGM装置1-1からのグランドマスタークロックの配信が途絶えた場合、予備のGM装置1-2から配信されているグランドマスタークロックに同期することになる。従って、各BC装置3-1~3-4からGM装置1-2のグランドマスタークロックが各PTPクライアント装置4-1、4-2に配信される。このときの各PTPクライアント装置4-1、4-2の現用系のPTPスレーブポートに変更はない。
【0046】
さらに、各BC装置3-1~3-4は、GM装置1-1、1-2の双方に障害が発生して両系のグランドマスタークロックの配信が途絶えた場合、自らがクロック配信元となってBCクロックを配下のPTPクライアント装置4-1、4-2に送信する。このとき、各BC装置3-1~3-4から各PTPクライアント装置4-1、4-2に送出されるアナウンスメッセージに含まれるBMCAの優先度に関するPriority1、Priority2は各BC装置3-1~3-4のPriority1、Priority2になる。従って、各BC装置3-1~3-4のPriority1、Priority2を第1の実施形態で説明したような大小関係に設定しておくことにより、PTPクライアント装置4-1~4-2の現用系のPTPスレーブポートを障害発生前と同じに維持することができる。
【0047】
また、現用のBC装置に障害が発生してグランドマスタークロックの配信が途絶えたPTPクライアント装置4-1、4-2では、予備のBC装置から配信されるグランドマスタークロックに同期するようになる。また、現用系のPTPスレーブポートに障害が発生してグランドマスタークロックの受信が途絶えたPTPクライアント装置4-1、4-2では、予備系のPTPスレーブポートから受信されるグランドマスタークロックに同期するようになる。このようにBC装置やPTPスレーブポートに障害が発生した場合、通信システム全体で全てのPTPクライアント装置4-1、4-2の現用系のPTPスレーブポートを1系(または2系)に統一することができなくなる。従って、障害発生時、PTPクライアント装置4-1、4-2の現用系のPTPスレーブポートを確認する作業が必要になることがある。本実施形態では、正常時に1系または2系の何れかの系に現用系のPTPスレーブポートが統一されているので、この確認作業は容易に行える。
【0048】
例えば、正常状態で現用系のPTPスレーブポートが1系に統一されている通信システムを想定する。このとき、障害を起こしたBC装置が1系のBC装置であれば、その配下のPTPクライアント装置の現用系は2系であり、障害を起こしたBC装置が2系のBC装置であれば、その配下のPTPクライアント装置の現用系は1系のままであることが確認できる。また、障害を起こしたPTPスレーブポートが1系であれば、そのPTPクライアント装置の現用系は2系のPTPスレーブポートであり、障害を起こしたPTPスレーブポートが2系であれば、そのPTPクライアント装置の現用系は1系のPTPスレーブポートのままであることが確認できる。
【0049】
以上、上記各実施形態を参照して本発明を説明したが、本発明は、上述した実施形態に限定されるものではない。本発明の構成や詳細には、本発明の範囲内で当業者が理解しうる様々な変更をすることができる。例えば、上述したCPUの代わりに、GPU(Graphic Processing Unit)、DSP(Digital Signal Processor)、MPU(Micro Processing Unit)、FPU(Floating number Processing Unit)、PPU((Physics Processing Unit)、TPU(Tensor Processing Unit)、量子プロセッサ、マイクロコントローラ、又は、これらの組み合わせなどを用いることができる。
【産業上の利用可能性】
【0050】
本発明は、IEEE1588規格のPTPに基づく時刻同期で通信を行う通信装置全般に利用できる。
【符号の説明】
【0051】
10通信装置
11 保持部
111 MACアドレス
112 プライオリティ値
113 旧ClockIdentity値
114 新ClockIdentity値
12 受信部
13 生成部
14 送信部
15 算出部
1-1、1-2 GM装置
2-1、2-2 TC装置
3-1~3-4 BC装置
4-1 PTPクライアント装置
4-1-1 1系のPTPスレーブポート
4-1-2 2系のPTPスレーブポート
4-2 PTPクライアント装置
4-2-1 1系のPTPスレーブポート
4-2-2 2系のPTPスレーブポート
5-1~5-14 ケーブル