HTTP proxy サーバにおける 動的コネクション管理方式 大阪大学 大学院基礎工学研究科 岡本 卓也 [email protected] 2001年11月22日 TM 研究会 背景 • エンドホストにおけるデータ転送処理の高速化 – SSBT 方式の提案 • Webサーバにおけるサーバ資源の管理 • データ転送処理速度の向上 • 応答時間の削減 • proxy サーバを介した HTTP アクセス – 全体の35%程度 – proxy サーバの処理能力の不足によるスループットの低 下 proxy サーバにおけるデータ転送処理の 高速・高機能化の検討が必要 2001年11月22日 TM 研究会 エンドホストにおける問題点 • ソケットバッファの割り当て – 各 TCP コネクションの帯域,遅延等は異なる – 固定サイズのソケットバッファの割り当て • 各 TCP コネクションの帯域の考慮 • コネクション管理 – 資源の割り当て • mbuf ,ファイルディスクリプタ,メモリ空間 – 資源の不足 • 新規にTCP コネクションの確立の拒否 特に多くの TCP コネクションを収容する proxy サーバでは これらのサーバ資源の効率的な割り当てが必要 2001年11月22日 TM 研究会 提案方式 1. ソケットバッファ管理方式 (E2–ATBT 方式) E–ATBT 方式を改良したもの ・ 受信側ソケットバッファの考慮 ・ TCP コネクション間の依存関係の考慮 2. コネクション管理方式 ・ サーバ資源の管理 ・ persistent TCP コネクションの管理 2001年11月22日 TM 研究会 ソケットバッファ管理方式 • E-ATBT (Equation-based Automatic TCP Buffer Tuning) 方式 – 各 TCP コネクションのスループットの推測 – そのスループットを基に各 TCP コネクションが必要 としているソケットバッファサイズの決定 – 決定した大きさのソケットバッファの割り当て • proxy サーバの特性 – TCP コネクション間の依存関係 – 受信側ソケットバッファの制御 2001年11月22日 TM 研究会 E2-ATBT 方式 - コネクション間の依存関係 • 依存関係とは TCP コネクション間のスループットの違い client host proxy server 大きいサイズの ソケットバッファの割り当て web server 無駄になる クライアント間のTCP コネクションに 割り当てるバッファサイズを減らす 2001年11月22日 TM 研究会 E2-ATBT 方式 - 受信側ソケットバッファ • proxy サーバの特徴 – 受信側ホストとして振る舞い • 受信側ソケットバッファの割り当て – 受信側ソケットバッファの不足によるスループットの低 下 – 受信側ソケットバッファの動的な割り当てが必要 受信側ソケットバッファサイズを 送信側ウィンドウサイズ以上にする 2001年11月22日 TM 研究会 コネクション管理方式 • persistent TCP コネクション – 転送終了後一定時間接続の保持 – ウィンドウサイズなどのネットワーク情報の再利用 – 3-way handshake を行わない – サーバ資源の割り当て • 割り当てられたサーバ資源が無駄になる可能性があ る • サーバ資源の不足による新規 TCP コネクションの確 立の拒否 • proxy サーバは多くの TCP コネクションを収容する – サーバ資源の無駄遣い – persistent TCP コネクションの切断 2001年11月22日 TM 研究会 コネクション管理方式 • proxy サーバの残存資源が十分ある時 – 可能な限り persistent TCP コネクションを収容する • proxy サーバの残存資源が少ない時 – 使用されていない persistent TCP コネクションを切 断し,新規 TCP コネクションの確立を行う この方式の実現には,残存資源の監視 および persistent TCP コネクションの管理が必要 2001年11月22日 TM 研究会 コネクション管理方式 - 残存資源の監視 • システムコールによる,各サーバ資源の使用可能量, および現在使用している量の取得 • 各サーバ資源の閾値の設定 – その閾値を越えた場合,proxy サーバの資源が少 なくなったと判断 2001年11月22日 TM 研究会 コネクション管理方式 - persistent TCP コネクションの管理 • persistent TCP コネクションの管理 time scheduling list (IP address, port number) ( 192.168.2.155, 10110 ) hash function time ( 192.168.10.200, 10010 ) 246 16:20'40 ( 192. 168.17.10, 12049 ) 36 16:20'42 ( 192.168.2.155, 10110 ) 159 16:20'53 ・ ・ ・ ( 192.168.240.3, 10338 ) socket file descriptor 2001年11月22日 120 16:20'48 NULL TM 研究会 シミュレーションによる評価 • シミュレーションモデル 伝搬遅延時間 : 10 – 200秒 ロス率 : 0.0001 – 0.01 Proxy サーバ キャッシュヒット率 0.5 クライアントホスト 50,100,200,500 台 2001年11月22日 伝搬遅延時間 : 10 – 100秒 ロス率 : 0.0001 – 0.01 Web servers Web サーバ 50 台 TM 研究会 性能評価 • 性能評価を行った方式 – scheme 1: 従来方式 – scheme 2: ソケットバッファ管理方式 – scheme 3: ソケットバッファ管理方式と コネクション管理方式 – scheme 4: scheme 3 にさらにソケットバッファを 徐々に減らす方式 2001年11月22日 TM 研究会 proxy サーバでの性能評価 Total transfer size [Mbytes] 1200 1000 scheme (1) scheme (2) scheme (3) scheme (4) 800 600 400 200 0 50 100 200 Number of client hosts 2001年11月22日 500 TM 研究会 クライアントの応答時間 - クライアント数 50 - Response Time [sec] 100 scheme (1) scheme (2) scheme (3) scheme (4) 10 1 0.1 10 100 1000 10000 100000 1e+006 1e+007 1e+008 Document Size [Byte] 2001年11月22日 TM 研究会 クライアントの応答時間 - クライアント数 200 - Response Time [sec] 100 scheme (1) scheme (2) scheme (3) scheme (4) 10 1 0.1 10 100 1000 10000 100000 1e+006 1e+007 Document Size [Byte] 2001年11月22日 TM 研究会 まとめと今後の課題 • proxy サーバにおけるサーバ資源管理方式の提案 • シミュレーションによる有効性の確認 – ソケットバッファ管理方式 • Proxy サーバの性能改善 – コネクション管理方式 • proxy サーバの性能改善 • 応答時間の改善 • 今後の課題 – 提案方式を実際の proxy サーバへの実装 – その他のエンドホスト資源管理方式の検討 2001年11月22日 TM 研究会
© Copyright 2024 ExpyDoc