(57)【特許請求の範囲】
【請求項１】
受信されるスリープ指示に基づいて自身の電力状態を制御する複数の端末装置と、
前記複数の端末装置に接続され、予め定められた第１パケットを定期的に前記端末装置に送信し、又は、他の装置から定期的に送信された第２パケットを受信して該第２パケットを前記端末装置に転送する制御装置と、
を備え、
前記制御装置は、
前記端末装置に送信する第１パケットの送信予定時刻又は前記端末装置へ転送する第２パケットを受信する受信予定時刻と、現在時刻との差である残り時間に基づいて前記端末装置のスリープ可否を判定し、該端末装置をスリープさせる場合にスリープさせるためのスリープ指示を前記端末装置に送信する制御部を有するネットワークシステム。
【請求項２】
前記制御装置は、
前記端末装置へ転送する第２パケットをネットワークから受信する受信部
をさらに備え、
前記制御部は、
第２パケットを受信する受信予定時刻を推定する受信予定時刻推定部と、
該第２パケットの受信予定時刻と現在時刻との差である残り時間に基づいて、前記端末装置のスリープ可否を判定するスリープ判定部と
を有する請求項１に記載のネットワークシステム。
【請求項３】
前記制御部は、前記残り時間が予め定められた閾値より大きい場合に、スリープ可と判定し、スリープ指示を前記端末装置に送信する請求項１に記載のネットワークシステム。
【請求項４】
前記制御装置は、
自装置の上り及び下りのトラフィック状態を監視し、前記端末装置に送信又は転送するトラフィックがあるか否かを管理するトラフィック監視部
をさらに備え、
前記制御部は、送信又は転送するトラフィックがある前記端末装置については、スリープ不可と判定する請求項１に記載のネットワークシステム。
【請求項５】
前記制御装置は、前記第１パケット又は前記第２パケットを含む、プロトコルに応じた複数のパケットを送受信することでハンドシェイクを実現する該パケットを前記端末装置との間で送受信し、
前記制御部は、前記ハンドシェイクが完了していない場合は、スリープ不可を判定する請求項１に記載のネットワークシステム。
【請求項６】
前記制御部は、
送受信されるパケットをスヌーピングして予め定められたハンドシェイク開始のパケットと、予め定められたハンドシェイク終了のパケットとを検出し、
ハンドシェイク開始のパケットを検出後、ハンドシェイク終了のパケットを検出するまでは、スリープ不可と判定する請求項５に記載のネットワークシステム。
【請求項７】
前記制御部は、前記端末装置をスリープ可と判定した場合に前記残り時間に基づいて、前記端末装置のスリープ時間を決定し、該スリープ時間の情報を含む前記スリープ指示を前記端末装置に送信し、
前記端末装置は、受信した前記スリープ指示で指定されたスリープ時間に従い自装置の少なくとも一部をスリープ状態にする請求項１に記載のネットワークシステム。
【請求項８】
前記受信予定時刻推定部は、過去に前記端末装置へ転送する複数の第２パケットを受信した時刻に基づき受信間隔の統計情報を求め、前回の受信時刻と該統計情報に基づいて、次に第２パケットを受信する受信予定時刻を推定する請求項２に記載のネットワークシステム。
【請求項９】
前記受信予定時刻推定部は、受信間隔の統計情報として、受信間隔の平均値及び偏差を求め、前回の受信時刻と、受信間隔の平均値及び偏差とに基づいて、次に第２パケットを受信する受信予定時刻を推定する請求項８に記載のネットワークシステム。
【請求項１０】
前記受信予定時刻推定部は、前回の受信時刻と受信間隔の平均値の和から偏差に応じた時間を引いて、次に第２パケットを受信する受信予定時刻を推定する請求項９に記載のネットワークシステム。
【請求項１１】
前記端末装置に送信する予定の第１パケット又は前記端末装置へ転送する第２パケットは、時刻同期のためのパケットである請求項１に記載のネットワークシステム。
【請求項１２】
前記制御装置は、光回線終端装置であり、
前記端末装置は、スプリッタを介して前記光回線終端装置と通信する光ネットワークユニットであり、
該光回線終端装置と該光ネットワークユニットとでＰＯＮを構成する請求項１に記載のネットワークシステム。
【請求項１３】
前記光回線終端装置は、時刻同期のためのマスタークロック装置に接続され、
前記光ネットワークユニットは、時刻同期のためのスレーブクロック装置に接続され、
前記マスタークロック装置と前記スレーブクロック装置で時刻同期のためのパケットが送受信される請求項１２に記載のネットワークシステム。
【請求項１４】
受信されるスリープ指示に基づいて自身の電力状態を制御する複数の端末装置に接続される制御装置であって、
予め定められた第１パケットを定期的に前記端末装置に送信し、又は、他の装置から定期的に送信された第２パケットを受信して該第２パケットを前記端末装置に転送するパケット処理部と、
前記端末装置に送信する第１パケットの送信予定時刻又は前記端末装置へ転送する第２パケットを受信する受信予定時刻と、現在時刻との差である残り時間に基づいて前記端末装置のスリープ可否を判定し、該端末装置をスリープさせる場合にスリープさせるためのスリープ指示を前記端末装置に送信する制御部と
を備えた制御装置。
【請求項１５】
前記制御装置は、光回線終端装置であり、
ＰＯＮシステムにおいて前記複数の端末装置である複数の光ネットワークユニットにスプリッタを介して接続される請求項１４に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステム及び制御装置に係り、一例として、時刻配信を実現するＰＯＮシステムにおける省電力制御技術に関する。
【背景技術】
【０００２】
［光アクセスネットワークの普及］
近年、インターネットの普及に伴い、ネットワークへの高速化への要求が高まり、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）、そしてＢ−ＰＯＮ（Ｂｒｏａｄｂａｎｄ  ＰＯＮ）、Ｅ−ＰＯＮ（Ｅｔｈｅｒｎｅｔ  ＰＯＮ）及びＧ−ＰＯＮ（Ｇｉｇａｂｉｔ  Ｃａｐａｂｌｅ  ＰＯＮ）の普及が進んでいる。特に、ＰＯＮ方式は、局に置かれる収容局（ＯＬＴ：Ｏｐｔｉｃａｌ  Ｌｉｎｅ  Ｔｅｒｍｉｎａｌ、光回線終端装置）と各ユーザー宅に置かれるネットワークユニット（ＯＮＵ：Ｏｐｔｉｃａｌ  Ｎｅｔｗｏｒｋ  Ｕｎｉｔ、光ネットワークユニット）との間を接続する際に、ＯＬＴから１本のファイバを出し、光スプリッタを用いて分岐して各ＯＮＵ（ユーザー）が接続される。このため、ファイバの敷設コストが安く、かつ光伝送を用いるため高速に通信を行うことが可能であるため、世界各国で普及が進んでいる。
【０００３】
［ＰＯＮ方式］
ＰＯＮ方式の中でも、ＯＬＴからＯＮＵへの下り伝送用とＯＮＵからＯＬＴへの上り伝送用とで別の波長の光を用い、ＯＮＵ毎の信号を時分割するＴＤＭ−ＰＯＮ方式が広く利用されている。このＴＤＭ（Ｔｉｍｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅｘｉｎｇ）−ＰＯＮ方式は、Ｂ−ＰＯＮ、Ｅ−ＰＯＮ、Ｇ−ＰＯＮ、１０Ｇ−ＥＰＯＮ、ＸＧ−ＰＯＮにおいて採用されている。
［ＴＤＭ−ＰＯＮでの伝送方式］
ここで、ＴＤＭ−ＰＯＮにおける、下り伝送および上り伝送に関して説明する。下り伝送においては、ＯＬＴは連続した光信号を送出し、光スプリッタを介して全ＯＮＵに光信号が届く。ＯＮＵは、受信した光信号のフレームに付与されているリンク識別子に基づいて、そのフレームが自宛かを識別し、自宛のフレームのみを受信する。また、上り伝送においては、各ＯＮＵは光信号の衝突を防ぐために、ＯＬＴから指示された送信タイミングに基づいて、光信号を送信する。例えば、ＯＬＴは、送信を許可する期間を指示する制御フレームを各ＯＮＵに送信し、ＯＮＵは、送信を許可された期間に上りの制御信号および上りデータを送信する。また、ＯＮＵは、接続している端末から受信したフレームのデータ量に基づいて、帯域要求量をＯＬＴに要求する制御フレームをＯＬＴに送信する。一般的には、ＯＮＵに送信を許可する期間は、ＯＮＵが要求した帯域要求量に基づいて動的に制御する、ＤＢＡ（Ｄｙｎａｍｉｃ  Ｂａｎｄｗｉｄｔｈ  Ａｌｌｏｃａｔｉｏｎ）制御が利用されている。
【０００４】
［モバイルバックホールへのＰＯＮ適用］
モバイル端末の普及や高速化に伴い、ネットワークのトラフィックが増大している。そのため、モバイルバックホールにおいて要求される伝送速度も増大している。また、モバイルバックホール構築にかけるコストの低減も要求されており、低コストで高速な伝送速度を実現可能なＰＯＮがモバイルバックホールに適用されている。
【０００５】
［基地局間の時刻同期の必要性］
ＬＴＥ  ＴＤＤモード規格などのモバイル基地局においては、（ハンドオーバー等を実現するために）基地局間で時刻を同期する必要がある。従来、基地局にＧＰＳ受信機を設置して、ＧＰＳ信号によって各基地局を時刻同期しているが、ＧＰＳアンテナの設置やＧＰＳ受信機の利用にはコストが掛かり、また、屋内に基地局を設置する場合には、ＧＰＳによる時刻同期が困難である。そのため、ネットワークを介して時刻同期を実現するプロトコルの利用が検討されている。
【０００６】
[ネットワークを介した時刻同期技術]
ネットワークを介して高精度な時刻同期を実現する技術として、ＩＥＥＥ１５８８プロトコルが知られており、ＩＥＥＥ１５８８を利用した基地局間の時刻同期が検討されている。ＩＥＥＥ１５８８プロトコルの詳細は非特許文献１に開示されている。例えば、マスタークロック装置とスレーブクロック装置との間で、ＩＥＥＥ１５８８プロトコルのフレームを送受信して時刻同期を確立する。また、ＩＥＥＥ１５８８での時刻同期の精度を向上させるために、遅延が大きい時刻同期パケットを破棄して、時刻補正に用いない技術が特許文献１に開示されている。
【０００７】
［ＰＯＮでの時刻同期技術］
なお、ＰＯＮを介してＩＥＥＥ１５８８プロトコルによって時刻を同期するためには、ＯＬＴ−ＯＮＵ間で時刻を同期する必要がある。ＯＬＴ−ＯＮＵ間での同期手順は、例えば、非特許文献２に記載されている。
【０００８】
[ネットワークの省電力技術]
ところで、ＰＯＮシステムでの省電力化も求められており、ユーザートラフィックがないときにＯＮＵ送受信部などの電力をＯＦＦにするスリープ制御技術が標準規格に採用されており、非特許文献３に開示されている。また、スリープ制御に関連した技術として、呼制御パケット等を受信してリアルタイム通信が必要と判断すると、端末を省電力モードから通常モードに移行させる技術が特許文献３に開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−１７４６７６号公報
【特許文献２】特開２０１１−２４９８６４号公報
【特許文献３】特開２００４−１７２７７２号公報
【非特許文献】
【００１０】
【非特許文献１】ＩＥＥＥ１５８８−２００８
【非特許文献２】Ｔｉｍｅ ｏｆ ｄａｙ Ｄｉｓｔｒｉｂｕｔｉｏｎ ｏｖｅｒ Ｅ−ＰＯＮ，ＨＵＡＷＥＩ ＴＥＣＨＮＯＬＯＧＩＥＳＣＯ., ＬＴＤ，２００９年３月
【非特許文献３】ＩＥＥＥ  Ｐ１９０４．１  ｄｒａｆｔ２．２(２０１１年１２月)
【発明の概要】
【発明が解決しようとする課題】
【００１１】
[時刻配信するＰＯＮシステムでの省電力化]
前述した基地局などを収容するＰＯＮシステムにおいても、省電力化できた方が望ましい。特に、夜間などユーザートラフィックがない、あるいは、少ない時間帯には、基地局などを収容するＰＯＮシステムでのトラフィックは主に時刻同期用パケットのみになるため、このような状況下でＯＮＵをスリープさせ省電力化を図ることが望ましい。
しかしながら、ＩＥＥＥ１５８８等の時刻同期プロトコルを用いて時刻配信するＰＯＮシステム向けのスリープ技術に関してはほとんど開示されていない。以下では、従来技術を用いてＩＥＥＥ１５８８時刻同期プロトコルを用いて時刻配信するＰＯＮシステムにおいて発生する課題に関して説明する。
従来どおりスリープ制御を実施すると、ＯＮＵをスリープしている期間に時刻同期のためのＳｙｎｃパケットをＯＬＴが受信すると、Ｓｙｎｃパケットがスリープ期間の分だけ遅延が増大する。また、ＯＮＵがスリープしている期間に、Ｓｙｎｃパケットに応答して送信されるＤｅｌａｙ＿Ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｑパケットがスリープ期間の分だけ遅延が増大する。
【００１２】
例えば、マスタークロック装置が送出するＳｙｎｃ送信間隔Ｔ＿ｓｙｎｃが１２５ｍｓ、ＯＮＵのスリープ時間Ｔ＿ｓｌｅｅｐが５０ｍｓ、スリープ状態からの復旧時間Ｔ＿ｗａｋｅｕｐが１ｍｓであるとする。ＯＮＵスリープ期間中にＳｙｎｃパケットを受信するとＯＬＴでパケットが蓄積され、ＯＬＴ-ＯＮＵ間の遅延量がスリープ時間および復旧時間の和である５１ｍｓだけ増大する。その結果、ＯＮＵが送信するＳｙｎｃパケット間隔は１２５ｍｓから１７６(=１２５+５０＋１)ｍｓに変化し４１％増大する。標準規格ＩＥＥＥ１５８８ではＳｙｎｃパケット間隔のばらつきを３０％以下(確度９０％)に規定しており、標準規格に準拠できなくなる可能性がある。なお、このように標準規格に準拠できなくなる問題が発生するのは、上記のパラメータの例に限定されない。Ｔ＿ｓｌｅｅｐ／Ｔ＿ｓｙｎｃの比が約３０％以上である場合には同様の問題が発生する。また、ＯＬＴ-ＯＮＵ間遅延の大幅な増大(数ｍｓから５０ｍｓ程度へ増大)により遅延計測誤差が増大し時刻同期精度低下を生じる可能性がある。また、Ｓｙｎｃパケット間隔のばらつきが標準規格に準拠した範囲であっても、遅延量のばらつきが大きくなったり、Ｓｙｎｃパケットが途中で破棄されたりして、時刻同期の精度が低下しうる。
【００１３】
従って、時刻同期パケットを大きく遅延させないようにＯＮＵをスリープ制御する方法が望ましいが、従来の方法で時刻同期の送受信動作とＯＮＵのスリープ制御動作が連携しておらず、ＯＮＵをスリープさせると時刻同期パケットが大きく遅延しうる。
本発明は、このような課題を鑑みてなされたものであり、時刻同期パケットなどの定期的に送信されるパケットの遅延増大を抑え、かつ、ＯＮＵなどの端末装置をスリープさせるネットワークシステム及び制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の第１の解決手段によると、
受信されるスリープ指示に基づいて自身の電力状態を制御する複数の端末装置と、
前記複数の端末装置に接続され、予め定められた第１パケットを定期的に前記端末装置に送信し、又は、他の装置から定期的に送信された第２パケットを受信して該第２パケットを前記端末装置に転送する制御装置と、
を備え、
前記制御装置は、
前記端末装置に送信する第１パケットの送信予定時刻又は前記端末装置へ転送する第２パケットを受信する受信予定時刻と、現在時刻との差である残り時間に基づいて前記端末装置のスリープ可否を判定し、該端末装置をスリープさせる場合にスリープさせるためのスリープ指示を前記端末装置に送信する制御部を有するネットワークシステムが提供される。
【００１５】
本発明の第２の解決手段によると、
受信されるスリープ指示に基づいて自身の電力状態を制御する複数の端末装置に接続される制御装置であって、
予め定められた第１パケットを定期的に前記端末装置に送信し、又は、他の装置から定期的に送信された第２パケットを受信して該第２パケットを前記端末装置に転送するパケット処理部と、
前記端末装置に送信する第１パケットの送信予定時刻又は前記端末装置へ転送する第２パケットを受信する受信予定時刻と、現在時刻との差である残り時間に基づいて前記端末装置のスリープ可否を判定し、該端末装置をスリープさせる場合にスリープさせるためのスリープ指示を前記端末装置に送信する制御部と
を備えた制御装置が提供される。
【発明の効果】
【００１６】
本発明の代表的な実施形態によれば、時刻同期パケットなどの定期的に送信されるパケットの遅延増大を抑え、かつ、ＯＮＵなどの端末装置をスリープさせるネットワークシステム及び制御装置を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】第１の実施形態におけるシステムの構成を示すブロック図である。
【図２】第１の実施形態におけるＯＮＵの構成を示すブロック図である。
【図３】第１の実施形態におけるＯＬＴの構成を示すブロック図である。
【図４】第１の実施形態におけるスリープ制御を実施した場合の時刻同期制御のシーケンス図である。
【図５】第１の実施形態におけるＯＮＵのスリープ制御処理のフローチャートである。
【図６】第１の実施形態におけるＯＬＴのスリープ制御処理のフローチャートである。
【図７】第１の実施形態におけるＯＮＵ状態管理テーブルの例を示す図である。
【図８】スリープ許可フレームフォーマットを説明する図である。
【図９】ＩＥＥＥ１５８８時刻同期制御パケットフォーマットを説明する図である。
【図１０】第２の実施形態におけるスリープ制御を実施した場合の時刻同期制御のシーケンス図である。
【図１１】第２の実施形態におけるＯＬＴのスリープ制御処理のフローチャートである。
【図１２】第２の実施形態におけるＯＮＵ状態管理テーブルの例を示す図である。
【図１３】第３の実施形態におけるスリープ制御を実施した場合の時刻同期制御のシーケンス図である。
【図１４】第３の実施形態におけるＯＬＴのスリープ制御処理のフローチャートである。
【図１５】ＩＥＥＥ１５８８ Ｂｏｕｎｄａｒｙ Ｃｌｏｃｋを適用した場合の時刻同期動作の例のシーケンス図である。
【図１６】ＩＥＥＥ１５８８ Ｔｒａｎｓｐａｒｅｎｔ Ｃｌｏｃｋを適用した場合の時刻同期動作の例のシーケンス図である。
【図１７】ＯＬＴ−ＯＮＵ間の時刻同期手順の例のシーケンス図である。
【図１８】スリープ制御を実施しない場合の時刻同期手順のシーケンス図である。
【図１９】スリープ制御を実施した場合の時刻同期制御のシーケンス図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。なお、各図において共通する部分には、同一の符号が付与されている。
１．関連技術
まず、各実施の形態を説明する前に、時刻同期とスリープ制御について概略的に説明する。なお、以下の説明及び図面は、本発明の各実施の形態の理解を容易にするためのものであり、及び、各実施の形態の動作並びに効果との対比のためのものであり、従来技術を構成するものではない。
【００１９】
[ＩＥＥＥ１５８８での時刻同期の動作シーケンスの例]
図１５、図１６に、ＰＯＮを介してＩＥＥＥ１５８８により時刻同期を実現する場合の動作シーケンス例を概略的に示す。ＩＥＥＥ１５８８においては、ネットワーク機器に適用するノードとしてＢｏｕｎｄａｒｙ  Ｃｌｏｃｋ、Ｅｎｄ−ｔｏ−Ｅｎｄ  Ｔｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋなどが定義されている。図１５は、ＯＬＴ及びＯＮＵを有するＰＯＮ全体をＢｏｕｎｄａｒｙ  Ｃｌｏｃｋとみなして動作させる場合の例を示し、図１６は、ＯＬＴ及びＯＮＵを有するＰＯＮ全体をＥｎｄ−ｔｏ−Ｅｎｄ  Ｔｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとみなして動作させる場合の例を示す。
図１５を参照して、Ｂｏｕｎｄａｒｙ  Ｃｌｏｃｋを適用した場合の動作を説明する。まず、マスタークロック装置とＯＬＴとの間でＩＥＥＥ１５８８プロトコルのフレームを転送して、マスタークロック装置とＯＬＴとの間での時刻同期を確立する（ｓｉｇ６０１〜ｓｉｇ６０３）。次に、ＯＬＴとＯＮＵとの間での時刻同期を確立する（ｓｉｇ６０４〜ｓｉｇ６０６）。なお、ＯＬＴ−ＯＮＵ間の時刻同期のプロトコルはどのようなプロトコルでも構わない。最後に、ＯＮＵと基地局のスレーブクロック装置との間でＩＥＥＥ１５８８プロトコルのフレームを転送して、ＯＮＵと基地局のスレーブクロック装置との間で時刻同期を確立する。以上のように各装置間で同期を確立することによって、マスタークロック装置と基地局のスレーブクロック装置との間における時刻同期を確立することが可能となる。
次に、図１６を参照して、Ｅｎｄ−ｔｏ−Ｅｎｄ  Ｔｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋを適用した場合の動作を説明する。まず、ＯＬＴとＯＮＵとの間でのローカルな時刻で同期を確立する。このローカルな時刻はマスタークロック装置の時刻と同期していなくてもよい。次に、マスタークロック装置と基地局のスレーブクロック装置との間でＩＥＥＥ１５８８のパケット（フレーム、メッセージと称する場合もある）を転送して、時刻同期を確立する（ｓｉｇ７０１〜ｓｉｇ７０９）。ＯＬＴ及びＯＮＵにおいては、ＩＥＥＥ１５８８のフレームを終端せずに透過させる。Ｓｙｎｃパケットを透過させる際には、ＯＬＴのＮＮＩ（Ｎｅｔｗｏｒｋ−Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）にＳｙｎｃパケットが入力されてからＯＮＵのＵＮＩ（Ｕｓｅｒ−Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）からＳｙｎｃパケットが出力されるまでの滞留時間Ｄ１を計測して、Ｓｙｎｃパケット（ｓｉｇ３０３）のフィールドに滞留時間Ｄ１の情報を格納し、ＯＮＵからＳｙｎｃパケットを送信する。また、Ｄｅｌａｙ＿Ｒｅｑパケットを透過させる際には、ＯＮＵのＵＮＩにＤｅｌａｙ＿Ｒｅｑパケットが入力されてからＯＬＴのＮＮＩからＤｅｌａｙ＿Ｒｅｑパケットが出力されるまでの滞留時間Ｄ２を計測して、Ｄｅｌａｙ＿Ｒｅｑパケット（ｓｉｇ７０５）のフィールドに滞留時間Ｄ２の情報を格納し、ＯＬＴからＤｅｌａｙ＿Ｒｅｑパケットを送信する。
【００２０】
図１７を用いて、ＯＬＴ−ＯＮＵ間での時刻同期手順を概略的に説明する。なお、詳細は、例えば非特許文献２に記載されている。
まず、ＯＬＴ−ＯＮＵ間でのラウンドトリップタイム（ＲＴＴ）を計測する。次に、ＯＬＴは、ＩＥＥＥ１５８８等によって外部から時刻情報ＴｏＤを取得し、正確な時刻と同期させる。次に、ＯＬＴはラウンドトリップタイムを用いて、下り方向のＰＯＮ区間遅延時間を算出し、予め設定しておいたタイムスタンプＸと、時刻ＸでのＯＮＵ時刻Ｔｘを算出し、タイムスタンプＸとＯＮＵ時刻ＴｘをＯＮＵに通知する。
最後に、ＯＮＵは、受信したタイムスタンプＸとＯＮＵ時刻Ｔxの情報より、正確な時刻に同期させ、ＯＮＵに接続している端末装置に時刻情報を通知する。
【００２１】
[ＰＯＮを介した時刻同期手順シーケンス]
ここで、図１８を用いてＯＮＵのスリープ制御を実施しない場合の、時刻同期シーケンス例について概略的に説明する。なお、ここでは、マスタークロック装置とスレーブクロック装置がＰＯＮシステムを介して時刻同期し、ＯＬＴおよびＯＮＵからなるＰＯＮシステム全体がＴｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作するとして説明を進める。また、時刻同期手順はＳｙｎｃパケット、Ｄｅｌａｙ＿Ｒｅｑパケット、Ｄｅｌａｙ＿Ｒｅｓｐパケットのやり取りからなる。ここでは、このやり取りを１周期とし、第１周期から第３周期までの動作を記述する。
まず、マスタークロック装置がＳｙｎｃパケットをＯＬＴに送信する（ｓｉｇ１０１）。ＯＬＴは受信したＳｙｎｃパケットをＯＮＵに転送する（ｓｉｇ１０２）。ＯＮＵはＳｙｎｃパケットを受信するとスレーブクロック装置に転送する（ｓｉｇ１０３）。なお、ＯＬＴではＮＮＩ送受信部がＳｙｎｃパケットを入力した時刻を取得し、ＯＮＵではＳｙｎｃパケットを受信すると、ＵＮＩ送受信部から送信する予定の時刻を取得し、さらに時刻差を算出する。この時刻差はＳｙｎｃパケットがＵＮＩ−ＮＮＩ間を通過するのに要した時間である。ＯＮＵは、この時間をＳｙｎｃパケットのＣｏｒｒｅｃｔｉｏｎ  Ｆｉｅｌｄに加算して、ヘッダ情報が一部変更されたＳｙｎｃパケットをスレーブクロック装置に送信する。このように動作させることで、ＯＬＴとＯＮＵ全体がＴｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作する。
【００２２】
Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待ってからＤｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ１０４）。ＯＮＵは受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴに転送する（ｓｉｇ１０５）。また、ＯＬＴは受信したＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置に転送する。なお、ＯＮＵではＵＮＩ送受信部がＤｅｌａｙ＿Ｒｅｑパケットを入力した時刻を取得し、ＯＬＴではＤｅｌａｙ＿Ｒｅｑパケットを受信すると、ＮＮＩ送受信部から送信する予定の時刻を取得し、さらに時刻差を算出する。この時刻差はＤｅｌａｙ＿ＲｅｑパケットがＵＮＩ−ＮＮＩ間を通過するのに要した時間である。ＯＬＴは、この時間をＤｅｌａｙ＿ＲｅｑパケットのＣｏｒｒｅｃｔｉｏｎ  Ｆｉｅｌｄに加算して、ヘッダ情報が一部変更されたＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置に送信する。このように動作させることで、ＯＬＴとＯＮＵ全体がＴｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作する。
マスタークロック装置がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴに返信する（ｓｉｇ１０７）。ＯＬＴは受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵに転送し（ｓｉｇ１０８）、ＯＮＵは受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ１０９）。
第２周期、第３周期の動作も第１周期と同様である。ただし、スレーブクロック装置がＳｙｎｃパケットを受信してからＤｅｌａｙ＿Ｒｅｑを返信する時間はランダム時間であるため、周期によって異なっている。
【００２３】
このように周期的に時刻同期パケットをやりとりすることによって、スレーブクロック装置は時刻を補正し、マスタークロック装置と同じ正確な時刻を維持するように動作する。類似の技術として、ＯＮＵでの時刻同期パケットの遅延をＯＬＴが補正することで、高精度な時刻補正を簡易な構成で実現しようとする技術が特許文献２に開示されている。
[従来のスリープ制御を実施した場合の時刻同期手順シーケンス]
次に、図１９を用いて、従来のスリープ制御を実施した場合の時刻同期シーケンス例を参照して、上述の課題をより具体的に説明する。なお、ここでは、ＯＬＴおよびＯＮＵからなるＰＯＮシステム全体がＴｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作するとして説明を進める。また、トラフィックは時刻同期パケットのみで、ユーザーデータはないとする。また、時刻同期手順はＳｙｎｃパケット、Ｄｅｌａｙ＿Ｒｅｑパケット、Ｄｅｌａｙ＿Ｒｅｓｐパケットのやり取りからなる。ここでは、このやり取りを１周期とし、第１周期から第３周期までの動作を記述する。
【００２４】
まず、第１周期での動作を説明する。
上述と同様に、マスタークロック装置がＳｙｎｃパケットをＯＬＴに送信する（ｓｉｇ２０１）と、ＯＬＴは受信したＳｙｎｃパケットをＯＮＵに転送し（ｓｉｇ２０２）、ＯＮＵは受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ２０３）。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待ってからＤｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ２０４）。ＯＮＵは受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴに転送し（ｓｉｇ２０５）、ＯＬＴは受信したＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置に転送する。マスタークロック装置がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴに返信する（ｓｉｇ２０７）。ＯＬＴは受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵに転送し（ｓｉｇ２０８）、ＯＮＵは受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ２０９）。
【００２５】
この後、時刻ｔ２０１でＯＬＴはトラフィックがないと判定し、ＯＮＵにスリープを許可するＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ２１１）。ＯＮＵはＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信すると一定期間（スリープ時間と呼ぶ）だけ送受信部が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵは通常状態に戻る。時刻ｔ２０２でＯＬＴは再びトラフィックがないと判定し、ＯＮＵにＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ２１２）。ＯＮＵはＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけ送受信部が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵは通常状態に戻る。時刻ｔ２０３でＯＬＴは再びトラフィックがないと判定し、ＯＮＵにＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ２１２）。ＯＮＵはＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけ送受信部が電力ＯＦＦの状態になる。
次に、第２周期での動作を説明する。
【００２６】
マスタークロック装置がＳｙｎｃパケットをＯＬＴに送信する（ｓｉｇ２１３）。このとき、ＯＮＵはまだスリープ状態にある場合を想定する。そのため、ＯＬＴは受信したＳｙｎｃパケットをＯＮＵのスリープが解除されるまでバッファに蓄積する。時刻ｔ２０４で、ＯＬＴは送信すべき下りパケットがあるため、ＯＮＵにスリープ指示は出さない。ＯＮＵがスリープから復旧してから、ＯＬＴはバッファに蓄積していたＳｙｎｃパケットをＯＮＵに送信する（ｓｉｇ２１４）。このように、ＯＮＵをスリープしている期間にＳｙｎｃパケットをＯＬＴが受信すると、Ｓｙｎｃパケットがスリープ期間の分だけ遅延が増大する。
ＯＮＵは受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ２１５）。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待ってからＤｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ２１６）。ＯＮＵは受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴに転送し（ｓｉｇ２１７）、ＯＬＴは受信したＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置に転送する（ｓｉｇ２１８）。マスタークロック装置がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴに返信する（ｓｉｇ２１９）。ＯＬＴは受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵに転送し（ｓｉｇ２２０）、ＯＮＵは受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ２２１）。
【００２７】
時刻ｔ２０５でＯＬＴは再びトラフィックがないと判定し、ＯＮＵにＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ２２２）。ＯＮＵはＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけ送受信部が電力ＯＦＦの状態になる。
次に、第３周期での動作を説明する。
マスタークロック装置がＳｙｎｃパケットをＯＬＴに送信する（ｓｉｇ２２３）。ＯＬＴはＳｙｎｃパケットを受信する。ここでスリープ判定の時刻ｔ２０６になると、ＯＬＴは送信すべき下りパケットがあるため、ＯＮＵにスリープ指示は出さない。その後、ＳｙｎｃパケットをＯＮＵに転送し（ｓｉｇ２２４）、ＯＮＵは受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ２２５）。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待つ。その後、時刻ｔ２０７でＯＬＴはトラフィックがないと判定し、ＯＮＵにＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ２２６）。ＯＮＵはＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけ送受信部が電力ＯＦＦの状態になる。その後、時刻ｔ２０８でＯＬＴは再びトラフィックがないと判定し、ＯＮＵにＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ２２７）。ＯＮＵはＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけ送受信部が電力ＯＦＦの状態になる。
【００２８】
ここで、ＯＮＵがスリープ状態にあるときにスレーブクロック装置がＤｅｌａｙ＿Ｒｅｑパケットを返信する場合を想定する（ｓｉｇ２２８）。ＯＮＵは受信したＤｅｌａｙ＿Ｒｅｑパケットをバッファに蓄積し、スリープが解除されるのを待つ。スリープが解除され、ＯＮＵが通常状態に復旧すると、Ｄｅｌａｙ＿ＲｅｑパケットをＯＬＴに送信する（ｓｉｇ２２９）。このように、ＯＮＵがスリープしている期間にＯＮＵがＤｅｌａｙ＿Ｒｅｑを受信すると、Ｄｅｌａｙ＿Ｒｅｑパケットがスリープ期間の分だけ遅延が増大する。
時刻ｔ２０９では上りトラフィックがあるので、ＯＬＴはＯＮＵにスリープ指示を出さない。その後、ＯＬＴはＤｅｌａｙ＿Ｒｅｑをマスタークロック装置に転送する（ｓｉｇ２３０）。マスタークロック装置がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴに返信する（ｓｉｇ２３１）。ＯＬＴは受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵに転送し（ｓｉｇ２３２）、ＯＮＵは受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ２３３）。
【００２９】
２．第１の実施形態
次に、本発明の第１の実施の形態について説明する。
［第１の実施形態におけるシステムの構成］
図１は、第１の実施形態におけるネットワークシステムの構成を示す図である。
第１の実施形態のネットワークシステムは、例えば、ＯＬＴ（制御装置）１、光スプリッタ３、複数のＯＮＵ（端末装置）２（２−１〜２−ｎ）、無線基地局５（５−１〜５−ｎ）、ネットワーク６及びマスタークロック装置７を備える。ＯＬＴ１は、幹線の光ファイバ４−０を介して光スプリッタ３と接続される。例えば、無線基地局５が時刻同期されるスレーブクロック装置に相当する。ＯＮＵ２（２−１〜２−ｎ）は、各々、支線の光ファイバ４（４−１〜４−ｎ）を介して光スプリッタ３と接続される。無線基地局５（５−１〜５−ｎ）は、各々、ＯＮＵ２（２−１〜２−ｎ）と接続される。マスタークロック装置７及びＯＬＴ１は、ネットワーク６を介して接続される。
【００３０】
［第１の実施形態におけるＯＮＵの構成］
図２は、本第１の実施形態におけるＯＮＵ２の構成を示すブロック図である。
ＯＮＵ２は、例えば、ＯＮＵ光送受信部２００、ＯＮＵ ＭＡＣ処理部２１０、ＵＮＩ送受信部２２０、ＯＮＵトラヒック監視部２３０、ＯＮＵスリープ制御部２４０、ＯＮＵ  ＭＰＣＰ（ｍｕｌｔｉ−ｐｏｉｎｔ  ｃｏｎｔｒｏｌ  ｐｒｏｔｏｃｏｌ）制御部２５０、ＯＮＵ時刻同期制御部２６０、及びＯＮＵ制御部２７０を有する。
ＯＮＵ光送受信部２００は、光ファイバ４より入力された下り光信号を電流信号に変換し、電流信号を電圧信号に変換し、電圧信号を増幅し、電圧信号からクロックを抽出し、抽出したクロックのタイミングに基づいて電圧信号をデジタル信号に変換する。さらに、ＯＮＵ光送受信部２００は、デジタル信号を復号化して、ＯＮＵ  ＭＡＣ処理部２１０に出力する。
また、ＯＮＵ光送受信部２００は、ＯＮＵ  ＭＡＣ処理部２１０より入力されたデジタル信号を符号化して、電圧信号にし、電圧信号を電流信号に変換し、さらに、電流信号を上り光信号に変換して光ファイバ４より出力する。
また、ＯＮＵスリープ制御部２４０からのスリープ指示を表す信号に従って、自身の電力状態を変化させる。例えば、ＯＮＵ光送受信部２００の電力をＯＮの状態とＯＦＦの状態（スリープ状態）の間で切り替える。ＯＮＵ光送受信部２００の電力がＯＮの状態では、下り光信号の受信動作や上り光信号の送信動作が可能であるが、ＯＮＵ光送受信部２００の電力がＯＦＦの状態では、下り光信号の受信動作や上り光信号の送信動作は不可である。
ＯＮＵ  ＭＡＣ処理部２１０は、ＯＮＵ光送受信部２００より入力されたデジタル信号からフレームを抽出し、抽出されたフレームのヘッダを解析し、各フレームがユーザーデータフレーム、ＭＰＣＰ制御フレーム、スリープ制御フレーム、時刻同期制御フレームのいずれであるかを識別する。ＯＮＵ  ＭＡＣ処理部２１０は、ユーザーデータフレームをＵＮＩ送受信部２２０に、ＭＰＣＰ制御フレームをＯＮＵ  ＭＰＣＰ制御部２５０に、スリープ制御フレームをＯＮＵスリープ制御部２４０に、時刻同期制御フレームをＯＮＵ時刻同期制御部２６０に、それぞれ出力する。また、ＯＮＵ  ＭＡＣ処理部２１０は、ＵＮＩ送受信部２２０より入力されたユーザーデータフレーム、ＯＮＵ  ＭＰＣＰ制御部２５０より入力されたＭＰＣＰ制御フレーム、ＯＮＵスリープ制御部２４０より入力されたスリープ制御フレーム、ＯＮＵ時刻同期制御部２６０より入力された時刻同期制御フレームを多重して、ＯＮＵ光送受信部２００に出力する。
【００３１】
ＵＮＩ送受信部２２０は、ＯＮＵ  ＭＡＣ処理部２１０より入力されたユーザーデータフレームや時刻同期制御フレームを、ＵＮＩインタフェースに適する信号に変換して、無線基地局５に出力する。また、無線基地局５より入力されたユーザーデータフレーム及び上り時刻同期制御フレームをＯＮＵ  ＭＡＣ処理部２１０に出力する。
ＯＮＵトラヒック監視部２３０は、トラフィックを監視する。例えば、自ＯＮＵ２のフレームバッファ量に蓄積されているフレームバッファ量を取得する。
ＯＮＵ  ＭＰＣＰ制御部２５０は、ＯＬＴ−ＯＮＵ間で送受信されるＭＰＣＰ制御フレームを解析及び生成する。また、ＯＮＵ  ＭＰＣＰ制御部２５０は、受信したＧＡＴＥフレームを解析し、上り送信タイミングを決定する。また、ＯＮＵトラヒック監視部２３０よりＯＮＵ制御部２７０を介して、フレームバッファ量を取得し、取得したバッファ量に基づいてＲＥＰＯＲＴフレームを生成し、ＯＮＵ  ＭＡＣ処理部２１０に出力する。
ＯＮＵスリープ制御部２４０は、ＯＮＵ  ＭＡＣ処理部２１０より入力されたスリープ制御フレームを解析したり生成したりする。また、受信したスリープ制御フレームで指定された指示に基づいて、ＯＮＵ光送受信部２００の電力状態を制御する。
ＯＮＵ時刻同期制御部２６０は、ＯＬＴ−ＯＮＵ間における時刻同期を実現するための受信された制御フレームを解析し、送信する制御フレームを生成する。また、上り及び下りで送受信されるＩＥＥＥ１５８８パケットを処理する。なお、時刻同期のプロトコルとしてＩＥＥＥ１５８８以外の適宜のプロトコルを用いてもよい。
本第１の実施形態におけるＯＮＵ２の構成によれば、ＯＮＵ２はＯＬＴ１から送信されたスリープ制御フレームの指示に従って、ＯＮＵ２をスリープさせることができ、また、ＯＬＴ１とＯＮＵ２間の時刻同期（及び／又はマスタークロック装置とスレーブクロック装置の同期）を実現し、ＩＥＥＥ１５８８パケットを処理して転送することが可能である。
【００３２】
［第１の実施形態におけるＯＬＴの構成］
図３は、本第１の実施形態におけるＯＬＴ１の構成を示すブロック図である。
ＯＬＴ１は、例えば、ＯＬＴ光送受信部１００、ＯＬＴ  ＭＡＣ処理部１１０、ＮＮＩ送受信部（受信部）１２０、ＯＬＴトラヒック監視部（トラヒック監視部）１３０、ＯＬＴスリープ制御部１４０、ＯＬＴ  ＭＰＣＰ制御部１５０、ＯＬＴ時刻同期制御部（パケット処理部）１６０、ＯＬＴ制御部（制御部）１７０及びＯＮＵ状態管理テーブル１８０を有する。
【００３３】
ＯＬＴ光送受信部１００は、光ファイバ４より入力された上り光信号を電流信号に変換し、電流信号を電圧信号に変換し、電圧信号を増幅し、電圧信号からクロックを抽出し、抽出したクロックのタイミングに基づいて電圧信号をデジタル信号に変換する。さらに、ＯＬＴ光送受信部１００は、デジタル信号を復号化して、ＯＬＴ  ＭＡＣ処理部１１０に出力する。
また、ＯＬＴ光送受信部１００は、ＯＬＴ  ＭＡＣ処理部１１０より入力されたデジタル信号を符号化して、電圧信号にし、電圧信号を電流信号に変換し、さらに、電流信号を下り光信号に変換して光ファイバ４より出力する。
ＯＬＴ  ＭＡＣ処理部１１０は、ＯＬＴ光送受信部１００より入力されたデジタル信号からフレームを抽出し、抽出されたフレームのヘッダを解析し、各フレームがユーザーデータフレーム、ＭＰＣＰ制御フレーム、スリープ制御フレーム、時刻同期制御フレームのいずれであるかを識別する。ＯＬＴ  ＭＡＣ処理部１１０は、ユーザーデータフレームをＮＮＩ送受信部１２０に、ＭＰＣＰ制御フレームをＯＬＴ  ＭＰＣＰ制御部１５０に、スリープ制御フレームをＯＬＴスリープ制御部１４０に、時刻同期制御フレームをＯＬＴ時刻同期制御部１６０に、それぞれ出力する。また、ＯＬＴ  ＭＡＣ処理部１１０は、ＮＮＩ送受信部１２０より入力されたユーザーデータフレーム、ＯＬＴ  ＭＰＣＰ制御部１５０より入力されたＭＰＣＰ制御フレーム、ＯＬＴスリープ制御部１４０より入力されたスリープ制御フレーム、ＯＬＴ時刻同期制御部１６０より入力された時刻同期制御フレームを多重して、ＯＬＴ光送受信部１００に出力する。
【００３４】
ＮＮＩ送受信部１２０は、ＯＬＴ  ＭＡＣ処理部１１０より入力されたユーザーデータフレームや時刻同期制御フレームを、ＮＮＩインタフェースに適する信号に変換して、ネットワーク６に出力する。また、ネットワーク６より入力されたユーザーデータフレーム及び上り時刻同期制御フレームをＯＬＴ  ＭＡＣ処理部１１０に出力する。
ＯＬＴ  ＭＰＣＰ制御部１５０は、ＯＬＴ−ＯＮＵ間で送受信されるＭＰＣＰ制御フレームを解析及び生成する。また、ＯＬＴ  ＭＰＣＰ制御部１５０は、各ＯＮＵから受信したＲＥＰＯＲＴフレームを解析し、それらに基づいて各ＯＮＵへの上り送信タイミングを決定する。さらに、決定した上り送信タイミングに基づいてＧＡＴＥフレームを生成し、ＯＬＴ  ＭＡＣ処理部１１０に出力する。
ＯＬＴスリープ制御部１４０は、ＯＬＴ  ＭＡＣ処理部１１０より入力されたスリープ制御フレームを解析したり、ＯＮＵへ送信するスリープ制御フレームを生成したりする。
ＯＬＴ時刻同期制御部１６０は、ＯＬＴ−ＯＮＵ間における時刻同期を実現するための制御フレームを解析し、生成する。また、ＯＬＴ時刻同期制御部１６０は、上り及び下りで送受信されるＩＥＥＥ１５８８パケットを処理する。
【００３５】
ＯＬＴ制御部１７０は、ＯＬＴトラヒック監視部１３０、ＯＬＴスリープ制御部１４０、ＯＬＴ  ＭＰＣＰ制御部１５０、ＯＬＴ時刻同期制御部１６０、ＯＮＵ状態管理テーブル１８０の各部と連携した制御を実行する。具体的には、ＯＬＴ制御部１７０は、ＯＬＴトラヒック監視部１３０から入手した情報に基づいて、ＯＮＵ状態管理テーブル１８０を更新する。また、ＯＬＴ制御部１７０は、ＯＮＵ状態管理テーブル１８０から入手した情報に基づいて、スリープの可否を判定し、ＯＬＴスリープ制御部１４０へスリープ制御の指示を出す（スリープ判定部）。また、ＯＬＴ制御部１７０は、ＯＬＴスリープ制御部１４０から入手した情報に基づいて、ＯＮＵ状態管理テーブル１８０にスリープ時間を登録する。また、ＯＬＴ制御部１７０は、ＯＬＴスリープ制御部１４０から入手したＯＮＵのスリープ状態に基づいて、各ＯＮＵへのＭＰＣＰ制御フレームを送信するようにＯＬＴ  ＭＰＣＰ制御部１５０に指示を出す。また、ＯＬＴ制御部１７０は、ＯＬＴ時刻同期制御部１６０から入手したＳｙｎｃ受信パケットの到着時刻の統計情報を入手して、それに基づいて次のＳｙｎｃパケット受信予定時刻をＯＮＵ状態管理テーブル１８０に登録する。なお、Ｓｙｎｃ受信パケットの到着時刻の統計情報は、ＯＬＴ時刻同期制御部１６０により求められてＯＬＴ制御部１７０に出力されてもよいし、ＯＬＴ制御部１７０により求められてもよい（受信予定時刻推定部）。
【００３６】
ＯＮＵ状態管理テーブル１８０は、時刻同期パケットの受信タイミングに基づいてスリープ制御の可否を決定する際に利用するテーブルである。ＯＬＴ制御部１７０の指示に基づいてテーブルのデータを追加・変更・削除などにより書き込まれたり、現在のテーブルのデータが読み込まれたりする。ＯＮＵ状態管理テーブル１８０で保持するデータ項目など詳細については後述する。
本第１の実施形態におけるＯＬＴ１の構成によれば、ＯＬＴ１はトラヒック状態や時刻同期パケットの受信タイミング等に基づいて、ＯＮＵ２のスリープ状態を指示するスリープ制御フレームを送受信することが可能である。
【００３７】
[第１の実施形態における、ＯＮＵ状態管理テーブルの例]
ここで、第１の実施形態で使用する、ＯＬＴ１が保持しているＯＮＵ状態管理テーブル１８０についてさらに詳しく説明する。図７に、本第１の実施形態におけるＯＮＵ状態管理テーブル１８０の例を示す。ＯＮＵ状態管理テーブル１８０は、ＯＮＵ識別子、ＯＮＵスリープ時間、ＯＮＵ復旧時間、次のＳｙｎｃ受信予定時刻、トラフィック状態の各項目を含む。
ＯＮＵ識別子には、ＯＬＴ１に接続されているＯＮＵ２を識別するための値又は識別子が入る。例えば、ＯＮＵ２のＭＡＣアドレスやシリアル番号などを格納する。ＯＮＵスリープ時間には、ＯＮＵ２をスリープ許可フレームにより指定するスリープ時間の長さであるＳｌｅｅｐＤｕｒａｔｉｏｎを表す値を格納する。ＯＮＵ復旧時間には、スリープ状態にあるＯＮＵがスリープ解除指示を受けてから通常状態に復旧するまでの時間を格納する。ＯＮＵ識別子、ＯＮＵスリープ時間及びＯＮＵ復旧時間は、ＯＮＵ毎に予め定められた値が格納される。次のＳｙｎｃ受信予定時刻には、後述する方法により時刻同期パケット受信予定時刻を推定した値を格納する。なお、ここでは、Ｓｙｎｃはマルチキャストパケットで送信されるとしているため、すべてのＯＮＵに対して同一の値が入る。トラフィック状態には、上りおよび下りのトラフィック状態を表す値を格納する。例えば、上りあるいは下りで送信すべきパケットがバッファに滞留している場合には「あり」を示す情報、それ以外の場合には「なし」を示す情報が入る。
【００３８】
［第１の実施形態におけるＯＮＵのスリープ制御処理の動作フローチャート］
図５は、本第１の実施形態におけるＯＮＵのスリープ制御処理の動作を示すフローチャートである。以下、ステップの順番に従って説明する。
まずＯＮＵ２は、スリープ制御動作を開始する。その後、ＯＮＵ２は、スリープ許可フレームを受信するまで通常状態にして待つ（Ｓ００１）。スリープ許可フレームを受信するとＳ００２に移る。その後、ＯＮＵ２は、ＯＮＵのトラフィック状態を確認し、スリープすべきか否かを判定する（Ｓ００２）。具体的には、トラフィックありと判定した場合は、ＯＮＵ２は、スリープせずにＳ００１に戻る。トラフィックなしと判定した場合は、ＯＮＵ２はＳ００３に移る。
その後、ＯＮＵ２は、受信したスリープ許可フレームで指示されたＳｌｅｅｐＤｕｒａｔｉｏｎの時間だけスリープ状態にする（Ｓ００３）。ＯＮＵ２は、ＳｌｅｅｐＤｕｒａｔｉｏｎ時間経過し、通常状態に復旧するとＳ００１に戻る。
以上の処理によって、ＯＮＵ２は、ＯＬＴ１からのスリープ制御指示に基づいて、自身をスリープ状態にすることが可能である。
【００３９】
［第１の実施形態におけるＯＬＴのスリープ制御処理のフローチャート］
図６は、本第１の実施形態におけるＯＬＴ１のスリープ制御処理の動作を示すフローチャートである。以下、ステップの順番に従って説明する。
まず、ＯＬＴ１は、スリープ制御動作を開始する。その後、ＯＬＴ１は、次のスリープ判定時刻まで待つ（Ｓ１０１）。なお、第１の実施形態においては、スリープの判定はＯＮＵ毎に一定の周期で実施するが、これ以外でもよい。次のスリープ判定時刻になると、ＯＬＴ制御部１７０はＯＮＵ状態管理テーブル１８０を参照し、該当ＯＮＵ２のトラフィック有無を調べる（Ｓ１０２）。トラフィックありの場合はＯＮＵにスリープ指示を出さずにＳ１０１に戻り、他のＯＮＵ２のスリープ判定時刻まで待っても良いし、同じスリープ判定時刻に各ＯＮＵについて処理する場合はＳ１０２に戻り、他のＯＮＵについて処理を繰り返す。以下のＳ１０１又はＳ１０２に戻る処理についても同様である。トラフィックなしの場合にはＳ１０３に移る。
その後、ＯＬＴ制御部１７０は現在の時刻と、ＯＮＵ状態管理テーブル１８０を参照して入手した時刻同期パケット受信予定時刻との差である残り時間Ｔ＿ｒｅｍａｉｎを算出する。ここで、残り時間Ｔ＿ｒｅｍａｉｎは、次の時刻同期パケットが受信される推定時刻までの時間を示す。Ｔ＿ｒｅｍａｉｎが予め定められた閾値Ｔ＿ｔｈ１より大きい場合にはＳ１０４に移る。残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１以下の場合には、ＯＮＵ２にスリープ指示を出さずにＳ１０１又はＳ１０２に戻り、他のＯＮＵ２のスリープ判定に移る。これにより、ＯＮＵ２のスリープ中に次の時刻同期パケットが受信される可能性を低くできる。
【００４０】
その後、ＯＬＴ制御部１７０はＯＬＴスリープ制御部１４０に対して、該当するＯＮＵにスリープ許可フレームを送信することを指示し、それを受けたＯＬＴスリープ制御部１４０は該当ＯＮＵ２にスリープ許可フレームを送信する（Ｓ１０４）。
以上の処理によって、ＯＬＴ１は、次のＳｙｎｃ受信の残り時間およびトラフィック状態に基づいて、ＯＮＵ２のスリープ制御を実施することができる。
[時刻同期パケット受信予定時刻の推定方法]
ここで、時刻同期パケットであるＳｙｎｃパケット（第２パケット）の受信予定時刻の推定方法について説明する。Ｓｙｎｃパケットの送信元であるマスタークロック装置では、基本的に一定の周期でＳｙｎｃパケットを送出する。そのため、ＯＬＴが受信するＳｙｎｃパケットの間隔もほぼ一定となる。但し、マスタークロック装置とＯＬＴの間にレイヤー２スイッチなどのネットワーク装置を介している場合には、それらの装置で発生する遅延により、Ｓｙｎｃパケットの遅延がパケットごとに変化する可能性がある。そのため、ＯＬＴの受信するＳｙｎｃパケットは平均をとると一定間隔であるが、ある程度間隔にバラつきが生じる。そこで、Ｓｙｎｃパケット受信予定時刻を推定するには、複数のＳｙｎｃパケット受信時刻データを集め、そのデータを統計処理してＳｙｎｃパケット受信間隔の統計情報を求める。例えば、平均値と標準偏差を算出し、その平均値と標準偏差、前回のＳｙｎｃパケット受信予定時刻に基づいて次回のＳｙｎｃパケット受信予定時刻を推定する。
【００４１】
具体的には、以下のように算出する。前回のＳｙｎｃパケット受信時刻をＴ＿ｐｒｅｖ、Ｓｙｎｃパケット受信間隔の平均値をμ、Ｓｙｎｃパケット受信間隔の標準偏差をσ、次回のＳｙｎｃパケット受信予定時刻をＴ＿ｎｅｘｔとする。このときＴ＿ｎｅｘｔはＴ＿ｐｒｅｖ＋μを中心に標準偏差σ程度で分布すると推定される。そのため、実際のＳｙｎｃパケット受信予定時刻はほぼＴ＿ｎｅｘｔ＝Ｔ＿ｐｒｅｖ＋μ−σ以降と考えることができる。この受信予定時刻を用いて上記残り時間を算出することで、通常のスリープ制御ではスリープを可と判定されＯＮＵがスリープ状態になるケースにおいて、Ｓｙｎｃパケットが平均よりσ程度早く到着してもＳｙｎｃパケットの遅延を抑えることができる。なお、Ｔ＿ｎｅｘｔ＝Ｔ＿ｐｒｅｖ＋μ−α×σとしてもよい。係数αを大きくすることにより、スリープ効率は低下するもののより確実に遅延発生を抑えてもよい。なお、標準偏差を考慮せず、平均値と、前回のＳｙｎｃパケット受信予定時刻に基づいて次回のＳｙｎｃパケット受信予定時刻を推定することも可能である（上記の式でα＝０に相当する）。
【００４２】
[閾値Ｔ＿ｔｈ１の決め方]
ここで、スリープ可否を判定する際に用いる閾値Ｔ＿ｔｈ１の決め方の一例について説明する。閾値Ｔ＿ｔｈ１は例えば、スリープ指示を出してからＯＮＵが通常状態に復旧するまでの時間となるように定めることができる。具体的には、Ｔ＿ｔｈ１＝Ｔ＿ｓｌｅｅｐ＋Ｔ＿ｗａｋｅｕｐとすればよい。なお、閾値Ｔ＿ｔｈ１の定め方はこれに限定されるものではなく、適宜の値がＯＮＵ毎に、又は、各ＯＮＵに共通に定められてもよい。
【００４３】
[第１の実施形態におけるスリープ制御を実施した場合の時刻同期手順シーケンス]
本第１の実施形態におけるスリープ制御を実施した場合の、時刻同期シーケンス例について図４を用いて説明する。なお、ここでは、ＯＬＴ１およびＯＮＵ２で構成されるＰＯＮシステム全体がＴｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作するとして説明を進める。また、トラフィックは時刻同期パケットのみで、ユーザーデータはないとする。なお、ユーザーデータがある場合は、例えばスリープ可否の判定において、送信すべきユーザデータがあることでスリープ不可と判定される。また、時刻同期手順はＳｙｎｃパケット、Ｄｅｌａｙ＿Ｒｅｑパケット、Ｄｅｌａｙ＿Ｒｅｓｐパケットのやり取り（ハンドシェイク）からなる。ここでは、このやり取りを１周期とし、第１周期から第３周期までの動作を記述する。なお、各周期の動作はその順序で実行される必要はない。また、Ｓｙｎｃパケット（時刻同期パケット）の受信予定時刻は、上述のように統計処理により予め求められている。
【００４４】
まず、第１周期での動作を説明する。
マスタークロック装置７がＳｙｎｃパケットをＯＬＴ１に送信する（ｓｉｇ３０１）と、ＯＬＴ１は受信したＳｙｎｃパケットをＯＮＵ２に転送し（ｓｉｇ３０２）、ＯＮＵ２は受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ３０３）。ここで、スレーブクロック装置は無線基地局５に相当する。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待ってからＤｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ３０４）。ＯＮＵ２は受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴ１に転送し（ｓｉｇ３０５）、ＯＬＴ１は受信したＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置７に転送する（ｓｉｇ３０６）。マスタークロック装置７がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴ１に返信する（ｓｉｇ３０７）。ＯＬＴ１は受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵ２に転送し（ｓｉｇ３０８）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ３０９）。この後、スリープ判定時刻ｔ３０１でＯＬＴ１はトラフィックがないと判定し、ＯＮＵ２にスリープを許可するＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ３１０）。ここでは、上記残り時間は閾値より大きい。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信すると一定期間（スリープ時間を呼ぶ）だけＯＮＵ光送受信部２００が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵ２は通常状態に戻る。スリープ判定時刻ｔ３０２でＯＬＴ１は再びトラフィックがないと判定し、ＯＮＵ２にＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ３１１）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ光送受信部２００が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵ２は通常状態に戻る。スリープ判定時刻ｔ３０３でＯＬＴ１は再びトラフィックがないと判定するが、次のＳｙｎｃパケット受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１よりも小さいため、ＯＮＵ２にスリープ指示を出さない。その結果、ＯＮＵ２は通常状態のままで動作する。
【００４５】
次に、第２周期での動作を説明する。
マスタークロック装置７がＳｙｎｃパケットをＯＬＴ１に送信する（ｓｉｇ３１２）。このとき、ＯＮＵ２は通常状態にあるため、通常通りＳｙｎｃパケットをＯＮＵ２に転送する（ｓｉｇ３１３）。ＯＮＵ２は受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ３１４）。スリープ判定時刻ｔ３０４でＯＬＴ１はトラフィックがなく、また、次のＳｙｎｃ受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１よりも大きいためスリープ可と判定し、ＯＮＵ２にＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ３１５）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ光送受信部２００が電力ＯＦＦの状態になる。ＯＮＵ２がスリープ状態にあるときにＤｅｌａｙ＿Ｒｅｑパケットを受信すると（ｓｉｇ３１６）、ＯＮＵ２はスリープ期間中に受信したＤｅｌａｙ＿Ｒｅｑをバッファに蓄積する。ＯＮＵ２のスリープ状態が解除され通常状態に復旧すると、ＯＮＵ２は、Ｄｅｌａｙ＿ＲｅｑをＯＬＴ１に転送する（ｓｉｇ３１７）。スリープ判定時刻ｔ３０５で上りトラフィックがあるため、ＯＬＴ１は、ＯＮＵ２にスリープ許可を出さない。その後、ＯＬＴ１はＯＮＵ２より受信したＤｅｌａｙ＿Ｒｅｑをマスタークロック装置７に転送する（ｓｉｇ３１８）。マスタークロック装置７がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴ１に返信する（ｓｉｇ３１９）。ＯＬＴ１は受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵ２に転送し（ｓｉｇ３２０）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ３２１）。
【００４６】
次に、第３周期での動作を説明する。
マスタークロック装置７がＳｙｎｃパケットをＯＬＴ１に送信する（ｓｉｇ３２２）。ＯＬＴ１はＳｙｎｃパケットを受信する。この直後、スリープ判定時刻ｔ３０６で、ＯＬＴ１は送信すべき下りパケットがあるため、ＯＮＵ２にスリープ指示は出さない。その後、ＳｙｎｃパケットをＯＮＵ２に転送し（ｓｉｇ３２３）、ＯＮＵ２は受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ３２４）。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待つ。その後、スリープ判定時刻ｔ３０７でＯＬＴ１はトラフィックがないと判定し、ＯＮＵ２にＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ３２５）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ光送受信部２００が電力ＯＦＦの状態になる。その後、スリープ判定時刻ｔ３０８でＯＬＴ１は再びトラフィックがないと判定し、ＯＮＵ２にＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ３２６）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ光送受信部２００が電力ＯＦＦの状態になる。ＯＮＵ２がスリープ状態にあるときにスレーブクロック装置がＤｅｌａｙ＿Ｒｅｑパケットを返信すると（ｓｉｇ３２７）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｑパケットをバッファに蓄積し、スリープが解除されるのを待つ。スリープが解除され、ＯＮＵ２が通常状態に復旧すると、ＯＮＵ２はＤｅｌａｙ＿ＲｅｑをＯＬＴ１に送信する（ｓｉｇ３２８）。スリープ判定時刻ｔ３０９では上りトラフィックがあるので、ＯＬＴ１はＯＮＵ２にスリープ指示を出さない。その後、ＯＬＴ１はＤｅｌａｙ＿Ｒｅｑをマスタークロック装置７に転送する（ｓｉｇ３２９）。マスタークロック装置７がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴ１に返信する（ｓｉｇ３３０）。ＯＬＴ１は受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵ２に転送し（ｓｉｇ３３１）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ３３２）。
以上のように、本第１の実施形態のスリープ制御を実施すると、Ｓｙｎｃパケット受信時にＯＮＵ２はスリープ状態になりにくいため、Ｓｙｎｃパケットの遅延を増大することなく転送できることが分かる。なお、Ｄｅｌｅｙ＿Ｒｅｑパケットは従来と同様にスリープ期間の分だけ遅延が増大しうる。
【００４７】
［第１の実施形態におけるスリープ制御フレームフォーマット］
図８は、本第１の実施形態におけるスリープ許可フレームＳｌｅｅｐ＿Ａｌｌｏｗのフォーマットである。なお、このフレームはＩＥＥＥ８０２．３  Ｃｌａｕｓｅ５７．４に記載されているＯＡＭＰＤＵのフレームフォーマットをベースに作成したものである。図８に示すように、スリープ許可フレームＳｌｅｅｐ＿Ａｌｌｏｗは、ｅＯＡＭＰＤＵ  ｈｅａｄｅｒ（ヘッダ情報）（Ｆ１０１）、Ｏｐｃｏｄｅ（フレーム種別）（Ｆ１０２）、ＳｌｅｅｐＤｕｒａｔｉｏｎ（スリープ時間）（Ｆ１０３）、Ｐａｄ（パディングデータ）（Ｆ１０４）、及びＦＣＳ（フレームチェック情報）（Ｆ１０５）の各フィールドを含む。
ｅＯＡＭＰＤＵ  ｈｅａｄｅｒ（Ｆ１０１）には、ＯＡＭＰＤＵに共通のヘッダ領域を表しており、宛先アドレスや送信元アドレス、Ｌｅｎｇｔｈ／Ｔｙｐｅなどの情報が含まれる。Ｏｐｃｏｄｅ（Ｆ１０２）には、ＯＡＭＰＤＵの制御フレームの種別を表す領域であり、ここではＳｌｅｅｐ＿Ａｌｌｏｗを表す値として０ｘＦＥが使用される。Ｓｌｅｅｐ  Ｄｕｒａｔｉｏｎ（Ｆ１０３）にはスリープの長さを表す値が入り、４Ｂｙｔｅ分割り当てる。１６ｎｓ単位で設定すると、０から約６８．７ｓまで指定することが可能である。Ｐａｄ（Ｆ１０４）には、フレームの長さ調整のためのＰａｄｄｉｎｇを表す値が入り、例えば値として０が入力される。ＦＣＳ（Ｆ１０５）には、フレームのデータ部分についてフレームの誤り検査の計算を行った結果を格納する。
このようなスリープ許可フレームをＯＬＴからＯＮＵに送信することによって、ＯＬＴはＳｌｅｅｐＤｕｒａｔｉｏｎで示した時間だけ、ＯＮＵをスリープさせることが可能である。なお、この例に限らず、適宜のフォーマットを使用しても良い。
【００４８】
［ＩＥＥＥ１５８８パケットフォーマット］
図９は、ＩＥＥＥ１５８８パケットフォーマットを示す。Ｓｙｎｃパケット、Ｄｅｌａｙ＿Ｒｅｑパケット、Ｄｅｌａｙ＿Ｒｅｓｐはこのパケットフォーマットを利用できる。なお、このフレームはＩＥＥＥ１５８８−２００８  Ｃｌａｕｓｅ１３．３に記載されているパケットフォーマットと同一である。図９に示すように、ＩＥＥＥ１５８８パケットフォーマットは、ｔｒａｎｓｐｏｒｔＳｐｅｃｉｆｉｃ（Ｆ２０１）、ｍｅｓｓａｇｅＴｙｐｅ（Ｆ２０２）、ｒｅｓｅｒｖｅｄ（Ｆ２０３）、ｖｅｒｓｉｏｎＰＴＰ（Ｆ２０４）、ｍｅｓｓａｇｅＬｅｎｇｔｈ（Ｆ２０５）、ｄｏｍａｉｎＮｕｍｂｅｒ（Ｆ２０６）、ｒｅｓｅｒｖｅｄ（Ｆ２０７）、ｆｌａｇＦｉｅｌｄ（Ｆ２０８）、ｃｏｒｒｅｃｔｉｏｎＦｉｅｌｄ（Ｆ２０９）、ｒｅｓｅｒｖｅｄ（Ｆ２１０）、ｓｏｕｒｃｅＰｏｒｔＩｄｅｎｔｉｔｙ（Ｆ２１１）、ｓｅｑｕｅｎｃｅＩｄ（Ｆ２１２）、ｃｏｎｔｒｏｌＦｉｅｌｄ（Ｆ２１３）、ｌｏｇＭｅｓｓａｇｅＩｎｔｅｒｖａｌ（Ｆ２１４）、Ｐａｙｌｏａｄ（Ｆ２１５）を含む。なお、以下では、本実施の形態の説明に必要なｍｅｓｓａｇｅＴｙｐｅ（Ｆ２０２）およびｃｏｒｒｅｃｔｉｏｎＦｉｅｌｄ（Ｆ２０９）についてのみ詳細に説明する。
ｍｅｓｓａｇｅＴｙｐｅ（Ｆ２０２）には、ＩＥＥＥ１５８８パケットのメッセージ種別を表す値が入る。例えば、Ｓｙｎｃパケットの場合には０ｘ０、Ｄｅｌａｙ＿Ｒｅｑパケットの場合には０ｘ１、Ｄｅｌａｙ＿Ｒｅｓｐパケットの場合には０ｘ９の値が入る。
ｃｏｒｒｅｃｔｉｏｎＦｉｅｌｄ（Ｆ２０９）には、時刻の補正に使う情報が格納される。例えば、ｔｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋで滞留した時間であるＲｅｓｉｄｅｎｃｅ  ｔｉｍｅや隣接ノードとのリンク遅延の非対称量などを加算した値が入る。スレーブクロック装置では、このｃｏｒｒｅｃｔｉｏｎ  Ｆｉｅｌｄの値を用いて、マスタークロック装置とのずれを補正する。
このパケットフォーマットより、本パケットを解析し、ｍｅｓｓａｇｅＴｙｐｅの値を調べることで受信したパケットがＳｙｎｃパケットであるか、Ｄｅｌａｙ＿Ｒｅｑパケットであるか、Ｄｅｌａｙ＿Ｒｅｓｐパケットであるかなどを判別できる。
なお、この例に限らず、適宜のフォーマットを使用しても良い。
【００４９】
［第１の実施形態の効果］ 
本第１の実施形態によれば、時刻同期パケットについて、ＰＯＮ区間での生じる遅延増大を抑えつつ、ＯＮＵをスリープさせることができる。ＰＯＮを経由して時刻同期を実現するシステムに本実施の形態を適用すれば、時刻同期の精度の劣化を抑えつつ、かつ、ＰＯＮシステムの省電力化を実現することができる。
【００５０】
３．第２の実施形態
前述した第１の実施形態においては、ＯＬＴはトラフィック状態と次のＳｙｎｃパケット受信予定時刻までの残り時間に基づいて、ＯＮＵのスリープ可否を判定する。しかしながら、スレーブクロック装置がＳｙｎｃパケットを受信してからＤｅｌａｙ＿Ｒｅｑを送信するまでの時間がランダムであるため、ＯＮＵがスリープ期間中にＤｅｌａｙ＿Ｒｅｑを受信する場合がある。第２の実施形態においては、ＯＬＴはトラフィック状態と次のＳｙｎｃパケット受信予定時刻までの残り時間に加え、時刻同期手順のハンドシェイク状況に基づいてスリープ可否を判定する。その結果Ｄｅｌａｙ＿Ｒｅｑパケットについても遅延の増大を防ぐ。
以下、第２の実施形態の説明においては、主に第１の実施形態との差分を中心に説明し、同一の構成及び処理には同一の符号を付し、それらの説明は省略する。
【００５１】
［第２の実施形態におけるシステムの構成］
第１の実施形態と同一であるため、説明を割愛する。
［第２の実施形態におけるＯＮＵの構成］
第１の実施形態と同一であるため、説明を割愛する。
［第２の実施形態におけるＯＬＴの構成］
基本的な構成は第１の実施形態とほぼ同じであるため、詳細な説明は割愛する。なお、第１の実施形態との差分はＯＮＵ状態管理テーブルである。具体的には、以下に説明するように、ＯＮＵ状態管理テーブルで保持する情報の一部が異なる。
【００５２】
[第２の実施形態におけるＯＮＵ状態管理テーブル]
ここで、本第２の実施形態で使用するＯＬＴ１が保持するＯＮＵ状態管理テーブルについて説明する。図１２に、本第２の実施形態におけるＯＮＵ状態管理テーブル１１８０の例を示す。第１の実施形態のＯＮＵ状態管理テーブル１８０との差分は、第２の実施形態におけるＯＮＵ状態管理テーブル１１８０には、ＯＮＵ毎に時刻同期ハンドシェイク状態がさらに格納されている点である。
時刻同期ハンドシェイク状態には、ＯＬＴ１が上りおよび下りのＩＥＥＥ１５８８パケットをスヌーピングして取得したＩＥＥＥ１５８８パケットのハンドシェイク状態を表す値が入る。例えば、Ｓｙｎｃパケット（ハンドシェイク開始のパケット）を転送したが、Ｄｅｌａｙ＿Ｒｅｑパケットを転送していない場合には「未完」を示す情報が入り、Ｄｅｌａｙ＿Ｒｅｓｐパケット（ハンドシェイク終了のパケット）の転送が完了した場合には「完」を示す情報が入る。つまり、予め定められた一連のハンドシェイク処理が完了したか否かを示す情報が格納される。このようなＯＮＵ状態管理テーブル１１８０を用いることにより、ＯＬＴ１にて時刻同期ハンドシェイク状態（ハンドシェイクの進行状態）に基づいたＯＮＵスリープ制御を実行することが可能である。
【００５３】
また、ＯＮＵ状態管理テーブル１１８０は、第１の実施の形態と同様に、ＯＮＵ識別子、ＯＮＵスリープ時間、ＯＮＵ復旧時間、次のＳｙｎｃ受信予定時刻、トラフィック状態の項目を含む。これらの各項目については第１の実施の形態と同様である。
［第２の実施形態におけるＯＬＴのスリープ制御処理のフローチャート］
図１１は、本第２の実施形態におけるＯＬＴ１のスリープ制御処理の動作を示すフローチャートである。なお、主に第１の実施形態との差分を中心に説明する。以下、ステップの順番に従って説明する。
まず、ＯＬＴ１は、スリープ制御動作を開始する。その後、ＯＬＴ１は、次のスリープ判定時刻まで待つ（Ｓ２０１）。なお、第２の実施形態においては、スリープの判定は第１の実施形態と同様に一定の周期で実施することができる。次のスリープ判定時刻になると、ＯＬＴ制御部１７０はＯＮＵ状態管理テーブル１１８０を参照し、該当ＯＮＵ２のトラフィック有無を調べる（Ｓ２０２）。トラフィックありの場合はＯＮＵ２にスリープ指示を出さずに、第１の実施の形態と同様にＳ２０１又はＳ２０２に移る。トラフィックなしの場合にはＳ２０３に移る。
【００５４】
その後、ＯＬＴ制御部１７０は現在の時刻と、ＯＮＵ状態管理テーブル１１８０を参照して入手した時刻同期パケット受信予定時刻との差より、残り時間Ｔ＿ｒｅｍａｉｎを算出する。Ｔ＿ｒｅｍａｉｎが予め定められた閾値Ｔ＿ｔｈ１より大きい場合にはＳ２０４に移る。一方、Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１以下の場合には、ＯＮＵ２にスリープ指示を出さずにＳ２０１又はＳ２０２に戻る。
その後、ＯＬＴ制御部１７０は、ＯＮＵ状態管理テーブル１１８０を参照し、該当するＯＮＵの時刻同期ハンドシェイク状態を取得し、ハンドシェイクが完了していれば、Ｓ２０５に移る。一方、ハンドシェイクが未完であれば、Ｓ２０１又はＳ２０２に戻る。
その後、ＯＬＴ制御部１７０は、ＯＬＴスリープ制御部１４０に、該当するＯＮＵにスリープ許可フレームを送信することを指示し、それを受けたＯＬＴスリープ制御部１４０はＯＮＵ２にスリープ許可フレームを送信する（Ｓ２０５）。
以上の処理によって、ＯＬＴ１は、次のＳｙｎｃ受信までの残り時間およびトラフィック状態、そして、時刻同期のハンドシェイク状態に基づいて、ＯＮＵのスリープ制御を実施することができる。
【００５５】
[第２の実施形態におけるスリープ制御を実施した場合の時刻同期手順シーケンス] 
本第２の実施形態におけるスリープ制御を実施した場合の、時刻同期シーケンス例について図１０を用いて説明する。主に第１の実施形態との差分を中心に説明する。なお、ここでは、ＯＬＴおよびＯＮＵからなるＰＯＮシステム全体がＴｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作するとして説明を進める。また、トラフィックは時刻同期パケットのみで、ユーザーデータはないとする。なお、ユーザーデータがある場合は、スリープ可否の判定において、送信すべきユーザデータがあることでスリープ不可と判定される。また、時刻同期手順はＳｙｎｃパケット、Ｄｅｌａｙ＿Ｒｅｑパケット、Ｄｅｌａｙ＿Ｒｅｓｐパケットのやり取りからなる。ここでは、このやり取りを１周期とし、第１周期から第３周期までの動作を記述する。なお、各周期の動作はその順序で実行される必要はない。また、Ｓｙｎｃパケット（時刻同期パケット）の受信予定時刻は、上述のように統計処理により予め求められている。
【００５６】
まず、第１周期での動作を説明する。
マスタークロック装置７がＳｙｎｃパケットをＯＬＴ１に送信する（ｓｉｇ４０１）と、ＯＬＴ１は受信したＳｙｎｃパケットをＯＮＵ２に転送し（ｓｉｇ４０２）、ＯＮＵ２は受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ４０３）。ここで、ＯＬＴ１は、ハンドシェイクが未完であることをＯＮＵ状態管理テーブル１１８０に記憶する。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待ってからＤｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ４０４）。ＯＮＵ２は受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴ１に転送し（ｓｉｇ４０５）、ＯＬＴ１は受信したＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置７に転送する（ｓｉｇ４０６）。マスタークロック装置７がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴ１に返信する（ｓｉｇ４０７）。ＯＬＴ１は受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵ２に転送し（ｓｉｇ４０８）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ４０９）。ここで、ＯＬＴ１は、ハンドシェイクが完了したことをＯＮＵ状態管理テーブル１１８０に記憶する。この後、スリープ判定時刻ｔ４０１でＯＬＴ１はトラフィックがないと判定し、ＯＮＵ２にスリープを許可するＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ４１０）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ２光送受信部２００が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵ２は通常状態に戻る。スリープ判定時刻ｔ４０２でＯＬＴ１は再びトラフィックがないと判定し、ＯＮＵ２にＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ４１１）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ２光送受信部２００が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵ２は通常状態に戻る。スリープ判定時刻ｔ４０３でＯＬＴ１は再びトラフィックがないと判定するが、次のＳｙｎｃパケット受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１よりも小さいため、ＯＮＵ２にスリープ指示を出さない。その結果、ＯＮＵ２は通常状態のままで動作する。
【００５７】
次に、第２周期での動作を説明する。  マスタークロック装置７がＳｙｎｃパケットをＯＬＴ１に送信する（ｓｉｇ４１２）。このとき、ＯＮＵ２は通常状態にあるため、通常通りＳｙｎｃパケットをＯＮＵ２に転送する（ｓｉｇ４１３）。ＯＮＵ２は受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ４１４）。ここで、ＯＬＴ１は、ハンドシェイクが未完であることをＯＮＵ状態管理テーブル１１８０に記憶する。スリープ判定時刻ｔ４０４でＯＬＴ１は、トラフィックがなく、次のＳｙｎｃ受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１よりも大きいが、ハンドシェイク状態が未完であるためスリープ不可と判定し、ＯＮＵ２にスリープ許可は出さない。その後、スレーブクロック装置は、Ｄｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ４１５）。ＯＮＵ２は受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴ１に転送し（ｓｉｇ４１６）、ＯＬＴ１は受信したＤｅｌａｙ＿Ｒｅｑパケットをマスタークロック装置７に転送する（ｓｉｇ４１７）。マスタークロック装置７がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴ１に返信する（ｓｉｇ４１８）。ＯＬＴ１は受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵ２に転送し（ｓｉｇ４１９）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ４２０）。ここで、ＯＬＴ１は、ハンドシェイクが完了したことをＯＮＵ状態管理テーブル１１８０に記憶する。この後、スリープ判定時刻ｔ４０５でＯＬＴ１はトラフィックがないと判定し、ＯＮＵ２にスリープを許可するＳｌｅｅｐ＿Ａｌｌｏｗフレームを送信する（ｓｉｇ４２１）。ＯＮＵ２はＳｌｅｅｐ＿Ａｌｌｏｗフレームを受信するとスリープ時間だけＯＮＵ２光送受信部２００が電力ＯＦＦの状態になる。スリープ時間が経過するとＯＮＵ２は通常状態に戻る。
【００５８】
次に、第３周期での動作を説明する。
マスタークロック装置７がＳｙｎｃパケットをＯＬＴ１に送信する（ｓｉｇ４２２）。ＯＬＴ１はＳｙｎｃパケットを受信する。ここで、ＯＬＴ１は、ハンドシェイクが未完であることをＯＮＵ状態管理テーブル１１８０に記憶する。この直後、スリープ判定時刻ｔ４０６で、ＯＬＴ１は送信すべき下りパケットがあるため、ＯＮＵ２にスリープ指示は出さない。その後、ＳｙｎｃパケットをＯＮＵ２に転送し（ｓｉｇ４２３）、ＯＮＵ２は受信したＳｙｎｃパケットをスレーブクロック装置に転送する（ｓｉｇ４２４）。Ｓｙｎｃパケットを受信したスレーブクロック装置は、ランダム時間待つ。その後、スリープ判定時刻ｔ４０７でＯＬＴ１はトラフィックがなく、次のＳｙｎｃパケット受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１より大きいが、ハンドシェイク状況が未完であるためスリープ不可と判定し、ＯＮＵ２にスリープ許可を出さない。その後、スリープ判定時刻ｔ４０８でもＯＬＴ１はトラフィックがなく、次のＳｙｎｃパケット受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１より大きいが、依然としてハンドシェイク状況が未完であるためスリープ不可と判定し、ＯＮＵ２にスリープ許可を出さない。
【００５９】
その後、スレーブクロック装置がＤｅｌａｙ＿Ｒｅｑパケットを返信する（ｓｉｇ４２５）。ＯＮＵ２は受信したＤｅｌａｙ＿ＲｅｑパケットをＯＬＴ１に転送する（ｓｉｇ４２６）。ＯＬＴ１はＤｅｌａｙ＿Ｒｅｑをマスタークロック装置７に転送する（ｓｉｇ４２７）。マスタークロック装置７がＤｅｌａｙ＿ｒｅｑパケットを受信すると、Ｄｅｌａｙ＿Ｒｅｓｐを生成してＯＬＴ１に返信する（ｓｉｇ４２８）。ＯＬＴ１は受信したＤｅｌａｙ＿ＲｅｓｐパケットをＯＮＵ２に転送し（ｓｉｇ４２９）、ＯＮＵ２は受信したＤｅｌａｙ＿Ｒｅｓｐパケットをスレーブクロック装置に転送する（ｓｉｇ４３０）。ここで、ＯＬＴ１は、ハンドシェイクが完了したことをＯＮＵ状態管理テーブル１１８０に記憶する。その後、スリープ判定時刻ｔ４０９では、ＯＬＴ１はトラフィックがないが、次のＳｙｎｃ受信予定時刻までの残り時間Ｔ＿ｒｅｍａｉｎが閾値Ｔ＿ｔｈ１より小さいため、スリープ不可と判定し、ＯＮＵ２にスリープ許可は出さない。
以上のように、本第２の実施形態のスリープ制御を実施すると、ＯＬＴ１がＳｙｎｃパケット受信するときにＯＮＵ２はスリープ状態ではないため、Ｓｙｎｃパケットの遅延を増大することなく転送できる。また、時刻同期プロトコルのハンドシェイク状況に基づいてスリープ可否を判定することにより、Ｄｅｌｅｙ＿Ｒｅｑパケットの遅延を増大することなく転送できる。
【００６０】
［第２の実施形態の効果］
本第２の実施形態によれば、時刻同期パケットについて、ＰＯＮ区間で生じる遅延を増大させることなく、ＯＮＵをスリープさせることができる。特に、第２の実施形態においては、Ｓｙｎｃパケットだけでなく、Ｄｅｌａｙ＿Ｒｅｑパケットの遅延増大を防ぐことができる。そのため、ＰＯＮを経由して時刻同期を実現するシステムに本実施の形態を適用すれば、時刻同期の精度を劣化させることなく、ＰＯＮシステムの省電力化を実現することができる。
【００６１】
４．第３の実施形態
前述した第１の実施形態及び第２の実施形態においては、ＯＮＵのスリープ時間はＯＮＵ毎に一定としていた。しかしながら、Ｓｙｎｃパケットの受信予定時刻までの残り時間の長さに基づいてスリープを実施すれば、ＯＮＵがスリープできる機会が増大し、それによってより電力を削減できる。第３の実施形態においては、Ｓｙｎｃパケットの受信予定時刻までの残り時間の長さに基づいてスリープ制御を実施する。
以下、第３の実施形態の説明においては、主に第１の実施形態との差分を中心に説明し、同一の構成及び処理には同一の符号を付し、それらの説明は省略する。
［第３の実施形態におけるシステムの構成］
第１の実施形態と同一であるため、説明を割愛する。
［第３の実施形態におけるＯＮＵの構成］
第１の実施形態と同一であるため、説明を割愛する。
［第３の実施形態におけるＯＬＴの構成］
基本的な構成は第１の実施形態と同じであるため、詳細な説明は割愛する。
【００６２】
［第３の実施形態におけるＯＬＴのスリープ制御処理のフローチャート］
図１４は、本第３の実施形態におけるＯＬＴのスリープ制御処理の動作を示すフローチャートである。なお、主に第１の実施形態との差分を中心に説明する。以下、ステップの順番に従って説明する。
まず、ＯＬＴ１は、スリープ制御動作を開始する。その後、ＯＬＴ１は、次のスリープ判定時刻まで待つ（Ｓ３０１）。なお、第３の実施形態においては、スリープの判定は第１、第２の実施形態と同様に一定の周期で実施することができる。次のスリープ判定時刻になると、ＯＬＴ制御部１７０はＯＮＵ状態管理テーブル１８０を参照し、該当ＯＮＵのトラフィック有無を調べる（Ｓ３０２）。トラフィックありの場合はＯＮＵ２にスリープ指示を出さずに、第１の実施の形態と同様にＳ３０１又はＳ３０２に移る。トラフィックなしの場合にはＳ３０３に移る。
その後、ＯＬＴ制御部１７０は現在の時刻と、ＯＮＵ状態管理テーブル１８０を参照して入手した時刻同期パケット受信予定時刻との差より残り時間Ｔ＿ｒｅｍａｉｎを算出する。残り時間Ｔ＿ｒｅｍａｉｎが予め定められた閾値Ｔ＿ｔｈ＿ｍｉｎより大きい場合にはＳ３０４に移る。残り時間が閾値Ｔ＿ｔｈ＿ｍｉｎ以下の場合には、ＯＮＵ２にスリープ指示を出さずにＳ３０１又はＳ３０２に戻る。
その後、ＯＬＴ制御部１７０は、残り時間に基づいて適切なスリープ時間を算出する（Ｓ３０４）。ここで、スリープ時間の算出方法の例を説明する。
例えば、スリープ時間はＴ＿ｓｌｅｅｐ＝ＭＩＮ（Ｔ＿ｒｅｍａｉｎ、Ｔ＿ｔｈ＿ｍａｘ）により算出する。なお、ＭＩＮ（Ａ、Ｂ）はＡとＢの小さい方の値を返す関数である。より具体的には、
Ｔ＿ｓｌｅｅｐ＝Ｔ＿ｒｅｍｅｉｎ  (Ｔ＿ｔｈ＿ｍｉｎ＜Ｔ＿ｒｅｍａｉｎ≦Ｔ＿ｔｈ＿ｍａｘの場合)
Ｔ＿ｓｌｅｅｐ＝Ｔ＿ｔｈ＿ｍａｘ  （Ｔ＿ｔｈ＿ｍａｘ＜Ｔ＿ｒｅｍｅｉｎの場合）
の値を返す。このような関数によりスリープ時間を設定することにより、Ｔ＿ｔｈ＿ｍｉｎ以上Ｔ＿ｔｈ＿ｍａｘ以下の範囲で、残り時間に合わせた最適なスリープ時間を設定することができる。各閾値については後述する。ここで、元の説明に戻る。
ＯＬＴ制御部１７０はＯＬＴスリープ制御部１４０に、該当するＯＮＵ２にスリープ許可フレームを送信することを指示し、それを受けたＯＬＴスリープ制御部１４０はＯＮＵ２にスリープ許可フレームを送信する（Ｓ３０５）。
以上の処理によって、ＯＬＴ１は、次のＳｙｎｃ受信の残り時間およびトラフィック状態に基づいて、適切なスリープ時間だけＯＮＵ２のスリープ制御を実施することができる。
【００６３】
[第３の実施形態における閾値の決め方]
ここで、Ｔ＿ｓｌｅｅｐを決める関数で用いた二つの閾値の設定例について説明する。Ｔ＿ｔｈ＿ｍｉｎは、一例として、（ＯＮＵ２が可能な最小スリープ時間）と（ＯＮＵ２がスリープ状態から復旧するのにかかる時間）の和を設定する。Ｔ＿ｔｈ＿ｍａｘは、一例として、（ＯＮＵ２が可能な最大スリープ時間）と（ＯＮＵ２がスリープ状態から復旧するのにかかる時間）の和を設定する。なお、ＯＮＵ２のスリープ時間を短くするとスリープ可能な頻度は増えるが、起動やシャットダウンする際に余分に電力を消費するため、省電力効果が見込める最小のスリープ時間を設定すればよい。また、ＯＮＵ２が可能な最大スリープ時間は例えば、システムで許容される最大の遅延時間や、スリープ用タイマーカウンタのメモリ量などに基づいて決めればよい。なお、ＯＮＵ２が可能な最大スリープ時間が、例えばＯＮＵ状態管理テーブル１８０のスリープ時間のフィールドに記憶され、ＯＬＴ制御部１７０は、ＯＮＵ状態管理テーブル１８０を参照してＯＮＵ毎のＴ＿ｔｈ＿ｍａｘも得るようにしてもよい。
【００６４】
［第３の実施形態の効果］
第３の実施形態によれば、次のＳｙｎｃパケット受信予定時刻までの残り時間に基づいて、スリープ可否およびスリープ時間を決めるため、時刻同期パケットの遅延増大を抑えつつ、より高頻度にＯＮＵをスリープさせることができ、第１の実施形態に比べ更なる省電力化が見込める。
【００６５】
５．第４の実施形態
以上の各実施の形態においては、ＯＬＴのＮＮＩやＯＮＵのＵＮＩから入出力される時刻同期パケットの遅延を抑え、かつ、ＯＮＵをスリープさせるシステム及び方法等を説明した。しかしながら、ＯＬＴ−ＯＮＵ間内部で定期的にやり取りされるパケットの遅延を抑え、かつ、ＯＮＵをスリープさせるシステム等に適用してもかまわない。例えば、ＯＬＴ−ＯＮＵ間の時刻同期を実現するために定期的に送出するパケット（第１パケット。以下、特定パケットと称する）の遅延を抑えるために、その特定パケットの送信予定時刻から残り時間を算出して、その残り時間に基づいてスリープ可否を判定してもよい。
例えば、上述の各実施の形態におけるＳｙｎｃパケットの受信が、特定パケットの送信に対応し、受信予定時刻が送信予定時刻に対応する。
【００６６】
６．変形例
［変形例１］
以上、本発明の実施形態について、Ｔｒａｎｓｐａｒｅｎｔ  Ｃｌｏｃｋとして動作する場合について記述したが、Ｂｏｕｎｄａｒｙ  Ｃｌｏｃｋとして動作する場合にも適用可能である。その場合には、ＯＬＴとＯＮＵ間でやりとりするＩＥＥＥ１５８８パケットを、ＯＬＴ−ＯＮＵ間の時刻同期などでやり取りする時刻同期関連パケットに置き換え、この時刻同期関連パケットの送出予定タイミングに基づいて、スリープ時間を制御すればよい。
［変形例２］
また、本発明の実施形態について、１０Ｇ−ＥＰＯＮで規定されているフレームフォーマット及びプロトコルに基づいて説明したが、他のフレームフォーマットやプロトコルにおいても同様に、適用することができる。
［変形例３］
また、以上の説明においては、ＯＬＴとＯＮＵから構成されるＰＯＮシステムに関して説明したが、本発明はＰＯＮシステムに限定されない。例えば、スリープ機能などの適宜の省電力機能が搭載されたＬＡＮなどの適宜のネットワークシステムに適用してもよい。
［変形例４］
また、本発明の適用例としてモバイルバックホールを採用したが、時刻同期が必要とされるシステムであれば、ファクトリーオートメーション及びスマートグリッド等のシステムに適用が可能である。
［変形例５］
また、各実施の形態について、時刻同期パケットをやりとりして時刻同期される例を説明したが、時刻同期以外にも、定期的にパケットを送信することで所定の目的を達成するシステムに適用してもよい。
【００６７】
７．適用例
［適用例１］
適用例１においては、ＯＮＵへパケット送信する予定時刻までの残時間に基づきスリープ可否を判定する。
例えば、複数の端末装置と、上記複数の端末装置に接続される制御装置と、を備えるネットワークシステムであって、
上記制御装置は、上記端末装置のスリープ可否の情報を含むスリープ制御フレームを上記端末装置に送信し、
上記端末装置は、受信した上記スリープ制御フレームに基づいて自身の電力状態を制御し、
上記制御装置は、将来端末装置に送信する予定のパケットの送信予定時刻と現在時刻の差である残り時間に基づいて上記端末装置のスリープ可否を判定し、判定結果に基づいてスリープ制御フレームを上記端末装置に送信することを特徴のひとつとする。
［適用例２］
適用例２においては、外部ネットワークからパケット受信予定までの残時間に基づきスリープ可否を判定する。
例えば、適用例１に記載のネットワークシステムにおいて、
上記制御装置は、外部のネットワークから上記端末装置へ転送すべきパケットを受信し、上記パケットを受信する予定の時刻を推定するパケット受信予定時刻推定部と、
上記制御装置は上記パケット受信予定時刻推定部と現在時刻の差である残り時間に基づいて、上記端末装置のスリープ可否を判定することを特徴のひとつとする。
【００６８】
［適用例３］
適用例３においては、トラフィック状態に基づいてスリープ可否を判定する。
例えば、適用例１に記載のネットワークシステムにおいて、
上記制御装置は、上りおよび下りのトラフィック状態をモニタし、転送すべきトラフィックがあるか否かを出力するトラフィックモニタ部を有し、
上記制御装置は、上記トラフィックモニタ部の出力に基づいて、上記端末装置のスリープ可否を判定することを特徴のひとつとする。
［適用例４］
適用例４においては、プロトコルのハンドシェイク状況に基づいてスリープ可否を判定する。
例えば、適用例１に記載のネットワークシステムにおいて、
上記制御装置は、複数のパケットを送受信することでハンドシェイクを実現するプロトコルに対応したパケットを上記端末装置との間で送受信し、
上記制御装置は、上記ハンドシェイクが完了したか否かに基づいて、上記端末装置のスリープ可否を判定することを特徴のひとつとする。
【００６９】
［適用例５］
適用例５においては、ＯＮＵへパケット送信する予定時刻までの残時間に基づきスリープ時間を決定する。
例えば、適用例１に記載のネットワークシステムにおいて、
上記制御装置は、上記端末装置をスリープ状態にさせるスリープ時間の情報を含むスリープ制御フレームを上記端末装置に送信し、
上記端末装置は、受信した上記スリープ制御フレームに基づいて、上記スリープ制御フレームで指定されたスリープ時間だけ自身をスリープ状態にし、
上記制御装置は、上記端末装置をスリープ可と判定した場合に上記残り時間に基づいて、上記端末装置のスリープ時間を決定することを特徴のひとつとする。
［適用例６］
適用例６においては、ＯＮＵへパケット送信する予定時刻までの残時間に基づきスリープ可否を判定する。
例えば、ネットワークシステムにおいて、複数の端末装置に接続される制御装置であって、
上記端末装置のスリープ可否の情報を含むスリープ制御フレームを上記端末装置に送信するスリープ制御部と、
上記制御装置が上記端末装置に送信する予定のパケットの送信予定時刻と現在時刻の差である残り時間を推定する残り時間推定部と、
上記残り時間推定部で推定した残り時間に基づいて上記端末装置のスリープ可否を判定するスリープ可否判定部を備え、
上記スリープ可否判定部の判定結果に基づいてスリープ制御フレームを生成し、上記端末装置に送信することを特徴のひとつとする。
［適用例７］
適用例７においては、外部ネットワークからパケット受信予定までの残時間に基づきスリープ可否を判定する。
例えば、適用例６に記載の制御装置において、
上記制御装置は、外部のネットワークから上記端末装置へ転送すべきパケットを受信し、上記パケットを受信する予定の時刻を推定するパケット受信予定時刻推定部を備え、
上記残り時間推定部は、上記パケット受信予定時刻推定部が出力するパケット受信予定時刻と現在時刻の差である残り時間を算出することを特徴のひとつとする。
【００７０】
［適用例８］
適用例８においては、パケット受信の過去の統計情報に基づいて、パケット受信予定時刻を推定する。
例えば、適用例７に記載の制御装置において、
上記パケット受信予定時刻推定部は、過去に受信した複数のパケットの受信時刻の統計情報に基づいて、将来パケット受信する予定の時刻を推定することを特徴のひとつとする。
［適用例９］
適用例９においては、残時間と予め設定した閾値とを比較してスリープ可否を判定する。
例えば、適用例６に記載の制御装置において、
上記スリープ可否判定部は、上記残り時間と予め設定した閾値との大小を比較し、比較結果に基づいてスリープ可否を判定することを特徴のひとつとする。
［適用例１０］
適用例１０においては、トラフィック状態に基づいてスリープ可否を判定する。
例えば、適用例６に記載の制御装置において、
上記制御装置は、ネットワークの上り方向や下り方向のトラフィック状態をモニタし、上記制御装置が転送すべきトラフィックがあるか否かを出力するトラフィックモニタ部を有し、
上記スリープ可否判定部は、上記トラフィックモニタ部の出力に基づいて、上記端末装置のスリープ可否を判定することを特徴のひとつとする。
【００７１】
［適用例１１］
適用例１１においては、プロトコルのハンドシェイク状況に基づいてスリープ可否を判定する。
例えば、適用例６に記載の制御装置において、
上記制御装置は、複数のパケットを送受信することでハンドシェイクを実現するプロトコルに対応したパケットを上記端末装置との間で送受信し、
上記プロトコルのハンドシェイク状態を推定するハンドシェイク状態推定部を備え、
上記スリープ可否判定部は、上記ハンドシェイク状態推定部の出力に基づいて、上記端末装置のスリープ可否を判定することを特徴のひとつとする。
［適用例１２］
適用例１２においては、パケットをスヌーピングしてハンドシェイク状況を把握する。
例えば、適用例１１に記載の制御装置において、
上記ハンドシェイク状態推定部は、上記端末装置間で送受信されるパケットのヘッダ情報をスヌーピングし、上記ヘッダ情報を解析した結果に基づいて、ハンドシェイク状態を推定することを特徴のひとつとする。
［適用例１３］
適用例１３においては、ＯＮＵへパケット送信する予定時刻までの残時間に基づきスリープ時間を決定する。
例えば、適用例６に記載の制御装置において、
上記制御装置は、上記端末装置をスリープ可と判定した場合に上記残り時間に基づいて、上記端末装置のスリープ時間を決定するスリープ時間決定部を備え、
上記スリープ制御部は、上記端末装置をスリープ状態にさせるスリープ時間の情報を含むスリープ制御フレームを上記端末装置に送信し、
上記制御装置は、上記スリープ時間判定部で決定したスリープ時間を含むスリープ制御フレームをスリープ制御部より出力することを特徴のひとつとする。
【符号の説明】
【００７２】
１  光回線終端装置（ＯＬＴ）
２−１〜２−ｎ  光回線端末装置（ＯＮＵ）
３  光スプリッタ
４−０〜４−ｎ  光ファイバ
５−１〜５−ｎ  無線基地局
６  ネットワーク
７  マスタークロック装置
１００  ＯＬＴ光送受信部
１１０  ＯＬＴ  ＭＡＣ処理部
１２０  ＮＮＩ送受信部
１３０  ＯＬＴトラヒック監視部
１４０  ＯＬＴスリープ制御部
１５０  ＯＬＴ  ＭＰＣＰ制御部
１６０  ＯＬＴ時刻同期制御部
１７０  ＯＬＴ制御部
１８０  ＯＮＵ状態管理テーブル
２００  ＯＮＵ光送受信部
２１０  ＯＮＵ  ＭＡＣ処理部
２２０  ＵＮＩ送受信部
２３０  ＯＮＵトラヒック監視部
２４０  ＯＮＵスリープ制御部
２５０  ＯＮＵ  ＭＰＣＰ制御部
２６０  ＯＮＵ時刻同期制御部
２７０  ＯＮＵ制御部
【図１】
0005860769.tif 000002
【図２】
0005860769.tif 000003
【図３】
0005860769.tif 000004
【図４】
0005860769.tif 000005
【図５】
0005860769.tif 000006
【図６】
0005860769.tif 000007
【図７】
0005860769.tif 000008
【図８】
0005860769.tif 000009
【図９】
0005860769.tif 000010
【図１０】
0005860769.tif 000011
【図１１】
0005860769.tif 000012
【図１２】
0005860769.tif 000013
【図１３】
0005860769.tif 000014
【図１４】
0005860769.tif 000015
【図１５】
0005860769.tif 000016
【図１６】
0005860769.tif 000017
【図１７】
0005860769.tif 000018
【図１８】
0005860769.tif 000019
【図１９】
0005860769.tif 000020