JP2023028711A - Buffer allocation device, subscriber line terminal device, buffer allocation method and program - Google Patents
Buffer allocation device, subscriber line terminal device, buffer allocation method and program Download PDFInfo
- Publication number
- JP2023028711A JP2023028711A JP2021134583A JP2021134583A JP2023028711A JP 2023028711 A JP2023028711 A JP 2023028711A JP 2021134583 A JP2021134583 A JP 2021134583A JP 2021134583 A JP2021134583 A JP 2021134583A JP 2023028711 A JP2023028711 A JP 2023028711A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- queue
- buffer amount
- amount
- minimum
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、バッファ割り当て装置、加入者線端局装置、バッファ割り当て方法及びプログラムに関する。 The present invention relates to a buffer allocation device, a subscriber line terminal device, a buffer allocation method and a program.
アクセスサービスの高速化に対するニーズの高まりに応じて、FTTH(Fiber To The Home)が世界的に普及している。日本で主力となるFTTHサービスとして、例えば、ギガビット級の伝送速度を実現するGE-PON(Gigabit Ethernet PON)、及び10G-EPON(10Gigabit Ethernet PON)等がある。 FTTH (Fiber To The Home) has become popular worldwide in response to the growing need for high-speed access services. Mainstay FTTH services in Japan include, for example, GE-PON (Gigabit Ethernet PON) and 10G-EPON (10 Gigabit Ethernet PON), which realize gigabit-class transmission speeds.
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 in upstream communication from ONUs to OLTs. Also, one of the functions required to operate GE-PON and 10G-EPON as a system is a DBA (Dynamic Bandwidth Allocation) function. The DBA function is a bandwidth control function that dynamically allocates bandwidth in upstream communication according to traffic volume. The DBA function realizes efficient upstream bandwidth without generating unused bandwidth by appropriately switching the allocated bandwidth according to the status of upstream communication traffic flowing through each ONU.
DBA機能では、各ONUは、上り送信バッファに蓄積されている送信待ちの上りデータのデータ量を、REPORTフレームによってOLTに伝える。一方、OLTは、受信したREPORTフレームに基づいて、それぞれのONUが時間的に衝突することなく上りデータを送信することができるように、上りデータの送信開始時刻及び送信許可量をGATEフレームによって各ONUへ指示する。各ONUは、GATEフレームによって指示された送信開始時刻に、送信許可量に基づいて上りデータの送信を行う。このように、GATEフレームとREPORTフレームとを用いたやりとりによって、DBA機能が実現される。 In the DBA function, each ONU notifies the OLT of the amount of uplink data waiting for transmission accumulated in the uplink transmission buffer by means of a REPORT frame. On the other hand, based on the received REPORT frame, the OLT uses the GATE frame to set the transmission start time and transmission permission amount of the upstream data to each ONU so that each ONU can transmit the upstream data without time collision. Instruct the ONU. Each ONU transmits uplink data based on the transmission permission amount at the transmission start time indicated by the GATE frame. In this way, the DBA function is realized by exchanging data using the GATE frame and the REPORT frame.
ところで、1ユーザに複数のサービスを提供する場合、例えばVoIP(Voice over Internet Protocol)及び映像配信等の品質保証型の通信が多重する場合のサービス品質を確保するためには、優先制御機能が必要となる(非特許文献1参照)。優先制御機能により重要度の高いデータから優先的に送信することが可能になり、低優先のデータ(インターネットサービス)と高優先のデータ(VoIP及び映像配信等)とが同時に入力されたとしても、高優先サービスの品質を確保することが可能になる。 By the way, when providing multiple services to one user, for example, in order to ensure service quality when quality assurance type communication such as VoIP (Voice over Internet Protocol) and video distribution are multiplexed, a priority control function is required. (see Non-Patent Document 1). With the priority control function, it is possible to preferentially transmit data in order of importance. It becomes possible to ensure the quality of high-priority service.
一般的に、ONUは、上りデータの送信の優先制御を行う。ONUは、上りデータの送信タイミングを制御するため、大量のバッファを必要とする。そのため、ONUは、内部のPONチップに、上りデータを一時蓄積しておくための上り送信バッファ(以下、「内蔵バッファ」という。)を搭載している。また、この内蔵バッファは、複数の上り送信キューを備えている。なお、ここでいうPONチップとは、コスト低減のためにONUの主要機能がLSI(Large Scale Integration)化されたものである。 In general, ONUs perform priority control for transmission of uplink data. ONUs require a large amount of buffers in order to control the transmission timing of upstream data. Therefore, the ONU has an upstream transmission buffer (hereinafter referred to as "internal buffer") for temporarily storing upstream data in its internal PON chip. This built-in buffer also has a plurality of upstream transmission queues. The PON chip referred to here is an LSI (Large Scale Integration) of the main functions of the ONU for cost reduction.
但し、それでもPONチップに搭載された内蔵バッファだけでは、バッファ量が足りなくなる場合がある。この場合、例えばDDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)等の外付けの上り送信バッファ(以下、「外付けバッファ」という。)を追加して、2段バッファ構成とする必要がある。なお、この外付けバッファにも、複数の上り送信キューが備えられるように構成される。そして、内蔵バッファの各上り送信キューと外付けバッファの各上り送信キューとが、互いに一対一で対応付けられている。2段バッファ構成により、内蔵バッファに空きがない状態であっても、外付けバッファにバッファリングがなされるため、バッファオーバーフローの発生等を防止することができる。 However, even then, there are cases where the buffer capacity is insufficient only with the built-in buffer mounted on the PON chip. In this case, it is necessary to add an external upstream transmission buffer (hereinafter referred to as an "external buffer") such as a DDR SDRAM (Double-Data-Rate Synchronous Dynamic Random Access Memory) to form a two-stage buffer configuration. be. This external buffer is also configured to have a plurality of upstream transmission queues. Each upstream transmission queue of the built-in buffer and each upstream transmission queue of the external buffer are associated with each other on a one-to-one basis. Due to the two-stage buffer configuration, buffering is performed in the external buffer even when there is no free space in the built-in buffer, so that the occurrence of buffer overflow can be prevented.
しかしながら、従来、このような2段バッファにおいて、それぞれのバッファに対して必要十分なバッファ量を設定するための設定方法が明確に示されていなかった。そのため、設定されたバッファ量の全てを内蔵バッファに割り当てられない状態となること(以下、「オーバーサブスクリプション」という。)を防ぐために、余裕を持たせて外付けバッファのバッファ量を設定することができるようにしなければならなかった。これにより、送信バッファの装置コストが増大するという課題があった。 However, conventionally, in such a two-stage buffer, a setting method for setting a necessary and sufficient buffer amount for each buffer has not been clearly shown. Therefore, in order to prevent a state in which the entire set buffer size cannot be allocated to the internal buffer (hereafter referred to as "oversubscription"), the buffer size of the external buffer should be set with a margin. had to be able to As a result, there is a problem that the device cost of the transmission buffer increases.
本発明は、上記の点を鑑みてなされたものであり、送信データをバッファリングする機器をより低いコストで実装することができるバッファ割り当て装置、加入者線端局装置、バッファ割り当て方法及びプログラムを提供することを目的とする。 The present invention has been made in view of the above points, and provides a buffer allocation device, a subscriber line terminal device, a buffer allocation method, and a program that can implement equipment for buffering transmission data at a lower cost. intended to provide
本発明の一態様は、複数のキューの各々に対する要求バッファ量を示す情報を取得する取得部と、前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して、前記第1の記憶部の合計容量から前記第1の記憶部の最も優先度の低い前記キューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、前記第1の記憶部の最も優先度の低い前記キュー以外のキューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる設定部と、を備えるバッファ割り当て装置である。 According to one aspect of the present invention, an acquisition unit acquires information indicating a request buffer amount for each of a plurality of queues, and the request buffer amount for each queue is determined based on the lowest possible data accommodation efficiency in a first storage unit. to the first minimum converted buffer amount, and for the queue with the lowest priority in the first storage unit, the first minimum converted buffer amount and the minimum per cycle of the dynamic bandwidth allocation function allocate a buffer amount calculated based on the required buffer amount, and assign a buffer amount calculated based on the total capacity of the first storage unit to the queues other than the queue with the lowest priority in the first storage unit from the total capacity of the first storage unit. a first buffer amount, which is a buffer amount obtained by subtracting the buffer amount assigned to the queue with the lowest priority in the storage unit; A buffer allocation device comprising: a second buffer amount that is the sum of minimum converted buffer amounts; and a setting unit that allocates a buffer amount calculated based on.
また、本発明の一態様は、複数の上り送信キューの各々に対する要求バッファ量を示す情報を取得する取得部と、前記上り送信キューごとの前記要求バッファ量を内蔵バッファで生じうる最も低いデータ収容効率に基づいて第1最低換算データ長にそれぞれ換算し、前記内蔵バッファの最も優先度の低い前記上り送信キューに対して、前記第1最低換算データ長と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記内蔵バッファの最も優先度の低い前記上り送信キュー以外の上り送信キューに対して、前記内蔵バッファの合計容量から前記内蔵バッファの最も優先度の低い前記上り送信キューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、前記内蔵バッファの最も優先度の低い前記上り送信キュー以外の上り送信キューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる設定部と、を備える加入者線端局装置である。 Further, one aspect of the present invention is an acquisition unit that acquires information indicating a request buffer amount for each of a plurality of upstream transmission queues, The first minimum converted data length is converted based on the efficiency, and the first minimum converted data length and the dynamic bandwidth allocation function per cycle for the uplink transmission queue with the lowest priority of the built-in buffer and the minimum required buffer size, and assigning the built-in buffer from the total capacity of the built-in buffer to an uplink transmission queue other than the uplink transmission queue with the lowest priority of the built-in buffer. a first buffer amount that is a buffer amount obtained by subtracting a buffer amount allocated to the uplink transmission queue with the lowest priority of the built-in buffer; A subscriber line terminal equipment comprising: a second buffer amount that is the sum of minimum converted buffer amounts;
また、本発明の一態様は、複数のキューの各々に対する要求バッファ量を示す情報を取得する取得ステップと、前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して、前記第1の記憶部の合計容量から前記第1の記憶部の最も優先度の低い前記キューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、前記第1の記憶部の最も優先度の低い前記キュー以外のキューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる設定ステップと、を有するバッファ割り当て方法である。 According to another aspect of the present invention, an obtaining step of obtaining information indicating a request buffer capacity for each of a plurality of queues; is converted into the first minimum converted buffer amount based on the above, and for the queue with the lowest priority in the first storage unit, the first minimum converted buffer amount and per cycle of the dynamic bandwidth allocation function and the minimum required buffer capacity, and assigns the buffer capacity calculated based on the minimum required buffer capacity to the queues other than the queue with the lowest priority in the first storage section from the total capacity of the first storage section. A first buffer amount, which is a buffer amount obtained by subtracting a buffer amount assigned to the queue with the lowest priority in the first storage unit, and a buffer amount of the queues other than the queue with the lowest priority in the first storage unit and a setting step of allocating a buffer amount calculated based on a second buffer amount that is the sum of the first minimum converted buffer amounts.
また、本発明の一態様は、上記のバッファ割り当て装置としてコンピュータを機能させるためのプログラムである。 Another aspect of the present invention is a program for causing a computer to function as the above buffer allocation device.
本発明により、送信データをバッファリングする機器をより低いコストで実装することができる。 The invention allows equipment for buffering transmitted data to be implemented at a lower cost.
以下、本発明の実施形態について、図面を参照しながら説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[PONの構成]
FTTHサービスを高速かつ安価に提供する光アクセスシステムとしてPON(Passive Optical Network;受動光ネットワーク)がある。PONは、光-電気変換を行わず、低コストの受動素子である光スプリッタを用いて光信号を複数に分岐する。これにより、PONは、一心の光ファイバを複数ユーザで共有することによって、経済的なネットワークを実現することができる。日本において主力となるFTTHサービスとして、例えば、ギガビット級の伝送速度を実現するGE-PON及びGE-PONのさらに10倍の帯域を持つ10G-EPON等がある。
[PON configuration]
A PON (Passive Optical Network) is an optical access system that provides FTTH services at high speed and at low cost. A PON does not perform optical-to-electrical conversion, but uses low-cost passive optical splitters to split an optical signal into multiple parts. As a result, the PON can realize an economical network by sharing one optical fiber with a plurality of users. Mainstay FTTH services in Japan include, for example, GE-PON, which achieves gigabit-class transmission speeds, and 10G-EPON, which has ten times the bandwidth of GE-PON.
以下、本実施形態におけるPON1の全体構成について説明する。図1は、本発明の実施形態におけるPON1の全体構成図である。図1に示されるように、PON1は、OLT(Optical Line Terminal;加入者線端局装置)10と、複数の(図1においてはn台の)ONU(Optical Network Unit;加入者線終端装置)20と、光ファイバ30と、光スプリッタ40と、を含んで構成される。
The overall configuration of the
OLT10は、例えば通信事業者の局舎内に設置される。ONU20は、例えばユーザの宅内(又は構内)に設置される。光ファイバ30は、例えば通信事業者の局舎とユーザの宅内との間に敷設される。光スプリッタ40は、光ファイバ30を分岐する。OLT10とONU20との間に光信号を合分波する光スプリッタ40が設置されることによって、1つのOLT10に対して複数のONU20が接続される。
The OLT 10 is installed, for example, in the office of a telecommunications carrier. The ONU 20 is installed, for example, in the user's home (or premises). The
OLT10は、ONU20から送信された光信号を受信して、上位装置あるいは上位ネットワーク(例えば、インターネット等)へ転送する。また、OLT10は、上位装置あるいは上位ネットワークからの信号を受信して、各ONU20へ転送する。OLT10は、PON区間及びONU20を制御監視する役割を担う。 The OLT 10 receives the optical signal transmitted from the ONU 20 and transfers it to a host device or a host network (for example, the Internet, etc.). Also, the OLT 10 receives signals from a host device or a host network and transfers them to each ONU 20 . The OLT 10 plays a role of controlling and monitoring the PON section and the ONU 20 .
ONU20は、OLT10から送信された光信号を受信して電気信号に変換する。そして、ONU20は、変換された電気信号をユーザの端末装置(例えば、PC等)へ転送する。また、ONU20は、ユーザの端末装置から送信された電気信号を受信して光信号に変換する。そして、ONU20は、変換された光信号をOLT10へ転送する。
The ONU 20 receives the optical signal transmitted from the
PON1では、OLT10からONU20への方向の通信(以下、「下り通信」という。)においては、TDM(Time Division Multiplexing;時分割多重化)技術が用いられる。TDMは、複数のユーザの信号を時間的に重ならないように多重化して伝送する技術である。
In the
なお、下り通信では、OLT10から送信されて光スプリッタ40によって分岐された同一の信号(以下、「下り信号」という。)が、当該OLT10とつながる全てのONU20へ転送される。すなわち、各ONU20には、自己のONU20宛のデータ以外のデータも転送される。そのため、各ONU20は、転送されたデータから自己のONU20宛のデータだけを抽出し、それ以外の(他のONU20宛の)データを廃棄する。
In downstream communication, the same signal transmitted from the
また、PON1では、ONU20からOLT10への方向の通信(以下、「上り通信」という。)においては、TDMA技術が用いられる。上り通信では、光スプリッタ40によって複数のONU20からの信号(以下、「上り信号」という。)が合波される。そのため、各ONU20からの上り信号が無秩序に送信された場合、光ファイバ30上で衝突を起こしてしまう可能性がある。そこで、TDMAは、ONU20からの上り信号の送信タイミングと上りデータの送信量とを制御することによって、各ONU20からの上り信号が光ファイバ30上で衝突することなく多重化されるように制御する。
Also, in the
GE-PON及び10G-EPONをシステムとして動作させるために必要な機能の1つとしてDBA機能がある。DBA機能は、上り通信における帯域(以下、「上り帯域」という。)を、トラヒック量に応じて動的に割り当てる帯域制御機能である。DBA機能は、各ONU20からの上り通信のトラヒック(以下、「上りトラヒック」という。)に応じて、柔軟に上り帯域を割り当てることができる。DBA機能は、上りトラヒックが流れているONU20だけに上り帯域を割り当てるため、無駄なく上り帯域を使用することができる。DBA機能は、各ONU20に流れる上りトラヒックの状況に応じて、割り当てる帯域を適切に切り替えることで、未使用帯域を発生させることなく、効率的な上り帯域を実現する。
A DBA function is one of the functions required to operate GE-PON and 10G-EPON as a system. The DBA function is a bandwidth control function that dynamically allocates bandwidth in upstream communication (hereinafter referred to as "upstream bandwidth") according to traffic volume. The DBA function can flexibly allocate an upstream bandwidth according to the traffic of upstream communication from each ONU 20 (hereinafter referred to as "upstream traffic"). Since the DBA function allocates the upstream bandwidth only to the
GE-PON及び10G-EPONは、MPCP(Multi Point Control Protocol)と呼ばれるプロトコルを用いて上り信号の送信制御を行う。OLT10は、それぞれのONU20が時間的に衝突することなく上り信号を送信することができるように、それぞれのONU20に対して上り信号の送信開始時刻及び送信許可量を、GATEフレームによって指示する。
GE-PON and 10G-EPON control the transmission of upstream signals using a protocol called MPCP (Multi Point Control Protocol). The
一方、各ONU20は、自己のONU20の上り送信バッファに蓄積されている送信待ちの上りデータのデータ量を、REPORTフレームによってOLT10に伝える。このGATEフレームとREPORTフレームとが用いられることによって、DBA機能が実現される。
On the other hand, each
以下、DBA機能の仕組みを簡単に説明する。ONU20は、上りデータを受信すると、ひとまず上り送信バッファに上りデータを蓄積する。ONU20は、蓄積している上りデータのデータ量をREPORTフレームに記し、当該REPORTフレームをOLT10へ送信する。
The mechanism of the DBA function will be briefly described below. When the
OLT10は、受信したREPORTフレームから、ONU20に蓄積されている送信待ちの上りデータのデータ量を把握する。OLT10は、ONU20に割り当てるべき上り帯域を、当該ONU20の蓄積データ量及び他のONU20の使用帯域に基づいて計算する。具体的には、OLT10は、ONU20の上り信号の送信開始時刻と送信許可量とを算出する。OLT10は、算出した値をGATEフレームに記し、当該GATEフレームをONU20へ送信する。
From the received REPORT frame, the
ONU20は、受信したGATEフレームに記された指示に従って、指定された送信開始時刻に、指定されたデータ量(送信許可量)の上りデータを送信する。このとき、ONU20は、次回の上り帯域の割当のために、上り送信バッファに蓄積されている上りデータのデータ量をOLT10へ再度通知することもある。
The
上記の手順が繰り返されることで、OLT10は、各ONU20における上りトラヒックの状況を把握することができ、当該状況に応じて各ONU20に対し上り帯域を適切に割り当てることができる。
By repeating the above procedure, the
[ONUの構成]
以下、本実施形態におけるONU20の構成について説明する。図2は、本発明の実施形態におけるONU20の構成を示すブロック図である。図2に示されるように、ONU20は、TRx21と、MAC処理部22と、PHY23と、外付けバッファ24とを含んで構成される。
[Configuration of ONU]
The configuration of the
TRx(Transmitter/Receiver)21は、自装置とOLT10との間で光信号の送受信を行う光送受信器である。TRx21は、MAC処理部22から出力された上り送信用のデジタルデータ(電気信号)を光信号(上り信号)に変換して光ファイバ30に出力するとともに、OLT10から送信された光信号(下り信号)を受信し、受信された光信号をデジタルデータ(電気信号)に変換してMAC処理部22へ出力する。
A TRx (Transmitter/Receiver) 21 is an optical transmitter/receiver that transmits and receives optical signals between its own device and the
MAC(Media Access Control)処理部22は、データの送受信を制御するデータリンク副層の機能部である。MAC処理部22は、一般にPONチップを用いて構成される。MAC処理部22は、バッファ設定部220と、内蔵バッファ221とを含んで構成される。バッファ設定部220は、内蔵バッファ221及び外付けバッファ24のバッファ量を設定する。なお、以下の説明において、内蔵バッファ221と外付けバッファ24とを併せて「上り送信バッファ」ということがある。
A MAC (Media Access Control)
内蔵バッファ221及び外付けバッファ24は、例えば磁気ハードディスク装置又は半導体記憶装置等の記憶媒体を用いて構成される。内蔵バッファ221及び外付けバッファ24は、PHY23によって受信される上りデータを蓄積する。内蔵バッファ221及び外付けバッファ24は、それぞれ複数の上り送信キューを備える。なお、以下の説明において、内蔵バッファ221の上り送信キューを「内蔵キュー」、及び、外付けバッファ24の上り送信キューを「外付けキュー」ということがある。
The
PHY(PHYsical sublayer)23は、物理層の機能部である。PHY23は、自装置と下位装置(例えば、ユーザ通信端末等)とを接続する通信インタフェースである。PHY23は、下位装置から送信されたアナログ信号を取得してデジタル信号に変換し、変換されたデジタル信号をMAC処理部22へ出力する。また、PHY23は、MAC処理部22から出力されたデジタル信号を取得してアナログ信号に変換し、変換されたアナログ信号を下位装置へ送信する。
A PHY (PHYsical sublayer) 23 is a functional part of the physical layer. The
[上り送信バッファの設定方法]
以下、本実施形態におけるONU20による上り送信バッファの設定方法について、具体例を用いて説明する。図3~5は、本発明の実施形態におけるONU20による上り送信バッファの設定処理を説明するための図である。
[How to set up transmission buffer]
Hereinafter, a method for setting up transmission buffers 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 built-in
以下、内蔵バッファ221の上り送信キュー#0~上り送信キュー#3をそれぞれ内蔵キューq#0~内蔵キューq#3といい、外付けバッファ24の上り送信キュー#0~上り送信キュー#3をそれぞれ外付けキューQ#0~外付けキューQ#3という。
Hereinafter, 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]であるものとする。
Here, as shown in FIG. 3, the buffer size to be set for the built-in
次に、バッファ設定部220は、上記決定された内蔵キューq#0~内蔵キューq#3にそれぞれ設定したいバッファ量を、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量に換算する。ここでいう最低収容効率となるデータ長とは、上りデータが上り送信キューに収容される際にバッファ未使用領域が最も大きくなるデータ長である。バッファ設定部220は、上記換算されたバッファ量を、内蔵キューq#0~内蔵キューq#3にそれぞれ確保する上りデータのバッファ量(以下、単に「確保するバッファ量」ともいう。)として決定する。
Next, 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, it is assumed that the minimum accommodation efficiency in 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, it is assumed that the buffer amount corresponding to the data length of the maximum amount of transmission permission (Data Grant) of uplink data that can be granted is 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)が割り当てられる。
Here, as described above, the buffer amount A is 900 [KB] and the buffer amount B is 525 [KB]. Since the buffer amount A is larger than the buffer amount B, a buffer amount (buffer amount B) of 525 [KB] is allocated to the 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 amount of 525 [KB] is allocated to the built-in
ここでは、外付けバッファ24での最低収容効率は、1/1.2であるものとする。したがって、図3に示されるように、外付けキューQ#0に対し300[KB](=250×1.2)のバッファ量が割り当てられる。
Here, it is assumed that the minimum accommodation efficiency in the external buffer 24 is 1/1.2. Therefore, as shown in FIG. 3, a buffer amount of 300 [KB] (=250×1.2) is allocated to the external
次に、バッファ設定部220は、内蔵バッファ221(内蔵キューq#0~内蔵キューq#3)の合計容量から上記内蔵キューq#0に対して割り当てられたバッファ量を差し引いた残りのバッファ量(以下、「バッファ量X」ともいう。)と、最も優先度が低い内蔵キューq#0以外の内蔵キューである内蔵キューq#1~内蔵キューq#3に確保するバッファ量の合計(以下、「バッファ量Y」ともいう。)と、を比較することでオーバーサブスクリプションが発生しうるか否かを判定する。
Next, the
例えば、内蔵キューq#0~内蔵キューq#2で内蔵バッファ221の合計容量の全てが使い切られた場合、内蔵キューq#3のバッファ量は0[KB]となる。この場合、内蔵キューq#3の上りデータが取得されたとしても、内蔵キューq#3は当該上りデータを格納することができない。これにより、当該上りデータは、内蔵バッファにてオーバーサブスクリプションが発生し、格納できないデータは外付けバッファへ格納される。
For example, if the internal
次に、バッファ設定部220は、バッファ量Xがバッファ量Yより多い場合には、内蔵キューq#1~内蔵キューq#3に対して、それぞれ、上記の内蔵キューq#1~内蔵キューq#3に確保するバッファ量を割り当てる。一方、バッファ設定部220は、バッファ量Xがバッファ量Y以下である場合には、バッファ量Xを上記の内蔵キューq#1~内蔵キューq#3にそれぞれ設定したいバッファ量の比によって分配し、内蔵キューq#1~内蔵キューq#3に対してそれぞれ割り当てる。上記のように、バッファ量Xが内蔵キューq#1~内蔵キューq#3にそれぞれ設定したいバッファ量の比によって分配することで、内蔵バッファにおける上りデータのオーバーサブスクリプションの発生が回避される。
Next, when the buffer amount X is larger than the buffer amount Y, the
ここでは、図4に示されるように、内蔵バッファ221(内蔵キューq#0~内蔵キューq#3)の合計容量が1[MB](=1,024[KB])であるものとする。上記の通り、内蔵キューq#0に対して525[KB]のバッファ量が割り当てられている。そのため、内蔵キューq#1~内蔵キューq#3に割り当て可能なバッファ量(すなわち、バッファ量X)は、残りの499[KB](=1,024-525)である。
Here, as shown in FIG. 4, it is assumed that the total capacity of the built-in buffer 221 (built-in
また、図4に示されるように、内蔵バッファQ#1~Q#3に必要なバッファ量は、それぞれ、450[KB]、300[KB]、及び150[KB]である。そのため、これらのバッファ量(すなわち、バッファ量Y)の合計は900[KB]となり、499[KB]を超過する。したがって、バッファ量Xがバッファ量Y以下であることから、オーバーサブスクリプションが発生しうると判定され、499[KB]のバッファ量が、上記の内蔵キューq#1~内蔵キューq#3にそれぞれ設定したいバッファ量の比によって分配され、内蔵キューq#1~内蔵キューq#3に対してそれぞれ割り当てられる。
Further, as shown in FIG. 4, the buffer amounts required for the built-in
具体的には、図4に示されるように、内蔵キューq#1には249[KB](≒499×300/(300+200+100))のバッファ量が割り当てられ、内蔵キューq#2には166[KB](≒499×200/(300+200+100))のバッファ量が割り当てられ、内蔵キューq#3には83[KB](≒499×100/(300+200+100))のバッファ量が割り当てられる。
Specifically, as shown in FIG. 4, a buffer capacity of 249 [KB] (≈499×300/(300+200+100)) is allocated to the built-in
次に、バッファ設定部220は、外付けキューQ#1~外付けキューQ#3にそれぞれ割り当てるバッファ量を算出する。具体的には、上記においてバッファ量Xがバッファ量Y以下である場合に、バッファ設定部220は、外付けキューQ#1~外付けキューQ#3にそれぞれ確保するバッファ量のうち、上記の内蔵キューq#1~内蔵キューq#3に対するバッファ量の設定によって設定しきれなかった分のバッファ量を、外付けキューQ#1~外付けキューQ#3にそれぞれ割り当てる(なお、バッファ設定部220は、外付けバッファ24での最低収容効率となるデータ長に相当するバッファ量に換算する)。
Next, the
ここでは、上記の通り、内蔵キューq#1に対し249[KB]のバッファ量が割り当てられている。この249[KB]は物理サイズであることから、当初の内蔵キューq#1に設定したいバッファ量300[KB]うちの166[KB](≒249÷1.5)分のバッファ量が内蔵キューq#1に対して割り当てられたことになる。したがって、外付けキューQ#1には、当初の内蔵キューq#1に設定したいバッファ量300[KB]うちの残りの134[KB](=300-166)分のバッファ量が割り当てられる必要がある。
Here, as described above, a buffer amount of 249 [KB] is allocated to the built-in
ここでは、前述の通り、外付けバッファ24での最低収容効率は1/1.2としている。したがって、図5に示されるように、外付けキューQ#1に対し161[KB](≒134×1.2)のバッファ量が割り当てられる。
Here, as described above, the minimum accommodation efficiency in the external buffer 24 is 1/1.2. Therefore, as shown in FIG. 5, a buffer amount of 161 [KB] (≈134×1.2) is allocated to the external
また、ここでは、上記の通り、内蔵キューq#2に対し166[KB]のバッファ量が割り当てられている。この166[KB]のバッファ量は、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量であることから、当初の内蔵キューq#2に設定したいバッファ量200[KB]うちの111[KB](≒166÷1.5)分のバッファ量が内蔵キューq#2に対して割り当てられたことになる。したがって、外付けキューQ#2には、当初の内蔵キューq#2に設定したいバッファ量200[KB]うちの残りの89[KB](=200-111)分のバッファ量が割り当てられる必要がある。
Also, here, as described above, a buffer amount of 166 [KB] is allocated to the built-in
ここでは、前述の通り、外付けバッファ24での最低収容効率は1/1.2としている。したがって、図5に示されるように、外付けキューQ#2に対し107[KB](≒89×1.2)のバッファ量が割り当てられる。
Here, as described above, the minimum accommodation efficiency in the external buffer 24 is 1/1.2. Therefore, as shown in FIG. 5, a buffer amount of 107 [KB] (≈89×1.2) is allocated to the external
また、ここでは、上記の通り、内蔵キューq#3に対し83[KB]のバッファ量が割り当てられている。この83[KB]のバッファ量は、内蔵バッファ221での最低収容効率となるデータ長に相当するバッファ量であることから、当初の内蔵キューq#3に設定したいバッファ量100[KB]うちの55[KB](≒83÷1.5)分のバッファ量が内蔵キューq#3に対して割り当てられたことになる。したがって、外付けキューQ#3には、当初の内蔵キューq#3に設定したいバッファ量100[KB]うちの残りの45[KB](=100-55)分のバッファ量が割り当てられる必要がある。
Also, here, as described above, a buffer amount of 83 [KB] is allocated to the built-in
ここでは、前述の通り、外付けバッファ24での最低収容効率は1/1.2としている。したがって、図5に示されるように、外付けキューQ#3に対し54[KB](=45×1.2)のバッファ量が割り当てられる。
Here, as described above, the minimum accommodation efficiency in the external buffer 24 is 1/1.2. Therefore, as shown in FIG. 5, a buffer amount of 54 [KB] (=45×1.2) is allocated to the external
[ONUの動作]
以下、本実施形態におけるONU20の上り送信バッファの設定処理時における動作について説明する。図6は、本発明の実施形態におけるONU20の動作の一例を示すフローチャートである。なお、ここでは、内蔵バッファ221及び外付けバッファ24は、n個(nは、1以上の整数)の上り送信キューをそれぞれ備えているものとする。
[Operation of ONU]
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にそれぞれ確保するバッファ量として決定する。
Next, 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 it is necessary to allocate a buffer amount to the external queue Q#m (step S05: YES), the
次に、バッファ設定部220は、内蔵バッファ221(内蔵キューq#0~内蔵キューq#n-1)の合計容量から上記内蔵キューq#mに対して割り当てられたバッファ量を差し引いた残りのバッファ量(バッファ量X)と、最も優先度が低い内蔵キューq#m以外の内蔵バッファに確保するバッファ量の合計(バッファ量Y)と、を比較することでオーバーサブスクリプションが発生しうるか否かを判定する(ステップS07)。
Next, the
次に、バッファ設定部220は、バッファ量Xがバッファ量Yより多い場合(すなわち、オーバーサブスクリプションが発生しないと判例された場合。ステップS07・NO)には、内蔵キューq#m以外の各内蔵キューに対して、それぞれ所望のバッファ量(すなわち、内蔵キューq#m以外の各内蔵キューに確保するバッファ量)を割り当てる(ステップS08)。 Next, if the buffer amount X is greater than the buffer amount Y (that is, if it is determined that oversubscription does not occur; step S07: NO), the buffer setting unit 220 A desired buffer amount (that is, a buffer amount to be secured for each built-in queue other than the built-in queue q#m) is allocated to each built-in queue (step S08).
一方、バッファ設定部220は、バッファ量Xがバッファ量Y以下である場合(すなわち、オーバーサブスクリプションが発生しうると判定された場合。ステップS07・YES)には、バッファ量Xを上記の内蔵キューq#m以外の各内蔵キューにそれぞれ設定したいバッファ量の比によって分配し、内蔵キューq#m以外の各内蔵キューに対してそれぞれ割り当てる(ステップS09)。
On the other hand, if the buffer amount X is equal to or less than the buffer amount Y (that is, if it is determined that oversubscription may occur; step S07: YES), the
次に、バッファ設定部220は、外付けキューQ#m以外の各外付けキューにそれぞれ割り当てるバッファ量を算出する。具体的には、上記においてバッファ量Xがバッファ量Y以下である場合に(ステップS07・YES)、バッファ設定部220は、外付けキューQ#m以外の各外付けキューにそれぞれ確保するバッファ量のうち、上記の内蔵キューq#m以外の各内蔵キューに対するバッファ量の設定によって設定しきれなかった分のバッファ量を、Q#m以外の各外付けキューにそれぞれ割り当てる(なお、バッファ設定部220は、外付けバッファ24での最低収容効率となるデータ長に相当するバッファ量に換算する)(ステップS10)。以上で、図6のフローチャートが示すONU20の動作が終了する。
Next, the
以上説明したように、本実施形態におけるONU20は、上り送信キューごとの設定したいバッファ量に対し、当該バッファ量を内蔵バッファ221で最低収容効率となる場合のバッファ量に換算する。ONU20は、まず優先度が最も低い上り送信キューに内蔵バッファ221を優先的に割り当てる。このとき、ONU20は、設定したいバッファ量がDBA機能の1周期当たりに最低限必要なバッファ量より大きい場合には、当該最低限必要なバッファ量を内蔵バッファ221に割り当て、残りのバッファ量を外付けバッファ24に割り当てる。
As described above, the
このような構成を備えることで、本実施形態におけるONU20は、2段構成の上り送信バッファのバッファ量を適切に設定することができる。具体的には、外付けバッファ24は、内蔵バッファ221に収まらない上りデータを格納する。そしてベストエフォートクラスとして想定されたクラスであって、バッファの必要量が最も多いクラスである上り送信キュー#0に、十分なバッファ量を割り当てつつ、帯域保証クラスとして想定されたクラスである上り送信キュー#1~3に、DBA機能の1周期当たりに保証されているデータ量のみを内蔵バッファ221に確保することで、優先度に基づき効率的に上りデータを送信することができる。なお、ここでいうベストエフォートクラスとは、一般的なインターネットと同様の経済性や自由度を優先する通信サービスを提供するための品質クラスである。また、ここでいう帯域保証クラスとは、優先クラスであり、例えば、テレビ電話や、映像配信のようなリアルタイム性が要求される通信サービスの提供に適した品質クラスである。これにより、本実施形態におけるONU20によれば、低価格低容量のバッファを組み合わせて用いることが可能になり、より安価にONU20の必要性能を満たす構成とすることができる。よって、本実施形態におけるONU20によれば、送信データをバッファリングする機器をより低いコストで実装することができる。
With such a configuration, the
また、以上説明したように、本実施形態におけるONU20は、優先度が最も低い上り送信キュー以外の上り送信キューに対して、残りのバッファ量を割り当てる。このとき、ONU20は、設定したいバッファ量が内蔵バッファ221の合計容量を超えるオーバーサブスクリプションが発生しうる場合には、優先度が最も低い上り送信キュー以外の上り送信キューに対して、設定したいバッファ量の比で残りの合計容量を分配したバッファ量をそれぞれ割り当てる。
Also, as described above, the
このような構成を備えることで、本実施形態におけるONU20は、オーバーサブスクリプションの発生を防ぐことができ、外付けバッファ24に必要なバッファ量の増大を抑制することができる。
By providing such a configuration, the
上述した実施形態によれば、バッファ割り当て装置は、取得部と、設定部とを備える。
例えば、バッファ割り当て装置は、実施形態におけるONU20あるいはMAC処理部22であり、取得部は、実施形態におけるMAC処理部22の一部であり、設定部は、実施形態におけるバッファ設定部220である。取得部は、複数のキューの各々に対する要求バッファ量を示す情報を取得する。例えば、複数のキューは、実施形態における上り送信キュー#0~上り送信キュー#nであり、要求バッファ量は、実施形態における内蔵キューq#0~内蔵キューq#nにそれぞれ設定したい上りデータのバッファ量である。
According to the embodiments described above, the buffer allocation device comprises an obtaining 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の記憶部の最も優先度の低いキュー以外のキューに対して、第1の記憶部の合計容量から第1の記憶部の最も優先度の低いキューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、第1の記憶部の最も優先度の低いキュー以外のキューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる。例えば、第1の記憶部の最も優先度の低いキュー以外のキューは、実施形態における内蔵キューq#1~内蔵キューq#nである。
The setting unit converts the requested buffer amount for each queue into a first minimum converted buffer amount based on the lowest possible data accommodation efficiency in the first storage unit. For example, the first storage unit is the built-in
なお、上記のバッファ割り当て装置において、設定部は、第1の記憶部の最も優先度の低いキュー以外のキューに対して、第1バッファ量が第2バッファ量より多い場合は第1最低換算バッファ量をそれぞれ割り当て、第1バッファ量が第2バッファ量以下である場合は第1の記憶部の最も優先度の低い前記キュー以外のキューの要求バッファ量の比で第2バッファ量を分配したバッファ量をそれぞれ割り当てるようにしてもよい。 In the buffer allocation device described above, the setting unit assigns the first lowest conversion buffer if the first buffer amount is larger than the second buffer amount for the queues other than the lowest priority queue in the first storage unit. If the first buffer size is equal to or less than the second buffer size, the second buffer size is distributed according to the ratio of the requested buffer size of the queue other than the queue with the lowest priority in the first storage unit. You may make it each allocate an amount.
なお、上記のバッファ割り当て装置において、設定部は、第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量を示す必要バッファ量とを比較し、第1最低換算バッファ量が必要バッファ量より多い場合には第1の記憶部の最も優先度の低いキューに対して必要バッファ量を割り当て、第1最低換算バッファ量が必要バッファ量以下である場合には第1の記憶部の最も優先度の低いキューに対して第1最低換算バッファ量を割り当てるようにしてもよい。例えば、必要バッファ量は、実施形態におけるDBA機能の1周期当たりにOLT10によって付与されうる最大の上りデータの送信許可量(Data Grant)分に相当するデータ長に相当するバッファ量である。
In the buffer allocation device described above, the setting unit compares the first minimum converted buffer amount with the required buffer amount indicating the minimum required buffer amount per cycle of the dynamic bandwidth allocation function, and determines the first minimum converted buffer amount. If the buffer amount is larger than the required buffer amount, the required buffer amount is assigned to the queue with the lowest priority in the first storage unit. The first minimum converted buffer amount may be assigned to the queue with the lowest priority in the storage unit. For example, the required buffer amount is the buffer amount corresponding to the data length corresponding to the maximum uplink data transmission permission amount (Data Grant) that can be given by the
なお、上記のバッファ割り当て装置において、設定部は、第1の記憶部の最も優先度の低いキューに設定されなかった分のバッファ量を第2の記憶部で生じうる最も低いデータ収容効率に基づいて第2最低換算バッファ量に換算し、第2の記憶部の最も優先度の低いキューに対して第2最低換算バッファ量を割り当てるようにしてもよい。例えば、第2の記憶部は、実施形態における外付けバッファ24であり、第2最低換算バッファ量は、実施形態における外付けバッファ24での最低収容効率となるデータ長に相当するバッファ量であり、第2の記憶部の最も優先度の低いキューは、実施形態における外付けキューQ#0である。
In the buffer allocation device described above, the setting unit determines the amount of buffers not set in the queue with the lowest priority in the first storage unit based on the lowest possible data accommodation efficiency in the second storage unit. may be converted into a second minimum converted buffer amount by , and the second minimum converted buffer amount may be allocated to the queue with the lowest priority in the second storage unit. For example, the second storage unit is the external buffer 24 in the embodiment, and the second minimum converted buffer amount is the buffer amount corresponding to the data length that is the minimum accommodation efficiency in the external buffer 24 in the embodiment. , the queue with the lowest priority in the second storage unit is the external
なお、上記のバッファ割り当て装置において、設定部は、第1の記憶部の最も優先度の低いキュー以外のキューに設定されなかった分のバッファ量を第2の記憶部で生じうる最も低いデータ収容効率に基づいて第2最低換算バッファ量に換算し、第2の記憶部の最も優先度の低い前記キュー以外のキューに対して第2最低換算バッファ量を割り当てるようにしてもよい。例えば、第2の記憶部の最も優先度の低いキュー以外のキューは、実施形態における外付けキューQ#1~外付けキューQ#n-1である。
In the buffer allocation device described above, the setting unit assigns the amount of buffers not set in the queues other than the lowest priority queue of the first storage unit to the lowest possible data accommodation in the second storage unit. The efficiency may be converted into a second minimum converted buffer amount, and the second minimum converted buffer amount may be allocated to queues other than the queue with the lowest priority in the second storage unit. For example, queues other than the queue with the lowest priority in the second storage unit are external
上述した実施形態におけるONU20の一部又は全部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記録装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものを含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
A part or all of the
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiment of the present invention has been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and design and the like are included within the scope of 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
Claims (8)
前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して、前記第1の記憶部の合計容量から前記第1の記憶部の最も優先度の低い前記キューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、前記第1の記憶部の最も優先度の低い前記キュー以外のキューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる設定部と、
を備えるバッファ割り当て装置。 an acquisition unit that acquires information indicating a request buffer amount for each of a plurality of queues;
converting the request buffer amount for each of the queues into a first minimum converted buffer amount based on the lowest possible data accommodation efficiency of the first storage unit, and calculating the lowest priority queue of the first storage unit; allocates a buffer amount calculated based on the first minimum equivalent buffer amount and the minimum required buffer amount per cycle of the dynamic bandwidth allocation function, and assigns the highest priority of the first storage unit to 1st buffer capacity, which is the buffer capacity obtained by subtracting the buffer capacity allocated to the queue with the lowest priority in the first storage section from the total capacity of the first storage section for queues other than the queue with the lowest priority A setting unit that allocates a buffer amount calculated based on a buffer amount and a second buffer amount that is the sum of a first minimum converted buffer amount of a queue other than the queue with the lowest priority in the first storage unit. and,
Buffer allocation device with
請求項1に記載のバッファ割り当て装置。 When the first buffer amount is larger than the second buffer amount, the setting unit sets the first minimum converted buffer amount to each of the queues other than the queue with the lowest priority in the first storage unit. allocation, when the first buffer amount is less than or equal to the second buffer amount, the second buffer amount is distributed according to the ratio of the requested buffer amount of the queues other than the queue with the lowest priority in the first storage unit. 2. The buffer allocating apparatus of claim 1, each allocating a buffer amount.
請求項1又は2に記載のバッファ割り当て装置。 The setting unit compares the first minimum converted buffer amount with a required buffer amount indicating a minimum required buffer amount per cycle of the dynamic bandwidth allocation function, and determines the first minimum converted buffer amount as the required buffer amount. If it is larger than the buffer amount, the required buffer amount is allocated to the queue with the lowest priority in the first storage unit, and if the first minimum converted buffer amount is equal to or less than the required buffer amount, the 3. The buffer allocation device according to claim 1, wherein said first minimum converted buffer amount is allocated to said queue having the lowest priority in said first storage unit.
請求項1から3のうちいずれか一項に記載のバッファ割り当て装置。 The setting unit sets a buffer amount not set in the queue having the lowest priority in the first storage unit to a second minimum conversion buffer based on the lowest possible data accommodation efficiency in the second storage unit. 4. The buffer allocation device according to any one of claims 1 to 3, wherein the second minimum converted buffer amount is converted to an amount, and the second minimum converted buffer amount is allocated to the queue having the lowest priority in the second storage unit.
請求項4に記載のバッファ割り当て装置。 The setting unit adjusts the amount of buffer not set in the queue other than the queue with the lowest priority in the first storage unit based on the lowest possible data accommodation efficiency in the second storage unit. 5. The buffer allocation device according to claim 4, wherein the second minimum converted buffer capacity is converted into a second minimum converted buffer capacity, and the second minimum converted buffer capacity is allocated to a queue other than the queue with the lowest priority in the second storage unit.
前記上り送信キューごとの前記要求バッファ量を内蔵バッファで生じうる最も低いデータ収容効率に基づいて第1最低換算データ長にそれぞれ換算し、前記内蔵バッファの最も優先度の低い前記上り送信キューに対して、前記第1最低換算データ長と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記内蔵バッファの最も優先度の低い前記上り送信キュー以外の上り送信キューに対して、前記内蔵バッファの合計容量から前記内蔵バッファの最も優先度の低い前記上り送信キューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、前記内蔵バッファの最も優先度の低い前記上り送信キュー以外の上り送信キューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる設定部と、
を備える加入者線端局装置。 an acquisition unit that acquires information indicating a request buffer size for each of a plurality of upstream transmission queues;
Converting the request buffer amount for each of the upstream transmission queues into a first minimum converted data length based on the lowest possible data accommodation efficiency of the built-in buffer, for the uplink transmission queue with the lowest priority of the built-in buffer allocate a buffer amount calculated based on the first minimum converted data length and the minimum required buffer amount per cycle of the dynamic bandwidth allocation function, and the upstream transmission with the lowest priority of the built-in buffer a first buffer capacity, which is a buffer capacity obtained by subtracting a buffer capacity allocated to the uplink transmission queue with the lowest priority of the built-in buffers from the total capacity of the built-in buffers for the uplink transmission queues other than the queue; a setting unit that allocates a buffer amount calculated based on a second buffer amount that is the sum of the first minimum equivalent buffer amounts of the uplink transmission queues other than the uplink transmission queue with the lowest priority of the built-in buffer;
subscriber line terminal equipment.
前記キューごとの前記要求バッファ量を第1の記憶部で生じうる最も低いデータ収容効率に基づいて第1最低換算バッファ量にそれぞれ換算し、前記第1の記憶部の最も優先度の低い前記キューに対して、前記第1最低換算バッファ量と動的帯域割当機能の1周期当たりに最低限必要なバッファ量とに基づいて算出されるバッファ量を割り当て、前記第1の記憶部の最も優先度の低い前記キュー以外のキューに対して、前記第1の記憶部の合計容量から前記第1の記憶部の最も優先度の低い前記キューに割り当てられたバッファ量を差し引いたバッファ量である第1バッファ量と、前記第1の記憶部の最も優先度の低い前記キュー以外のキューの第1最低換算バッファ量の合計である第2バッファ量と、に基づいて算出されるバッファ量を割り当てる設定ステップと、
を有するバッファ割り当て方法。 an obtaining step of obtaining information indicating the amount of request buffers for each of the plurality of queues;
converting the request buffer amount for each of the queues into a first minimum converted buffer amount based on the lowest possible data accommodation efficiency of the first storage unit, and calculating the lowest priority queue of the first storage unit; allocates a buffer amount calculated based on the first minimum equivalent buffer amount and the minimum required buffer amount per cycle of the dynamic bandwidth allocation function, and assigns the highest priority of the first storage unit to 1st buffer capacity, which is the buffer capacity obtained by subtracting the buffer capacity allocated to the queue with the lowest priority in the first storage section from the total capacity of the first storage section for queues other than the queue with the lowest priority A setting step of allocating a buffer amount calculated based on a buffer amount and a second buffer amount that is the sum of a first minimum equivalent buffer amount of a queue other than the queue with the lowest priority in the first storage unit. and,
Buffer allocation method with
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021134583A JP2023028711A (en) | 2021-08-20 | 2021-08-20 | Buffer allocation device, subscriber line terminal device, buffer allocation method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021134583A JP2023028711A (en) | 2021-08-20 | 2021-08-20 | Buffer allocation device, subscriber line terminal device, buffer allocation method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023028711A true JP2023028711A (en) | 2023-03-03 |
Family
ID=85331174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021134583A Pending JP2023028711A (en) | 2021-08-20 | 2021-08-20 | Buffer allocation device, subscriber line terminal device, buffer allocation method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023028711A (en) |
-
2021
- 2021-08-20 JP JP2021134583A patent/JP2023028711A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8964540B2 (en) | Method and apparatus for dynamically allocating upstream bandwidth in passive optical networks | |
US7436765B2 (en) | Method and apparatus for dynamically allocating upstream bandwidth in passive optical networks | |
KR100415584B1 (en) | Dynamic bw allocation method in atm passive optical network | |
KR100737523B1 (en) | Bandwidth allocation device and method to guarantee qos in ethernet passive optical access network | |
JP2007074234A (en) | Transmission apparatus | |
JP4416053B1 (en) | PON system, station side apparatus in PON system, and control method thereof | |
US20100208747A1 (en) | Output demultiplexing for dynamic bandwidth allocation in passive optical networks | |
KR20060082516A (en) | Bandwidth allocation method and system for data transmission in epon | |
KR20090054761A (en) | Apparatus and method efficient dynamic bandwidth allocation for tdma based passive optical network | |
JP4639175B2 (en) | Transmission equipment | |
US11418261B2 (en) | Data transmission method and device | |
KR20190130863A (en) | Bandwidth allocating apparatus and method for providing low-latency service in optical network | |
JP2008289202A (en) | Transmitter and network system | |
KR101021329B1 (en) | Method for SLA-based dynamic bandwidth allocation for ethernet passive optical network | |
KR100884168B1 (en) | Media access control scheduling method and EPON system using the method | |
JP2023028711A (en) | Buffer allocation device, subscriber line terminal device, buffer allocation method and program | |
JP2023028714A (en) | Buffer allocation device, subscriber line terminal device, buffer allocation method and program | |
KR100503417B1 (en) | QoS guaranteed scheduling system in ethernet passive optical networks and method thereof | |
KR100686809B1 (en) | Dynamic bandwidth allocation method and EPON system supporting the QoS mechanism | |
WO2022269853A1 (en) | Bandwidth allocation device, subscriber line termination device, and bandwidth allocation method | |
JP5290917B2 (en) | Optical communication system and optical communication method | |
WO2023162026A1 (en) | Optical line terminal and bandwidth allocation method | |
JP4957758B2 (en) | PON system and its home equipment | |
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 |