• 検索結果がありません。

Microsoft PowerPoint - ns0601.ppt

N/A
N/A
Protected

Academic year: 2021

シェア "Microsoft PowerPoint - ns0601.ppt"

Copied!
26
0
0

読み込み中.... (全文を見る)

全文

(1)

ソフトウェアによる精密ペーシング方式を

用いたTCP通信性能の改善

高野了成

1,2

,工藤知宏

1

,児玉祐悦

1

松田元彦

1

,岡崎史裕

1

,石川裕

3,1 1)

産業技術総合研究所, グリッド研究センター

2)

株式会社アックス

3)

東京大学

2006年1月27日 電子情報通信学会 ネットワークシステム研究会@大阪工業大学

(2)

2/24

発表の流れ

• 背景

– 高速長距離ネットワークにおけるTCPの問題

– 既存のペーシング実装の問題

• ギャップパケットを用いたペーシングの実現

• PSPacerの実装方法

• 評価

• まとめ

(3)

3/24

TCPのフロー制御

• ウィンドウ制御

– RTT(Round Trip Time)内に送出するパケット量の決定 – 輻輳ウィンドウ(cwnd)がネットワークの帯域遅延積 (BDP)に一致することが理想

• バースト制御

– パケット送出タイミングの決定 – ACK受信をパケット送信のトリガとすることで,RTT内で 均等にパケットを送出する(ACKクロッキング)

(4)

4/24

ACKクロッキングとバースト送信

• ACKクロッキングによりバースト送信を平滑化する

– 入出力帯域の差分が,ボトルネックルータのバッファ サイズを超えると,パケットが破棄される 1 Gbps 500 Mbps 500 Mbps Time Time RTT(100ms) ON-OFFトラフィック バースト送信が 平滑化されたトラフィック (GbE,ボトルネック帯域 500Mbps,RTT 100msの場合)

• 単純で効果的な方法だが,常に有効とは限らない

– 例えば,スロースタート,ACK圧縮 平均帯域 500 Mbps 平均帯域 500 Mbps 3.125MB

(5)

5/24

ペーシング

• ACKクロッキングの代わりに,目標帯域に基づいて

パケット送信間隔(IPG)を調整する

– TCPでは,RTT/cwndごとにパケット送信すればよい ペーシングあり: ペーシングなし: RTT RTT RTT/cwnd

• 精密なIPG制御には高精度タイマが必要

– GbEの場合,1500バイトのパケット送信に12us要する タイマ割込みの負荷増大により,実現は困難

(6)

6/24

発表の流れ

• 背景

• ギャップパケットを用いたペーシングの実現

• PSPacerの実装方法

• 評価

• まとめ

(7)

7/24

• タイマ割込みを利用しない,ソフトウェアによる

精密なパケットスケジューリングを実現したい

ギャップパケット(1)

• 実パケット間に

ギャップパケット

(ダミーパケット)を

挿入することでIPGを調整する

– 物理的なパケット送信時間は正確なので,パケット サイズを変更することで,IPGを精密に制御可能 ギャップパケット ペーシングあり ペーシングなし RTT RTT RTT/cwnd

(8)

8/24

ギャップパケット(2)

• ギャップパケットは実際に送信PCから送信する

必要がある

送信PC (普通の)スイッチ 実パケット ギャップパケット

• PAUSEフレーム(IEEE 802.3x)を利用する

– 直近のスイッチ/ルータの入力ポートで破棄されるので, 外部ネットワークへの影響はない

(9)

9/24

ギャップパケットサイズの計算

• 基本アルゴリズム

– 物理帯域に占める目標帯域の割合を基にIPGを調整 – IPGがMTUより大きい場合は,複数のギャップパケットを 挿入する – 例えば, • max_rate = 1 Gbps • target_rate = 500 Mbps • packet_size = 1500 Byte

e

packet_siz

1

e

target_rat

max_rate

ipg



×



=

1500 1500 1 500 1000 ipg × =      − =

(10)

10/24

目標帯域の見積り

• 静的ペーシング

– 静的に固定値を設定する – ボトルネック帯域が既知で,一定の場合に有効

• 動的ペーシング

– ウィンドウ制御の情報(cwnd,RTT)を基に目標帯域を 計算し,ギャップパケットサイズを決定する – ボトルネック帯域が不明の場合に有効

