lecture 7: performance issues with virtualization xiaowei yang (duke university)

28
Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Upload: vanessa-stokes

Post on 24-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Lecture 7: Performance Issues with Virtualization

Xiaowei Yang (Duke University)

Page 2: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Recap

• What’s cloud computing

• Security issues

Page 3: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

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)

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)

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)

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)

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)

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)

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)

Packet loss

• Badabing– Packet loss estimation– Active probes and statistical estimations

Page 11: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

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)

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)

Results

Page 14: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Processor sharing

Page 15: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

How to compute CPU share

• Loop > 1ms off• Loop ~ 3us on

Page 16: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Distribution of CPU share

Page 17: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Bandwidth measurement results

Page 18: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Bandwidth measurement results

Page 19: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

A closer look

Page 20: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

Medium instances’ performance

Page 21: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

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)

End-to-end delays

Page 23: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

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)

Packet loss estimation

Page 25: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

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)

Badabing overestimates loss

Page 27: Lecture 7: Performance Issues with Virtualization Xiaowei Yang (Duke University)

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)

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?