トラヒッククラスとキュー長閾値に基づく
GE-PON における動的帯域割当アルゴリズム
M2010MM032 小川功
指導教員：奥村康行

1

はじめに近年, 音楽や動画配信といった大容量ファイル転送が一般化し, VoIP, テレビ電話などの広帯域サービスが広く普及してきている. GE-PON は, IEEE802.3ah で標準化され, これら現行の FTTH サービスを支える光アクセス技術として注目されている [1][2].
多様なサービスが同一のネットワーク上に混在している状況では, 輻輳の発生によるフレーム破棄の増加や遅延の増大が懸念される. また, データ転送時に求められる要件の異なるトラヒックが複数混在しているため, 優先的に転送すべきトラヒックの保護が課題となる.
また, 異なるサービスを同一のネットワークに収容する
場合, 一部のユーザや特定のアプリケーションによる大容量データ転送が他のトラヒックの妨げになり, ユーザ間,フロー間の公平性が失われる恐れがある.
本稿では, GE-PON ネットワーク上において, トラヒッ
クをプロトコルの別によりクラス分けし, クラス間のスループットの観察結果に基づいて TCP トラヒックに優先的に帯域を割り当て, 同時に UDP トラヒックの過剰な送信を制限することにより, クラス間の転送速度の平等性を保つ動的帯域割当方式 (DBA) を提案し, 計算機シミュレーションによりその効果を示す.

2

図 1 グラント・リクエスト方式

グラント・リクエスト方式

PON における上り帯域の割り当て方式として, グラン
ト・リクエスト方式が提案されている [3]. 図 1 にグラン
ト・リクエスト方式の概略図を示す. 各 ONU はそれぞれの送信バッファに蓄積しているデータ量を REPORT フレームに載せて OLT に通知し, 送信帯域の割り当てを要求する. OLT はすべての ONU からの REPORT フレームを集約し, OLT 内のバッファ残量を元に, それぞれのONU に対する送信許可帯域を決定し, GATE フレームに載せて各 ONU に通知する. GATE フレームを受信した
ONU は, GATE フレーム内で指定された送信時間にデータフレームを送出する. このとき同時に, その時点でのONU 上のバッファサイズを REPORT フレームにて送信する.
2.1きないためである. この場合, 各周期において, ONU 一台あたり最大 MTU 分の帯域ロスが発生することになる.
この帯域ロスを軽減するため, REPORT フレームに複数のフレーム区切り情報を付加し, フレーム区切りを意識することで効率的な帯域割り当てを実現する複数リクエスト方式が提案されている [3].

複数リクエスト方式

