(57)【特許請求の範囲】
【請求項１】
複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置であって、
時刻を示す時計手段と、
上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する送信側第１フレーム認識手段と、
上記送信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、
上記第１フレーム検知時刻情報を含む第２フレームを、上記通信ネットワークを介して外部の通信装置に送信する第２フレーム送信手段とを備えることを特徴とする通信装置。
【請求項２】
上記第２フレームが、送達確認を必要とする状態で上記通信ネットワークを介して外部の通信装置に送信されることを特徴とする請求項１記載の通信装置。
【請求項３】
上記第１フレームが、上記通信ネットワークにおいて送達確認を必要としない状態で複数の通信装置に対して送信されたものであることを特徴とする請求項１または２記載の通信装置。
【請求項４】
複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置であって、
時刻を示す時計手段と、
上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する受信側第１フレーム認識手段と、
上記受信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、
請求項１記載の通信装置から、上記第２フレームを、上記通信ネットワークを介して受信する第２フレーム受信手段と、
上記第２フレームに含まれている第１フレーム検知時刻情報と、上記受信側第１フレーム認識手段によって検知された第１フレーム検知時刻とに基づいて、上記時計手段の時刻を調整する調整手段とを備えることを特徴とする通信装置。
【請求項５】
上記第１フレームが、上記通信ネットワークにおいて送達確認を必要としない状態で複数の通信装置に対して送信されたものであることを特徴とする請求項４記載の通信装置。
【請求項６】
上記調整手段が、上記時計手段の時刻を設定するパラメータおよび／または上記時計手段の時計が進む速度を調整するパラメータを調整することを特徴とする請求項４または５記載の通信装置。
【請求項７】
上記送信側第１フレーム認識手段が、上記第１フレームの特定部分の受信または送信を検知することを特徴とする請求項１記載の通信装置。
【請求項８】
上記受信側第１フレーム認識手段が、上記第１フレームの特定部分の受信または送信を検知することを特徴とする請求項４または５記載の通信装置。
【請求項９】
上記調整手段がバッファを備え、
上記バッファが、最新ｎ個（ｎ≧１の整数）までの上記第１フレーム検知時刻を格納することを特徴とする請求項４または５記載の通信装置。
【請求項１０】
上記第１フレームに、該第１フレームを識別する識別子が含まれており、
上記第２フレーム送信手段が、上記第２フレームに、該第２フレームに含まれる第１フレーム検知時刻情報に対応する第１フレームの識別子を含めることを特徴とする請求項１記載の通信装置。
【請求項１１】
上記第１フレームに、該第１フレームを識別する識別子が含まれており、
上記第２フレーム受信手段が、第１フレーム検知時刻情報に対応する第１フレームの識別子を含んだ第２フレームを受信し、
上記バッファが、最新ｎ個（ｎ≧１の整数）までの上記第１フレーム検知時刻および上記識別子の組合せを格納することを特徴とする請求項９記載の通信装置。
【請求項１２】
上記調整手段が、受信した第２フレームに含まれる識別子と同じ識別子を上記バッファから探し、同じ識別子がバッファに存在する場合に、この識別子に対応する第１フレーム検知時刻をｔＲＸ０とし、前回のｔＲＸ０をｔＲＸ１とし、
受信した第２フレームに含まれる第１フレーム検知時刻情報をｔＴＸ０とし、前回のｔＴＸ０をｔＴＸ１として、
(1)今回が初期化後に始めて第２フレームの識別子がバッファに見つかった場合、あるいは、
(2)ＡＢＳ（ｔＴＸ０−ｔＲＸ０）＞ＴＨ（ＡＢＳは絶対値）（ＴＨは定数）の場合、
上記時計手段の時刻を（現在の時計手段の時刻−ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定し、
上記(1)または(2)の条件が満たされない場合には、ｔＴＸ０とｔＲＸ０とに基づいて、上記時計手段の進む速度を調整することを特徴とする請求項１１記載の通信装置。
【請求項１３】
上記調整手段は、自装置の時計手段の同期が行われているか否かを示す同期済みフラグを記憶することを特徴とする請求項９記載の通信装置。
【請求項１４】
リセット時に前記同期済みフラグは偽に初期化されることを特徴とする請求項１３記載の通信装置。
【請求項１５】
上記調整手段が、受信した第２フレームに含まれる第１フレーム検知時刻情報と、上記バッファに格納されている全ての第１フレーム検知時刻との差分絶対値が最も小さい第１フレーム検知時刻を選択し、
選択した第１フレーム検知時刻をｔＲＸ０とし、前回のｔＲＸ０をｔＲＸ１とし、
受信した第２フレームの第１フレーム検知時刻情報をｔＴＸ０とし、前回のｔＴＸ０をｔＴＸ１として、
(1)前記差分絶対値がＴＨ（ＴＨは定数）より小さいあるいは等しい場合、
ｔＴＸ０とｔＲＸ０とに基づいて、上記時計手段の進む速度を調整してかつ上記同期済みフラグを真に設定し、
上記(1)の条件が満たされていないかつ前記同期済みフラグが偽である、あるいは
上記(1)の条件が満たされていないかつ前記同期済みフラグが真であって、かつ、
ＡＢＳ（ｔＴＸ０−ｔＲＸ１）＞ＴＨ１（ＡＢＳは絶対値）（ＴＨ１は定数）である、あるいは、
上記(1)の条件が満たされていないかつ前記同期済みフラグが真であって、かつ、
ＡＢＳ（ｔＴＸ０−ｔＴＸ１）＞ＴＨ１である場合、
上記時計手段の時刻を（現在の時計手段の時刻−ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定し、かつ前記同期済みフラグを偽に設定することを特徴とする請求項１３記載の通信装置。
【請求項１６】
上記調整手段が、上記時計手段の調整にＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）を用いることを特徴とする請求項４または５記載の通信装置。
【請求項１７】
無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはＰＬＣ（Ｐｏｗｅｒ  Ｌｉｎｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）に対応していることを特徴とする請求項１、２、４、または５記載の通信装置。
【請求項１８】
上記第１フレームは無線ＬＡＮのビーコンフレームであることを特徴とする請求項１７記載の通信装置。
【請求項１９】
無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に対応しており、
上記第１フレームは無線ＬＡＮのビーコンフレームであり、
前記識別子はビーコンフレームに含まれるＴＳＦ（Ｔｉｍｉｎｇ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）タイマーのタイムスタンプあるいはシーケンス番号であることを特徴とする請求項１０または１１記載の通信装置。
【請求項２０】
複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置の通信方法であって、
上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する送信側第１フレーム認識ステップと、
上記送信側第１フレーム認識ステップによって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を、上記通信装置が備える時計手段が示す時刻に基づいて決定する時刻検知ステップと、
上記第１フレーム検知時刻情報を含む第２フレームを、上記通信ネットワークを介して外部の通信装置に送信する第２フレーム送信ステップとを有することを特徴とする通信方法。
【請求項２１】
複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置の通信方法であって、
上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する受信側第１フレーム認識ステップと、
上記受信側第１フレーム認識ステップによって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を、上記通信装置が備える時計手段が示す時刻に基づいて決定する時刻検知ステップと、
請求項１記載の通信装置から、上記第２フレームを、上記通信ネットワークを介して受信する第２フレーム受信ステップと、
上記第２フレームに含まれている第１フレーム検知時刻情報と、上記受信側第１フレーム認識ステップによって検知された第１フレーム検知時刻とに基づいて、上記時計手段の時刻を調整する調整ステップとを有することを特徴とする通信方法。
【請求項２２】
請求項１〜１９のいずれか１項に記載の通信装置を動作させる通信プログラムであって、コンピュータを上記の各手段として機能させるための通信プログラム。
【請求項２３】
請求項２２に記載の通信プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同期を必要とするフレームを通信する通信装置、通信方法、プログラム、および、プログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【０００２】
従来、複数の端末装置を備えた通信ネットワークが知られている。図１２は、このような通信ネットワークの一例を示した図である。同図では、通信ネットワーク７０は、端末装置７１、端末装置７２、および端末装置７３から構成されている。また、端末装置７１は通信装置８１を、端末装置７２は通信装置８２を、端末装置７３は通信装置８３を、それぞれ備えている。
【０００３】
以下に、端末装置７１が端末装置７２・７３に対して映像データや音声データ等の実時間性の保証が要求されるストリームデータを送信する状況を考える。各通信装置８１〜８３は映像データや音声データを再生する際に参照となる時計を持っているが、その時計は水晶発信器の持つ精度の範囲内で揺らぐのが普通である。仮に水晶発信器の発振周波数がその公称値の値を持つ場合の時計の進み具合を標準時計と呼ぶ場合、図１３に示すとおり、通信装置が持つ実際の時計の進み度合いは、標準時計の進み度合いよりも、速かったり、または、遅かったりする。また、通信装置の時計の進み度合いは、通常、各通信装置８１〜８３により異なる。それゆえ、図１４に示すとおり、通信装置間では時刻が相違してしまう。
【０００４】
しかし例えば通信装置８２に対して映像データ、通信装置８３に対して音声データをリアルタイムに伝送するような状況を例に取って考えると、通信装置８２と通信装置８３とをお互いに高い精度で同期させる必要があることは明らかである。これを実現するための具体的な方法としては、通信装置８２と通信装置８３の双方を通信装置８１に対して同期させる、通信装置８３を通信装置８２に対して同期させる、通信装置８２を通信装置８３に対して同期させる、などの方法が考えられる。なお、以下では、「端末装置の時計」と記した場合には、端末装置内の通信装置の時計を示すものとする。
【０００５】
ＩＥＥＥ８０２．１１（非特許文献１）の規格に従った無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）上で上位層同士がお互いに同期を取る方法として非特許文献２・特許文献１の提案がある。
【０００６】
各上位層は上位層レベルの時計を有しており、それらをお互いに同期させる手段として、一つの通信装置が上位層レベルでクロックマスターとなる。図１５のようにクロックマスターは定期的に自局時計をサンプリングし、サンプリングした時刻を同期用のマルチキャストフレーム（フレームの識別子情報をｎと記す）に入れて時計を共有したい通信装置に対して送信する。クロックマスターは自局が同期用マルチキャストフレームの最後尾部を送信または受信した瞬間のタイミングを知ることができ、その瞬間における上位層の時計の時刻（ｔＴＸ［ｎ］と記す）を記録する。
【０００７】
また非クロックマスター通信装置は同フレームの最後尾部を受信した瞬間のタイミングを知ることができ、その瞬間における上位層の時計の時刻（ｔＲＸ［ｎ］と記す）を記録する。なお、上記のフレームの最後尾部を送信または受信したタイミングは無線ＬＡＮ層が上位層に対して精度良く通知できるように設計しておく必要がある。
【０００８】
クロックマスターは自分が前回送付した同期用のマルチキャストフレームの識別子情報ｎとｔＴＸ［ｎ］の情報を次の同期用のマルチキャストフレーム（フレームの識別子情報はｎ+１）に入れて非クロックマスター通信装置に対して送付する。非クロックマスター通信装置は識別子が（ｎ+１）である同期用のマルチキャストフレームを受信した際に、その中に埋め込まれているｔＴＸ［ｎ］の情報と、自局が保持しているｔＲＸ［ｎ］の情報を比較することで、識別子がｎである同期用のマルチキャストフレームを両局が受信した瞬間における両局の上位層の時計の値を比較することができる。
【０００９】
マルチキャストフレームは送達確認（ＡＣＫ）を伴わない手法で送信されているので両局が同フレームを受信した時刻はほぼ同じであると想定できるので、この比較により非クロックマスター局は自局の時計がクロックマスターに対して早いか遅いかを知ることができ、それをもとに自局の時計をクロックマスターの時計に合わせ込む調整を行うことができる。
【非特許文献１】ＩＥＥＥ  Ｓｔｄ  ８０２．１１（１９９９年１月）
【非特許文献２】ＩＥＥＥ  Ｓｔｄ  ８０２．１１ｅ  Ｄｒａｆｔ１３（２００５年１月）
【特許文献１】ＵＳ  Ｐａｔｅｎｔ  Ａｐｐｌｉｃａｔｉｏｎ  ２００３０１７２１７９（公開日：２００３年９月１１日）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、一つの同期用のマルチキャストフレーム（ｎ番目）が正しく受信されなかった場合、そこに含まれる一個前（ｎ−１）のｔＴＸ［ｎ−１］情報と、さらにｔＲＸ［ｎ］の両方の値を知ることができなくなり、その結果、二回分の時計の調整（ｔＴＸ［ｎ−１］とｔＲＸ［ｎ−１］、および、ｔＴＸ［ｎ］とｔＲＸ［ｎ］）を連続して行うことができなくなるという課題があった。
【００１１】
例えば図１６にはＰＬＬを用いて非クロックマスターの時計の調整を行う場合の事例を示している。図の横軸が時間であり、縦軸がクロックマスターと非クロックマスターの時計の差分である。図において(1)が全てのタイミングで問題なく時計（ＰＬＬ）の調整を行うことができた場合、(2)が一回、Ｔ３のタイミングで調整を行うことができなかった場合、(3)が二回連続、Ｔ３とＴ４とのタイミングで調整を行うことができなかった場合、をそれぞれ表しており、図は各場合に両局の時計の差にどの程度の影響を及ぼすかを示している。図から分かるように、クロックマスターと非クロックマスターとの間の時計のずれは調整を出来なかった回数とともに大きくなる。
【００１２】
また、特許文献１の同期方式をＩＥＥＥ８０２．１１ｅに用いる場合、無線ＬＡＮ層でマルチキャストフレームを送信できる通信装置は中央局であるＡＰ（Ａｃｃｅｓｓ  Ｐｏｉｎｔ）に限定されている。このため、クロックマスターがＡＰでない場合には、クロックマスターは最初に同期用のマルチキャストフレームをＡＰに伝送し、ＡＰは受信したフレームを全局に対してマルチキャストし直す必要があった。つまり、マルチキャストの通信は二回に分けて行うことになり、そのための帯域が無駄になるという課題があった。
【００１３】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、複数の通信装置が通信を行う通信システムを構成する通信装置において、各通信装置における時計手段の時刻の同期をより的確に行うことを可能とする通信装置、通信方法、通信プログラム、および通信プログラムを記録した記録媒体を提供することにある。
【課題を解決するための手段】
【００１４】
本発明に係る通信装置は、上記課題を解決するために、複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置であって、時刻を示す時計手段と、上記通信ネットワークにおいて複数の通信装置に対して送達確認を必要としない状態で送信された特定の第１フレームの受信、または、送信を検知する送信側第１フレーム認識手段と、上記送信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、上記第１フレーム検知時刻情報を含む第２フレームを、送達確認を必要とする状態で上記通信ネットワークを介して外部の通信装置に送信する第２フレーム送信手段とを備える構成である。
【００１５】
また、本発明に係る通信方法は、複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置の通信方法であって、上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する送信側第１フレーム認識ステップと、上記送信側第１フレーム認識ステップによって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を、上記通信装置が備える時計手段が示す時刻に基づいて決定する時刻検知ステップと、上記第１フレーム検知時刻情報を含む第２フレームを、上記通信ネットワークを介して外部の通信装置に送信する第２フレーム送信ステップとを有する方法である。
【００１６】
上記の構成または方法によれば、まず、複数の通信装置に対して、特定の第１フレームが送信される。ここで、第１フレームは、当該通信装置が送信したものであってもよいし、他の通信装置が送信したものであってもよい。そして、第１フレームの受信または送信が検知された第１フレーム検知時刻情報を含む第２フレームが、外部の通信装置に送信される。すなわち、第１フレームが、各通信装置における時計手段の時刻を合わせるタイミングを決定するフレームであり、第２フレームが、上記タイミングの情報をやりとりするためのフレームとなる。
【００１７】
ここで、従来では、同期用のマルチキャストフレームが以上の２つの役割、つまり時計をほぼ同時にサンプリングするための基準時点の特定機能と、サンプリングした時計の時刻を伝送する機能とを有している。よって、この同期用のマルチキャストフレームの受信に失敗すると、前記したように、２回分の時計合わせが不可能となり、各通信装置における時計の時刻のずれが大きくなるという問題がある。
【００１８】
これに対して、上記の構成または方法によれば、例え第１フレームの送受信が失敗したとしても、第２フレームの送受信は送達確認が行われることによりほぼ確実に行われるので、時計合わせは１回分行われないだけで済むことになる。よって、時計合わせが正常に行われる可能性を高めることが可能となるので、各通信装置における時計の同期がより的確に行われる通信システムを提供することが可能となる。
【００１９】
また、本発明に係る通信装置は、複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置であって、時刻を示す時計手段と、上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する送信側第１フレーム認識手段と、上記送信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、上記第１フレーム検知時刻情報を含む第２フレームを、上記通信ネットワークを介して外部の通信装置に送信する第２フレーム送信手段とを備える構成である。
【００２０】
上記の構成によれば、第１フレームまたは第２フレームを失った場合、第２の通信装置の時計の調整は一回行われないだけで済む。よって、図１６のように（詳細は後述する）、本発明の構成は従来の構成に対し、各通信装置における時計の同期がより的確に行われる通信システムを提供することが可能となる。
【００２１】
また、本発明に係る通信装置は、上記の構成において、上記第２フレームが、送達確認を必要とする状態で上記通信ネットワークを介して外部の通信装置に送信される構成としてもよい。
【００２２】
上記の構成によれば、第２フレームを失った場合は第２フレームの再送が可能になり、第２フレームの伝送はほぼ確実に行われることができる。よって、時計合わせが正常に行われる可能性を高めることが可能となるので、各通信装置における時計の同期がより的確に行われる通信システムを提供することが可能となる。
【００２３】
また、本発明に係る通信装置は、上記の構成において、上記第１フレームが、上記通信ネットワークにおいて送達確認を必要としない状態で複数の通信装置に対して送信されたものである構成としてもよい。
【００２４】
上記の構成によれば、上記第１フレームとして、例えばブロードキャストまたはマルチキャスト形式のフレームを用いることができる。
【００２５】
また、本発明に係る通信装置は、複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置であって、時刻を示す時計手段と、上記通信ネットワークにおいて複数の通信装置に対して送達確認を必要としない状態で送信された特定の第１フレームの受信、または、送信を検知する受信側第１フレーム認識手段と、上記受信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、上記本発明に係る通信装置から、上記第２フレームを、上記通信ネットワークを介して受信する第２フレーム受信手段と、上記第２フレームに含まれている第１フレーム検知時刻情報と、上記受信側第１フレーム認識手段によって検知された第１フレーム検知時刻とに基づいて、上記時計手段の時刻を調整する調整手段とを備える構成である。
【００２６】
また、本発明に係る通信装置は、複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置であって、時刻を示す時計手段と、上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する受信側第１フレーム認識手段と、上記受信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、上記本発明に係る通信装置から、上記第２フレームを、上記通信ネットワークを介して受信する第２フレーム受信手段と、上記第２フレームに含まれている第１フレーム検知時刻情報と、上記受信側第１フレーム認識手段によって検知された第１フレーム検知時刻とに基づいて、上記時計手段の時刻を調整する調整手段とを備える構成である。
【００２７】
また、本発明に係る通信方法は、複数の通信装置が通信ネットワークを介して通信接続されている通信システムを構成する通信装置の通信方法であって、上記通信ネットワークにおいて複数の通信装置に対して送信された特定の第１フレームの受信、または、送信を検知する受信側第１フレーム認識ステップと、上記受信側第１フレーム認識ステップによって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を、上記通信装置が備える時計手段が示す時刻に基づいて決定する時刻検知ステップと、上記本発明に係る通信装置から、上記第２フレームを、上記通信ネットワークを介して受信する第２フレーム受信ステップと、上記第２フレームに含まれている第１フレーム検知時刻情報と、上記受信側第１フレーム認識ステップによって検知された第１フレーム検知時刻とに基づいて、上記時計手段の時刻を調整する調整ステップとを有する方法である。
【００２８】
上記の構成または方法によれば、第１フレームによって時計手段の時刻を合わせるタイミングが決定され、第２フレームを受信することによって、時計手段の調整をどの程度を行えばよいかを認識することが可能となる。よって、第２フレームを送信した通信装置における時計手段の時刻との同期を的確に行うことが可能となる。
【００２９】
また、本発明に係る通信装置は、上記の構成において、上記第１フレームが、上記通信ネットワークにおいて送達確認を必要としない状態で複数の通信装置に対して送信されたものである構成としてもよい。
【００３０】
上記の構成によれば、上記第１フレームとして、例えばブロードキャストまたはマルチキャスト形式のフレームを用いることができる。
【００３１】
また、本発明に係る通信装置は、上記の構成において、上記調整手段が、上記時計手段の時刻を設定するパラメータおよび／または上記時計手段の時計が進む速度を調整するパラメータを調整する構成としてもよい。
【００３２】
上記の構成によれば、第２フレームを送信した通信装置における時計手段と、自装置が備える時計手段との同期が外れている場合には、自装置の時計手段の現在時刻の推定値を直接書き込むことで、時刻の同期を素早く行うことが可能となる。また、第２フレームを送信した通信装置における時計手段の時刻と、自装置が備える時計手段の時刻とが同期している場合には、自装置が備える時計手段の時計が進む速度を微調整して同期を保つことができる。
【００３３】
また、本発明に係る通信装置は、上記の構成において、上記送信側第１フレーム認識手段が、上記第１フレームの特定部分の受信または送信を検知する構成としてもよい。
【００３４】
また、本発明に係る通信装置は、上記の構成において、上記受信側第１フレーム認識手段が、上記第１フレームの特定部分の受信または送信を検知する構成としてもよい。
【００３５】
上記の構成によれば、第１フレームの特定の部分を基準点として同期を行うことが可能となる。よって、同期精度を向上させることができる。
【００３６】
また、本発明に係る通信装置は、上記の構成において、上記調整手段がバッファを備え、上記バッファが、最新ｎ個（ｎ≧１の整数）までの上記第１フレーム検知時刻を格納する構成としてもよい。
【００３７】
上記の構成によれば、バッファを用いることにより、送信または受信できた最新ｎ個（ｎ≧１の整数）までの第１フレーム検知時刻を格納することができる。例えば第２フレームの伝送に時間が掛かりすぎることにより、第２フレームの伝送が終わる前に次の第１フレームが伝送されてしまう場合がある。この場合、もしｎ＝１であれば、前の第１フレーム検知時刻を消すか、あるいは新しい第１フレーム検知時刻を記録しないという選択肢があるが、いずれにしても１回時計の調整ができなくなる。これに対してｎ≧２にしておけば、前の第１フレーム検知時刻と新しい第１フレーム検知時刻との両方を記録することができ、両方に対して時計の調整が可能となる。よって、ｎを第２フレームの最大の遅延に設定することにより同期の精度を劣化させないことができる。
【００３８】
また、本発明に係る通信装置は、上記の構成において、上記第１フレームに、該第１フレームを識別する識別子が含まれており、上記第２フレーム送信手段が、上記第２フレームに、該第２フレームに含まれる第１フレーム検知時刻情報に対応する第１フレームの識別子を含める構成としてもよい。
【００３９】
また、本発明に係る通信装置は、上記の構成において、上記第１フレームに、該第１フレームを識別する識別子が含まれており、上記第２フレーム受信手段が、第１フレーム検知時刻情報に対応する第１フレームの識別子を含んだ第２フレームを受信し、上記バッファが、最新ｎ個（ｎ≧１の整数）までの上記第１フレーム検知時刻および上記識別子の組合せを格納する構成としてもよい。
【００４０】
上記の構成によれば、識別子を用いることにより、例えば第１フレームあるいは第２フレームを失った場合、自装置が過去に受信した第１フレームの識別子と、第２フレームに含まれる第１フレーム検知時刻情報に対応する識別子とを比較することによって、両者の対応付けを容易に認識することが可能となる。
【００４１】
また、本発明に係る通信装置は、上記の構成において、上記調整手段が、受信した第２フレームに含まれる識別子と同じ識別子を上記バッファから探し、同じ識別子がバッファに存在する場合に、この識別子に対応する第１フレーム検知時刻をｔＲＸ０とし、前回のｔＲＸ０をｔＲＸ１とし、受信した第２フレームに含まれる第１フレーム検知時刻情報をｔＴＸ０とし、前回のｔＴＸ０をｔＴＸ１として、(1)今回が初期化後に始めて第２フレームの識別子がバッファに見つかった場合、あるいは、(2)ＡＢＳ（ｔＴＸ０−ｔＲＸ０）＞ＴＨ（ＡＢＳは絶対値）（ＴＨは定数）の場合、上記時計手段の時刻を（現在の時計手段の時刻−ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定し、上記(1)または(2)の条件が満たされない場合には、ｔＴＸ０とｔＲＸ０とに基づいて、上記時計手段の進む速度を調整する構成としてもよい。
【００４２】
上記の構成によれば、初期段階の時計の設定、第２フレームが長期的にわたって連続的に失われた場合、あるいは各通信装置における時計手段の時刻がずれ過ぎた場合に、各時計手段の時刻を一挙に近づけることができる。
【００４３】
また、本発明に係る通信装置は、上記の構成において、上記調整手段は、自装置の時計手段の同期が行われているか否かを示す同期済みフラグを記憶する構成としてもよい。
【００４４】
上記の構成によれば、同期が取れているのかどうかを表す同期済みフラグを用いることにより、調整手段は同期状態に適した対応を行うことができ、より正確な調整を行うことができる。
【００４５】
また、本発明に係る通信装置は、上記の構成において、リセット時に前記同期済みフラグは偽に初期化される構成としてもよい。
【００４６】
上記の構成によれば、初期状態では同期が取れていない状態であるため、リセット時にこの状態を表すことができる。
【００４７】
また、本発明に係る通信装置は、上記の構成において、上記調整手段が、受信した第２フレームに含まれる第１フレーム検知時刻情報と、上記バッファに格納されている全ての第１フレーム検知時刻との差分絶対値が最も小さい第１フレーム検知時刻を選択し、選択した第１フレーム検知時刻をｔＲＸ０とし、前回のｔＲＸ０をｔＲＸ１とし、受信した第２フレームの第１フレーム検知時刻情報をｔＴＸ０とし、前回のｔＴＸ０をｔＴＸ１として、(1)前記差分絶対値がＴＨ（ＴＨは定数）より小さいあるいは等しい場合、ｔＴＸ０とｔＲＸ０とに基づいて、上記時計手段の進む速度を調整してかつ上記同期済みフラグを真に設定し、上記(1)の条件が満たされていないかつ前記同期済みフラグが偽である、あるいは、上記(1)の条件が満たされていないかつ前記同期済みフラグが真であって、かつ、ＡＢＳ（ｔＴＸ０−ｔＲＸ１）＞ＴＨ１（ＡＢＳは絶対値）（ＴＨ１は定数）である、あるいは、上記(1)の条件が満たされていないかつ前記同期済みフラグが真であって、かつ、ＡＢＳ（ｔＴＸ０−ｔＴＸ１）＞ＴＨ１である場合、上記時計手段の時刻を（現在の時計手段の時刻−ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定し、かつ前記同期済みフラグを偽に設定する構成としてもよい。
【００４８】
上記の構成によれば、識別子を用いていないため、ＬＡＮ層は上位層に第１フレームを送信または受信した瞬間のみを知らせればよく、ＬＡＮ層と上位層とが別のチップの場合に、相互でやりとりすべき情報の実装価格を抑えることができる。価格が安くなる原因は以下の通りである。識別子を用いた場合、識別子をＬＡＮ層から上位層に知らせる必要がある。通常のＰＣＩインタフェースを用いて識別子を上位に知らせることは可能であるが、ＰＣＩインタフェースでは様々な遅延・ジッタが発生するため、高度な同期のためにＰＣＩインタフェースを用いることはできない。このため、別途リアルタイム性があるインタフェースを準備する必要がある。上位層のチップと無線ＬＡＮのチップとは通常別のチップであるため、チップのピン数が増えたりボードの設計も複雑になったりする。なお、通常チップのピン数を増やすことは望ましくないことであり、できるだけ減らしてチップの価格を下げる努力が重要である。識別子を用いない方法の場合、ＬＡＮ層チップと上位層チップの間の信号線として、例えば、第１フレームを送信または受信したタイミングにおいて一定時間だけ立ち上がる、あるいは電圧レベルが変化する、というような１本の信号線だけで必要な全ての情報のやりとりを達成することができる。
【００４９】
また、本発明に係る通信装置は、上記の構成において、上記調整手段が、上記時計手段の調整にＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）を用いる構成としてもよい。
【００５０】
上記の構成によれば、ＰＬＬを用いることにより、より精度の高い同期を達成することができる。
【００５１】
また、本発明に係る通信装置は、上記の構成において、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはＰＬＣ（Ｐｏｗｅｒ  Ｌｉｎｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）に対応している構成としてもよい。
【００５２】
上記の構成によれば、無線ＬＡＮまたはＰＬＣのネットワーク環境でも高い精度の同期を達成することができる。
【００５３】
また、本発明に係る通信装置は、上記の構成において、上記第１フレームは無線ＬＡＮのビーコンフレームである構成としてもよい。
【００５４】
上記の構成によれば、伝送方式にＩＥＥＥ８０２．１１ｅを用いた場合でも直接第２フレームを第１の通信装置から第２の通信装置に伝送することができる。一方、特許文献１の同期方式をＩＥＥＥ８０２．１１ｅに用いてかつクロックマスターがＡＰでない場合、同期用のマルチキャストフレームを二回に分けて伝送する必要がある。よって、以上の条件では本発明の伝送方式はより少ない帯域を利用して同期を行うことができる。また、ＩＥＥＥ８０２．１１ｅを用いる場合、本発明の第１フレームをビーコンフレームにすることができ、本発明と特許文献１の両方は定期的にビーコンフレーム伝送する必要があるため、本発明の第１フレーム（ビーコンフレーム）が利用する帯域は追加帯域にならない。
【００５５】
また、本発明に係る通信装置は、上記の構成において、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に対応しており、上記第１フレームは無線ＬＡＮのビーコンフレームであり、前記識別子はビーコンフレームに含まれるＴＳＦ（Ｔｉｍｉｎｇ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）タイマーのタイムスタンプあるいはシーケンス番号である構成としてもよい。
【００５６】
上記の構成によれば、識別子をビーコンフレームに含まれるＴＳＦタイマーのタイムスタンプあるいはシーケンス番号にすることにより、新たなフレームを定義しないで規格化された既存の情報を識別子として利用することができる。
【００５７】
なお、上記通信装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより上記通信装置をコンピュータにて実現させる通信プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【００５８】
本発明に係る通信装置は、以上のように、時刻を示す時計手段と、上記通信ネットワークにおいて複数の通信装置に対して送達確認を必要としない状態で送信された特定の第１フレームの受信、または、送信を検知する送信側第１フレーム認識手段と、上記送信側第１フレーム認識手段によって、第１フレームの受信または送信が検知された時の第１フレーム検知時刻を上記時計手段が示す時刻に基づいて決定する時刻検知手段と、上記第１フレーム検知時刻情報を含む第２フレームを、送達確認を必要とする状態で上記通信ネットワークを介して外部の通信装置に送信する第２フレーム送信手段とを備える構成である。
【００５９】
これにより、時計合わせが正常に行われる可能性を高めることが可能となるので、各通信装置における時計の同期がより的確に行われる通信システムを提供することが可能となる。
【発明を実施するための最良の形態】
【００６０】
本発明の一実施形態について図面に基づいて説明すると以下の通りである。
【００６１】
図１は、本実施形態に係る通信システムの概略構成を示している。同図に示すように、通信システムは、第１通信装置１、第２通信装置２、および第３通信装置３を備えた構成となっている。第１〜第３通信装置１〜３は、互いにネットワーク２１０を介して通信接続されている。また、図２は、上記通信システムにおける通信シーケンスを示している。
【００６２】
第１通信装置１は送達確認を伴わない形式の瞬間フレーム（ＴＦ：第１フレーム）を定期的に伝送する通信装置である。ただし送達確認を伴わない伝送形式としては、ブロードキャストフレーム、マルチキャストフレーム、およびＡＣＫフレームを用いないユニキャストフレームなどが挙げられる。なお、瞬間フレームは、送達確認を伴う形式であってもよい。
【００６３】
ＴＦは第１通信装置１より時刻Ｔ１に伝送され、ネットワーク２１０を通ってＴ２に第３通信装置３に到着し、Ｔ３に第２通信装置２に到着する。
【００６４】
ネットワークとして例えば無線ＬＡＮを想定すると、Ｔ２−Ｔ１は電波が第１通信装置１から第３通信装置３に届くまでの時間であり、Ｔ３−Ｔ１は電波が第１通信装置１から第２通信装置２に届くまでの時間である。なお電波は通常１ｎｓに約３０ｃｍ移動する。
【００６５】
第２通信装置２はＴＦ認識部（送信側第１フレーム認識手段）３０、時計（時計手段）２０、サンプラー（時刻検知手段）４０、およびフレーマ（第２フレーム送信手段）５０を備えた構成となっている。
【００６６】
第２通信装置２ではＴＦが受信されるとＴＦはＴＦ認識部３０で認識され、ＴＦ認識部３０は、ＴＦの例えばフレームの最初または最後のようにフレームの特定部分を基準点として、その基準の瞬間（Ｔ５）を認識してサンプラー４０に知らせ、サンプラー４０はこの瞬間に時計２０の時刻をｔＴＸとしてサンプリングする。フレーマ５０はサンプリングされたｔＴＸを含んだ同期フレーム（ＳＦ：第２フレーム）を作成して、第２通信装置２はＴ６時点でＳＦを第３通信装置３に伝送する。なお、Ｔ３からＴ５までの期間はＴＦ認識部に必要となる固定処理時間である。
【００６７】
ＳＦはネットワーク２１０を通ってＴ７に第３通信装置３に到着する。
【００６８】
第３通信装置３はＴＦ認識部（受信側第１フレーム認識手段）１３０、時計（時計手段）１２０、サンプラー（時刻検知手段）１４０、フレーマ（第２フレーム受信手段）１５０、および、調整部（調整手段）１６０を備えた構成となっている。
【００６９】
第２通信装置２でＴＦが受信されるのとほぼ当時に同じＴＦは第３通信装置３で受信される。ＴＦは第３通信装置３のＴＦ認識部１３０で認識され、ＴＦ認識部１３０はＴＦの例えばフレームの最初または最後のようにフレームの特定部分を基準点として、その基準の瞬間（Ｔ４）を認識してサンプラー１４０に知らせ、サンプラー１４０はこの瞬間に時計１２０をｔＲＸとしてサンプリングし、ｔＲＸは調整部１６０に渡される。なお、Ｔ２からＴ４までの期間はＴＦ認識部に必要となる固定処理時間である。
【００７０】
次に第２通信装置２が伝送したＳＦは第３通信装置３にＴ７に到着する。ここでＳＦはフレーマ１５０に渡され、フレーマ１５０はＳＦにある少なくともｔＴＸの値を取り出して調整部１６０に渡す。次に調整部１６０は少なくともｔＴＸの情報を受けると、時計１２０のパラメータを調整するための調整処理を行う。調整処理の具体的な処理内容は後述する。
【００７１】
これまでの説明では瞬間フレームを受信したクロックマスター（第２通信装置２）がその後すぐに同期フレームを送信すると仮定しており、それゆえ非クロックマスターは瞬間フレームを受信した後すぐに同期フレームを受信すると言うことを仮定しているが、瞬間フレーム・同期フレームが実際に伝送されるタイミングは以下のような原因により変ってくると考えられる。
（１）第２通信装置２または第３通信装置３に非リアルタイムＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が処理している場合、処理時間のばらつきが大きい場合。
（２）ネットワークが混雑している場合。
（３）同期フレームの伝送にエラーが生じて再送に時間が掛かる場合。
【００７２】
したがって、ある同期フレームがどの瞬間フレームに対応しているのかがわかりにくくなるケースが考えられる。しかしこの問題は複数のｔＲＸ値を格納しておくことにより解決可能である。
【００７３】
例えば同期フレームの伝送に長い時間が掛かり、ある瞬間フレームに対応する同期フレームが到着するよりも前に次の瞬間フレームが伝送されてしまったとしても、遅れて到着した同期フレームに含まれるｔＴＸ値に対応するｔＲＸ値がまだバッファに残っていれば、問題なく時計１２０の調整を行うことができる。
【００７４】
このように調整部１６０は最新のｎ個（ｎ≧１の整数）のＴＦのデータを格納できるバッファを用いてもよい。データは少なくとも第３通信装置３がＴＦを送信または受信した瞬間にサンプリングされた時計１２０のｔＲＸを含む。
【００７５】
ただし、両局は充分精度の良い水晶発信器を持っており、対応するｔＴＸ値とｔＲＸ値とはお互いに非常に近い値になっていると仮定しても良いし、後述のように、クロックマスターはｔＴＸ値と同時に、それに対応する瞬間フレームの識別子に関する情報を非クロックマスターに対して通知し、非クロックマスターはｔＲＸ値とそれに対応する瞬間フレームの識別子の情報を記憶していると仮定しても良い。
【００７６】
なお、データを格納する際にバッファが一杯である場合には、最新のデータを格納するために最も古いデータを削除するようにすれば、より新しいサンプル結果を参照することが可能である。
【００７７】
これの具体的な事例を図３に示す。ここではまず第１通信装置１により瞬間フレームのＴＦ１が送信され、第２通信装置２と第３通信装置３とでそれぞれＴＦ１を受信した時刻における時計のサンプル値であるｔＴＸ１とｔＲＸ１がサンプリングされる。第３通信装置３ではさらにｔＲＸ１がバッファに格納される。次に第２通信装置２はＴＦ１に対するＳＦ１を伝送するが、これの伝送に時間が掛かり、ＳＦ１が第３通信装置３に着く前に次の瞬間フレームのＴＦ２が第１通信装置１により伝送される場合を考える。
【００７８】
この場合、第２通信装置２と第３通信装置３とでＴＦ２を受信した時刻における時計のサンプル値であるｔＴＸ２とｔＲＸ２がサンプリングされ、さらに第３通信装置３ではｔＲＸ２がバッファに格納される。そして、その後ＳＦ１が遅れて第３通信装置３に着く。
【００７９】
この場合、第３通信装置３が時計１２０の調整を行うためにはｔＴＸ１とｔＲＸ１が必要になる。もしｎ＝１であれば、ｔＲＸ２がバッファに格納された際にｔＲＸ１はバッファから削除されているため、この調整ができなくなり時計の同期精度が劣化するがｎ＝２であればｔＲＸ１の値がまだバッファ内に残っているため上記の調整を行うことが可能である。上記の説明で明らかなように、バッファの大きさを表すｎの値は、同期フレームの伝送遅延のばらつき度合いをカバーできる値にしておくことが重要である。なお、ＳＦを受信した際に対応するｔＲＸをバッファから探す方法は後述する。
【００８０】
なお、第２通信装置２が第１の通信装置に対応し、第３通信装置３が第２の通信装置に対応する。また本実施例においては、ＴＦ認識部３０・１３０、およびフレーマ５０・１５０が通信手段に対応する。
【００８１】
なお、第１通信装置１と第２通信装置２とは同じであっても良い。この場合、第２通信装置２はＴＦを受信するのではなくＴＦを送信することになり、ＴＦ認識部３０はＴＦの例えばフレームの最初または最後のようにフレームの特定部分を基準にして、その基準点の瞬間を認識して時計２０の時刻をｔＴＸとしてサンプラー４０がサンプリングする。
【００８２】
また、第１通信装置１と第３通信装置３とは同じであっても良い。この場合、第３通信装置３はＴＦを受信するのではなくＴＦを送信することになり、ＴＦ認識部１３０はＴＦの例えばフレームの最初または最後のようにフレームの特定な部分を基準にして、その基準点の瞬間を認識して時計１２０の時刻をｔＲＸとしてサンプラー１４０がサンプリングする。
【００８３】
なお、第２通信装置２に時計を合わせる通信装置は複数（第３通信装置３Ａ，第３通信装置３Ｂ・・・）あっても良い。この場合、第２通信装置２は送達確認を伴わない形式でＴＦをこれらの全通信装置に対して同時に伝送し、その後、送達確認を伴う形式でＳＦをこれらの全通信装置に対して個々に伝送する。なお、第３通信装置３Ａ，第３通信装置３Ｂ・・・の動作は第３通信装置３と同じである。ここで、第２通信装置２が、ブロードキャストまたはマルチキャストでＴＦをこれらの全通信装置に対して同時に伝送してもよい。また、ＳＦは送達確認を伴うユニキャストフレームであってもよいし、送達確認を伴わない形式であってもよい。
【００８４】
なお、同じネットワーク内に第２通信装置２Ａの時計２０Ａに時計を合わせる通信装置群から構成されるサブネットワーク、第２通信装置２Ｂの時計２０Ｂに時計を合わせる通信装置群から構成される別のサブネットワークなど、複数の第２通信装置２（複数のサブネットワーク）が存在しても良い。
【００８５】
なお、時計の調整にはＰＬＬを用いても良い。ＰＬＬを用いることにより、時計２０に対する時計１２０のずれを低減させることができる。
【００８６】
なお、第１〜第３通信装置１・２・３の通信手段は例えばＩＥＥＥ８０２．１１系の無線ＬＡＮやＰＬＣであってもよい。この場合、第１通信装置１はＡＰであり、ＴＦはビーコンフレームであっても良い。
【００８７】
（実施の形態１）
本発明の一実施形態に関して以下に説明する。本実施形態では、識別子を用いて同期を行う場合であり、第３通信装置３では瞬間フレームの識別子と同期フレームの識別子とを比較することにより、簡単にｔＴＸとｔＲＸとが同じ瞬間にサンプリングされた時刻であるということを確認できる。なお、本実施形態の説明は識別子に関連する部分のみとする。
【００８８】
まず、瞬間フレーム（ＴＦ）にシーケンス番号などの識別子が含まれていると仮定する。
【００８９】
第２通信装置２はＴＦを受信するとＴＦから識別子を読み出す。次に、ＴＦを送信または受信した瞬間にサンプリングされた時計２０のｔＴＸ値と上記識別子を含んだ同期フレーム（ＳＦ）を作成して第３通信装置３に伝送する。
【００９０】
第３通信装置３の調整部１６０にはｎ個（ｎ≧１の整数）までの最新のｔＲＸ値と識別子とのセットを格納できるバッファがあるとする。
【００９１】
第３通信装置３がＴＦを受信した際、ＴＦを受信した瞬間にサンプリングされた時計１２０のｔＲＸ値と識別子とをバッファに格納する。次に第３通信装置３がＳＦを受信した際、ＳＦからｔＴＸと識別子を読み出し、調整部１６０はＳＦの識別子と同じ識別子をバッファから探す。もしＳＦの識別子がバッファに見つかった場合、調整部１６０は以下の処理を行う。
【００９２】
まず、見つかった識別子に対応するｔＲＸ値をレジスタｔＲＸ０に格納する。また受信したＳＦの中に含まれるｔＴＸ値をレジスタｔＴＸ０に格納し、前回のレジスタｔＴＸ０の値をレジスタｔＴＸ１に移動する。次に、もし今回が初期化後に初めてＳＦの識別子がバッファに見つかった場合には、第２通信装置２および第３通信装置３の時計は相互に大きくずれていると考えられるので、前記時計１２０に前記時計２０の現在時刻の推定値を書き込む制御を行うことが適切であると考えられる。具体的には前記時計１２０の時刻を（現在の時計１２０の時刻−ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定する。なおＫは、現在の時計１２０の時刻をサンプリングし、以上の演算をして、時計１２０に値を設定するまでの処理時間を表す定数である。ＰＬＬを用いている場合、本条件ではＰＬＬのパラメータの初期化を行うことが好ましい。
【００９３】
また一旦同期が取れた後でも、第２通信装置２および第３通信装置３のうち少なくとも一つの装置が瞬間フレームを長時間にわたって受信できなかった場合か、第３通信装置３が長時間にわたって同期フレームを受信できなかった場合には、上と同様の処理を行って時計１２０に対して時計２０の現在時刻の推定値を一挙に書き込む制御を行うことが望ましいと考えられる。上記の判定は例えばＡＢＳ（ｔＴＸ０―ｔＲＸ０）＞ＴＨとして行うことができる。ただしＡＢＳは絶対値を表している。
【００９４】
なお、ＴＨはＳＦを受信した際、時計２０と時計１２０との同期が取れているかどうかを確認するための閾値である。本閾値の値を決定する際の指針を以下に示す。
【００９５】
まずＴＦが伝送されるたびに、時計２０と時計１２０の時刻がほぼ同時にｔＴＸとｔＲＸとしてサンプリングされるが、ｔＴＸとｔＲＸは完全に同じ値ではない。その理由としては、時計２０と時計１２０とがもともと完全に同期して同じ時刻を示していないことと、伝搬路で生じるマルチパス現象や各局間の伝送距離に依存してＴＦの伝送時間に差が生じるということが挙げられる（電波は１ｎｓに約３０ｃｍ移動する）。よって、時計２０と時計１２０とがある範囲内で同期が取れている場合、同じＴＦに対してサンプリングされたｔＴＸとｔＲＸとの差分絶対値もある誤差内に収まると考えられる。例えば時計２０と時計１２０とが１００ｎｓの範囲で同期している場合、余裕を持ってＴＨを１μｓ程度に設定しても良い。この場合、（ｔＴＸ−ｔＲＸ）の差分絶対値がＴＨ以下である場合にｔＴＸとｔＲＸは同じＴＦによってサンプリングされたと判断することができる。
【００９６】
一旦同期が取れてしまった後は時計２０と時計１２０とは充分近い値になっていると考えられる。この状態では時計２０の現在時刻の推定値を時計１２０に書き込むよりは、ｔＴＸ０とｔＲＸ０との情報から時計１２０の進む速度を微調整するという方針で時計の合わせ込みを行うことが望ましい。この方が個々のサンプル時刻の揺らぎが平滑化され、より滑らかな時計の合わせこみを行うことができる。
【００９７】
なお、第１〜第３通信装置１・２・３の通信手段は例えばＩＥＥＥ８０２．１１系であり、第１通信装置１はＡＰであり、ＴＦはビーコンフレームであった場合、ビーコンフレームに含まれるＴＳＦタイマーのタイムスタンプあるいはシーケンス番号を識別子としても良い。
【００９８】
（実施の形態２）
本発明の別の実施形態に関して以下に説明する。本実施形態は、実施の形態１で用いたような識別子を用いないで同期を行う場合である。この場合、識別子を使っていないため、第３通信装置３では、バッファに格納されているデータから受信した同期フレームに含まれるｔＴＸに対応するｔＲＸを探す必要がある。その方法は以下の通りである。
【００９９】
調整部１６０は以下の同期済みフラグ（Ｓｙｎｃ）、ｔＴＸ０，ｔＴＸ１，ｔＲＸ０、ｔＲＸ１とｔＲＸ２のレジスタを含む。Ｓｙｎｃは時計１２０の同期が取れているかどうかを表すレジスタであり、時計２０の時刻と時計１２０の時刻との差分絶対値がある誤差内に収まっていることを意味する。ｔＴＸ０は受信したＳＦに含まれるｔＴＸ値を保持するレジスタである。ｔＴＸ１は前回受信したＳＦに含まれていたｔＴＸ値を保持するレジスタである。ｔＲＸ０は受信したＳＦに含まれるｔＴＸ値に対応するｔＲＸ値を保持するレジスタである。ｔＲＸ１は前回受信したＳＦに含まれるｔＴＸ値に対応するｔＲＸを保持するレジスタである。時計の調整を行う調整部１６０のアルゴリズムを図４に示す。なお、ＴＦの処理は図４のチャートには示していないが、ＴＦを受信した瞬間に時計１２０がサンプリングされて、そのサンプル結果のｔＲＸの値が調整部１６０に渡され、調整部１６０はｔＲＸの値をバッファ内に格納する。
【０１００】
まず、リセット（Ｓ１０）後、最初にＳ２０に移行する。Ｓ２０ではＳｙｎｃは偽に設定される。次にＳ３０でＳＦが受信されるのを待つ。ＳＦが受信されると、Ｓ４０に遷移し、Ｓ４０ではＳＦに含まれるｔＴＸをｔＴＸ０に格納する。
【０１０１】
次に調整部１６０のバッファに格納されている全ｔＲＸ値に対してｔＴＸ０との差分絶対値が最も小さいものを選択してレジスタｔＲＸ０に格納する。次にＳ５０に移行し、ここでｔＴＸ０とｔＲＸ０の差分の絶対値がＴＨ（ＴＨは定数）以下であるかどうかの確認を行う。これが真であれば時計は同期が取れている状態を示し、Ｓ９０に遷移する。偽であれば時計の同期が取れていない、あるいはｔＴＸ０とｔＲＸ０とが同一ＳＦに対応したサンプル値になっていないことを意味し、この場合にはＳ６０に遷移する。実際に同期が外れているかどうかはＳｙｎｃの値を確かめることで確認できる（Ｓ６０）。
【０１０２】
Ｓｙｎｃが偽であれば、時計の同期が外れている状況を示し、Ｓ７０に遷移する。もしＳｙｎｃが真であれば、時計の同期は取れていることを意味し、Ｓ１２０に遷移する。Ｓ７０では時計１２０の時刻を（現在の時計１２０の時刻−ｔＲＸ０＋ｔＴＸ０＋Ｋ）に設定し、Ｓ２０に戻る。Ｓ９０では同期が取れている状態であり、まず、Ｓｙｎｃを真に設定し、ｔＴＸ０とｔＲＸ０とを元に時計１２０の進む速度を微調整してＳ１００に遷移する。Ｓ１００ではｔＲＸ１をｔＲＸ０に設定し、Ｓ１１０に移行してｔＴＸ１をｔＴＸ０に設定し、Ｓ３０に戻って次のＳＦを待つ。Ｓ１２０では（（ｔＴＸ０−ｔＲＸ１）＞ＴＨ１））ＯＲ（（ｔＴＸ０−ｔＴＸ１）＞ＴＨ１））の比較を行う。ただしＴＨ１はＴＦが送信される間隔と比較して充分に長い時間を示す。
【０１０３】
前者の不等式が成立するのは第３通信装置３で長時間ＴＦが受信できなかった場合を示しており、後者の不等式が成立するのは第２通信装置２で長時間ＴＦが受信できなかった場合を示す。したがってこのいずれかが成立すれば時計２０と時計１２０との同期が外れている可能性が高いことを示している。
【０１０４】
これが偽であれば、時計はまだ同期が取れている可能性が高いことを意味し、Ｓ１１０でｔＴＸ１＝ｔＴＸ０にし、Ｓ３０に戻って次のＳＦを待つ。真であれば、時計の同期が外れてしまったことを意味し、Ｓ７０に遷移する。
【０１０５】
次に、本実施形態の処理を行った場合の事例を示す。なお、これらの事例ではＴＨ１＝１０５０，ＴＨ２＝１０、Ｋ＝０、バッファのｎ＝３とする。
【０１０６】
図５に初期状態から順調に同期が取れる場合を示す。まず、リセット後、時計２０と時計１２０との同期が取れていない状態（Ｓｙｎｃ＝偽）である。最初にＴＦ１が伝送されると、第２通信装置２でｔＴＸは１０００とサンプリングされ、第３通信装置３ではｔＲＸは６５００とサンプリングされてバッファに格納される。次にＳＦ１は第２通信装置２から第３通信装置３に伝送され、第３通信装置３はＳＦ１を元に図４の時計の調整の処理を行い詳細は以下である。
【０１０７】
Ｓ４０ではｔＴＸ０＝１０００、ｔＲＸ０＝６５００になる。次にＴＨ２＝１０のため、Ｓ５０は偽になる。次にＳ６０からＳ７０に行き、Ｓ７０ではｔＲＸ２＝６５６０になり、Ｓ８０で時計１２０の時刻は（６５６０−６５００＋１０００＋０）＝１０６０に設定される。この時点で時計２０は１０５９を表しているため、同期が取れたことになる。
【０１０８】
次にＴＦ２が伝送され、ｔＴＸは１１００、ｔＲＸは１１０１とサンプリングされる。ＳＦ２が伝送された後、第３通信装置３は時計の調整の処理を始め、まずＳ４０でｔＴＸ０＝１１００、ｔＲＸ０＝１１０１と設定され、Ｓ５０は真になりＳ９０に移行する。Ｓ９０ではＳｙｎｃ＝真に設定され、同期が取れている状態を示す。また、ｔＴＸ０とｔＲＸ０とを元に、時計１２０の進む速度の調整が行われる。最後にＳ１００でｔＲＸ１は１１０１に設定され、Ｓ１１０でｔＴＸ１は１１００に設定され、Ｓ３０に戻る。
【０１０９】
図６に初期状態から最初のＴＦが第２通信装置２で失敗になった場合の事例を示す。まず、リセット後、時計２０と時計１２０との同期が取れていない状態（Ｓｙｎｃ＝偽）である。最初にＴＦ１が伝送されると、第２通信装置２でｔＴＸは１０００とサンプリングされ、第３通信装置３はＴＦ１を受信できないため、何もしない。次にＳＦ１は第２通信装置２から第３通信装置３に伝送され、第３通信装置３はＳＦ１を元に図４の時計の調整の処理を行い詳細は以下である。
【０１１０】
Ｓ４０ではｔＴＸ０＝１０００、ｔＲＸ０＝未定値になる。次に、ＴＨ２＝１０のため、Ｓ５０は偽になる。次にＳ６０からＳ７０に行き、Ｓ７０ではｔＲＸ２＝６５６０になり、Ｓ８０で時計１２０の時刻は（６５６０−未定値＋１０００＋０）＝未定値に設定され、時計１２０はまだ同期が取れていない状態である。次にＴＦ２が伝送され、ｔＴＸは１１００、ｔＲＸはＸＸ（未定値）とサンプリングされる。ＳＦ２が伝送された後、第３通信装置３は時計の調整の処理を始め、まずＳ４０でｔＴＸ０＝１１００、ｔＲＸ０＝ＸＸになる。次にＴＨ２＝１０のため、Ｓ５０は偽になる。次にＳ６０からＳ７０に行き、Ｓ７０ではｔＲＸ２＝ＸＸ＋７９になり、Ｓ８０で時計１２０の時刻は（ＸＸ＋７９−ＸＸ＋１１００＋０）＝１０７９に設定される。この時点で時計２０は１０８０を表しているため、同期が取れたことになる。次のＴＦ３とＳＦ３は順調に伝送され、図５の説明と同様になり、ＳＦ３に対する時計の調整の処理でＳｙｎｃは真に設定さ、同期が取れている状態を表す。
【０１１１】
図７に初期状態から最初のＴＦが第３通信装置３で失われ、次のＴＦが第３通信装置３で失われる事例を示す。まず、リセット後、時計２０と時計１２０との同期が取れていない状態（Ｓｙｎｃ＝偽）である。最初にＴＦ１が伝送されると、第２通信装置２ではＴＦ１は失敗になり第２通信装置２はＴＦ１の処理をしなく、第３通信装置３ではｔＲＸは６５００とサンプリングされてバッファに格納される。次にＴＦ２が伝送され、第２通信装置２でｔＴＸは１１００とサンプリングされ、第３通信装置３はＴＦ２を受信できないため、何もしない。次にＳＦ２は第２通信装置２から第３通信装置３に伝送され、第３通信装置３はＳＦ２を元に図４の時計の調整の処理を行い詳細は以下である。
【０１１２】
Ｓ４０ではｔＴＸ０＝１１００、ｔＲＸ０＝６５００になる。次に、ＴＨ２＝１０のため、Ｓ５０は偽になる。次にＳ６０からＳ７０に行き、Ｓ７０ではｔＲＸ２＝６６８３になり、Ｓ８０で時計１２０の時刻は（６６８３−６５００＋１１００＋０）＝１２８３に設定され、時計１２０はまだ同期が取れていない状態である。次にＴＦ３が伝送され、ｔＴＸは１２００、ｔＲＸは１３０２とサンプリングされる。ＳＦ３が伝送された後、第３通信装置３は時計の調整の処理を始め、まずＳ４０でｔＴＸ０＝１２００、ｔＲＸ０＝１３０２になる。次にＴＨ２＝１０のため、Ｓ５０は偽になる。次にＳ６０からＳ７０に行き、Ｓ７０ではｔＲＸ２＝１３５０になり、Ｓ８０で時計１２０の時刻は（１３５０−１３０２＋１２００＋０）＝１２４８に設定される。この時点で時計２０は１２５０を表しているため、同期が取れたことになる。次のＴＦ４とＳＦ４が順調に伝送された場合、図５の説明と同様になり、ＳＦ４に対する時計の調整の処理でＳｙｎｃは真に設定さ、同期が取れている状態を表す。
【０１１３】
図８に時計１２０の同期が取れている状態（Ｓｙｎｃ＝真）から、第２通信装置２でＴＦが受信できない状態の事例を示す。最初は同期が取れていて、ＴＦ１に対するＴＦ１とＳＦ１の伝送は問題なく伝送されるため、第３通信装置３ではＳＦ１を受信した時、順調にＳ３０、Ｓ４０、Ｓ５０、Ｓ９０、Ｓ１００、Ｓ１１０の順に処理を行う。次にＴＦ２が伝送されると、第２通信装置２ではＴＦ２は失敗になり第２通信装置２はＴＦ２の処理をしなく、第３通信装置３ではｔＲＸは１１０１とサンプリングされてバッファに格納される。次にＴＦ３が伝送され、ＴＦ３とＳＦ３は順調に伝送され、時計２０と時計１２０との誤差はＴＨ２に収まっているため、処理は順調に進む。よって、本事例では第２通信装置２がＴＦ２を受信できなかったため、ＳＦ２に対する時計１２０の調整の処理が行われないが、一つだけのＴＦを失っても時計はずれは大きく変らなく、次のＴＦ３で処理は順調に進む。
【０１１４】
図９に時計１２０の同期が取れている状態（Ｓｙｎｃ＝真）から、第３通信装置３でＴＦが受信できない状態の事例を示す。最初は同期が取れていて、ＴＦ１に対するＴＦ１とＳＦ１の伝送も問題なく伝送されるため、第３通信装置３ではＳＦ１を受信した時、順調にＳ３０、Ｓ４０、Ｓ５０、Ｓ９０、Ｓ１００、Ｓ１１０の順に処理を行い、Ｓ１００でｔＲＸ１は１０００に設定さ、Ｓ１１０でｔＴＸ１は１０００に設定される。次にＴＦ２が伝送され、第２通信装置２でｔＴＸ０は１１００とサンプリングされ、第３通信装置３はＴＦ２を受信できないため、何もしない。次にＳＦ２は第２通信装置２から第３通信装置３に伝送され、第３通信装置３はＳＦ２を元に図４の時計の調整の処理を行い詳細は以下である。
【０１１５】
Ｓ４０ではｔＴＸ０＝１１００、ｔＲＸ０＝１０００になる。次に、ＴＨ２＝１０であり、１１００−１０００＝１００のため、Ｓ５０は偽になる。次にＳ６０からＳ１２０に行き、Ｓ１２０ではｔＴＸ０＝１１００、ｔＲＸ１＝１０００、ｔＴＸ１＝１０００、ＴＨ１＝１０５０のため、Ｓ１２０は真になって、Ｓ１１０でｔＴＸ１＝１１００に設定してＳ３０に戻る。次にＴＦ３が伝送され、ＴＦ３とＳＦ３は順調に伝送され、時計２０と時計１２０の誤差はＴＨ２に収まっているため、処理は順調に進む。よって、本事例では第３通信装置３がＴＦ２を受信できなかったため、ＳＦ２に対する時計１２０の時計の調整は行われないが、一つだけのＴＦを失っても時計はずれは大きく変らなく、次のＴＦ３で処理は順調に進む。
【０１１６】
図１０に時計１２０の同期が取れている状態（Ｓｙｎｃ＝真）から、第３通信装置３でＴＦが連続的に長い間受信できない状態の事例を示す。ＴＦ１およびＴＦ２の処理は図９の事例と同様であり、ＳＦ１の時計の調整の処理の最後にｔＲＸ１は１０００に設定される。ＴＦ２以降、ＴＦは長い間第３通信装置３で受信できず、ＳＦに対する処理はＳＦ２からＳＦ１１までは、ｔＴＸ０とｔＲＸ１との差分はＴＨ１＝１０００より小さいため、時計の調整の処理はＳＦ２と同じ処理になる。ＴＦ１２の処理では、ｔＴＸ０は約２１００になり、ｔＲＸ１は１０００のため、この差分はＴＨ１＝１０５０より大きくなり、状態はＳ１２０からＳ７０に進み、最後はＳ２０でＳｙｎｃ＝偽、つまり同期が取れていない状況になる。この状況はＴＦとＳＦが順調に伝送できるようになるＴ２３まで続き、ＴＦ２３以降の処理は図６と同じ処理になる。
【０１１７】
図１１に時計１２０の同期が取れている状態（Ｓｙｎｃ＝真）から、第２通信装置２でＴＦが連続的に長い間受信できない状態の事例を示す。ＴＦ１およびＴＦ２の処理は図８の事例と同様である。最初は同期が取れていて、ＴＦ１に対するＴＦ１とＳＦ１の伝送も問題なく伝送されるため、第３通信装置３ではＳＦ１を受信した時、順調にＳ３０、Ｓ４０、Ｓ５０、Ｓ９０、Ｓ１００、Ｓ１１０の順に処理を行い、Ｓ１１０でｔＴＸ１は１０００に設定される。ＴＦ２からＴＦ８２までは、第２通信装置２でＴＦが受信できない状態が続き、ＳＦも伝送されなく第３通信装置３は時計１２０の時刻をサンプリングしてバッファを更新するが、時計１２０の調整は行わない。ＴＦ８３の伝送でＴＦが第２通信装置２と２で受信できるようになり第２通信装置２でｔＴＸは９２００とサンプリングされ、第３通信装置３ではｔＲＸは９２３０とサンプリングされてバッファに格納される。ＴＦ２からＴＦ８２まで時計１２０の調整が行われなかったため、時計２０と時計１２０の違いは９２３０−９２００＝３０＞ＴＨ２（１０）になっていて、同期がはずれている状態である。次にＳＦ８３は第２通信装置２から第３通信装置３に伝送され、第３通信装置３はＳＦ８３を元に図４の時計の調整の処理を行い詳細は以下である。
【０１１８】
Ｓ４０ではｔＴＸ０＝９２００、ｔＲＸ０＝９２３０になる。次にＴＨ２＝１０のため、Ｓ５０は偽になる。次にＳ６０からＳ１１０に行き、ｔＴＸ０−ｔＴＸ１＝９２００−１０００＝８０００＞ＴＨ１（１０００）のため、Ｓ７０に遷移する。Ｓ７０とＳ８０で時計１２０は９２５１に設定され、Ｓ２０でＳｙｎｃ＝偽になる。次のＴＦ９４とＳＦ９４が順調に伝送された場合、Ｓｙｎｃ＝真になり、同期が取れた状態に戻る。
【０１１９】
以上のように、本実施形態に係る通信装置は、第１の通信装置であって、通信手段と、時計１と、前記時計１をサンプリングするサンプリング手段とを備え、前記通信手段は送達確認を伴わない特定のフレーム（瞬間フレーム）を送信または受信した瞬間を前記サンプリング手段に知らせ、前記サンプリング手段は前記瞬間に前記時計１の時刻をｔＴＸとしてサンプリングし、前記通信手段は前記ｔＴＸを含む同期フレームを作成して送達確認を伴う手法で第２の通信装置に伝送する構成としてもよい。なお、瞬間フレームは、送達確認を伴う形式であってもよいし、ブロードキャストまたはユニキャストフレームであっても良い。また、同期フレームは、送達確認を伴わない形式であってもよいし、同期送達確認を伴うユニキャストフレームであっても良い。
【０１２０】
また、本実施形態に係る通信装置は、第２の通信装置であって、通信手段と、時計２と、前記時計２をサンプリングするサンプリング手段と、前記時計２を調整する調整手段とを備え、前記通信手段は前記瞬間フレームを送信または受信した瞬間を前記サンプリング手段に知らせ、前記サンプリング手段は前記瞬間に前記時計２の時刻をｔＲＸとしてサンプリングして前記調整手段に渡し、前記通信手段は前記同期フレームを第１の通信装置から受信して前記同期フレームから少なくとも前記ｔＴＸを取り出して前記調整手段に渡し、前記調整手段は前記通信手段より少なくとも前記ｔＴＸを受けると、時計１に自局の時計２を合わせる操作をする構成としてもよい。
【０１２１】
上記の第１と第２の通信装置の構成によれば、本発明は瞬間フレームを第１と第２の通信装置の時計をほぼ同時にサンプリングするための基準時点とし、瞬間フレームではない別のフレーム（同期フレーム）を使って第１の通信装置がサンプリングした時計１のｔＴＸを第１の通信装置から第２の通信装置に伝送する。
【０１２２】
一方、特許文献１では同期用のマルチキャストフレームが以上の二つの役割、つまり時計をほぼ同時にサンプリングするための基準時点と、サンプリングした時計の時刻を伝送することである。特許文献１では同期用のマルチキャストフレームを失った場合、二回連続に時計の調整を行うことができなくなるが、上記の構成によれば、瞬間フレームを失った場合でも、第２の通信装置の時計の調整は一回行われないだけで済む。よって、図１６のように、本発明により特許文献１よりも高い同期精度を得ることが可能である。なお、本発明で用いる同期フレームは送達確認を行う手法で伝送を行うため、無線ＬＡＮ層レベルで再送を行うことが可能である。したがって同期フレームを失う確率は、瞬間フレームを失う確率と比較して無視できるほど小さいとみなすことができる。
【０１２３】
また、第２の通信装置であって、前記調整手段は前記時計２の時刻を設定する、または時計が進む速度を調整する処理を含む構成としてもよい。
【０１２４】
上記の構成によれば、前記時計２と前記時計１の同期が外れている場合には前記時計１の現在時刻の推定値を前記時計２に対して直接書き込むことで、前記時計２の時刻を前記時計１の時刻に素早く近づけることができる。また、前記時計２と前記時計１の時刻が同期している場合には、前記時計２の時計が進む速度を微調整して同期を保つことができる。
【０１２５】
また、第１あるいは第２の通信装置であって、前記送信または受信した瞬間は例えばフレームの最初または最後のようにフレームの特定な部分を基準点とする構成としてもよい。
【０１２６】
上記の構成によれば、瞬間フレームの特定部分を基準点にすることにより、第１と第２の通信装置がそれぞれ時計１と時計２をサンプリングする瞬間をより一致させることができ、同期精度を向上させることができる。
【０１２７】
また、第２の通信装置であって、前記調整手段にバッファを備え、前記バッファは送信または受信できた最新ｎ個（ｎ≧１の整数）までの前記瞬間フレームのデータを格納することができ、前記データには少なくとも前記ｔＲＸが含まれている構成としてもよい。
【０１２８】
上記の構成によれば、バッファを用いることにより、送信または受信できた
最新ｎ個（ｎ≧１の整数）までの瞬間フレームの少なくともｔＲＸを格納できる。例えば同期フレームの伝送に時間が掛かりすぎ、同期フレームの伝送が終わる前に次の瞬間フレームが伝送されてしまう場合がある。この場合、もしｎ＝１であれば、瞬間フレームに対する前のｔＲＸを消す、あるいは新しいｔＲＸを記録しない選択肢があるが、いずれにしても一回時計の調整ができなくなる。ｎ＝２にしておけば、前のｔＲＸと新しいｔＲＸの両方を記録することができ、両方に対して時計の調整ができる。よって、ｎを同期フレームの最大の遅延に設定することにより同期の精度を劣化させないことができる。
【０１２９】
また、第１の通信装置であって、前記第１の通信装置の前記通信手段が作成する前記同期フレームには同期フレームを識別する識別子が含まれ、前記識別子は前記同期フレームに含まれる前記ｔＴＸに対応する前記瞬間フレームから複写した構成としてもよい。
【０１３０】
また、第１の通信装置が伝送した同期フレームを受信する第２の通信装置であって、前記バッファに格納するデータには少なくとも前記ｔＲＸと前記ｔＲＸに対応する前記瞬間フレームに含まれる識別子のセットが含まれる構成としてもよい。
【０１３１】
上記の構成によれば、識別子を用いることにより、例えば瞬間フレームあるいは同期フレームを失った場合、第２の通信装置では自局が過去に受信した瞬間フレームの識別子と同期フレームに含まれるｔＴＸに対応する識別子を比較することにより、ｔＴＸとｔＲＸが同じ同期フレームに対応したサンプリング結果であるかどうかを容易に確認することができる。
【０１３２】
また、第２の通信装置であって、前記調整手段は受信した前記同期フレームの識別子と同じ識別子を前記バッファから探し、同じ識別子がバッファに存在する場合、この識別子に対応するｔＲＸをｔＲＸ０とし、前回のｔＲＸ０をｔＲＸ１とし、受信した前記同期フレームのｔＴＸをｔＴＸ０とし、前回のｔＴＸ０をｔＴＸ１として、（１）もし今回が初期化後に始めて前記同期フレームの識別子がバッファに見つかった場合、あるいは、ＡＢＳ（ｔＴＸ０―ｔＲＸ０）＞ＴＨ（ＡＢＳは絶対値）（ＴＨは定数）の場合、前記時計２の時刻を（現在の時計２の時刻―ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定するように前記パラメータを調整し、（２）もし（１）の条件が満たさない場合はｔＴＸ０とｔＲＸ０を元に前記パラメータを調整して前記時計２の進む速度を調整する構成としてもよい。
【０１３３】
上記の構成によれば、初期段階の時計の設定、同期フレームが長期的にわたって連続的に失われた場合、あるいは時計２が時計１とがずれ過ぎた場合、再び時計２の時刻を時計１の時刻に一挙に近づけることができる。
【０１３４】
また、第２の通信装置であって、前記調整手段は同期済みフラグを含む構成としてもよい。
【０１３５】
また、第２の通信装置であって、リセット時に前記同期済みフラグは偽に初期化される構成としてもよい。
【０１３６】
また、第２の通信装置であって、前記調整手段は受信した同期フレームに含まれる前記ｔＴＸに対して前記ｔＴＸと前記バッファに格納されている全ｔＲＸと差分絶対値が最も小さいｔＲＸを選択し、選択したｔＲＸをｔＲＸ０とし、前回のｔＲＸ０をｔＲＸ１とし、受信した前記同期フレームのｔＴＸをｔＴＸ０とし、前回のｔＴＸ０をｔＴＸ１として、（１）もし前記差分絶対値がＴＨ（ＴＨは定数）より小さいあるいは等しい場合、ｔＴＸ０とｔＲＸ０を元に前記パラメータを調整して前記時計２の進む速度を調整してかつ前記同期済みフラグを真に設定し、（２）もし（１）の条件が満たされていないかつ前記同期済みフラグが偽である、あるいは（１）の条件が満たされていないかつ前記同期済みフラグが真であってかつＡＢＳ（ｔＴＸ０―ｔＲＸ１）＞ＴＨ１（ＡＢＳは絶対値）（ＴＨ１は定数）である、あるいは（１）の条件が満たされていないかつ前記同期済みフラグが真であってかつＡＢＳ（ｔＴＸ０―ｔＴＸ１）＞ＴＨ１である場合、前記時計２の時刻を（現在の時計２の時刻―ｔＲＸ０＋ｔＴＸ０＋Ｋ（Ｋは定数））に設定するように前記パラメータを調整してかつ前記同期済みフラグを偽に設定する構成としてもよい。
【０１３７】
上記の構成では、識別子を用いていないため、ＬＡＮ層は上位層に瞬間フレームを送信または受信したタイミングのみを知らせればよく、ＬＡＮ層と上位層が別のチップの場合に相互でやりとりすべき情報の実装価格を安く抑えることができる。価格が安くなる原因は以下の通りである。識別子を用いた場合、識別子をＬＡＮ層から上位層に知らせる必要がある。通常のＰＣＩインタフェースを用いて識別子を上位に知らせることは可能であるが、ＰＣＩインタフェースでは様々な遅延・ジッタが発生するため、高度な同期のためにＰＣＩインタフェースを用いることはできない。このため、別途リアルタイム性があるインタフェースを準備する必要があり、上位層のチップと無線ＬＡＮのチップは通常別のチップであるため、チップのピン数が増えたりボードの設計が複雑になったりする。なお、通常チップのピン数を増やすことは望ましくないことであり、できるだけ減らしてチップの価格を下げる努力が重要である。識別子を用いない方法の場合、ＬＡＮ層チップと上位層チップの間の信号線として、例えば、瞬間フレームを送信または受信したタイミングにおいて一定時間だけ立ち上がる、あるいは電圧レベルが変化する、というような１本の信号線だけで必要な全ての情報のやりとりを達成することができる。
【０１３８】
また、第２の通信装置であって、時計の調整のためにＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）を用いる構成としてもよい。
【０１３９】
上記の構成によれば、第２の通信装置にＰＬＬを用いるため、より精度の高い同期を達成することができる。
【０１４０】
また、第１または第２の通信装置であって、前記通信手段は無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはＰＬＣ（Ｐｏｗｅｒ  Ｌｉｎｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）に対応している構成としてもよい。
【０１４１】
また、第１または第２の通信装置であって、通信装置が通信する前記瞬間フレームは無線ＬＡＮのビーコンフレームである構成としてもよい。
【０１４２】
以上の構成によれば、無線ＬＡＮあるいはＰＬＣのネットワーク環境でも高い精度の同期を達成することができる。
【０１４３】
また、上記の構成によれば、伝送方式にＩＥＥＥ８０２．１１ｅを用いた場合でも直接同期フレームを第１の通信装置から第２の通信装置に伝送することができる。一方、特許文献３の同期方式をＩＥＥＥ８０２．１１ｅに用いてかつクロックマスターがＡＰでない場合、同期用のマルチキャストフレームを二回に分けて伝送する必要がある。よって、以上の条件では本発明の伝送方式はより少ない帯域を利用して同期を行うことができる。また、ＩＥＥＥ８０２．１１ｅを用いる場合、本発明の瞬間フレームをビーコンフレームにすることができ、本発明と特許文献３の両方は定期的にビーコンフレーム伝送する必要があるため、本発明の瞬間フレーム（ビーコンフレーム）が利用する帯域は追加帯域にならない。
【０１４４】
また、前記識別子を用いる第１または第２の通信装置であって、前記識別子はビーコンフレームに含まれるＴＳＦ（Ｔｉｍｉｎｇ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）タイマーのタイムスタンプあるいはシーケンス番号である構成としてもよい。
【０１４５】
以上の構成によれば、識別子をビーコンフレームに含まれるＴＳＦタイマーのタイムスタンプあるいはシーケンス番号にすることにより、新たなフレームを定義しないで規格化された既存の情報を識別子として利用することができる。
【０１４６】
最後に、第２通信装置２および第３通信装置３の各ブロックは、ハードウェアロジックによって構成してもよいし、次のようにＣＰＵを用いてソフトウェアによって実現してもよい。
【０１４７】
すなわち、第２通信装置２および第３通信装置３は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである第２通信装置２および第３通信装置３の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記第２通信装置２および第３通信装置３に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０１４８】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【０１４９】
また、第２通信装置２および第３通信装置３を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１５０】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１５１】
時報送信ジッタを小さくできるため、小さなジッタが要求されるデータ通信を行う必要がある通信装置や、通信装置を備える端末装置等の様々な通信機器に適用できる。
【図面の簡単な説明】
【０１５２】
【図１】本発明の一実施形態に係る通信システムの概略構成を示すブロック図である。
【図２】上記通信システムにおける通信シーケンスを示す図である。
【図３】同期フレームの伝送が終わる前に次の瞬間フレームが伝送されてしまう事例を示した図である。
【図４】ｔＴＸとｔＲＸ情報を用いて識別子の情報を用いない場合に時計の同期を行うフローチャートである。
【図５】初期状態から順調に時計の同期が行われる場合の通信シーケンスを示す図である。
【図６】初期状態から最初のＴＦが第２通信装置で失敗になった場合の通信シーケンスを示す図である。
【図７】初期状態から最初のＴＦが第２通信装置で失敗され、次のＴＦが第３通信装置で失われる場合の通信シーケンスを示す図である。
【図８】時計の同期が取れている状態（Ｓｙｎｃ＝真）から、第２通信装置でＴＦが受信できない場合の通信シーケンスを示す図である。
【図９】時計の同期が取れている状態（Ｓｙｎｃ＝真）から、第３通信装置でＴＦが受信できない場合の通信シーケンスを示す図である。
【図１０】時計の同期が取れている状態（Ｓｙｎｃ＝真）から、第３通信装置でＴＦが連続的に長い間受信できない場合の通信シーケンスを示す図である。
【図１１】時計の同期が取れている状態（Ｓｙｎｃ＝真）から、第２通信装置でＴＦが連続的に長い間受信できない場合の通信シーケンスを示す図である。
【図１２】通信装置を備えた端末装置からなる通信ネットワークを示した図である。
【図１３】通信装置に含まれる時計の時刻の進み度合いと、標準時の進み度合いとの関係を示した図である。
【図１４】上記通信装置間で行われる、時刻情報の交換を示した図である。
【図１５】従来技術に関するものであって、同期用のマルチキャストフレームを用いて同期を行う図である。
【図１６】ＰＬＬの調整が順調に行われた場合、一回調整が行われなかった場合と二回連続で調整が行われなかった場合の時計のずれを示した図である。
【符号の説明】
【０１５３】
１  第１通信装置
２  第２通信装置
３  第３通信装置
２０  時計（時計手段）
３０  ＴＦ認識部（送信側第１フレーム認識手段）
４０  サンプラー（時刻検知手段）
５０  フレーマ（第２フレーム送信手段）
１２０  時計（時計手段）
１３０  ＴＦ認識部（受信側第１フレーム認識手段）
１４０  サンプラー（時刻検知手段）
１５０  フレーマ（第２フレーム受信手段）
１６０  調整部（調整手段）
２１０  ネットワーク
【図１】
0004708293.tif 000002
【図２】
0004708293.tif 000003
【図３】
0004708293.tif 000004
【図４】
0004708293.tif 000005
【図５】
0004708293.tif 000006
【図６】
0004708293.tif 000007
【図７】
0004708293.tif 000008
【図８】
0004708293.tif 000009
【図９】
0004708293.tif 000010
【図１０】
0004708293.tif 000011
【図１１】
0004708293.tif 000012
【図１２】
0004708293.tif 000013
【図１３】
0004708293.tif 000014
【図１４】
0004708293.tif 000015
【図１５】
0004708293.tif 000016
【図１６】
0004708293.tif 000017