RTT

cwnd

e

packet_siz

e

target_rat

=

×

(11)

11/24

発表の流れ

• 背景

• ギャップパケットを用いたペーシングの実現

• PSPacerの実装方法

• 評価

• まとめ

(12)

12/24

PSPacerの実装

• Iproute2フレームワーク

– Qdiscモジュールとして実装 – tcコマンドで設定可能

• カーネル再構築不要

• ドライバ非依存

• プロトコル非依存

送信バッファ プロトコルスタック プロトコルスタック デバイスドライバ デバイスドライバ enqueue dequeue PSPacer パケット スケジューラ ソケット層 ソケット層 クラスごとの 送信キュー クラシファイア 実パケット ギャップパケット

(13)

13/24

PSPacerの使用例

# tc qdisc add dev eth0 root handle 1: psp default 2

# tc class add dev eth0 parent 1: classid 1:1 psp rate 500mbit # tc class add dev eth0 parent 1: classid 1:2 psp mode 0

# tc qdisc add dev eth0 parent 1:1 handle 10: pfifo # tc qdisc add dev eth0 parent 1:2 handle 20: pfifo

# tc filter add dev eth0 parent 1: protocol ip pref 1 u32 / match ip dport 80 0xffff classid 1:1

1: 10: 20: 1:1 1:2 root qdisc sub classes sub qdiscs 500 Mbps dport=80 default

(14)

14/24

発表の流れ

• 背景

• ギャップパケットを用いたペーシングの実現

• PSPacerの実装方法

• 評価

– ギャップパケットによる帯域制御

– 高遅延環境でのTCP通信におけるペーシングの

効果

• まとめ

(15)

15/24

実験環境(1)

GtrcNET-1

PC環境

• CPU: Intel Xeon/2.4GHz dual • Memory: 2GB (DDR266)

• PCI Bus: PCI-X 133MHz/64bit • NIC: Intel PRO/1000 (82545EM) • OS: Fedora Core 3

Linux 2.6.14.2 + Web100 2.5.6 • BIC TCP • Socket Buffer: 12.5MB • txqueuelen: 10000 Dell 5224 GtrcNET-1 帯域測定 Iperf 目標帯域を変えながら,1対1通信の帯域をGtrcNET-1で計測

(16)

16/24

GtrcNET-1:プログラマブル

ギガビットネットワークテストベッド

1000Base-SX Transceiver SERDES FPGA SSRAM 1 Gbps read and write simultaneously 144Mbits/port Xilinx XC2V6000 (76K logic cells) 4 GbE ports

(17)

17/24

ギャップパケットによる帯域制御

0 200 400 600 800 1000 0 100 200 300 400 500 600 700 800 900 1000 目標帯域 (Mbps) 得 ら れ た 帯 域 ( M bp s) 目標値 実測値 上限:930 Mbps* 下限:8 Kbps 8Kbps~930Mbpsでの帯域制御に対応 (評価には静的ペーシングを用いた) *) ギャップパケットが最小フレームサイズである64バイトの場合

(18)

18/24

実験環境(2)

GtrcNET-1

PC環境

• CPU: Intel Xeon/2.4GHz dual • Memory: 2GB (DDR266)

• PCI Bus: PCI-X 133MHz/64bit • NIC: Intel PRO/1000 (82545EM) • OS: Fedora Core 3

Linux 2.6.14.2 + Web100 2.5.6 • BIC TCP • Socket Buffer: 12.5MB • txqueuelen: 10000 Dell 5224 GtrcNET-1 往復遅延: 100ms 帯域: 500Mbps

Drop Tail ルータ (FIFO 1MB) 帯域測定 (500us)

Iperf

(19)

19/24

(参考) BIC TCP

• 帯域のスケーラビリティとTCP-Friendlinessを両立

– Additive Increase/Binary Search Increaseモード – パケットロス時のcwndをWmaxに設定する Wmax Additive Increase Binary Search Increase Max Probing Wmin cwnd Time (RTT) Reno BIC

(20)

20/24

高遅延環境でのTCP通信における

ペーシングの効果

