On Modeling and Control of Network Queue Dynamics Modellering och reglering av ködynamik i nätverk
Vad handlar det om? Modellering: Att göra sig en bild av en komplicerad verklighet
Vad handlar det om? Modellering: Att göra sig en bild av en komplicerad verklighet
Vad handlar det om? Modellering: Att göra sig en bild av en komplicerad verklighet
Vad handlar det om? Modellering: Att göra sig en bild av en komplicerad verklighet 174cm mörkblond svarta glasögon intelligent panna
Vad handlar det om? Modellering: Att göra sig en bild av en komplicerad verklighet 174cm mörkblond svarta glasögon intelligent panna E = mc 2 ẋ = 2x + 5u
Vad handlar det om? (2) Reglering: Att påverka verkligheten för att få önskat beteende
Vad handlar det om? (2) Reglering: Att påverka verkligheten för att få önskat beteende
Vad handlar det om? (2) Reglering: Att påverka verkligheten för att få önskat beteende
Vad handlar det om? (2) Reglering: Att påverka verkligheten för att få önskat beteende
Vad handlar det om? (2) Reglering: Att påverka verkligheten för att få önskat beteende
Vad handlar det om? (3) Ködynamik: Hur längden på en kö varierar över tiden
Vad handlar det om? (3) Ködynamik: Hur längden på en kö varierar över tiden Nätverk: Sammankopplade datorer
Vägen fram Systembeskrivning Reglersystem Applikationer Datatransport Prestanda Köhantering
Vägen fram Systembeskrivning Reglersystem Applikationer Datatransport Prestanda Köhantering Reglering Modeller BAR Reglertyper
Vägen fram Systembeskrivning Reglersystem Applikationer Datatransport Prestanda Köhantering Ickelikformig sampling Exempel Vad vill vi göra? Transform approx. Additiv slumpsampling Reglering Modeller BAR Reglertyper
Vägen fram Systembeskrivning Reglersystem Applikationer Datatransport Prestanda Köhantering Reglering Modeller BAR Reglertyper Ickelikformig sampling Exempel Vad vill vi göra? Transform approx. Additiv slumpsampling Vad har vi gjort?.
Systembeskrivning Internet
Reglersystem Reglersystem Prestanda Application FTP Application FTP Transport TCP Transport TCP Network IP Network Network Network IP Link hardware Link Link Link hardware Sändare nätverk med routrar Mottagare PSfrag replacements ref R l r l stör syst mät
Applikationer Reglersystem Prestanda Filöverföring, surfning, telefoni, realtid/streaming
Applikationer Reglersystem Prestanda Filöverföring, surfning, telefoni, realtid/streaming Streaming vill följa en datatakt konstant fördröjning eplacements r ref (t) q ref r str + C str P + 1 s q
Datatransport Reglersystem Prestanda Med eller utan kvitton Transmission Control Protocol, TCP, anpassar sändhastigheten till nätverkskapaciteten
Datatransport Reglersystem Prestanda Med eller utan kvitton Transmission Control Protocol, TCP, anpassar sändhastigheten till nätverkskapaciteten ents r q (t) C T CP r T CP e st 1 + 1 s q(t) e st 2 + q ref
Datatransport Reglersystem Prestanda Med eller utan kvitton Transmission Control Protocol, TCP, anpassar sändhastigheten till nätverkskapaciteten ents r q (t) C T CP r T CP e st 1 + q(t) { 1 ökar, q < qref s r T CP minskar, q > q ref e st 2 + q ref
Prestanda Reglersystem Prestanda Vad är bra i kösammanhang?
Prestanda Reglersystem Prestanda Vad är bra i kösammanhang? Oscillationer
Prestanda Reglersystem Prestanda Vad är bra i kösammanhang? Oscillationer Lite svängningar ger snabbare anpassning
Prestanda Reglersystem Prestanda Vad är bra i kösammanhang? Oscillationer Lite svängningar ger snabbare anpassning Full/tom
Prestanda Reglersystem Prestanda Vad är bra i kösammanhang? Oscillationer Lite svängningar ger snabbare anpassning Full/tom Full kö = risk för tapp Tom kö = underutnyttjad
Prestanda Reglersystem Prestanda Vad är bra i kösammanhang? Oscillationer Lite svängningar ger snabbare anpassning Full/tom Full kö = risk för tapp Tom kö = underutnyttjad Vi studerar genomströmning, antal tappade paket samt oscillationer
Köhantering Reglersystem Prestanda Active Queue Management, AQM, för att minska oscillationer ements q ref q(t) H C AQM u(t) p(t)
Köhantering Reglersystem Prestanda PSfrag replacements Active Queue Management, AQM, för att minska oscillationer Tappa paket klurigt för att motverka TCP-svängningar u(t) ements q(t) p(t) H1 q ref C AQM q ref q(t) H C AQM u(t) p(t) p M q m q M
Reglering Köhantering
Modeller Modeller Reglertyper Matematiska modeller beskriver grundläggande uppförande y(t) = f(gamla y, u, e) Kan användas för att förbättra reglering t.ex. y(t) = y(t T ) beskriver konstant
BAR Modeller Reglertyper time [s] time [s] Queue length, q Queue length, q Queue length, q replacements 20 20 20 0 0 0 0 20 40 60 80 100 20 30 40 50 30 40 time [s]
BAR replacements Modeller Reglertyper 20 20 20 Queue length, q Queue length, q Queue length, q 0 0 0 0 20 40 60 80 100 20 30 40 50 30 40 time [s] time [s] time [s] y(t) = a 1 y(t T ) +... + a n y(t nt ) + b + e(t) f 0 0.6 Hz, T = 0.2 s
Reglertyper Modeller Reglertyper u(t) = { K(y r) y > 0 Proportionell p(t) = sat(u) RED
Reglertyper Modeller Reglertyper u(t) = p(t) = sat(u) { K(ŷ r) ŷ > 0 Proportionell Proportionell med prediktion RED + modellskattningar
Reglertyper Modeller Reglertyper u(t) = p(t) = sat(u) { K(y r) ẏ > 0 0 ẏ 0 Proportionell Proportionell med prediktion Proportionell och deriverande RED + derivator
Reglertyper Modeller Reglertyper u(t) = p(t) = sat(u) { K(ŷ r) ŷ > 0 0 ŷ 0 Proportionell Proportionell med prediktion Proportionell och deriverande PD med prediktion RED + modellskattningar + derivator
Modeller Reglertyper 30 1. P 30 2. P predictions queue length, q, [packets] 25 20 15 10 5 0 50 55 60 65 70 time [s] queue length, q, [packets] 25 20 15 10 5 0 50 55 60 65 70 time [s] Type Drops Sent early+hard= tot unique packets 1 55 +250= 305 3260 queue length, q, [packets] 30 25 20 15 10 5 3. PD queue length, q, [packets] 30 25 20 15 10 5 4. PD predictions 2 66 +247= 313 3569 3 82 +207= 289 3126 4 62 +235= 297 3342 0 50 55 60 65 70 time [s] 0 50 55 60 65 70 time [s]
Ickelikformig sampling Paketankomster
Exempel Exempel Vad göra? Transformer 2.5 2 1.5 T k 1 replacements y(t) 0.5 0 0.5 1 1.5 2 2.5 t k 1 time [s] likformig sampling: t k = kt jittersampling: t k = kt + ν k additiv slumpsampling: t k = t k 1 + T k t k
Vad vill vi göra? Exempel Vad göra? Transformer Identifiering av tidskontinuerliga brusmodeller, y(t) = H(p, θ)e(t), givet additiv slumpsampling av y(t) vid t k :
Vad vill vi göra? Exempel Vad göra? Transformer Identifiering av tidskontinuerliga brusmodeller, y(t) = H(p, θ)e(t), givet additiv slumpsampling av y(t) vid t k : Direkt i tidsdomän, min θ k y(t k) ŷ(t k θ) 2
Vad vill vi göra? Exempel Vad göra? Transformer Identifiering av tidskontinuerliga brusmodeller, y(t) = H(p, θ)e(t), givet additiv slumpsampling av y(t) vid t k : Direkt i tidsdomän, min θ k y(t k) ŷ(t k θ) 2 Via frekvensdomän, min θ Ŷ (f y(t k )) Ŷ (f θ) 2 df
Vad vill vi göra? Exempel Vad göra? Transformer Identifiering av tidskontinuerliga brusmodeller, y(t) = H(p, θ)e(t), givet additiv slumpsampling av y(t) vid t k : Direkt i tidsdomän, min θ k y(t k) ŷ(t k θ) 2 Via frekvensdomän, min θ Ŷ (f y(t k )) Ŷ (f θ) 2 df Bra brusmodell + enkel insignalmodell reglering y(t) = g 0 u(t T 0 ) + H(p)e(t)
Vad vill vi göra? Exempel Vad göra? Transformer Identifiering av tidskontinuerliga brusmodeller, y(t) = H(p, θ)e(t), givet additiv slumpsampling av y(t) vid t k : Direkt i tidsdomän, min θ k y(t k) ŷ(t k θ). 2 Via frekvensdomän, min θ Ŷ (f y(t k )) Ŷ (f θ) 2 df Bra brusmodell + enkel insignalmodell reglering y(t) = g 0 u(t T 0 ) + H(p)e(t)
Approximation av Fourier transform Exempel Vad göra? Transformer Y (f) = y(t)e i2πft dt = I(t)dt Approximera I(t) från I(t k ) Sampla om y(t) likformigt Approximera y(t) från y(t k ), mha basfunktioner mha polynominterpolation Vi antar additiv slumpsampling, t k = t k 1 + T k
Riemann approximation Exempel Vad göra? Transformer I(t) = I(t k ), t k 1 < t t k Ŷ 0 ra(f) = k T k I(t k ) = k T k y(t k )e i2πft k
Riemann approximation Exempel Vad göra? Transformer I(t) = I(t k ), t k 1 < t t k Ŷ 0 ra(f) = k T k I(t k ) = k T k y(t k )e i2πft k I(t)= I(t k) I(t k 1 ) T k (t t k ) + I(t k )
Riemann approximation Exempel Vad göra? Transformer I(t) = I(t k ), t k 1 < t t k Ŷ 0 ra(f) = k T k I(t k ) = k T k y(t k )e i2πft k I(t)= I(t k) I(t k 1 ) T k (t t k ) + I(t k ) Ŷ 1 ra(f)= k 1 2 (T k + T k+1 )I(t k )
Omsampling med lokala polynom Exempel Vad göra? Transformer y(t i ) ŷ(kt ) Ŷ p n,h (f) = T k ŷ(kt )e 2πfkT
Omsampling med lokala polynom Exempel Vad göra? Transformer y(t i ) ŷ(kt ) Ŷ p n,h (f) = T k ŷ(kt )e 2πfkT 2.5 2 1.5 1 0.5 y(t) 0 0.5 1 1.5 2 2.5 time [s]
Basfunktioner Exempel Vad göra? Transformer ŷ(t) = k c k sinc( t b k a k ) Y (f) = y(t)e i2πft dt Ŷsinc(f) = k:f< 1 2a k c k a k e i2πfb k
Basfunktioner Exempel Vad göra? Transformer ŷ(t) = k c k sinc( t b k a k ) 1: b k = t k, a k = T k 2.5 2 1.5 1 0.5 y(t) 0 0.5 1 1.5 2 2.5 time [s] Y (f) = y(t)e i2πft dt Ŷsinc(f) = k:f< 1 2T k c k T k e i2πft k
Basfunktioner Exempel Vad göra? Transformer ŷ(t) = k c k sinc( t b k a k ) 1: b k = t k, a k = T k 2: b k = kt, a k = T, 2.5 2 1.5 1 0.5 2.5 2 1.5 1 0.5 y(t) 0 y(t) 0 0.5 0.5 1 1 1.5 1.5 2 2 2.5 2.5 time [s] time [s] Y (f) = y(t)e i2πft dt Ŷsinc(f) = T k:f< 1 2T c k e i2πfkt
Basfunktioner Exempel Vad göra? Transformer ŷ(t) = k c k sinc( t b k a k ) 1: b k = t k, a k = T k 2: b k = kt, a k = T, c k = ŷ(kt ) 2.5 2 1.5 1 0.5 2.5 2 1.5 1 0.5 y(t) 0 y(t) 0 0.5 0.5 1 1 1.5 1.5 2 2 2.5 2.5 time [s] time [s] Y (f) = y(t)e i2πft dt Ŷsinc(f) = T k:f< 1 2T ŷ(kt )e i2πfkt
Polynomisk interpolation Exempel Vad göra? Transformer ŷ(t) = p k (t), t k 1 < t t k Ŷ n sp (f) = k tk t k 1 p k (t)e i2πft dt
Polynomisk interpolation Exempel Vad göra? Transformer ŷ(t) = p k (t), t k 1 < t t k p k (t) = y(t k ) 2.5 2 1.5 1 0.5 y(t) 0 0.5 1 1.5 2 2.5 time [s] Ŷ 0 sp(f) = i 2πf k y ke i2πft k (1 e i2πft k )
Polynomisk interpolation Exempel Vad göra? Transformer ŷ(t) = p k (t), t k 1 < t t k p k (t) = y(t k ) p k (t) = y(t k) y(t k 1 ) T k (t t k ) + y(t k ) 2.5 2.5 2 2 1.5 1.5 1 1 0.5 0.5 y(t) 0 y(t) 0 0.5 0.5 1 1 1.5 1.5 2 2 2.5 2.5 time [s] time [s] Ŷ 0 sp(f) = i 2πf k y ke i2πft k (1 e i2πft k )
Additiv slumpsampling Exempel Vad göra? Transformer t k = t k 1 + T k, f T (τ) given Beräkna E[Ŷ 0 sp] för y(t) = sin(2πf 0 t)
Additiv slumpsampling Exempel Vad göra? Transformer t k = t k 1 + T k, f T (τ) given Beräkna E[Ŷ 0 sp] för y(t) = sin(2πf 0 t) 12 12 12 12 10 10 10 10 8 8 8 8 E[Y] 6 6 6 6 4 4 4 4 nts 2 0 1 2 3 4 5 frequency [Hz] 2 0 1 2 3 4 5 frequency [Hz] 2 0 1 2 3 4 5 frequency [Hz] 2 0 1 2 3 4 5 frequency [Hz]
Exempel Vad göra? Transformer Vi jämför approximationerna, Ŷ, med resultatet vid likformig sampling av en enkel sinus. Typen av approximation påverkar resultatet
Exempel Vad göra? Transformer Vi jämför approximationerna, Ŷ, med resultatet vid likformig sampling av en enkel sinus. Typen av approximation påverkar resultatet Approximationerna har starka kopplingar mellan varann
Exempel Vad göra? Transformer Vi jämför approximationerna, Ŷ, med resultatet vid likformig sampling av en enkel sinus. Typen av approximation påverkar resultatet Approximationerna har starka kopplingar mellan varann Omsampling är bättre än icke-equidistanta basfunktioner
Exempel Vad göra? Transformer Vi jämför approximationerna, Ŷ, med resultatet vid likformig sampling av en enkel sinus. Typen av approximation påverkar resultatet Approximationerna har starka kopplingar mellan varann Omsampling är bättre än icke-equidistanta basfunktioner Styckvis konstant approximation ger bra resultat, lätt att räkna med och generell
Vad har vi gjort? Reglersystem i nätverk påverkar varandras prestanda
Vad har vi gjort? Reglersystem i nätverk påverkar varandras prestanda Modeller för ködynamiken kan förbättra reglerprestanda Användandet av prediktioner och derivata ger liknande förbättringar vad gäller svängningar, men genomströmmningen påverkas olika
Vad har vi gjort? Reglersystem i nätverk påverkar varandras prestanda Modeller för ködynamiken kan förbättra reglerprestanda Användandet av prediktioner och derivata ger liknande förbättringar vad gäller svängningar, men genomströmmningen påverkas olika Sekvenser från ickelikformig sampling kan användas för identifiering av kontinuerliga modeller Likformig omsampling ger bättre överensstämmelse med Fourier transformen Stokastiska beräkningar kan ge indikation på hur samplingstidpunkterna ska väljas