【実施例1】
【0015】
本実施例では、下位装置からの信号よりクロック抽出を行い、同期しているかどうか判定を行う装置の例を説明する。
【0016】
図1に本実施例の通信システム構成の例を示す。本実施例では、
図12の同期イーサ網に同期非対応のノードN15が誤挿入された場合において、ノードN11〜N14が本発明の装置N21〜N24で構成された例を示す。
【0017】
図2は、本実施例での装置N21〜N24内部のブロック図を示す。上位側装置から送られてきたパケットは、PHY部B11において例えばパケットのプリアンブル等からクロックを抽出され、抽出されたクロックはCLK切替制御部B18に送られる。その後パケットは振分制御B12に送られ、ESMCパケットが分離されてESMC終端部B15において終端される。ESMC以外のデータパケットについてはデータ処理部B23に送られてそれぞれのパケットに必要なデータ処理された後、セレクタB13に送られる。なお、特にデータパケットの処理が必要ない場合はデータ処理部B23をパケットが単に通過しても良い。
【0018】
ESMC終端部B15は、受信したESMCパケットのSSMコードを判別し、PHY部B11が抽出したクロックの品質をCLK切替制御部B18に通知する。CLK切替制御部B18は、ESMC終端部B15から通知されたクロックの品質に従って自走用CLKB17かPHY部B11が抽出したクロックのどちらを使用するかを判断し、いずれかのクロックを選択してPLL(Phase Locked Loop)B19に出力する。PLL(Phase Locked Loop)B19はPHY部B14と自装置内のクロックとのクロック同期をとり、送信側のPHY部B14およびB20に分配する。また、下位側装置にクロック品質を伝えるためにESMC生成部B16にてESMCパケットが生成され、セレクタB13でデータパケットとESMCパケットが選択されて、データパケットのパケット間にESMCパケットが挿入されPHY部B14より下位側装置に送信される。また、下位側装置から送られてきたパケットは、PHY部B21で受信され、データ処理部B24で必要な場合は特定の処理をされた後、PHY部B20によって上位側へ送信される。
【0019】
さらに本実施例では、CLK比較部B30が、自装置でデータ送信に用いているクロックである、CLK切替制御部B18から出力されるクロックと、下位装置の信号から抽出したクロックである、受信PHY部B21から抽出したクロックとを比較する。CLK切替制御部B18のクロック比較方法としては、例えばある時間内におけるそれぞれのクロックのクロック数をカウンタで数えて比較する方法や、クロックパルスの立ち上がりエッジの位相差を比較する方法等を用いても良い。
【0020】
CLK比較部B30は、この比較結果をESMC生成部B16と装置管理部B22に通知する。ESMC生成部B16は後述するようにCLK比較部B30からの通知内容に応じてクロックの品質を表わすSSMコードを決定し、このSSMコードを含んだESMCパケットを生成する。
【0021】
装置管理部B22は、CLK比較部B30からの通知を受けてOpS11に警報を送信する。その他装置管理部B22は、OpS11から装置設定の指示を受けると装置内の各部の設定も行う。OpS11は少なくともノードN21〜24からなるネットワークを監視する装置であり、各ノードがどのノードに接続されているかというノード間の接続に関する情報を持ち、各ノードから通知される警報を受信してネットワーク全体の状態を監視する。
【0022】
図3に本実施例の装置N21〜N24それぞれが、下位の装置からの信号よりクロック抽出を行い、それが自装置内のクロックと同期しているかどうか判定を行う処理を説明するフローチャートの例を示す。ここでは
図1におけるノードN22での同期判定を例に、同期イーサ非対応装置N15が誤挿入された際の検出方法について説明する。
【0023】
ノードN22においてPHY部B21が、ノードN15から受信したパケットからクロックを抽出する(S11)。ステップS12でCLK比較部B30が、CLK比較部B30により抽出したクロックと、PHY部B11によりノードN21からのパケットから抽出されCLK切替制御部B18により選択出力されているクロックとの比較を行い、同期しているかどうか判定を行う(S12)。同期していなかった場合、下位側のノードN15は同期イーサ非対応装置であるか、同期イーサ対応装置であるが同期が取れていない状態であることが分かる。CLK比較部B30はこの比較結果を装置管理部B22に通知する。
【0024】
装置管理部B22はCLK比較部B30からの通知を受け、前回のCLK比較時に同期が取れていたか否かを判断する(S16)。このためCLK比較部B30は、前回CLK比較部B30に通知された比較結果を
図2には図示しない記憶部に格納しても良い。装置管理部B22は、ステップS16にて前回のCLK比較時に同期が取れていたと判断した場合、OpS11に対してノードN15の同期が取れていないという下位装置非同期警報を通知する(S17)。ただし、自身から対応する下位装置に送信しているSSMコードがDNU(DoN’t Use)である時、警報通知は抑止する。
【0025】
また装置管理部B22は、ステップS16にて前回のCLK比較時も同期が取れていなかった場合には警報通知は行わない。このようにステップS16の判断により、装置管理部B22は、同期が取れていた状態から同期外れの状態に変化した時のみOpS11へ警報を通知する。
【0026】
そして装置管理部B22は、ノードN15がノードN22と非同期であることをノードN15の下位に位置するノードN23に通知するため、ノードN15に対して送信していたESMCパケットの未使用領域を使用して、同期が取れていない(SA : Slave Asynchronous)の状態であることを下位装置同期情報に設定してするようESMC生成部B16に指示する(S18)。ノードN15ではESMCパケットをノードN23に転送するため、ノードN22はノードN15を介してノードN23に下位装置同期情報を通知することができる。
【0027】
図4にESMCのフォーマットを示す。同図は、ITU-T G.8264で規定されたESMCのPDU(Protocol Data Unit)フォーマットを示している。SSMコードはQL(Quality Level)データとしてESMCパケットのData and Padding領域411に設定される。
図5にこのQLデータのフォーマットを示す。同図おいて、SSM Code部504にクロック品質を記載して通知を行う。
図6にSSM Codeの抜粋を示す。SSM Codeは同図のように4bitで構成され、例えばネットワークから抽出したクロックの使用を禁止するDNUであれば602のように「1111」と設定される。
【0028】
下位装置同期情報はData and Padding領域411の中で、例えばQLデータの後ろ、つまりSSMコード部504の後ろに続けて設定をする。
図7に下位装置同期情報のPDUフォーマットを示す。下位装置同期情報は同図の領域704に設定する。
図8に下位装置同期情報に設定する設定コードの一覧を示す。下位装置同期情報としては、非同期(SA)801か同期が取れている(SS : Slave Synchronous)802かを設定する。
【0029】
ステップS12で下位装置と同期が取れていた場合、装置管理部B22は前回のCLK比較時に同期が取れていたか否かを確認する(S13)。ここで前回のCLK比較時に同期が取れていなかったことを確認した場合、装置管理部B22は、下位装置と同期が取れるようになったと判断して、下位装置非同期警報回復を通知する(S14)。前回のCLK比較時に同期が取れていた場合は、装置管理部B22は回復通知を送信しない。そして装置管理部B22は、下位装置同期情報に同期が取れている(SS)状態であることをESMC生成部B16に設定させ、このESMCパケットをノードN15へ送信する(S15)。
【0030】
次に、ノードN23が、ノードN15を経由して、ノードN22により下位装置同期情報が設定されたESMCパケットを受信した際の動作フローの例を
図9に示す。ノードN23がノードN15からESMCパケットを受信すると(S21)、従来通りSSMコードを参照してクロック同期を実施する。また同時に、ノードN22のESMC終端部B15は、受信したESMCパケットに含まれる下位装置同期情報を参照する(S22)。そしてESMC終端部B15は、下位装置同期情報が同期外れ(SA)であるのか、同期が取れている(SS)のかを装置管理部B22に通知する。
【0031】
下位装置同期情報が同期外れ(SA)であった場合、上位のノードN15がマスタクロック10に同期出来ていないことになる。この時、装置管理部B22は、前回受信した下位装置同期情報が同期外れ(SA)と同期状態(SS)のいずれであるのかを確認する(S26)。このため装置管理部B22は、前回受信した下位装置同期情報を図示しない記憶部に格納しても良い。
【0032】
装置管理部B22は、前回受信した下位装置同期情報が今回と異なり同期状態(SS)であれば、ノードN15の同期が取れていないことを上位装置非同期警報としてOpS11へ通知する(S27)。もしくは前回受信した下位装置同期情報が今回と同じ同期外れ(SA)であった場合には、装置管理部B22は警報を通知しない。また、装置管理部B22は、ノードN24へのESMCパケットのSSMコードをDNUとするようESMC生成部B16に指示する。
【0033】
ステップS22において、受信したESMCパケットの下位装置同期情報が、同期が取れている(SS)となった時、装置管理部B22は、前回受信した下位装置同期情報が同期外れ(SA)もしくは同期状態(SS)のいずれであったのかを確認する(S23)。前回の下位装置同期情報が同期外れ(SA)であった場合、装置管理部B22は上位装置非同期警報の回復をOpS11へ通知する(S24)。前回受信した下位装置同期情報が同期状態(SS)であった場合、装置管理部B22はOpS11への回復通知を行わない。そして装置管理部B22は、下位のノードN24に通知するSSMコードを、ノードN15から受信したESMCのSSMコードとするようESMC生成部B16に指示する(S25)。
【0034】
上記動作におけるデータのやりとりの流れを
図10の通信シーケンス図を用いて示す。同期イーサ非対応のノードN15が挿入された場合において、各装置間と装置とOpS間におけるデータのやりとりの流れを示している。ノードN15は同期イーサ非対応装置であるため非同期通信1002を行っている)。ノードN22では、ノードN15との伝送路から抽出したクロックと自装置が用いているクロックとの同期判定1004を行う。そしてノードN22からOpS11へ下位装置非同期警報1005が通知される。また、ノードN15へのESMCパケットの下位装置同期情報1006にはSA(同期外れ)が設定され、送信される。ノードN15ではこのパケットがそのままノードN23へパケット1007として転送される。
【0035】
ノードN23ではESMCパケットのSSMコードがPRCであるためノードN15との伝送路から抽出したクロックを用いてクロック同期を実施する(1011)。ただし、ノードN15がマスタクロック10と非同期であるためノードN23もマスタクロック10とは非同期となっている。これと同時に、受信したESMCパケットの下位装置同期情報がSA(同期外れ)であることを受け、ノードN23からOpS11へ上位装置非同期警報1009を通知する。また、ノードN24へ送信するESMCパケット1010のSSMコードはDNUと設定して送信を行う。
【0036】
上記動作は繰り返し実行されるが、下位装置非同期警報1005と上位装置非同期警報1009の通知については初回のみ実施され、一度警報が回復するかリセットされるまで通知は行われない。これは上述のように、ノードN22とノードN23がそれぞれ、前回判断時の同期状態を考慮してOpS11に警報通知を行うか否かを決定するためである。
【0037】
ここで、
図11にノードN15の装置が入れ替えられたりモード切替によって同期イーサ対応装置ノードN25となった場合のネットワークの例を示す。
図12は
図11の際のデータの流れを通信シーケンス図で示す。ノードN25ではESMCパケット1202を受信し、SSMコードに従ってクロック同期を行ない同期通信1205する。ノードN25が受信したESMCパケットの下位装置同期情報はSA(同期外れ)であるので下位ノードN23へのESMCパケット1204はDNUとSSMコードを設定して送信される。また、同時に上位装置非同期警報1203がOpSへ通知される。
【0038】
ノードN22では下位ノードN25のクロックを監視し(1209)、クロック同期が取れた場合にはノードN22からOpS11へ下位装置非同期警報回復1210が通知される。これと同時にノードN22は、下位装置同期情報をSS(同期状態)と設定してESMCパケット1211を送信する。ノードN25では下位装置同期情報から同期が取れているという情報(SS)を受けて、ノードN23へのSSMコードをノードN22から受けたSSMコードに対応した値であるPRCに設定し、ノードN23へESMCパケット1213を送信する。ここではまだノードN25は下位ノードN23と同期が取れていることを確認しておらず、実際に同期も取れていないので、下位装置非同期情報はSAとして送信される。これと同時に、ノードN25からOpS11へは上位装置非同期警報回復1212が通知される。
【0039】
ノードN23はノードN25からESMCパケット1213を受信すると、そのSSMコードがPRCであるため、ノードN25と同様の手順でクロック同期が実施され、ノードN25との間で同期通信1215を開始する。ノードN25はノードN23との間で同期が取れているか否かを監視しており、ノードN23が同期通信1215を開始するため、ノードN23との間で同期が取れたことを確認する(1218)。そしてノードN25は、下位装置同期情報をSS(同期状態)と設定してESMCパケット1219を送信する。
【0040】
ノードN23は、ノードN25から下位装置同期情報がSS(同期状態)に設定されたESMCパケットを1219を受信すると、上位ノードN25と同期が取れていると判断し、OpS11へ上位装置非同期警報回復1220を通知する。同様の手順を繰り返し、さらに下位の装置もマスタクロック10へ同期する。
【0041】
この実施例では、管理者はノードからOpS11に通知される下位装置非同期警報と上位装置非同期警報を受信するとネットワークが非同期状態となっていることを知ることができる。また、この2つの警報をあげてきたノードN22とN23の間に同期イーサ非対応の装置が挿入されていることが分かる。これにより、どこに同期イーサ非対応の装置が誤挿入されたかを容易に検出することができる。
【0042】
本実施例の特徴の1つは、上位のノードN22が下位ノードN15との間で同期が取れているか否かを監視し、同期が取れていない場合であってもノードN22がノードN15に送信するSSMコードはPRCのままとし、別途下位装置同期情報によってノードN23にノードN15が非同期であることを通知することにある。下位ノードがマスタクロック10に同期していると誤認しながら動作することを防ぐためには、SSMコードをPRCから
DNUに変更することでも対応はできる。しかし、そのようにせずSSMコードをPRCのままとして下位装置同期情報により非同期であることを伝達するのは、同期イーサ非対応のノードN15が同期イーサ対応のノードN25に置き換わったときに、
図12に示すように自動的に同期状態を回復させるためである。もしノードN22がSSMコードをDNUに変更してしまうと、ノードN25はDNUというSSMコードに従い装置内の自走クロックを使用するため、ノードN22がノードN25のクロックを監視しても、いつまでも非同期状態が続いてしまうからである。
【0043】
なお、
図12のように自動的な回復を必要としないなら、下位装置同期情報に替えて、もしくは下位装置同期情報による通知とともに、上記のようにSSMコードをDNUとすることで下位ノードを制御しても良い。
【0044】
このように本実施例では、スレーブ装置から受信される信号からクロック抽出を行い、自身が送出している信号のクロックとの比較を行って同期が取れているかどうかの判定を行う。クロック同期が取れていなかった場合は、スレーブ装置は同期非対応装置か同期対応装置であるが同期を取れない状態であると分かるため、その状態をOpS11に警報にて通知する。
【0045】
また、同時にスレーブ装置に対して下位装置同期状態の通知を行う。下位装置同期情報を受け取った装置では、同期出来ていない状態であると受信した場合には警報をOpS11に通知する。また、さらに下位の装置へのESMCのSSMをDNUと設定して送出する。