Transcript Network Available Bandwidth Measurements XiaoLong HE
Network Available Bandwidth Measurements
XiaoLong HE
Outline of the Talk
Problems Related Work Traffic Design Our Approach (SimProbe) Analysis of Simulation Results SMRT Implementation Lessons Learned Future Work 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 2
Why measurement?
Measurement is critical to network control.
Measurement for selecting server/ISP Measurement for verifying network configuration Measurement for designing real-time applications Measurement for load balancing in WAN Measurement for accounting 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 3
Taxonomy of Internet Network Measurement Approaches
Sender-based vs. Receiver-based Passive Watch vs. Active Probe Layer of Protocol used 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 4
Measurement Problems
Route Fluttering
Packet Loss
Out of Order packet delivery
Clocks Synchronization
Routers reject ICMP due to denial of series attacks.
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 5
Bottleneck Bandwidth
Bottleneck bandwidth: the maximal rate at which data can be sent along a connection, determined by the slowest element in the entire chain. 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 6
Available Bandwidth
Available Bandwidth:how fast can the data in fact be transmitted over the connection.
[PacketSize/(PacketSize+CompetitorPacketSize)] * Bottleneck Bandwidth 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 7
Related Works
Bprobe/Cprobe -
Robert L. Carter and Mark E. Crovella, Boston University, 1996
Ping -
M. Muuss, U.S.Army Ballistic Research Laboratory, 1983
Traceroute -
Van Jacobson, Berkeley, Univeristy of California, 1997
Treno -
M. Mathis and J. Mahdavi, Proceedings of INET’96, Montreal, 1996 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 8
Bprobe/Cprobe
Bottleneck Bandwidth = (PacketSize/Time) Available Bandwidth = (S2+…+Sn)/(Tn-T1) 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 9
SimProbe Simulator
To carry the thesis out, we build a Java-based discrete event simulator.
Swing, Java2D and AWT packets for GUI design Thread for comparing different probing methods Port it to Unix (without GUI) for long time simulation 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 10
How traffic is generated in SimProbe Simulator
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 11
Traffic Patterns supported by SimProbe
Flat/Static
Slope
Web (
modifed code by Arthur Blais
)
– Time between requests: Pareto Distribution – Number of embedded references: Pareto Distribution – Time between references: Weibull Distribution – File Size: Body (Lognormal Distribution) Tail (Pareto Distribution) 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 12
Network Topology Used in This Simulation Study
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 13
Our Approaches
Sending as few packets as possible. Using round trip time measurements for network available bandwidth.
Trip Time Measurement Formula: TripTime*MeasuredAvailableBandwidth = MinimalTripTime*MaximalAvailableBandwidth – Round Trip Time Measurement SMRT MMRT – Unidirectional Trip Time Measurement SMUT MMUT Time Gap between packets – ACB (Adaptive Cprobe) 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 14
SMRT(Single Msg Round Trip Time Measurement)
Using multiple packets to find minimum of the round trip time of a connection Using Bprobe to get the maximal available bandwidth of a connection Sending single probing packet Using round trip time to estimate the available bandwidth of the connection 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 15
MMRT
Use Bprobe to get the maximal available bandwidth of a connection Using multiple packets to find minimum of the round trip time of a connection Sending multiple packets Round trip time for estimating ABW 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 16
SMUT
Use Bprobe to get the maximal available bandwidth of a connection Using multiple packets to find minimum of the unidirectional trip time of a connection Sending single probing packet Using unidirectional trip time for estimating available bandwidth 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 17
MMUT
Use Bprobe to get the maximal available bandwidth of a connection Using multiple packets to find minimum of the unidirectional trip time of a connection Sending multiple probing packets Using unidirectional trip time for estimating available bandwidth 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 18
Simulation result analysis
Difference Metric:
|AvailableBandwidth - MeasuredAvailableBandwidth| AvailableBandwidth – AvailableBandwidth = [PacketSize/(PacketSize+QueuingSize)]* Bottleneck Bandwidth – MeasuredAvailableBandwidth = (MinimalTripTime*MaximalAvailableBandwidth)/ TripTime DelayTime: TripTime - MinimalTripTime 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 19
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 20
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 21
SMRT Random Characteristics
Problem: Dependent on the arrival time of probing packet on bottleneck link Three Scenarios: 1) no queuing time, yields bottleneck available bandwidth.
2) yields the lower bound of bottleneck available bandwidth 3) yields average bottleneck available bandwidth 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 22
Impact of Packet Size on SMRT
DelayTime rises when probing packets size increases.
Smaller packet size gets worse results RoundTripTime = MinimalRoundTripTime + DelayTime Examples: – T1 / ( T1 + T) – T2 / ( T2 + T)
PacketSize impact on Difference
3.5
3 2.5
2 1.5
1 0.5
0 20 46 80 400 800
PacketSize (Bytes)
1200 1500
PackeSize impact on DelayTime
0.12
0.1
0.08
0.06
0.04
0.02
0 20 46 80 400 800 1200 1500
Pack e tSize (Byte s )
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 23
Impact of Link Length on SMRT
LinkLe ngth/Diffe re nce
The result accuracy is worse with the length increasing Delay Time dominates RoundTrip Time at shorter link length Propagation time dominates RoundTrip Time at longer link length 7 6 5 4 3 2 1 0 100 1000 10000 100000
Link Le ngth (m e te rs )
1000000 24 4/25/2020 XiaoLong He Network Available Bandwidth Measurements
Impact of Router Speed on SMRT
No apparent difference for 1GBps or 10GBps Router Speed affects the time gap between packets Slow router speed enlarges the time gap between packets Router Speed must be faster than link speed 1.4
1.2
1 0.8
0.6
0.4
0.2
0
RouterSpeed impact on Difference
1 2 1GBps 10GBps 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 25
Impact of Bottleneck Link Bandwidth on SMRT
SMRT results follow the available bandwidth trend SMRT performance is similar to the performance trend by SMRT performance with 10MBps bottleneck link bandwidth
SMRT result w ith 200MBps Bottleneck Bandw idth
AvailableBandwidth 250000000 200000000 Meas uredABandwidt h 150000000 100000000 50000000 0 1 2 3 4 5 6 7 8 9
Tim e
10 11 12 13 14 15 16 17
SMRT Performance with 200MBps Bottleneck Bandwidth
40 35 30 25 20 15 10 5 0 20 00 00 00 0 20 00 00 00 0 20 00 00 00 0 20 00 00 00 0 44 70 35 9.6
15 57 99 4.4
89 82 52 .56
62 32 59 .7
Available Bandwidth (Bps)
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 26
MMRT
Try to alleviate the random characteristic of SMRT Small time gap between probing packets may experience big traffic difference in Slope traffic pattern Obvious improvement on SMRT performance in web traffic 4/25/2020
MMRT Performance
5 4.5
4 3.5
3 2.5
2 1.5
1 0.5
0 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 63 85 54 2.
55 2 84 16 0.
14 7 80 38 9.
80 1 48 61 .1
56 5 42 71 .3
39 5 96 93 .0
29 4 42 15 .3
21 3 81 79 .4
16 7 68 01 .4
8
Available Bandwidth
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
Difference Comparison of SMRT and MMRT
SMRT MMRT XiaoLong He Network Available Bandwidth Measurements 27
SMUT
Measure the available bandwidth on unidirectional route.
SMUT has the same random characteristics as SMRT.
12000000 10000000 8000000 6000000 4000000 2000000 0
SMUT
Available Bandw idth Measured Available Bandw idth
Tim es
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 28
MMUT
Try to alleviate the random characteristic of SMUT Small time gap between probing packets may experience big traffic difference with slope traffic pattern MMUT has Better performance than SMUT with web traffic pattern 0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
Difference Comparison of SMUT and MMUT
SMUT MMUT 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 29
Using the last measured available bandwidth Send two packets once a time Reprobing in Cprobe if time gap between packets is inside of a range Not better than Cprobe
ACB
Adaptive Cprobe
A vailable Band MA vailable Band 9000000 8000000 7000000 6000000 5000000 4000000 3000000 2000000 1000000 0 1 2 3 4 5 6 7 8
Time s
9 10 11 12 13 14 9000000 8000000 7000000 6000000 5000000 4000000 3000000 2000000 1000000 0
Cprobe
Available Band MAvailable Band
Times
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 30
Summary of Simulation Analysis
12000000 10000000 8000000
Summary of Simulation Analysis
Cprobe Available Band Cprobe Measured Available Bandwidth SMRT AvailabeBandwidth SMRT Measured Available Bandwidth SMUT Available Bandwidth SMUT Measured Available Bandwidth 6000000 4000000 2000000 0 1 3 5 7 9 11 13 15 17
Times
19 21 23 25 27 29 31 31 4/25/2020 XiaoLong He Network Available Bandwidth Measurements
Implementation of SMRT
SMRT is implemented in C Maintain a host file, which specifies the list of sites to be probed Bprobe is used to measure the largest bottleneck available bandwidth Ping is used to measure the smallest round trip time of a connection Using Bprobe and Ping to collect the history information for each host in the file, at offpeak and over a long period Probed host must be contained in the host file Round trip time of the probing message is used to measure the instant available bandwidth 32 4/25/2020 XiaoLong He Network Available Bandwidth Measurements
Implementation results of SMRT
We probed a list of mirror sites for popular software packages such as perl, linux and netscape 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 33
Implementation results of SMRT
Orst is good choice for us to download software
DownLoadTimes (seconds)
700 600 500 400 300 200 100 0 Ti m es 21 :0 0 PM 22 :0 0 PM 23 :0 0 PM 12 :0 0 AM 1: 00 2: A 00 M :0 0 3: AM 00 :0 0 4: AM 00 :0 0 5: AM 00 :0 0 6: AM 00 :0 0 7: AM 00 :0 0 8: AM 00 :0 0 9: AM 00 :0 0 AM
Times
UncDownloadTime gatechDownloadTime buffaloDownloadTime orstDownloadTime 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 34
Implementation results of SMRT
Orst gives us relative short round trip time
RoundTripTime (ms)
160 140 120 100 80 60 40 20 0 Ti m es 21 :0 0 PM 22 :0 0 PM 23 :0 0 PM 12 :0 0 AM 1: 00 A 2: M 00 :0 0 AM 3: 00 :0 0 AM 4: 00 :0 0 AM 5: 00 :0 0 AM 6: 00 :0 0 AM 7: 00 :0 0 AM 8: 00 :0 0 AM 9: 00 :0 0 AM
Times
UncPing gatechPing buffaloPing orstPing 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 35
Lessons Learned
Impact of router speed on traffic generation – Problem: When router speed is lower than the bottleneck link speed, we can not get expected traffic?
– Solution: Make sure the router speed in our connection is greater than the bottleneck link speed, especially for the large bottleneck link bandwidth 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 36
Lessons Learned (Cont)
Cprobe Limitations – Probing returned packets interfere with later probing packets – Queuing time is not the only results from connection competition Examined factors: – Router Speed – Hop Number – Message Size – Message Number 37 4/25/2020 XiaoLong He Network Available Bandwidth Measurements
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 38
4/25/2020 XiaoLong He Network Available Bandwidth Measurements 39
Lessons Learned (Cont)
OOP design in Java – Problem: Chart can not be updated when we call the chart in a thread directly.
– Solution: Using SwingUtilities.invokeLater Class Double data type precision problem – Problem: The round trip time with traffic pattern is even shorter than the time without any traffic – Reason: machine double type data has a precision problem in representing a value exactly – Solution: Because difference is small, so ignore it 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 40
Future Works
How to measure available bandwidth of a host whose history information is not available. How to find a better available bandwidth estimation formula to improve the accuracy of SMRT Convert MMRT, SMUT and MMUT simulation code from Java to C More traffic route to test the reliability of SMRT and other methods 4/25/2020 XiaoLong He Network Available Bandwidth Measurements 41