NoHype - Next Generation Networks Group [PDF]

NoHype: Virtualized Cloud Infrastructure without the Virtualization. Eric Keller, Jakub Szefer, Jennifer Rexford, Ruby L

0 downloads 4 Views 555KB Size

Recommend Stories


Next Generation Optical Networks
The best time to plant a tree was 20 years ago. The second best time is now. Chinese Proverb

Next Generation Networks in Europe
And you? When will you begin that long journey into yourself? Rumi

Medical Alarms and Next Generation Networks
It always seems impossible until it is done. Nelson Mandela

Embracing SDN in Next Generation Networks
How wonderful it is that nobody need wait a single moment before starting to improve the world. Anne

oss solution for next generation networks
Happiness doesn't result from what we get, but from what we give. Ben Carson

PDF Next Generation Product Development
Goodbyes are only for those who love with their eyes. Because for those who love with heart and soul

Next Generation
Don't be satisfied with stories, how things have gone with others. Unfold your own myth. Rumi

Next Generation Risk Assessment
If your life's work can be accomplished in your lifetime, you're not thinking big enough. Wes Jacks

Next Generation Biomaterials Discovery
Be who you needed when you were younger. Anonymous

next generation it & operations
Be grateful for whoever comes, because each has been sent as a guide from beyond. Rumi

Idea Transcript


NoHype: Virtualized Cloud Infrastructure without the Virtualization Eric Keller, Jakub Szefer, Jennifer Rexford, Ruby Lee Princeton University

ISCA 2010

Virtualized Cloud Infrastructure • Run virtual machines on a hosted infrastructure

• Benefits… – Economies of scale – Dynamically scale (pay for what you use)

Without the Virtualization • Virtualization used to share servers – Software layer running under each virtual machine

Guest VM1 Guest VM2

Apps

Apps

OS

OS

Hypervisor

servers Physical Hardware 3

Without the Virtualization • Virtualization used to share servers – Software layer running under each virtual machine

• Malicious software can run on the same server – Attack hypervisor – Access/Obstruct other VMs

Guest VM1 Guest VM2

Apps

Apps

OS

OS

Hypervisor

servers Physical Hardware 4

Are these vulnerabilities imagined? • No headlines… doesn’t mean it’s not real – Not enticing enough to hackers yet? (small market size, lack of confidential data)

• Virtualization layer huge and growing – 100 Thousand lines of code in hypervisor – 1 Million lines in privileged virtual machine

• Derived from existing operating systems – Which have security holes

5

NoHype • NoHype removes the hypervisor – There’s nothing to attack – Complete systems solution – Still retains the needs of a virtualized cloud infrastructure Guest VM1 Guest VM2

Apps

Apps

OS

OS

No hypervisor Physical Hardware 6

Virtualization in the Cloud • Why does a cloud infrastructure use virtualization? – To support dynamically starting/stopping VMs – To allow servers to be shared (multi-tenancy)

• Do not need full power of modern hypervisors – Emulating diverse (potentially older) hardware – Maximizing server consolidation

7

Roles of the Hypervisor • Isolating/Emulating resources – CPU: Scheduling virtual machines – Memory: Managing memory – I/O: Emulating I/O devices

• Networking

• Managing virtual machines

8

Roles of the Hypervisor • Isolating/Emulating resources – CPU: Scheduling virtual machines – Memory: Managing memory – I/O: Emulating I/O devices

Push to HW / Pre-allocation

• Networking

• Managing virtual machines

9

Roles of the Hypervisor • Isolating/Emulating resources – CPU: Scheduling virtual machines – Memory: Managing memory – I/O: Emulating I/O devices

• Networking

Push to HW / Pre-allocation

Remove

• Managing virtual machines

10

Roles of the Hypervisor • Isolating/Emulating resources – CPU: Scheduling virtual machines – Memory: Managing memory – I/O: Emulating I/O devices

Push to HW / Pre-allocation

• Networking

Remove

• Managing virtual machines

Push to side

11

Roles of the Hypervisor • Isolating/Emulating resources – CPU: Scheduling virtual machines – Memory: Managing memory – I/O: Emulating I/O devices

Push to HW / Pre-allocation

• Networking

Remove

• Managing virtual machines

Push to side

NoHype has a double meaning… “no hype” 12

Today

Scheduling Virtual Machines • Scheduler called each time hypervisor runs (periodically, I/O events, etc.) – Chooses what to run next on given core – Balances load across cores

switch

timer

switch

I/O

switch

timer

VMs

hypervisor time

13

NoHype

Dedicate a core to a single VM • Ride the multi-core trend – 1 core on 128-core device is ~0.8% of the processor

• Cloud computing is pay-per-use – During high demand, spawn more VMs – During low demand, kill some VMs – Customer maximizing each VMs work, which minimizes opportunity for over-subscription

14

Today

Managing Memory • Goal: system-wide optimal usage – i.e., maximize server consolidation 600 500 400 300 200

VM/app 3 (max 400) VM/app 2 (max 300) VM/app 1 (max 400)

100 0

• Hypervisor controls allocation of physical memory 15

NoHype

Pre-allocate Memory • In cloud computing: charged per unit – e.g., VM with 2GB memory

• Pre-allocate a fixed amount of memory – Memory is fixed and guaranteed – Guest VM manages its own physical memory (deciding what pages to swap to disk)

