Bandwidth Estimation: Metrics Mesurement Techniques and Tools By Ravi Prasad, Constantinos Dovrolis, Margaret Murray and Kc Claffy IEEE Network, Nov/Dec 2003 Presented by Sundar P Subramani
Outline Introduction Metrics Capacity Available bandwidth TCP throughput and Bulk transfer capacity Bandwidth estimation techniques Taxonomy of tools Conclusion
Introduction Bandwidth Physical layer – Spectral width of electromagnetic signals Data networks – Data rate In this paper they discuss about the data networks
Why b/w estimation needed? P2P applications form user-level networks based on b/w between them Overlay n/w s configure routing tables based on b/w of the links Service agreements between n/w provider and consumer done based on b/w availability at crucial points of the n/w
Why can’t SNMP be used? Network administrators can read router/switch information using SNMP protocol End-to-end bandwidth estimation cannot be done in the above way
Outline Introduction Metrics Capacity Available bandwidth TCP throughput and Bulk transfer capacity Bandwidth estimation techniques Taxonomy of tools Conclusion
Hops and segments Segment Links at layer 2 Physical point-to-point link Virtual circuit Shared access LAN (ETHERNET, FDDI) Hop Links at layer 3 Sequence of segments connected by switches, bridges and other layer 2 devices Path p from s to v Sequence of hops from s to v
Capacity Transmission rate limited by Capacity of the physical link Speed of the transmitter/receiver hardware Overhead in Layer 2 in terms of encapsulation and framing produces lower rate as far as layer 3 is concerned
Capacity Tx time of IP packet of size L L3 in a link of capacity C L2 is Where, H L2 is the length of the layer 2 header
Capacity of layer 3
Effect of packet size on capacity usage
Capacity Capacity of a hop Maximum possible IP layer transfer rate at that hop Maximum layer 2 transfer can occur only with MTU sized packets Bit rate mesured at IP layer transferring MTU sized packets
Capacity of a path Minimum link capacity determines capacity of the path Where H is the number of hops C i Is the capacity of the i th hop
Problems Traffic shapers Rate limiters Wireless networks like Operate at different rates 11, 5.5, 2 or 1 Mbps Definition holds during time at which the capacity remains constant
Average utilization At any time Link used fully utilization =1 Not used utilization =0 Avg utilization from time t-α to t is given by
Utilization of a link Link used 8 out of 20 time slots until T So the link utilization is 40%
Available bandwidth Let u i be the average utiliztion of the link i over a period of time Let C i be the capacity of the hop i Then the available bandwidth during that period A i = (1 – u i ) C i Available bandwidth along the path
Pipe model
Assumptions Link utilization remains constant over the duration of mesurement Reasonable for short intervals Load variations impact the measurement over a long period So available b/w mesurements should be done quickly Since capacity remains constant those measurements need not be made quickly
TCP throughput and Bulk transfer capacity TCP throughput depends on various parameters Congestion window RTT Slow start mechanism Capacity and load along the path BTC Maximum capacity obtainable by a TCP connection
Difference between BTC and available b/w BTC is TCP specific Available b/w is transport protocol independent BTC depends on the how a TCP connection throughput is affected by other flows Available b/w assumes average load remains constant and estimates additional bandwidth
Outline Introduction Metrics Capacity Available bandwidth TCP throughput and Bulk transfer capacity Bandwidth estimation techniques Taxonomy of tools Conclusion
Variable size packet probing Measures capacity of each hop Measure RTT Limit packet propogation by TTL Uses ICMP to measure RTT until that hop
Variable size packet probing RTT includes: Serialization delay Delay to send packet of length L across channel of capacity C = L/C Propogation delay Time taken to traverse the link Queuing delay Delay in routers/Switches
Variable size packet probing Send multiple packets and calculate minimum RTT Assumption: for minimum RTT no queuing delay RTT has two terms Delay independent of packet size = α Based on packet size where
Variable size packet probing
packet size vs RTT
Packet pair dispersion probing Measures end-to-end capacity
Problems Assumption that no other traffic exists is not real Existing traffic can increase/decrease the estimate Solution? Send multiple pairs and get a statistical estimate Does not always yield a correct estimate
Self-loading periodic streams Measures end-to-end available bandwidth Sends k packets at different rates Receiver notifies the “one way delay trends” If stream rate greater than available b/w One way delay will grow large Else Packets will not make the one way delay large
One way delay
Train dispersion probing Similar to packet pair dispersion probing Instead of sending just two packets send a train of packets Calculate the average dispersion rate
Taxonomy of estimation tools Per-hop capacity estimation tools Pathchar First tool to implement Clink On routing instability collects data along all paths Until one path provides statistically significant estimate Pchar Uses linear regression algorithms
Taxonomy of estimation tools end-to-end capacity estimation tools BProbe Uses packet pair dispersion Uses variable sized packets to improve efficiency Access needed only in sender side, uses ICMP messages Nettimer Uses sophisticated “kernel density algorithm” to provide better accuracy Pathrate Sprobe
Available bandwidth estimation tools CProbe Measures dispersion of a train of eight maximum sized packets It measures dispersion rate and not available bandwidth Dispersion rate depends on all links of the path and the train’s initial rate Available b/w depends only on tight link of the path Pathload Implements SLoPS Used UDP and requires access at both ends Reports range Center represents the average Range represents values during mesurement period
TCP throughput and BTC measurement tools Treno emulates TCP sends UDP packets to receiver Replies with ICMP port unreachable Does not require access to remote end ICMP rate limited Accuracy of Treno affected Cap More accurate than Treno Uses UDP for TCP data and ACK Requires access at both ends
Intrusiveness If probe packets comparable to available b/w VPS are non intrusive One packet per RTT PPTD tools create bursts which last only for a very short duration Only a small fraction of available b/w used BTC tools are intrusive They capture all b/w for a specific duration