JP7601727B2 - Buffer allocation device, subscriber line termination device, buffer allocation method and program - Google Patents
Buffer allocation device, subscriber line termination device, buffer allocation method and program Download PDFInfo
- Publication number
- JP7601727B2 JP7601727B2 JP2021134586A JP2021134586A JP7601727B2 JP 7601727 B2 JP7601727 B2 JP 7601727B2 JP 2021134586 A JP2021134586 A JP 2021134586A JP 2021134586 A JP2021134586 A JP 2021134586A JP 7601727 B2 JP7601727 B2 JP 7601727B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- queue
- buffer amount
- amount
- built
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Optical Communication System (AREA)
- Small-Scale Networks (AREA)
Description
本発明は、バッファ割り当て装置、加入者線終端装置、バッファ割り当て方法及びプログラムに関する。 The present invention relates to a buffer allocation device, a subscriber line termination device, a buffer allocation method, and a program.
アクセスサービスの高速化に対するニーズの高まりに応じて、FTTH(Fiber To The Home)が世界的に普及している。日本で主力となるFTTHサービスとして、例えば、ギガビット級の伝送速度を実現するGE-PON(Gigabit Ethernet PON)、及び10G-EPON(10Gigabit Ethernet PON)等がある。 In response to the growing need for faster access services, FTTH (Fiber To The Home) is becoming more widespread worldwide. In Japan, the main FTTH services include GE-PON (Gigabit Ethernet PON), which achieves gigabit-class transmission speeds, and 10G-EPON (10 Gigabit Ethernet PON).
GE-PON及び10G-EPONでは、ONUからOLTへの方向の上り通信においては、TDMA(Time Division Multiple Access;時分割多元接続)技術が用いられる。また、GE-PON及び10G-EPONをシステムとして動作させるために必要な機能の1つとしてDBA(Dynamic Bandwidth Allocation;動的帯域割当)機能がある。DBA機能は、上り通信における帯域を、トラヒック量に応じて動的に割り当てる帯域制御機能である。DBA機能は、各ONUに流れる上り通信のトラヒックの状況に応じて、割り当てる帯域を適切に切り替えることで、未使用帯域を発生させることなく、効率的な上り帯域を実現する。 In GE-PON and 10G-EPON, TDMA (Time Division Multiple Access) technology is used for upstream communications from the ONU to the OLT. In addition, one of the functions required for GE-PON and 10G-EPON to operate as a system is the DBA (Dynamic Bandwidth Allocation) function. The DBA function is a bandwidth control function that dynamically allocates bandwidth for upstream communications according to the amount of traffic. The DBA function realizes efficient upstream bandwidth without generating unused bandwidth by appropriately switching the allocated bandwidth according to the status of the upstream traffic flowing to each ONU.
DBA機能では、各ONUは、上り送信バッファに蓄積されている送信待ちの上りデータのデータ量を、REPORTフレームによってOLTに伝える。一方、OLTは、受信したREPORTフレームに基づいて、それぞれのONUが時間的に衝突することなく上りデータを送信することができるように、上りデータの送信開始時刻及び送信許可量をGATEフレームによって各ONUへ指示する。各ONUは、GATEフレームによって指示された送信開始時刻に、送信許可量に基づいて上りデータの送信を行う。このように、GATEフレームとREPORTフレームとを用いたやりとりによって、DBA機能が実現される。 In the DBA function, each ONU communicates to the OLT, via a REPORT frame, the amount of upstream data waiting to be sent that is stored in the upstream transmission buffer. Meanwhile, the OLT uses a GATE frame to instruct each ONU on the upstream data transmission start time and permitted transmission amount so that each ONU can transmit upstream data without time collisions based on the received REPORT frame. Each ONU transmits upstream data based on the permitted transmission amount at the transmission start time instructed by the GATE frame. In this way, the DBA function is realized through communication using GATE and REPORT frames.
ところで、1ユーザに複数のサービスを提供する場合、例えばVoIP(Voice over Internet Protocol)及び映像配信等の品質保証型の通信が多重する場合のサービス品質を確保するためには、優先制御機能が必要となる(非特許文献1参照)。優先制御機能により重要度の高いデータから優先的に送信することが可能になり、低優先のデータ(インターネットサービス)と高優先のデータ(VoIP及び映像配信等)とが同時に入力されたとしても、高優先サービスの品質を確保することが可能になる。 When providing multiple services to one user, for example when quality-guaranteed communications such as VoIP (Voice over Internet Protocol) and video distribution are multiplexed, a priority control function is required to ensure the quality of the services (see Non-Patent Document 1). The priority control function makes it possible to transmit data with higher importance first, and ensures the quality of the high-priority service even if low-priority data (Internet service) and high-priority data (VoIP, video distribution, etc.) are input simultaneously.
一般的に、ONUは、上りデータの送信の優先制御を行う。ONUは、上りデータの送信タイミングを制御するため、大量のバッファを必要とする。そのため、ONUは、内部のPONチップに、上りデータを一時蓄積しておくための上り送信バッファ(以下、「内蔵バッファ」という。)を搭載している。また、この内蔵バッファは、複数の上り送信キューを備えている。なお、ここでいうPONチップとは、コスト低減のためにONUの主要機能がLSI(Large Scale Integration)化されたものである。 In general, an ONU performs priority control for the transmission of upstream data. The ONU requires a large amount of buffer space to control the timing of upstream data transmission. For this reason, the ONU is equipped with an upstream transmission buffer (hereafter referred to as the "built-in buffer") in its internal PON chip to temporarily store upstream data. This built-in buffer also has multiple upstream transmission queues. The PON chip referred to here is an ONU whose main functions have been integrated into an LSI (Large Scale Integration) to reduce costs.
但し、それでもPONチップに搭載された内蔵バッファだけでは、バッファ量が足りなくなる場合がある。この場合、例えばDDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)等の外付けの上り送信バッファ(以下、「外付けバッファ」という。)を追加して、2段バッファ構成とする必要がある。なお、この外付けバッファにも、複数の上り送信キューが備えられるように構成される。そして、内蔵バッファの各上り送信キューと外付けバッファの各上り送信キューとが、互いに一対一で対応付けられている。2段バッファ構成により、内蔵バッファに空きがない状態であっても、外付けバッファにバッファリングがなされるため、バッファオーバーフローの発生等を防止することができる。 However, even so, there are cases where the built-in buffer mounted on the PON chip does not have enough buffer capacity. In this case, it is necessary to add an external upstream transmission buffer (hereinafter referred to as "external buffer") such as a DDR SDRAM (Double-Data-Rate Synchronous Dynamic Random Access Memory) to create a two-stage buffer configuration. This external buffer is also configured to have multiple upstream transmission queues. Each upstream transmission queue of the built-in buffer and each upstream transmission queue of the external buffer are in one-to-one correspondence. With the two-stage buffer configuration, even if there is no free space in the built-in buffer, buffering is performed in the external buffer, preventing the occurrence of buffer overflows, etc.
しかしながら、従来、このような2段バッファにおいて、それぞれのバッファに対して必要十分なバッファ量を設定するための設定方法が明確に示されていなかった。そのため、設定されたバッファ量の全てを内蔵バッファに割り当てられない状態となること(以下、「オーバーサブスクリプション」という。)を防ぐために、余裕を持たせて外付けバッファのバッファ量を設定することができるようにしなければならなかった。これにより、送信バッファの装置コストが増大するという課題があった。 However, in the past, there was no clear method for setting a necessary and sufficient buffer capacity for each buffer in such a two-stage buffer. Therefore, in order to prevent a situation in which the entire set buffer capacity cannot be allocated to the built-in buffer (hereinafter referred to as "oversubscription"), it was necessary to set the buffer capacity of the external buffer with a margin. This resulted in an issue of increased equipment costs for the transmission buffer.
本発明は、上記の点を鑑みてなされたものであり、送信データをバッファリングする機器をより低いコストで実装することができるバッファ割り当て装置、加入者線終端装置、バッファ割り当て方法及びプログラムを提供することを目的とする。 The present invention has been made in consideration of the above points, and aims to provide a buffer allocation device, a subscriber line termination device, a buffer allocation method, and a program that can implement equipment for buffering transmission data at lower cost.
本発明の一態様は、複数のキューの各々に対する要求バッファ量を示す情報を取得する取得部と、前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して前記第1最低換算バッファ量を割り当て、前記第1の記憶部の合計容量と前記第1の記憶部の前記キューごとの前記第1最低換算バッファ量とに基づいて、オーバーサブスクリプションが発生しうるか否かを前記キューごとに判定し、前記オーバーサブスクリプションが発生すると判定された前記キューについて第2の記憶部の前記キューに所定のバッファ量を割り当てる設定部と、を備えるバッファ割り当て装置である。 One aspect of the present invention is a buffer allocation device that includes an acquisition unit that acquires information indicating a requested buffer amount for each of a plurality of queues, and a setting unit that converts the requested buffer amount for each queue into a first minimum converted buffer amount based on the lowest data storage efficiency that can occur in the first storage unit, assigns a buffer amount calculated based on the first minimum converted buffer amount and the minimum buffer amount required per cycle of a dynamic bandwidth allocation function to the queue with the lowest priority in the first storage unit, assigns the first minimum converted buffer amount to queues other than the queue with the lowest priority in the first storage unit, determines for each queue whether oversubscription may occur based on the total capacity of the first storage unit and the first minimum converted buffer amount for each queue in the first storage unit, and assigns a predetermined buffer amount to the queue in the second storage unit for the queue for which it is determined that oversubscription will occur.
また、本発明の一態様は、複数の上り送信キューの各々に対する要求バッファ量を示す情報を取得する取得部と、前記上り送信キューごとの前記要求バッファ量を内蔵バッファで生じうる最も低いデータ収容効率に基づいて第1最低換算データ長にそれぞれ換算し、前記内蔵バッファの最も優先度の低い前記上り送信キューに対して、前記第1最低換算データ長と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記内蔵バッファの最も優先度の低い前記上り送信キュー以外の上り送信キューに対して前記第1最低換算データ長を割り当て、前記内蔵バッファの合計容量と前記内蔵バッファの前記上り送信キューごとの前記第1最低換算データ長とに基づいて、オーバーサブスクリプションが発生しうるか否かを前記上り送信キューごとに判定し、前記オーバーサブスクリプションが発生すると判定された前記上り送信キューについて外付けバッファの前記上り送信キューに所定のバッファ量を割り当てる設定部と、を備える加入者線終端装置である。 Moreover, one aspect of the present invention is a subscriber line termination device comprising: an acquisition unit that acquires information indicating a requested buffer amount for each of a plurality of upstream transmission queues; and a setting unit that converts the requested buffer amount for each of the upstream transmission queues into a first minimum converted data length based on the lowest data storage efficiency that can occur in an internal buffer, assigns a buffer amount calculated based on the first minimum converted data length and a minimum buffer amount required per cycle of a dynamic bandwidth allocation function to the upstream transmission queue having the lowest priority of the internal buffer, assigns the first minimum converted data length to upstream transmission queues other than the upstream transmission queue having the lowest priority of the internal buffer, determines for each upstream transmission queue whether or not oversubscription may occur based on a total capacity of the internal buffer and the first minimum converted data length for each upstream transmission queue of the internal buffer, and assigns a predetermined buffer amount to the upstream transmission queue of an external buffer for the upstream transmission queue for which it is determined that oversubscription will occur.
また、本発明の一態様は、複数のキューの各々に対する要求バッファ量を示す情報を取得する取得ステップと、前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して前記第1最低換算バッファ量を割り当て、前記第1の記憶部の合計容量と前記第1の記憶部の前記キューごとの前記第1最低換算バッファ量とに基づいて、オーバーサブスクリプションが発生しうるか否かを前記キューごとに判定し、前記オーバーサブスクリプションが発生すると判定された前記キューについて第2の記憶部の前記キューに所定のバッファ量を割り当てる設定ステップと、を有するバッファ割り当て方法である。 In addition, one aspect of the present invention is a buffer allocation method having an acquisition step of acquiring information indicating a requested buffer amount for each of a plurality of queues, and a setting step of converting the requested buffer amount for each queue into a first minimum converted buffer amount based on the lowest data storage efficiency that can occur in the first storage unit, allocating a buffer amount calculated based on the first minimum converted buffer amount and the minimum buffer amount required per cycle of the dynamic bandwidth allocation function to the queue with the lowest priority in the first storage unit, allocating the first minimum converted buffer amount to queues other than the queue with the lowest priority in the first storage unit, determining for each queue whether oversubscription may occur based on the total capacity of the first storage unit and the first minimum converted buffer amount for each queue in the first storage unit, and allocating a predetermined buffer amount to the queue in the second storage unit for the queue for which it is determined that oversubscription may occur.
また、本発明の一態様は、上記のバッファ割り当て装置としてコンピュータを機能させるためのプログラムである。 Another aspect of the present invention is a program for causing a computer to function as the above-mentioned buffer allocation device.
本発明により、送信データをバッファリングする機器をより低いコストで実装することができる。 The present invention allows equipment for buffering transmission data to be implemented at lower cost.
以下、本発明の実施形態について、図面を参照しながら説明する。 The following describes an embodiment of the present invention with reference to the drawings.
[PONの構成]
FTTHサービスを高速かつ安価に提供する光アクセスシステムとしてPON(Passive Optical Network;受動光ネットワーク)がある。PONは、光-電気変換を行わず、低コストの受動素子である光スプリッタを用いて光信号を複数に分岐する。これにより、PONは、一心の光ファイバを複数ユーザで共有することによって、経済的なネットワークを実現することができる。日本において主力となるFTTHサービスとして、例えば、ギガビット級の伝送速度を実現するGE-PON及びGE-PONのさらに10倍の帯域を持つ10G-EPON等がある。
[PON Configuration]
PON (Passive Optical Network) is an optical access system that provides FTTH services at high speed and low cost. PON does not perform optical-electrical conversion, but splits optical signals into multiple signals using an optical splitter, which is a low-cost passive element. As a result, PON can realize an economical network by sharing a single optical fiber among multiple users. The main FTTH services in Japan include, for example, GE-PON, which realizes gigabit-class transmission speeds, and 10G-EPON, which has a
以下、本実施形態におけるPON1の全体構成について説明する。図1は、本発明の実施形態におけるPON1の全体構成図である。図1に示されるように、PON1は、OLT(Optical Line Terminal;加入者線端局装置)10と、複数の(図1においてはn台の)ONU(Optical Network Unit;加入者線終端装置)20と、光ファイバ30と、光スプリッタ40と、を含んで構成される。
The overall configuration of PON1 in this embodiment will be described below. FIG. 1 is an overall configuration diagram of PON1 in this embodiment of the present invention. As shown in FIG. 1, PON1 is configured to include an OLT (Optical Line Terminal) 10, a plurality of ONUs (Optical Network Units) 20 (n units in FIG. 1), an
OLT10は、例えば通信事業者の局舎内に設置される。ONU20は、例えばユーザの宅内(又は構内)に設置される。光ファイバ30は、例えば通信事業者の局舎とユーザの宅内との間に敷設される。光スプリッタ40は、光ファイバ30を分岐する。OLT10とONU20との間に光信号を合分波する光スプリッタ40が設置されることによって、1つのOLT10に対して複数のONU20が接続される。
The OLT 10 is installed, for example, in a telecommunications carrier's office. The ONU 20 is installed, for example, in a user's home (or premises). The
OLT10は、ONU20から送信された光信号を受信して、上位装置あるいは上位ネットワーク(例えば、インターネット等)へ転送する。また、OLT10は、上位装置あるいは上位ネットワークからの信号を受信して、各ONU20へ転送する。OLT10は、PON区間及びONU20を制御監視する役割を担う。 The OLT 10 receives optical signals transmitted from the ONUs 20 and forwards them to a higher-level device or a higher-level network (e.g., the Internet). The OLT 10 also receives signals from the higher-level device or the higher-level network and forwards them to each ONU 20. The OLT 10 is responsible for controlling and monitoring the PON section and the ONUs 20.
ONU20は、OLT10から送信された光信号を受信して電気信号に変換する。そして、ONU20は、変換された電気信号をユーザの端末装置(例えば、PC等)へ転送する。また、ONU20は、ユーザの端末装置から送信された電気信号を受信して光信号に変換する。そして、ONU20は、変換された光信号をOLT10へ転送する。
ONU 20 receives optical signals transmitted from
PON1では、OLT10からONU20への方向の通信(以下、「下り通信」という。)においては、TDM(Time Division Multiplexing;時分割多重化)技術が用いられる。TDMは、複数のユーザの信号を時間的に重ならないように多重化して伝送する技術である。 In PON1, TDM (Time Division Multiplexing) technology is used for communication from OLT 10 to ONU 20 (hereinafter referred to as "downstream communication"). TDM is a technology that multiplexes and transmits signals from multiple users so that they do not overlap in time.
なお、下り通信では、OLT10から送信されて光スプリッタ40によって分岐された同一の信号(以下、「下り信号」という。)が、当該OLT10とつながる全てのONU20へ転送される。すなわち、各ONU20には、自己のONU20宛のデータ以外のデータも転送される。そのため、各ONU20は、転送されたデータから自己のONU20宛のデータだけを抽出し、それ以外の(他のONU20宛の)データを廃棄する。
In downstream communication, the same signal (hereinafter referred to as the "downstream signal") transmitted from the
また、PON1では、ONU20からOLT10への方向の通信(以下、「上り通信」という。)においては、TDMA技術が用いられる。上り通信では、光スプリッタ40によって複数のONU20からの信号(以下、「上り信号」という。)が合波される。そのため、各ONU20からの上り信号が無秩序に送信された場合、光ファイバ30上で衝突を起こしてしまう可能性がある。そこで、TDMAは、ONU20からの上り信号の送信タイミングと上りデータの送信量とを制御することによって、各ONU20からの上り信号が光ファイバ30上で衝突することなく多重化されるように制御する。
In addition, in PON1, TDMA technology is used for communication from
GE-PON及び10G-EPONをシステムとして動作させるために必要な機能の1つとしてDBA機能がある。DBA機能は、上り通信における帯域(以下、「上り帯域」という。)を、トラヒック量に応じて動的に割り当てる帯域制御機能である。DBA機能は、各ONU20からの上り通信のトラヒック(以下、「上りトラヒック」という。)に応じて、柔軟に上り帯域を割り当てることができる。DBA機能は、上りトラヒックが流れているONU20だけに上り帯域を割り当てるため、無駄なく上り帯域を使用することができる。DBA機能は、各ONU20に流れる上りトラヒックの状況に応じて、割り当てる帯域を適切に切り替えることで、未使用帯域を発生させることなく、効率的な上り帯域を実現する。
The DBA function is one of the functions required for GE-PON and 10G-EPON to operate as a system. The DBA function is a bandwidth control function that dynamically allocates the bandwidth for upstream communication (hereinafter referred to as "upstream bandwidth") according to the amount of traffic. The DBA function can flexibly allocate the upstream bandwidth according to the upstream communication traffic (hereinafter referred to as "upstream traffic") from each
GE-PON及び10G-EPONは、MPCP(Multi Point Control Protocol)と呼ばれるプロトコルを用いて上り信号の送信制御を行う。OLT10は、それぞれのONU20が時間的に衝突することなく上り信号を送信することができるように、それぞれのONU20に対して上り信号の送信開始時刻及び送信許可量を、GATEフレームによって指示する。
GE-PON and 10G-EPON use a protocol called MPCP (Multi Point Control Protocol) to control the transmission of upstream signals. The
一方、各ONU20は、自己のONU20の上り送信バッファに蓄積されている送信待ちの上りデータのデータ量を、REPORTフレームによってOLT10に伝える。このGATEフレームとREPORTフレームとが用いられることによって、DBA機能が実現される。
Meanwhile, each
以下、DBA機能の仕組みを簡単に説明する。ONU20は、上りデータを受信すると、ひとまず上り送信バッファに上りデータを蓄積する。ONU20は、蓄積している上りデータのデータ量をREPORTフレームに記し、当該REPORTフレームをOLT10へ送信する。
Below is a brief explanation of how the DBA function works. When
OLT10は、受信したREPORTフレームから、ONU20に蓄積されている送信待ちの上りデータのデータ量を把握する。OLT10は、ONU20に割り当てるべき上り帯域を、当該ONU20の蓄積データ量及び他のONU20の使用帯域に基づいて計算する。具体的には、OLT10は、ONU20の上り信号の送信開始時刻と送信許可量とを算出する。OLT10は、算出した値をGATEフレームに記し、当該GATEフレームをONU20へ送信する。
From the received REPORT frame,
ONU20は、受信したGATEフレームに記された指示に従って、指定された送信開始時刻に、指定されたデータ量(送信許可量)の上りデータを送信する。このとき、ONU20は、次回の上り帯域の割当のために、上り送信バッファに蓄積されている上りデータのデータ量をOLT10へ再度通知することもある。
上記の手順が繰り返されることで、OLT10は、各ONU20における上りトラヒックの状況を把握することができ、当該状況に応じて各ONU20に対し上り帯域を適切に割り当てることができる。
By repeating the above procedure, the
[ONUの構成]
以下、本実施形態におけるONU20の構成について説明する。図2は、本発明の実施形態におけるONU20の構成を示すブロック図である。図2に示されるように、ONU20は、TRx21と、MAC処理部22と、PHY23と、外付けバッファ24とを含んで構成される。
[ONU Configuration]
The configuration of the
TRx(Transmitter/Receiver)21は、自装置とOLT10との間で光信号の送受信を行う光送受信器である。TRx21は、MAC処理部22から出力された上り送信用のデジタルデータ(電気信号)を光信号(上り信号)に変換して光ファイバ30に出力するとともに、OLT10から送信された光信号(下り信号)を受信し、受信された光信号をデジタルデータ(電気信号)に変換してMAC処理部22へ出力する。
The TRx (Transmitter/Receiver) 21 is an optical transmitter/receiver that transmits and receives optical signals between the device itself and the
MAC(Media Access Control)処理部22は、データの送受信を制御するデータリンク副層の機能部である。MAC処理部22は、一般にPONチップを用いて構成される。MAC処理部22は、バッファ設定部220と、内蔵バッファ221とを含んで構成される。バッファ設定部220は、内蔵バッファ221及び外付けバッファ24のバッファ量を設定する。なお、以下の説明において、内蔵バッファ221と外付けバッファ24とを併せて「上り送信バッファ」ということがある。
The MAC (Media Access Control)
内蔵バッファ221及び外付けバッファ24は、例えば磁気ハードディスク装置又は半導体記憶装置等の記憶媒体を用いて構成される。内蔵バッファ221及び外付けバッファ24は、PHY23によって受信される上りデータを蓄積する。内蔵バッファ221及び外付けバッファ24は、それぞれ複数の上り送信キューを備える。なお、以下の説明において、内蔵バッファ221の上り送信キューを「内蔵キュー」、及び、外付けバッファ24の上り送信キューを「外付けキュー」ということがある。
The built-in
PHY(PHYsical sublayer)23は、物理層の機能部である。PHY23は、自装置と下位装置(例えば、ユーザ通信端末等)とを接続する通信インタフェースである。PHY23は、下位装置から送信されたアナログ信号を取得してデジタル信号に変換し、変換されたデジタル信号をMAC処理部22へ出力する。また、PHY23は、MAC処理部22から出力されたデジタル信号を取得してアナログ信号に変換し、変換されたアナログ信号を下位装置へ送信する。
The PHY (PHYsical sublayer) 23 is a functional part of the physical layer. The
[上り送信バッファの設定方法]
以下、本実施形態におけるONU20による上り送信バッファの設定方法について、具体例を用いて説明する。図3~5は、本発明の実施形態におけるONU20による上り送信バッファの設定処理を説明するための図である。
[How to set the upstream transmit buffer]
A specific example will now be described of a method for setting an upstream transmission buffer by the
ここでは、ONU20の内蔵バッファ221及び外付けバッファ24は、それぞれ上り送信キューを4つずつ備えているものとする。図3に示されるように、内蔵バッファ221及び外付けバッファ24は、上り送信キュー#0から上り送信キュー#3までの4つの上り送信キューをそれぞれ備える。ここで、上り送信キュー#3が最も優先度が高く、次に上り送信キュー#2、上り送信キュー#1の順に優先度が設定されており、この順番で上りデータが上り送信キューに格納されるものとする。そして、ONU20は、送信キュー#3に格納された上りデータを最優先で送信し、同キューが空になった後に送信キュー#2に格納された上りデータを送信し、その後同様に、送信キュー#1、送信キュー#0の順に上りデータを送信する。
Here, it is assumed that the
以下、内蔵バッファ221の上り送信キュー#0~上り送信キュー#3をそれぞれ内蔵キューq#0~内蔵キューq#3といい、外付けバッファ24の上り送信キュー#0~上り送信キュー#3をそれぞれ外付けキューQ#0~外付けキューQ#3という。
Hereinafter, the upstream
バッファ設定部220は、内蔵キューq#0に割り当てられたバッファ量の範囲内に納まらなかった上りデータを外付けキューQ#0に格納する。同様に、バッファ設定部220は、内蔵キューq#1に割り当てられたバッファ量の範囲内に納まらなかった上りデータを外付けキューQ#1に格納し、内蔵キューq#2に割り当てられたバッファ量の範囲内に納まらなかった上りデータを外付けキューQ#2に格納し、内蔵キューq#3に割り当てられたバッファ量の範囲内に納まらなかった上りデータを外付けキューQ#3に格納する。このように、内蔵キューq#nと外付けキューQ#nとがそれぞれ対応する2段バッファとなっており、この1組の上り送信キューによって各上りデータが一時記憶される。
The
まず、バッファ設定部220は、予め規定された装置や回線の保守監視機能(例えば、拡張OAM(Operation, Administration, and Maintenance)機能)からの指示に従って、内蔵キューq#0~内蔵キューq#3にそれぞれ設定したい上りデータのバッファ量(以下、単に「設定したいバッファ量」ともいう。)を決定する。
First, the
ここでは、図3に示されるように、内蔵キューq#0に設定したいバッファ量が600[KB]であり、内蔵キューq#1に設定したいバッファ量が300[KB]であり、内蔵キューq#2に設定したいバッファ量が200[KB]であり、内蔵キューq#3に設定したいバッファ量が100[KB]であるものとする。
As shown in FIG. 3, the buffer capacity to be set for built-in
次に、バッファ設定部220は、上記決定された内蔵キューq#0~内蔵キューq#3にそれぞれ設定したいバッファ量を、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量に換算する。ここでいう最低収容効率となるデータ長とは、上りデータが上り送信キューに収容される際にバッファ未使用領域が最も大きくなるデータ長である。バッファ設定部220は、上記換算されたバッファ量を、内蔵キューq#0~内蔵キューq#3にそれぞれ確保する上りデータのバッファ量(以下、単に「確保するバッファ量」ともいう。)として決定する。
The
ここでは、内蔵バッファ221での最低収容効率は、1/1.5であるものとする。したがって、内蔵キューq#0に確保するバッファ量が、900[KB](=600×1.5)となり、内蔵キューq#1に確保するバッファ量が、450[KB](=300×1.5)となり、内蔵キューq#2に確保するバッファ量が、300[KB](=200×1.5)となり、内蔵キューq#3に確保するバッファ量が、150[KB](=100×1.5)となる。
Here, the minimum storage efficiency of the built-in
次に、バッファ設定部220は、DBA機能の1周期当たりに最低限必要となるバッファ量を算出する。なお、DBA機能の1周期当たりに最低限必要となるバッファ量が算出される理由としては、1周期当たりに上りデータを出力することができるのは、内蔵バッファ221からのみであるというPONチップ上の制約からである。すなわち、バッファ設定部220は、DBA機能の1周期当たりにOLT10によって付与されうる最大の上りデータの送信許可量(Data Grant)分に相当するバッファ量を算出する(なお、上記と同様に、バッファ設定部220は、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量に換算する)。
Next, the
ここでは、付与されうる最大の上りデータの送信許可量(Data Grant)分のデータ長に相当するバッファ量が、525[KB]であるものとする。 Here, the buffer capacity equivalent to the data length of the maximum upstream data transmission permission amount (Data Grant) that can be granted is assumed to be 525 [KB].
次に、バッファ設定部220は、最も優先度が低い上り送信キューである内蔵キューq#0が最大の上りレートとなるようにバッファ量を割り当てる。具体的には、バッファ設定部220は、上記算出された内蔵キューq#0に確保するバッファ量(以下、「バッファ量A」ともいう。)と、上記算出された付与されうる最大の上りデータの送信許可量(Data Grant)分の内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量(以下、「バッファ量B」ともいう。)と、を比較する。バッファ設定部220は、バッファ量Aがバッファ量Bより多い場合には、内蔵キューq#0に対し、バッファ量Bを割り当てるように設定する。一方、バッファ設定部220は、バッファ量Aがバッファ量B以下である場合には、内蔵キューq#0に対し、バッファ量Aを割り当てるように設定する。
Next, the
ここでは、上記の通り、バッファ量Aは900[KB]であり、バッファ量Bは525[KB]である。このように、バッファ量Aがバッファ量Bより多いことから、図3に示されるように、内蔵キューq#0に対し、525[KB]のバッファ量(バッファ量B)が割り当てられる。
As described above, in this example, buffer amount A is 900 [KB] and buffer amount B is 525 [KB]. Since buffer amount A is greater than buffer amount B, a buffer amount of 525 [KB] (buffer amount B) is allocated to built-in
次に、バッファ設定部220は、外付けキューQ#0に実際に割り当てるバッファ量を算出する。具体的には、上記において内蔵キューq#0に対しバッファ量Bが割り当てられた場合に、バッファ設定部220は、内蔵キューq#0に確保するバッファ量のうち、上記の内蔵キューq#0に対するバッファ量の設定によって設定しきれなかった分のバッファ量を外付けキューQ#0に割り当てる(なお、バッファ設定部220は、外付けバッファ24での最低収容効率となるデータ長に相当するバッファ量に換算する)。
Next, the
ここでは、上記の通り、内蔵キューq#0に対し525[KB]のバッファ量が割り当てられている。この525[KB]のバッファ量は、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量であることから、当初の内蔵キューq#0に設定したいバッファ量600[KB]うちの350[KB](=525÷1.5)分のバッファ量が内蔵キューq#0に対して割り当てられたことになる。したがって、外付けキューQ#0には、当初の内蔵キューq#0に設定したいバッファ量600[KB]うちの残りの250[KB](=600-350)分のバッファ量が割り当てられる必要がある。
Here, as described above, a buffer capacity of 525 [KB] is allocated to the built-in
ここでは、外付けバッファ24での最低収容効率は、1/1.2であるものとする。したがって、図3に示されるように、外付けキューQ#0に対し300[KB](=250×1.2)のバッファ量が割り当てられる。
Here, the minimum storage efficiency of the
また、バッファ設定部220は、上記算出された、内蔵キューq#1に確保するバッファ量、内蔵キューq#2に確保するバッファ量、及び内蔵キューq#3に確保するバッファ量を、それぞれ内蔵キューq#1、内蔵キューq#2、及び内蔵キューq#3に割り当てる。
The
ここでは、図3に示されるように、内蔵キューq#1、内蔵キューq#2、及び内蔵キューq#3に対し、それぞれ、450[KB]、300[KB]、及び150[KB]のバッファ量が割り当てられる。
Here, as shown in FIG. 3, buffer sizes of 450 KB, 300 KB, and 150 KB are allocated to built-in
次に、バッファ設定部220は、内蔵バッファ221(内蔵キューq#0~内蔵キューq#3)の合計容量に基づいて、内蔵キューq#0~内蔵キューq#3の各々にオーバーサブスクリプションが発生しうるか否かを判定する。例えば、内蔵キューq#0~内蔵キューq#2で内蔵バッファ221の合計容量の全てが使い切られた場合、内蔵キューq#3のバッファ量は0[KB]となる。この場合、内蔵キューq#3の上りデータが取得されたとしても、内蔵キューq#3は当該上りデータを格納することができない。これにより、当該上りデータは、内蔵バッファにてオーバーサブスクリプションが発生し、格納できないデータは外付けバッファへ格納される。バッファ設定部220は、ある内蔵キューにおいてオーバーサブスクリプションが発生しうるか否かを、他の内蔵キューのバッファ量に基づいて判定する。
Next, the
ここでは、図4に示されるように、内蔵バッファ221(内蔵キューq#0~内蔵キューq#3)の合計容量が1[MB]であるものとする。上記の通り、内蔵キューq#0、内蔵キューq#1、及び内蔵キューq#2に対して、それぞれ、525[KB]、450[KB]、及び300[KB]のバッファ量が割り当てられている。そのため、内蔵キューq#0~内蔵キューq#2のバッファ量の合計は1,275[KB]となり、1[MB](=1,024[KB])を超過する。したがって、内蔵キューq#3においてオーバーサブスクリプションが発生しうると判定される。
As shown in FIG. 4, it is assumed here that the total capacity of the built-in buffer 221 (built-in
このようにして、内蔵キューq#0、内蔵キューq#1、及び内蔵キューq#2に割り当てられたバッファ量の合計が1,275[KB](=525+450+300)>1[MB]であることから内蔵キューq#3においてオーバーサブスクリプションが発生しうると判定され、内蔵キューq#0、内蔵キューq#1、及び内蔵キューq#3に割り当てられたバッファ量の合計が1,125[KB](=525+450+150)>1[MB]であることから内蔵キューq#2においてオーバーサブスクリプションが発生しうると判定される。
In this way, since the total amount of buffer space allocated to built-in
一方、内蔵キューq#0、内蔵キューq#2、及び内蔵キューq#3に割り当てられたバッファ量の合計が975[KB](=525+300+150)≦1[MB]であることから内蔵キューq#1においてオーバーサブスクリプションが発生しないと判定され、内蔵キューq#1、内蔵キューq#2、及び内蔵キューq#3に割り当てられたバッファ量の合計が900[KB](=450+300+150)≦1[MB]であることから内蔵キューq#0においてオーバーサブスクリプションが発生しないと判定される。
On the other hand, since the total amount of buffer space allocated to built-in
次に、バッファ設定部220は、上記の判定においてオーバーサブスクリプションが発生しうると判定された内蔵キューに対応する外付けキューに対してバッファ量を割り当てる(なお、バッファ設定部220は、外付けバッファ24での最低収容効率となるデータ長に相当するバッファ量に換算する)。
Next, the
ここでは、上記の通り、内蔵キューq#2及び内蔵キューq#3においてオーバーサブスクリプションが発生しうると判定されたため、外付けキューQ#2及び外付けキューQ#3に対してバッファ量が割り当てられる。上記のとおり、当初の内蔵キューq#2に設定したいバッファ量は200[KB]であるため、図5に示されるように、外付けキューQ#2には、外付けバッファ24での最低収容効率となるデータ長に相当する240[KB](=200×1.2)のバッファ量が割り当てられる。また、当初の内蔵キューq#3に設定したいバッファ量は100[KB]であるため、図5に示されるように、外付けキューQ#3には、外付けバッファ24での最低収容効率となるデータ長に相当する120[KB](=100×1.2)のバッファ量が割り当てられる。
Here, as described above, since it is determined that oversubscription may occur in the built-in
[ONUの動作]
以下、本実施形態におけるONU20の上り送信バッファの設定処理時における動作について説明する。図6は、本発明の実施形態におけるONU20の動作の一例を示すフローチャートである。なお、ここでは、内蔵バッファ221及び外付けバッファ24は、n個(nは、1以上の整数)の上り送信キューをそれぞれ備えているものとする。
[ONU Operation]
The operation of the
まず、バッファ設定部220は、PHY23から取得した上りデータに基づいて、内蔵キューq#0~内蔵キューq#n-1にそれぞれ設定したいバッファ量を決定する(ステップS01)。
First, the
次に、バッファ設定部220は、ステップS01において決定された内蔵キューq#0~内蔵キューq#n-1にそれぞれ設定したいバッファ量を、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量に換算する(ステップS02)。バッファ設定部220は、上記換算されたバッファ量を、内蔵キューq#0~内蔵キューq#n-1にそれぞれ確保するバッファ量として決定する。
Then, the
次に、バッファ設定部220は、DBA機能の1周期当たりに最低限必要となるバッファ量を算出する(ステップS03)。
Next, the
次に、バッファ設定部220は、最も優先度が低い上り送信キューである内蔵キューq#m(mは、0≦m≦n-1となる整数)が最大の上りレートとなるようにバッファ量を割り当てる。具体的には、バッファ設定部220は、上記算出された内蔵キューq#mに確保するバッファ量(バッファ量A)と、上記算出された付与されうる最大の上りデータの送信許可量(Data Grant)分の内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量(バッファ量B)とを比較する。バッファ設定部220は、バッファ量Aがバッファ量Bより多い場合には、内蔵キューq#mに対し、バッファ量Bを割り当てるように設定する。一方、バッファ設定部220は、バッファ量Aがバッファ量B以下である場合には、内蔵キューq#mに対し、バッファ量Aを割り当てるように設定する(ステップS04)。
Next, the
次に、バッファ設定部220は、最も優先度が低い上り送信キューである内蔵キューq#mに対応する外付けキューQ#mにバッファ量の割り当てが必要か否かを判定する(ステップS05)。具体的には、バッファ設定部220は、内蔵キューq#mに確保するバッファ量のうち、上記ステップS04における内蔵キューq#mに対するバッファ量の設定によって設定しきれなかった分のバッファ量がある場合(すなわち、内蔵キューq#mに対し、バッファ量Bが割り当てられた場合)に、外付けキューQ#mにバッファ量を割り当てる必要が有ると判定する。
Next, the
外付けキューQ#mにバッファ量の割り当てが必要であると判定された場合(ステップS05・YES)、バッファ設定部220は、内蔵キューq#0に確保するバッファ量のうち、上記の内蔵キューq#0に対するバッファ量の設定によって設定しきれなかった分のバッファ量を外付けキューQ#0に割り当てる(ステップS06)。
If it is determined that a buffer capacity needs to be allocated to the external queue Q#m (step S05: YES), the
次に、バッファ設定部220は、最も優先度が低い上り送信キューである内蔵キューq#m以外の内蔵キューに対し、ステップS02において算出された内蔵バッファに確保するバッファ量をそれぞれ割り当てる(ステップS07)。
Next, the
次に、バッファ設定部220は、内蔵バッファ221の合計容量に基づいて、内蔵キューq#0~内蔵キューq#nの各々にオーバーサブスクリプションが発生しうるか否かを判定する(ステップS08)。
Next, the
次に、バッファ設定部220は、上記の判定においてオーバーサブスクリプションが発生しうると判定された内蔵キューに対応する外付けキューに対してバッファ量を割り当てる(ステップS09)。以上で、図6のフローチャートが示すONU20の動作が終了する。
Next, the
以上説明したように、本実施形態におけるONU20は、上り送信キューごとの設定したいバッファ量に対し、当該バッファ量を内蔵バッファ221で最低収容効率となる場合のバッファ量に換算する。ONU20は、まず優先度が最も低い上り送信キューに内蔵バッファ221を優先的に割り当てる。このとき、ONU20は、設定したいバッファ量がDBA機能の1周期当たりに最低限必要なバッファ量より大きい場合には、当該最低限必要なバッファ量を内蔵バッファ221に割り当て、残りのバッファ量を外付けバッファ24に割り当てる。
As described above, in this embodiment, the
このような構成を備えることで、本実施形態におけるONU20は、2段構成の上り送信バッファのバッファ量を適切に設定することができる。具体的には、外付けバッファ24は、内蔵バッファ221に収まらない上りデータを格納する。そしてベストエフォートクラスとして想定されたクラスであって、バッファの必要量が最も多いクラスである上り送信キュー#0に、十分なバッファ量を割り当てつつ、帯域保証クラスとして想定されたクラスである上り送信キュー#1~3に、DBA機能の1周期当たりに保証されているデータ量のみを内蔵バッファ221に確保することで、優先度に基づき効率的に上りデータを送信することができる。なお、ここでいうベストエフォートクラスとは、一般的なインターネットと同様の経済性や自由度を優先する通信サービスを提供するための品質クラスである。また、ここでいう帯域補償クラスとは、優先クラスであり、例えば、テレビ電話や、映像配信のようなリアルタイム性が要求される通信サービスの提供に適した品質クラスである。これにより、本実施形態におけるONU20によれば、低価格低容量のバッファを組み合わせて用いることが可能になり、より安価にONU20の必要性能を満たす構成とすることができる。よって、本実施形態におけるONU20によれば、送信データをバッファリングする機器をより低いコストで実装することができる。
With such a configuration, the
また、以上説明したように、本実施形態におけるONU20は、優先度が最も低い上り送信キュー以外の上り送信キューに対して、残りのバッファ量を割り当てる。このとき、ONU20は、設定したいバッファ量が内蔵バッファ221の容量を超えるオーバーサブスクリプションが発生しうる場合には、当該オーバーサブスクリプションが発生しうる上り送信キューを外付けバッファ24に設定する。
As described above, in this embodiment,
このような構成を備えることで、本実施形態におけるONU20は、オーバーサブスクリプションの発生を防ぐことができ、外付けバッファ24に必要なバッファ量の増大を抑制することができる。
By having such a configuration, the
上述した実施形態によれば、バッファ割り当て装置は、取得部と、設定部とを備える。
例えば、バッファ割り当て装置は、実施形態におけるONU20あるいはMAC処理部22であり、取得部は、実施形態におけるMAC処理部22の一部であり、設定部は、実施形態におけるバッファ設定部220である。取得部は、複数のキューの各々に対する要求バッファ量を示す情報を取得する。例えば、複数のキューは、実施形態における上り送信キュー#0~上り送信キュー#nであり、要求バッファ量は、実施形態における内蔵キューq#0~内蔵キューq#nにそれぞれ設定したい上りデータのバッファ量である。
According to the above-described embodiment, the buffer allocation device includes an acquisition unit and a setting unit.
For example, the buffer allocation device is the
設定部は、キューごとの要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算する。例えば、第1の記憶部は、実施形態における内蔵バッファ221であり、第1最低換算バッファ量は、実施形態における内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量である。設定部は、第1の記憶部の最も優先度の低いキューに対して、第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当てる。例えば、第1の記憶部の最も優先度の低いキューは、実施形態における内蔵キューq#0であり、動的帯域割当機能は、実施形態におけるDBA機能である。設定部は、第1の記憶部に設定されなかった分のバッファ量を第2の記憶部で生じうる最も低いデータ収容効率に基づいて第2最低換算バッファ量に換算し、第2の記憶部の最も優先度の低いキューに対して第2最低換算バッファ量を割り当てる。例えば、第2の記憶部は、実施形態における外付けバッファ24であり、第2最低換算バッファ量は、実施形態における外付けバッファ24での最低収容効率となるデータ長に相当するバッファ量であり、第2の記憶部の最も優先度の低いキューは、実施形態における外付けキューQ#0である。
The setting unit converts the requested buffer amount for each queue into a first minimum conversion buffer amount based on the lowest data storage efficiency that can occur in the first storage unit. For example, the first storage unit is the built-in
なお、上記のバッファ割り当て装置において、設定部は、第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量を示す必要バッファ量とを比較し、第1最低換算バッファ量が必要バッファ量より多い場合には第1の記憶部の最も優先度の低いキューに対して必要バッファ量を割り当て、第1最低換算バッファ量が必要バッファ量以下である場合には第1の記憶部の最も優先度の低いキューに対して第1最低換算バッファ量を割り当てるようにしてもよい。例えば、必要バッファ量は、実施形態におけるDBA機能の1周期当たりにOLT10によって付与されうる最大の上りデータの送信許可量(Data Grant)分に相当するデータ長に相当するバッファ量である。
In the above-mentioned buffer allocation device, the setting unit may compare the first minimum conversion buffer amount with a required buffer amount indicating the minimum buffer amount required per one cycle of the dynamic bandwidth allocation function, and if the first minimum conversion buffer amount is greater than the required buffer amount, allocate the required buffer amount to the lowest priority queue of the first storage unit, and if the first minimum conversion buffer amount is equal to or less than the required buffer amount, allocate the first minimum conversion buffer amount to the lowest priority queue of the first storage unit. For example, the required buffer amount is a buffer amount equivalent to a data length equivalent to the maximum upstream data transmission grant amount (Data Grant) that can be granted by the
なお、上記のバッファ割り当て装置において、設定部は、第1の記憶部の最も優先度の低いキュー以外のキューに対して第1最低換算バッファ量を割り当て、第1の記憶部の合計容量と第1の記憶部のキューごとの第1最低換算バッファ量とに基づいて、オーバーサブスクリプションが発生しうるか否かをキューごとに判定し、オーバーサブスクリプションが発生すると判定された第2の記憶部のキューに所定のバッファ量を割り当てるようにしてもよい。例えば、第1の記憶部の最も優先度の低いキュー以外のキューは、実施形態における内蔵キューq#0以外の内蔵キューq#nである。
In the above-mentioned buffer allocation device, the setting unit may allocate the first minimum converted buffer amount to a queue other than the lowest priority queue in the first storage unit, determine for each queue whether oversubscription may occur based on the total capacity of the first storage unit and the first minimum converted buffer amount for each queue in the first storage unit, and allocate a predetermined buffer amount to a queue in the second storage unit for which oversubscription is determined to occur. For example, the queue other than the lowest priority queue in the first storage unit is an internal queue q#n other than the internal
なお、上記のバッファ割り当て装置において、設定部は、第1の記憶部の特定のキュー以外のキューに割り当てられたバッファ量の合計が第1の記憶部の合計容量より多い場合に、第1の記憶部の特定のキューにおいてオーバーサブスクリプションが発生しうると判定するようにしてもよい。 In the above-mentioned buffer allocation device, the setting unit may determine that oversubscription may occur in a specific queue of the first storage unit when the total amount of buffers allocated to queues other than the specific queue of the first storage unit is greater than the total capacity of the first storage unit.
なお、上記のバッファ割り当て装置において、設定部は、第2の記憶部で生じうる最も低いデータ収容効率に基づいて算出される上記所定のバッファ量を割り当てるようにしてもよい。 In addition, in the above-mentioned buffer allocation device, the setting unit may allocate the above-mentioned predetermined buffer amount calculated based on the lowest data storage efficiency that can occur in the second storage unit.
上述した実施形態におけるONU20の一部又は全部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記録装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものを含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
A part or all of the
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The above describes an embodiment of the present invention in detail with reference to the drawings, but the specific configuration is not limited to this embodiment, and includes designs that do not deviate from the gist of the present invention.
1・・・PON、10・・・OLT、20・・・ONU、21・・・TRx、22・・・MAC処理部、23・・・PHY、24・・・外付けバッファ、30・・・光ファイバ、40・・・光スプリッタ、220・・・バッファ設定部、221・・・内蔵バッファ 1: PON, 10: OLT, 20: ONU, 21: TRx, 22: MAC processing unit, 23: PHY, 24: external buffer, 30: optical fiber, 40: optical splitter, 220: buffer setting unit, 221: built-in buffer
Claims (8)
前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して前記第1最低換算バッファ量を割り当て、前記第1の記憶部の合計容量と前記第1の記憶部の前記キューごとの前記第1最低換算バッファ量とに基づいて、オーバーサブスクリプションが発生しうるか否かを前記キューごとに判定し、前記オーバーサブスクリプションが発生すると判定された前記キューについて第2の記憶部の前記キューに所定のバッファ量を割り当てる設定部と、
を備えるバッファ割り当て装置。 an acquisition unit that acquires information indicating a requested buffer amount for each of a plurality of queues;
a setting unit that converts the requested buffer amount for each of the queues into a first minimum converted buffer amount based on the lowest data storage efficiency that can occur in the first storage unit, allocates a buffer amount calculated based on the first minimum converted buffer amount and a minimum buffer amount required per cycle of a dynamic bandwidth allocation function to the queue with the lowest priority in the first storage unit, allocates the first minimum converted buffer amount to queues other than the queue with the lowest priority in the first storage unit, determines for each of the queues whether or not oversubscription may occur based on a total capacity of the first storage unit and the first minimum converted buffer amount for each of the queues in the first storage unit, and allocates a predetermined buffer amount to the queue in the second storage unit for the queue for which it is determined that oversubscription will occur;
A buffer allocation apparatus comprising:
請求項1に記載のバッファ割り当て装置。 2. The buffer allocation device of claim 1, wherein the setting unit determines that the oversubscription may occur in the specific queue of the first storage unit when a total of buffer amounts allocated to queues other than the specific queue of the first storage unit is greater than a total capacity of the first storage unit.
請求項1又は2に記載のバッファ割り当て装置。 3. The buffer allocation device according to claim 1, wherein the setting unit compares the first minimum converted buffer amount with a required buffer amount indicating a minimum buffer amount required per cycle of the dynamic bandwidth allocation function, and if the first minimum converted buffer amount is greater than the required buffer amount, allocates the required buffer amount to the queue with the lowest priority in the first memory unit, and if the first minimum converted buffer amount is equal to or less than the required buffer amount, allocates the first minimum converted buffer amount to the queue with the lowest priority in the first memory unit.
請求項1から3のうちいずれか一項に記載のバッファ割り当て装置。 4. The buffer allocation device according to claim 1, wherein the setting unit converts the buffer amount not set in the first memory unit into a second minimum converted buffer amount based on the lowest data storage efficiency that can occur in the second memory unit, and allocates the second minimum converted buffer amount to the queue with the lowest priority in the second memory unit.
請求項1から4のうちいずれか一項に記載のバッファ割り当て装置。 The buffer allocation device according to claim 1 , wherein the setting unit allocates the predetermined buffer amount calculated based on a lowest data storage efficiency that can occur in the second storage unit.
前記上り送信キューごとの前記要求バッファ量を内蔵バッファで生じうる最も低いデータ収容効率に基づいて第1最低換算データ長にそれぞれ換算し、前記内蔵バッファの最も優先度の低い前記上り送信キューに対して、前記第1最低換算データ長と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記内蔵バッファの最も優先度の低い前記上り送信キュー以外の上り送信キューに対して前記第1最低換算データ長を割り当て、前記内蔵バッファの合計容量と前記内蔵バッファの前記上り送信キューごとの前記第1最低換算データ長とに基づいて、オーバーサブスクリプションが発生しうるか否かを前記上り送信キューごとに判定し、前記オーバーサブスクリプションが発生すると判定された前記上り送信キューについて外付けバッファの前記上り送信キューに所定のバッファ量を割り当てる設定部と、
を備える加入者線終端装置。 an acquisition unit that acquires information indicating a requested buffer capacity for each of a plurality of upstream transmission queues;
a setting unit that converts the requested buffer amount for each of the upstream transmission queues into a first minimum converted data length based on the lowest data storage efficiency that can occur in the built-in buffer, allocates a buffer amount calculated based on the first minimum converted data length and a minimum buffer amount required per cycle of a dynamic bandwidth allocation function to the upstream transmission queue with the lowest priority of the built-in buffer, allocates the first minimum converted data length to upstream transmission queues other than the upstream transmission queue with the lowest priority of the built-in buffer, determines for each of the upstream transmission queues whether or not oversubscription may occur based on a total capacity of the built-in buffer and the first minimum converted data length for each of the upstream transmission queues of the built-in buffer, and allocates a predetermined buffer amount to the upstream transmission queue of an external buffer for the upstream transmission queue for which it is determined that oversubscription will occur;
A subscriber line termination device comprising:
コンピュータが、前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して前記第1最低換算バッファ量を割り当て、前記第1の記憶部の合計容量と前記第1の記憶部の前記キューごとの前記第1最低換算バッファ量とに基づいて、オーバーサブスクリプションが発生しうるか否かを前記キューごとに判定し、前記オーバーサブスクリプションが発生すると判定された前記キューについて第2の記憶部の前記キューに所定のバッファ量を割り当てる設定ステップと、
を有するバッファ割り当て方法。 An acquisition step in which the computer acquires information indicating a required buffer amount for each of a plurality of queues;
a setting step of: a computer converting the requested buffer amount for each of the queues into a first minimum converted buffer amount based on the lowest data storage efficiency that can occur in a first storage unit, allocating a buffer amount calculated based on the first minimum converted buffer amount and a minimum buffer amount required per cycle of a dynamic bandwidth allocation function to the queue with the lowest priority in the first storage unit, allocating the first minimum converted buffer amount to queues other than the queue with the lowest priority in the first storage unit, determining for each of the queues whether or not oversubscription may occur based on a total capacity of the first storage unit and the first minimum converted buffer amount for each of the queues in the first storage unit, and allocating a predetermined buffer amount to the queue in the second storage unit for the queue for which it is determined that oversubscription will occur;
The buffer allocation method has the following structure:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021134586A JP7601727B2 (en) | 2021-08-20 | 2021-08-20 | Buffer allocation device, subscriber line termination device, buffer allocation method and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021134586A JP7601727B2 (en) | 2021-08-20 | 2021-08-20 | Buffer allocation device, subscriber line termination device, buffer allocation method and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023028714A JP2023028714A (en) | 2023-03-03 |
| JP7601727B2 true JP7601727B2 (en) | 2024-12-17 |
Family
ID=85331170
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021134586A Active JP7601727B2 (en) | 2021-08-20 | 2021-08-20 | Buffer allocation device, subscriber line termination device, buffer allocation method and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7601727B2 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003087282A (en) | 2001-09-10 | 2003-03-20 | Nippon Telegr & Teleph Corp <Ntt> | Dynamic band allocation circuit, dynamic band allocation method, dynamic band allocation program, and recording medium |
| JP2007324886A (en) | 2006-05-31 | 2007-12-13 | Mitsubishi Electric Corp | Variable length frame buffer device |
| JP2013126034A (en) | 2011-12-13 | 2013-06-24 | Nippon Telegr & Teleph Corp <Ntt> | Communication apparatus and communication system |
| US20150215226A1 (en) | 2014-01-30 | 2015-07-30 | Marvell Israel (M.I.S.L) Ltd. | Device and Method for Packet Processing with Memories Having Different Latencies |
-
2021
- 2021-08-20 JP JP2021134586A patent/JP7601727B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003087282A (en) | 2001-09-10 | 2003-03-20 | Nippon Telegr & Teleph Corp <Ntt> | Dynamic band allocation circuit, dynamic band allocation method, dynamic band allocation program, and recording medium |
| JP2007324886A (en) | 2006-05-31 | 2007-12-13 | Mitsubishi Electric Corp | Variable length frame buffer device |
| JP2013126034A (en) | 2011-12-13 | 2013-06-24 | Nippon Telegr & Teleph Corp <Ntt> | Communication apparatus and communication system |
| US20150215226A1 (en) | 2014-01-30 | 2015-07-30 | Marvell Israel (M.I.S.L) Ltd. | Device and Method for Packet Processing with Memories Having Different Latencies |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023028714A (en) | 2023-03-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8964540B2 (en) | Method and apparatus for dynamically allocating upstream bandwidth in passive optical networks | |
| CN1929361B (en) | Transmission apparatus | |
| US7436765B2 (en) | Method and apparatus for dynamically allocating upstream bandwidth in passive optical networks | |
| KR100737523B1 (en) | Bandwidth Allocation Apparatus and Method for Security Guarantee in Ethernet Passive Optical Subscriber Network | |
| US8184976B2 (en) | Passive optical network system and operating method thereof | |
| KR100950337B1 (en) | Efficient Dynamic Bandwidth Allocation Apparatus and Method for TMD-based Passive Optical Subscriber Networks | |
| KR20040048102A (en) | Dynamic Bandwidth Allocation based on Class of Service over Ethernet Passive Optical Network | |
| JP2012518319A (en) | Output separation for dynamic bandwidth allocation in passive optical networks | |
| US11418261B2 (en) | Data transmission method and device | |
| US7633866B2 (en) | Data transmission system and method in EPON, and recording medium storing program of the same | |
| JP2008289202A (en) | Transmission apparatus and network system | |
| JP4639175B2 (en) | Transmission equipment | |
| JP7601727B2 (en) | Buffer allocation device, subscriber line termination device, buffer allocation method and program | |
| CN115866454B (en) | Uplink transmission resource allocation method and related equipment | |
| JP7601726B2 (en) | Buffer allocation device, subscriber line termination device, buffer allocation method and program | |
| KR100884168B1 (en) | Operation method of media access control protocol and Ethernet optical network system using same | |
| JP7557159B2 (en) | Bandwidth allocation device, subscriber line terminal device, and bandwidth allocation method | |
| KR100503417B1 (en) | QoS guaranteed scheduling system in ethernet passive optical networks and method thereof | |
| JP4957758B2 (en) | PON system and its home equipment | |
| KR100686809B1 (en) | Dynamic Bandwidth Allocation Method Supporting Quality of Service and Ethernet Optical Network System Using Them | |
| JP7366314B2 (en) | Station side equipment, optical communication system, band allocation method, control circuit, and storage medium | |
| WO2023162026A1 (en) | Optical line terminal and bandwidth allocation method | |
| JP6667427B2 (en) | Optical transmission device, optical concentrator network system, and data transmission instruction method | |
| JP2019146079A (en) | Station side termination device, subscriber side termination device, communication system, station side program, and subscriber side program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20210820 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231026 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240731 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240806 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240924 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20241029 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241122 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20241203 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20241205 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7601727 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |