(57)【特許請求の範囲】
【請求項１】
マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させるクロック同期システムであって、
前記マスターノードは、
タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、
生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、
を備え、
前記スレーブノードは、
ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段と、
前記マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、前記マスターノードへ送信する要求メッセージ生成手段と、
を備えたことを特徴とするクロック同期システム。
【請求項２】
前記マスターノードのタイムスタンプパケット生成手段は、
前記パケット送信量制御手段の要求によりパケット送信量がＮ(Ｎは自然数)倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする請求項１記載のクロック同期システム。
【請求項３】
前記マスターノードの前記タイムスタンプパケット生成手段は、
前記パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まない或いはダミーデータを含むようにすることを特徴とする請求項１記載のクロック同期システム。
【請求項４】
前記マスターノードの前記パケット送信量制御手段は、
前記スレーブノードからの前記要求メッセージを受信すると、パケット送信量をＮ倍或いは１／Ｎにするように前記タイムスタンプパケット生成手段に通知することを特徴とする請求項１から３のいずれか１項記載のクロック同期システム。
【請求項５】
前記スレーブノードの前記ジッタフィルタ手段は、
ジッタが閾値より大きいタイムスタンプをフィルタリングすると共に、ジッタが閾値以下のタイムスタンプパケットの採択率を計算することを特徴とする請求項１から４のいずれか１項記載のクロック同期システム。
【請求項６】
マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させるクロック同期システムであって、
前記マスターノードは、
タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、
生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、
を備え、
前記スレーブノードは、
ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段と、
前記ジッタフィルタにおけるジッタが閾値以下のタイムスタンプパケットの採択率をモニタリングし、該採択率が閾値以下の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング手段、
を備えたことを特徴とするクロック同期システム。
【請求項７】
前記スレーブノードは、
前記採択率をモニタリングし、当該採択率が閾値より高い場合、タイムスタンプパケットの送信量を減らすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング手段、
を備えたことを特徴とする請求項５記載のクロック同期システム。
【請求項８】
前記スレーブノードは、
前記採択率とクロック同期精度との関係から、前記採択率の閾値を決定することを特徴とする請求項６または７記載のクロック同期システム。
【請求項９】
前記スレーブノードは、
ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング手段と、
前記ＰＬＬのクロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知する採択率モニタリング手段と、
を備えたことを特徴とする請求項６または７記載のクロック同期システム。
【請求項１０】
前記スレーブノードは、
ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング手段と、
前記ＰＬＬのクロック同期精度が要求精度を満たしていることを検知した場合、前記採択率をモニタリングして、必要に応じて、タイムスタンプパケットの送信量を制御するための要求メッセージを出すように通知する採択率モニタリング手段と、
を備えたことを特徴とする請求項６または７記載のクロック同期システム。
【請求項１１】
前記スレーブノードは、
自ノードのクロックｆ２から生成されるタイムスタンプの進み間隔を、受信したタイムスタンプパケットのタイムスタンプ値の進み間隔の変化に合わせるように制御するＰＬＬのカウンタ手段
を備えたことを特徴とする請求項８または９記載のクロック同期システム。
【請求項１２】
マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、
前記スレーブノードのクロックを前記マスターノードのクロックに同期させるクロック同期システムであって、
前記マスターノードは、
タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、
生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、
パケットネットワークのジッタ変化を監視するネットワーク監視手段と、
を備え、
前記スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段を備えたことを特徴とするクロック同期システム。
【請求項１３】
前記マスターノードの前記タイムスタンプパケット生成手段は、
前記パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする請求項１２記載のクロック同期システム。
【請求項１４】
前記マスターノードの前記タイムスタンプパケット生成手段は、
前記パケット送信量制御手段からの要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まないか或いはダミーデータを含むようにすることを特徴とする請求項１２記載のクロック同期システム。
【請求項１５】
前記マスターノードの前記パケット送信量制御手段は、
前記ネットワーク監視手段から通知を受けた場合、パケット送信量をＮ倍或いは１／Ｎにするように前記タイムスタンプパケット生成手段に通知することを特徴とする請求項１２から１４のいずれか１項のクロック同期システム。
【請求項１６】
前記マスターノードの前記ネットワーク監視手段は、
前記マスターノードと前記スレーブノードとの間における毎回のＲＴＴ（Round-Trip Time）測定結果を元にネットワークのジッタを計算し、その測定結果が閾値を超えているか否かの情報を前記パケット送信量制御手段に通知することを特徴とする請求項１５のクロック同期システム。
【請求項１７】
前記マスターノードの前記ネットワーク監視手段は、
前記マスターノードと前記スレーブノードとの間において論理的なリンク切替が発生した情報を受け取った場合、その情報を前記パケット送信量制御手段に通知することを特徴とする請求項１５のクロック同期システム。
【請求項１８】
マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させるクロック同期方法であって、
前記マスターノードは、
タイムスタンプパケットを生成し、
生成するタイムスタンプパケットの数を制御し、
前記スレーブノードは、
ジッタが閾値より大きいタイムスタンプをフィルタリングし、
前記マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、前記マスターノードへ送信する、ことを特徴とするクロック同期方法。
【請求項１９】
前記マスターノードは、パケット送信量制御手段の要求によりパケット送信量がＮ(Ｎは自然数)倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする請求項１８記載のクロック同期方法。
【請求項２０】
前記マスターノードは、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まない或いはダミーデータを含むようにすることを特徴とする請求項１８記載のクロック同期方法。
【請求項２１】
前記マスターノードは、前記スレーブノードからの前記要求メッセージを受信すると、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知することを特徴とする請求項１８から２０のいずれか１項記載のクロック同期方法。
【請求項２２】
前記スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングすると共に、ジッタが閾値以下のタイムスタンプパケットの採択率を計算することを特徴とする請求１８から２１のいずれか１項記載のクロック同期方法。
【請求項２３】
前記スレーブノードは、前記採択率をモニタリングし、該採択率が閾値以下の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知することを特徴とする請求項２２記載のクロック同期方法。
【請求項２４】
マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させるクロック同期方法であって、
前記マスターノードは、
タイムスタンプパケットを生成し、
生成するタイムスタンプパケットの数を制御し、
前記スレーブノードは、
ジッタが閾値より大きいタイムスタンプをフィルタリングし、
ジッタが閾値以下のタイムスタンプパケットの採択率をモニタリングし、該採択率が閾値以下の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信する、ことを特徴とするクロック同期方法。
【請求項２５】
前記スレーブノードは、前記採択率とクロック同期精度との関係から、前記採択率の閾値を決定することを特徴とする請求項２３または２４記載のクロック同期方法。
【請求項２６】
前記スレーブノードは、
ＰＬＬのクロック精度をモニタリングし、
前記ＰＬＬのクロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知することを特徴とする請求項２３または２４記載のクロック同期方法。
【請求項２７】
前記スレーブノードは、
ＰＬＬのクロック精度をモニタリングし、
前記ＰＬＬのクロック同期精度が要求精度を満たしていることを検知した場合、前記採択率をモニタリングして、必要に応じて、タイムスタンプパケットの送信量を制御するための要求メッセージを出すように通知することを特徴とする請求項２３または２４記載のクロック同期方法。
【請求項２８】
前記スレーブノードは、自ノードのクロックｆ２から生成されるタイムスタンプの進み間隔を、受信したタイムスタンプパケットのタイムスタンプ値の進み間隔の変化に合わせるように制御することを特徴とする請求項２５または２６記載のクロック同期方法。
【請求項２９】
マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させるクロック同期方法であって、
前記マスターノードは、
タイムスタンプパケットを生成し、
生成するタイムスタンプパケットの数を制御し、
パケットネットワークのジッタ変化を監視し、
前記スレーブノードは、
ジッタが閾値より大きいタイムスタンプをフィルタリングすることを特徴とするクロック同期方法。
【請求項３０】
前記マスターノードは、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする請求項２９記載のクロック同期方法。
【請求項３１】
前記マスターノードは、パケット送信量制御手段からの要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まないか或いはダミーデータを含むようにすることを特徴とする請求項２９記載のクロック同期方法。
【請求項３２】
前記マスターノードは、ネットワーク監視手段から通知を受けた場合、パケット送信量をＮ倍或いは１／Ｎにするように前記タイムスタンプパケット生成手段に通知することを特徴とする請求項２９から３１のいずれか１項のクロック同期方法。
【請求項３３】
前記マスターノードは、マスターノードと前記スレーブノードとの間における毎回のＲＴＴ測定結果を元にネットワークのジッタを計算し、その測定結果が閾値を超えているか否かの情報を前記パケット送信量制御手段に通知することを特徴とする請求項３２のクロック同期方法。
【請求項３４】
前記マスターノードは、マスターノードと前記スレーブノードとの間において論理的なリンク切替が発生した情報を受け取った場合、その情報を前記パケット送信量制御手段に通知することを特徴とする請求項３２のクロック同期方法。
【請求項３５】
コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させる処理を実行させるプログラムであって、
前記コンピュータに、前記マスターノードが、
タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、
生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、
を実行させ、
前記スレーブノードが、
ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理と、
前記マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、前記マスターノードへ送信する要求メッセージ生成処理と、
を実行させることを特徴とするプログラム。
【請求項３６】
前記コンピュータに、前記マスターノードのタイムスタンプパケット生成手段が、
前記パケット送信量制御手段の要求によりパケット送信量がＮ(Ｎは自然数)倍になる場合、ペイロードサイズを１／Ｎにする処理を実行させることを特徴とする請求項３５記載のプログラム。
【請求項３７】
前記コンピュータに、前記マスターノードの前記タイムスタンプパケット生成手段が、
前記パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まない或いはダミーデータを含むようにする処理を実行させることを特徴とする請求項３５記載のプログラム。
【請求項３８】
前記コンピュータに、前記マスターノードの前記パケット送信量制御手段が、
前記スレーブノードからの前記要求メッセージを受信すると、パケット送信量をＮ倍或いは１／Ｎにするように前記タイムスタンプパケット生成手段に通知する処理を実行させることを特徴とする請求項３５から３７のいずれか１項記載のプログラム。
【請求項３９】
前記コンピュータに、前記スレーブノードの前記ジッタフィルタ手段が、
ジッタが閾値より大きいタイムスタンプをフィルタリングすると共に、ジッタが閾値以下のタイムスタンプパケットの採択率を計算する処理を実行させることを特徴とする請求項３５から３８のいずれか１項記載のプログラム。
【請求項４０】
コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させる処理を実行させるプログラムであって、
前記コンピュータに、前記マスターノードが、
タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、
生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、
を実行させ、
前記スレーブノードが、
ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理と、
前記ジッタフィルタ処理における、ジッタが閾値以下のタイムスタンプパケットの採択率をモニタリングし、該採択率が閾値以下の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング処理、
を実行させることを特徴とするプログラム。
【請求項４１】
前記コンピュータに、前記スレーブノードが、
前記採択率をモニタリングし、当該採択率が閾値より高い場合、タイムスタンプパケットの送信量を減らすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング処理、
を実行させることを特徴とする請求項３９記載のプログラム。
【請求項４２】
前記コンピュータに、前記スレーブノードが、
前記採択率とクロック同期精度との関係から、前記採択率の閾値を決定する処理を実行させることを特徴とする請求項４０または４１記載のプログラム。
【請求項４３】
前記コンピュータに、前記スレーブノードが、
ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング処理と、
前記ＰＬＬのクロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知する採択率モニタリング処理と、
を実行させることを特徴とする請求項４０または４１記載のプログラム。
【請求項４４】
前記コンピュータに、前記スレーブノードが、
ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング処理と、
前記ＰＬＬのクロック同期精度が要求精度を満たしていることを検知した場合、前記採択率をモニタリングして、必要に応じて、タイムスタンプパケットの送信量を制御するための要求メッセージを出すように通知する採択率モニタリング処理と、
を実行させることを特徴とする請求項４０または４１記載のプログラム。
【請求項４５】
前記コンピュータに、前記スレーブノードが、
自ノードのクロックｆ２から生成されるタイムスタンプの進み間隔を、受信したタイムスタンプパケットのタイムスタンプ値の進み間隔の変化に合わせるように制御するＰＬＬのカウンタ処理、
を実行させることを特徴とする請求項４２または４３記載のプログラム。
【請求項４６】
コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、前記スレーブノードのクロックを前記マスターノードのクロックに同期させる処理を実行させるプログラムであって、
前記コンピュータに、前記マスターノードが、
タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、
生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、
パケットネットワークのジッタ変化を監視するネットワーク監視処理と、
を実行させ、
前記スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理を実行させることを特徴とするプログラム。
【請求項４７】
前記コンピュータに、前記マスターノードの前記タイムスタンプパケット生成手段が、
前記パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、ペイロードサイズを１／Ｎにする処理を実行させることを特徴とする請求項４６記載のプログラム。
【請求項４８】
前記コンピュータに、前記マスターノードの前記タイムスタンプパケット生成手段が、
前記パケット送信量制御手段からの要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まないか或いはダミーデータを含むようにする処理を実行させることを特徴とする請求項４６記載のプログラム。
【請求項４９】
前記コンピュータに、前記マスターノードの前記パケット送信量制御手段が、
前記ネットワーク監視手段から通知を受けた場合、パケット送信量をＮ倍或いは１／Ｎにするように前記タイムスタンプパケット生成手段に通知する処理を実行させることを特徴とする請求項４６から４８のいずれか１項のプログラム。
【請求項５０】
前記コンピュータに、前記マスターノードの前記ネットワーク監視手段が、
前記マスターノードと前記スレーブノードとの間における毎回のＲＴＴ測定結果を元にネットワークのジッタを計算する処理、その測定結果が閾値を超えているか否かの情報を前記パケット送信量制御手段に通知する処理を実行させることを特徴とする請求項４９のプログラム。
【請求項５１】
前記コンピュータに、前記マスターノードの前記ネットワーク監視手段が、
前記マスターノードと前記スレーブノードとの間において論理的なリンク切替が発生した情報を受け取った場合、その情報を前記パケット送信量制御手段に通知する処理を実行させることを特徴とする請求項４９のプログラム。
【請求項５２】
請求項３５から５１のいずれか１項記載のプログラムを記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック同期システム、クロック同期方法、プログラム、及び記録媒体に関する。
【背景技術】
【０００２】
通信事業者は、より付加価値の高いサービスを実現するべく、高速データ通信網の構築を進めている。高速データ通信網は大きなトラフィック容量が必要となるため、高コストな時分割多重（ＴＤＭ：Time Division Multiple）方式よりも、低コストかつ高効率なインターネットプロトコル（ＩＰ：Internet Protocol）方式が適している。
【０００３】
しかしながら、ネットワークをＩＰ方式に移行する場合、アプリケーションによっては正確なクロック情報をパケットネットワークに繋がれた機器に伝達させる必要がある。例えば、音声やビデオなどのリアルタイムデータを送受信機間で高品質に授受するには、あらかじめ決められたタイミングでデータを再生する必要があり、安定したクロックが必要不可欠である。
【０００４】
また、モバイルネットワークなどでは、セル間のハンドオーバを滞りなく実現するために正確なクロックが必要不可欠である。具体的には、モバイルネットワーク上の各ベースステーションは、50 parts per billion (ppb)の精度でクロック同期されていなければならない。もし、ベースステーションのクロックがこの50ppbの枠を超えてドリフトしてしまった場合、セル間のハンドオーバが失敗する可能性があり、パケットが欠落したり、通信品質が劣化したりする恐れがある。
【０００５】
このように、安定したサービス品質を実現するには、パケットネットワークを介して正確なクロック情報を伝達できる方法が必要である。この問題を解決できる有望な技術として、タイムスタンプ方式が挙げられる。
【０００６】
タイムスタンプ方式は、簡単に実装できるとともに、優れたクロック同期精度を実現できる。
タイムスタンプ方式の構成図を図９に示す。
タイムスタンプ方式では、マスターノードからタイムスタンプをつけたパケットをスレーブノードに送信するとともに、スレーブノードではこのタイムスタンプを元に自身のクロックを調整することにより、クロック同期を図るものである。
より詳細には、このタイムスタンプは位相同期ループ（ＰＬＬ：Phase Locked Loop）の制御信号を生成するために使われる。すなわち、ＰＬＬは、自身のクロックと新たに到着したタイムスタンプとの差分を計算し、その差分を元に自身のクロックを調節することで、クロック同期を実現する。
【０００７】
ここで、ＰＬＬは主に４つの機能から成り立っている。つまり、位相比較器、ループフィルタ、電圧制御発振機（ＶＣＯ：Voltage Controlled Oscillator）そしてカウンタである。位相比較器は、受信タイムスタンプとＶＣＯの出力信号との間の差分信号を計算する。この差分信号はループフィルタに入力され、ジッタやノイズが抑圧される。また、この差分信号に対してＰＩ(Proportional Integral)制御を行い、最終的にゼロに追い込むような制御信号をＶＣＯに出力する。そして、ＶＣＯはループフィルタからの制御信号によって決定される周波数のクロックを出力する。カウンタはＶＣＯからの周波数を基にタイムスタンプを生成し、位相比較器に出力する。
【０００８】
クロック制御関係の技術が特許文献１〜５に記載されている。
特許文献１に記載のＰＬＬ回路は、データパケット中に伝送されてくるタイムスタンプを用いてシステムクロックを生成するＰＬＬ回路であって、データパケットを入力し、パケット内のあらかじめ決められた位置に記録されたタイムスタンプを抽出して出力するタイムスタンプ抽出手段と、システムクロックをタイムスタンプの周期まで分周し分周値を出力する分周手段と、タイムスタンプと分周値とを比較し、周波数引き込みを行って分周値の位相が遅れている場合はアップ信号を出力し、分周値の位相が進んでいる場合はダウン信号を出力する位相比較手段と、アップ信号とダウン信号とを入力し、これらの入力に従ってＮビット（Ｎは２以上の整数）のカウンタをカウントアップおよびカウントダウンしてＮビットのカウント値を出力するアップダウンカウンタ手段と、カウント値を入力し、カウント値が更新される周期の２のＮ乗分の１以下の周期でＮビットのカウント値とＮビットの加算手段の出力とを加算し、加算結果の最上位のキャリーを出力する加算手段と、キャリーを入力し、キャリーの高周波数成分を除去して制御電圧を出力する低域通過フィルタ手段と、制御電圧を入力し、制御電圧に応じた周波数に変換しシステムクロックを出力する可変周波数発振手段とを有するものである。
【０００９】
このPLL回路によれば、アップダウンカウンタの出力を加算器に入力し、フィードバックした演算のキャリー出力パルスを平均化してＶＣＯ制御電圧を生成する構成とする事により比較的簡単な回路で精度の高く安定なＰＬＬ回路を実現できる。精度を上げるために見かけのビット数を増加させることも容易であるとしている。
【００１０】
特許文献２に記載の方法は、第１のクロックを有するクロックマスタと第２のクロックを有するクロックスレーブとの間の時間同期を実行する時間同期方法であって、Ａ．クロックマスタに第１のメッセージを送出するステップであって、第１のメッセージは第１のメッセージの第１の送出時刻を表す情報を有する、ステップと、Ｂ．クロックマスタから第２のメッセージを受け取るステップであって、第２のメッセージは第１のメッセージの第１の受け取り時刻と第２のメッセージの第２の送出時刻とを表す情報を有する、ステップと、Ｃ．クロックスレーブにおいて第２のメッセージの第２の受け取り時刻を取得するステップと、Ｄ．第１及び第２の受け取り時刻と第１及び第２の送出時刻とから、クロックスレーブとクロックマスタとの間の伝送遅延を算出するステップと、Ｅ．算出された伝送遅延が許容しうる遅延のウインドウ内にあるか否かを判断し、算出された伝送遅延がウインドウ内にある場合はその算出された伝送遅延により蓄積遅延を更新するステップと、を備えたものである。
【００１１】
この方法によれば、クロックスレーブは、送出時刻の情報を含んだ第１のタイミングセルを生成し、クロックマスタに送出する。第１のタイミングセルを受け取ると、クロックマスタは第２のタイミングセルを生成してクロックスレーブに送出する。第２のタイミングセルは、第１のタイミングセルを受け取った時刻と、第２のタイミングセルを送出した時刻とを有する。クロックスレーブは、第２のタイミングセルを受け取るとその受け取り時刻を取得し、その受け取り時刻とタイミングセルに含まれるタイミング情報とに基づいて、伝送遅延を算出する。この際に、望ましくないデータを同期処理から除外するために、可変ウインドウフィルタリング機能を利用することにより、無線通信システムのコンポーネント間で時間を正確に同期させることができるとしている。
【００１２】
特許文献３に記載のパケット送信制御装置は、それぞれが所定のデータの一部もしくはこれを符号化したデータを載せた２以上のパケットからなるパケット列を発信又は中継する装置におけるパケットの送信を制御する装置であって、パケット列中の各パケットの送信処理時刻を取得する第１の手段と、パケット列中の各パケットの理想的な送信処理時刻を取得する第２の手段と、パケット列中の一のパケットの送信処理時刻から当該一のパケットの理想的な送信処理時刻を差し引き、これが一定時間を超える場合に当該一のパケットを送信せず破棄する第３の手段とを備えたものである。
【００１３】
このパケット送信制御装置によれば、発信側又は中継点側において送信処理が一定時間を越えて遅れたパケットを破棄することにより、受信側では送信処理遅延に起因する揺らぎを考慮することなく、ネットワーク遅延に起因する揺らぎのみを考慮して遅延揺らぎ吸収のための制御を行うことができ、結果として平均遅延を短くできるとしている。
【００１４】
特許文献４に記載のパケット伝送システムは、パケット伝送を行うパケット伝送システムにおいて、パケットデータが多重化されたパケットストリームからパケットギャップを抽出するパケットギャップ抽出部と、抽出したパケットギャップを測定し、測定値であるギャップ情報を生成するパケットギャップ測定部と、パケットデータにギャップ情報を付与し、ギャップ情報付きパケットデータを生成して送信するギャップ情報付きパケットデータ送信部と、から構成されるパケット送信装置と、ギャップ情報付きパケットデータを受信し、ギャップ情報とパケットデータとを分離するギャップ情報付きパケットデータ分離部と、バッファリングされるパケットデータの間に、ギャップ調整値にもとづいて調整されたパケットギャップを挿入するパケットギャップ挿入部と、パケットデータと、挿入されるパケットギャップとを格納するパケットバッファと、パケットバッファのバッファ使用量を監視し、バッファ使用量がオーバーフロー検出用しきい値を上回る場合はパケットギャップを減少させ、バッファ使用量がアンダーフロー検出用しきい値を下回る場合はパケットギャップを増加させるためのギャップ調整値を生成するバッファ監視部と、から構成されるパケット受信装置と、を有するものである。
【００１５】
このパケット伝送システムによれば、パケット送信装置では、パケットストリームからパケットギャップを抽出し、パケットギャップを測定してギャップ情報を生成して、ギャップ情報付きパケットデータを生成して送信し、パケット受信装置では、パケットバッファのバッファ使用量がオーバーフロー検出用しきい値を上回る場合はパケットギャップを減少させ、バッファ使用量がアンダーフロー検出用しきい値を下回る場合はパケットギャップを増加させるためのギャップ調整値を生成して、ギャップ調整値にもとづき、バッファリングされるパケットデータの間に、ギャップ量を調整したパケットギャップを挿入する構成とした。これにより、オーバーフロー及びアンダーフローの発生を抑制し、かつ送信側のパケット間隔を受信側で高精度に再現して、高品質のパケット伝送を行うことが可能になるとしている。
【００１６】
特許文献５に記載のクロック同期方法は、クロック信号に従って処理されるべきデータを含むパケットを伝送網を介して伝送するパケット伝送システムにおける、送信側クロック信号と受信側クロック信号との間の同期をなすクロック同期方法であって、伝送網に供給される送信パケットに、送信側クロック信号に同期して変化し且つ伝送網への供給タイミングを示す時刻情報を含む送信タイムスタンプを付加する送信タイムスタンプ付加ステップと、伝送網から受信パケットとして取り込まれる送信パケットに、受信側クロック信号に同期して変化し且つ伝送網からの取込タイミングを示す時刻情報を含む受信タイムスタンプを付加する受信タイムスタンプ付加ステップと、受信パケットをその送信タイムスタンプの時刻順に並べて得られる一連の受信パケットから所定時間長の累積期間の１つ毎に、これに含まれる受信パケットを抽出し、抽出して得られる一連の抽出受信パケットの各々について、その前または後の抽出受信パケットとの間で定まる送信タイムスタンプ間隔と受信タイムスタンプ間隔との間の差分値を算出し、これを抽出受信パケット毎に累積して差分累積値を算出する差分累積値算出ステップと、差分累積値に応じて受信クロック信号の周波数を調整する調整動作をなす周波数調整ステップと、を含むものである。
【００１７】
このクロック同期方法によれば、クロック信号に従って処理されるデータを含むパケットを伝送網を介して伝送するパケット伝送システムにおける、送信側クロック信号と受信側クロック信号との間の同期方法及び回路であり、伝送網に供給される送信パケットに送信タイムスタンプを付加し、送信パケットが受信パケットとして伝送網から取り込まれる度に、これに受信タイムスタンプを付加する。受信パケットをその送信タイムスタンプの時刻順に並べて得られる一連の受信パケットから所定時間長毎に、これに含まれる受信パケットを抽出し、その前または後の抽出受信パケットとの間で定まる送信タイムスタンプ間隔と受信タイムスタンプ間隔との間の差分値を算出し、これを抽出受信パケット毎に累積して差分累積値を算出し、差分累積値に応じて受信クロック信号の周波数を調整する。これにより、受信側における出力ジッタを適切に抑制し得るとしている。
【特許文献１】特開２０００−２４４４７３号公報
【特許文献２】特開２００１−３０８８３７号公報
【特許文献３】特開２００６−９４１３０号公報
【特許文献４】特開２００７−２５８９３２号公報
【特許文献５】特開２００７−３０６４９７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１８】
ここで、クロック同期精度が最良となる条件は、マスタ・スレーブノード間には一定の固定遅延のみが存在し、タイムスタンプが定期的にスレーブノード側に到着するようなケースである。
しかしながら、このようなケースはパケットネットワークではありえない。
【００１９】
パケットネットワークでは遅延変動が存在し、タイムスタンプの到着時間にジッタがもたらされるので、クロック同期が非常に難しくなる。スレーブノード側でジッタのように見える要因としては、主に２つの要因が存在する。
【００２０】
まず第１の要因として、マスタ・スレーブノード間のクロックドリフトが挙げられるが、第２の要因と比較すると、その影響は軽微である。
【００２１】
第２の要因は、前述したネットワークの遅延変動であり、これはタイムスタンプの到着時間に非常に大きなジッタをもたらす。ちなみに、遅延変動の発生原因は、転送パケットがスイッチのキューでランダムに待たされることに起因する。
ある程度のジッタはＰＬＬのループフィルタで吸収できるが、許容値を超えるようなジッタが入ってきた場合には吸収しきれず、同期精度が劣化してしまう。
【００２２】
図１０は、本発明に関連する技術による再生クロック周波数と時間との関係を示す図である。同図において、横軸は時間を示し、縦軸は再生クロック周波数を示す。
図１０には、ジッタが期待値より大きなパケットが入ってきたときにクロック同期精度が劣化する様子を示している。
【００２３】
したがって、同期精度を維持するには、ＰＬＬの前段にパケットフィルタを設けて（図１１を参照）、許容値（閾値）を超えるジッタを含んだタイムスタンプをフィルタリングすることにより、許容値（閾値）以下のタイムスタンプのみをクロック同期に利用するといった対策を追加する必要がある（図１２を参照）。
図１１は、本発明に関連するクロック同期システムのブロック図である。また、図１２は、図１１に示したクロック同期システムにおけるパケット数とジッタとの関係を示す図である。図１２において、横軸はジッタを示し、縦軸はパケット数を示す。
【００２４】
しかしながら、上述した特許文献１〜５に記載の技術を含め、大ジッタパケットのタイムスタンプをフィルタリングしてしまうと、その間、ＰＬＬは不安定な自走状態となる。このような自走状態に陥ると温度ドリフトやエージングによって、クロックが変動する。
ＰＬＬの温度ドリフトは、温度補正型水晶発振器（ＴＣＸＯ：Temperature Compensated crystal Oscillator）でさえ非常に大きいため（〜3000ppb/℃）、タイムスタンプパケットを連続的にフィルタしてしまうと、この温度ドリフトの影響が顕在化し、同期外れを引き起こす危険性がある。その結果、例えば、スレーブノードのＦＦＯ（Fractional Frequency Offset）値が50ppb以上になる場合、モバイルネットワークなどでセル間のハンドオーバを滞りなく実現することができなくなる。
【００２５】
このように、閾値より大きなジッタを含んだタイムスタンプを単純にフィルタリングするだけでは、安定したクロック同期を実現するのは非常に難しい。
【００２６】
そこで、本発明はこのような問題を解決するためになされたものであり、その目的とするところは、不安定な自走状態に陥ることなく、ネットワークの遅延変動の影響を低減することにより、正確なクロック同期を実現できるクロック同期システム、クロック同期方法、プログラム、及び記録媒体を提供することにある。
【課題を解決するための手段】
【００２７】
本発明の第１のシステムは、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、マスターノードは、タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、を備え、スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段と、マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、マスターノードへ送信する要求メッセージ生成手段と、を備えたことを特徴とする。
【００２８】
本発明の第２のシステムは、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、マスターノードは、タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、  生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、を備え、スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段と、ジッタフィルタの採択率をモニタリングし、採択率が閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング手段、を備えたことを特徴とする。
【００２９】
本発明の第３のシステムは、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、マスターノードは、タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、  生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、パケットネットワークのジッタ変化を監視するネットワーク監視手段と、を備え、スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段を備えたことを特徴とする。
【００３０】
本発明の第１の方法は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期方法であって、タイムスタンプパケットを生成し、生成するタイムスタンプパケットの数を制御し、ジッタが閾値より大きいタイムスタンプをフィルタリングし、マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、マスターノードへ送信することを特徴とする。
【００３１】
本発明の第２の方法は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期方法であって、  タイムスタンプパケットを生成し、生成するタイムスタンプパケットの数を制御するパケット送信量制御し、ジッタが閾値より大きいタイムスタンプをフィルタリングし、ジッタフィルタの採択率をモニタリングし、採択率が閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信することを特徴とする。
【００３２】
本発明の第３の方法は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期方法であって、  タイムスタンプパケットを生成し、生成するタイムスタンプパケットの数を制御し、パケットネットワークのジッタ変化を監視し、ジッタが閾値より大きいタイムスタンプをフィルタリングすることを特徴とする。
【００３３】
本発明の第１のプログラムは、コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させる処理を実行させるプログラムであって、コンピュータに、マスターノードが、タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、を実行させ、スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理と、マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、マスターノードへ送信する要求メッセージ生成処理と、を実行させることを特徴とする。
【００３４】
本発明の第２のプログラムは、コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させる処理を実行させるプログラムであって、コンピュータに、マスターノードが、タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、を実行させ、スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理と、ジッタフィルタの採択率をモニタリングし、採択率が閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング処理、を実行させることを特徴とする。
【００３５】
本発明の第３のプログラムは、コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させる処理を実行させるプログラムであって、コンピュータに、マスターノードが、タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、パケットネットワークのジッタ変化を監視するネットワーク監視処理と、を実行させ、  スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理を実行させることを特徴とする。
【００３６】
本発明の記録媒体は、上記いずれかのプログラムを記録したことを特徴とする。
【発明の効果】
【００３７】
本発明によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【発明を実施するための最良の形態】
【００３８】
本発明に係るクロック同期システムの一実施の形態は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、マスターノードは、タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、を備え、スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段と、マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、マスターノードへ送信する要求メッセージ生成手段と、を備えたことを特徴とする。
【００３９】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００４０】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのタイムスタンプパケット生成手段は、パケット送信量制御手段の要求によりパケット送信量がＮ(Ｎは自然数)倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする。
【００４１】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのタイムスタンプパケット生成手段は、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まない或いはダミーデータを含むようにすることを特徴とする。
【００４２】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのパケット送信量制御手段は、スレーブノードからの要求メッセージを受信すると、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知することを特徴とする。
【００４３】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、スレーブノードのジッタフィルタ手段は、ジッタが閾値より大きいタイムスタンプをフィルタリングすると共に、ジッタが閾値未満のタイムスタンプパケットの採択率を計算することを特徴とする。
【００４４】
本発明に係るクロック同期システムの他の実施の形態は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、マスターノードは、タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、を備え、スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段と、ジッタフィルタの採択率をモニタリングし、採択率が閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング手段、を備えたことを特徴とする。
【００４５】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００４６】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、スレーブノードは、ジッタフィルタの採択率をモニタリングし、採択率が閾値より高い場合、タイムスタンプパケットの送信量を減らすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング手段、を備えたことを特徴とする。
【００４７】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、スレーブノードは、タイムスタンプ採択率とクロック同期精度との関係から、タイムスタンプ採択率の閾値を決定することを特徴とする。
【００４８】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、スレーブノードは、ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング手段と、ＰＬＬのクロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知する採択率モニタリング手段と、を備えたことを特徴とする。
【００４９】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、スレーブノードは、ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング手段と、ＰＬＬのクロック同期精度が要求精度を満たしていることを検知した場合、ジッタフィルタ手段におけるタイムスタンプパケットの採択率をモニタリングして、必要に応じて、タイムスタンプパケットの送信量を制御するための要求メッセージを出すように通知する採択率モニタリング手段と、を備えたことを特徴とする。
【００５０】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、スレーブノードは、自ノードのクロックｆ２から生成されるタイムスタンプの進み間隔を、受信したタイムスタンプパケットのタイムスタンプ値の進み間隔の変化に合わせるように制御するＰＬＬのカウンタ手段、を備えたことを特徴とする。
【００５１】
本発明に係るクロック同期システムの他の実施の形態は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、マスターノードは、タイムスタンプパケットを生成するタイムスタンプパケット生成手段と、生成するタイムスタンプパケットの数を制御するパケット送信量制御手段と、パケットネットワークのジッタ変化を監視するネットワーク監視手段と、を備え、スレーブノードは、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ手段を備えたことを特徴とする。
【００５２】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００５３】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのタイムスタンプパケット生成手段は、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする。
【００５４】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのタイムスタンプパケット生成手段は、パケット送信量制御手段からの要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まないか或いはダミーデータを含むようにすることを特徴とする。
【００５５】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのパケット送信量制御手段は、ネットワーク監視手段から通知を受けた場合、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知することを特徴とする。
【００５６】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのネットワーク監視手段は、マスターノードとスレーブノードとの間における毎回のＲＴＴ（Round-Trip Time）測定結果を元にネットワークのジッタを計算し、その測定結果が閾値を超えているか否かの情報をパケット送信量制御手段に通知することを特徴とする。
【００５７】
本発明に係るクロック同期システムの他の実施の形態は、上記構成に加え、マスターノードのネットワーク監視手段は、マスターノードとスレーブノードとの間において論理的なリンク切替が発生した情報を受け取った場合、その情報をパケット送信量制御手段に通知することを特徴とする。
【００５８】
本発明に係るクロック同期方法の一実施の形態は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期方法であって、タイムスタンプパケットを生成し、生成するタイムスタンプパケットの数を制御し、ジッタが閾値より大きいタイムスタンプをフィルタリングし、マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、マスターノードへ送信することを特徴とする。
【００５９】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００６０】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、パケット送信量制御手段の要求によりパケット送信量がＮ(Ｎは自然数)倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする。
【００６１】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まない或いはダミーデータを含むようにすることを特徴とする。
【００６２】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、スレーブノードからの要求メッセージを受信すると、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知することを特徴とする。
【００６３】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、ジッタが閾値より大きいタイムスタンプをフィルタリングすると共に、ジッタが閾値未満のタイムスタンプパケットの採択率を計算することを特徴とする。
【００６４】
本発明に係るクロック同期方法の他の実施の形態は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期方法であって、タイムスタンプパケットを生成し、生成するタイムスタンプパケットの数を制御するパケット送信量制御し、ジッタが閾値より大きいタイムスタンプをフィルタリングし、ジッタフィルタの採択率をモニタリングし、採択率が閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信することを特徴とする。
【００６５】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００６６】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、ジッタフィルタの採択率をモニタリングし、採択率が閾値より高い場合、タイムスタンプパケットの送信量を減らすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知することを特徴とする。
【００６７】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、タイムスタンプ採択率とクロック同期精度との関係から、タイムスタンプ採択率の閾値を決定することを特徴とする。
【００６８】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、ＰＬＬのクロック精度をモニタリングするクロック同期モニタリングステップと、記ＰＬＬのクロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知することを特徴とする。
【００６９】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、ＰＬＬのクロック精度をモニタリングし、ＰＬＬのクロック同期精度が要求精度を満たしていることを検知した場合、ジッタフィルタステップにおけるタイムスタンプパケットの採択率をモニタリングして、必要に応じて、タイムスタンプパケットの送信量を制御するための要求メッセージを出すように通知することを特徴とする。
【００７０】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、自ノードのクロックｆ２から生成されるタイムスタンプの進み間隔を、受信したタイムスタンプパケットのタイムスタンプ値の進み間隔の変化に合わせるように制御することを特徴とする。
【００７１】
本発明に係るクロック同期方法の他の実施の形態は、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させるクロック同期システムであって、タイムスタンプパケットを生成し、生成するタイムスタンプパケットの数を制御し、パケットネットワークのジッタ変化を監視し、ジッタが閾値より大きいタイムスタンプをフィルタリングすることを特徴とする。
【００７２】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００７３】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、ペイロードサイズを１／Ｎにすることを特徴とする。
【００７４】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、パケット送信量制御手段からの要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まないか或いはダミーデータを含むようにすることを特徴とする。
【００７５】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、ネットワーク監視手段から通知を受けた場合、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知することを特徴とする。
【００７６】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、マスターノードとスレーブノードとの間における毎回のＲＴＴ測定結果を元にネットワークのジッタを計算し、その測定結果が閾値を超えているか否かの情報をパケット送信量制御手段に通知することを特徴とする。
【００７７】
本発明に係るクロック同期方法の他の実施の形態は、上記構成に加え、マスターノードとスレーブノードとの間において論理的なリンク切替が発生した情報を受け取った場合、その情報をパケット送信量制御手段に通知することを特徴とする。
【００７８】
すなわち、本発明に係る第１のクロック同期システムの一実施の形態は、ベースクロックを元にタイムスタンプパケットを生成して送信するマスターノードと、そのタイムスタンプパケットを利用してマスターノードのクロックに同期するスレーブノードを含み、マスターノードは、生成するタイムスタンプパケットの数を制御するパケット送信量制御器（後述する図１の１３）を有し、スレーブノードは、マスターノードからのタイムスタンプパケットの送信量を制御するために、要求メッセージを生成して送信する要求メッセージ生成器（後述する図１の２６）と、受信したタイムスタンプパケットの採択率をモニタリングして、当採択率がある閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して要求メッセージ生成器に送信するように通知する採択率モニタリング器（後述する図１の２５）と、を有することにより、パケットネットワークのジッタが大きくなり、フィルタ器におけるタイムスタンプの採択率が低くなる場合でも、単位時間内に採択されるタイムスタンプの数を増やすことで、不安定な自走状態に長時間陥る危険性を排除できる。
これにより、本発明の正確なクロック同期を実現するという目的を達成することができる。
【００７９】
本発明に係る第２のクロック同期システムの一実施の形態は、第１のクロック同期システムの構成に加えて、スレーブノードは、ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング器（後述する図７の２７）と、クロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知する採択率モニタリング器（後述する図７の２５）と、を有することにより、第１のクロック同期システムのように、タイムスタンプ採択率とクロック同期精度の変化の理論関係や経験値から判断するのではなく、クロック同期モニタリング器の測定結果を元に、クロック同期精度が要求精度を満たしているか否かを判断することで、第１のクロック同期システムに比べてスレーブノードのクロック同期精度の信頼性が高まり、不安定な自走状態に長時間陥ることを排除する可能性を高めることができる。
これにより、本発明の正確なクロック同期を実現するという目的を達成することができる。
【００８０】
本発明に係る第３のクロック同期システムの一実施の形態は、第１及び第２のクロック同期システムの構成に加えて、マスターノードは、パケットネットワーク３のジッタ変化を監視するネットワーク監視器（後述する図８の１４）と、を有することにより、第１及び第２のクロック同期システムのように、スレーブノードにおけるタイムスタンプ採択率やクロック同期精度の劣化を元に、マスターノードのタイムスタンプパケットの送信量を制御するのではなく、マスターノードがパケットネットワーク３のジッタ変化を監視していて、ジッタが大きくなる場合はマスターノードが自らタイムスタンプパケットの送信量を増やすことで、スレーブノードが不安定な自走状態に長時間陥る危険性を排除する。
これにより、本発明の正確なクロック同期を実現するという目的を達成することができる。
【００８１】
＜プログラム及び記録媒体＞
以上で説明した本発明のクロック同期システムは、コンピュータで処理を実行させるプログラムによって実現されている。コンピュータとしては、例えばパーソナルコンピュータやワークステーションなどの汎用的なものが挙げられるが、本発明はこれに限定されるものではない。
【００８２】
本発明に係るプログラムの一実施の形態は、コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させる処理を実行させるプログラムであって、コンピュータに、マスターノードが、タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、を実行させ、スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理と、マスターノードのタイムスタンプパケットの送信量を制御するための要求メッセージを生成して、マスターノードへ送信する要求メッセージ生成処理と、を実行させることを特徴とする。
【００８３】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００８４】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのタイムスタンプパケット生成手段が、パケット送信量制御手段の要求によりパケット送信量がＮ(Ｎは自然数)倍になる場合、ペイロードサイズを１／Ｎにする処理を実行させることを特徴とする。
【００８５】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのタイムスタンプパケット生成手段が、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まない或いはダミーデータを含むようにする処理を実行させることを特徴とする。
【００８６】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのパケット送信量制御手段が、スレーブノードからの要求メッセージを受信すると、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知する処理を実行させることを特徴とする。
【００８７】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、スレーブノードのジッタフィルタ手段が、ジッタが閾値より大きいタイムスタンプをフィルタリングすると共に、ジッタが閾値未満のタイムスタンプパケットの採択率を計算する処理を実行させることを特徴とする。
【００８８】
本発明に係るプログラムの他の実施の形態は、コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させる処理を実行させるプログラムであって、コンピュータに、マスターノードが、タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、を実行させ、スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理と、ジッタフィルタの採択率をモニタリングし、採択率が閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング処理、を実行させることを特徴とする。
【００８９】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００９０】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、スレーブノードが、ジッタフィルタの採択率をモニタリングし、採択率が閾値より高い場合、タイムスタンプパケットの送信量を減らすための要求メッセージを生成して、要求メッセージ生成手段に送信するように通知する採択率モニタリング処理、を実行させることを特徴とする。
【００９１】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、スレーブノードが、タイムスタンプ採択率とクロック同期精度との関係から、タイムスタンプ採択率の閾値を決定する処理を実行させることを特徴とする。
【００９２】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、スレーブノードが、ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング処理と、ＰＬＬのクロック同期精度が要求精度を満たせないことを検知した場合、要求メッセージ生成器にタイムスタンプパケットの送信量を増やすための要求メッセージを出すように通知する採択率モニタリング処理と、を実行させることを特徴とする。
【００９３】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、スレーブノードが、ＰＬＬのクロック精度をモニタリングするクロック同期モニタリング処理と、ＰＬＬのクロック同期精度が要求精度を満たしていることを検知した場合、ジッタフィルタ手段におけるタイムスタンプパケットの採択率をモニタリングして、必要に応じて、タイムスタンプパケットの送信量を制御するための要求メッセージを出すように通知する採択率モニタリング処理と、を実行させることを特徴とする。
【００９４】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、スレーブノードが、自ノードのクロックｆ２から生成されるタイムスタンプの進み間隔を、受信したタイムスタンプパケットのタイムスタンプ値の進み間隔の変化に合わせるように制御するＰＬＬのカウンタ処理、を実行させることを特徴とする。
【００９５】
本発明に係るプログラムの他の実施の形態は、コンピュータに、マスターノードからスレーブノードに送信されたタイムスタンプパケットを利用して、スレーブノードのクロックをマスターノードのクロックに同期させる処理を実行させるプログラムであって、コンピュータに、マスターノードが、タイムスタンプパケットを生成するタイムスタンプパケット生成処理と、生成するタイムスタンプパケットの数を制御するパケット送信量制御処理と、パケットネットワークのジッタ変化を監視するネットワーク監視処理と、を実行させ、スレーブノードが、ジッタが閾値より大きいタイムスタンプをフィルタリングするジッタフィルタ処理を実行させることを特徴とする。
【００９６】
上記構成によれば、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥ることを排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【００９７】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのタイムスタンプパケット生成手段が、パケット送信量制御手段の要求によりパケット送信量がＮ倍になる場合、ペイロードサイズを１／Ｎにする処理を実行させることを特徴とする。
【００９８】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのタイムスタンプパケット生成手段が、パケット送信量制御手段からの要求によりパケット送信量がＮ倍になる場合、増加されるパケットは、ペイロードを含まないか或いはダミーデータを含むようにする処理を実行させることを特徴とする。
【００９９】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのパケット送信量制御手段が、ネットワーク監視手段から通知を受けた場合、パケット送信量をＮ倍或いは１／Ｎにするようにタイムスタンプパケット生成手段に通知する処理を実行させることを特徴とする。
【０１００】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのネットワーク監視手段が、マスターノードとスレーブノードとの間における毎回のＲＴＴ測定結果を元にネットワークのジッタを計算する処理、その測定結果が閾値を超えているか否かの情報をパケット送信量制御手段に通知する処理を実行させることを特徴とする。
【０１０１】
本発明に係るプログラムの他の実施の形態は、上記構成に加え、コンピュータに、マスターノードのネットワーク監視手段が、マスターノードとスレーブノードとの間において論理的なリンク切替が発生した情報を受け取った場合、その情報をパケット送信量制御手段に通知する処理を実行させることを特徴とする。
【０１０２】
本発明に係る記録媒体の一実施の形態は、上記いずれかのプログラムを記録した記録媒体であることを特徴とする。
【０１０３】
これにより、プログラムが実行可能なコンピュータ環境さえあれば、どこにおいても本発明のクロック同期システムを実現することができる。
このようなプログラムは、コンピュータに読み取り可能な記録媒体に記録されていてもよい。
【０１０４】
ここで、記録媒体としては、例えば、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（CD Recordable）、ＤＶＤ（Digital Versatile Disk）などのコンピュータで読み取り可能な記録媒体、ＨＤＤ（Hard Disc Drive）、フラッシュメモリ、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＦｅＲＡＭ（強誘電体メモリ）等の半導体メモリが挙げられる。
【０１０５】
ネットワークの遅延変動はタイムスタンプの到着時間に非常に大きなジッタをもたらす。ある程度のジッタはＰＬＬのループフィルタで吸収できるが、許容値を超えるようなジッタが入ってきた場合には吸収しきれず、同期精度が劣化してしまう。同期精度を維持するには、ＰＬＬの前段にパケットフィルタを設けて、許容値（閾値）を超えるジッタを含んだタイムスタンプをフィルタリングすることにより、許容値（閾値）以下のタイムスタンプのみをクロック同期に利用するといった対策を追加する必要がある。
【０１０６】
しかし、大ジッタパケットのタイムスタンプをフィルタリングしてしまうと、その間、ＰＬＬは不安定な自走状態となる。このような自走状態に陥ると温度ドリフトやエージングによって、クロックが変動する。本特許提案では、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥る危険性を排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【０１０７】
なお、上述した実施の形態は、本発明の好適な実施の形態の一例を示すものであり、本発明はそれに限定されることなく、その要旨を逸脱しない範囲内において、種々変形実施が可能である。
【実施例１】
【０１０８】
次に本発明に係るクロック同期システムの実施例について、図面を参照して詳細に説明する。
【０１０９】
＜構成＞
図１は、本発明に係るクロック同期システムの一実施例を示すブロック図である。
同図に示すクロック同期システムは、マスターノード１とスレーブノード２とパケットネットワーク３とを含む。
【０１１０】
＜マスターノード＞
マスターノード１は、タイムスタンプパケット生成器１１、パケット送受信器１２、パケット送信量制御器１３を含む。
タイムスタンプパケット生成器１１は、マスターノードのクロックｆ１を元にタイムスタンプパケットを生成する。タイムスタンプの値は、例えば、パケット毎にＡずつ増加するようなものである。
パケット送受信器１２は、タイムスタンプパケットや制御メッセージなどの送受信、スレーブノード２から受信するパケットの振り分けを行う。
【０１１１】
パケット送信量制御器１３は、スレーブノード２からの要求メッセージを元にタイムスタンプパケットの送信量を制御する。例えば、タイムスタンプパケットの数を増加することを要求するメッセージをスレーブノード２から受信された場合、パケット送信量制御器１３は、タイムスタンプパケットの送信量をＮ倍に変更するよう、タイムスタンプパケット生成器１１に通知する。逆に、タイムスタンプパケットの数を減らすことを要求するメッセージをスレーブノード２から受信された場合、パケット送信量制御器１３は、タイムスタンプパケットの送信量を１／Ｎに変更するよう、タイムスタンプパケット生成器１１に通知する。
【０１１２】
＜スレーブノード＞
スレーブノードは、パケット送受信器２１、タイムスタンプ抽出器２２、ジッタフィルタ器２３、ＰＬＬ２４、採択率モニタリング器２５、要求メッセージ送信器２６を含む。
パケット送受信器２１は、タイムスタンプパケットや制御メッセージなどの送受信を行う。
タイムスタンプ抽出器２２は、パケット送受信器２１から受信するタイムスタンプパケットからタイムスタンプ情報を抽出してジッタフィルタ器２３に渡す。
ジッタフィルタ器２３は、受信した各タイムスタンプの遅延ジッタを算出して、その値がある閾値の範囲内に収まっているか否かを確認する。もし、閾値を超えているのであれば、該当タイムスタンプを廃棄する。
【０１１３】
これとは逆に、閾値以内に入るとすると、タイムスタンプをＰＬＬ２４に渡す。また、定期的にタイムスタンプの採択率を計算して採択率モニタリング器２５に渡す。
ＰＬＬ２４は、ジッタフィルタ器２３から受信するタイムスタンプからクロックｆ２を再生する。ＰＬＬ２４は、図２のように、位相比較器２４１、ループフィルタ２４２、ＶＣＯ２４３、カウンタ２４４から構成されている。
【０１１４】
図２は、図１に示したＰＬＬのブロック図の一例である。
位相比較器２４１は、タイムスタンプを受信して、カウンタ２４２から受信されるタイムスタンプとの位相差を比較して差分信号をループフィルタ２４２に出力する。
ループフィルタ２４２は、ＬＰＦ（Low-pass filter）とＰＩ制御機能を介して、位相比較器２４１から入力される差分信号を直流化（高周波数成分を遮断）することにより生成される制御信号をＶＣＯ２４３に出力する。
【０１１５】
ＶＣＯ２４３は、ループフィルタ２４２から入力される制御信号によってクロックｆ２を生成し、生成されたクロック信号をカウンタ２４４に出力する。
カウンタ２４４は、ＶＣＯ２４３から入力されるクロックを元にタイムスタンプ情報を生成し、その情報を位相比較器２４１に出力する。また、ＶＣＯから受信するクロックｆ２を元に生成されるタイムスタンプの進み間隔を、位相比較器２４１が受信するタイムスタンプ値の進み間隔の変化に合わせる機能を用いる。
【０１１６】
採択率モニタリング器２５は、ジッタフィルタ器２３におけるタイムスタンプの採択率をモニタリングしていて、採択率がある閾値を下回る場合、要求メッセージ送信器２６に通知する。
要求メッセージ送信器２６は、タイムスタンプの採択率がある閾値を下回るような通知を採択率モニタリング器２５からの受け取る場合、タイムスタンプパケットの送信量を増加させるための要求メッセージを生成して、パケット送受信器２１を介してマスターノード１へ送信する。
【０１１７】
＜動作＞
次に、本発明を実施するための実施例１の動作について詳細に説明する。
スレーブノードにおいて高精度なクロック同期を実現するには、閾値を越えてしまうような大きな遅延ジッタを含むタイムスタンプを受信した場合、それを廃棄してクロック同期精度劣化を抑える必要がある。しかしながら、パケットネットワークのジッタが大きくなる場合、タイムスタンプの採択率が低くなるが、そのタイムスタンプの採択率が低すぎると、クロックは不安定な自走状態に長時間陥ってしまうので、スレーブノードの同期精度がかえって劣化してしまうおそれがある。
【０１１８】
例えば、図３ではスレーブノードにおけるタイムスタンプ採択率とＦＦＯの関係の経験値を示しているが、小ジッタパケットのタイムスタンプ採択率が３０％以下になる場合、ＦＦＯ値が50ppb以上になる可能性がある。スレーブノードのＦＦＯ値が50ppb以上になると、例えば、モバイルネットワークなどでセル間のハンドオーバを滞りなく実現することができなくなる。
ここで、図３は、図１に示したクロック同期システムに用いられるタイムスタンプ採択率によるクロック同期精度の変化を示す図である。同図において、横軸は、タイムスタンプ採択率を示し、縦軸はＦＦＯを示す。
【０１１９】
この問題を解決するために、本発明の実施例１では、タイムスタンプパケットの採択率モニタリング機能をスレーブノードに持たせることにより、タイムスタンプの採択率が低下しすぎると、マスターノードにタイムスタンプパケットの送信量を増加させるように要求し、マスターノードはスレーブノードの要求を受け取ってタイムスタンプパケットの送信量を調整することを可能とする。タイムスタンプパケットの送信量が増えると、パケットネットワークのジッタが大きくなっても、スレーブノードにおいて単位時間内に採択される小ジッタのタイムスタンプの数が増えるので、クロックが不安定な自走状態に長時間陥るおそれを排除する。
【０１２０】
図４で示すように、ある一定時間Ｔ内におけるタイムスタンプの採択率がある閾値Ｐ（例えば３０％）よりも低くなる場合、スレーブノードはマスターノードにタイムスタンプパケットの送信量を増加させるように要求することにより、マスターノードのタイムスタンプパケットの送信量を調整させる。
図４は、図１に示したクロック同期システムに用いられるタイプスタンプパケットの採択率と時間との関係を示す図である。同図において、横軸は時間を示し、縦軸はタイプスタンプパケットの採択率を示す。
【０１２１】
以下では、図１及び図５を参照して上記の動作を詳細に説明する。
図５は、本発明に係るクロック同期方法のフローの一例である。
先ず図１を参照してマスターノード１及びスレーブノード２の動作を説明する。
【０１２２】
＜マスターノード＞
マスターノード１のタイムスタンプパケット生成器１１は、自ノードのクロックｆ１を元にしてタイムスタンプ付きのタイムスタンプパケットを生成してパケット送受信器１２を介してスレーブノード２へ送信する。
【０１２３】
パケット送受信器１２は、タイムスタンプパケットや制御メッセージなどの送受信を行う。例えば、タイムスタンプパケット生成器１１から受信されるタイムスタンプパケットはスレーブノード２へ渡し、スレーブノード２から受信する要求メッセージはパケット送信量制御器１３へ渡す。
【０１２４】
パケット送信量制御器１３は、パケット送受信器１２を介して受信されるスレーブノード２からの要求メッセージを元に、タイムスタンプ生成器１１が生成するタイムスタンプパケットの数を制御する。例えば、タイムスタンプパケットの送信量を増やすための要求メッセージをスレーブノード２から受信された場合、パケット送信量をＮ倍になるようにタイムスタンプ生成器１１に通知する。
これとは逆に、タイムスタンプパケットの送信量を減らすための要求メッセージが受信された場合は、パケット送信量が１／Ｎになるように、タイムスタンプ生成器１１に通知する。
【０１２５】
＜スレーブノード＞
スレーブノード２は、マスターノード１から送信されるタイムスタンプパケットを、パケット送受信器２１を介して受信する。
パケット送受信器２１は、受信するタイムスタンプパケットはタイムスタンプ抽出器２２へ渡す。
タイムスタンプ抽出器２２は、受信するタイムスタンプパケットからタイムスタンプ情報を抽出してジッタフィルタ器２３に渡す。
ジッタフィルタ器２３は、受信した各タイムスタンプのジッタを算出して、算出結果を採択率モニタリング器２５に渡す。また、その算出結果がある閾値を超える場合はタイムスタンプを廃棄し、閾値内であればタイムスタンプをＰＬＬ２４に渡す。
ＰＬＬ２４は、ジッタフィルタ器２３から受信するタイムスタンプ情報を元に、新たなクロックｆ２を再生する。ＰＬＬ２４のカウンタでは、受信するタイムスタンプパケットのタイムスタンプ値の進み間隔の変化をみて、ＰＬＬ２４のＶＣＯから受信するクロックｆ２を元に生成されるタイムスタンプの進み間隔を、受信するタイムスタンプの進み間隔に合わせる。ＰＬＬ２４では、カウンタ以外のモジュールの動作は本発明に関連する技術と同一であるため、詳細な説明は省略する。
【０１２６】
採択率モニタリング器２５は、ジッタフィルタ器２３におけるタイムスタンプの採択率をモニタリングしていて、採択率がある閾値を下回る場合は、タイムスタンプパケットを増やすための要求メッセージを生成するよう、要求メッセージ送信器２６に通知する。
これとは逆に、採択率が高く、クロック同期精度も保証される場合は、タイムスタンプパケットを減らすための要求メッセージを生成するよう、要求メッセージ送信器２６に通知することもありえる。
【０１２７】
要求メッセージ送信器２６は、採択率モニタリング器２１からの通知を受け取ると、タイムスタンプパケットの送信量を増加（或いは低減）させるための要求メッセージを生成して、パケット送受信器２１を介してマスターノード１に送信する。
【０１２８】
続いて、図５のフローチャートを参照してスレーブノード２の採択率モニタリング器２５の動作について説明する。ここでは、タイムスタンプパケットを増やすための要求メッセージを生成するための動作のみについて説明する。
【０１２９】
採択率モニタリング器２５は、小ジッタパケットのタイムスタンプ採択率とスレーブノードのＦＦＯの関係から、タイムスタンプ採択率の閾値Ｐを予測する（ステップ２５ａ）。
次に、ジッタフィルタ器２３から定期的にタイムスタンプ採択率Ｐｉを受信する。
次に、タイムスタンプ採択率Ｐｉと閾値Ｐとを比較して、一定時間Ｔ内のＰｉ値がＰより低くなる場合、要求メッセージ生成器２６に通知して、マスターノードに要求メッセージを送信する。逆に、Ｐｉ値がＰより高い場合は、次のサイクルの比較を行う。
【０１３０】
続いて、マスターノード１とスレーブノード２を含む全体の同期システムで、要求メッセージ送受信後の動作について説明する。
要求メッセージを受信するマスターノード１は、設定内容を元に、送信するタイムスタンプパケットの数を増やす。例えば、マスターノード１は要求メッセージを受信する度に、タイムスタンプパケットの送信量を前の２倍に変更すると仮定する。タイムスタンプパケットの送信量を２倍に変更するためには、マスターノード１のタイムスタンプパケット生成器１１で生成されるタイムスタンプの値の進み間隔は１／２に短縮させる。
【０１３１】
スレーブノード２では、受信するタイムスタンプパケットのタイムスタンプ値の進み間隔の変化をみて、自ノードのクロックｆ２を元に生成されるタイムスタンプの進み間隔を、受信するタイムスタンプの進み間隔に合わせる。例えば、マスターノード１から受信するタイムスタンプ値の進み間隔が１／２に短縮される場合、図２で示すスレーブノード２のＰＬＬ２４のカウンタ２４４では、ＶＣＯ２４３から入力されるクロックを元に、タイムスタンプの進み間隔を１／２に変更してタイムスタンプを生成し、位相比較器２４１に出力する。
【０１３２】
前述したように、実施例１では、ネットワークの遅延ジッタが大きくなり、スレーブノード２におけるタイムスタンプの採択率が低下して（タイムスタンプ採択率が３０％）、スレーブノード２のクロック同期精度要求レベルに達しない恐れがある場合、スレーブノード２ではタイムパケットの送信量を増加させる要求メッセージをマスターノード１に送信して、マスターノード１側でタイムスタンプパケットの送信量を増加させる。
【０１３３】
マスターノード１から送信されるタイムスタンプパケットの数が増え、スレーブノード２では単位時間内に採択されるタイムスタンプの数が増やされることにより、例えば図６で示すように、スレーブノード２のＦＦＯ値は期待値を満たすような結果が得られ、不安定な自走状態に長時間陥る危険性を排除している。
図６は、タイムスタンプ採択率によるクロック同期精度の変化を示す図である。
同図において、横軸はタイムスタンプ採択率を示し、縦軸はＦＦＯを示す。
【０１３４】
＜効果＞
次に、本発明を実施するための実施例１の効果について説明する。
実施例１では、ネットワークの遅延ジッタが大きくなり、スレーブノードにおけるタイムスタンプの採択率が低下して、スレーブノードのクロック同期精度要求レベルに達しない恐れがある場合、スレーブノードではタイムパケットの送信量を増加させる要求メッセージをマスターノードに送信し、スレーブノードにおいて単位時間内に採択されるタイムスタンプの数を増加させることにより、不安定な自走状態に長時間陥ることなく、ネットワークの遅延変動の影響を低減することができるので、本発明の目的を達成することができる。
【０１３５】
また、実施例１では、パケットネットワークのジッタが小さくなり、フィルタ器におけるタイムスタンプの採択率が高くなる場合、要求されるクロック同期精度を満たす範囲内で、単位時間内に採択されるタイムスタンプの数を減らすことで、パケットネットワークの伝送効率を向上することができる。
【実施例２】
【０１３６】
本発明に係るクロック同期システムの実施例２について、図面を参照して詳細に説明する。
【０１３７】
＜構成＞
図７は、本発明に係るクロック同期システムの他の実施例を示すブロック図である。
図７を参照すると、スレーブノード２でクロック同期モニタリング器２７を用いる点、採択率モニタリング器２５はクロック同期モニタリング器２７のクロック同期精度のモニタリング結果を元に要求メッセージ送信器２６を制御する点で、実施例１と異なる。
【０１３８】
クロック同期モニタリング器２７は、特願２００７−２３９４１５に記載されているクロック同期モニタリング技術であり、スレーブノードのジッタバッファのデータ蓄積量の変化から現在のクロック同期精度をモニタリングする機能を用いる。クロック同期モニタリング器２７は、更に、スレーブノード２のクロック同期精度が要求精度を下回る場合、採択率モニタリング器２５に通知する機能を用いる。
【０１３９】
実施例１の採択率モニタリング器２５は、図３で示すようなタイムスタンプ採択率とクロック同期精度変化との理論関係（或いは経験値）を元に、タイムスタンプパケットの送信量を増加すべきか否かを判断したが、本発明に係る実施例２の採択率モニタリング器２５は、クロック同期モニタリング器２７におけるクロック同期精度の測定結果を利用して、タイムスタンプパケットの送信量を増加すべきか否かを判断し、その結果を要求メッセージ送信器２６に通知する。
【０１４０】
更に、本発明の実施例２の採択率モニタリング器２５は、スレーブノード２のクロック同期精度の測定結果が高い場合、パケットネットワーク３の伝送効率を向上するために、マスターノード１のタイムスタンプパケットの送信量を減少するように、要求メッセージ送信器２６に通知することも可能である。その場合、要求メッセージ送信器２６はタイムスタンプパケットの送信量を減少することを示す情報を取り組む要求メッセージを生成してマスターノード１へ送信する。マスターノード１のパケット送信量制御器１３は該当要求メッセージを受信すると、タイムスタンプパケットの送信量を減らすように、マスターノード１のタイムスタンプパケット生成器１１を制御する。
【０１４１】
＜動作＞
スレーブノード２はクロック同期モニタリング機能とタイムスタンプ採択率の実際の評価結果を元に、タイムスタンプパケット量を調整させる。例えば、クロック同期精度とタイムスタンプ採択率がある閾値より高い場合は、伝送効率向上のため、タイムスタンプパケットの送信量を減らすようにマスターノード１に要求する。逆に、クロック同期精度とタイムスタンプ採択率がある閾値より高い場合は、タイムスタンプパケットの送信量を増やすようにマスターノード２に要求する。
【０１４２】
具体的に、スレーブノード２のクロック同期モニタリング器２７は、ＰＬＬで生成されるクロックｆ２のＦＦＯ値を監視していて、その結果を採択率モニタリング器２５に渡す。採択率モニタリング２５は、クロック同期モニタリング器２７から受信するクロック精度測定結果を元に、要求メッセージ送信器２６を制御する。例えば、クロック精度が要求精度を満たさない場合はタイムスタンプパケット送信量を増やすための要求メッセージをマスターノード１へ送信し、逆にクロック同期精度は要求精度を満たしていて、ジッタフィルタ器２３のタイムスタンプの採択率も高い場合は、伝送帯域利用効率を向上するために、タイムスタンプパケットの送信量を減らすための要求メッセージをマスターノード１へ送信する。
【０１４３】
マスターノード１はスレーブノード２からの要求メッセージを受信して、スレーブノード２の要求とおりに、タイムスタンプパケット生成器１１におけるタイムスタンプパケットの送信量を調整する。
具体的に、タイムスタンプパケット送信量を増やすための要求メッセージを受信した場合、パケット送信量制御器１３はタイムスタンプパケット生成器１１における単位時間内のタイムスタンプパケット送信量Ｎを大きく設定する。逆に、タイムスタンプパケット送信量を減らすための要求メッセージを受信した場合、パケット送信量制御器１３はＮを小さく設定する。
【０１４４】
＜効果＞
次に、本発明に係る実施例２の効果について説明する。
本発明に係る実施２は、第１のクロック同期システムのように、理論値や経験値を元にタイムスタンプ採択率とクロック同期精度の変化との関係を求めるのではなく、クロック同期精度の測定結果を元に、スレーブノードで採択されるタイムスタンプの数を上げるべきか否かを判断することで、第１のクロック同期システムに比べてスレーブノードのクロック同期精度の信頼性が高まり、不安定な自走状態に長時間陥る危険性を排除する可能性も高めるので、本発明の目的を達成することができる。
【０１４５】
また、本発明に係る実施例２では、パケットネットワークのジッタが小さくなり、フィルタ器におけるタイムスタンプの採択率が高くなる場合、クロック同期精度の測定結果が要求されるクロック同期精度を満たす範囲内で、単位時間内に採択されるタイムスタンプの数を減らすことで、パケットネットワークの伝送効率を向上することができる。
【実施例３】
【０１４６】
本発明に係るクロック同期システムの実施例３について、図面を参照して詳細に説明する。
【０１４７】
＜構成＞
図８は、本発明に係るクロック同期システムの他の実施例を示すブロック図である。
同図において、マスターノード１ではパケットネットワーク３のジッタ変化を監視する機能を有するネットワーク監視器１４を用いる点、スレーブノード２では採択率モニタリング器２５や要求メッセージ送信器２６やクロック同期モニタリング器２７などを有しなくても良い点で実施例１及び実施例２と異なる。
【０１４８】
＜動作＞
ネットワーク監視器１４は、パケットネットワーク３のジッタの変化を監視していて、ジッタが大きくなる場合はパケット送信量制御器１３に通知してタイムスタンプパケット送信量を増やすように制御する。
或いは、パケットネットワーク３のジッタが変化されることを推定して、タイムスタンプパケット送信量を調整する。例えば、パケットネットワーク３におけるマスターノード１とスレーブノード２の間のリンク切替を伴い、切替後の伝送リンクにパケット集中されると、該当リンクで伝送されるタイムスタンプパケットのジッタが大きくなる可能性がある。ネットワーク監視器１４は、こういうリンク切替などを何らかの情報から検知された場合、タイムスタンプパケット送信量を調整するようにパケット送信量制御器１３に通知する。
【０１４９】
ネットワーク監視器１４は、マスターノード１が所有するのではなく、スレーブノード２が用いても良い。例えば、スレーブノード２でネットワーク監視器１４を用いる場合は、更に実施例１或いは実施例２と同じように、スレーブノード２の採択率モニタリング器２５や要求メッセージ送信器２６を用いる必要がある。
採択率モニタリング器２５や要求メッセージ送信器２６は、ネットワーク監視器１４におけるパケットネットワーク３のジッタ変化の予測結果を元に、マスターノード１のタイムスタンプパケットの送信量を制御するための要求メッセージを生成してマスターノード１へ送信する。
【０１５０】
＜効果＞
次に、本発明に係る実施例３の効果について説明する。
実施例３では、第１及び第２のクロック同期システムのように、タイムスタンプ採択率やクロック同期精度の劣化を元に、マスターノードにタイムスタンプパケットの送信量を増やすのではなく、マスターノードがパケットネットワーク３のジッタ変化を監視していて、ジッタが大きくなる場合はタイムスタンプパケットの送信量を増やすことで、スレーブノードが不安定な自走状態に長時間陥る危険性を排除するので、本発明の目的を達成することができる。
【０１５１】
［効果の説明］
本実施例によると、パケットネットワークのジッタが大きくなる場合、フィルタ器におけるタイムスタンプの採択率が低くなる場合、マスターノードが送信するタイムスタンプパケットの数を増やすことにより、スレーブノードのクロックが不安定な自走状態に長時間陥る危険性を排除できるので、実際のフィールドでも安定して動作するクロック同期を実現できる。
【０１５２】
更に、本実施例によると、パケットネットワークのジッタが小さくなり、フィルタ器におけるタイムスタンプの採択率が高く、要求されるクロック同期精度を満たす範囲内であれば、単位時間内に採択されるタイムスタンプの数を減らすことで、パケットネットワークの伝送効率を向上することができる。
【０１５３】
なお、上述した実施例は、本発明の好適な実施例の一例を示すものであり、本発明はそれに限定されることなく、その要旨を逸脱しない範囲内において、種々変形実施が可能である。
【０１５４】
ここで、特許文献１〜５のうち、本願発明に近い特許文献３、５と本願発明とを比較する。
まず、特許文献３に記載の発明と本願発明とを比較する。
特許文献３に記載の発明は、解決しようとしている課題が本願発明と相違する。特許文献３に記載の発明は、「マスター側のタイミングパケットの送信処理時間の揺らぎ」を問題視しているのに対し、本願発明は「ネットワークのジッタの揺らぎによるスレーブ側のタイミングパケットの採択率変動」を問題視している点で相違する。マスター側のパケット送信処理時間の揺らぎはネットワークのジッタに比べて無視できる程度に小さいものであり、特許文献３に記載の発明の効果は実用上本願発明より非常に微小であると解する。
【０１５５】
具体的には、特許文献３に記載の発明は、構成上でマスター側のパケット送信量制御器、スレーブ側のジッタフィルタ器と採択率モニタリング器と要求メッセージ送信器とが本願発明と相違する。マスター側のパケット送信量制御器の特徴は、スレーブノードの採択率を基にして送信パケット量を調整すること：スレーブ側のジッタフィルタ器の特徴は、ジッタが閾値より大きいタイムスタンプをフィルタフィルタリングするだけでなく、ジッタが小さいタイムスタンプパケットの採択率を計算すること：採択率モニタリング器の特徴は、ジッタフィルタの採択率をモニタリングしており、当該採択率がある閾値未満の場合、タイムスタンプパケットの送信量を増やすための要求メッセージを生成するように指示すること：要求メッセージ送信器の特徴は要求メッセージを生成してマスター側に送信することで異なる。
【０１５６】
特許文献３に記載の発明と特許文献５に記載の発明とを組み合わせた発明と本願発明との相違点
特許文献５に記載の発明は、「ネットワークのジッタの揺らぎを吸収するためのクロック同期方式」であり、ジッタフィルタ器の機能が本願発明と一見類似している。特許文献５に記載の発明は、ジッタ差分累積値を一定時間毎に計算すると共に、ジッタが閾値より大きいパケットはカウントしないことにしている。これは一般的なジッタフィルタ器の機能であり、本願発明で関連技術として取り上げた発明と同等の実現方法であり、本願発明の関連技術に相当する。
【０１５７】
また、特許文献５に記載の発明と特許文献３に記載の発明とを組み合わせた場合、特許文献３に記載の発明のように廃棄分のタイムスタンプパケットを増加するのは、単なる送信側でパケットを廃棄した分、新たなタイミングパケットで代替するだけであるので、タイミングパケットの送信量は廃棄前に比べ増加しない。
つまり、特許文献３に記載の発明と特許文献５に記載の発明とを組み合わせても、ネットワークのジッタが大きくなる場合、スレーブ側のタイミングパケットの採択率は非常に低くなる可能性が高くなるので、ジッタが閾値より大きいネットワークには対応不可能であると解する。
【０１５８】
以上において、特許文献３、５に記載の発明は本願発明とは目的、構成及び作用効果が相違する。
【図面の簡単な説明】
【０１５９】
【図１】本発明に係るクロック同期システムの一実施例を示すブロック図である。
【図２】図１に示したＰＬＬのブロック図の一例である。
【図３】図１に示したクロック同期システムに用いられるタイムスタンプ採択率によるクロック同期精度の変化を示す図である。
【図４】図１に示したクロック同期システムに用いられるタイプスタンプパケットの採択率と時間との関係を示す図である。
【図５】本発明に係るクロック同期方法のフローの一例である。
【図６】タイムスタンプ採択率によるクロック同期精度の変化を示す図である。
【図７】本発明に係るクロック同期システムの他の実施例を示すブロック図である。
【図８】本発明に係るクロック同期システムの他の実施例を示すブロック図である。
【図９】タイムスタンプ方式の構成図である。
【図１０】本発明に関連する技術による再生クロック周波数と時間との関係を示す図である。
【図１１】本発明に関連するクロック同期システムのブロック図である。
【図１２】図１１に示したクロック同期システムにおけるパケット数とジッタとの関係を示す図である。
【符号の説明】
【０１６０】
１    マスターノード
２    スレーブノード
３    パケットネットワーク
１１    タイムスタンプパケット生成器
１２    パケット送受信器
１３    パケット送信量制御器
２１    パケット送受信器
２２    タイムスタンプ抽出器
２３    ジッタフィルタ器
２４    ＰＬＬ
２５    採択率モニタリング器
２６    要求メッセージ送信器
【図１】
0005167862.tif 000002
【図２】
0005167862.tif 000003
【図３】
0005167862.tif 000004
【図４】
0005167862.tif 000005
【図５】
0005167862.tif 000006
【図６】
0005167862.tif 000007
【図７】
0005167862.tif 000008
【図８】
0005167862.tif 000009
【図９】
0005167862.tif 000010
【図１０】
0005167862.tif 000011
【図１１】
0005167862.tif 000012
【図１２】
0005167862.tif 000013