INM 2008 Orlando, Florida A Hidden Markov Model Approach to Available Bandwidth Estimation and Monitoring Cesar D. Guerrero Miguel A. Labrador Department of Computer Science and Engineering University of South Florida {guerrerc,
INM Motivation Available Bandwidth Hidden Markov Model Estimation Tool: Traceband Performance Evaluation Moving Average Conclusions Outline
INM Network applications can take advantage of the available bandwidth: -Network management, transport layer and routing protocols, overlay networks, traffic engineering, call admission control, among others Current available bandwidth tools cannot be applied in all application domains. -Long convergence times -Low accuracy -High overhead Reducing estimation time while maintaining accuracy and low intrusion is an open research question. Motivation Cesar D. Guerrero and Miguel A. Labrador. On the Applicability of Available Bandwidth Estimation Techniques and Tools. Submitted to IEEE Computer Magazine
INM Available Bandwidth Definition The Available Bandwidth (AB) is the non-utilized capacity in the link: AB in the path is the minimum of all available bandwidths, which is the AB in the tight link: CtCt t Non-utilized capacity Capacity consumed by cross traffic Tight link AB link =C link [1-u link ] = C link – (Cross traffic) link
INM Available bandwidth can be estimated from the packet pair dispersions: Cross traffic Probing Packets P2P1 Δ in Tight link capacity C t P2P1 Δ out P2P1 Δ out P2P1 Δ out Available Bandwidth Packet pair sampling observations
INM Hidden Markov Model Available Bandwidth Markov Model MLMMHLH a 11 a 12 a 21 a 22 a 23 a 32 a 33 a 34 a 43 a 44 a 45 a 54 a 55 HIDDEN
INM Hidden Markov Model Elements and initial values ξ1ξ1 ξ t ξ t-1 ξ T X1X1 X t-1 XtXt XTXT AAA BBBB States: N=10 S = {S 1, S 2, …,S 10 } Observation symbols: M=10 V = {1, 2, …, 10} Transition Probability Matrix: A Observation Probabilities: B Initial state probabilities: Π Π = [ P( X 1 = S i ) ], 1≤ i ≤ N a 1,1 a 1,2 0…0 a 2,1 a 2,2 a 2,3 0 … 0………0 … 0a 9,8 a 9,9 a 9,10 0…0a 10,9 a 10,10 A = random P(1/S 1 )P(2/S 1 )…P(10/S 1 ) P(1/S 2 )P(2/S 2 )…P(10/S 2 ) ………… P(1/S 10 )P(2/S 10 )…P(10/S 10 ) B = … …0.01 ………… …0.40 fixed
INM Estimation Tool: Traceband* Read tm; /* Traceband total running time */ do { Send a train of |O|=30 packet pairs; /* |O|=50 every 10 trains */ } while running_time <= tm; Send last_estimation signal; Read_HMM(N,M,B); A=onestep_random(N,N); Pi=random(N); do { Receive a train of |O| packet pairs; For each packet pair at time t=1,..,T { rel_dispersion t = є t = (Δ out - Δ in ) / Δ in ; observ t = ξ t = ceil(M*abs(1-є t )); } Observ_seq = O = {ξ 1, ξ 2, …, ξ T }; /* Update A, Pi: */ HMM=BWelch(HMM, O); /* Find the state sequence: */ Q=Viterbi(HMM,O) Print AB=mean(Q); /* AB estimation */ } until last_estimation signal; Sender Receive r traceband_snd.ctraceband_rcv.c * Available at
INM Mbps Cross Traffic Poisson Bursty ProbingTraffic Performance Evaluation Testbed and Experiments Available Bandwidth: 7 Mbps
INM Performance Evaluation Poisson Cross Traffic PathloadSpruceTraceband ToolError (%)Estimations per minute Overhead (%) Pathload6.7± ± ± 0.20 Spruce7.7± ± ± 0.02 Traceband8.8± ± ± % Confidence
INM Moving Average i = 5, R S i-4,i (AB), mean i-4,i (AB) ΔAB=(S i-4,i *Q 5,0.95 )/(5) 0.5 yes no AB i = mean i-4,i (AB) ± ΔAB |AB i - mean i-4,i (AB)| > ΔAB 5,950,000 6,675,000 5,975,000 6,775,000 7,450,000 AB_MA(1) = 6,345,000 AB_MA i-4 = mean i-4,i (AB) (-) 735,613 5,609,387 7,080,613 (+) 735,613 7,450,000 > UPDATE 7,080,613 7,080,613
INM Performance Evaluation Poisson Cross Traffic – Moving Average PathloadSpruceTraceband ToolError (%)Estimations per minute Overhead (%) No MAMA Pathload6.7± ± ± ± 0.20 Spruce7.7± ± ± ± 0.02 Traceband8.8± ± ± ± % Confidence
INM Performance Evaluation Bursty Cross Traffic PathloadSpruceTraceband
INM Main contributions: A novel HMM approach to estimate available bandwidth in an end to end path. Traceband: A new available bandwidth estimation tool that can be used by applications requiring accurate, low overhead, and fast estimations. A Moving Average algorithm to filter “peak” values. Regarding to the performance evaluation: Traceband is as accurate as Spruce and Pathload but considerably faster, and introduce minimum overhead. Traceband's convergence time is demonstrated using bursty cross-traffic, as it is the only tool that accurately reacts to zero- traffic periods Conclusions
INM Thanks! Questions?