– noPSP: ペーシングなし – PSPD: 動的ペーシング – PSPS: 静的ペーシング (BWmax=500Mbps) 平均帯域 (Mbps) 433 315 200 Iperf (TCP) 0 447.7 PSPS 285 321.7 PSPD 1455 206.8 noPSP パケットロス数 GrtcNET-1 (Ethernet) (帯域は1分間の平均値)

(21)

21/24

平均帯域と輻輳ウィンドウサイズ(1)

(a) noPSP (b) PSPD 0 200 400 600 800 1000 0 10 20 30 40 50 60 Time (Sec) B an dw id th ( M bp s) 0 2 4 6 8 10 W in d ow S iz e (M B ) Bandwidth Window Size 0 200 400 600 800 1000 0 10 20 30 40 50 60 Time (Sec) B a n d w id th ( M b p s) 0 2 4 6 8 10 W in d o w S iz e ( M B ) Bandwidth Window Size 平均帯域: 206.8 Mbps 平均帯域: 321.7 Mbps (帯域は100msの平均値,cwndは100ms間隔で取得) パケットロス後の挙動が異なる

(22)

22/24

パケットロス直後の挙動

(a) noPSP (b) PSPD スロースタート後にパケットロスが 発生し,Wmaxが縮退するため, cwndの回復に時間がかかる スロースタート後にパケットロスが 発生しない 0 200 400 600 800 1000 25 26 27 28 29 30 Time (Sec) B a nd w id th ( M bp s) (帯域は500us間隔で取得) 0 200 400 600 800 1000 27 28 29 30 31 32 Time (Sec) B a n d w id th ( M b p s)

(23)

23/24

平均帯域と輻輳ウィンドウサイズ(2)

(c) PSPS 0 200 400 600 800 1000 0 10 20 30 40 50 60 Time (Sec) B a n dw id th ( M bp s) 0 2 4 6 8 10 W in d ow S iz e ( M B ) Bandwidth Window Size 平均帯域: 447.7 Mbps (帯域は100msの平均値,cwndは100ms間隔で取得) 送信帯域がボトルネック帯域を超え ないので,パケットロスが発生しない cwndが約10MBまで上昇しているの は,送信PCのインタフェースキュー 遅延が増加したため

(24)

24/24

まとめ

• パケット送信間隔を精密にスケジューリングできる

ギャップパケットを提案した

– イーサネット上での実現にPAUSEフレームを利用する

• ギャップパケットを用いてソフトウェアによる精密な

ペーシング方式を実現した

• ペーシングを適用した結果,高遅延環境において,

TCP通信性能が向上することを示した

– スロースタート時のパケットロスを削減できた

(25)

25/24

PSPacerはGNU GPLライセンスにて公開

GridMPI: http://www.gridmpi.org/

なお,本研究の一部は文部科学省「経済活性化のための重点技術 開発プロジェクト」の一環として実施している超高速コンピュータ網形 成プロジェクト(NAREGI: National Research Grid Initiative)による.

(26)

26/24

今後の課題

• BIC TCP以外の輻輳制御アルゴリズムを

用いた評価

– FAST TCP

• ペーシングによる同期ロス問題の検証

– [Aggarwal00]

参照

関連したドキュメント

No ○SSOP(生体受入) ・動物用医薬品等の使用記録による確認 (と畜検査申請書記載) ・残留物質違反への対応(検査結果が判

 複雑性・多様性を有する健康問題の解決を図り、保健師の使命を全うするに は、地域の人々や関係者・関係機関との

READ UNCOMMITTED 発生する 発生する 発生する 発生する 指定してもREAD COMMITEDで動作 READ COMMITTED 発生しない 発生する 発生する 発生する デフォルト.

参考資料ー経済関係機関一覧(⑤各項目に関する機関,組織,企業(2/7)) ⑤各項目に関する機関,組織,企業 組織名 概要・関係項目 URL

図 キハダマグロのサプライ・チェーン:東インドネシアの漁村からアメリカ市場へ (資料)筆者調査にもとづき作成 The Yellowfin Tuna Supply Chain: From Fishing Villages in

・大都市に近接する立地特性から、高い県外就業者の割合。(県内2 県内2 県内2/ 県内2 / / /3、県外 3、県外 3、県外 3、県外1/3 1/3

口腔の持つ,種々の働き ( 機能)が障害された場 合,これらの働きがより健全に機能するよう手当

※立入検査等はなし 自治事務 販売業