190 likes | 282 Views
Advanced Network Architecture Research Group. 高速バックボーンネットワークにおける 公平性を考慮した 階層化パケットスケジューリング方式. 大阪大学 大学院基礎工学研究科情報数理系専攻 博士前期課程 牧 一之進. 発表内容. 研究の背景 研究の目的 階層化パケットスケジューリング方式の 提案 評価モデル シミュレーションによる評価 まとめと今後の課題. 公平なインターネットの構築 各ユーザフローを公平にサービス. 研究の背景. インターネットのインフラ化 ユーザのアクセス帯域の増加
E N D
Advanced Network Architecture Research Group 高速バックボーンネットワークにおける公平性を考慮した階層化パケットスケジューリング方式 大阪大学 大学院基礎工学研究科情報数理系専攻 博士前期課程 牧 一之進 ネットワークシステム研究会
発表内容 • 研究の背景 • 研究の目的 • 階層化パケットスケジューリング方式の 提案 • 評価モデル • シミュレーションによる評価 • まとめと今後の課題 ネットワークシステム研究会
公平なインターネットの構築 各ユーザフローを公平にサービス 研究の背景 • インターネットのインフラ化 • ユーザのアクセス帯域の増加 • 特定のユーザのみが大きな帯域を占有 ネットワークシステム研究会
従来の研究 • CSFQ (Core Stateless Fair Queueing) • エッジルータでレートを測定してパケットヘッダに書きこむ • コアルータでそのレートをもとに動的に廃棄確率を決定する ヘッダの拡張が必要であり、すべてのエッジ ルータを更新する必要がある。 • DRR (Deficit Round Robin) • フロー毎にキューを設けてスケジューリング コアルータでもすべてのフローに対してキュー を設ける必要があるので実装が困難 ネットワークシステム研究会
エッジからコアまで適用できてスケーラブル 研究の目的 • ヘッダの拡張がなくフロー毎の情報をもたないパケットスケジューリング方式の提案 • 基本的にDRRのようなper-flowのスケジューリング • 扱うべきフロー数にしたがってフローを集約 ネットワークシステム研究会
提案方式(Hierarchically Aggregated Fair Queuing)の概要(1/3) Zombie List Zombie List Zombie List HAFQ 各キューに収容された フロー数を推定する Zombie List 1 2 2 Zombie List 2 Hashing 2 3 4 1 1 4 1 4 ○ Input Output 3 3 Zombie List 1 各フローのパケットを振り分ける ネットワークシステム研究会
提案方式(Hierarchically Aggregated Fair Queuing)の概要(2/3) counter Flow Id 3 1 2 7 1 5 4 7 ゾンビリスト : {Flow Id, counter}を 1つの組とする 過去に到着したフロー に関する履歴 すべてのフローの情報は必要ない • そのキューに収容されたフロー数を推定する • 同一キュー内でより多くの帯域を使用している フローを発見する ネットワークシステム研究会
2 3 1 4 2 提案方式(Hierarchically Aggregated Fair Queuing)の概要(3/3) HAFQ フロー数に比例した帯域を 動的に割り当てる Zombie List 2 2 1 Zombie List Hashing 3 4 2 1 2 4 1 4 1 ○ Input Output 3 3 1 Zombie List ネットワークシステム研究会
2 counter Flow Id 3 1 Count Up 2 8 1 5 4 7 ゾンビリスト内に到着して来たフローのIDがあれば、 そのゾンビのカウンタ値を1増やす ゾンビリスト(リスト内にIDがあるとき) • パケットがルータに到着したときのゾンビリストの動作 • ゾンビリストをすべて検索する 少ないエントリ数で、できる限り多くのフローを 管理する counter Flow Id 3 1 2 2 7 7 1 5 Hit 4 7 ネットワークシステム研究会
ゾンビリスト(リスト内にIDが存在しないとき)ゾンビリスト(リスト内にIDが存在しないとき) Swap (Prob : q) counter counter Flow Id Flow Id 3 3 1 1 1 2 3 7 1 1 5 5 4 4 7 7 No-Swap (Prob : 1-q) ゾンビリスト内に到着して来たフローのIDがなければ、 q の確率で置き換え、カウンタ値を1に初期化する。 1-q の確率で何もしない。 counter Flow Id 3 1 3 2 7 1 5 4 7 Miss Hit ネットワークシステム研究会
SREDのフロー数推定アルゴリズム 2 2のある確率: 1/N N : フロー数 2 レートにかたよりがある場合、うまくいかない SREDのフロー数推定方式 各フローのレートがほぼ一定であると仮定 Flow Id 比較の際、同じ である確率: p (ヒット率) 2 5 7 N = 1/p ネットワークシステム研究会
提案方式のフロー数推定アルゴリズム(1/2) l i l l N å l l N = avg avg avg i = 1 i レートにかたよりがある場合にもフロー数を正しく推定できる 1 推定フロー数= R avg : フローiのレート (1) : 全フローの平均レート N å N l = N : フロー数 i = i 1 フロー数 = 全到着レート / 全フローの平均レート を全到着レートに占めるフローi のレートの割合として、 から推定フロー数を求める ネットワークシステム研究会
提案方式のフロー数推定アルゴリズム(2/2) 平均をとるさいに、重みをつける エントリ数を動的に減らし、常にフロー数がエントリ数 より大きくなるようにする の計算は、ゾンビの内容が置き換えられるときに行う このときのカウンタ値が、そのフローのレートに比例 問題点 • レートの高いフローが存在する場合、他のフローよりも 多く平均到着割合に組み入れられる • フロー数がエントリ数より少ない場合、定常状態で カウンタ値が発散してしまう ネットワークシステム研究会
14 5 14 カウンタ値が大きいフローのパケットを 優先的に廃棄 カウンタによる廃棄 • 各キュー間の公平性は保たれる ところが同一キュー内の公平性は 保たれない • ゾンビのカウンタ値が大きければ大きい ほど、そのフローは他のフローよりも多く の帯域を使用 counter Flow Id 1 3 2 2 5 14 7 2 ネットワークシステム研究会
評価モデル(シングルリンクモデル) フロー数: 64本 帯域 : 155 [Mbps] 伝播遅延時間 : 1 [ms](bottleneck link) 0.1 [ms](access link) Sender Hosts Receiver Hosts R1 S1 Bottleneck Link Router Router S64 R64 ネットワークシステム研究会
推定フロー数の評価 ●1秒毎にフロー数を2倍にしていく、キュー数を1とし、ゾンビ数を4とする TCP : 32本 UDP(3.2Mbps) : 32本 TCPのみ64本 100 100 SRED SRED HAFQ HAFQ HAFQ(DROP) HAFQ(DROP) 80 80 Number of flows Number of flows 60 60 40 40 20 20 0 0 0 2 4 6 8 10 0 2 4 6 8 10 Time(s) Time(s) SREDに比べてHAFQは推定フロー数が実際の数に近い ネットワークシステム研究会
各フローのスループットの評価 3.5 3.5 3 3 Throughput[Mbps] Throughput[Mbps] 2.5 2.5 2 2 FIFO,TailDrop FIFO,TailDrop HAFQ 1.5 HAFQ 1.5 HAFQ(DROP) HAFQ(DROP) 1 1 0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70 Flow Id Flow Id TCP : 32本 UDP(3.2Mbps) : 32本 ●各フローは同時に送信を開始する TCPのみ64本 レートの高いフローが存在する場合、HAFQ(DROP)では高い公平性を実現 ネットワークシステム研究会
フロー数を変化させた場合の評価 HAFQ: DRRと同等の性能(フロー数が少ないとき) 従来手法に比べて高い公平性を実現(フロー数が多いとき) DRR: キュー数64とし、フロー数が64本を 越えるとき、ランダムにキューイング HAFQ: CRC16でハッシング キュー数64,ゾンビ数4 TCPのみ TCPとUDPが混在 1 1 Fairness Index Fairness Index 0.8 0.8 0.6 0.6 FIFO,TailDrop FIFO,TailDrop DRR DRR 0.4 0.4 HAFQ HAFQ HAFQ(DROP) HAFQ(DROP) 0.2 0.2 1 4 16 64 256 1024 4 8 16 32 64 128 256 1024 Number of flows Number of flows ネットワークシステム研究会
まとめと今後の課題 • まとめ • エッジルータやコアルータの能力に応じて スケーラブルに実装可能なパケットスケジューリング方式の提案 • フロー毎の優れた公平性を実現 • 今後の課題 • ルータを多段に配置した場合の影響 • 既存のルータと共存できるのか? ネットワークシステム研究会