1 / 33

TranSwitch :ネットワークフロー毎における最適な TCP への動的切替機構

TranSwitch :ネットワークフロー毎における最適な TCP への動的切替機構. 総合政策学部 4 年 山下 勝司 親:政策・メディア研究科 高橋 ひとみ サブ親:政策・メディア研究科 斉藤 匡人. 発表概要. 研究背景・問題意識 TranSwitch 概要 設計、実装 評価 関連研究 今後の課題、まとめ. 研究背景・問題意識. 研究背景 1/2. ネットワーク環境の多様化 通信形態 有線通信 無線通信 帯域 狭帯域(数 10Kbps ~数 100Kbps ) ex. ISDN 、モバイル通信 広帯域(数 Mbps ~ 10Gbps )

adele
Download Presentation

TranSwitch :ネットワークフロー毎における最適な TCP への動的切替機構

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TranSwitch:ネットワークフロー毎における最適な TCP への動的切替機構 総合政策学部4年 山下 勝司 親:政策・メディア研究科 高橋 ひとみ サブ親:政策・メディア研究科 斉藤 匡人

  2. 発表概要 • 研究背景・問題意識 • TranSwitch 概要 • 設計、実装 • 評価 • 関連研究 • 今後の課題、まとめ

  3. 研究背景・問題意識

  4. 研究背景 1/2 • ネットワーク環境の多様化 • 通信形態 • 有線通信 • 無線通信 • 帯域 • 狭帯域(数10Kbps~数100Kbps) • ex. ISDN、モバイル通信 • 広帯域(数Mbps~10Gbps) • ex. ADSL、FTTH、LAN 内通信

  5. 研究背景 2/2 • 特定環境に最適化された TCP • 無線ネットワーク用 TCP • ex. Westwood+、Mobile TCP、M-TCP • 広帯域ネットワーク用 TCP • ex. BIC、FAST、Highspeed TCP、Scalable TCP • etc. • ex. NewReno、Vegas、P-TCP、Hybla • 送信側の変更のみで利用可能な TCP の研究 • 送受信ホストに同一の TCP 導入は困難

  6. 問題意識 • 一つの TCP vs. 多様なネットワーク環境 • 遅延、帯域、通信形態が多様なネットワーク環境 • 通常の OS は TCP を一つしか所持できない • 汎用性を重視した TCP を利用する必要性 • 特定環境に特化した TCP の利用は難しい

  7. TranSwitch の提案 • OS へ複数の TCP を導入 →汎用性を重視した TCP と特定環境に最適化された TCP が共存可能 • ネットワークフロー毎に TCP を選択 →ネットワークの特性を考慮した TCP の利用

  8. TranSwitch 概要

  9. TranSwitch 概要 • OS へ複数の TCP を導入 • ネットワークフロー毎に TCP の選択 • ユーザによるネットワークフローと TCP の関連付け • ユーザによる TCP の追加、削除

  10. 想定シナリオ • 特性が異なる複数のネットワークを同時に利用 • 各ネットワークの特性に合わせた TCP の選択 • 広帯域ネットワーク→広帯域ネットワーク用 TCP • 無線通信→無線ネットワーク用 TCP • 特性が不明→汎用性を重視した TCP 通常 TranSwitch を利用 ネットワーク フローA フローB フローC フローA フローB フローC フロー TranSwitch TCP TCP 汎用的TCP 広帯域用TCP 無線用TCP ネットワーク 無線 不明 広帯域 無線 不明 広帯域 環境

  11. 設計・実装

  12. TranSwitch の設計 • TranSwitch 機能要件 • TCP 混在環境の実現 • ネットワークフローと TCP の関連付け • ネットワークフロー毎の TCP 切替処理 • 送信側変更のみで利用可能な TCP を想定 • 送受信両側で変更が必要な TCP への対応は今後の課題

  13. 設計 1/3 • TCP 混在環境の実現 • 追加 TCP はカーネルモジュールとして実装 • OS が当初から持つ TCP(オリジナル TCP)から追加 TCP へ差分の度に処理 を切替 • 差分は関数単位で実装 (置換関数) • 追加 TCP は TranSwitch 用 TCP フォーマット に 沿って実装

  14. 設計 • TranSwitch 用 TCP フォーマット • TCP 名の表記 • TranSwitch での一意の識別子 • 置換関数の実装 • カーネル内の関数と置換する関数の実装 • 置換対応の表記 • 関数の置換対応を表記 • TranSwitch への登録関数、削除関数の実装 • TranSwitch へ TCP を登録および削除

  15. 設計 2/3 • ネットワークフローと TCP の関連付け • ネットワークの特性(遅延、帯域、通信形態)はネットワークフロー毎に異なる • ネットワークの特性に最適化された TCP の開発 →ネットワークフロー毎の TCP 選択の必要性

  16. 設計 3/3 • TCP 切替処理 • TCP フロー生成の検知 • ネットワークフロー、TCP の関連付け情報(定義情報)の参照 • 該当ソケットへの TCP 関連付け • ソケットに関連付けられた TCP をもとに関数を置換

  17. 実装  • TranSwitch 実装項目 • TCP 混在環境(TranSwitch 用 TCP フォーマット) • ネットワークフローと TCP の関連付け(ユーザインタフェース) • TCP 切替処理 • 実装環境 • Linux 2.4.32 • Fedora Core 1 • 配布形式 • カーネルパッチ

  18. TranSwitch 実装 1/3 • TCP 混在環境 • 追加 TCP の実装形式として LKM(Loadable Kernel Module)を利用 →簡易な TCP の追加、削除 • TCP の追加 • % insmod LKM名 • TCP の削除 • % rmmod LKM名 • TCP の参照 • % lsmod LKM名 • 追加 TCP は TranSwitch 用 TCP フォーマットに準拠

  19. TranSwitch 用 TCP フォーマット • TranSwitch への TCP 追加・削除 • TCP名の表記 • 置換対応の表記 • 置換関数の実装 • TCP 関数の一部が置換可能 (プロトタイプでは25の関数)

  20. TranSwitch 実装 2/3 • ネットワークフローと TCP の関連付け(ユーザインタフェース) • 定義情報の追加 • 送受信ホストの IP およびポート番号、定義情報 ID、TCP 名を用いて設定 • ex. % trasw_add –si 192.168.1.3 westwood • 定義情報の削除 • 削除する定義情報 ID を指定 • ex. % trasw_del 10 • 定義情報の参照 • ex. % trasw_list

  21. TranSwitch 実装 3/3 • TCP 切替処理 • TCP フロー生成の検知 • 検知した TCP フローと一致する定義情報を検索 • TCP ソケット構造体に TCP への参照を登録 • 置換対応表を参照し、処理を置換

  22. 評価

  23. 評価  1/3 • 評価項目 • TCP の切替えによるオーバヘッドの計測 • スループット • 30回計測時の平均値 • Iperf 2.0.2 • 評価対象 • 通常のOS • カーネル内に実装された Reno • 通常のOS + TranSwitch • カーネル実装の Reno → 同実装で LKM 化した Reno • 全ての置換関数において置換を実行

  24. 評価 2/3 • 評価環境 • 利用機器 • PC: IBM ThinkPadT42p • CPU: Intel Pentium M 2GHz • NIC: 1 Gigabit Ethernet • RAM: PC27002GByte • ネットワーク環境 • Dummynet による遅延エミュレート • RTT10ms

  25. 評価  3/3 • 評価結果 • TranSwitch の利用により 0.85 Mbps(2.1%)減少 →スループットの微小な減少はあるが、実用可能

  26. 関連研究

  27. 関連研究 1/3 • X-Kernel • Norman C. Hutchinson and Larry L. Peterson(University of Arizona) • マイクロカーネルとして設計 • 各プロトコルをモジュールとしてユーザランドで管理 • モジュールの組み合わせによりプロトコルスタックを編集可能 →複数の TCP の導入が可能 • ネットワークアーキテクチャ全体のマイクロカーネル化 • X-Kernel 用 TCP 作成コスト

  28. 関連研究 2/3 • WAD(A TCP Tuning Daemon) • Tom. Dunigan(ORNL), Matt. Mathis(PSC), and Brian Tierney(LBNL) • ネットワークフロー毎にソケットの設定が可能 • 定義情報をユーザランドのデーモンで管理 • ソケットの設定以外は不可 →TCP 自体の切替えは不可

  29. 関連研究 3/3 • AS-TCP(Application Specific TCP) • 小野祐介、斉藤俊介、田中康弘、寺岡文男(慶應大学), DICOMO2005 • OS へ複数の TCP を導入 • アプリケーション毎に TCP を選択 →ネットワークの特性を考慮できない

  30. 今後の課題・まとめ

  31. 今後の課題 • 通信途中での TCP 切替 →TCP 選択の修正、通信中のネットワークの状態変化への対応 • 定義情報の設定方法の向上 • ネットワークインタフェース、プロセス名、etc… →より柔軟な TCP の選択が可能 • 定義情報検索の高速化 →オーバヘッドの削減 • TCP 選択補助機構 →不適切な TCP 選択の防止

  32. まとめ • 問題意識 • 通常の OS は TCP を一つしか所持できないため、特定環境に最適化された TCP の利用は難しい • 提案 • TranSwtich は OS に複数の TCP を導入可能にし、ネットワークフロー毎に異なる TCP が利用可能 • 評価 • 類似技術との比較では TranSwitch が優位 • オーバヘッドは存在するが微小

  33. 発表論文 • “TranSwitch:トランスポート層におけるプロトコル切替機構” • 山下 勝司, 高橋 ひとみ, 斉藤 匡人, 徳田 英幸 • 日本ソフトウェア科学会 第4回 SPA サマーワークショップ, Aug. 2005 • “TranSwitch:ネットワークフロー毎における最適な TCP への動的切替機構” • 山下 勝司, 高橋 ひとみ, 斉藤 匡人, 徳田 英幸 • 情報処理学会 第10回ユビキタスコンピューティング研究会, Feb. 2006

More Related