(58)【調査した分野】(Int.Cl.,DB名)
前記バッファ情報は、前記第二の時刻と前記第三の時刻との時間差であるΔdbaを割当可能な最大帯域とし、前記バッファ部に残存するデータの前記バッファ部における占有割合に応じて予め定められた、付与可能な帯域の前記最大帯域に対する割合を示す情報であることを特徴とする
請求項1に記載の通信装置。
前記OLT部が前記子ONUに対するディスカバリ処理を行うのに要する時間をΔdba_dis、前記親OLTから前記ONU部へ信号を送信する際の遅延時間をRTT、前記OLT部が前記子ONUへゲート信号を送信可能な時間から前記ONU部が前記親OLTへ帯域要求信号を送信する時間までの猶予時間をαとした場合に、前記調整時間が、
Δdba_dis−(2×RTT+α)
で示されることを特徴とする
請求項1または請求項2に記載の通信装置。
前記OLT部が前記ゲート信号を前記子ONUに送信し、前記OLT部が当該子ONUから前記要求帯域値を受信するまでの時間をΔGate、前記子ONUからの帯域要求値を集計する時間をΔRep、前記OLT部が前記総要求帯域値の集計後前記ONU部に送信までの猶予時間をβ、前記親OLTから前記ONU部へ信号を送信する際の遅延時間をRTT、前記OLT部が前記子ONUに対するディスカバリ処理を行うのに要する時間をΔdba_disとした場合に、前記調整時間が、
ΔGate+ΔRep+β−(2×RTT)+Δdba_dis
で示されることを特徴とする
請求項1または請求項2に記載の通信装置。
前記ONU部は、前記子ONUから受信するデータを一時的に保持するバッファ部を備えるとともに、前記親OLTが送信するゲート信号への応答に際し、前記総要求帯域値および前記バッファ部に残存するデータ量に対応する帯域値を申告することを特徴とする
請求項5に記載の通信装置。
上り方向に接続された上位PONと下り方向に接続された下位PONとを接続し、かつ前記上位PONのOLTである親OLTと接続されるONU部と、前記ONU部に接続されるとともに前記下位PONのONUである子ONUと接続されるOLT部と、を有し、前記ONU部は、前記子ONUから受信するデータを一時的に保持するバッファ部を備えるとともに、前記バッファ部におけるデータの残存状態を示すバッファ情報を前記OLT部に送信し、前記OLT部は、前記子ONUからの前記上り信号に含まれる要求帯域値である総要求帯域値および前記バッファ情報を用いて前記子ONUに対する帯域割り当て処理を行い、前記OLT部が前記子ONUからの帯域要求値の受信を完了するタイミングと、前記ONU部が前記親OLTに対して帯域要求を行うタイミングとが同期していることを特徴とする通信装置を用いてデータを伝送するプログラムであって、
コンピュータを、
前記親OLTから未知の接続機器に対する応答要求であるディスカバリ信号を前記ONU部が受信した第一の時刻を前記ONU部から前記OLT部に通知させる第一の制御手段と、
前記第一の時刻から予め定められた調整時間が経過した第二の時刻に、前記OLT部から前記子ONUに対して上り信号の送信を許可するゲート信号の送信を開始させるとともに、前記OLT部による、前記総要求帯域値を集計する集計処理、および前記総要求帯域値に基づいた前記子ONUに対する帯域割り当て処理を第三の時刻に完了させるとともに、前記子ONUに対する帯域を前記親OLTに要求し、前記第二の時刻から前記第三の時刻までの処理を次のディスカバリ信号を受信するまで繰り返させることによって前記親OLTとの間の同期を確立させる第二の制御手段と、
として機能させることを特徴とするデータ伝送プログラム。
【背景技術】
【0002】
近年、一般個人宅へ高速・広帯域なブロードバンドサービスを提供する目的で、伝送路に光ファイバを用いたFTTH(Fiber To The Home)と呼ばれるサービスが普及してきている。FTTHによるブロードバンドサービスの提供には、PONシステムと呼ばれる光アクセスネットワークが多く利用されている。また、PONシステムではデータ伝送におけるフレームとして、IEEE802.3で標準化されたEthernet(登録商標)フレームを用いる場合が多く、この場合のPONシステムは、特にE−PON(Ethernet(登録商標) Passive Optical Network)システムとよばれている。
【0003】
E−PONシステムは、一般に、1台の局内光回線終端装置(OLT:Optical Line Terminal)と、複数台の光加入者線終端装置(ONU:Optical Network Unit)とを光ファイバ、および受動部品である光スプリッタで接続するPoint to Multi Point(P to MP、1対多)型の光加入者ネットワークシステムである。そしてOLTとONUとの間で通信をする場合の動作は、非特許文献1、非特許文献2等で標準化されている。E−PONシステムでは、光ファイバやOLTなどを複数の加入者で共有することにより、経済的にFTTHサービスを提供することができる。
【0004】
E−PONシステムでは、OLTとONUとの間で光信号によるEthernet(登録商標)フレームの送受信が行われる。具体的には、接続されるすべてのONUは、LLID(Logical Link ID)によって論理的に識別される。そして、下り(OLTからONUの方向)信号は、光スプリッタで静的に分岐された光信号がすべてのONUに到達するため、各ONUでは自分宛のLLIDもしくは全員宛のLLID(Broadcast LLID)を受信し、他宛のLLIDは廃棄する。
【0005】
また上り信号(ONUからOLTの方向)は、フレーム送信時間を複数ユーザで分割して共有する多重化方式のTDMA(時分割多元接続:Time Division Multiple Access)方式とされている。各ONUから送出されたフレームは光スプリッタで合波されるため、各ONUが送出する光信号の送信タイミングを制御しないとフレーム同士の衝突が発生するためである。
【0006】
より具体的には、衝突を回避するために以下の方法が採用されている。すなわち、まずDiscoveryプロセスにおいて、OLTがもつ「Local Time」と呼ばれる32ビットのカウンタがONUによってロードされることにより、OLTとONUとの間のLocal Timeの同期が行われる。Discoveryプロセスとは、新規のONUをOLTへ接続するための一連の手順である。厳密にはOLTとONUとは物理的な距離の遅延差分だけ異なるカウンタをロードしている。この遅延差は一般にRTT(Round Trip Time)と呼ばれる。
【0007】
この同期したLocal Timeを用いて、OLTはGATEとよばれるフレームによってONUからの送出のタイミング(Start Time)と送出する長さ(Length)を各ONUに指示し、各ONUはその指示に従い送信データ等を含むREPORTフレームを送出することで衝突を回避している。
【0008】
ここで、PONのように局側装置であるOLTと光ファイバとで静的に分岐して複数のONUを接続するP to MP型の接続の場合、分岐のための光スプリッタで2分岐するごとに光送信電力が約半分になる損失(3dB程度の減衰)が発生する。また、伝送路である光ファイバにおいても、配線長に比例して光送信電力の減衰が発生する。
【0009】
一方OLTおよびONUが備える光送受信器は、各々の光送信電力と光受光感度とが非特許文献1、非特許文献2等の標準で規定されている。従って、光送信電力と光受信感度とで規定されるダイナミックレンジの範囲の間に各部の光レベルが収まるように、光スプリッタおよび光ファイバで構成されるネットワークの設計を行わなければならない。以上のように、従来の単一段構成のPONシステムでは、分岐数を増加させ、伝送路を延伸させ、長距離化されたネットワークを構築することには限界があった。
【0010】
そこで考え出されたのが多段PONシステムである。多段PONシステムとは、1段目のOLTに接続されるONUのうちの1台、または複数台を中継装置に置き換え、該中継装置の配下にさらに下位のONUを接続して2段目のPONを構成したシステムである。
下位のONUのうち1台または複数台を中継装置に置き換えれば、さらに3段目のPONを構成することができる。多段PONシステムでは、1段目のPONのOLTが最上位の装置となるため、以下ではこのOLTを「親OLT」と呼ぶことにする。このような多段PONシステムによれば、親OLTから見たトータルの分岐数は増加され、ユーザの設置距離に対しても柔軟に対応が可能であり長距離化も可能となる。
【0011】
上記のような多段PONシステムの従来技術として、特許文献1に開示された多段PONシステムが知られている。
図11に特許文献1に係る多段PONシステムの構成を示す。
図11に示すように、特許文献1に係る多段PONシステムは、OLT(以下、「親OLT」)および中継ノード#1〜中継ノード#mによって上位PONが構成され、中継ノード#1〜#mの各々にONU#1−1・・・#m−nが接続されて下位PONが構成されている。中継ノード#1を例にとると、中継ノード#1はONUの機能を有するONU#1、およびOLTの機能を有するOLT#1を備え、ONU#1がOLTと対向し、OLT#1がONU#1〜1−nと対向している。
【0012】
より具体的には、特許文献1に係る多段PONシステムでは、親OLTから光スプリッタによってONUに加え中継ノードを接続し、中継ノードの配下にも同様に光スプリッタで分岐したONUが接続されている。特許文献1によると、中継ノードは、中継ノードの配下の各ONU(つまり下位PONのONU#1−1等)からのREPORTフレーム内に示される帯域要求量を集約し、中継ノードから上位PONの親OLTへREPORTフレームを送信する。親OLTでは各中継ノードからのREPORTフレームの帯域要求量を演算し、各中継ノードへGATEフレームによって上り送信を指示する。中継ノードは親OLTからGATEフレームのStart TimeおよびLengthで指示された上り送信帯域に合わせるように下位PONの各ONUへGATEフレームを介して送信指示を行う。このことにより、下位ONUからの上りフレームは中継ノードで待ち合わせることなく上りデータ送信が可能となり、中継ノードにおいて上りフレームを滞留させないことで中継ノードのバッファ量を少なくすることが可能となるとされている。
【発明の概要】
【発明が解決しようとする課題】
【0015】
ところで、一般的なPONシステムにおいて、OLTが各ONUからのREPORTフレームによる帯域要求を受け、各ONUにGATEフレームによって送信指示を送る場合、OLTがシステム上取り得る最も距離が近いONUへGATEフレームを送信し、当該最も距離が近いONUがGATEフレーム受信から最短時間でREPORTフレームをOLTへ送信し、OLTが当該REPORTフレームを受信するまでの時間(以下、この時間を「ΔGate」と表記する)が少なくとも必要とされる。各ONUはこのGATEフレームを受け、REPORTフレーム送信までに蓄積した帯域量をREPORTフレームに付与して送信する。
【0016】
この際OLTは、OLTからの接続距離が異なる(つまりRTTが異なる)すべてのONUのREPORTフレームを集約するため、REPORTフレームをある一定の時間内にまとめて受信できるようにして、各ONUへのGATEフレームによる指示を行う。そのため、OLTは現在何台のONUが接続されているかではなく、配下に接続できるONUの台数分だけのREPORTフレーム集約の時間が必要となる(以下、この時間を「ΔRep」と表記する)。PONのシステム仕様では、GATEフレームの送出からREPORTフレーム集約までの時間は、OLTとONUとの間の接続距離による伝播遅延時間なども考慮し設定されている。OLTとONUとの間の最大接続距離は、一例として非特許文献1において20kmと規定されている。
【0017】
OLTは、REPORTフレームを集約した後、すべての帯域要求値から、次に与えるGATEフレームにおける帯域を算出し、許可帯域を指示するGATEフレームを再び各ONUへ送信する。この次回の各ONUの送信のための上り送信タイミング、および送信帯域(すなわち送信に割り振られた時間)を演算する機能は、DBA(Dynamic Bandwidth Allocation:動的帯域制御)演算処理機能とよばれている。以下では、DBA演算処理に要する時間を「DBA演算時間」という。DBA演算する方法としては、すべてのREPORTフレームを集約しながらファームウェア(F/W)によって演算する方法や、演算処理の一部またはすべてをハードウェア(H/W)化することでFWでの演算をより高速化する方法等がある。以上のように、GATEフレームが送出されてからDBA演算が完了するまでには、ある一定の周期(以下、この周期を「Δdba」と表記する)を要し、OLTとONUとの間の通信に際しては、このΔdbaの周期が繰り返し行われることで実現されている。ここで、Δdbaの最小は、
Δdba=ΔGate+ΔRep+DBA演算時間
である。当然ながら、このΔdbaが短いほど、ONUにおける待ち時間が短くなる。
【0018】
しかしながら、特許文献1に係る多段PONシステムでは、多段になったPONの各帯域要求条件および帯域付与条件を中継するため、多段に構成されたすべての距離、演算時間、集約時間などから、Δdbaの周期は非常に大きなものとなる。そのため、下位PONの配下のONUにおいてREPORTフレームの送信を行った直後にONUへ入力されたDATAフレームは帯域要求がなされないため、非常に長くなったΔdba周期によって次のREPORTフレームの送信タイミングまで長時間待たされることになる。
【0019】
従って、特許文献1に係る多段PONシステムでは、中継ノードのバッファは小さくなるメリットがあるが、既に設置された各ONUについては、Δdbaの増大により、これまで以上の待ち時間に対応するバッファ量が必要となる欠点がある。つまり、特許文献1に係る多段PONシステムでは、下位PONで用いられるGATEフレームとREPORTフレームとを一旦終端して上位PONに受け渡しているので、REPORTフレームが占める帯域が減らされ、REPORTフレームのような制御フレーム以外で使うことのできる帯域は増えるという意味で効率はよくなるといえる。しかしながら、特許文献1に係る多段PONシステムのΔdbaについては、中継ノードの代わりに、親OLTと下位PONに接続されたONUとを光信号をそのまま再生する光アンプを用いて接続し、親OLTが上位PON、および光アンプを介して接続された下位PONのすべてを帯域制御した場合のΔdbaよりも大きくなることが容易に想定される。
【0020】
一方、多段PONシステムにおけるクロックを考えた場合、上位PONと下位PONとで用いるクロックの周波数が異なると、上位PONで指示した時間と誤差を生じないように下位PONを制御することは困難である。特許文献1に係る多段PONシステムでは、下位PONは上位PON(親OLT)からのGATEフレームの受信を契機にDBA演算処理を行い下位PONに対して帯域付与を行う仕組みとなっている。一方、PONシステムのOLTは、GATEフレームの周期的な送出において、OLTからの接続距離が不明の新規のONUをOLTへ接続するためのDiscovery GATEを予め定められた一定間隔で送信するが、既に接続されている中継ノードや上位PONのONUは、この間上り送信を一切することができない。このことは下位PONにおいても同じであり、下位PONのONUはOLTから受けたGATEフレームに基づいて動作するため、ONUの動作においてOLTがDiscovery GATEを送信するタイミングは考慮されていない。
【0021】
また、中継ノードが下位PON配下の各ONUのREPORTフレームを集約して、親OLTへ送信する場合、最も簡単な方法として各ONUから受信するDATAフレームの帯域の和を送信することが考えられるが、親OLTで上位PON配下のONUおよび中継ノードの帯域要求値が、親OLTで与えられる帯域よりも大きい場合は、中継ノードが送った帯域要求値のすべてを帯域付与できない。その場合、中継ノードは、配下の各ONUから受信したREPORTフレームの内容によって、分配の計算をする必要があり、下位PONでの待ち時間が増大する。
【0022】
一方、上位PONおよび下位PONを含めた全体のΔdbaの増大に起因して、下位PON配下のONUからのREPORTフレームによる帯域要求後に入力されたDATAフレームの遅延を増大させないために、上位PONと下位PONとで各々独立して帯域制御を行うことも考えられる。この場合、PONシステムの動作的には多段ではなく、Δdbaは各々通常の周期で考えればよい。しかしながら、この場合、下位PONからのDATAフレームを中継ノードで受信する時間帯が、上位PONにおいて中継ノードが親OLTへ送信するREPORTフレームの送信時間に間に合わないタイミングの場合、次のΔdbaのタイミングまで帯域要求は待たされることになり、データ伝送時間における遅延が発生する。
【0023】
図12は、上記の動作を説明するタイミングチャートである。
図12においては、時刻T00で発出したGATEフレーム(
図12では文字「G」を含む□で示されている)を、時刻T10で中継ノード#1が受信し、その後にDBA演算を開始し時刻T11で該DBA演算を終了している。その後中継ノード#1は配下のONU#1にGATEフレームを送出し、これを受けてONU#1はREPORTフレーム(
図12では文字「R」を含む□で示されている)を中継ノードに送出している。中継ノードは他のONU#NからのREPORTフレームも集約し、時刻T13において、REPORTフレームを親OLTに送出している。時刻T01で該REPORTフレームを受信した親OLTは、時刻T02において他の中継ノード#NからのREPORTフレームも含めて集約し、DBA演算を実行する。時刻T03において該DBA演算を終了した親OLTは、中継ノードに向けてGATEフレームを送出し、中継ノードはこのGATEフレームを受けて時刻T15にDBA演算を開始し、該DBA演算を時刻T16で終了している。
【0024】
図12においては、時刻T00から時刻T03までが親OLTのΔdbaとなり、時刻T11から時刻T16までが中継ノードにおけるΔdbaとなる。換言すると、GATEフレームを送出してから次のGATEフレームを送出するまでの間がΔdbaである。このように、
図12に示す動作では、上位PONと下位PONとで各々独立にDBA演算を実行している。しかしながら、
図12で示す動作では、記号<1>で示すように、前回REPORTフレームで送信要求を行ったことに対し中継ノード#1が親OLTから帯域付与され、さらに中継ノード#1によりONU#1−1に帯域要求された結果として、ONU#1−1はDATAフレームを送信する。つまりONU#1−1の帯域要求は下位PONと上位PONの2段階のタイミングを経て親OLTで付与された帯域であり、ONU#1−1は、多段でない場合のおよそ2倍の時間DATAフレームの送信を待たされる場合がある。従って、上位PONと下位PONとの間における帯域制御周期を変更することなく連携させるためには、上位PONと下位PONとの動作のタイミングを一致させる必要がある。
【0025】
さらに、上位PONのタイミングと下位PONのタイミングとを連携させ、上位PONと下位PONとを各々独立に動作させた場合でも、下位PONで割り当てを行った帯域のすべてが親OLTから中継ノードに残らず割り当てられるとは限らない。このことが連続して発生すると中継ノードのONU#1の一時蓄積用のバッファが破綻し、中継ノードでフレーム廃棄が発生する可能性がある。
【0026】
この発明は、上述の問題点に鑑みてなされたものであり、多段に接続されたPONシステムにおいて、下位のPONの各ONUにおけるデータフレーム送信の待ち時間の増大を抑制するとともに、データフレームの廃棄が発生しにくい通信装置およびデータ伝送プログラムを提供することを目的としている。
【課題を解決するための手段】
【0027】
上述した目的を達成するために、本発明に係る通信装置は、上り方向に接続された上位PONと下り方向に接続された下位PONとを接続する通信装置であって、前記上位PONのOLTである親OLTと接続されるONU部と、前記ONU部に接続されるとともに前記下位PONのONUである子ONUと接続されるOLT部と、を有し、前記ONU部は、前記親OLTから未知の接続機器に対する応答要求であるディスカバリ信号を受信した第一の時刻を前記OLT部に通知し、前記OLT部は、前記第一の時刻から予め定められた調整時間が経過した第二の時刻に前記子ONUに対して上り信号の送信を許可するゲート信号の送信を開始するとともに、前記子ONUからの前記上り信号に含まれる要求帯域値を総要求帯域値として集計する集計処理、および前記総要求帯域値に基づいた前記子ONUに対する帯域割り当て処理を第三の時刻に完了
するとともに、
前記子ONUに対する帯域を前記親OLTに要求し、前記第二の時刻から前記第三の時刻までの処理を次のディスカバリ信号を受信するまで繰り返すことによって前記親OLTとの間の同期を確立
し、前記ONU部は、前記子ONUから受信するデータを一時的に保持するバッファ部を備えるとともに、前記バッファ部におけるデータの残存状態を示すバッファ情報を前記OLT部に送信し、前記OLT部は、前記総要求帯域値および前記バッファ情報を用いて前記帯域割り当て処理を行い、前記OLT部が前記子ONUからの帯域要求値の受信を完了するタイミングと、前記ONU部が前記親OLTに対して帯域要求を行うタイミングとが同期していることを特徴とするものである。
【0028】
上述した目的を達成するために、本発明に係るデータ伝送プログラムは、上り方向に接続された上位PONと下り方向に接続された下位PONとを接続し、かつ前記上位PONのOLTである親OLTと接続されるONU部と、前記ONU部に接続されるとともに前記下位PONのONUである子ONUと接続されるOLT部と、を有
し、前記ONU部は、前記子ONUから受信するデータを一時的に保持するバッファ部を備えるとともに、前記バッファ部におけるデータの残存状態を示すバッファ情報を前記OLT部に送信し、前記OLT部は、前記子ONUからの前記上り信号に含まれる要求帯域値である総要求帯域値および前記バッファ情報を用いて前記子ONUに対する帯域割り当て処理を行い、前記OLT部が前記子ONUからの帯域要求値の受信を完了するタイミングと、前記ONU部が前記親OLTに対して帯域要求を行うタイミングとが同期していることを特徴とする通信装置を用いてデータを伝送するプログラムであって、コンピュータを、前記親OLTから未知の接続機器に対する応答要求であるディスカバリ信号を前記ONU部が受信した第一の時刻を前記ONU部から前記OLT部に通知させる第一の制御手段と、前記第一の時刻から予め定められた調整時間が経過した第二の時刻に、前記OLT部から前記子ONUに対して上り信号の送信を許可するゲート信号の送信を開始させるとともに、前記OLT部による、
前記総要求帯域値
を集計する集計処理、および前記総要求帯域値に基づいた前記子ONUに対する帯域割り当て処理を第三の時刻に完了させ
るとともに、
前記子ONUに対する帯域を前記親OLTに要求し、前記第二の時刻から前記第三の時刻までの処理を次のディスカバリ信号を受信するまで繰り返させることによって前記親OLTとの間の同期を確立させる第二の制御手段と、として機能させることを特徴とするものである。
【発明の効果】
【0029】
本発明に係る通信装置、およびデータ伝送プログラムによれば、多段に接続されたPONシステムにおいて、下位のPONの各ONUにおけるデータ送信の待ち時間の増大を抑制するとともに、データの廃棄が発生しにくい通信装置およびデータ伝送プログラムを提供することが可能となる。
【発明を実施するための形態】
【0031】
以下、図面を参照して、本発明を実施するための形態について詳細に説明する。以下の説明では、PONシステムの一例としてE−PONを用いた形態を例示して説明する。
【0032】
[第1の実施の形態]
図1ないし
図7を参照して、本実施の形態に係る通信装置およびデータ伝送プログラムについて説明する。
【0033】
図1は、本実施の形態に係る通信装置としての中継装置30を含むPONシステム1の全体構成の一例を示している。
図1に示すように、PONシステム1は上位PON100および下位PON102を含んで構成された多段PONシステムである。
【0034】
上位PON100は、NNI(Network Node Interface)に接続された親OLTとしてのOLT10、OLT10の配下のONUであるU_ONU20−1、20−2、20−3(以下、総称する場合は「U_ONU20」)、および光スプリッタ50を備えている。OLT10と光スプリッタ50との間は1本の光ファイバ等による光伝送路で接続され、光スプリッタ50から分岐された光伝送路によって、光スプリッタ50と、中継装置30およびU_ONU20の各々との間が接続されている。
【0035】
下位PON102は、中継装置30、中継装置30の配下のONUであるL_ONU22−1、22−2、22−3、22−4(以下、総称する場合は「L_ONU22」)、および光スプリッタ52を備えている。中継装置30と光スプリッタ52との間は1本の光伝送路で接続され、光スプリッタ52から分岐された光伝送路によって、光スプリッタ52と、L_ONU22の各々との間が接続されている。
【0036】
図2は、本実施の形態に係る中継装置30の構成の一例を示すブロック図である。
図2(a)に示すように、中継装置30は、ONUとしての機能を有するR_ONU31、およびOLTとしての機能を有するR_OLT32を含んで構成されている。
【0037】
図2(a)に示すように、R_ONU31は、PON光送受信部301、ONU−MAC(Media Access Control)部302、UI(User Interface)側送受信部303、上りバッファ307、およびPLL324を含んで構成されている。
【0038】
PON光送受信部301は、光スプリッタ50を介してOLT10と対向し、OLT10から送信されたEthernet(登録商標)フレーム形式の光信号を電気信号に変換し、さらに変換した電気信号からクロック信号の抽出を行う。また、PON光送受信部301は、OLT10へ送信するEthernet(登録商標)フレーム形式の電気信号を光信号に変換する。本実施の形態において、Ethernet(登録商標)フレームとは、E−PONのプロトコルに則って伝送される、MPCP(Multi Point Control Protocol)フレーム、OAM(Operations,Administration,and Maintenance)フレーム、ユーザデータフレームなどをいう。
【0039】
ONU−MAC部302は、PON光送受信部301より電気信号を受信し、OLT10からのEthernet(登録商標)フレームの終端を行い、OLT10へ送信するEthernet(登録商標)フレームをPON光送受信部301に送るとともに、R_ONU31の状態監視を行う。UI側送受信部303は、R_OLT32との間でUNI(User Network Interface)からのユーザデータであるEthernet(登録商標)フレームの送受信を行うインタフェース部である。上りバッファ307は、ONU−MAC部302の内部回路であるブリッジ部315から送られた上りフレームを一時蓄積する。PLL324は、PON光送受信部301において抽出したクロックのジッタおよびワンダを除去し、OLT10と同期したクロックを、ONU−MAC部302、およびOLT−MAC部305等を中心とした中継装置30全体のクロックとして分配する。
【0040】
図2(a)に示すように、R_OLT32は、PON光送受信部306、OLT−MAC部305、およびNI(Network Interface)側送受信部304を含んで構成されている。
【0041】
PON光送受信部306は、光スプリッタ52を介してL_ONU22と対向し、L_ONU22から送信されたEthernet(登録商標)フレーム形式の光信号を電気信号に変換する。また、PON光送受信部306は、L_ONU22へ送信するEthernet(登録商標)フレーム形式の電気信号を光信号に変換する。
【0042】
OLT−MAC部305は、PON光送受信部306より電気信号を受信し、L_ONU22からのEthernet(登録商標)フレームの終端を行い、L_ONU22へ送信するEthernet(登録商標)フレームを生成しPON光送受信部306に送るとともに、R_OLT32の状態監視を行う。NI側送受信部304は、R_ONU31との間でEthernet(登録商標)フレームの送受信を行うインタフェース部である。
【0043】
次に、
図2(b)、(c)を参照して、ONU−MAC部302およびOLT−MAC部305の詳細について説明する。
【0044】
図2(b)に示すように、本実施の形態に係るONU−MAC部302は、PON送信部308、PON受信部309、ブリッジ部315、OAM送受信部310、MPCP送受信部311、CPU(Central Processing Unit)312、RAM(Random Access Memory)313、およびROM(Read Only Memory)314を含んで構成されている。
【0045】
ブリッジ部315は、上位PON100へ転送するEthernet(登録商標)フレームのバッファリング、VLAN(Virtual Local Area Network)を識別するためのVLAN−Tagの付与および削除、アドレス学習、優先処理等、および上りフレーム、下りフレームの導通監視等を行う。
【0046】
OAM送受信部310およびMPCP送受信部311は、PONインタフェースの制御を行う。PON送信部308は、ユーザデータフレームや、MPCPフレーム、OAMフレーム等のPON制御フレームをPON光送受信部301へ送る。PON受信部309は、PON光送受信部301からのユーザデータやPON制御フレームを受信および識別し、MPCP送受信部311、OAM送受信部310、ブリッジ部315へ振り分ける。
【0047】
CPU312はR_ONUの各部と接続されており、各種設定、読み出し等を行う。また、UNIからUI側送受信部303を経由して入力されたEthernet(登録商標)フレームはブリッジ部315に接続された上りバッファ307に一旦蓄積(記憶)されるが、CPU312はこの蓄積量をフレーム蓄積量として読み出し、MPCP送受信部311を介してOLT10へREPORTフレームによって通知する機能を備えている。RAM313はCPU312の実行するプログラムの展開、一時記憶等を行う。ROM314は、プログラムや各種設定値を格納する。
【0048】
図2(c)に示すように、本実施の形態に係るOLT−MAC部305は、PON送信部323、PON受信部322、ブリッジ部316、OAM送受信部317、MPCP送受信部318、CPU319、RAM320、およびROM321を含んで構成されている。
【0049】
ブリッジ部316は、R_ONU31からのEthernet(登録商標)フレームを配下のどのL_ONU22へ転送するかを判断するため、MACアドレスやVLAN等の情報から転送先を決定するアドレス学習機能、LLIDごとの上下フレームの導通監視を実施する機能、VLAN識別のためのVLAN−Tagの付与および削除、優先処理やLLID識別のためのバッファ等を行う。
【0050】
MPCP送受信部318は、PONインタフェースのリンク確立に必要な制御フレームを送受信する。OAM送受信部317は、L_ONU22の動作に必要な各種設定を実施するためのOAMフレームの送信を実施し、L_ONU22の状態を読み出したOAMフレームを受信する。PON送信部323は、ブリッジ部316からのユーザデータ、OAM送受信部317からのOAMフレーム、MPCP送受信部318からのMPCPフレーム等を制御しPON光送受信部306へ送る。PON受信部322は、PON光送受信部306からのユーザデータ、PON制御フレーム等を受信および識別し、MPCP送受信部318、OAM送受信部317、ブリッジ部316へ振り分ける。
【0051】
CPU319は各種設定、読み出しを行う。より具体的には、CPU319は、OAM送受信部317、MPCP送受信部318、ブリッジ部316を含む各部と接続されている。各L_ONU22が上りフレームを送信する際には、フレーム蓄積情報をREPORTフレームを用いてR_OLT32に通知するが、CPU319は各L_ONU22が通知してきたフレーム蓄積情報をMPCP送受信部318を介して収集し、次回のREPORTフレームにおいて各L_ONU22がデータフレームを送信するための、上り送信タイミングおよび送信帯域(送信の長さ)を演算するDBA演算処理機能(動的帯域制御機能)を備えている。RAM320はCPU319がプログラムを実行する場合の展開領域の機能、DBA演算処理における一時記憶の機能等を有する。ROM321は、中継装置30の起動のプログラム、DBA処理プログラム等のプログラムや設定値を格納する。
【0052】
なお、本実施の形態では、UI側送受信部303およびNI側送受信部304は、メディア変換のための物理インタフェース変換を実施する一般的なPHY(物理層)を用いている。しかしながら、これに限られず、同一基板内に接続される論理回路でこれらの機能を実現してもよく、この場合、UI側送受信部303およびNI側送受信部304の2つをまとめて、FPGA(Field−Programmable Gate Array)やCPLD(Complex Programmable Logic Device)などの論理回路で構成しても良い。
【0053】
また、ONU−MAC部302は、上述したDiscovery GATEを受信するタイミング(つまり、Local Timeをロードするタイミング)でOLT−MAC部305に送信するLOAD信号(
図2において「LOAD」と表記された信号)を具備し、OLT−MAC部305は、このLOAD信号をトリガとしてR_ONU31がDiscovery GATEを受信したタイミングを知ることが可能となっている。
【0054】
以上のように、中継装置30は、OLT10に接続されるR_ONU31と、中継装置30の配下のL_ONU22に接続されるR_OLT32とで構成され、R_ONU部31のユーザインタフェース側、つまりUI側送受信部303は標準のEthernet(登録商標)フレームを送受信し、R_OLT32のネットワーク側インタフェース、つまりNI側送受信部304も標準のEthernet(登録商標)フレームを送受信する構成となる。そのため、特殊なインタフェースに変換をすることなく、R_ONU31とR_OLT32とが接続可能となっている。
【0055】
次に、
図3および
図4を参照して、PONシステム1の動作について説明する。本実施の形態では、上位PON100と下位PON102の帯域制御周期を変更することなく連携させるために、動作のタイミングを一致させている。また、以下で説明するPONシステム1の動作においては、すでに中継装置30のR_ONU31が親OLTであるOLT10に接続されているものとする。
【0056】
ここで、E−PONは上述したように、新規のONUをOLTへ接続する為のDiscoveryプロセスを有している。OLTは、システムの仕様範囲内での接続距離が不明であるONUに対して、Discovery GATEを送信し、接続が完了していないONUのみがこのDiscovery GATEに応答して接続プロセスを行う(例えば、非特許文献1参照)。OLTは、接続距離が不明(すなわち、RTTが不明)なONUのフレームを自身が受信するため、Discovery Windowと呼ばれる新規ONUの応答のための時間を設定する。このDiscovery Windowの期間においては、すでに接続されているONUには上り送信の割り当てはなされない。
【0057】
OLTは、このように通常の割り当てのための時間(以下、「Δdba」と表記する)とは異なるDiscoveryプロセスのための時間(以下、「Δdba_dis」と表記する)を有し、通常の連続したGATEフレームの割り当ての間にDiscovery GATEを周期的に(例えば、100回に1回、あるいは200回に1回の割合)送出する。Δdba_dis、Δdba、REPORTフレーム集約のための時間ΔRep(このΔRepの終了タイミングを、DBA演算を開始するタイミングとしても良い)は、PONシステムにおいて、クロック数などで一意に決定することができる。また、E−PONではこれらの周期の単位として、上述したLocal Time(単位は、TQ(Time Quanta)、具体的には16nsとされている)を用いることが一般的である。
【0058】
以上のように、PONシステムでは、各時間をシステムとして固定的に決定し運用するが、本実施の形態に係るPONシステム1(多段PONシステム)の上位PON100、下位PON102でもこの固定的な時間の条件を共有して動作するように、予め設定しておく。
【0059】
中継装置30のR_ONU31は、親OLTであるOLT10と接続された際OLT10から受信する信号からクロック抽出を行い、中継装置30のR_OLT32で使用するクロックとして配信し、OLT10との周波数同期を行う。またR_ONU31は、OLT10と接続完了した際に求められるRTT値を拡張OAMフレームを用いて各L_ONU22に配信し、以後任意の周期で配信する。なお、RTTの値は通常OLTとONUとの間の距離が支配的であるが、R_ONU31は温度による光ファイバ長の変動などに起因する遅延時間の変動など長期の変化に対応可能なように配信する。
【0060】
図3を参照して、OLT10と中継装置30(R_OLT32)との間のタイミング同期の方法について説明する。OLT10は、割り当て周期の開始を示すDiscovery GATE(
図3では、文字「D」を含む□で示されている)を任意の時刻T000に送信する。ここでOLT10が送出するDiscovery GATEは、
図3に示すように、Discoveryプロセスの開始の先頭でOLT10で管理された割り当てシーケンスの始めに送信されてくるものとする。また、本実施の形態でタイミングの同期の基準としてDiscovery GATEを用いるのは、該Discovery GATEがOLT配下の機器(本実施の形態では、U_ONU20、中継装置30)の全員宛であるからである。
【0061】
中継装置30(R_ONU31)は、このLocal Time、T000をロードする。一方、任意のLocal Timeを用いて動作しているR_OLT32は、R_ONU31がLocal TimeT000をロードするタイミングと同じタイミングでOLT10に同期したR_OLT32のLocal Time(本例ではT200)を取得する。本実施の形態では、R_OLT32のLocal TimeとR_ONU31のLocal Timeとの合わせ込みは行わない形態を例示して説明するが、これに限られず、R_ONU31と同一のLocal TimeをR_OLT32がロードする形態としてもよい。
【0062】
R_OLT32が受信するLocal TimeT200は、OLT10とRTTの分だけずれたLocal Timeであるから、R_OLT32はOLT10の割り当て周期に同期させるために、本実施の形態では、T200からΔdba_dis−(2×RTT+α)だけずれた時刻、
T201=T200+Δdba_dis−(2×RTT+α) ・・・ (式1)
からGATEフレームを送信するようにする。
ここでαは、R_ONU31がOLT10に送信するREPORTフレームの帯域要求値を計算するために必要な締め切り時間を表わす(
図3中では記号<1>で示されている。なお、以下の説明において<X>は図中の該当箇所を示すものとする)。なお、この帯域計算締め切りαは、R_ONU31で用いられる固定的な時間である。
【0063】
(式1)を変形すると、
Tadj=T201−T200=Δdba_dis−(2×RTT+α)・・・(式2)となる。このTadjは、中継装置30(R_OLT32)がOLT10に同期したLocal Timeを取得してからGATEフレームを送信するまで、すなわちOLT10と同期した動作を開始するまでのいわば調整時間である。その意味において、Tadjを「同期調整時間」という場合がある。
【0064】
T201でR_OLT32が各L_ONU22にGATEフレームを発出すると、L_ONU22はREPORTフレームを返信してくるので、R_OLT32はこれを集約する。GATEフレームを送出してからREPORTフレームが返信されてくるまでの間がΔGateである。R_OLT32は各L_ONU22からのREPORTフレームを集約するが、この集約時間がΔRepである。R_OLT32は各REPORTフレームの集約の後にDBA演算を行い、
図3の例ではこのDBA演算を時刻T202で終了している。従って、中継装置30におけるΔdbaは、
図3に周期「A」が付された矢印で示すように、
Δdba=ΔGate+ΔRep+DBA演算時間 ・・・ (式3)
で表せる。この場合、時刻T202は、T202=T201+Δdbaで表せる。
【0065】
以後、次のΔdba_disの周期まで、(式3)で示される処理が周期的に実行される。次のΔdba_disの周期が到来すると、中継装置30(R_ONU31)によって、再びOLT10のLocal Timeがロードされ、上記の動作が繰り返される。
このことにより、OLT10と同期した帯域の割り当て周期を確立することができる。本実施の形態では、以上の原理に基づく同期確立技術を用いることで、下位PON102で割り当てられたDATAフレームは、中継装置30で必ず帯域要求の対象となる。
【0066】
次に、
図4を参照して、上記帯域要求処理についてより詳細に説明する。
図4は、
図3に示す1回分の割り当て周期Aに対してN回の割り当て周期が発生した後の図を示している。すなわち、
図4では、(A+N)目の周期の1つ前の周期で、下位PON102の配下のL_ONU22(L_ONU22−1、22−2、22−3、22−4のいずれか)でDATAフレームが受信されている(<1>)。
【0067】
L_ONU22は次のREPORTフレームのタイミングにおいて中継装置30(R_OLT32)へ帯域要求を行う(<2>)。中継装置30(R_OLT32)は、他のU_ONU22を含め受信した配下の各L_ONU22のREPORTフレームから下位PON102の全L_ONU22に対してDBA割り当て演算を行い帯域付与を行う(<3>)。中継装置30(R_OLT32)の配下の各L_ONU22は、次のREPORTフレームの周期でDATAフレームを送信する(<4>)。
【0068】
ここで、中継装置30(R_OLT32)はOLT10に対してタイミングが同期しているので、この割り当て周期で中継装置30(R_OLT32)の配下の各L_ONU22から中継装置30(R_ONU31)へ送信されたすべてのデータは、中継装置30(R_ONU31)からOLT10へ帯域要求される(<5>)。
【0069】
ここで、本実施の形態では、上記のように上位PON100と下位PON102のタイミングを連携させているが、上位PON100と下位PON102の各々における割り当て周期が長くなることを抑制するために各々独立で動作をしている。そのため下位PON102で割り当てを行った帯域のすべてが、OLT10から中継装置30に対し残らず割り当てられるとは限らない。このことが連続して発生すると中継装置30(R_ONU31)の一時蓄積のための上りバッファ307が破綻し、中継装置30でフレームの廃棄が発生する可能性がある。そこで、本実施の形態では、中継装置30(R_ONU31)の上りバッファ307の残存バッファ量を下位PON102のDBA演算へフィードバックすることで下位PON102での割り当て量を動的に調整することにより、中継装置30でのフレームの廃棄を抑制している。
【0070】
ここで、中継装置30でのフレーム廃棄とは、以下のような現象である。すなわち、中継装置30は、L_ONU22−1、22−2、22−3、22−4の各々に対し、例えばこの順に帯域割り当てを行い、各々の上りバーストフレームを受信する。この受信されたバーストフレームは中継装置30の上りバッファ307に一時的に蓄積されるが、各L_ONU22からの要求帯域より中継装置30がOLT10へ出力する帯域の方が小さいという状態が連続すると上りバッファ307に溢れが発生する場合がある。
【0071】
ここで、L_ONU22においても、帯域要求から割り当ての時間や、Discoveryプロセスで送信ができない時間などを考慮し、Δdbaの期間に蓄積されるフレーム量の数倍のバッファ量を確保されているのが一般的である。そこで、本実施の形態では、中継装置30(R_ONU31)のバッファとして特別大きなバッファではなく、L_ONU22と同等の容量の上りバッファ307を設けている。さらに本実施の形態では、上りバッファ307に、Δdbaの期間において受信可能な最大バッファ量を勘案した閾値を設定している。
【0072】
例えば最大バッファ量を勘案した閾値として4つの閾値TH1、TH2、TH3、TH4(TH1<TH2<TH3<TH4)を想定し、未だ残存しているフレームが上りバッファ307に占める量を残存データ量Drとする。この場合、各閾値に対して中継装置30(R_OLT32)は、配下のL_ONU22に対するDBA演算において、以下のように帯域を割り当てる。
(ケース1)Dr<TH1の場合
Δdba時間のすべてに相当する帯域を割り当てる。
(ケース2)TH1≦Dr<TH2の場合
Δdba時間の3/4に相当する帯域を割り当てる。
(ケース3)TH2≦Dr<TH3の場合
Δdba時間の1/2に相当する帯域を割り当てる。
(ケース4)TH3≦Dr<TH4の場合
Δdba時間の1/4に相当する帯域を割り当てる。
(ケース5)Dr≧TH4の場合
その周期における帯域割り当ては行わない。
なお、上記の閾値の数および帯域割り当ての量は一例であり、閾値の数や帯域割り当ての量の設定はΔdbaの周期やシステム要求などを勘案し任意に設定してよい。
【0073】
以上の処理は親OLTであるOLT10が帯域の割り当てにおいて輻輳状態にある場合に発生するものであり、下位PON102に対する割り当てがない場合でも、中継装置30には送信したいDATAフレームは蓄積している。従って、この中継装置30における蓄積は、上記従来技術に係る多段PONシステムにおいて、親OLTからの割り当て状態によって下位PONの配下のONUがDATAフレームを蓄積している場合と同等の処理とみなすことができる(つまり、本実施の形態に係るPONシステム1において特に大きなデータの蓄積が発生しているわけではない)。
【0074】
次に、
図5および
図6を参照して、中継装置30がOLT10と連携して帯域割り当て動作を行う場合の同期確立の具体的な方法、およびOLT10の中継装置30に対する帯域割り当て方法について説明する。本実施の形態に係るOLT10は、中継装置30(R_ONU31)の上りバッファ307の蓄積量に応じて中継装置30の配下のL_ONU22への帯域付与量を動的に変更する。この帯域付与量の動的変更によって、中継装置30内で上りフレームの廃棄が発生しないが、この場合の帯域制御方法を具体的に説明する。
【0075】
図5は、
図2に示す中継装置30の一部を抜き出して示したものであり、
図6は、ONU−MAC部302の内部のCPU312と、OLT−MAC部305の内部のCPU319との間でバッファ情報を送受信する場合のフローを示している。ONU−MAC部302は、ブリッジ部315に接続された、上りユーザデータフレーム(すなわち、L_ONU22の各々から収集した上りユーザフレーム)を一時格納する上りバッファ307の格納状態を把握している。R_ONU31は、この格納状態に基づいて自身が保有する上りフレーム蓄積量をREPORTフレームを介してOLT10に対し通知する。そのため、この格納状態は上りバッファ307のバッファ情報として、CPU312が共有している。
【0076】
図5に示すように、各L_ONU22からのユーザフレームは、OLT−MAC部305−NI側送受信部304−UI側送受信部303−ONU−MAC部302を経由して上りバッファ307に一旦蓄積される。上りバッファ307には残存データ量Drに応じた閾値TH1〜TH4が設定されている。一方、CPU312はブリッジ部315からバッファ情報を取得するとともに、ブリッジ部315−UI側送受信部303−NI側送受信部304−ブリッジ部316を介してCPU319に送信する。なお、中継装置30においてCPU312とCPU319が同一基盤上に設けられる場合は、CPU312とCPU319とが共通に使用可能なメモリを別途設け、当該メモリを用いてバッファ情報を直接に受け渡しするようにしてもよい。この場合、メモリとして例えばDual Port Memory(DPM)が採用可能である。DPMを用いる場合、
図5においてCPU312とCPU319をバス線で接続し、当該バス線にDPMを接続して、CPU312とCPU319の双方がDPMにアクセスできるようにしてもよい。
【0077】
図6を参照し、まず、ステップS1でCPU312が上りバッファ307のバッファ情報、または閾値超過情報を取得する。ステップS2で、CPU312は、取得した上りバッファ307のバッファ情報を、CPU319に対し送信する。次に、ステップS1に戻り、CPU312はこの送信を定期的に実行する。
【0078】
CPU312およびCPU319は各々MACアドレスを具備しているので、CPU319は、ステップS3において主信号の中から自己のMACアドレスをフィルタすることにより、上りバッファ307のバッファ情報フレームを受信する。
【0079】
次のステップS4で、CPU319は、受信したバッファ情報をDBA演算処理に反映させる。すなわち、受信したバッファ情報に基づいて、下位PON102の配下の各L_ONU22の割り当て帯域のトータル帯域を、上記閾値TH1〜TH4によるΔdbaに相当する帯域の割り当て方法(すなわち、上記(ケース1)〜(ケース4))に従って割り当てる。その後CPU319はステップS3に戻り、バッファ情報の受信を繰り返す。
以上のように、本実施の形態では、CPU312とCPU319とが協働することにより、R_ONU31の上りバッファ307においてオーバーフローが発生しないようにフロー制御されている。
【0080】
ここでR_ONU31のCPU312は、一定の周期で、R_ONU31の上りバッファ307の全バッファサイズに設けられた複数の閾値の各々を超過しているか否かの判定を行う。上記上りバッファ307のバッファ情報には、この判定結果が含まれている。すなわち、一定周期の確認の結果が上記ケース1の場合は「0」をバッファ情報に含ませ、R_OLT32のCPU319へ送信する。同様に、上記ケース2の場合は「1」を、上記ケース3の場合は「2」を、上記ケース4の場合は「3」を、上記ケース5の場合は、「4」を各々バッファ情報に含ませ、R_OLT32のCPU319へ送信する。
【0081】
図7を参照して、R_OLT32のCPU319がバッファ情報フレームを受信してDBA演算処理を行う方法について説明する。まず、DBA周期Nにおいて、R_OLT32から中継装置30の配下のL_ONU22−1〜22−4へGATEフレームを送信する(<1>)。各L_ONU22は、このGATEフレーム対する応答として、要求帯域の含まれたREPORTフレームを送信する(<2>)。各L_ONUからの要求帯域量に対して、R_OLT32のCPU319はDBA演算処理を実行する(<3>)。ここで、各L_ONU22に対する有効な付与帯域は、DBA演算処理の周期であるΔdbaを総割り当ての最大時間とし、各L_ONU22の要求量に応じた帯域を付与するDBA演算処理アルゴリズムによって行う。なお、以下においては、各L_ONU22への付与帯域という場合には全L_ONU22への付与帯域の総量をいい、この付与帯域の総量を「Tgmax」という場合がある。
【0082】
図7では、DBA周期Nにおいて、R_ONU31のCPU312から受信した上りバッファ307の閾値がTH1を超過していない場合を示している(<4>)。従って、DBA周期Nでは、各L_ONU22対する帯域付与範囲をTgmax=ΔdbaとしてDBA演算処理を実行するので、DBA周期N+1においてL_ONU22に割り当てられる帯域はΔdba(最大帯域)となる(<5>)。
【0083】
DBA周期N+1においても、R_OLT32と各L_ONU22との間でGATEフレームとREPORTフレームのやり取りが行われる(<6>)。DBA周期N+1においては、R_ONU31のCPU312より受信した上りバッファ307の閾値情報は、閾値TH3を超過しない範囲で閾値TH2を超過しているというものである(<7>)。
【0084】
これを受け、DBA周期N+1では、今回受信したREPORT(22−1〜22−4)フレームの帯域要求情報と、上りバッファ307のバッファ情報フレームを介して受信したTH2超過の情報を加味し、次のDBA周期N+2で与える各L_ONU22への帯域付与量Tgmaxを決定する。すなわち、DBA演算処理上の割り当ての最大時間TgmaxをTgmax=1/2Δdbaとして帯域計算を実施し(<8>)、その結果、DBA周期N+2ではΔdbaの1/2の帯域量をL_ONU22に割り当てる(<9>)。この場合、各L_ONU22からのREPORT要求内容を考慮してDBA演算処理を実行するのがよい。
【0085】
以上のように、本実施の形態では、CPU312からの上りバッファ307のバッファ情報フレームに従い、中継装置30(R_OLT32)のDBA処理において中継装置30の配下の各L_ONU22に割り当てる総帯域を制御し、R_ONU31の上りバッファ307のオーバーフローを回避している。
【0086】
以上詳述したように、本実施の形態に係る通信装置およびデータ伝送プログラムでは、通信装置としての中継装置30においてR_ONU31とR_OLT32とが互いに連携した帯域制御が行われる。そのため、従来技術に係る多段PONシステムにおいて問題となっていたOLTにおけるDBA演算周期、および中継ノードにおけるDBA演算周期が長くなることで、下位PONの配下のONUの待ち時間が長くなり、データフレームの遅延量の増大および所要バッファの容量の増大を招くことが抑制される。さらに、本実施の形態に係る通信装置およびデータ伝送プログラムによれば、OLT10と中継装置30が短い周期で各々独立にDBA演算制御を行っても、DATAフレームが中継装置30で廃棄されることがなく、帯域が不公平になることを抑制することができ、下位PON102の配下に接続されるL_ONU22間における付与帯域の公平性が担保される。
【0087】
[第2の実施の形態]
図8ないし
図10を参照して、本実施の形態に係る通信装置およびデータ伝送プログラムについて説明する。
図8は、本実施の形態に係る通信装置としての中継装置30aの構成の一例を示すブロック図であり、
図8(a)は中継装置30aの全体構成を、
図8(b)は中継装置30aを構成するR_ONU31のONU−MAC部302の詳細を示すブロック図、
図8(c)は中継装置30aを構成するR_OLT32のOLT−MAC部305の詳細を示すブロック図である。中継装置30aは、
図8に示すように、上記実施の形態に係る中継装置30と比較して、OLT−MAC部305からONU−MAC部302へ総帯域要求量REPORT__Sumが送信される点のみ異なり、他の構成は同様である。従って同様の構成には同じ符号を付し、詳細な説明を省略する。
【0088】
総帯域要求量REPORT_Sumは、R_ONU31の配下に接続された全L_ONU22のREPORTフレームによる帯域要求量の和である。総帯域要求量REPORT_Sumの具体的な送信方法は、例えば、R_OLT32のCPU319からR_ONU31のCPU312へ情報自体をメモリ転写などを用いて転送することにより行われる。
この転送は必要に応じてトリガ信号を与えること等により実行させるように構成してもよい。
【0089】
次に、
図9を参照して、OLT10と中継装置30aとの間のタイミング同期の方法について説明する。中継装置30aも上記実施の形態に係る中継装置30と同様、タイミングを取得するために、R_ONU31はOLT10の周期開始を示すDiscovery_GATEを受信し(<1>)、このタイミングに基づいて中継装置30aのDBA周期をOLT10で生成するタイミングに同期させる。
【0090】
一方、中継装置30a(R_OLT32)は、以下のようにして割り当て開始タイミング決定する。すなわち、
図9に示すように、OLT10からDiscovery_GATEフレーム(
図9では、文字「D」を含む□で示されている)がLocal_Time=T000において送信されると、中継装置30a(R_ONU31)がこのLocal_Time=T000を受信する(<1>)。本例では、中継装置30a(R_OLT31)は、自身のLocal_Time=T200でLocal_TimeT000を受信している。
【0091】
中継装置30a(R_OLT32)は、Local_Time=T200の情報に基づいて、Discovery_GATEの送信を開始する(<2>)。このDiscovery_GATEの送信開始時刻をT210とする。このとき、本実施の形態に係る中継装置30aでは、以下の(式4)で示すオフセット計算を行って時刻T210を定める。
T210=T200+ΔGate+ΔRep+β−(2×RTT) ・・・ (式4)
ここで、βは中継装置30a(R_OLT32)が配下の全L_ONU22からすべてのREPORTフレームを受信し、その要求帯域の合計を中継装置30a(R_ONU31)へ渡す為に必要な時間であり(<3>)、システムとして一意に決定することが可能な値である。
【0092】
上記実施の形態に係る中継装置30における同期調整時間Tadjと同様の考え方で、以下の(式5)に示すTadj’が本実施の形態に係る中継装置30aにおける同期調整時間となる。
Tadj’=T210−T200=ΔGate+ΔRep+β−(2×RTT)・・・(式5)
【0093】
時刻T210において中継装置30a(R_OLT31)はDiscoveryプロセスを開始し(<2>)、Δdba_disの経過後のT211(<4>)から、中継装置30と同様にΔdbaの周期で帯域割り当てを行い(<5>)、以後この帯域割り当てが次のDiscoveryプロセスの周期まで繰り返し実行される。
図3に示すように、中継装置30では同期調整時間がΔdba_disで規定されていたのに対し、中継装置30aではΔGateおよびΔRepで規定されるという違いがあるが、繰り返し発生するDiscoveryプロセスごとにタイミングを再計算する(同期を取り直す)点は同じである。
【0094】
なお、本実施の形態では、中継装置30a(R_ONU31)のLocal_Timeと中継装置30a(R_OLT32)のLocal_Timeとを独立させた状態で例示して説明したが、これに限られず、中継装置30a(R_ONU31)のLocal_Timeを中継装置30a(R_OLT32)のLocal_Timeがロードすることにより、両者のLocal_Timeを同期させる形態としてもよい。
【0095】
ここで、本実施の形態に係る中継装置30a(R_ONU31)は、配下の全L_ONU22からすべてのREPORTフレームを受信すると、その要求帯域の合計値と中継装置30a(R_ONU31)の上りバッファ307に蓄積されていた帯域(すなわち、残存データ量Drの帯域。以下、「残存フレームの帯域」という)の総和をOLT10に申告する(<6>)。中継装置30a(R_ONU31)が全L_ONU22の要求帯域の合計値に加え、残存フレームの帯域をOLT10に申告するのは以下の理由による。
【0096】
すなわち、本実施の形態に係る中継装置30a(R_ONU31)は、全L_ONU22からの帯域要求値の合計をOLT10に申告し、一方中継装置30a(R_OLT32)は、帯域要求値とバッファ情報(上りバッファ307における蓄積量)とに基づいて各L_ONU22への帯域付与を行っている。このとき上位PON100が輻輳していて、OLT10が中継装置30aに対し、中継装置30aの要求値どおりの帯域付与を行わなかった場合、中継装置30a(R_ONU31)の上りバッファ307にフレームが残留する。仮に上りバッファ307にフレームが残留した状態で各L_ONU22からの帯域要求が無くなった場合、中継装置30aからのOLT10に対する帯域要求も無くなる。
この場合、上りバッファ307に残留したフレームがOLT10に送信されないので、上りバッファ307にフレームが残留し続けてしまう。
【0097】
そこで、本実施の形態に係る中継装置30a(R_ONU31)は、下位PON102配下の全L_ONU22の帯域要求値の和と、中継装置30a(R_ONU31)の上りバッファ307における残存フレームの帯域との総和を上位PON100のOLT10に対して申告する。このことにより、OLT10が下位PON102(中継装置30a)に対して付与する帯域に余裕があれば、上りバッファ307に蓄積されているフレームと、OLT10が中継装置30aに帯域を付与する時点で各L_ONU22から中継装置30aに入ってくる(と予測される)フレームをOLT10へ送信することが可能となる。その結果、仮にL_ONU22からの帯域要求が無くなったとしても、中継装置30a(R_ONU31)の上りバッファ307にフレームが残存したままとなることはない。
【0098】
次に、
図10を参照して、中継装置30aにおける帯域割り当ての方法について説明する。
図10は、
図9に示す1回の割り当て周期ΔdbaをAとした場合のN周期目の状態を示している。まずA+N周期より1つ前の周期で中継装置30aの配下のL_ONU22(L_ONU22−1、22−2、22−3、22−4のいずれか)がDATAフレーム(U1)を受信し(<1>)、A+N周期において該L_ONU22は中継装置30a(R_OLT32)にREPORTフレームを介して帯域要求を行う(<2>)。中継装置30a(R_OLT32)は配下の全L_ONU22よりすべてのREPORTフレームを受信し、受信開始からΔRep後に受信した帯域要求の合計を中継装置30a(R_ONU31)へ送る(<3>)。
【0099】
これと同時に、中継装置30a(R_OLT32)でも配下のL_ONU22に対するDBA演算処理を行い(<4>)、次のA+N+1周期でGATEフレームを介して帯域割り当てを行う(<5>)。一方、中継装置30a(R_ONU31)は、中継装置30a(R_OLT32)より受信した要求帯域値と残存フレームの帯域に基づいてREPORTフレームを送信する(<6>)。
【0100】
A+N周期の次のA+N+1周期においても同様の処理が行われる。すなわち、A+N周期にDATAフレーム(U2)を受信したL_ONU22は(<7>)、A+N+1周期においてREPORTフレームを介した帯域要求を中継装置30a(R_OLT31)へ行う(<8>)。中継装置30a(R_OLT32)は配下の全L_ONU22より受信した帯域要求値の合計を中継装置30a(R_ONU31)へ送る。さらに、中継装置30a(R_ONU31)は、全L_ONU22より受信した帯域要求値の合計をOLT10に申告するが、その際、A+N周期におけるOLT10の割り当ての結果、上りバッファ307にフレームが残存していた場合には、この残存分の帯域も加算してOLT10に申告する(<9>)。
【0101】
一方、中継装置30a(R_OLT32)、はA+N周期のOLT10の割り当ての結果、中継装置30a(R_ONU31)の上りバッファ307に残存したフレームと閾値TH1〜TH4との関係を示すバッファ情報を受信している(<10>)。そのため、A+N+1周期におけるDBA演算処理は、このバッファ情報に基づいて上述したケース1〜ケース4に従って最大に割り当てる帯域を設定した後、実行される(<11>)。以後、以上の動作が繰り返されて、本実施の形態に係る帯域割り当てが実行される。
【0102】
以上詳述したように、本実施の形態に係る通信装置およびデータ伝送プログラムによれば、上位PON100と下位PON102とにおいて、各々帯域割り当て周期Δdbaを増大させることなく帯域割り当てを実施することができる。また、下位PON102の配下のL_ONU22の帯域要求の総和をいち早くOLT10へ送信することにより、従来技術に係る多段PONシステムのように、1回の割り当て周期が通常のPONシステムと比較して2倍程度長くなり、その結果、帯域要求に間に合わなかったDATAフレームが長期間待たされるという問題の発生が抑制される。さらに、本実施の形態に係る通信装置およびデータ伝送プログラムによれば、Δdba周期の1回分だけ早く全L_ONU22の帯域要求をおこなうことができる。また、下位PON102と上位PON100のDBA演算処理は各々別個に実行されるが、上位PON100の割り当て状態を下位PON102の割り当て状態にフィードバックすることで、中継装置30aでのバッファ溢れによるフレームロスを無くし、中継装置30aでのバッファ容量の増大を抑制することが可能となる。