RESOURCE MANAGEMENT FOR ISOLATION ENHANCED CLOUD SERVICES Presented by: Yun Liaw Ripal Nathuji Abhishek SinghPaul England ACM Workshop on Cloud Computing.

Slides:



Advertisements
Similar presentations
Wei Lu 1, Kate Keahey 2, Tim Freeman 2, Frank Siebenlist 2 1 Indiana University, 2 Argonne National Lab
Advertisements

Virtual Switching Without a Hypervisor for a More Secure Cloud Xin Jin Princeton University Joint work with Eric Keller(UPenn) and Jennifer Rexford(Princeton)
Hadi Goudarzi and Massoud Pedram
Fabián E. Bustamante, Spring 2007
Ragib Hasan Johns Hopkins University en Spring 2010 Lecture 3 02/15/2010 Security and Privacy in Cloud Computing.
1 Parallel Scientific Computing: Algorithms and Tools Lecture #2 APMA 2821A, Spring 2008 Instructors: George Em Karniadakis Leopold Grinberg.
1 Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-Associative Cache and Prefetch Buffers By Sreemukha Kandlakunta Phani Shashank.
Ensuring Operating System Kernel Integrity with OSck By Owen S. Hofmann Alan M. Dunn Sangman Kim Indrajit Roy Emmett Witchel Kent State University College.
Virtualization and Cloud Computing. Definition Virtualization is the ability to run multiple operating systems on a single physical system and share the.
Virtual Memory Chapter 18 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer,  S. Dandamudi.
The Who, What, Why and How of High Performance Computing Applications in the Cloud Soheila Abrishami 1.
GPUs on Clouds Andrew J. Younge Indiana University (USC / Information Sciences Institute) UNCLASSIFIED: 08/03/2012.
Virtual Machine Security Design of Secure Operating Systems Summer 2012 Presented By: Musaad Alzahrani.
SLA-aware Virtual Resource Management for Cloud Infrastructures
Towards High-Availability for IP Telephony using Virtual Machines Devdutt Patnaik, Ashish Bijlani and Vishal K Singh.
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
An Integrated Framework for Dependable Revivable Architectures Using Multi-core Processors Weiding Shi, Hsien-Hsin S. Lee, Laura Falk, and Mrinmoy Ghosh.
CSCI2413 Lecture 6 Operating Systems Memory Management 2 phones off (please)
March 24, 2003Upadhyaya – IWIA A Tamper-resistant Framework for Unambiguous Detection of Attacks in User Space Using Process Monitors R. Chinchani.
Authors: Thomas Ristenpart, et at.
By- Jaideep Moses, Ravi Iyer , Ramesh Illikkal and
5205 – IT Service Delivery and Support
Virtual Memory By: Dinouje Fahih. Definition of Virtual Memory Virtual memory is a concept that, allows a computer and its operating system, to use a.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
11 World-Leading Research with Real-World Impact! A Formal Model for Isolation Management in Cloud Infrastructure-as-a-Service Khalid Zaman Bijon, Ram.
Tanenbaum 8.3 See references
Jakub Szefer, Eric Keller, Ruby B. Lee Jennifer Rexford Princeton University CCS October, 2011 報告人:張逸文.
Operating System Chapter 7. Memory Management Lynn Choi School of Electrical Engineering.
Predicting performance of applications and infrastructures Tania Lorido 27th May 2011.
Introduction Overview Static analysis Memory analysis Kernel integrity checking Implementation and evaluation Limitations and future work Conclusions.
Parallel Programming Models Jihad El-Sana These slides are based on the book: Introduction to Parallel Computing, Blaise Barney, Lawrence Livermore National.
Kenichi Kourai (Kyushu Institute of Technology) Takuya Nagata (Kyushu Institute of Technology) A Secure Framework for Monitoring Operating Systems Using.
Network Aware Resource Allocation in Distributed Clouds.
1. Memory Manager 2 Memory Management In an environment that supports dynamic memory allocation, the memory manager must keep a record of the usage of.
Improving Network I/O Virtualization for Cloud Computing.
Ragib Hasan University of Alabama at Birmingham CS 491/691/791 Fall 2012 Lecture 4 09/10/2013 Security and Privacy in Cloud Computing.
服务计算技术与系统教育部重点实验室 (SCTS) 集群与网格计算湖北省重点实验室 (CGCL) CFCC: Covert Flows Confinement For VM Coalitions Ge Cheng, Hai Jin, Deqing Zou, Lei Shi, and Alex K. Ohoussou.
RECON: A TOOL TO RECOMMEND DYNAMIC SERVER CONSOLIDATION IN MULTI-CLUSTER DATACENTERS Anindya Neogi IEEE Network Operations and Management Symposium, 2008.
Introduction 1-1 Introduction to Virtual Machines From “Virtual Machines” Smith and Nair Chapter 1.
Tessellation: Space-Time Partitioning in a Manycore Client OS Rose Liu 1,2, Kevin Klues 1, Sarah Bird 1, Steven Hofmeyr 3, Krste Asanovic 1, John Kubiatowicz.
Cosc 2150: Computer Organization Chapter 6, Part 2 Virtual Memory.
A performance evaluation approach openModeller: A Framework for species distribution Modelling.
The Memory Hierarchy 21/05/2009Lecture 32_CA&O_Engr Umbreen Sabir.
Our work on virtualization Chen Haogang, Wang Xiaolin {hchen, Institute of Network and Information Systems School of Electrical Engineering.
Subject: Operating System.
Server Virtualization
G53SEC 1 Reference Monitors Enforcement of Access Control.
A dynamic optimization model for power and performance management of virtualized clusters Vinicius Petrucci, Orlando Loques Univ. Federal Fluminense Niteroi,
Adaptive Multi-Threading for Dynamic Workloads in Embedded Multiprocessors 林鼎原 Department of Electrical Engineering National Cheng Kung University Tainan,
Visual Studio Windows Azure Portal Rest APIs / PS Cmdlets US-North Central Region FC TOR PDU Servers TOR PDU Servers TOR PDU Servers TOR PDU.
Operating Systems Security
Basic Memory Management 1. Readings r Silbershatz et al: chapters
Security Vulnerabilities in A Virtual Environment
Introduction: Memory Management 2 Ideally programmers want memory that is large fast non volatile Memory hierarchy small amount of fast, expensive memory.
Technical Reading Report Virtual Power: Coordinated Power Management in Virtualized Enterprise Environment Paper by: Ripal Nathuji & Karsten Schwan from.
Threads. Readings r Silberschatz et al : Chapter 4.
Cloud Computing Lecture 5-6 Muhammad Ahmad Jan.
Sunpyo Hong, Hyesoon Kim
The Post Windows Operating System
Memory Management.
Virtual Memory Chapter 7.4.
Chang Hyun Park, Taekyung Heo, and Jaehyuk Huh
Memory COMPUTER ARCHITECTURE
Group 8 Virtualization of the Cloud
Lecture 14 Virtual Memory and the Alpha Memory Hierarchy
Multithreaded Programming
Sai Krishna Deepak Maram, CS 6410
SCONE: Secure Linux Containers Environments with Intel SGX
Shielding applications from an untrusted cloud with Haven
Virtual Memory: Working Sets
Presentation transcript:

RESOURCE MANAGEMENT FOR ISOLATION ENHANCED CLOUD SERVICES Presented by: Yun Liaw Ripal Nathuji Abhishek SinghPaul England ACM Workshop on Cloud Computing Security 2009 Himanshu Raj Microsoft Corportaion

Outline  Introduction  Example Scenario for Isolation Attributes  Enforcing Cache Isolation in Multicore Systems  Cache Hierarchy Aware Core Assignment  Page-Coloring Based Cache Partitioning  Experimental Evaluation  An SLA Driven Approach to Resource Management in the Cloud Infrastructure  Related Work  Conclusions and Future Work  Comments 2

Introduction  The cloud computing in IaaS model separates the service provider and infrastructure owner  the service provider (SP) has less control over the service deployment, and must trust cloud infrastructure provider (CIP) to uphold the guarantees provided in the service level agreement (SLA)  A service provider must trust the infrastructure provider’s ability to properly isolate the service from each other  For the performance and security issue  Traditionally: physical isolation Good isolation but costly  In cloud: Use virtualization to encapsulate service inside VM Flexible but weaker isolation 3

Introduction  Resources are implicitly shared among VMs  Last level cache (LLC) on multicore processors and memory bandwidth  Present opportunities for security and performance interference Process confidentiality compromising DoS attack launched by malicious VMs  Isolation attributes for a service defined as part of the SLA between SP and CIP serve two purpose  To capture the degree of isolation demanded by a service  To allow a service to authoritatively report its isolation characteristics for the service user isolation attestation 4 This paper’s focus! Last Level Cache

Introduction  This paper’s focus:  Presenting mechanisms to enforce some isolation constraints, focusing on last level cache (LLC) Cache hierarchy aware core assignment Page-coloring based cache partitioning  Providing an example formulation of a constraint satisfaction problem (CSP) for CIP’s VM placement 5

Example Scenario for Isolation Attributes  Several VMs belonging to various independent SPs are deployed on a CIP’s infrastructure  Example Scenario: Virtual Desktop Experience (VDE) 6 Session VM: Specific to a client, and works as her personal computer Service VM: Provide services that can be accessed in the VDE The SP adds value by allowing roaming access to the VDE, and provide management ability

Example Scenario for Isolation Attributes  Service client’s concern about the service (may be addressed in the SLA between client and SP) will create concerns about isolation and resource management for the SP  Example: Can adversary VM impact the performance of session VM?  This isolation and resource management concern will in turn pass to the SLA between SP and CIP  The CIP must manage their resources to meet the SLA between SP and CIP  The resource assignment problem can be posed as constraint satisfaction problem (CSP) 7

Example Scenario for Isolation Attributes 8

Enforcing Cache Isolation in Multicore Systems  Shared caches are commonly used in multicore systems that are prevalent in today’s large scale data centers  Difficult to guarantee performance to a thread whose active working set spills out of its local caches into the LLC  It is possible to impact a thread’s confidentiality by cache-based side channel attack  Two techniques for cache isolation  Cache hierarchy aware core assignment  Page-coloring based cache partitioning 9

Cache Hierarchy Aware Core Assignment 1. Group cores on a machine based on their LLC organization  All cores sharing the LLC are put in a single group 2. If a VM V’s SLA defines isolation attribute related to the cache, 1. Choose a group that is currently not assigned to any other VM 2. Assign the cores in this group to V as V’s virtual processors  Depending on the # of virtual processors, one or more groups may be used  Drawback: under utilization of cores within a group 10

Page-coloring Based Cache Partitioning – Cache  Cache Line: The smallest unit of memory that can be transferred between the RAM and the cache  N-way Associative Cache  a hybrid between a fully associative cache (which requires parallel searches of all slots), and direct mapped cache (which may cause collisions of addresses to the same slot) 11

Page-coloring Based Cache Partitioning – Page  Page: a fixed-length block of memory that is contiguous in memory addressing  A page is usually the smallest unit of data for the following: memory allocation for a program transfer between main memory and any other auxiliary store 12

Page-coloring Based Cache Partitioning – Page Coloring  Page Coloring  A Software technique that controls the mapping of physical memory to a processor’s cache block  Memory Pages that map to the same cache blocks are assigned the same color  The granularity of page color is the unit of cache space that can be allocate to an application (VM) 13

Page-coloring Based Cache Partitioning – Page Coloring 14 Page size: 4KB 6 GB Memory 128K cache lines in this cache (8MB/64byte) 8K associative sets in this cache (128K/16) Set … MB 16-way Cache Cache Line Size: 64byte Cache line 1 page’ size = 64 cache lines’ size The Maximum color that this cache can support = # of sets / # a page’s cache line size = 8K / 64 = 128 By controlling the color of pages assigned to an application, the OS can manipulate cache blocks at the granularity of cache space that can be allocated to an application

Page-coloring Based Cache Partitioning  The hypervisor allocates memory pages to back a VM can influence the cache usage of threads in the VM  Utilizing page coloring for cache isolation by isolating the color sets that are used to back individual VMs running on CPU cores that share the LLC  Drawback: under utilization of memory 15

Experiment – Implementation Detail and Methodology  Based on Microsoft Hyper-V  The memory management component in Hyper-V 11is replaced by a Windows NT kernel’s memory allocation API  The configuration of each physical machine is enhanced with 2 pieces of information  The group information for cores  # of page colors and their current size 16

Experiment – Implementation Detail and Methodology  Experimental platform:  8-core Intel Nehalem processors based machine  6GB RAM  8MB shared LLC  The prefetch function of Nehalem processor is disabled  Cache Hierarchy:  2 groups of cores 17

Experiment – Implementation Detail and Methodology  Target VM:  1 virtual processor  Running program: allocates an array of a specific working set size, and then accesses it in a regular pattern  Perturbing VM:  3 virtual processors  Running program: intensive application with repeatedly access memory and cause cache thrashing  Cache hierarchy aware core assignment (CHACA) experiment  Target VM and Perturbing VM are placed on different groups of cores  Page-coloring based cache partitioning (PCBCP) experiment  Target VM and Perturbing VM are placed on same groups of cores  The target VM shares 50% of the total number of colors available, and the perturbing VM shares the other 50% 18

Experiment Result - No Isolation and CHACA 19 The execution time decreases to the baseline when the working set is smaller than the LLC In CHACA, since the perturbing VM is placed on different group of cores, it does not cause any influence on the target VM

Experiment Result - PCBCP 20 Additional threads does not impact the performance

Experiment Result - PCBCP 21 Log axis Coloring causes performance penalty The execution time can be cut when the perturbing VM included

An SLA Driven Approach to RM in the Cloud Infrastructure  The SLA between SP and CIP can be converted into a set of CIP specific constraints  The constraints are defined in terms of available resources at the CIP → A Constraint Satisfaction Problem (CSP)!  Example scenario – The SLA between SP and CIP defines  Number of processors = 2  Replication factor (r)= 5  H/w fault domain (n)= 5  Cache based DoS attack avoidance = True  Cache based side channel attack avoidance = True → To place 5 VMs (based on r) on physical machines in the cloud such that the SLA is satisfied 22

An SLA Driven Approach to RM in the Cloud Infrastructure  Example Scenario (Cont’d)  physical node: Blade object 23

Blade Attributes 24

An SLA Driven Approach to RM in the Cloud Infrastructure  Let VMs be the set of virtual machines, corresponding to vm1, vm2, … vm5, that needed to be placed on the set Blades  Decision Variables of each VM Blade ProcessorDomain PageColorDomain 25

Pseudo code of a greedy algorithm for CSP formulation 26 Decision Variables

Constraints 27

Related Work  There is little prior work on security and isolation specific SLA constraints  This work is the first attempt on characterizing specific isolation related attributes for SLA between SP and CIP  Monahan et al., define security related SLA constraints that are applicable in cloud computing scenario [10]  Research on cache based interferences 28

Conclusions and Future Work  Conclusions:  This paper envisions that SP in cloud computing environment will also specify security and performance isolation constraints as part of their SLA  One such set of constraint advocated in this paper is based on cache sharing in contemporary multicore systems  This paper presents 2 approaches to provide security and performance isolation  This paper provides a generic CSP formulation  Future Work  To use other CSP solvers to formulate and solve the CSP  To evaluate the impact of SLA isolation attributes on the overall cost of VM placement  Isolation attestation 29

Comments  Did not mention much of the detailed approaches of cache isolation  CSP might be a good way to study  滷蛋 = 回香豆蔻甘草百里香風味白蛋 (?!) 30