JP7116706B2 - 通信制御装置および通信制御方法 - Google Patents
通信制御装置および通信制御方法 Download PDFInfo
- Publication number
- JP7116706B2 JP7116706B2 JP2019088847A JP2019088847A JP7116706B2 JP 7116706 B2 JP7116706 B2 JP 7116706B2 JP 2019088847 A JP2019088847 A JP 2019088847A JP 2019088847 A JP2019088847 A JP 2019088847A JP 7116706 B2 JP7116706 B2 JP 7116706B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- communication
- communication control
- control device
- delay
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/0033—Correction by delay
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、ネットワークにおける通信に係る情報処理装置及び情報処理ハードウェア、情報処理ソフトウェアに関する。その中でも特に、時刻同期を含むネットワークの通信制御を行う技術に関する。
ネットワークの通信を利用する技術の一例として、例えば、分散されて構成される制御システムが存在する。本制御システムにおいては、時刻同期、通信量の管理など通信制御を行う必要がある。例えば、実現するアプリケーションに応じて、接続端末間の時刻を同期することが求められる場合がある。ネットワークで接続された分散制御システムの場合は、ネットワークを介した時刻同期パケットの送受信によって、時刻を同期することができる。
例えば、音声や映像等の信号を遠隔地へ伝送する場合、アナログ信号をデジタル化することが一般的である。その場合、共通の周波数を用いて、信号の符号処理と遠隔地での復号処理を実行する方式がある。このような方式では、送信側で使用する周波数と受信側で使用する周波数が同じで安定している必要がある。そのために、周波数同期、時刻同期が必要である。
また、無線通信の基地局においては、ルータ等の基地局間、基地局と携帯機器間で周波数が安定していれば、スムーズにハンドオーバーを実行することができる。そのために、基地局間の同期が求められる。
この他にも、時刻同期の応用としては、計測、測定の分野や、産業用製造装置、電力系統の保護制御装置、IED(Intelligent electronic device)等の分野 が挙げられる。
ネットワークを用いた時刻同期方式として、NTP(Network Time Protocol)、SNTP(Simple Network Time Protocol)、IEEE1588等が挙げられる。
図14を用いて、IEEE1588の時刻同期プロトコルの実行手順を説明する。図15に、IEEE1588におけるメッセージのやりとりである通信シーケンス図を示す。
IEEE1588は、マスタ-スレーブ構成をとる。
はじめにマスタは、スレーブにSyncメッセージを送信する(S060)。
このとき、マスタはSyncメッセージの送信時刻t1を記録する(S061)。
スレーブは、Syncメッセージを受信すると、その受信時刻t2を記録する(S062)。
マスタは次のいずれかの手段でt1をスレーブに通知する(S063)。
ひとつは、Syncメッセージにt1の情報をのせる方法である。
残る手段は、Syncメッセージに続くFollow_Upメッセージにt1の情報をのせる方法である。
続いて、スレーブは、マスタにDelay_Reqメッセージを送信する(S064)。
このとき、スレーブはDelay_Reqメッセージの送信時刻t3を記録する(S065)。
マスタは、Delay_Reqメッセージを受信すると、その受信時刻t4を記録する(S066)。
そして、マスタはDelay_Respメッセージにt4の情報をのせ、t4をスレーブに通知する(S067)。
Delay_Respメッセージを受信したスレーブは、t1, t2, t3, t4から、マスタ、スレーブ間の通信遅延、時刻の差分を計算する(S068)。
通信遅延の計算には、マスタ、スレーブ間の通信遅延が往復路で等しいという前提がある。 したがって、片道の通信遅延tdの計算は、次式で表わされる。
td=((t4-t3)+(t2-t1))/2 (数1)
また、マスタとスレーブの時刻の差分tdiffは次式で表わされる。
tdiff = { (t1+t4)- ( t2+t3)}/2 (数2)
このtdiffをもって、スレーブはマスタに時刻を同期する。つまり、スレーブとマスタの送受信時刻の平均の差を、当該スレーブの遅延時間として時刻同期処理を行う。
IEEE1588は、マスタ-スレーブ構成をとる。
はじめにマスタは、スレーブにSyncメッセージを送信する(S060)。
このとき、マスタはSyncメッセージの送信時刻t1を記録する(S061)。
スレーブは、Syncメッセージを受信すると、その受信時刻t2を記録する(S062)。
マスタは次のいずれかの手段でt1をスレーブに通知する(S063)。
ひとつは、Syncメッセージにt1の情報をのせる方法である。
残る手段は、Syncメッセージに続くFollow_Upメッセージにt1の情報をのせる方法である。
続いて、スレーブは、マスタにDelay_Reqメッセージを送信する(S064)。
このとき、スレーブはDelay_Reqメッセージの送信時刻t3を記録する(S065)。
マスタは、Delay_Reqメッセージを受信すると、その受信時刻t4を記録する(S066)。
そして、マスタはDelay_Respメッセージにt4の情報をのせ、t4をスレーブに通知する(S067)。
Delay_Respメッセージを受信したスレーブは、t1, t2, t3, t4から、マスタ、スレーブ間の通信遅延、時刻の差分を計算する(S068)。
通信遅延の計算には、マスタ、スレーブ間の通信遅延が往復路で等しいという前提がある。 したがって、片道の通信遅延tdの計算は、次式で表わされる。
td=((t4-t3)+(t2-t1))/2 (数1)
また、マスタとスレーブの時刻の差分tdiffは次式で表わされる。
tdiff = { (t1+t4)- ( t2+t3)}/2 (数2)
このtdiffをもって、スレーブはマスタに時刻を同期する。つまり、スレーブとマスタの送受信時刻の平均の差を、当該スレーブの遅延時間として時刻同期処理を行う。
IEEE 1588-2008 「IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems」
しかしながら、ネットワークスイッチ等の中継装置を用いてネットワークを構成する場合に、ネットワークの管理運用が困難にあるとの課題がある。例えば、同期精度が低下するという課題がある。IEEE1588では、時刻同期パケットの往復の遅延が等しいか、あるいは往復の遅延に時間差がある場合でも、その時間差が既知であるという前提に基づいている。
複数の接続端末間でネットワークを共有する場合、ネットワークスイッチ等のネットワーク中継装置内で時刻同期パケットがキューイングされ、往復の遅延差にゆらぎが生じるという課題がある。
非特許文献1は、end-to-end TC(Transparent Clock)、peer-to-peer TC(Transparent Clock)という仕組みを用いて、ネットワークデバイス内でのパケットの転送遅延を計測することができる。この計測した転送遅延をパケット内のデータに反映することで、往復の通信遅延の差を算出することができる。
しかしながら、end-to-end TC、peer-to-peer TCは高精度のタイムスタンプを取得して、時刻同期パケットの情報を更新する専用の機能が必要であるという課題がある。
また、既存の通信インフラがすでに存在し、新規導入コスト、工事期間、稼働中の通信システムの停止が困難等の理由で、end-to-end TC、peer-to-peer TCといった時刻同期対応の中継装置を導入することが困難な場合がある。
また、特許文献1は、複数の遅延推定用パケットを所定の送信間隔で送信し、それらを受信した間隔と、所定の送信間隔と比較することで、ネットワークデバイス中のキューイング遅延を推定する。
しかしながら、この方法は、時刻同期プロトコルを実行するマスタとスレーブの両方で対応する必要がある。したがって、標準規格に準拠した接続端末で構成することが困難となる。また、遅延推定用パケットによる通信帯域の消費により、有効通信帯域が低下するという課題がある。
また、電力網における異常検出を含む監視を実施するために、電力データのマッチングのために時刻同期が求められる。
さらに、ネットワークの管理運用が困難との課題においては、ネットワークの通信量の適切な管理も必要となってくる。例えば、ネットワーク中継装置でのキューイングの遅延に応じて、通信量が増加した場合、監視データが適切なタイミングで送受信できないとの課題も存在する。
本発明は、上記課題を解決するために、時刻パケットの往路と復路の遅延を算出し、これら遅延が実質的に等しいかを判断し、判断結果に応じた通信制御を行う。通信制御には、該時刻パケットの時刻を用いた時刻同期プロトコルの実施や、通信量の制御が含まれる。また、実質的に等しいとは、予め定められた差の範囲内であることを含む。なお、時刻同期プロトコルの実行には、結果として時刻が完全に一致しないことも含まれ、同期のための処理である時刻同期プロトコルを実行すればよい。
なお、本発明の特徴の1つとして、通信制御を周期的に実施することも含まれる。
ネットワーク中継装置を用いたネットワーク構成を用いた場合でも、適切な通信制御が可能になる。この通信制御には、上述のとおり、情報処理装置間の時刻を同期するための処理や通信量の制御が含まれる。
以下、本発明の実施の形態として、ネットワーク中継装置を介して通信装置と接続された通信制御装置に関する実施例1~3を以下説明する。
(システム例)
図1は、本実施例を適用した通信制御装置120を用いて構成するシステム例である。通信制御装置120、ネットワーク122を介して、他のネットワーク中継装置121、または通信装置123と接続し、通信する。
図1は、本実施例を適用した通信制御装置120を用いて構成するシステム例である。通信制御装置120、ネットワーク122を介して、他のネットワーク中継装置121、または通信装置123と接続し、通信する。
本実施例のネットワーク中継装置121として、L3スイッチを含むネットワークスイッチ、ブリッジ、ルータ、IEEE 1588のTC(Transparent Clock)、BC(Boundary Clock)、Software Defined Networkにおけるパケット・経路制御を書き換え可能なスイッチL2スイッチ、OpenFlowスイッチ、IEC 62439-3で定義されるRedBox、QuadBox、光スイッチ、光合波器、光分派器等の各種ネットワーク中継装置等が挙げられる。
また、本実施例のネットワーク122には、IEEE 802.3(Ethernet)、IEC61784、IEC61784-2のCommunication Profile Family 12(以下、EtherCAT(登録商標)とする)、IEC61158で定義される制御用ネットワークを含む各種産業用ネットワーク、TSN(Time Sensitive Network)と関連するIEEE通信規格群、DNP(Distributed Network Protocol)3、IEC 61970、IEC62439-3におけるHSR(High availability Seamless Ring)及びPRP(Parallel Redundancy Protocol)、リングネットワーク、IEEE802.17のRPR方式、CAN(Controller Area Network:登録商標)、DeviceNet、RS-232C、RS-422、RS-485、ZigBee(登録商標)、Bluetooth(登録商標)、IEEE 802.15、IEEE 802.1、モバイル通信、OpenADR、ECHONET Lite(登録商標)、OpenFlow(登録商標)等が含まれる。
以下、通信制御装置120をIEEE1588におけるスレーブ(マスタの時刻に対応する時刻同期処理を実行する)、通信装置123をマスタとして説明する。なお、通信制御装置120と通信装置123は互いに通信を行うものであればよい。また、以下で説明する通信制御装置120の処理を、通信装置123で実行してもよいし、通信制御装置120と通信装置123をそれぞれ通信装置ないし通信制御装置と呼びならわす態様も本実施例に含まれる。
(ハードウェア構成)
図2は、本実施例を適用した通信制御装置120のハードウェア構成である。
CPU101は、不揮発性記憶媒体109からプログラムをメモリ108に転送して実行する。本実施例の実行処理プログラムとしては、オペレーティングシステム(以下、OSと称す)やOS上で動作するアプリケーションプログラムが例示される。
(ハードウェア構成)
図2は、本実施例を適用した通信制御装置120のハードウェア構成である。
CPU101は、不揮発性記憶媒体109からプログラムをメモリ108に転送して実行する。本実施例の実行処理プログラムとしては、オペレーティングシステム(以下、OSと称す)やOS上で動作するアプリケーションプログラムが例示される。
LAN102には、ネットワーク122との通信機能を実装した送受信機ICである。LAN102は、CPU101上で動作するプログラムから通信要求を受け取り、ネットワーク122に対して通信する。LAN102の実装例としては、IEEE802.3規格のMAC(Media Access Control)チップ、PHY(物理層)チップ、MACとPHYの複合チップ、FPGA、CPLD、ASIC、ゲートアレイ等のICが例示される。なお、LAN102は、CPU101や、コンピュータ内部の情報経路を制御するチップセットに含まれていてもよい。
なお、LAN102はIEEE1588等に定める計時機能を有してもよい。これは所定の時刻同期パケットを送信または受信する際のタイムスタンプを計時する機能である。計時したタイムスタンプをパケットに格納する機能を含めてもよい。
メモリ108は、CPU101が動作するための一時的な記憶領域であり、不揮発性記憶媒体109から転送したOS、アプリケーションプログラム等が格納される。
メモリ108は、CPU101が動作するための一時的な記憶領域であり、不揮発性記憶媒体109から転送したOS、アプリケーションプログラム等が格納される。
不揮発性記憶媒体109は、情報の記憶媒体で、OS、アプリケーション、デバイスドライバ等や、CPU101を動作させるためのプログラムの保存、プログラムの実行結果の保存に利用される。本実施例の不揮発性記憶媒体109として、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)、フラッシュメモリが例示される。また、本実施例の不揮発性記憶媒体109として、取り外しがより容易な外部記憶媒体が含まれる。これには、フロッピーディスク (FD)、CD、DVD、ブルーレイ(登録商標)、USBメモリ、コンパクトフラッシュ(登録商標)等 の利用が例示される。
本実施例のバス110には、CPU101、LAN102、メモリ108、不揮発性記憶媒体109をそれぞれ接続する。バス110としては、PCIバス、ISAバス、PCI Expressバス、システムバス、メモリバス等 が例示される。
(各機能部の説明)
図3に、本実施例を適用した通信制御装置120の機能構成図を示す。 時刻同期制御部130は、時刻同期処理を実行する機能部である。時刻同期処理に含まれる時刻同期プロトコルとしては、IEEE 1588やNTP、SNTP が挙げられる。時刻同期制御部130では、時刻同期部131の同期時刻の推定方法、推定式を更新するか否かを決定する。このために、タイムスタンプ部133で計測した時刻と基準遅延記憶部132で保持する基準遅延と、時刻同期部131から通知される推定同期時刻または同期時刻を算出するために必要なパラメータとを用いる。
(各機能部の説明)
図3に、本実施例を適用した通信制御装置120の機能構成図を示す。 時刻同期制御部130は、時刻同期処理を実行する機能部である。時刻同期処理に含まれる時刻同期プロトコルとしては、IEEE 1588やNTP、SNTP が挙げられる。時刻同期制御部130では、時刻同期部131の同期時刻の推定方法、推定式を更新するか否かを決定する。このために、タイムスタンプ部133で計測した時刻と基準遅延記憶部132で保持する基準遅延と、時刻同期部131から通知される推定同期時刻または同期時刻を算出するために必要なパラメータとを用いる。
時刻同期制御部130は、CPU101またはCPU101上で動作するアプリケーションで実現してもよいし、LAN102をFPGAやCPLDで構成した場合のハードウェア論理として実現してもよい。あるいは、CPU101上のソフトウェアと、LAN102の両方で構成してもよい。この場合は、パケットの送信タイミング、受信タイミングの計測機能、あるいはパケットフォーマットの生成をLAN102で処理することが例示される。
時刻同期部131は、時刻同期制御部130が実行するネットワーク時刻同期プロトコルで得られた情報に基づいてパラメータを設定され、マスタに同期した時刻を管理する。
時刻同期部131は、CPU101またはCPU101上で動作するアプリケーションで実現してもよいし、LAN102に含まれるハードウェア論理として実現してもよい。
時刻同期部131は、CPU101またはCPU101上で動作するアプリケーションで実現してもよいし、LAN102に含まれるハードウェア論理として実現してもよい。
基準遅延記憶部132は、時刻同期制御部130で時刻の同期制御を実行するかどうかを判定するために用いる基準遅延を保持する。この基準遅延は、タイムスタンプ部133が計測したタイムスタンプや、時刻同期パケット上のタイムスタンプを取得して、動的に算出してもよいし、予めネットワークの構成情報から計算して入力してもよい。
基準遅延記憶部132は、メモリ108、不揮発性記憶媒体109を用いることが例示される。
基準遅延記憶部132は、メモリ108、不揮発性記憶媒体109を用いることが例示される。
タイムスタンプ部133は、時刻同期用のパケットに対して、タイムスタンプ部133を通過した際、または通信部134、時刻同期部131にて送受信されたタイミングを計時する。加えて、計時したタイムスタンプを時刻同期用パケットに格納する。
タイムスタンプ部133は、CPU101またはCPU101上で動作するアプリケーションで実現してもよいし、LAN102に含まれるハードウェア論理として実現してもよい。
通信部134は、通信プロトコルにおける所定のパケットの送受信機能である。この通信部134は、往路、復路の遅延時間の差に応じて、通信量を制御する機能も有する。
(動作手順)
次に、時刻同期制御部130の動作手順を図4に示す。
はじめに、時刻同期部131を制御して、時刻同期処理を実行するタイミングか判定する(S020)。これは、タイマーで予め定められた時刻を検知したときでも、図14のS062、図15のSyncメッセージの受信後でもよいし、図14のS068、図15のDelay_Respメッセージの受信後でもよい。また、数1,2に示すように、往路と復路のタイムスタンプや遅延を用いる場合は、これらのパラメータを取得済みであることや、パラメータを算出済みである場合に、判定タイミングであると判定してもよい。
(動作手順)
次に、時刻同期制御部130の動作手順を図4に示す。
はじめに、時刻同期部131を制御して、時刻同期処理を実行するタイミングか判定する(S020)。これは、タイマーで予め定められた時刻を検知したときでも、図14のS062、図15のSyncメッセージの受信後でもよいし、図14のS068、図15のDelay_Respメッセージの受信後でもよい。また、数1,2に示すように、往路と復路のタイムスタンプや遅延を用いる場合は、これらのパラメータを取得済みであることや、パラメータを算出済みである場合に、判定タイミングであると判定してもよい。
次に、時刻同期部131を制御するかを判定する(S021)。判定方法の詳細は、後述する。S021で、時刻同期処理を実行すると判定した場合(S021のY)、時刻同期制御部130は、時刻同期部131を制御することで、時刻同期処理を実行する(S022)。この時刻同期処理は、往路の遅延算出(図6、8)、復路の遅延算出(図7、9)、往路と復路の遅延の差分算出に基づく時刻同期プロトコルの実行(図14、15、数2)で構成される。このことには、時刻同期部131の有する同期時刻の推定式のパラメータを更新することが含まれる。また、内部でソフトウェアタイマやハードウェアタイマで実現する同期時刻そのものを変更することや、非連続の時間変化を避けるために所定期間時刻の進み方を調整することも含まれる。なお、この時刻同期処理には結果として処理後に時刻が完全に同期(一致)しないことも含まれ、実質的に同期されればよい。このことは、本処理が同期のための処理を含むことを許容する。また、本S022は周期的に行うものであり、その期間が定期的なものを含む。
S021で時刻同期を制御しない、つまり、時刻同期処理を実行しないと判定すれば(S021のN)、そのまま終了する。
(時刻同期の制御判定:最小遅延)
S021において、時刻同期部131を制御するかどうかの判定方法として、マスタ、スレーブ間の遅延を算出し、これが最小値の場合に時刻同期部131を制御すると判定する方法が例示される。これは最小遅延であれば、通信経路上で時刻同期パケットがネットワーク中継装置121上でキューイングによる遅延を生じていないと判定する考え方に基づく。
(基準遅延の更新:最小遅延)
時刻同期処理S022の一部をなす最小遅延による基準遅延記憶部132の基準遅延の更新を、図5に示す。
はじめに、遅延を算出するタイミングかどうかを判定する(S030)。これは図14のS068、図15に示すDelay_Respメッセージ受信のタイミングや、図14のS062、図15のSyncメッセージ受信のタイミングが例示される。また、遅延算出に必要なパラメータが揃っている必要がある。
(時刻同期の制御判定:最小遅延)
S021において、時刻同期部131を制御するかどうかの判定方法として、マスタ、スレーブ間の遅延を算出し、これが最小値の場合に時刻同期部131を制御すると判定する方法が例示される。これは最小遅延であれば、通信経路上で時刻同期パケットがネットワーク中継装置121上でキューイングによる遅延を生じていないと判定する考え方に基づく。
(基準遅延の更新:最小遅延)
時刻同期処理S022の一部をなす最小遅延による基準遅延記憶部132の基準遅延の更新を、図5に示す。
はじめに、遅延を算出するタイミングかどうかを判定する(S030)。これは図14のS068、図15に示すDelay_Respメッセージ受信のタイミングや、図14のS062、図15のSyncメッセージ受信のタイミングが例示される。また、遅延算出に必要なパラメータが揃っている必要がある。
次に、数1の手順にて遅延を算出する(S031)。次に基準遅延記憶部132にて基準遅延を保持しているかを判定する(S032)。保持していれば(S032のY)、S031で算出した遅延が、基準遅延記憶部132で保持する遅延よりも小さいかを判定する(S033)。小さければ(S033のY)、S031にて算出した遅延を基準遅延とする(S034)。
S033にて、S031で算出した遅延が、基準遅延記憶部132で保持する遅延よりも小さくなければ(S033のN)、そのまま終了する。
S032にて、基準遅延を保持していなければ(S032のN)、S031にて算出した遅延を基準遅延とする(S034)。
S032にて、基準遅延を保持していなければ(S032のN)、S031にて算出した遅延を基準遅延とする(S034)。
図5の基準遅延の更新(S034)をもって、図4のS021(時刻同期部131を制御するステップ)において時刻同期を制御することが例示される。
(時刻同期部131の制御判定:往路、復路の遅延)
あるいは、時刻同期制御部130が時刻同期部131を制御するかどうかの判定において、往路と復路の推定遅延が実質的に等しい場合に時刻同期を制御してもよい。これは言い換えると、ネットワーク122上のネットワーク中継装置121によるキューイング遅延が往路と復路で等しい場合に時刻同期を制御することを意味する。この方法による時刻同期制御部130の判定手順、つまり、往路および復路における遅延の算出手順を図6、7に示す。これらは、時刻同期処理S022の一部をなすものである。
(時刻同期部131の制御判定:往路、復路の遅延)
あるいは、時刻同期制御部130が時刻同期部131を制御するかどうかの判定において、往路と復路の推定遅延が実質的に等しい場合に時刻同期を制御してもよい。これは言い換えると、ネットワーク122上のネットワーク中継装置121によるキューイング遅延が往路と復路で等しい場合に時刻同期を制御することを意味する。この方法による時刻同期制御部130の判定手順、つまり、往路および復路における遅延の算出手順を図6、7に示す。これらは、時刻同期処理S022の一部をなすものである。
往路の遅延を算出する手順を、図6に示す。
はじめに、Syncメッセージの受信を待機する(S001)。次にSyncメッセージの受信時刻を記録する(S002)。次に、マスタにおけるSyncメッセージの送信時刻を推定する(S003)。そして、Syncメッセージに格納されたタイムスタンプと、S003で推定したSyncメッセージの送信時刻の差分を求め、往路のネットワーク上で発生した遅延を算出する。
S003におけるSyncメッセージの送信時刻の推定は、時刻同期部131における同期時刻の算出と基準遅延記憶部132で保持する基準遅延に基づいて算出することが例示される。
例えば、時刻同期部131での同期時刻Tsysを次式で算出しているとする。
Tsys = a × TL + b (数3)
ここで、TLはスレーブ自身の時刻であるローカル時刻、a、bは係数である。図14、15の手順にて、a,bは算出されているとする。
ここで、TLはスレーブ自身の時刻であるローカル時刻、a、bは係数である。図14、15の手順にて、a,bは算出されているとする。
この時、マスタにおけるSyncメッセージの送信時刻TM_Syncは、数3と最小遅延dminを用いて次式で推定する。
TM_Sync = Tsys_s_Sync - dmin
= a × TL_s_Sync + b - dmin (数4)
ここで、Tsys_s_Syncは、スレーブでのSyncメッセージの受信時刻を同期時刻で表わした時刻であり、TL_s_Syncは、スレーブでのSyncメッセージの受信時刻をローカル時刻で表わした時刻である。
= a × TL_s_Sync + b - dmin (数4)
ここで、Tsys_s_Syncは、スレーブでのSyncメッセージの受信時刻を同期時刻で表わした時刻であり、TL_s_Syncは、スレーブでのSyncメッセージの受信時刻をローカル時刻で表わした時刻である。
復路での遅延の算出手順(その1)を、図7に示す。
図7において、はじめにDelay_Reqメッセージを送信するタイミングを待機する(S010)。これはSyncメッセージを受信して所定の時間経過後に実行することが例示される。
図7において、はじめにDelay_Reqメッセージを送信するタイミングを待機する(S010)。これはSyncメッセージを受信して所定の時間経過後に実行することが例示される。
次に、Delay_Reqメッセージを送信する(S011)。その際、Delay_Reqメッセージの送信時刻を記録する(S012)。その後、Delay_Respメッセージの受信を待機する(S013)。Delay_Respメッセージを受信すれば(S013のY)、マスタにおけるDelay_Reqの受信時刻を推定して記録する(S014)。その後、Delay_Respメッセージで通知されたタイムスタンプから、S014で推定したマスタのDelay_Reqの受信時刻を引き、その差分を算出する(S015)。
S014におけるDelay_Reqメッセージの受信時刻の推定は、時刻同期部131における同期時刻と基準遅延記憶部132で記憶される基準遅延に基づいて算出することが例示される。
マスタにおけるDelay_Reqメッセージの受信時刻TM_Dreqは、数3と最小遅延dminを用いて次式で推定する。
TM_Dreq = Tsys_s_Dreq + dmin
= a × TL_s_Dreq + b + dmin (数5)
ここで、Tsys_s_DreqはスレーブでのDelay_Reqメッセージの送信時刻を同期時刻で表わした時刻であり、TL_s_DreqはスレーブでのDelay_Reqメッセージの送信時刻をローカル時刻で表わした時刻である。
(往路と復路が等しい場合のまとめ)
以上の図6、7の手順によって、往路でのネットワーク上で生じた遅延と、往路での遅延が実質的に等しければ、この間に取得したタイムスタンプを用いて、図14、15、数2の手順にて時刻同期プロトコルを実行する。
= a × TL_s_Dreq + b + dmin (数5)
ここで、Tsys_s_DreqはスレーブでのDelay_Reqメッセージの送信時刻を同期時刻で表わした時刻であり、TL_s_DreqはスレーブでのDelay_Reqメッセージの送信時刻をローカル時刻で表わした時刻である。
(往路と復路が等しい場合のまとめ)
以上の図6、7の手順によって、往路でのネットワーク上で生じた遅延と、往路での遅延が実質的に等しければ、この間に取得したタイムスタンプを用いて、図14、15、数2の手順にて時刻同期プロトコルを実行する。
図6、7の手順は、ネットワーク上の発生遅延を算出して判定したが、単にマスタとスレーブ間の遅延を推定して比較してもよい。この遅延の算出手順を、図8、9に示す。
図8は、往路での遅延の算出を示すフローチャートである。
図6との違いは、S003、S004の代わりにスレーブのSyncメッセージ受信時刻を同期時刻に変換する(S040)点である。また、Syncメッセージ上のタイムスタンプ(マスタのSyncメッセージの送信時刻)とS040のスレーブのSyncメッセージの受信時刻の差分を計算することで往路の通信遅延を算出する(S041)点も違いである。
図8は、往路での遅延の算出を示すフローチャートである。
図6との違いは、S003、S004の代わりにスレーブのSyncメッセージ受信時刻を同期時刻に変換する(S040)点である。また、Syncメッセージ上のタイムスタンプ(マスタのSyncメッセージの送信時刻)とS040のスレーブのSyncメッセージの受信時刻の差分を計算することで往路の通信遅延を算出する(S041)点も違いである。
図9は復路での遅延の算出手順を示すフローチャートである。
図7との違いは、S012の後にDelay_Reqメッセージの送信時刻を同期時刻に変換(S050)する点である。また、S014、S015の代わりに、Delay_Respメッセージによって、マスタのDelay_Reqメッセージの受信時刻を取得し(S051)点も違いである。さらに、S050のDelay_Reqメッセージの送信時刻との差分を計算して復路での通信遅延を算出する(S052)点も違いである。
図7との違いは、S012の後にDelay_Reqメッセージの送信時刻を同期時刻に変換(S050)する点である。また、S014、S015の代わりに、Delay_Respメッセージによって、マスタのDelay_Reqメッセージの受信時刻を取得し(S051)点も違いである。さらに、S050のDelay_Reqメッセージの送信時刻との差分を計算して復路での通信遅延を算出する(S052)点も違いである。
この手順について、図10における時刻同期パケットの通信シーケンス図を用いて、より具体的に説明する。
本例では、スレーブは一度時刻同期処理済みとして時刻オフセット-20は取得済みであるとする。図6、7の手順の場合は、基準遅延となる最小遅延が5であることを取得済みとする。マスタとスレーブで取得したタイムスタンプから、マスタとスレーブ間の時刻オフセットを算出する過程を示す。
図10の(1)にて、マスタがSyncメッセージを送信する。このとき、マスタの送信時刻は、tm1=10とし、これをSyncメッセージ上のタイムスタンプとして格納する。これがネットワーク上で遅延を生じ、図10の(2)にてスレーブで受信される。この時のスレーブでのローカル時刻での受信時刻を45とする(図6のS002に相当)。これに時刻オフセット-20を加算して同期時刻で求めるとts2=25となる。
あわせてSyncメッセージ上のタイムスタンプの10を取得する。
あわせてSyncメッセージ上のタイムスタンプの10を取得する。
図6の手順ではマスタのSyncメッセージの送信時刻を推定する。算出した同期時刻tsys2=25から基準遅延の5を引き、マスタでのSyncメッセージの送信時刻として、20が算出される(図6のS003に相当)。これとSyncメッセージ上のタイムスタンプの10との差分を求め、10となる(図6のS004に相当)。これが往路でのネットワーク上の遅延となる。
図8の手順では、スレーブの受信時刻(同期時刻)からマスタの送信時刻を引いて、25-10=15となる(図8のS041)。
次に、図10の(3)にて、Delay_Reqメッセージを送信する(図7のS011に相当)。この時の送信時刻がローカル時刻でts3=105とする。これに時刻オフセット-20を加算して同期時刻を求めると85となる。その後、図10の(4)にてマスタがDelay_Reqを受信し、その時刻がtm4=100とする。これを図10の(5)にてDelay_Respメッセージで送信し、図10の(6)にて、スレーブで受信される。
図7の手順ではスレーブでのDelay_Reqメッセージの送信時刻85(同期時刻)に基準遅延の5を加算し、マスタでのDelay_Reqメッセージの受信時刻として90が算出される。これをDelay_Respメッセージ上のタイムスタンプの100との差分を求め、10となる(図7のS015)。これが復路上でのネットワーク上の遅延となる。
図9の手順では、マスタの受信時刻からスレーブの送信時刻(同期時刻)を引いて、100-85=15となる(図9のS052)。
図9の手順では、マスタの受信時刻からスレーブの送信時刻(同期時刻)を引いて、100-85=15となる(図9のS052)。
なお、図6、7、8、9の手順において、IEEE1588の2ステップ方式を採用し、マスタのSyncメッセージの送信時刻をFollow_Upメッセージから取得してもよい。
図6、7の手順では、いずれもネットワーク上の遅延が10となり、図8、9の手順では復路と往路の遅延が15となる。いずれも等しいため、図4のS021のYにしたがって時刻同期プロトコルを実行する。具体的には、図10のtm1、ts2、ts3、tm4を用いて、時刻同期部131の時刻同期部131を制御することで実行される。
tdiff = {(tm1 + tm4)―(ts2+ts3)}/2
= {(10+100)-(45+105)}/2
=-20
これにより、時刻オフセットが-20と求まる。ここでは、往路と復路の評価値が等しい場合を示したが、実質的に等しい、もしくは両者の差分が所定のしきい値以内であれば時刻同期部131の時刻同期を制御してもよい。そのようなしきい値の決定方法として、目標同期精度誤差をもとに決定してもよい。一例として、往路と復路の遅延の差分は、実現可能な同期精度誤差の2倍に等しいことから、目標同期精度の2倍をしきい値としてもよい。あるいは通信制御装置120や通信装置123の時刻を制御する水晶振動子が本来有する物理的な精度のばらつきによる誤差が、tm1のSync送信からtm4のDelay_Req受信までの時間だけずれる可能性がある。このため、tm4からtm1を引いた時間に、水晶振動子の精度ばらつきによって生じる誤差の最悪値を、目標精度誤差から差し引いた値をしきい値としてもよい。
= {(10+100)-(45+105)}/2
=-20
これにより、時刻オフセットが-20と求まる。ここでは、往路と復路の評価値が等しい場合を示したが、実質的に等しい、もしくは両者の差分が所定のしきい値以内であれば時刻同期部131の時刻同期を制御してもよい。そのようなしきい値の決定方法として、目標同期精度誤差をもとに決定してもよい。一例として、往路と復路の遅延の差分は、実現可能な同期精度誤差の2倍に等しいことから、目標同期精度の2倍をしきい値としてもよい。あるいは通信制御装置120や通信装置123の時刻を制御する水晶振動子が本来有する物理的な精度のばらつきによる誤差が、tm1のSync送信からtm4のDelay_Req受信までの時間だけずれる可能性がある。このため、tm4からtm1を引いた時間に、水晶振動子の精度ばらつきによって生じる誤差の最悪値を、目標精度誤差から差し引いた値をしきい値としてもよい。
例えば、tm4-tm1が1ミリ秒で、水晶振動子の精度ばらつきがプラスマイナス50ppmの場合、ばらつきは最大100ppmとなるので、1ミリ秒 × 100ppm = 100ナノ秒となる。
目標精度が5マイクロ秒であれば、しきい値を4.9マイクロ秒(5マイクロ秒―100ナノ秒)とすることが例示される。
これらの目標精度は、対象となる制御システムの要件によって定まる。例えば、電力システムの保護制御装置では、保護制御装置が系統事故を検出して遮断器を制御するまでの制御動作を考慮した上で、保護制御装置間の同期精度が規定される。
なお、上記のしきい値は時間経過とともに変化させてもよい。通信制御装置120と通信装置123が同期してから、時間経過とともに同期誤差は累積する。そのため、同期後の時間経過に応じてしきい値を小さくし、計測した往路と復路の遅延がより近い場合に時刻同期プロトコルを実行することを例示する。このようにすれば、時間経過にともなう同期のずれに応じて、通信制御装置120と通信装置123の同期精度を維持することができる。
なお、しきい値の変化度合いは、通信制御装置120と通信装置123で用いられる水晶振動子などの計時デバイスの精度に基づいて決定することが例示される。
なお、1つの通信装置123内にドメインを多重化して通信制御装置120と通信する方法は、ネットワーク中継装置121の経路制御情報で構成(ドメインごとに経路を切り替える等)してもよい。また、通信装置123内でIEEE1588パケット上のドメイン番号を識別してもよい。
(最小遅延の推定、統計値)
基準遅延を最小遅延と、図5の手順で最小遅延を更新していく場合に、図5のS031で算出された遅延が真にネットワーク122での最小遅延であるかどうかはわからない。
なお、最小遅延であるかの判定の精度を向上する方法として所定の分布モデルに基づいて推定する方法を例示する。これを図11に示す。
(最小遅延の推定、統計値)
基準遅延を最小遅延と、図5の手順で最小遅延を更新していく場合に、図5のS031で算出された遅延が真にネットワーク122での最小遅延であるかどうかはわからない。
なお、最小遅延であるかの判定の精度を向上する方法として所定の分布モデルに基づいて推定する方法を例示する。これを図11に示す。
はじめに、遅延の算出タイミングであるかを判定する(S070)。これは図5のS030と同様の判定基準に加えて、所定の分布モデルを近似できる充分な計測数を取得したかどうかが例示される。次に統計分布のモデルを推定し、その推定された分布での最小値を計算する(S071)。分布モデルとしては、ガウス分布やベータ分布が例示される。なお、この算出は図5のS031に適用してもよい。それから基準遅延を更新する(S072)。なお、更新する基準は、図11のS071で算出した遅延でもよいし、図5のS031で算出した値を用いてもよい。あるいは、いずれか小さい方の値を用いてもよい。
(最小遅延の推定、受信間隔)
次に、通信制御装置120におけるパケットの受信間隔に基づいて最小遅延であるかの判定の精度を向上する方法が例示される。これを図13に示す。これは、通信仕様により、いわゆるパケット詰まりが生じた場合に受信間隔(送信間隔)に一定の間隔を開ける、との性質を利用するものである。
はじめに、図5の手順等によって基準遅延が更新されるまで待機する(S090)。基準遅延が更新されれば(S090のY)、次に時刻同期パケットと先行パケットの受信間隔が所定しきい値と等しいかどうかを判定する(S091)。ここでの時刻同期パケットは往路でのSyncメッセージを示し、通信制御装置120で受信した際に、該Syncメッセージに先行するパケット(IEEE1588のパケットに限定されない)との受信間隔を対象としている。復路においては、通信装置123でDelay_Reqメッセージを受信した際に該Delay_Reqメッセージに先行するパケット(IEEE1588のパケットに限定されない)との受信間隔を対象とする。図13の判定は通信制御装置120で実行するため、復路でのDelay_Reqメッセージと先行パケットの受信間隔を通信装置123で計測して通信制御装置120へ通知してもよい。また、次にS091における判定結果を通信装置123から通信制御装置120へ通知してもよい。
(最小遅延の推定、受信間隔)
次に、通信制御装置120におけるパケットの受信間隔に基づいて最小遅延であるかの判定の精度を向上する方法が例示される。これを図13に示す。これは、通信仕様により、いわゆるパケット詰まりが生じた場合に受信間隔(送信間隔)に一定の間隔を開ける、との性質を利用するものである。
はじめに、図5の手順等によって基準遅延が更新されるまで待機する(S090)。基準遅延が更新されれば(S090のY)、次に時刻同期パケットと先行パケットの受信間隔が所定しきい値と等しいかどうかを判定する(S091)。ここでの時刻同期パケットは往路でのSyncメッセージを示し、通信制御装置120で受信した際に、該Syncメッセージに先行するパケット(IEEE1588のパケットに限定されない)との受信間隔を対象としている。復路においては、通信装置123でDelay_Reqメッセージを受信した際に該Delay_Reqメッセージに先行するパケット(IEEE1588のパケットに限定されない)との受信間隔を対象とする。図13の判定は通信制御装置120で実行するため、復路でのDelay_Reqメッセージと先行パケットの受信間隔を通信装置123で計測して通信制御装置120へ通知してもよい。また、次にS091における判定結果を通信装置123から通信制御装置120へ通知してもよい。
これらの受信間隔をフレーム間ギャップに基づく所定しきい値と比較する。IEEE802.3規格では、フレーム間ギャップは96bit時間と定められている。これは100Mbpsで960ナノ秒に相当し、1Gbpsで96ナノ秒に相当する。受信間隔がフレーム間ギャップに基づくしきい値と等しいとき(S091のY)、終了し、受信間隔がフレーム間ギャップに基づくしきい値と等しくなければ(S091のN)、基準遅延の準備完了とする(S092)。これは、通信系路上のネットワーク中継装置121において、時刻同期パケットがキューイングによって遅延する場合には、先行するパケットとの送信間隔(つまり、通信制御装置120における受信間隔)がフレーム間ギャップとなるためである。このようなキューイングによる遅延が発生した場合は、算出される遅延は最小遅延ではないと考えられるため、基準遅延を準備完了とせず、処理を終了する。この場合、開始処理に戻る構成としてもよい。
なお、しきい値は受信間隔の計測箇所または通信用ICの送信機能によって変化し得る。例えば、先行フレームの末尾から時刻同期パケットのプリアンブル受信後の時間を計測する場合は、フレーム間ギャップに加えてプリアンブルの処理時間が加算される。また、通信制御装置120で利用される通信用ICが、96ビット時間よりも短い時間でパケットを連送可能な場合は、その時間がしきい値となる。
図13のS092での基準遅延の準備完了かどうかの結果は、図4のS021における時刻同期の制御に用いることができる。算出された基準遅延が最小値であっても、図13の手順によって準備完了でないと考えられる場合は図4のS021において時刻同期を制御しないことが例示される。
図13のS092において一度基準遅延が準備完了とされた場合でも、ネットワークの環境や通信制御装置120と通信装置123間の通信経路が変化した場合には基準遅延の準備状態を未完了にリセットすることが例示される。
これらの環境変化は、ネットワークの状態を取得するSNTPやルーティングプロトコルの利用、あるいは運用者による明示的な通知、指示、設定によって検知することが例示される。
(同期:最小遅延)
図6、7、8、9、10に示す手順を用いて時刻同期処理を行うためには、往路と復路の遅延を計測できる必要があり、これは一度事前に時刻同期を行っていることを前提としている。
このような事前の時刻同期をするためこととして、図5に示す最小遅延を計測した際に時刻同期部131を制御することがある。
(同期:GNSS)
事前の時刻同期としては、あるいは、GNSS(Global Navigation Satellite System)を用いて 各通信制御装置120、通信装置123に対する時刻同期処理を行うことを、以下に例示する。
これらの環境変化は、ネットワークの状態を取得するSNTPやルーティングプロトコルの利用、あるいは運用者による明示的な通知、指示、設定によって検知することが例示される。
(同期:最小遅延)
図6、7、8、9、10に示す手順を用いて時刻同期処理を行うためには、往路と復路の遅延を計測できる必要があり、これは一度事前に時刻同期を行っていることを前提としている。
このような事前の時刻同期をするためこととして、図5に示す最小遅延を計測した際に時刻同期部131を制御することがある。
(同期:GNSS)
事前の時刻同期としては、あるいは、GNSS(Global Navigation Satellite System)を用いて 各通信制御装置120、通信装置123に対する時刻同期処理を行うことを、以下に例示する。
GNSSの例としては、GPS(Global Positioning System)、準天頂衛星システム、Galileo等が挙げられる。
これらのGNSSが常に有効であれば、通信制御装置120、通信装置123を適宜同期できるが、衛星システムの異常や故障、あるいは通信制御装置120、通信装置123の周辺環境が変化し、一時的に上部が遮られる場合等に本実施例は有効である。
(静的ルーティング)
なお、本実施例は往路と復路の通信遅延に着目するため、往路と復路の通信経路が同じであることが望ましい。そのため、本実施例には、往路と復路の通信経路が実質的に同じとなるように、ネットワーク中継装置121のルーティングを設定することも含まれる。
(意図的な通信フロー)
本実施例では、ネットワーク中継装置121におけるキューイング遅延を考慮した上で、所定のしきい値の範囲内で往路と復路の遅延が等しい場合に、時刻同期プロトコルを実行する。したがって、往路と復路の遅延を計測し、一時的に一方の遅延が大きい場合に、他方の遅延を増大させるように通信フローを制御してもよい。
これらのGNSSが常に有効であれば、通信制御装置120、通信装置123を適宜同期できるが、衛星システムの異常や故障、あるいは通信制御装置120、通信装置123の周辺環境が変化し、一時的に上部が遮られる場合等に本実施例は有効である。
(静的ルーティング)
なお、本実施例は往路と復路の通信遅延に着目するため、往路と復路の通信経路が同じであることが望ましい。そのため、本実施例には、往路と復路の通信経路が実質的に同じとなるように、ネットワーク中継装置121のルーティングを設定することも含まれる。
(意図的な通信フロー)
本実施例では、ネットワーク中継装置121におけるキューイング遅延を考慮した上で、所定のしきい値の範囲内で往路と復路の遅延が等しい場合に、時刻同期プロトコルを実行する。したがって、往路と復路の遅延を計測し、一時的に一方の遅延が大きい場合に、他方の遅延を増大させるように通信フローを制御してもよい。
図1において、通信制御装置120aと通信装置123に対する時刻同期処理を、以下の例で説明する。往路(通信制御装置120aから通信装置123への通信方向)の遅延が大きく、復路(通信装置123から通信制御装置120aへの通信方向)の遅延が相対的に小さい場合を例に説明する。このような場合に、復路の遅延が相対的に小さいことを通信制御装置120aが検知し、通信制御装置120cや通信制御装置120dに通信フローの生成を要求することが例示される。これを受けて通信制御装置120cまたは通信制御装置120dにおいて通信制御装置120aに対して通信を生成すれば、通信装置123から通信制御装置120aに対する復路の遅延を増大させ得ることができる。このため、所定の範囲内で往路と復路の遅延が実質的に、等しくなる可能性が高まる。
この場合、通信制御装置120aから通信制御装置120c、通信制御装置120dへの要求の内容には、通信の増加を要求すること、宛先(この場合、通信制御装置120a)、生成する通信の度合い(往路と復路の遅延差に基づく)を含めることが例示される。例えば、予め設定される遅延差と増加量の関係を示すデータを用いて、検出された遅延差に応じた増加量分の通信量を増加させる。この場合、本来必要でないダミーデータを送信するようにしてもよい。
なお、増加量については、関係を示すデータをそのまま使うだけでなく、基準遅延、最小遅延を用いる場合、制限を設けてもよい。基準遅延や最小遅延を用いる場合に、通信量を増加すると遅延量が増加し、基準遅延や最小遅延を満たさなくなる、つまり、時刻同期処理を開始できなくなる可能性が高まる。そこで、通信量を増加させる場合、基準遅延や最小遅延の値を増加させたり、一定範囲内で通信量を増加させたりすることで、通信量の増加を抑止してもよい。
また、逆に通信量を減らすことで相対的に遅延差を減少させることも本実施例に含まれる。
このようにすれば、本実施例にもとづき、通信制御装置120aと通信装置123について、時刻同期処理を行うことができる。
(効果:同期機会の増加)
本実施例による効果を、図12を用いて説明する。
(効果:同期機会の増加)
本実施例による効果を、図12を用いて説明する。
S080の線(破線)は、図5に示す最小値を計測した場合に、時刻同期処理を行った場合の同期誤差の時系列変化を示す。一方、S081の線(実線)は本実施例による手法で時刻同期処理を行った場合の同期誤差の時系列変化を示す。後者については、キューイング遅延を含めて往路と復路の遅延が所定の範囲内で等しい場合に時刻同期処理を行う方法である。
S080の場合では、対象のネットワーク122において、時刻同期パケットが他のパケットとキューイングせずに通信される場合に同期する方法であり、同期できる機会が限定的となる。一方、本実施例でのS081の方法では、最小遅延である場合に比べて、往路と復路の遅延が実質的に等しい場合にも時刻同期処理ができる。つまり、S080の場合に比較して同期機会を増やすことができる。したがって、同期誤差の最悪値をS080の場合よりも低くできることが期待される。
また、リングネットワークの一部に本実施例を適用することを、以下例示する。該リングネットワークとしては、HSR(High Availability Seamless Redundancy)を含むIEC 62439やIEEE 802.17のRPR(Resilient Packet Ring)が例示される。
(効果)
本実施例を適用した通信制御装置120は、往路と復路の遅延が所定の範囲で等しい場合に時刻同期処理を実行する。これにより、IEEE1588等の専用のネットワーク中継装置121を用いずにマルチホップネットワーク上で時刻同期処理を実現できる。したがって、既存の通信インフラに新規投資をすることなく、低コストに時刻同期システムを実現できる。また、マルチホップネットワーク上に時刻同期を実現できるため、対象の制御システムの範囲を物理的に拡大できる。すなわち、ネットワーク中継装置を用いる既存の広域通信システムをそのまま用いて時刻同期のための処理が可能になる。
(効果)
本実施例を適用した通信制御装置120は、往路と復路の遅延が所定の範囲で等しい場合に時刻同期処理を実行する。これにより、IEEE1588等の専用のネットワーク中継装置121を用いずにマルチホップネットワーク上で時刻同期処理を実現できる。したがって、既存の通信インフラに新規投資をすることなく、低コストに時刻同期システムを実現できる。また、マルチホップネットワーク上に時刻同期を実現できるため、対象の制御システムの範囲を物理的に拡大できる。すなわち、ネットワーク中継装置を用いる既存の広域通信システムをそのまま用いて時刻同期のための処理が可能になる。
実施例2は、IEEE 1588規格で定義されるネットワーク中継装置121と、IEEE1588規格の機能に未対応のネットワーク中継装置121を混載してネットワークを構成した例である(Transparent Clockとの混在)。なお、実施例に使用する符号は、特に断りのない限り、実施例1で説明した機能や要素等と同一であることを意味する。
IEEE 1588規格で定義されるネットワーク中継装置121とは、Boundary Clock(以下、BCとする)、Transparent Clock(以下、TCとする)を示す。なお、TCは、End-to-end TC(以下、E2E TC)とPeer-to-peer TC(P2P TC)を含む。
BCは、各通信ポートがIEEE1588におけるマスタまたはスレーブの機能となるネットワーク中継装置121である。各通信ポートがマスタの機能となるか、スレーブの機能となるかはIEEE1588規格による。
各通信ポートがスレーブの機能となった際に、本実施例の機能を実行することが例示される。すなわち、マスタとの時刻同期パケットの通信において、IEEE1588規格未対応のネットワーク中継装置121におけるキューイング遅延を含めて、往路と復路の通信遅延が所定の範囲内で等しいときに時刻同期処理を実行する。
E2E TCは、各時刻同期パケットのCorrection_Field(以下、CFとする)と呼ばれるフィールドにTC内での転送遅延を加算する。この時刻同期パケットを受け取った通信装置は、この通信情報を用いて、往復の遅延の差を求めることができる。P2P TCはE2E TCの機能に加えて、隣接するP2P TCとの経路遅延を計測し、時刻同期パケットのCFに加算する転送遅延に加えて、経路遅延を加算する。
本実施例の課題は、ネットワーク中継装置121上に生じる転送遅延であり、さらに往路と復路で転送遅延が異なり得ることに由来する。TCは、上記の機能を有するため、該TC(ネットワーク中継装置121)における転送遅延が往路と復路で既知となる。そのため、その転送遅延を除外して往路と復路の遅延を比較することができる。
この遅延の比較を、図1に示す構成を用いて説明する。 例えば、ネットワーク中継装置121bがE2E TCとすると、ネットワーク中継装置121bにおける転送遅延を除外できる。通信制御装置120aと通信装置123間で時刻同期処理をしているとき、ネットワーク中継装置121bは往路(通信装置123から通信制御装置120a)でのSyncメッセージのCFに転送遅延CFsyncを加算する。復路(通信制御装置120aから通信装置123)においてもDelay_ReqメッセージのCFに転送遅延CFdreqを加算する。
この遅延の比較を、図1に示す構成を用いて説明する。 例えば、ネットワーク中継装置121bがE2E TCとすると、ネットワーク中継装置121bにおける転送遅延を除外できる。通信制御装置120aと通信装置123間で時刻同期処理をしているとき、ネットワーク中継装置121bは往路(通信装置123から通信制御装置120a)でのSyncメッセージのCFに転送遅延CFsyncを加算する。復路(通信制御装置120aから通信装置123)においてもDelay_ReqメッセージのCFに転送遅延CFdreqを加算する。
これらの時刻同期パケットを受信した通信制御装置120aは、例えば図8のS041における往路での転送遅延の計算において、スレーブの受信時刻(同期時刻)からマスタの送信時刻を減算した後、さらにCFsyncを減算する。そして、図9のS052における復路での転送遅延の計算において、マスタの受信時刻からスレーブの送信時刻(同期時刻)を減算した後、さらにCFdreqを減算する。こうして求められた往路と復路の遅延は、ネットワーク中継装置121bを除外して算出することができ、あとは図4のS021において所定のしきい値の範囲で等しいかどうかを比較する。このようにすることで比較対象をTC以外のネットワーク中継装置121に限定することができ、より正確に遅延を比較でき、高精度に時刻同期処理ができる。なお、IEEE1588においてCFは加算されて更新されるため、どのネットワーク中継装置121がTCであるかを考える必要はなく、往路または復路の算出遅延からCFの値を減算すればよい。
(効果)
本実施例により、TCを用いることにより、部分的なTCの導入を可能にしながら、非IEEE1588対応のネットワーク中継装置121を用いて通信制御装置120と通信装置123に対して、時刻同期処理を実施できる。
(効果)
本実施例により、TCを用いることにより、部分的なTCの導入を可能にしながら、非IEEE1588対応のネットワーク中継装置121を用いて通信制御装置120と通信装置123に対して、時刻同期処理を実施できる。
実施例3は、通信量の制御を行う実施例である。つまり、遅延差により、ネットワークの通信量がある方向(往路、復路)に偏っていることを是正するための処理である。なお、本実施例に使用する符号は、特に断りのない限り、実施例1、実施例2で説明した機能や要素等と同一であることを意味する。
実施例3の主要な処理は実施例1の図4の処理に対応するものであるため、図面は省略し、図4を流用して説明する。また、この処理は、時刻同期制御部130と通信部134により実行される。
はじめに、時刻同期制御部130が通信量を制御するタイミングを判定する(S120)。このS120は、実施例1のS020と同様の処理を行う。次に、時刻同期制御部130が通信量の制御を行うかの判定を行う(S121)。このS121で制御を行うかの判定基準は、実施例1のS021と同様の処理を行う。
次に、通信部134において、通信量の制御を行う(S122)。S122は実施例1に対応するものであるが、その内容は以下のとおりである。予め往路と復路の遅延の差分と、増加すべき通信量の対応関係を記憶しておき、算出された遅延の差分に対応する通信量分の通信パケット(ダミー)を通信する。ここで、往路の遅延が復路の遅延より少ない場合、通信制御装置120から通信パケット(ダミー)を送信し、逆に往路の遅延が復路の遅延より多い場合、通信制御装置120から通信装置123へ通信パケット(ダミー)を送信するための指示を送付する。また、本処理では、通信量がより少ない方向の通信パケット(ダミー)を通信すること、つまり通信量を増加させているが、通信量がより多い方向の通信量を減少させてもよい。例えば、後述するタイマーを利用した時間の進み方を調整することで、通信間隔を広げることで減少することが可能になる。
この処理には、通信量制御の推定式のパラメータを更新することや、内部でソフトウェアタイマやハードウェアタイマで実現する同期時刻そのものを変更することや、非連続の時間変化を避けるために所定期間時刻の進み方を調整することが含まれる。なお、本実施例は実施例1の意図的な通信フローと異なり、遅延差分とは無関係な通信量の減少とするものである。
本実施例によれば、ネットワーク全体として、通信量の偏りを是正可能になる。
本実施例によれば、ネットワーク全体として、通信量の偏りを是正可能になる。
なお、各実施例には、遅延そのものでなく、往路と復路の通信時間を算出し、この差が等しいかを判断する技術も含まれる。さらに、電力網における異常検出を含む監視への適用も可能となる。
101 … CPU、102… LAN、108 … メモリ、109 … 不揮発性記憶媒体、110 … バス、120… 通信制御装置、121 … ネットワーク中継装置、122 … ネットワーク、123 … 通信装置、130 … 時刻同期制御部、131… 時刻同期部、132 … 基準遅延記憶部、133 … タイムスタンプ部、134 … 通信部
Claims (14)
- ネットワークを介して送受信する時刻同期パケットを用いて、前記ネットワークを介して接続される通信装置との時刻同期処理を実行する通信制御装置において、
前記通信装置へ、前記時刻同期パケットを送信する手段と、
前記通信装置から、前記時刻同期パケットを受信する手段と、
前記時刻同期パケットに記録されたタイムスタンプを用いて、前記時刻同期パケットの当該通信制御装置および前記通信装置における送受信時刻を算出する手段と、
特定された送受信時刻を用いて、当該通信制御装置と前記通信装置の間の通信経過時間である遅延時間を、往路および復路それぞれについて算出する手段と、
算出された前記往路の遅延時間と前記復路の遅延時間の差分を算出し、算出された差分が予め定められた所定しきい値以下の場合に、前記タイムスタンプを用いて、当該通信制御装置と前記通信装置の送受信時刻の平均の差を、当該通信制御装置の遅延時間として時刻同期処理を実行する手段とを有することを特徴とする通信制御装置。 - 請求項1に記載の通信制御装置において、
前記時刻同期処理を実行する手段は、前記時刻同期処理を周期的に実行させることを特徴とする通信制御装置。 - 請求項2に記載の通信制御装置において、
前記時刻同期処理を実行する手段は、算出された差分が予め定められた所定しきい値より大きい場合に、前記時刻同期処理を、次回の周期まで抑制することを特徴とする通信制御装置。 - 請求項1に記載の通信制御装置において、
前記時刻同期パケットを受信する手段は、前記時刻同期パケットを含む複数の通信パケットを受信し、
前記時刻同期処理を実行する手段は、前記複数の通信パケットそれぞれの受信間隔が、フレーム間ギャップに基づくしきい値と実質的に等しい場合、前記時刻同期処理を抑制することを特徴とする通信制御装置。 - 請求項1に記載の通信制御装置において、
前記差分が予め定められた所定しきい値より大きい場合、遅延時間がより小さな経路に対して他方よりも前記差分に応じた通信量を増加させる手段をさらに有することを特徴とする通信制御装置。 - 請求項1に記載の通信制御装置において、
前記時刻同期処理を実行する手段は、前記時刻同期処理における目標同期精度に基づいて、前記所定しきい値を決定することを特徴とする通信制御装置。 - ネットワークを介して送受信する時刻同期パケットを用いて、前記ネットワークを介して接続される通信制御装置と通信装置との時刻同期処理を実行する通信制御方法において、
前記通信制御装置は、
前記通信装置へ、前記時刻同期パケットを送信し、
前記通信装置から、前記時刻同期パケットを受信し、
前記時刻同期パケットに記録されたタイムスタンプを用いて、前記時刻同期パケットの当該通信制御装置および前記通信装置における送受信時刻を特定し、
特定された送受信時刻を用いて、当該通信制御装置と前記通信装置の間の通信経過時間である遅延時間を、往路および復路それぞれについて算出し、
算出された前記往路の遅延時間と前記復路の遅延時間の差分を算出して、算出された差分が予め定められた所定しきい値以下の場合に、前記タイムスタンプを用いて、当該通信制御装置と前記通信装置の送受信時刻の平均の差を、当該通信制御装置の遅延時間として時刻同期処理を実行することを特徴とする通信制御方法。 - 請求項7に記載の通信制御方法において、
前記通信制御装置は、
前記時刻同期処理を周期的に実行させることを特徴とする通信制御方法。 - 請求項8に記載の通信制御方法において、
前記通信制御装置は、算出された差分が予め定められた所定しきい値より大きい場合は、前記時刻同期処理を、次回の周期まで抑制することを特徴とする通信制御方法。 - 請求項7に記載の通信制御方法において、
前記通信制御装置は、
前記時刻同期パケットの受信では、前記時刻同期パケットを含む複数の通信パケットを受信し、
前記複数の通信パケットそれぞれの受信間隔が、フレーム間ギャップに基づくしきい値と実質的に等しい場合、前記時刻同期処理を抑制することを特徴とする通信制御方法。 - 請求項7に記載の通信制御方法において、
前記通信制御装置は、
前記差分が予め定められた所定しきい値より大きい場合、遅延時間がより小さな経路に対して他方よりも前記差分に応じた通信量を増加させることを特徴とする通信制御方法。 - 請求項7に記載の通信制御方法において、
前記通信制御装置は、
前記時刻同期処理における目標同期精度に基づいて、前記所定しきい値を決定することを特徴とする通信制御方法。 - ネットワークを介して送受信する時刻同期パケットを用いて、前記ネットワークを介して接続される通信装置との時刻同期のための処理を実行する通信制御装置において、
前記通信装置へ、前記時刻同期パケットを送信する手段と、
前記通信装置から、前記時刻同期パケットを受信する手段と、
前記時刻同期パケットに記録されたタイムスタンプを用いて、前記時刻同期パケットの当該通信制御装置および前記通信装置における送受信時刻を算出する手段と、
算出された送受信時刻を用いて、当該通信制御装置と前記通信装置の間の通信経過時間である遅延時間を、往路および復路それぞれに対して算出する手段と、
算出された前記往路の遅延時間と前記復路の遅延時間の差分を算出し、算出された前記差分の値に応じて、当該通信制御装置における前記ネットワークでの通信に関わる処理を実行する手段を有することを特徴とする通信制御装置。 - 請求項13に記載の通信制御装置において、
前記通信に関わる処理を実行する手段は、前記差分が予め定められた所定しきい値より大きい場合、遅延時間がより大きな経路の通信量を抑止することを特徴とする通信制御装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019088847A JP7116706B2 (ja) | 2019-05-09 | 2019-05-09 | 通信制御装置および通信制御方法 |
PCT/JP2020/005572 WO2020225954A1 (ja) | 2019-05-09 | 2020-02-13 | 通信制御装置および通信制御方法 |
EP20802540.3A EP3968562A4 (en) | 2019-05-09 | 2020-02-13 | COMMUNICATION CONTROL DEVICE AND COMMUNICATION CONTROL METHOD |
US17/600,154 US20220131681A1 (en) | 2019-05-09 | 2020-02-13 | Communication control apparatus and communication control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019088847A JP7116706B2 (ja) | 2019-05-09 | 2019-05-09 | 通信制御装置および通信制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020184710A JP2020184710A (ja) | 2020-11-12 |
JP7116706B2 true JP7116706B2 (ja) | 2022-08-10 |
Family
ID=73045252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019088847A Active JP7116706B2 (ja) | 2019-05-09 | 2019-05-09 | 通信制御装置および通信制御方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220131681A1 (ja) |
EP (1) | EP3968562A4 (ja) |
JP (1) | JP7116706B2 (ja) |
WO (1) | WO2020225954A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2024088012A (ja) | 2022-12-20 | 2024-07-02 | キヤノン株式会社 | 通信装置、通信装置の制御方法、およびプログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014238357A (ja) | 2013-06-10 | 2014-12-18 | ソニー株式会社 | 受信装置、時刻差算出方法、およびプログラム |
JP2016116143A (ja) | 2014-12-17 | 2016-06-23 | 三菱電機株式会社 | 時刻同期監視方法、通信システム、及びマスタ装置 |
JP2018155679A (ja) | 2017-03-21 | 2018-10-04 | 株式会社明電舎 | 時刻補正方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5448679B2 (ja) * | 2009-09-25 | 2014-03-19 | 三菱電機株式会社 | 無線基地局装置 |
US8989010B2 (en) * | 2012-07-10 | 2015-03-24 | Telefonaktiebolaget L M Ericsson (Publ) | Delayed based traffic rate control in networks with central controllers |
US9385930B2 (en) * | 2013-11-14 | 2016-07-05 | Cisco Technology, Inc. | Method to detect suboptimal performance in boundary clocks |
WO2015131350A1 (zh) * | 2014-03-05 | 2015-09-11 | 华为技术有限公司 | 时钟同步方法、设备及通信系统 |
CN105376043B (zh) * | 2015-11-04 | 2018-05-25 | 国网电力科学研究院武汉南瑞有限责任公司 | 一种双板卡系统的时间同步方法 |
-
2019
- 2019-05-09 JP JP2019088847A patent/JP7116706B2/ja active Active
-
2020
- 2020-02-13 EP EP20802540.3A patent/EP3968562A4/en active Pending
- 2020-02-13 WO PCT/JP2020/005572 patent/WO2020225954A1/ja unknown
- 2020-02-13 US US17/600,154 patent/US20220131681A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014238357A (ja) | 2013-06-10 | 2014-12-18 | ソニー株式会社 | 受信装置、時刻差算出方法、およびプログラム |
JP2016116143A (ja) | 2014-12-17 | 2016-06-23 | 三菱電機株式会社 | 時刻同期監視方法、通信システム、及びマスタ装置 |
JP2018155679A (ja) | 2017-03-21 | 2018-10-04 | 株式会社明電舎 | 時刻補正方法 |
Non-Patent Citations (2)
Title |
---|
EXEL, Reinhard,Mitigation of Asymmetric Link Delays in IEEE 1588 Clock Synchronization Systems[online],IEEE Communications Letters,IEEE,2014年03月,Year 2014 / Volume 18 / Issue 3,P. 507-510,Internet<URL : https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6784558> |
伊藤 将志 Masashi ITO,時刻同期のための通信遅延変動を軽減するメカニズムの明確化と検証 The Clarification and Verification o,電子情報通信学会技術研究報告 IEICE Technical Report,日本,一般社団法人電子情報通信学会 The Institute of Ele,2012年09月13日,Vol. 112 / No. 209,P. 33-38 |
Also Published As
Publication number | Publication date |
---|---|
EP3968562A4 (en) | 2023-01-11 |
JP2020184710A (ja) | 2020-11-12 |
EP3968562A1 (en) | 2022-03-16 |
WO2020225954A1 (ja) | 2020-11-12 |
US20220131681A1 (en) | 2022-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109565435B (zh) | 用于网络同步的系统和方法 | |
JP4987346B2 (ja) | ネットワークを介した時間同期化システムおよび方法 | |
EP2430784B1 (en) | Network timing distribution and synchronization using virtual network delays | |
WO2018006686A1 (zh) | 一种通信网络设备间时间同步的优化方法、装置及设备 | |
US20160149658A1 (en) | Method and device for detecting fault in synchronization link | |
US9955447B2 (en) | Clock synchronization method, mobile network system, network controller and network switch | |
WO2001095550A2 (en) | Distributing time information in a communication network | |
CN109565344B (zh) | 用于确定传播延迟的系统与方法 | |
WO2001095562A2 (en) | Method for ensuring access to a transmission medium | |
CN112166565A (zh) | 电缆网络的定时同步 | |
KR20090071923A (ko) | 동기식 이더넷에서 단일 타임 싱크 프레임을 이용한 통신단말 및 브리지 장치의 시간 동기화 방법 및 그 장치 | |
WO2021082674A1 (zh) | 时间同步的方法、通信设备和系统 | |
JP6216692B2 (ja) | 通信システム、通信方法、及び、通信プログラム | |
US9065748B2 (en) | Symmetrical latency with TDM circuit emulated service | |
JP7116706B2 (ja) | 通信制御装置および通信制御方法 | |
JP7310163B2 (ja) | 伝送装置、時刻伝送システム、および、遅延補正方法 | |
EP3915207A1 (en) | Systems and methods for testing time distribution | |
JP2014127887A (ja) | 通信制御装置 | |
KR20100048124A (ko) | 근거리 통신망에서의 시간 동기화 방법 | |
JP2020202498A (ja) | 時刻同期装置、時刻同期システム、時刻同期方法及びプログラム | |
Gamage et al. | One-Way End-to-End Path Delay Measurement for Sr/Srv6 Traffic Engineering Policies Without Clock Synchronization in Software Defined Networks | |
JP6326474B2 (ja) | 通信制御装置 | |
WO2012118177A1 (ja) | 同期装置、時刻管理方法及びコンピュータプログラム | |
Maruyama et al. | NS-3 based IEEE 1588 synchronization simulator for multi-hop network | |
JP2023061877A (ja) | 時分割スケジュールの調整方式、通信装置、時分割スケジュールの調整方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211115 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220726 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220729 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7116706 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |