アクセスラインの高速化のニーズの高まりにより、世界的にFTTH(Fiber To The Home)の普及が進んでいる。一般に、FTTHサービスはPON(Passive Optical Network)方式で提供される。PON方式は、1つの収容局側装置(OSU:Optical Subscriber Unit)が種々の多重化方式を用いて複数の加入者側装置(ONU:Optical Network Unit)を収容する方式である。PON方式は、光通信に係るリソースを複数のONUで共有できるため経済的に優れている。このようなPON方式の一つとして、ONUの通信を時分割多重(TDM:Time Division Multiplexing)によって多重化するTDM−PONがある。
図16は、TDM−PONのシステム構成の概略を示す図である。図16は、N(Nは1以上の整数)個のONUと、1つのOSUとを備えるTDM−PONの例を示す。図16は、ONU_1〜ONU_Nから同じタイミングで送信されたデータ(図中の#1〜#Nで示される)が、時分割多重によって光ファイバ伝送路を伝搬する様子を表している。図に示されるように、TDM−PONでは、上り通信の帯域は各ONU間で共有される。ここでいう上り通信とは、ONUからOSUに向かう方向の通信のことであり、図16における矢印が示す方向の通信である。また、これとは逆に、OSUからONUに向かう方向の通信を下り通信という。各ONUによる上り通信の光信号は、光合分波手段により合成されて光ファイバ伝送路に送出される。
OSUは、動的帯域割当(DBA:Dynamic Bandwidth Allocation)を実行することにより各ONUの送信許可期間を決定し、各ONUに通知する。各ONUは、OSUから通知された送信許可期間内に信号光を送信することにより上り通信を行う。図16は、ONU_1、ONU_2、ONU_n(1≦n≦N)、ONU_Nの順に割り当てられた送信許可期間で上り通信が行われている状況を示している。このように、TDM−PONでは、各ONUが、それぞれに割り当てられた送信許可期間に基づいて間欠的に信号光を送信することにより、上り通信において各ONUの信号光が衝突することを回避することができる。
図17は、DBAの動作例を示す図である。ONU_1〜ONU_Nは、grantで通知される送信許可期間内に、dataとrequestとをOSUに送信する。OSUは、ONU_1〜ONU_Nから送信された全てのrequestに基づいてDBAを実行することにより、ONU_1〜ONU_Nに対して通知する送信許可期間を算出する。OSUは、算出された送信許可期間を通知するためのgrantをONU_1〜ONU_Nに送信する。OSUは、このようなgrantの送信を所定の間隔(以下、「DBA周期」という。)で実行する。図17では、cycleで示される期間がDBA周期を表している。図17に示されるようなrequest/grant方式のDBAには、DBA周期が、OSUと各ONUとの間の往復遅延時間(以下、RTT(Round Trip Time)という。)のうちの最大値よりも長くなる、という性質がある。図17の例では、DBA周期は、ONU_NのRTTよりも長くなる。
一方で、映像配信サービスの高度化や、大容量ファイルをアップロード/ダウンロードするアプリケーションの登場等により、PONのさらなる高速化が求められている。一般に、TDM−PONの高速化にはラインレートの拡張が必要になる。しかしながら、ラインレートの拡張は、受信特性の著しい劣化を招く可能性がある。受信特性の劣化を抑制するためには送受信機の高機能化が必要となり、経済面での課題を生じる。これらの理由から、TDM−PONにおいて10Gbits/secを超える高速化をラインレートの拡張により実現することは難しい。
そこで、10Gbits/secを超える大容量化を実現すべく、TDM−PONに対して波長分割多重(WDM:Wavelength Division Multiplexing)技術を適用することが検討されている。非特許文献1には、各ONUに搭載される光送信器及び光受信器に波長可変機能を備えた、波長可変型WDM/TDM−PONが提案されている。
図18は、波長可変型WDM/TDM−PONのシステム構成の概略を示す図である。各ONUは、光ファイバ伝送路及び光合分波手段を介して、M個(Mは1以上の整数)のOSUを備えるOLTに接続される。各ONUは、OLTによっていずれかのOSUに対応づけられ、対応するOSUに対して論理的な接続(以下、「論理接続」という。)を行うことによって通信を行う。この論理接続は、各ONUが、OLTによって個々に割り当てられる波長で光信号を送受信することによって実現される。この波長は、上り通信及び下り通信のそれぞれについて割り当てられる。
例えば、図18は、ONU_1の上り通信の波長(以下、「上り波長」という。)にλu1が割り当てられ、ONU_n及びONU_Nの上り波長にλumが割り当てられた状態を表している。ここで、OSU_1にはλu1が、OSU_mにはλumが予め設定されていると仮定する。この場合、各ONUの送信データは、WDMによって上り波長間で多重化されるとともに、同一波長間ではTDMによって多重化されて光ファイバ伝送路に送出される。そのため、図18の波長可変型WDM/TDM−PONでは、光ファイバ伝送路は、最大でOSUの台数の分(換言すれば上り波長の数の分)のデータを多重化して同時に伝送することができる。このように、波長可変型WDM/TDM−PONでは、OSUを増設することによって、光ファイバ伝送路の1波長あたりのラインレートを拡張することなくシステム帯域を拡張することができる。
また、ONUとOSUとの論理接続は、各ONUに割り当てる波長の切り替え(以下、「波長切替」という。)により各ONU単位で変更することが可能である。非特許文献2では、ONUとOSUと間の論理接続を負荷の状況に応じて変更することで通信品質の劣化を抑制する動的帯域割当方法(DWA:Dynamic Wavelength Allocation)が提案されている。例えば、OLTは、あるOSUが高負荷状態にある場合には、低負荷状態である他のOSUにトラヒックが分散されるように論理接続を変更する。このようなDWAにより各ONUの波長割当を行う波長可変型WDM/TDM−PONでは、システム帯域を有効に活用することができるため一定の通信品質を確保することが可能となる。その結果、システム帯域の拡張に係るCAPEX(Capital Expenditure)を抑えることができる。
また、非特許文献3には、CAPEX及びOPEX(Operating Expense)の更なる削減を目的とした信号強度補償方法や、バースト送受信器の改良によるPON方式の長延化(Long-Reach PON方式)が提案されている。
図19は、従来のPON方式とLong-Reach PON方式との比較を示す図である。従来のPON方式においては、光ファイバ伝送路の最大到達距離の制限のため、第1ONU_1〜第1ONU_nを収容するOLT_1と、第2ONU_1〜第2ONU_nを収容するOLT_2とがそれぞれ必要であった。これに対して、Long-Reach PON方式においては、光ファイバ伝送路の最大到達距離を延長することにより、第1ONU_1〜第1ONU_n及び第2ONU_1〜第2ONU_nの全てをOLT_1のみに収容することが可能となる。このように、Long-Reach PON方式では、従来のPON方式と比較して、ONUの収容に必要となるOLTの数が低減されるため、CAPEX及びOPEXを削減することができる。
図20は、波長可変型WDM/TDM−PONを長延化した例を示す図である。図20に示す波長可変型WDM/TDM−PONは、OSU_1及びOSU_2を備えるOLTと、ONU_1〜ONU_4と、を備える。長延化により、OLTは、自身から比較的近い距離にあるONU(ONU_1及びONU_4)の集合であるONU集合_1と、自身から比較的遠い距離にあるONU(ONU_2及びONU_3)の集合であるONU集合_2と、を同時に収容する。
図21は、図20に示した波長可変型WDM/TDM−PONにおいて、OSU_1及びOSU_2が実施するDBAの動作例を示す図である。なお、ここでは、ONU_1及びONU_2はOSU_1に論理接続し、ONU_3及びONU_4はOSU_2に論理接続していると仮定する。図21(A)はOSU_1のDBAの動作例を示し、図21(B)はOSU_2のDBAの動作例を示す。図21(A)及び図21(B)の各図において、OSUの横軸と各ONUとの横軸と間の距離は、OSUと各ONUとの間の距離(以下、「接続距離」という。)に対応している。
このような波長可変型WDM/TDM−PONに、非特許文献2に記載の波長割当方法を適用することを考えた場合、各ONUの接続距離が考慮されないため、接続距離の長いONUと、接続距離が短いONUとに対して同一波長が割り当てられてしまう場合がある。この場合、DBA周期は、接続距離の長いONUのRTTに引きずられて長くなってしまう。そのため、非特許文献2に記載の波長割当方法を波長可変型WDM/TDM−PONに適用した場合、同一波長を割り当てた各OSUに収容される全てのONUで、上り通信の遅延が増大するという課題があった。
例えば、図21においては、接続距離の短いONU_1と、接続距離の長いONU_2とが同時に同じOSU_1に収容され、接続距離の短いONU_4と、接続距離の長いONU_3とが同時に同じOSU_2に収容される。この場合、OSU_1においては、接続距離の長いONU_2のRTTに引きずられてDBA周期が長くなり、OSU_2においては、接続距離の長いONU_3のRTTに引きずられてDBA周期が長くなる。
この課題を解決するため、非特許文献3では、複数のスレッド(thread)でDBAを交互に実施するマルチスレッドDBA(multi-thread DBA)が提案されている。なお、ここでいうスレッドとは、requestとgrantとの呼応関係を意味している。
図22は、図21に示したOSU_1によるマルチスレッドDBAの動作例を示す図である。図22の動作例は、OSU_1が、2つのスレッド(thread_a、thread_b)を並行して実施する例である。まず、OSU_1は、ONU_1及びONU_2に対して、cycle#n−2のgrantを送信する。cycle#n−2は、thread_aのDBA周期である。続いて、OSU_1は、cycle#n−2で送信したthread_aのgrantに対する応答(request)をONU_1及びONU_2から受信する前に、ONU_1及びONU_2に対してcycle#n−1のgrantを送信する。
その後、OSU_1は、cycle#n−2で送信したthread_aのgrantに対する応答(request)をONU_1及びONU_2から受信する。OSU_1は、受信されたthread_aのrquestに基づいてDBAを実行し、thread_aの次のDBA周期であるcycle#nにおける送信許可期間を決定する。OSU_1は、決定した送信許可期間を通知するcycle#nのgrantをONU_1及びONU_2に対して送信する。以上の動作を繰り返すことで、マルチスレッドDBAでは、DBAが複数のスレッドで交互に実行される。このように、マルチスレッドDBAは、DBA周期を実質的に短くすることができるため、上り通信における遅延の増大を抑制することができる。
[第1実施形態]
<概略>
以下に記載する実施形態の波長割当方法は、波長可変型WDM/TDM−PONにおいて、接続距離のばらつきが小さいONUの集合に同一波長を割当てることで、接続距離の短いONUの構成を複雑化させることなく、上り通信における遅延の増大を抑制する方法である。
図1は、実施形態の波長可変型WDM/TDM−PONのシステム構成の具体例を示す図である。図1に示す波長可変型WDM/TDM−PON100は、複数のOSU1を備えるOLT2(親ノード、通信装置)を備え、複数のONU3(子ノード)を収容する。各OSU1及び各ONU3は、光合分波手段10を介して光ファイバ伝送路20に接続される。複数のONU3は、接続距離に応じて複数のONU集合のうちのいずれかに分類される。各ONU集合は、OLT2が備えるいずれかのOSU1に対応づけられ、各ONU3は、所属するONU集合に対応するOSU1によって決定された波長で上り通信又は下り通信を行う。
例えば、図1には、複数のONU集合の例としてONU集合101及び102が示されている。ONU集合102は、ONU集合101よりも接続距離の長いONU3を収容するONU集合である。図1は、OSU1−1はONU集合101に対応しており、OSU1−2はONU集合102に対応している場合の例である。この場合、ONU集合101に所属するONU3−1及びONU3−4は、OSU1−1によって割り当てられた上り通信波長λu1及び下り通信波長λd1で光信号の送受信を行う。一方、ONU集合102に所属するONU3−2及びONU3−3は、OSU1−2によって割り当てられた上り通信波長λu2及び下り通信波長λd2で光信号の送受信を行う。
図2は、実施形態の波長可変型WDM/TDM−PON100において、OSU1−1及びOSU1−2が実施するDBAの動作例を示す図である。図2(A)はOSU1−1(図中のOSU_1)の動作例を示し、図2(B)はOSU1−2(図中のOSU_2)の動作例を示す。なお、図2のONU_1〜ONU_4は、それぞれ図1のONU3−1〜ONU3−4に対応し、図2のOSU_1及びOSU_2は、それぞれ図1のOSU1−1及びOSU1−2に対応している。
ここで、図2(A)において破線で示されたONU_2の横軸は、従来の波長割当方法によって、接続距離の長いONU_2がOSU_1に割り当てられた場合を想定したDBAの動作を示している。同様に、図2(B)において破線で示されたONU_4の横軸は、従来の波長割当方法によって、接続距離の短いONU_4がOSU_2に割り当てられた場合を想定したマルチスレッドDBAの動作を示している。このように、従来の波長割当方法では、接続距離の長いONUと接続距離の短いONUとが同じOSUに収容される可能性があった。そのため、従来の波長割当方法を用いた波長可変型WDM/TDM−PONでは、OSUのDBA周期が長くなってしまい、通信遅延が増大する可能性があった。また、マルチスレッドDBAを行う波長可変型WDM/TDM−PONでは、ONUのRTTに大きな開きが生じ、grant重複を発生させてしまう可能性があった。
これに対して、実施形態の波長割当方法では、接続距離のばらつきが小さいONUの集合に対して同じ波長が割り当てられる。例えば、図2において、OSU_1は、ONU_2の代わりにONU_4を収容することになる。これにより、OSU_1に収容される各ONUのRTTの最大値が短くなるため、DBA周期を短くすることができる。同様に、図2において、OSU_2は、ONU_4の代わりにONU_2を収容することになる。これにより、OSU_2に収容される各ONUのRTTにおいて、最小値と最大値との差が小さくなるため、マルチスレッドDBAにおけるgrant重複の発生を抑制することができる。このような実施形態の波長割当方法によれば、波長可変型WDM/TDM−PONに収容されるONUの構成を複雑化させることなく、上り通信の遅延の増大を抑制することが可能になる。
なお、図2では、接続距離の長いONUを収容するOSU1_2でマルチスレッドDBAを実施する例を示したが、実施形態の波長可変型WDM/TDM−PONは、これに制限されるものではない。マルチスレッドDBAは、接続距離の短いONUを収容するOSU1−1で実施されてもよいし、OSU_1及びOSU_2の両方で実施されてもよい。また、RTTの短縮によって、いずれのOSUにおいても十分に短いDBA周期が実現される場合には、いずれのOSUにおいてもマルチスレッドDBAを実施しなくてもよい。
図3は、実施形態の波長割当方法の説明において使用する記号類を説明する図である。図3は、実施形態の波長可変型WDM/TDM−PON100を抽象化した図である。WDM/TDM−PON100は、M(Mは1以上の整数)個のOSU1と、N(Nは1以上の整数)個のONU3と、光合分波手段10と、光ファイバ伝送路20と、を備える。Rn(1≦n≦N)は、ONU3−nのRTTを示す。xnは、ONU3−nが論理接続するOSU1の識別子(以下、「接続情報」という。)を示す。例えば、x1=1は、ONU3−1がOSU1−1と論理接続することを示す接続情報である。したがって、ONU3−nに対する波長割当とは、ONU3−nの接続情報xnを決定することに対応する。すなわち、実施形態の波長割当方法は、接続距離が近しいONU3同士を同じOSU1に割り当てる接続情報xnのリスト{xn}(以下、「波長割当リスト」という。)を決定する方法に対応する。
図4は、実施形態のOLT2の機能構成の具体例を示すブロック図である。OLT2は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、OLTプログラムを実行する。OLT2は、OLTプログラムの実行によって信号中継部21、波長割当部22(波長割当手段)及びM個のOSU1を備える装置として機能する。なお、OLT2の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。OLTプログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。OLTプログラムは、電気通信回線を介して送信されてもよい。
信号中継部21は、OSU1と波長割当部22の間で信号を中継する機能を持つ。波長割当部22は、実施形態の波長割当方法でDBAを実行することによって、各ONU3に割り当てる波長を決定する。より具体的には、波長割当部22は、各ONU3の性質情報に基づいて、各ONU3に割り当てるOSU1を決定する。性質情報とは、RTTやトラヒック量、遅延量などの各ONU3の通信に関する情報である。なお、性質情報は、これらの情報に限定されず、ONU3の通信に関する情報であれば他のどのような情報であってもよい。例えば、性質情報は、過去に行われた波長切替の履歴を示す情報であってもよい。また、性質情報は、OSU1が各ONU3との通信を監視することによって取得されてもよいし、OSU1が各ONU3で取得された個別の性質情報を収集することによって取得されてもよい。波長割当部22は、DBAの結果を、信号中継部21を介して各OSU1に出力する。
OSU1は、波長割当部22によって実行されたDBAの結果に基づいて波長切替を行うことにより、各ONU3の論理接続を解除又は確立することができる。また、OSU1は、波長切替を行った後、必要に応じて、後続するDBAの設定変更を実施することができる。ここでいうDBAの設定変更とは、例えば、DBA周期の変更やthread数の変更などであり、DBAの動作を変更するための設定変更であればどのような設定変更であってもよい。
実施形態の波長割当方法は、最短伝搬時間取得手順と、波長割当手順と、を有する。最短伝搬時間取得手順は、波長可変型WDM/TDM−PON100に収容される各ONU3のRTTを取得する手順である。波長割当手順は、RTTが近しいONU3同士を同じ波長に割当てる手順である。以下、実施形態の波長割当方法における最短伝搬時間取得手順及び波長割当手順について詳細に説明する。
<詳細>
図5は、第1実施形態の波長割当方法の具体例を示すフローチャートである。第1実施形態の波長割当方法は、各OSU1が収容するONU3の数(以下、「収容数」という。)に基づいて波長割当を行う方法である。ここで第1実施形態のOLT2には、予め各OSU1−m(1≦m≦M)の収容数Kmが設定されている。図6は、第1実施形態の波長割当方法の実施例を示す図である。図6は、ONU3の数N及びOSU1の数Mが、N=6及びM=2である場合の例である。この場合、各OSU1の収容数として、収容数K1=3及びK2=3が予めOLT2に設定されていると仮定する。以下、図6の実施例を参照し、図5のフローチャートの詳細を説明する。
まず、波長割当部22は、最短伝搬時間取得手順を実施し、1以上のONU3のRTTを取得する。波長割当部22は、取得した各ONU3のRTTに基づいてRTTリスト{Rn}を生成する(ステップS101)。例えば、波長割当部22は、図6(A)のような配列で示されるRTTリストを生成する。図6(A)において、nは各ONU3の識別子に対応し、Rnはnで識別されるONU3のRTTの値を表す。すなわち、図6(A)は、OLT2に収容されるONU3が6台(すなわちN=6)である場合に取得されるRTTリスト{Rn}を示している。なお、ここでは、各要素の並びは任意であってよい。図6(A)のRTTリスト{Rn}は、各要素が識別子nの順に並べられた場合の例である。
続いて、波長割当部22は、ステップS101において生成されたRTTリストを用いて、波長割当手順を実施する。まず、波長割当部22は、各ONU3のRTTの値に応じて、RTTリストの要素の並び替えを行う(ステップS102)。具体的には、図6(B)に示されるように、波長割当部22は、RTTの値の小さい順にRTTリスト{Rn}の各要素を並び替える。RTTの値は、OLT2とONU3との間の接続距離に相関すると考えられる。そのため、ここでの各要素の並び替えは、各ONU3を接続距離が短い順、すなわちOLT2に近い順に並び替えることに相当する。
続いて、波長割当部22は、処理対象とするOSU1を示す変数iを1に初期化する(ステップS103)。波長割当部22は、RTTリスト{Rn}の各要素のうち、先頭からKi個の要素に対応するONU3の接続情報をxn=iと決定し(ステップS104)、先頭からKi個の要素をRTTリスト{Rn}から削除する(ステップS105)。波長割当部22は、変数iをインクリメントし(ステップS106)、インクリメント後の変数iの値が、ONU3の数M以下であるか否かを判定する(ステップS107)。インクリメント後の変数iの値がMより大きい場合(ステップS107−NO)、波長割当部22は、波長割当処理を終了する。一方、インクリメント後の変数iがM以下である場合(ステップS107−YES)、波長割当部22はステップS104に処理を戻し、全てのOSU1に対するONU3の波長割当が完了するまで、ステップS105〜ステップS107の処理を繰り返し実行する。
具体的には、波長割当部22は、変数i=1であるとき、図6(B)のRTTリスト{Rn}の先頭からK1(=3)個の要素に対応するONU3の接続情報をxn=1と決定する。これにより、初期状態の波長割当リストを示す図6(C)が図6(D)のように更新される。続いて、波長割当部22は、図6(B)のRTTリスト{Rn}の先頭からK1(=3)個の要素を削除して、図6(E)のRTTリスト{Rn}を生成する。そして、波長割当部22は、変数iをインクリメントしてi=2とすることにより、処理対象のOSU1をOSU1−2に変更する。
同様に、波長割当部22は、変数i=2であるとき、図6(E)のRTTリスト{Rn}の先頭からK2(=3)個の要素に対応するONU3の接続情報をxn=2と決定する。これにより、図6(D)に示される波長割当リストが図6(F)のように更新される。続いて、波長割当部22は、図6(E)のRTTリスト{Rn}の先頭からK2(=3)個の要素を削除して、図6(G)のRTTリスト{Rn}を生成する。そして、波長割当部22は、変数iをインクリメントしてi=3とし、変数iがM(=2)より大きいこと、すなわち、全てのOSU1についての処理を完了したことを判定して波長割当手順を終了する。
このように構成された第1実施形態のOLT2は、OSU1ごとに設定された収容数に基づいて各ONU3に対する波長割当を行う波長割当部22を備える。このような構成を備えることにより、第1実施形態のOLT2は、接続距離の短いONUと接続距離の長いONUとを同時に収容する波長可変型WDM/TDM−PONシステム100において、OLT2に比較的近い距離にあるONUの構成を複雑化させることなく、上り通信の遅延を抑制することができる。
さらに本実施形態の波長割当方法では、予め各OSU1の収容数Kmを適切に設定しておくことで、各OSU1間の収容数が平均化され、各OSU1間の公平性を確保することができる。
[第2実施形態]
図7は、第2実施形態の波長割当方法の具体例を示すフローチャートである。第2実施形態の波長割当方法は、各OSU1が収容するONU3のRTTの許容範囲に基づいて波長割当を行う方法である。ここで第2実施形態のOLT2には、予め各OSU1−mの許容範囲の最小値Rm_min(下限)及び最大値Rm_max(上限)が設定されている。図8は、第2実施形態の波長割当方法の実施例を示す図である。図8は、ONU3の数N及びOSU1の数Mが、N=6及びM=2である場合の例である。この場合、OSU1−1の許容範囲として最小値R1_min=0及び最大値R1_max=100が、OSU1−2の許容範囲として最小値R2_min=0及び最大値R2_max=200が予めOLT2に設定されていると仮定する。以下、図8の実施例を参照し、図7のフローチャートの詳細を説明する。
まず、波長割当部22は、最短伝搬時間取得手順を実施し、1以上のONU3のRTTを取得する。波長割当部22は、取得した各ONU3のRTTに基づいてRTTリスト{Rn}を生成する(ステップS201)。RTTリスト{Rn}は、第1実施形態の波長割当方法と同様の方法で生成されてよい。例えば、波長割当部22は、図8(A)のような配列で示されるRTTリストを生成する。
続いて、波長割当部22は、ステップS201において生成されたRTTリストを用いて、波長割当手順を実施する。まず、波長割当部22は、処理対象とするOSU1を示す変数iを1に初期化する(ステップS202)。波長割当部22は、RTTリスト{Rn}の各要素のうち、RTTの値が許容範囲内である要素に対応するONU3の接続情報をxn=iと決定し(ステップS203)、これらの要素をRTTリスト{Rn}から削除する(ステップS204)。波長割当部22は、変数iをインクリメントし(ステップS205)、インクリメント後の変数iの値が、ONU3の数M以下であるか否かを判定する(ステップS205)。インクリメント後の変数iの値がMより大きい場合(ステップS205−NO)、波長割当部22は、波長割当処理を終了する。一方、インクリメント後の変数iがM以下である場合(ステップS205−YES)、波長割当部22はステップS203に処理を戻し、全てのOSU1に対するONU3の波長割当が完了するまで、ステップS203〜ステップS205の処理を繰り返し実行する。
具体的には、波長割当部22は、変数i=1であるとき、図8(A)のRTTリスト{Rn}の各要素のうち、R1_min≦Rn≦R1_max(すなわち、0≦Rn≦100)を満たす要素に対応するONU3−n(n=1、3、5)の接続情報をxn=1と決定する。これにより、初期状態の波長割当リストを示す図8(B)が図8(C)のように更新される。続いて、波長割当部22は、図8(A)のRTTリスト{Rn}からn=1、3、5の要素を削除して、図8(D)のRTTリスト{Rn}を生成する。そして、波長割当部22は、変数iをインクリメントしてi=2とすることにより、処理対象のOSU1をOSU1−2に変更する。
同様に、波長割当部22は、変数i=2であるとき、図8(D)のRTTリスト{Rn}の要素のうち、R2_min≦Rn≦R2_max(すなわち、0≦Rn≦200)を満たす要素に対応するONU3−n(n=2、4、6)の接続情報をxn=2と決定する。これにより、図8(C)に示される波長割当リストが図8(E)のように更新される。続いて、波長割当部22は、図8(D)のRTTリスト{Rn}からn=2、4、6の要素を削除して、図8(F)のRTTリスト{Rn}を生成する。そして、波長割当部22は、変数iをインクリメントしてi=3とし、変数iがM(=2)より大きいこと、すなわち、全てのOSU1についての処理を完了したことを判定して波長割当手順を終了する。
なお、OLT2には、Rm_min及びRm_maxのいずれか一方のみが予め設定されてもよい。例えば、Rm_maxのみが設定されている場合は、ステップS203において接続情報を決定する対象となるONU3の条件をRn≦Rm_maxとしてもよい。また、Rm_minのみが設定されている場合は、同条件をRm_min≦Rnとしてもよい。また、Rm_min及びRm_maxは、必ずしも全てのOSU1について設定されている必要はない。例えば、ある変数iによって示されるOSU1についてRm_min及びRm_maxが設定されていない場合は、そのOSU1についての波長割当処理を行わずに変数iをインクリメントし、次のOSU1についての波長割当手順を実施してもよい。
このように構成された第2実施形態のOLT2は、OSU1ごとに設定されたRTTの許容範囲に基づいて各ONU3に対する波長割当を行う波長割当部22を備える。このような構成を備えることにより、第2実施形態のOLT2は、第1実施形態のOLT2と同様の効果を奏することができる。
また、第1実施形態のOLT2は、各ONU3のRTTの相対的な大小関係に基づいて波長割当を行うため、一部のONU3に追加又は削除が発生した場合において、既存のONU3に対する波長割当に大幅な変更が発生しうるという課題があった。これに対して、第2実施形態のOLT2は、各ONU3のRTTの絶対値に基づいて波長割当を行うため、一部のONU3に追加又は削除が発生した場合であっても、既存のONU3の波長割当に変更が生じないという利点を有する。
[第3実施形態]
第3実施形態の波長割当方法は、ONU3のRTTに基づく評価関数を最適化(例えば、最小化又は最大化)する波長割当リストを求めることによって波長割当を行う方法である。第3実施形態の波長割当方法は、上記評価関数を最適化する波長割当リスト{xn}を求めることによって波長割当を行う波長割当手順を実施する点で第1実施形態又は第2実施形態の波長割当方法と異なる。なお、第3実施形態の波長割当方法における最短伝搬時間取得手順は、第1実施形態又は第2実施形態の波長割当方法における最短伝搬時間取得手順と同様である。
具体的には、波長割当部22は、ONU3のRTTリスト{Rn}と、各OSU1について決定される波長割当リスト{xn}とに基づいて表される評価関数f({Rn},{xn})の値が最適値(最小値又は最大値)をとる波長割当リスト{xn}を求める。ここで、評価関数f({Rn},{xn})は、RTTリスト{Rn}及び波長割当リスト{xn}を用いて表される関数であって、各ONU3とOLT2との間の接続距離のばらつきの指標値を表す関数であればどのような関数であってもよい。例えば、評価関数fは、次の式(1)によって表される。
式(1)において、σm 2は、OSU1−m(1≦m≦M)によって収容される全てのONU3−n(1≦n≦N)に関するRTT(Rn)の分散値を表す。すなわち、式(1)によって示される評価関数fは、OLT2が備える全てのOSU1の分散値σm 2の総和を示す関数である。なお、式(1)のI(評価式)は指示関数であり、括弧内の評価式が真の場合に1を示し、評価式が偽の場合に0を示す。波長割当部22は、式(1)の値を最小化する{xn}を求めることで、各OSU1に収容されるONU3間の接続距離のばらつきが、OLT2の全体で最小化されるように波長割当を行うことができる。
また、例えば、評価関数fは、次の式(2)によって表されてもよい。
式(2)において、fmは、OSU1−mに収容される全てのONU3−nのRTT(Rn)に関するfairness indexを表す。すなわち、式(2)によって示される評価関数fは、OLT2が備える全てのOSU1についてのfairness indexfmの総和を示す関数である。波長割当部22は、式(2)の値を最小化する{xn}を求めることで、各OSU1に収容されるONU3間の接続距離のばらつきが、OLT2の全体で最小化されるように波長割当を行うことができる。
このように構成された第3実施形態のOLT2は、ONU3のRTTに基づく評価関数を最適化(例えば、最小化又は最大化)する波長割当リストを求めることによって波長割当を行う波長割当部22を備える。このような構成を備えることにより、第3実施形態のOLT2は、第1実施形態のOLT2と同様の効果を奏することができる。
また、第1実施形態及び第2実施形態のOLT2には、収容数やRTTの許容範囲等のパラメータが適切に設定されない場合において、接続距離のばらつきが大きいONU3に対して同一波長が割り当てられるという課題があった。これに対して、第3実施形態のOLT2は、上記のパラメータを予め設定される必要がないため、より適切に波長割当を行うことができるという利点を有する。
[第4実施形態]
第4実施形態の波長割当方法は、ONU3の性質情報に基づく第1の波長割当方法の評価関数(以下、「第1評価関数」という。)と、ONU3のRTTに基づく評価関数(以下、「第2評価関数」という。)と、の線形和で表される評価関数を最適化(例えば、最小化又は最大化)する波長割当リストを求めることによって波長割当を行う方法である。ここでいう、第1の波長割当方法とは、第1の波長割当結果に対する評価関数(第1評価関数)を有し、第1の波長割当結果に基づいて得られる第2の波長割当結果であって、第1評価関数の値を最適化する波長割当結果を最終的な波長割当結果として採用する波長割当方法である。第4実施形態の波長割当方法は、このような第1の波長割当方法における第1評価関数と、第2評価関数との2つの評価関数に基づいて波長割当を行う波長割当手順を実施する点で第1〜第3実施形態の波長割当方法と異なる。なお、第4実施形態の波長割当方法における最短伝搬時間取得手順は、第1〜第3実施形態の波長割当方法における最短伝搬時間取得手順と同様である。
具体的には、波長割当部22は、第1評価関数g({xn})と、ONU3のRTTに基づく第2評価関数f({Rn},{xn})と、の線形和を最適化する波長割当リスト{xn}を求める。ここでは、第1評価関数g({xn})として、例えば、各OSU1−mにおける総トラヒック量Tmのfairness indexを用いる。この場合、第1評価関数g({xn})は、例えば以下の式(3)のように表される。波長割当部22は、式(3)の値を最小化する{xn}を求めることで、各OSU1のトラヒック量に不公平が生じないように波長割当を行うことができる。
また、例えば、第1評価関数gとして、第3実施形態で説明した式(2)が用いられてもよい。波長割当部22は、式(2)の値を最小化する{xn}を求めることで、各OSU1に収容されるONU3間の接続距離のばらつきが、OLT2の全体で最小化されるように波長割当を行うことができる。
したがって、本実施形態の波長割当方法の評価関数は、例えば、次の式(4)のように表すことができる。
よって、波長割当部22は、式(4)の値を最小化する{xn}を求めることで、各OSU1のトラヒック量に生じる不公平を抑制しつつ、各OSU1に収容されるONU3間の接続距離のばらつきが抑制されるように波長割当を行うことができる。ここで、式(4)におけるα(>0)は、波長割当結果に対する第1評価関数g及び第2評価関数fの寄与の度合いを調整するパラメータである。そのため、αを大きく設定するほど、接続距離のばらつきの抑制が優先された波長割当結果が得られ、αを小さく設定するほど、トラヒック量の不公平の抑制が優先された波長割当結果が得られる。
なお、式(4)の第一評価関数は、性質情報として各ONU3のトラヒック量Tnを用いているが、第一評価関数に用いられる性質情報には、トラヒック量Tnのほか、RTTや遅延量、波長切替履歴などの他の性質情報が用いられてもよい。
このように構成された第4実施形態のOLT2は、第1評価関数及び第2評価関数の2つの評価関数に基づいて波長割当を行う波長割当部22を備える。このような構成を備えることにより、第4実施形態のOLT2は、第1実施形態のOLT2と同様の効果を奏することができる。
また、第4実施形態のOLT2は、接続距離に基づく評価基準だけでなく、他の評価基準をも考慮した波長割当を行うことができる。これにより、第4実施形態のOLT2は、より適切かつ柔軟な波長割当が可能となる。なお、第1評価関数g({xn})は、波長割当リスト{xn}に基づく評価関数であればどのような関数であってもよい。また、第2評価関数f({Rn},{xn})は、RTTリスト{Rn}と波長割当リスト{xn}とに基づく評価関数であればどのような関数であってもよい。
[第5実施形態]
図9は、第5実施形態の波長割当方法の具体例を示すフローチャートである。第5実施形態の波長割当方法は、第1の波長割当方法によって得られた波長割当結果(以下、「第1の波長割当結果」という。)に対して、ONU3の性質情報に基づく評価関数を用いた修正を行って最終的な波長割当結果を得る方法である。ここでの第1の波長割当方法には、第1〜第4実施形態の波長割当方法が用いられてもよいし、1以上のONU3に対して波長割当を行う方法であれば他のどのような波長割当方法が用いられてもよい。例えば、第1の波長割当方法は、第4の実施形態に記載した第1の波長割当方法であってもよいし、ONU3に対して無作為に波長を割当てる方法であってもよい。
図10は、第5実施形態の波長割当方法の実施例を示す図である。図10は、ONU3の数N及びOSU1の数Mが、それぞれN=6及びM=2である場合の例である。また、ここでは、評価関数を、各OSU1の総トラヒック量Tmの分散値を示す関数とした場合の実施例について説明する。この場合、例えば、評価関数fは次の式(5)によって表される。
式(5)の評価関数は、性質情報として各ONU3のトラヒック量Tnを用いているが、評価関数に用いられる性質情報には、トラヒック量Tnのほか、RTTや遅延量、波長切替履歴などの他の性質情報が用いられてもよい。以下、図10の実施例を参照し、図9のフローチャートの詳細を説明する。
まず、波長割当部22は、第1の波長割当方法を実施する(ステップS301)。これにより、第1の波長割当結果が得られる。続いて、波長割当部22は、第1の波長割当結果として得られた波長割当リスト{xn}と、トラヒック量リスト{Tn}とを用いて評価関数f({Tn},{xn})の値を求める(ステップS302)。続いて、波長割当部22は、波長割当リスト{xn}のうちの1つ以上のxnの値を変更したリスト{xn’}を生成し、生成したリスト{xn’}を用いて評価関数f({Tn},{xn’})の値を求める(ステップS303)。
そして、波長割当部22は、評価関数f({Tn},{xn})の値と、評価関数f({Tn},{xn’})の値とを比較することにより、{xn}及び{xn’}のいずれの波長割当リストが優れているかを判定する(ステップS304)。例えば、評価関数fが式(5)によって表される場合、評価関数f(Tnの分散値の合計)の値をより小さくする波長割当リストほど、優れた波長割当リストであると考えられる。そのため、波長割当部22は、評価関数f({Tn},{xn’})の値が評価関数f({Tn},{xn})の値よりも小さい場合には{xn’}の方が優れた波長割当リストであると判定し、評価関数f({Tn},{xn’})の値が評価関数f({Tn},{xn})の値よりも大きい場合には{xn}の方が優れた波長割当リストであると判定する。
例えば、図10(A)に示されるトラフィック量リスト{Tn}と、図10(B)に示される波長割当リスト{xn}とが取得された場合、波長割当部22は、xn=1に対応するTn(n=1、2、3)の分散値と、xn=2に対応するTn(n=4、5、6)の分散値との和を算出する。その結果、f({Tn},{xn})=1600となる。続いて、波長割当部22は、{xn}の一部の要素の値(例えば、n=1、5)を変更し、図10(C)に示される波長割当リスト{xn’}を生成する。波長割当部22は、xn’=1に対応するTn(n=2、3、5)の分散値と、xn’=2に対応するTn(n=1、4、6)の分散値との和を算出する。その結果、f({Tn},{xn’})=0となる。この場合、波長割当部22は、{xn’}が{xn}よりも優れた波長割当リストであると判定する。
{xn’}の方が優れた波長割当リストである場合、すなわち評価関数f({Tn},{xn’})の値が評価関数f({Tn},{xn})の値よりも小さい場合(ステップS304−YES)、波長割当部22は、波長割当リスト{xn’}を最終的な波長割当結果として採用する(ステップS305)。一方、{xn}の方が優れた波長割当リストである場合、すなわち評価関数f({Tn},{xn’})の値が評価関数f({Tn},{xn})の値よりも大きい場合(ステップS304−NO)、波長割当部22は、波長割当リスト{xn}を最終的な波長割当結果として採用する(ステップS306)。
なお、評価関数f({Tn},{xn})は、波長割当リスト{xn}とトラヒック量リスト{Tn}とに基づく評価関数であれば他のどのような関数であってもよい。また、評価関数fは、式(5)のように、波長割当リストが優れていることを値の小ささによって示す関数であってもよいし、これとは逆に、波長割当リストが優れていることを値の大きさによって示す関数であってもよい。評価関数fが、波長割当リストが優れていることを値の大きさによって示す関数である場合、ステップS304の条件判定式は、f({Tn},{xn’})>f({Tn},{xn})となる。
このように構成された第5実施形態のOLT2は、第1の波長割当方法によって取得された第1の波長割当結果に対して、ONU3の性質情報に基づく評価関数を用いた修正を行って最終的な波長割当結果を得る波長割当部22を備える。このような構成を備えることにより、第5実施形態のOLT2は、第1実施形態のOLT2と同様の効果を奏することができる。さらに、第5実施形態のOLT2は、第1〜第4実施形態のOLT2に対して、第1の波長割当方法に任意の波長割当方法を用いることができるという利点を有する。
[第6実施形態]
図11は、第6実施形態の波長割当方法の具体例を示すフローチャートである。第6実施形態の波長割当方法は、第5実施形態の波長割当方法と同様に、第1の波長割当方法によって得られた第1の波長割当結果に対して、ONU3の性質情報に基づく評価関数を用いた修正を行って最終的な波長割当結果を得る方法である。第6実施形態の波長割当方法は、ONU3のトラヒック量に代えて、ONU3のRTTを波長割当結果の修正に用いる点で第5実施形態の波長割当方法と異なる。ここでの第1の波長割当方法には、第1〜第5実施形態の波長割当方法が用いられてもよいし、1以上のONU3に対して波長割当を行う方法であれば他のどのような波長割当方法が用いられてもよい。例えば、第1の波長割当方法は、第4の実施形態に記載した第1の波長割当方法であってもよいし、ONU3に対して無作為に波長を割り当てる方法であってもよい。
図12は、第6実施形態の波長割当方法の実施例を示す図である。図12は、ONU3の数N及びOSU1の数Mが、それぞれN=6及びM=2である場合の例である。また、ここでは、評価関数を、各OSU1のRTTの分散値の総和を示す関数とした場合の実施例について説明する。なお、評価関数fには、式(2)に示したfairness indexの総和を示す関数が用いられてもよい。以下、図12の実施例を参照し、図11のフローチャートの詳細を説明する。
まず、波長割当部22は、第1の波長割当方法を実施する(ステップS401)。これにより、第1の波長割当結果が得られる。続いて、波長割当部22は、第1の波長割当結果として得られた波長割当リスト{xn}と、RTTリスト{Rn}とを用いて評価関数f({Rn},{xn})の値を求める(ステップS402)。続いて、波長割当部22は、波長割当リスト{xn}のうちの1つ以上のxnの値を変更したリスト{xn’}を生成し、生成したリスト{xn’}を用いて評価関数f({Rn},{xn’})の値を求める(ステップS403)。
そして、波長割当部22は、評価関数f({Rn},{xn})の値と、評価関数f({Rn},{xn’})の値とを比較することにより、{xn}及び{xn’}のいずれの波長割当リストが優れているかを判定する(ステップS404)。例えば、評価関数fが式(6)によって表される場合、評価関数f(Rnの分散値の合計)の値をより小さくする波長割当リストほど、優れた波長割当リストであると考えられる。そのため、波長割当部22は、評価関数f({Rn},{xn’})の値が評価関数f({Rn},{xn})の値よりも小さい場合には{xn’}の方が優れた波長割当リストであると判定し、評価関数f({Rn},{xn’})の値が評価関数f({Rn},{xn})の値よりも大きい場合には{xn}の方が優れた波長割当リストであると判定する。
例えば、図12(A)に示されるRTTリスト{Rn}と、図12(B)に示される波長割当リスト{xn}とが取得された場合、波長割当部22は、xn=1に対応するRn(n=1、2、3)の分散値と、xn=2に対応するRn(n=4、5、6)の分散値との和を算出する。その結果、f({Rn},{xn})=2500となる。続いて、波長割当部22は、{xn}の一部の要素の値(例えば、n=2、5)を変更し、図12(C)に示される波長割当リスト{xn’}を生成する。波長割当部22は、xn’=1に対応するRn(n=1、3、5)の分散値と、xn’=2に対応するRn(n=2、4、6)の分散値との和を算出する。その結果、f({Rn},{xn’})=11025となる。この場合、波長割当部22は、{xn’}が{xn}よりも優れた波長割当リストであると判定する。
{xn’}の方が優れた波長割当リストである場合、すなわち評価関数f({Rn},{xn’})の値が評価関数f({Rn},{xn})の値よりも小さい場合(ステップS404−YES)、波長割当部22は、波長割当リスト{xn’}を最終的な波長割当結果として採用する(ステップS405)。一方、{xn}の方が優れた波長割当リストである場合、すなわち評価関数f({Rn},{xn’})の値が評価関数f({Rn},{xn})の値よりも大きい場合(ステップS404−NO)、波長割当部22は、波長割当リスト{xn}を最終的な波長割当結果として採用する(ステップS406)。
なお、評価関数f({Rn},{xn})は、波長割当リスト{xn}とRTTリスト{Rn}とに基づく評価関数であれば他のどのような関数であってもよい。また、評価関数fは、式(6)のように、波長割当リストが優れていることを値の小ささによって示す関数であってもよいし、これとは逆に、波長割当リストが優れていることを値の大きさによって示す関数であってもよい。評価関数fが、波長割当リストが優れていることを値の大きさによって示す関数である場合、ステップS404の条件判定式は、f({Rn},{xn’})>f({Rn},{xn})となる。
このように構成された第6実施形態のOLT2は、第1の波長割当方法によって取得された第1の波長割当結果に対して、ONU3の性質情報に基づく評価関数を用いた修正を行って最終的な波長割当結果を得る波長割当部22を備える。このような構成を備えることにより、第6実施形態のOLT2は、第5実施形態のOLT2と同様の効果を奏することができる。
[第7実施形態]
図13は、第7実施形態の波長割当方法の具体例を示すフローチャートである。第7実施形態の波長割当方法は、第1の波長割当方法によって得られた第1の波長割当結果を初期値とし、ONU3の性質情報を利用して、RTTが近しいONU同士が同一クラスターに属するようクラスタリングすることによって最終的な波長割当結果を得る方法である。クラスタリングのアルゴリズムには、どのようなアルゴリズムが用いられてもよい。例えば、参考文献(C. Bishop, “Pattern Recognition and Machine Learning,” Springer, 2011.)に記載のk−means法が用いられてもよい。また、クラスタリングに用いる性質情報は、RTTやトラヒック量のほか、遅延量、波長切替履歴などの他の性質情報が用いられてもよい。また、ここでの第1の波長割当方法には、第1〜第6実施形態の波長割当方法が用いられてもよいし、1以上のONU3に対して波長割当を行う方法であれば他のどのような波長割当方法が用いられてもよい。例えば、第1の波長割当方法は、第4の実施形態に記載した第1の波長割当方法であってもよいし、ONU3に対して無作為に波長を割り当てる方法であってもよい。
図14は、第7実施形態の波長割当方法の実施例を示す図である。図14は、ONU3の数N及びOSU1の数Mが、それぞれN=6及びM=2である場合の例である。また、ここでは、クラスタリングのアルゴリズムにk−means法を用いている。以下、図14の実施例を参照し、図13のフローチャートの詳細を説明する。
まず、波長割当部22は、第1の波長割当方法を実施する(ステップS501)。これにより、第1の波長割当結果が得られる。続いて、波長割当部22は、第1の波長割当結果として得られた波長割当リスト{xn}とRTTリスト{Rn}とを用いて、各波長に割り当てられたONU3のRTTの平均(以下、「平均RTT」という。)Raverage,mを計算する(ステップS502)。
続いて、波長割当部22は、各ONU3が、それぞれのRTTに最も近い平均RTTを持つ波長に割り当てられるように波長割当リスト{xn}を更新する(ステップS503)。なお、ここで、波長割当部22は、波長割当リスト{xn}を直接的に更新するのではなく、現在の波長割当リスト{xn}を維持したまま、更新後の波長割当リスト{xn’}を生成する。
続いて、波長割当部22は、更新前の波長割当リスト{xn}と更新後の波長割当リスト{xn’}とが等しいか否かを判定する(ステップS504)。更新前の波長割当リスト{xn}と更新後の波長割当リスト{xn’}とが等しくない場合(ステップS504−NO)、波長割当部22は、現在の波長割当リスト{xn}を波長割当リスト{xn’}で置き換えることによって波長割当リストの更新を確定させる(ステップS505)。波長割当部22は、波長割当リストの更新を確定させるとステップS502に処理を戻し、更新後の波長割当リストに対してステップS502〜S504の処理を繰り返し実行する。
一方、ステップS504において、更新前の波長割当リスト{xn}と更新後の波長割当リスト{xn’}とが等しい場合(ステップS504−YES)、波長割当部22は、現在の波長割当リスト{xn}を最終的な波長割当結果として採用する(ステップS506)。
具体的には、性質情報として図14(A)のRTTリスト{Rn}が得られ、第1の波長割当結果として図14(B)の波長割当リスト{xn}が得られた場合、m=1及びm=2の波長に対応する平均RTTは、それぞれRaverage,1=93.3、Raverage,2=140となる。このとき、n=2で識別されるONU3のRTTは120であり、Raverage,1よりもRaverage,2に近いが、第1の波長割当結果ではm=1の波長に割り当てられている。このような場合、波長割当部22は、n=2に対応する接続情報xnが、RTT(Rn)に最も近い平均RTTを持つ波長(m=2)に対応するように波長割当リスト{xn}を更新する。
同様に、n=5で識別されるONU3のRTTは100であり、Raverage,2よりもRaverage,1に近いが、第1の波長割当結果ではm=2の波長に割り当てられている。この場合、波長割当部22は、{x2}=5とする。このような操作が行われることによって、波長割当リスト{xn}は図14(C)のように更新される。さらに、図14(C)の波長割当リスト{xn}に対して同様の処理を繰り返し実行することにより、図14(D)に示される波長割当リスト{xn}が最終的な波長割当結果として得られる。
[第8実施形態]
第8実施形態の波長割当方法は、第1〜第7実施形態のうちの少なくとも一つの実施形態の波長割当方法を第1の波長割当方法として得られる第1の波長割当結果に対して、第2の波長割当方法の評価関数(以下、「第2評価関数」という。)を用いた修正を行って最終的な波長割当結果を得る方法である。ここでいう、第2の波長割当方法とは、第1の波長割当結果に対する評価関数(第2評価関数)を有し、第1の波長割当結果に基づいて得られる第2の波長割当結果であって、第2評価関数の値を最適化する波長割当結果を最終的な波長割当結果として採用する波長割当方法である。
[第9実施形態]
図15は、第9実施形態のPONシステムの構成の具体例を示す図である。第9実施形態のPONシステムはカスケードPON200である。カスケードPON200は、複数のPONがカスケード接続されることにより構成される多段構造のPONシステムである。図15は、親となるWDM/TDM−PON210(以下、「親PON」という。)に対して、子となる通常のPON220(以下、「子PON」という。)が接続された例である。カスケードPON200において、子PONのONUから送出された信号は、その子PONのOLT及び親PONのONUを介して親PONのOLTに到達する。
このように構成されるカスケードPONでは、必要に応じた任意の数のPONをカスケード接続することにより、光通信網を柔軟に拡張することができる。そのため、カスケードPONは、大規模な集合住宅やテナントビル、商業施設等に対する高速なブロードバンドサービスの提供を効率的に実現することができる。さらに、カスケードPONは、大規模なM2M(Machine to Machine)端末の収容サービスを、より心数の少ない光アクセス線路で提供することができる。
図15において、親PON210は、OSU1−1及びOSU1−2を含むOLT2と、ONU3−1〜3−4と、を備えている。ここで、ONU3−1、3−2及び3−4はOLT2から比較的近い距離にあり、ONU3−3はOLT2から比較的遠い距離にあると仮定する。子PON220は親PON210のONU3−2と接続するOLT4と、OLT4に収容されるONU3−5及び3−6と、を備える。
この場合、カスケードPON200におけるDBAの方式には、親PON210と子PON220とがそれぞれ独立してDBAを実施する第1の方式と、親PON210と子PON220とが連携してDBAを実施する第2の方式とがある。本実施形態では、カスケードPON200におけるDBAの実施の方式として第1の方式を想定し、さらに、子PON220のONU5と親PON210のOLT2とが直接的にrequest/grantをやり取りする方式を想定する。
このような想定のカスケードPON200は、OLT2が、比較的近い距離にあるONU3と、比較的遠い距離にあるONU3−3、3−5及び3−6とに対して波長割当を行う構成であると仮想することができる。そのため、カスケードPON200において従来方法での波長割当を行った場合、各ONU3とOLT2との間の距離のばらつきに起因してDBA周期が長くなってしまう可能性がある。一方で、第1〜第8実施形態で説明した波長割当方法は、各ONU3の性質情報に基づいて波長割当を行う方法である。そのため、第1〜第8実施形態の波長割当方法は、ONU3とOLT2とが直接的にrequest/grantをやり取りする構成、すなわち、OLT2が各ONU3についての性質情報を取得可能な構成のカスケードPON200に対しても適用可能である。そして、カスケードPON200に対して第1〜第8実施形態の波長割当方法が適用されることにより、OLT2とONU3との間に接続距離のばらつきが生じるカスケードPON200においても、OLT2に比較的近い距離にあるONUの構成を複雑化させることなく、上り通信の遅延を抑制することができる。
<変形例>
上述した実施形態におけるOLT2をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。