240 likes | 335 Views
E-5. H ∞ 制御による TCP/AQM ネットワークの 輻輳制御器設計に関する研究. システム制御研究室 西村 昭彦. はじめに. 研究の背景. コンピュータネットワークの急激な成長. 輻輳 (通信データの渋滞)問題. TCP/IP の輻輳制御機構では不十分. 輻輳ノードがネットワーク管理 ( Active Queue Management ( AQM )). 理論に基づいた輻輳制御機構の必要性. 発表の流れ. TCP/IP ネットワーク の輻輳制御機構と AQM ルータ TCP/AQM ネットワークの数学的モデルと線形化 制御目的の設定
E N D
E-5 H∞制御による TCP/AQM ネットワークの輻輳制御器設計に関する研究 システム制御研究室 西村 昭彦
はじめに 研究の背景 コンピュータネットワークの急激な成長 輻輳(通信データの渋滞)問題 TCP/IPの輻輳制御機構では不十分 輻輳ノードがネットワーク管理 (Active Queue Management(AQM)) 理論に基づいた輻輳制御機構の必要性
発表の流れ • TCP/IPネットワークの輻輳制御機構とAQMルータ • TCP/AQMネットワークの数学的モデルと線形化 • 制御目的の設定 • H∞制御による輻輳制御機構設計 • 制御系の検証 SIMULINKによるシミュレーション ns-2によるシミュレーション Testbedによる実験
Packet Drop Tail Queue TCP Reno (Destination) TCP Reno (Source) Ack TCP/IPネットワークの輻輳制御機構とAQMルータ TCP/IPネットワーク 輻輳ウィンドウ : Packetの送信量を決定
25 20 Packet Lost 15 Window Size [packets] 10 5 0 - 1 W ( t ) 0 0.5 1 1.5 2 2.5 3 3.5 4 τ & & = = Time [sec] W ( t ) W ( t ) - - R ( t ) R ( t ) τ τ TCP Renoの輻輳制御 スロースタートモード 1RTTで2倍に増加 輻輳回避モード 1RTTで1つ増加
200 180 160 140 120 Window Size [packets] 100 80 60 40 20 0 0 20 40 60 80 100 Time [sec] バッファオーバフローと輻輳ウィンドウ 受信側 送信側 Fig. 1 ネットワーク Fig. 2 輻輳ウィンドウ
80 120 70 60 100 50 80 Queue Size [packets] 40 Drop Packet [packets] 60 30 20 40 10 20 0 0 20 40 60 80 100 0 Time [sec] 0 20 40 60 80 100 Time [sec] 輻輳ウィンドウの同期 Packetの大量廃棄 Fig. 3 バッファ Fig. 4 廃棄パケット
AQMルータ Packet AQM Queue TCP Reno (Destination) TCP Reno (Source) Ack Drop AQM : Queue Sizeに応じてDrop Probabilityを決定
問題設定 TCP/AQMネットワークの数学的モデルと線形化 送信ノード 1 C[packets/sec] ・・・・・・ 受信ノード 中間ノード 送信ノード N N : セッション W : ウィンドウサイズ [packets] C : リンク容量 [packets/s] R : ラウンドトリップタイム [sec] TP : 伝播遅延 [sec] q : キューサイズ [packets] p : パケットマーク率
- dW ( t ) 1 W ( t ) W ( t R ( t )) = - - (1) p ( t R ( t )) - dt R ( t ) 2 R ( t R ( t )) dq ( t ) N = - (2) W ( t ) C dt R ( t ) D ( s ) 2 C 2 N = (3) P ( s ) + d d p q - 2 N 1 - R s e P ( s ) + + 0 ( s )( s ) 2 R C R 0 0 2 2 N s (4) - D = - sR ( s ) : ( 1 e ) 0 2 3 R C 0 (1), (2) 式を動作点近傍(W0, q0, p0)で線形化 Fig. 5 線形化されたダイナミクス のブロック線図
q = q max 0 2 制御目的の設定 • キューサイズを一定に保つ • 輻輳を起こさない, また起きた場合でも速やかに • 輻輳状態を回避する • 3. 外乱として考慮外のホストよりパケットが入ってきた • 場合でもキューサイズを一定に保つ DQL(Desired Queue Length)の設定 キューサイズのある程度の脈動 0付近 スループットの低下 qmax付近 リトランスミットの増加 外乱の入力
ì ï £ D £ 1 0 ï í 2 2 N N q q 2 2 . . 1 1 R R s s ï - P ( s ) + + ( ( max max s s 1 1 )( )( 0 0 ) ) ï + + 2 2 3 3 R R C C 1 1 R R s s î 0 0 0 0 d d p q H∞制御による輻輳制御機構設計 q d £ q max 2 Fig. 5 + d £ p 1 2 . 1 R s - - £ R s 1 e 0 0 乗法的不確かさの上限 + 1 R s 0 D + + Fig. 6 TCP/AQMネットワークのブロック線図
= + W & x A x B u T nom nom nom nom W = y C x S nom nom é 2 N ù - 0 P ê ú 2 R C = & ê ú A 0 nom N 1 ê ú - K ê ú R R ë û 0 0 é ù 2 R C - 0 ê ú = & B 2 2 N nom ê ú 0 ë û [ ] = & C 0 1 nom ノミナルプラントの状態方程式 w z1 z2 + u y + Fig. 7 混合感度問題
K = + & ì x A x B u = W ( s ) S WS WS WS WS WS í S + T s 1 = + y C x D u î S WS WS WS WS WS = + + 2 W ( s ) a s a s a T 2 1 0 y u P yWT W T 感度関数に対する周波数重み 相補感度関数に対する周波数重み 制御対象とWTの合併 さらにWSまで含んだ拡大系
= + + 2 C C ( a A a A a I ) WT nom 2 nom 1 nom 0 = + D C ( a A a I ) B WT nom 2 nom 1 nom & é x ù é A 0 ù é x ù é 0 ù é B ù nom nom nom = + + nom w u ê ú ê ú ê ú ê ú ê ú - & x B C A x B 0 ë û ë û ë û ë û ë û WS WS nom WS WS WS - é y ù é D C C ù é x ù é 0 ù é D ù WS WS nom WS nom = + WS + w u ê ú ê ú ê ú ê ú ê ú y C 0 x D 0 ë û ë û ë û ë û ë û WT WT WS WT é x ù [ ] nom = - + y C 0 w ê ú nom x ë û WS 拡大系の状態方程式
< T 1 ZW ¥ H∞制御問題 閉ループ系を内部安定とし, かつ を満たすコントローラが存在するかどうか判定し, 存在する場合はそのようなコントローラを求めよ. Matlab hinfsyn
5 10 0 Log Magnitude 10 -5 10 -4 -2 0 2 4 10 10 10 10 10 Frequency [radians/sec] 0 -50 Phase [degrees] -100 -150 -4 -2 0 2 4 10 10 10 10 10 Frequency [radians/sec] = N 2 [packets] = [packets/s] q 80 = C 83 . 3 max [packets] = [msec] q 40 = T 40 0 P 制御対象 Fig. 8 Testbed 制御対象のボード線図
4 8 10 10 6 10 2 10 4 10 Wt 0 10 Magnitude Magnitude 2 10 -2 10 0 10 Uncertainty -4 10 -2 10 -4 -6 10 10 -4 -2 0 2 4 -4 -2 0 2 4 10 10 10 10 10 10 10 10 10 10 Frequency[rad/sec] Frequency[rad/sec] Fig. 10 周波数重み:WT Fig. 9 周波数重み:WS
0 10 Log Magnitude -5 10 10 10 Log Magnitude -10 10 0 10 -4 -2 0 2 4 10 10 10 10 10 Frequency [radians/sec] 50 10 -10 -4 -2 0 2 4 10 10 10 10 10 0 Frequency [radians/sec] Phase [degrees] 0 -50 -50 Phase [degrees] -100 -100 -4 -2 0 2 4 10 10 10 10 10 Frequency [radians/sec] -150 -4 -2 0 2 4 10 10 10 10 10 Frequency [radians/sec] Fig. 14 開ループ伝達関数 Fig. 13 H∞コントローラ GM=11.3[dB] PM=55.7[°]
60 55 50 Queue Size [packets] 45 40 35 10 0 5 15 20 25 30 Time [sec] 制御系の検証 SIMULINKによるシミュレーション(線形モデル) t = 10[sec] 20[packets/sec] Fig. 15 外乱応答
58 56 54 60 52 50 Queue Size [packets] 50 48 40 46 44 Queue Size [packets] 30 42 20 40 10 0 5 15 20 25 30 Time [sec] 10 0 0 5 10 15 20 25 30 Time [sec] 20[packets/sec] t = 10[sec] SIMULINKによるシミュレーション(非線形モデル) Fig. 17 外乱応答 Fig. 16 初期値応答
80 80 70 70 60 60 50 50 Queue Size [packets] Queue Size [packets] 40 40 30 30 20 20 10 10 0 0 0 20 40 60 80 100 0 20 40 60 80 100 Time [sec] Time [sec] 20[packets/sec] t = 30[sec] ns-2によるシミュレーション 30 Fig. 19 外乱応答 Fig. 18 初期値応答
80 80 70 70 60 60 50 50 Queue Size [packets] Queue Size [packets] 40 40 30 30 20 20 10 10 0 0 0 20 40 60 80 100 0 20 40 60 80 100 Time [sec] Time [sec] 20[packets/sec] t = 30[sec] Testbedによる実験 30 Fig. 21 外乱応答 Fig. 20 初期値応答
おわりに • TCP/IPネットワークの輻輳制御機構とAQMルータ • TCP/AQMネットワークの数学的モデルと線形化 • 制御目的の設定 • H∞制御による輻輳制御機構設計 • 制御系の検証 SIMULINKによるシミュレーション ns-2によるシミュレーション Testbedによる実験