690 likes | 704 Views
This talk provides an overview of the advancements in bandwidth estimation techniques in the last 10 years, including capacity estimation, packet pairs and CapProbe technique, available bandwidth estimation, iterative probing, direct probing, and percentile estimation.
E N D
Bandwidth estimation in computer networks: measurement techniques &applications Constantine Dovrolis College of Computing Georgia Institute of Technology
The Internet as a “black box” • Several network properties are important for applications and transport protocols: • Delay, loss rate, jitter, capacity, congestion, load, etc • But, routers and switches do not provide direct feedback to end-hosts (except ICMP, also of limited use) • Mostly due to scalability, policy, and simplicity factors
probe packets Can we guess what is in the black box? • End-systems can infer network state through end-to-end (e2e) measurements • Without any feedback from routers • Objectives:accuracy, speed, non-intrusiveness
Bandwidth estimation in packet networks • Bandwidth estimation (bwest): • Inference of various throughput-related metrics with end-to-end network measurements • Early works: • Keshav’s packet pair method for congestion control (‘89) • Bolot’s capacity measurements (’93) • Carter-Crovella’s bprobe and cprobe tools (’96) • Jacobson’s pathchar – per hop capacity estimation (‘97) • Melander’s TOPP avail-bw estimation (’00) • In last ± 5 years: • Several new estimation techniques • Many research papers at prestigious conferences • More than a dozen of new measurement tools • Several applications of bwest methods • Significant commercial interest in bwest technology
Overview • This talk is an overview of the most important developments in bwest area over the last 10 years • A personal bias could not be avoided.. • Overview • Bandwidth-related metrics • Capacity estimation • Packet pairs and CapProbe technique • Available bandwidth estimation • Iterative probing: Pathload and PathChirp • Direct probing: Spruce • Comparison of tools • Percentile estimation: Pathvar • Applications • Overlay-based Video Streaming • SOcket Buffer Auto-Sizing (SOBAS)
Network bandwidth metrics Ravi S.Prasad, Marg Murray, K.C. Claffy, Constantine Dovrolis, “Bandwidth Estimation: Metrics, Measurement Techniques, and Tools,” IEEE Network, November/December 2003.
Capacity definition • Maximum possible end-to-end throughput at IP layer • In the absence of any cross traffic • Achievable with maximum-sized packets • If Ci is capacity of link i, end-to-end capacity C defined as: • Capacity determined by narrow link
Available bandwidth definition • Per-hop average avail-bw: • Ai = Ci (1-ui) • ui: average utilization • A.k.a. residual capacity • End-to-end avg avail-bw A: • Determined by tight link • ISPs measure per-hop avail-bw passively (router counters, MRTG graphs)
The avail-bw as a random process • Instantaneous utilization ui(t): either 0 or 1 • Link utilization in (t, t+t) • Averaging timescale: t • Available bandwidth in (t, t+t) • End-to-end available bandwidth in (t, t+t)
Available bandwidth distribution • Avail-bw has significant variability • Need to estimate second-order moments, or even better, the avail-bw distribution • Variability depends on averaging timescale t • Larger timescale, lower variance • Distribution is Gaussian-like, if t >100-200 msec and with sufficient flow multiplexing
E2E Capacity estimation (a’):Packet pair technique Constantine Dovrolis, Parmesh Ramanathan, David Moore, “Packet Dispersion Techniques and Capacity Estimation,” In IEEE/ACM Transactions on Networking, Dec 2004.
Packet pair dispersion • Packet Pair (P-P) technique • Originally, due to Jacobson & Keshav • Send two equal-sized packets back-to-back • Packet size: L • Packet trx time at link i: L/Ci • P-P dispersion: time interval between last bit of two packets • Without any cross traffic, the dispersion at receiver is determined by narrow link:
Cross traffic interference • Cross traffic packets can affect P-P dispersion • P-P expansion: capacity underestimation • P-P compression: capacity overestimation • Noise in P-P distribution depends on cross traffic load • Example: Internet path with 1Mbps capacity
Multimodal packet pair distribution • Typically, P-P distribution includes several local modes • One of these modes (not always the strongest) is located at L/C • Sub-Capacity Dispersion Range (SCDR) modes: • P-P expansion due to common cross traffic packet sizes (e.g., 40B, 1500B) • Post-Narrow Capacity Modes (PNCMs): • P-P compression at links that follow narrow link
E2E Capacity estimation (b’):CapProbe Rohit Kapoor, Ling-Jyh Chen, Li Lao, Mario Gerla, M. Y. Sanadidi, "CapProbe: A Simple and Accurate Capacity Estimation Technique," ACM SIGCOMM 2004
Compression of p-p dispersion • First packet queueing => compressed dispersion • Capacity overestimation
Expansion of p-p dispersion • Second packet queueing => expansion of dispersion • Capacity underestimation
CapProbe • Both expansion and compression result from queuing delays • Key insight: packet pair with zero queueing delay would yield correct estimate • measure RTT for each probing packet of packet pair • estimate capacity from pair with minimum RTT-sum Capacity
Measurements - Internet, Internet2 • CapProbe implemented using PING packets, sent in pairs
Avail-bw estimation (a’):Pathload Manish Jain, Constantine Dovrolis, “End-to-End Available Bandwidth: Measurement Methodology, Dynamics, and Relation with TCP Throughput,” IEEE/ACM Transactions on Networking, Aug 2003.
Probing methodology • Sender transmits periodic packet stream of rate R • K packets, packet size L, interarrival T = L/R • Receiver measures One-Way Delay (OWD) for each packet • D(k) = tarv(k) - tsnd(k) • OWD variations: Δ(k) = D(k+1) – D(k) • Independent of clock offset between sender/receiver • With stationary & fluid-modeled cross traffic: • If R > A, then Δ(k) > 0 for all k • Else, Δ(k) = 0 for all k
Self-loading periodic streams • Increasing OWDs means R>A • Almost constant OWDs means R<A
Example of OWD variations • 12-hop path from U-Delaware to U-Oregon • K=100 packets, A=74Mbps, T=100μsec • Rleft = 97Mbps, Rright=34Mbps • Ri
Iterative probing and Pathload Avail-bw time series from NLANR trace • Iterative probing in Pathload: • Send multiple probing streams (duration τ) at various rates • Each stream samples path at different time interval • Outcome of each stream is either Ri > A or Ri < A • Estimate upper and lower bound for avail-bw variation range
Avail-bw estimation (b’):PathChirp Vinay Ribeiro, Rolf Riedi, Jiri Navratil, Rich Baraniuk, Les Cottrell, “PathChirp: Efficient Available Bandwidth Estimation,” PAM 2003
Chirp Packet Trains • Exponentially decrease packet spacing within packet train • Wide range of probing rates • Efficient: few packets
Chirps vs. CBR Trains • Multiple rates in each chirping train • Allows one estimate per-chirp • Potentially more efficient estimation
Comparison with Pathload • 100Mbps links • pathChirp uses 10 times fewer bytes for comparable accuracy
Avail-bw estimation (c’):Direct probing & Spruce Jacob Strauss, Dina Katabi, and Frans Kaashoek “A Measurement Study of Available Bandwidth Estimation Tools,” IMC 2003
Direct probing • Iterative methods are relatively slow and they need to probe at multiple rates • Direct probing methods • Probe only once at a rate Ri and determine avail-bw from output rate Ro • Spruce (IMC’03) followed this approach • With a single-link fluid model (capacity Ct): • Sender sends periodic stream with input rate Ri • Receiver measures output rate Ro
What’s wrong with Direct Probing? • Two major issues: • Tight link capacity Ct is assumed to be known • What if tight link is different than narrow link? • Input rate Ri equal to source rate (set equal to Ct) • But what would happen in a multi-hop path? • Probing stream can arrive at tight link with lower rate than source rate(due to a link with lower avail-bw than Ct before the tight link) • Results in avail-bw underestimation • For details, see CCR paper, Oct 2006, by Lao, Dovrolis and Sanadidi, • “The Probe Gap Model can Underestimate the Available Bandwidth of Multihop Paths”
Avail-bw estimation (d’): percentile estimation Manish Jain, Constantine Dovrolis, “End-to-End Estimation of the Available Bandwidth Variation Range,” ACM SIGMETRICS 2005
Avail-bw distribution and percentiles • Avail-bw random process, in timescale t: At(t) • Assume stationarity • Marginal distribution of At: • Ft(R) = Prob [At ≤ R] • Ap :pth percentile of At, such that p = Ft(Ap) • Objective: Estimate variation range [AL, AH] for given averaging timescale t • ALand AH are pL and pH percentiles of At • Typically, pL =0.10 and pH =0.90
Percentile sampling • Question : Which percentile of At corresponds to rate R? • Given R and t, estimate Ft(R) • Assume that Ft(R) is inversible • Sender transmits periodic packet stream of rate R • Length of stream = measurement timescale t • Receiver classifies stream as • Type-G if At ≤ R: I(R)= 1 with probability Ft(R) • Type-L otherwise: I(R)= 0 with probability 1-Ft(R) • Collect N samples of I(R) by sending N streams of rate R • Number of type-G streams: I(R,N)= ΣiIi(R) • E[ I(R,N) ] = Ft(R) * N • Percentile rank of probing rate R: Ft(R) = E[I(R,N)] / N • Use I(R,N)/N as estimator of Ft(R)
Non-parametric estimation • Does not assume specific avail-bw distribution • Iterative algorithm • Stationarity requirement across iterations • N-th iteration: probing rate Rn • Use percentile sampling to estimate percentile rank of Rn • To estimate the upper percentile AH with pH = Ft(AH): • fn = I(Rn,N)/N • If fn is between pH±r, report AH = Rn • Otherwise, • If fn > pH +r, set Rn+1 < Rn • If fn < pH -r, set Rn+1 > Rn • Similarly, estimate the lower percentile AL
Validation example • Verification using real Internet traffic traces b=0.05 b=0.15 • Non-parametric estimator tracks variation range within 10-20% • Selection of b depends on traffic • Traffic spikes/dips may not be detected if b is too small • But larger b causes larger MSRE
Parametric estimation • Assume Gaussian avail-bw distribution • Justified assumption for large degree of traffic multiplexing • And/or for long averaging timescale (>200msec) • Gaussian distribution completely specified by • Mean m and standard deviation st • pth percentile of Gaussian distribution • Ap = m + st f-1(p) • Sender transmits N probing streams of rates R1 and R2 • Receiver determines percentiles ranks corresponding to R1 and R2 • m and st can be then estimated by solving • R1 = m + st f-1(p1) • R2 = m + st f-1(p2) • Variation range is then calculated from: • AH = m + st f-1(pH) • AL = m + st f-1(pL)
Validation example • Verification using real Internet traffic traces • Evaluated with both Gaussian and non-Gaussian traffic Gaussian traffic non-Gaussian traffic • Parametric algorithm is more accurate than non-parametric algorithm, when • traffic is good match to Gaussian model • in non-stationary conditions
Experimental comparison of avail-bw estimation tools Alok Shriram, Marg Murray, Young Hyun, Nevil Brownlee, Andre Broido, k claffy, ”Comparison of Public End-to-End Bandwidth Estimation Tools on High-Speed Links,” PAM 2005
Accuracy comparison - SmartBits Direction 1, Measured AB Direction 2, Measured AB Actual AB
Accuracy comparison - TCPreplay Actual Available Bandwidth Measured Available Bandwidth
Measurement latency comparison • Abing: 1.3 to 1.4 s • Spruce: 10.9 to 11.2 s • Pathload: 7.2 to 22.3 s • Patchchirp: 5.4 s • Iperf: 10.0 to 10.2 s
Applications of bandwidth estimation • Large TCP transfers and congestion control • Bandwidth-delay product estimation • Socket buffer sizing • Streaming multimedia • Adjust encoding rate based on avail-bw • Intelligent routing systems • Overlay networks and multihoming • Select best path based on capacity or avail-bw • Content Distribution Networks (CDNs) • Choose server based on least-loaded path • SLA and QoS verification • Monitor path load and allocated capacity • End-to-end admission control • Network “spectroscopy” • Several more..
Overlay-based Video Streaming M. Jain and C. Dovrolis, “Path Selection using Available Bandwidth Estimation in Overlay-based Video Streaming,” published at IFIP Networking 2007.
Motivation • Video/IPTV next “killer-application” in the Internet • IP networks present several challenges • Network impairments such as losses and jitter • Lack of QoS guarantees • Previous approaches • Adapt encoding rate • Video quality not consistent • Use proactive error correction techniques such as forward error correction (FEC) or retransmission • Bandwidth overhead for FEC • Potentially larger playback delay • Error concealment techniques • Limited applicability & effectiveness
Exploiting Path Diversity • Multihoming and overlay networks make multiple paths available between sender and receiver • Applications can dynamically switch from one path to another • Based on observed (or predicted) performance • Serves as an additional adaptation mechanism • Schemes using path diversity based on network measurement have been explored • Path selection techniques: Tao et al. [ACM Multimedia ‘04] and Amir et al. [NOSSDAV ‘05] • Multi-description coding techniques: Begen et al. [Signal Processing ‘05] and Apostolopoulos et al. [INFOCOM ‘02] • They use only loss and jitter measurements • Employ dummy packets for measurement
Our Approach • We consider use of overlay network for video streaming • To maximize perceived video quality • Novel features in our approach: • Use avail-bw to drive dynamic path selection • Use VQM technique instead of PSNR to measure video quality • Described in ITU-T recommendation J.144 • Use data packets to substitute “dummy” packets for network measurements • Objective: Evaluate the performance of different path selection schemes in terms of perceived video quality