図 2 に, グラント・リクエスト方式を用いた場合のある周期の各論理リンクへの帯域割当例を示す. ONU からバッファサイズを OLT に通知する際, 全バッファサイズのみを通知 (単一リクエスト方式) した場合, OLT による割り当て帯域とその範囲内で実際に送出できるデータ量に差が生まれ, 帯域使用効率が低下する. これは ONU がデータフレームを送出する際, OLT から許可された送信許可データ量以下の最大フレーム区切りまでしか送出で図 2 単一リクエスト方式
図 3 に複数リクエスト方式を用いる際の ONU の送信バッファの様子を示す. 複数リクエスト方式では, ONUのバッファに閾値を設け, 全バッファサイズ (バッファサイズ #1) とともに, 一定の閾値以下で最大のフレーム区切り (バッファサイズ #2) を, REPORT フレームによって OLT に通知する.
図 4 に複数リクエスト方式を用いた場合の帯域割当例を示す. 複数リクエスト方式を使用した場合, 閾値以下の最大フレーム区切りの情報を元に, 一定のグラント周期内に効率よくフレームを配置するよう OLT が帯域割り当てを行うため, 帯域のロスが最低限に抑えられる. 単一リク
エスト方式の場合 ONU 一台あたり最大 MTU 分のロスが発生するのに対し, 複数リクエスト方式では各周期毎に最大 MTU 分のロスしか発生しない.

3

提案する DBA アルゴリズム

一部の ONU による UDP 大容量データ転送など, 他のトラヒックを圧迫するようなトラヒックは, TCP トラヒックのデータ転送等の妨げとなる. 本稿で提案する DBA アルゴリズムでは, トラヒックをプロトコル毎にクラス分けし, TCP トラヒックに対し優先的に帯域を割り当てると共に, OLT 上の送信バッファから送出されるデータのスループットをクラス単位で観察し, 複数クラス間の均衡が崩れた場合, GATE フレームにより ONU に対する送信制御を行う.

3.1

クラス間の公平性

新たに提案するアルゴリズムでは, OLT からバックボーンネットワークへのデータ転送状況をクラス毎に観察し,TCP クラスと UDP クラスのスループット比を一定の範囲内に保つことでクラス毎の公平性を保つ. 本稿では, ある
周期 k の UDP クラスのフロー毎のスループット (T hrp1,k )と TCP クラスのフロー毎のスループット (T hrp2,k ) 間の公平性 Fk を次式のように定義する.

図 3 複数リクエスト方式

Fk =

図 4 複数リクエスト方式

2.2

帯域制御方式

複数リクエスト方式 [1] では, 帯域割り当てを論理ポート単位で行っており, ある周期の実際の送信データサイズ(bw realj,k , j:論理ポート番号, k:周期) と, 各論理ポートの理想的割当量 (bw idealj,k ) の差分 (bw excessj,k ) を過剰割当量として記憶し, 次周期の理想割当量の算出に反映させている.

bw excessj,k = bw realj,k − bw idealj,k(1)bw idealj,k = bw targetj,k − bw excessj,k−1(2)

bw targetj,k は ONU#j の周期 k における目標帯域であり, 最低帯域 (bw minj ) を保障したシェアドアクセスサー
ビスの場合, 1 周期の最大割当帯域を bw cycle, その周期に送信要求する ONU 数を Rj,k とすると, bw targetj,k は次式で表わされる.
bw minj,i∈Rj,k bw min

bw targetj,k = bw cycle · P(3)when Rj,k > 0T hrp2,kT hrp1,k(4)Fk が 1 に近いほど T hrp1,k と T hrp2,k が公平であるといえる. Fk が予め定めた値 A を下回った場合, 各クラスの帯域割当のバランスが崩れたと判断し, UDP クラスを収容する ONU に対し帯域割当制御を行う. A の値は,UDP クラスのスループットがどの程度まで TCP クラスのスループットを圧迫することを許容するかを決定するものであり, 予め任意の値を定めるものとする.
TCP はネットワークの輻輳を検知し, フロー制御をおこなうため, UDP フローが無制御の状態で同一ネットワーク上に存在すると UDP に帯域を圧迫されて TCP スループットは著しく低下する. 本アルゴリズムでは UDP フローによる TCP フローの圧迫を防ぎ, TCP スループットを高く維持することを目標とする.
3.2

帯域制御方式

帯域の割り当ては, 複数リクエスト方式の帯域割り当て方式に沿って行う [3][4]. さらに, 本アルゴリズムでは,ONU から OLT に帯域割当要求をする際, ONU が送信しようとしているデータのプロトコルの種類を REPORTフレームに載せて送信する. OLT が各 ONU からの REPORT フレームを受信した際, ONU が送出しようとしているデータフレームが TCP か UDP かを判別し, TCP トラヒックに対し優先的に帯域を割り当てる.
OLT は各 ONU から REPORT フレームを受信した際,TCP トラヒックの帯域割り当てを要求している ONU から順に帯域を割り振っていく. そして TCP トラヒックへの帯域の割り当てが完了した時点で帯域に余りがあれば,順次 UDP トラヒックに割り当てる.
ある周期における最大許可帯域を bw periodk , 実際の送信データ量を bw realj,p,k (j:ONU 番号, p:クラス (p =1, 2), k:周期), TCP クラスへの帯域割り当てが完了した

時点での残りの帯域を bw margink としたとき,bw margink = bw periodk −X

bw realj,2,k4(5)jであり,bw margink > 0(6)であれば bw margink を UDP クラスに割り付ける.
ここで, 公平性の指標 Fk > A の場合, クラス間のバランスが崩れていると判断し, α · bw margink (α < 1) をUDP クラスに対して割り当てる.
いずれの場合も, bw targetj,k は次式を満たす必要がある.

X

bw targetj,k = bw period

(7)

j

3.3

割当帯域の決定方法

ある周期において, まず TCP クラスへの帯域割当を行う. この時, TCP クラスは ONU バッファに設けた閾値以下の最大フレーム区切り (バッファサイズ #2) を割り当てる. これにより, TCP クラスは毎回の送信時に少なくともバッファサイズ #2 分の帯域は確保されることになる.
TCP クラスへの割り当てが完了し, 帯域に余裕がある場合は, 残りの帯域を UDP クラスに順に割り当てる. この時, TCP クラス同様バッファサイズ #2 を割り当てて行き, 最後の ONU のみバッファサイズ #1 を割り当てる.
UDP クラスの割り当ては先頭から順に行うのではなく,前周期の過剰割当量 bw excessj,k−1 をパラメータとして行う. bw excessj,k−1 が最少であった ONU, すなわち前周期の理想割当量に対する実際の割当量が最も小さかった ONU に対し最初に割り当てを行い, その後さらに帯域が残っている場合は bw excessj,k が次に小さかった ONUに対し帯域を割り当てる.
TCP クラスへの割り当てが完了した時点で, 各クラスのバランスが崩れていた場合 (Fk < A), OLT は UDP クラスに帯域を割り当てる際, 余剰帯域の一部のみを割り当てる. このときの UDP クラスへの割当帯域の合計はα·margink (α < 1) であり, α は任意に決定する. 帯域の一部のみを UDP クラスへに割り当てた場合, 割当完了後に(1 − α) · margink だけ帯域に余裕ができる. この帯域は通常の割当時同様, 前周期の過剰割当量 bw excessj,k−1をパラメータとし, TCP クラスを収容する ONU の内bw excessj,k−1 が最少であった ONU, すなわち前周期の理想割当量に対する実際の割当量が最も小さかった ONUから順に割り当てられる.
また, 本アルゴリズムは TCP と UDP が混在した状況を想定した物であり, TCP/UDP いずれかのフローしかネットワーク上に存在しない場合には Fk を無視し, 帯域割り当てを実行する事を想定している.

有効性の検証提案した DBA アルゴリズムを用いてシミュレーションを行った. 図 5 にネットワークトポロジを示す. 接続
ONU 台数は 8 台, グラント周期は 0.22ms とする. ONUとユーザの転送速度は 100Mbps で, 各 ONU にはそれぞれTCP/UDP のいずれか 1 フローが収容されている. ONUの送信バッファに設ける閾値は, バッファサイズ #1 が無限大 (全バッファサイズ), バッファサイズ #2 が 340 バイトとした. フレームサイズは 1000 バイト固定で, UDPフレームの送信は 100Mbps の連続信号とする. OLT からバックボーンネットワークへの転送速度は 100Mbps である.
本稿では ONU への収容クラスについて, UDP が TCPより多い場合と, TCP が UDP より多い場合に分け, 2通りのトポロジにおけるシミュレーション結果を示す.
ONU#1 および ONU#2 の 2 台の ONU に TCP トラヒッ
クを収容し, 残りの 6 台の ONU に UDP トラヒックを収容した場合をシミュレーション (1), ONU#1 から ONU#6の 6 台に TCP トラヒックを収容し, 残りの 2 台の ONUに UDP トラヒックを収容した場合をシミュレーション(2) とする. 公平性に関しては, 公平性指標 F k の下限値
A = 0.9 とし, α = 0.5 とした. また, 有効性の検証のため, 先行研究 [3] のアルゴリズムを使用した場合の結果と比較している.

図 5 ネットワークトポロジ

4.1

シミュレーション結果

図 6 に, シミュレーション (1) において先行研究方式と提案方式それぞれを適用した場合の帯域使用効率を示す.
フレーム送信開始は 0.5 秒後とし, グラフは 97%以上の部分のみを示している. 送信開始後, 帯域使用効率は急速に上昇し, いずれの方式を適用した場合もほぼ同等の結果を示した.

図 6 帯域使用効率 (TCP 2 台, UDP 6 台)

図 7 に, 先行研究の方式と提案方式における, 公平性の指標 Fk の時間遷移を示す. フレーム送信開始は 0.5 秒後であり, グラフは TCP/UDP 双方のスループットの安定した 0.6 秒以降の結果を示している. 先行方式では, UDPフローによる TCP フローの圧迫が抑制できず, Fk は常に低い値を示している. これは, クラス間のバランスが崩れ, UDP フローが TCP フローを圧迫した状態が続いていることを示している. これに対し提案方式では, クラス毎のスループットのバランスが崩れた際, 残帯域の UDPへの割当を制限し, 空き帯域を TCP クラスに割り当てた
為, グラフが示すように, Fk は 1.0 を若干上回ったまま,1.0 近辺を推移している. 各クラスのスループットが完全に平等となった場合 Fk = 1 となることから, この値はクラス間のバランスが保たれていることを示している.

図 9 公平性指標 Fk の時間遷移 (TCP 6 台, UDP 2 台)
シミュレーション (1),(2) の結果から, TCP フローが多数を占めるシミュレーション (2) のようなネットワークトポロジにおいては本提案方式と先行方式はフロー間の公平性の観点においてほぼ同等の結果を示したが, UDP コネクションが TCP コネクションより多く, UDP フローが TCP フローを圧迫するシミュレーション (1) のような状況において, Fk の示す結果から, 提案方式の有効性が確認できた.

5
図 7 公平性指標 Fk の時間遷移 (TCP 2 台, UDP 6 台)
図 8 に, シミュレーション (2) における各方式適用時の,帯域使用効率の時間遷移を示す. フレーム送信開始は 0.5秒後とし, グラフは 97%以上の部分のみを示している. シ
ミュレーション (1) 同様, 帯域使用効率についてはほぼ同等の結果を示した.

むすび

本稿では, GE-PON において, トラヒックをプロトコルの別によりクラス分けし, TCP トラヒックの割当帯域を優先的に確保するとともに, トラヒックのクラス単位のスループットを元に帯域割当を行うことでクラス間の割当帯域の公平性を保つ動的帯域割当アルゴリズムを提案し,複数のトポロジにおける計算機シミュレーションによりその効果と特徴を示した.
シミュレーション結果から, UDP クラスが多数を占めるネットワークにおいては本提案方式が公平性の点で有効であることを確認した. また, TCP クラスが多数を占めるようなネットワークにおいては, 提案方式と先行研究の方式とでほぼ同等の性能となることから, ネットワーク状況によって効果が変動する事がわかった.
本方式を適用する場合, ONU の送信バッファに設けられるキュー長閾値と任意に定める値 α, および公平性指標
Fk の下限値 A により各クラスのスループットは変動する. 今後の課題として, これらのパラメータの最適値の導出が挙げられる.

図 8 帯域使用効率 (TCP 6 台, UDP 2 台)

参考文献
図 9 に, シミュレーション (2) における各方式適用時の,公平性指標 Fk の時間遷移を示す. シミュレーション (1)と同様に, 0.6 秒以降の結果を示している. シミュレーショ
ン (1) において, 提案方式に大きな優位性が見られたが,シミュレーション (2) においては Fk はどちらの方式もほぼ同じ水準を示しており, 提案方式と先行方式とでほぼ同等の結果となった. シミュレーション (1) では UDP クラ
ス収容 ONU 数が多数であったため, UDP フローによるTCP フローの圧迫が顕著に現れ, 先行方式がフロー間の公平性を欠いたが, TCP クラス収容 ONU が多数である
シミュレーション (2) では, UDP フローによる TCP フローの圧迫が起こりにくく, 結果としていずれの方式でもほぼ公平な帯域割当が実現したものと考えられる.

[1] 岩田 敏行, 中西 泰彦, 前田 洋一, PON 型アーキテ
クチャアクセスにおけるトラヒック制御方式の提案,
信学論 (B), vol.J89-B, no.5, pp.705-719, 2006.
[2] 小原 一歩, 宮崎 典行, 田中啓仁, 枝川 登, GE-PONにおける下り TCP スループットの公平性に関する検討, 信学技報 IA2006-5, pp.25-28, May. 2006.
[3] 吉原 修, 太田 憲行, 三鬼 準基, 低遅延・高効率を実現する GE-PON 用動的帯域割当アルゴリズム, 信学技報 NS2002-18, Apr. 2002.
[4] 小川 功, 奥村 康行, トラヒック優先度とキュー長閾値に基づく動的帯域割り当てアルゴリズム, 信学技報,
vol. 110, no.373, IN2010-121, pp.19-23, Jan. 2011.