![Page 1: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/1.jpg)
Lecture 7: Performance Issues with Virtualization
Xiaowei Yang (Duke University)
![Page 2: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/2.jpg)
Recap
• What’s cloud computing
• Security issues
![Page 3: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/3.jpg)
Today
• How virtualization impacts performance (measurement)– The Impact of Virtualization on Network
Performance of Amazon EC2 Data Center• Guohui Wang, T. S. Eugene Ng
– Performance Profiling in a Virtualized Environment• Jiaqing Du, Nipun Sehrawat, and Willy
Zwaenepoel
![Page 4: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/4.jpg)
Virtualization Impacts Network Performance
• Cloud computing uses virtualization to provide resource sharing– Time sharing– Processors, NIC, harddisk, performance
monitoring unit
Xen
Dom0Guest0 Guest1Driverdomain
NIC
![Page 5: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/5.jpg)
Measure the impact of virtualization
• Processor sharing
• Packet round-trip delay
• TCP/UDP throughput
• Packet loss
![Page 6: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/6.jpg)
Processor sharing
• Measurement methodology– CPUTest: loops for a million times– Gettimeofday() at the beginning and
end of the loop– Saves timestamps in memory– Dump the saves timestamps to disks
![Page 7: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/7.jpg)
Packet round-trip delay
• 10 ping probes per second, 5000 round-trip delay measurements
![Page 8: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/8.jpg)
TCP/UDP throughput
• UDPTest– The program itself must be able to read
and send data as fast as possible
128KB
UDPSend Dom0
XenNIC
UDPRecv Dom0
XenNIC
![Page 9: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/9.jpg)
TCP/UDP throughput
• TCPTest– Send and Receive window set to 256KB– 0.5ms– 4Gbps
128KB
TCPSend Dom0
XenNIC
TCPRecv Dom0
XenNIC
![Page 10: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/10.jpg)
Packet loss
• Badabing– Packet loss estimation– Active probes and statistical estimations
![Page 11: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/11.jpg)
Experiments setup: spatial
• Across different instances, availability zone
• For each availability zone (3 total)– 250 pairs of small instance– 50 pairs of medium instances– TCP/UDP
• May congest the network• Limit to 800MB data
– Badabing• One minute
![Page 12: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/12.jpg)
Experiments setup: temporal
• Over a period of time• Two small instance pairs and one
medium in each of the availability zone– Processor sharing, network
performance, and packet loss– Round by round for 150 hours– Each round separate for 10 minutes
![Page 13: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/13.jpg)
Results
![Page 14: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/14.jpg)
Processor sharing
![Page 15: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/15.jpg)
How to compute CPU share
• Loop > 1ms off• Loop ~ 3us on
![Page 16: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/16.jpg)
Distribution of CPU share
![Page 17: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/17.jpg)
Bandwidth measurement results
![Page 18: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/18.jpg)
Bandwidth measurement results
![Page 19: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/19.jpg)
A closer look
![Page 20: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/20.jpg)
Medium instances’ performance
![Page 21: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/21.jpg)
Why?
• TCP/UDP sender is scheduled off
• UDP > TCP– Sender can send when receiver is
scheduled off
![Page 22: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/22.jpg)
End-to-end delays
![Page 23: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/23.jpg)
Why
• Queuing?– Unlikely, rare packet loss–<500Mb/s TCP throughput no
congestion
• Receiver scheduled off– no reply until it’s on again
![Page 24: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/24.jpg)
Packet loss estimation
![Page 25: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/25.jpg)
Why?
• Measurement tool not considering virtualization does not fit– Badabing detects loss episodes– Loss episode• A packet loss within some time of now• One way delay is larger than a threshold
• Large variation leads to a high loss estimate
![Page 26: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/26.jpg)
Badabing overestimates loss
![Page 27: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/27.jpg)
Implications
• Delay = queuing + transmission + propagation + scheduled off
• Affect the fidelity of network testing if using small instances
• May cause performance problems for some applications– yet to be validated
![Page 28: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)](https://reader030.vdocuments.site/reader030/viewer/2022032705/56649dd15503460f94ac671f/html5/thumbnails/28.jpg)
Discussion• Easy fix: using medium or large instances
• I/O sharing
• Better way to share networks?
• Ways to detect whether you are sharing with another instance
• Try it on other instances?