• Processor support for enforcing: – allocation and bus utilization

16

Today

Emulate I/O Devices • Guest sees virtual devices – Access to a device’s memory range traps to hypervisor – Hypervisor handles interrupts – Privileged VM emulates devices and performs I/O Priv. VM Device Emulation Real Drivers

hypercall

Guest VM1

Guest VM2

Apps

Apps

OS

OS

trap

trap

Hypervisor

Physical Hardware

17

Today

Emulate I/O Devices • Guest sees virtual devices – Access to a device’s memory range traps to hypervisor – Hypervisor handles interrupts – Privileged VM emulates devices and performs I/O Priv. VM Device Emulation Real Drivers

hypercall

Guest VM1

Guest VM2

Apps

Apps

OS

OS

trap

trap

Hypervisor

Physical Hardware

18

NoHype

Dedicate Devices to a VM • In cloud computing, only networking and storage • Static memory partitioning for enforcing access – Processor (for to device), IOMMU (for from device) Guest VM1

Guest VM2

Apps

Apps

OS

OS

Physical Hardware

19

NoHype

Virtualize the Devices • Per-VM physical device doesn’t scale • Multiple queues on device – Multiple memory ranges mapping to different queues

Peripheral bus

Memory

MAC/PHY

Chipset

MUX

Processor

Classify

Network Card

20

Today

Networking • Ethernet switches connect servers server

server

21

Today

Networking (in virtualized server) • Software Ethernet switches connect VMs Virtual server

Software

Virtual server

Virtual switch

22

Today

Networking (in virtualized server) • Software Ethernet switches connect VMs Guest VM1

Guest VM2

Apps

Apps

OS

OS

Hypervisor

hypervisor

23

Today

Networking (in virtualized server) • Software Ethernet switches connect VMs Priv. VM

Software Switch

Guest VM1

Guest VM2

Apps

Apps

OS

OS

Hypervisor

24

NoHype

Do Networking in the Network • Co-located VMs communicate through software – Performance penalty for not co-located VMs – Special case in cloud computing – Artifact of going through hypervisor anyway

• Instead: utilize hardware switches in the network – Modification to support hairpin turnaround

25

Today

Managing Virtual Machines • Allowing a customer to start and stop VMs

Request: Start VM

Wide Area Network

Cloud Customer

Cloud Provider

26

Today

Managing Virtual Machines • Allowing a customer to start and stop VMs Servers

Request: Start VM

Request: Start VM

. . .

Cloud Manager Wide Area Network

Cloud Customer

VM images

Cloud Provider

27

Today

Hypervisor’s Role in Management • Run as application in privileged VM Priv. VM VM Mgmt.

Hypervisor Physical Hardware

28

Today

Hypervisor’s Role in Management • Receive request from cloud manager Priv. VM VM Mgmt.

Hypervisor Physical Hardware

29

Today

Hypervisor’s Role in Management • Form request to hypervisor Priv. VM VM Mgmt.

Hypervisor Physical Hardware

30

Today

Hypervisor’s Role in Management • Launch VM Priv. VM VM Mgmt.

Guest VM1

Apps OS

Hypervisor Physical Hardware

31

NoHype

Decouple Management And Operation • System manager runs on its own core

Core 0

Core 1

System Manager

32

NoHype

Decouple Management And Operation • System manager runs on its own core • Sends an IPI to start/stop a VM

Core 0

System Manager

Core 1

IPI 33

NoHype

Decouple Management And Operation • System manager runs on its own core • Sends an IPI to start/stop a VM • Core manager sets up core, launches VM – Not run again until VM is killed Core 0

Core 1

Guest VM2 System Manager

Apps

IPI

Core Manager

OS 34

Removing the Hypervisor Summary • Scheduling virtual machines – One VM per core

• Managing memory – Pre-allocate memory with processor support

• Emulating I/O devices – Direct access to virtualized devices

• Networking – Utilize hardware Ethernet switches

• Managing virtual machines – Decouple the management from operation 35

Security Benefits • Confidentiality/Integrity of data • Availability • Side channels

36

Security Benefits • Confidentiality/Integrity of data • Availability • Side channels

37

Confidentiality/Integrity of Data Requires access to the data With hypervisor

NoHype

Registers upon VM exit Packets sent through software switch

No scheduling No software switch

Memory accessible by hypervisor

No hypervisor

• System manager can alter memory access rules – But, guest VMs do not interact with the system manager 38

NoHype Double Meaning • Means no hypervisor, also means “no hype” • Multi-core processors – Available now

• Extended (Nested) Page Tables – Available now

• SR-IOV and Directed I/O (VT-d) – Network cards now, Storage devices near future

• Virtual Ethernet Port Aggregator (VEPA) – Next-generation switches

39

Conclusions and Future Work • Trend towards hosted and shared infrastructures • Significant security issue threatens adoption • NoHype solves this by removing the hypervisor • Performance improvement is a side benefit • Future work: – Implement on current hardware – Assess needs for future processors 40

Questions? Contact info: [email protected] http://www.princeton.edu/~ekeller

[email protected] http://www.princeton.edu/~szefer

41

Smile Life

When life gives you a hundred reasons to cry, show life that you have a thousand reasons to smile

Get in touch

© Copyright 2015 - 2024 PDFFOX.COM - All rights reserved.