8:15 a.m.–9:00 a.m. |
Tuesday |
Continental Breakfast
Market Street Foyer |
9:00 a.m.–10:00 a.m. |
Tuesday |
Adrian Cockcroft, Netflix We have spent years striving to build perfect apps running on perfect kernels on perfect CPUs connected by perfect networks, but this utopia hasn't really arrived. Instead we live in a dystopian world of buggy apps changing several times a day running on JVMs running on an old version of Linux running on Xen running on something I can't see, that only exists for a few hours, connected by a network of unknown topology and operated by many layers of automation. I will discuss the new challenges and demands of living in this dystopian world of cloud-based services. I will also give an overview of the Netflix open source cloud platform (see netflix.github.com) that we use to create our own island of utopian agility and availability regardless of what is going on underneath. We have spent years striving to build perfect apps running on perfect kernels on perfect CPUs connected by perfect networks, but this utopia hasn't really arrived. Instead we live in a dystopian world of buggy apps changing several times a day running on JVMs running on an old version of Linux running on Xen running on something I can't see, that only exists for a few hours, connected by a network of unknown topology and operated by many layers of automation. I will discuss the new challenges and demands of living in this dystopian world of cloud-based services. I will also give an overview of the Netflix open source cloud platform (see netflix.github.com) that we use to create our own island of utopian agility and availability regardless of what is going on underneath.
Adrian is the Director of Architecture for the Cloud Systems team at Netflix, and is leading the Netflix Open Source Software program and the Cloud Prize. Before joining Netflix in 2007, Adrian was a founding member of eBay Research Labs. He spent 16 years at Sun Microsystems, including a stint as Distinguished Engineer and chief architect for Sun's High Performance Technical Computing group. Adrian authored two editions of Sun Performance and Tuning: Java and the Internet; and co-authored two Sun Blueprint books, Resource Management and Capacity Planning for Internet Services.
|
10:00 a.m.–10:30 a.m. |
Tuesday |
Break with Refreshments
Market Street Foyer |
10:30 a.m.–12:30 p.m. |
Tuesday |
Changbin Liu and Yun Mao, AT&T Labs-Research Despite the increasing popularity of Infrastructure-as-a-service (IaaS) clouds, providers have been very slow in adopting a large number of innovative technologies, such as live VM migration, dynamic resource management, and VM replication. In this paper, we argue that the reasons are not only technical but also fundamental, due to lack of transparency and conflict of interest between providers and customers. We present our vision inception, a nested IaaS cloud architecture to overcome this impasse. Inception clouds are built entirely on top of the resources acquired from today’s clouds, and provide nested VMs to end users. We discuss the benefits, use cases, and challenges of inception clouds, and present our network design and prototype implementation.
Alex Fishman, Mike Rapoport, Evgeny Budilovsky, and Izik Eidus, Ravello Systems Nowadays there is significant diversity in Infrastructure as a Service (IaaS) clouds. The differences span from virtualization technology and hypervisors, through storage and network configuration, to the cloud management APIs. These differences make migration of a VM (or a set of VMs) from a private cloud into a public cloud, or between different public clouds, complicated or even impractical for many use-cases.
HVX is a virtualization platform that enables complete abstraction of underlying cloud infrastructure from the application virtual machines. HVX allows deployment of existing VMs into the cloud without any modifications, mobility between the clouds and easy duplication
of the entire deployment.
HVX can be deployed on almost any existing IaaS cloud. Each instance of the HVX deployment packs in a nested hypervisor, virtual hardware, network and storage configuration.
Combined with image store and management APIs, the HVX can be used for the creation of a virtual cloud that utilizes existing cloud provider infrastructure as the hardware rather than using physical servers, switches and storage.
Ittay Eyal, Technion; Flavio Junqueira, Microsoft Research; Idit Keidar, Technion Different companies sharing the same cloud infrastructure often prefer to run their virtual machines (VMs) in isolation, i.e., one VM per physical machine (PM) core, due to security and efficiency concerns. To accommodate load spikes, e.g., those caused by flash-crowds, each service is allocated more machines than necessary for its instantaneous load. However, flash-crowds of different hosted services are not correlated, so at any given time, only a subset of the machines are used.
We present here the concept of preallocation—having a single physical machine ready to quickly run one of a few possible VMs, without ever running more than one at a given time. The preallocated VMs are initialized and then paused by the hypervisor. We suggest a greedy preallocation strategy, and evaluate it by simulation, using workloads based on previous analyses of flash-crowds. We observe a reduction of 35-50% in number of PMs used compared with classical dynamic allocation. This means that a datacenter can provide per-service isolation with 35%-50% fewer PMs.
Andy Edmonds, Zurcher Hochschule für Angewandte Wissenschaften; Thijs Metsch, Intel Ireland Limited; Dana Petcu, Institute e-Austria Timisoara; Erik Elmroth, Umeå University; Jamie Marshall, Prologue; Plamen Ganchosov, CloudSigma Cloud computing delivers new levels of being connected, instead of the once disconnected PC-type systems. The proposal in this paper extends that level of connectedness in the cloud such that cloud service instances, hosted by providers, can relocate between clouds. This is key in order to provide economical and regulatory benefits but more importantly liberation and positive market disruption.
While service providers want to lock in their customer’s services, FluidCloud wants the liberation of those and thereby allow the service owner to freely choose the best matching provider at any time. In the cloud world of competing cloud standards and software solutions, each only partially complete, the central research question which this paper intends to answer: How to intrinsically enable and fully automate relocation of service instances between clouds?
|
12:30 p.m.–1:45 p.m. |
Tuesday |
FCW Luncheon
Imperial Ballroom |
1:45 p.m.–3:45 p.m. |
Tuesday |
Sivasankar Radhakrishnan, University of California, San Diego; Vimalkumar Jeyakumar, Stanford University; Abdul Kabbani, Google Inc.; George Porter, University of California, San Diego; Amin Vahdat, Google Inc. and University of California, San Diego The degree of multiplexing in datacenters necessitates careful resource scheduling, and network bandwidth is no exception. Unfortunately, today we are left with little control to accurately schedule network traffic with low overhead on end-hosts. This paper presents NicPic, a system which enables accurate network traffic scheduling in a scalable fashion. The key insight in NicPic is to decouple the responsibility of state-management and packet scheduling between the CPU and the NIC, respectively. The CPU is only involved in classifying packets, enqueueing them in per-class queues maintained in host memory, and specifying rate limits for each traffic class. The NIC handles packet scheduling and transmission on a real-time basis. In this paper, we present the design of NicPic which offers a scalable solution for transmit scheduling in future high speed NICs.
Gautam Kumar, Microsoft Research and University of California, Berkeley; Srikanth Kandula, Peter Bodik, and Ishai Menache, Microsoft Research Many network resource allocation scenarios require traffic shapers, such as weighted fair queues or priority queues, to achieve their goals; however, current switches offer very few of such shapers.
We show how to virtualize the traffic shapers in switches and network interface cards.
Doing so implies that one can mimic the traffic shaping behavior of many more shapers (at least one order of magnitude more) by just using the small number of shapers that are available on commodity switches and NICs.
From a prototype on Arista 7048 and simulations that replay traces from production datacenters, we show early results that indicate feasibility and improvement over simpler alternatives. We also present theory-based intuition as to why such virtualization of shapers is feasible.
Jeongkeun Lee, HP Labs; Myungjin Lee, University of Edinburgh; Lucian Popa, Yoshio Turner, Sujata Banerjee, and Puneet Sharma, HP Labs; Bryan Stephenson, HP Enterprise Services Cloud computing providers today do not offer guarantees for the network bandwidth available in the cloud, preventing tenants from running their applications predictably. To provide guarantees, several recent research proposals offer tenants a virtual cluster abstraction, emulating physical networks. Whereas offering dedicated virtual network abstractions is a significant step in the right direction, in this paper we argue that the abstractions exposed to tenants should aim to model tenant application structures rather than aiming to mimic physical network topologies. The fundamental problem in providing users with dedicated network abstractions is that the communication patterns of real applications do not typically resemble the rigid physical network topologies. Thus, the virtual network abstractions often poorly represent the actual communication patterns, resulting in overprovisioned/wasted network resources and underutilized computational resources.
We propose a new abstraction for specifying bandwidth guarantees, which is easy to use because it closely follows application models; our abstraction specifies guarantees as a graph between application components. We then propose an algorithm to efficiently deploy this abstraction on physical clusters. Through simulations, we show that our approach is significantly more efficient than prior work for offering bandwidth guarantees.
Vasileios Pappas, Hani Jamjoom, and Dan Williams, IBM T. J. Watson Research Center With both Ethernet and IP powering Data Center Networks (DCNs), one should wonder if their coexistence is necessary or an unquestioned legacy. Especially in cloud DCNs, the role of layer-2 is diminishing rapidly as the vast majority of applications only require layer-3 connectivity. At the same time, cloud workloads are demanding that DCN architectures better support network scalability, multitenancy, address virtualization, and endhost mobility. This paper argues that today’s DCN architectures have a conjoined layer-2 and layer-3 design that is not only unnecessary, but is counter productive. We present AIN, a blueprint for scalable all-IP DCN. AIN implements virtual routers inside hypervisors, eliminating the need for virtual switching. It leverages the proven scalability of routing protocols and avoids unnecessary packet encapsulation, while supporting both multitenancy and end-host mobility. Finally, AIN is compatible with existing applications and is fully realizable with current protocols and hardware.
|
3:45 p.m.–4:15 p.m. |
Tuesday |
Break with Refreshments
Market Street Foyer |
4:15 p.m.–5:45 p.m. |
Tuesday |
Xiaoning Ding, New Jersey Institute of Technology; Phillip B. Gibbons and Michael A. Kozuch, Intel Labs Pittsburgh As the number of cores in a multicore node increases in accordance with Moore’s law, the question arises as to whether there are any “hidden” costs of a cloud’s virtualized environment when scaling applications to take advantage of larger core counts. This paper identifies one such cost, resulting in up to a 583% slowdown as the multicore application is scaled. Surprisingly, these slowdowns arise even when the application’s VM has dedicated use of the underlying physical hardware and does not use emulated resources. Our preliminary findings indicate that the source of the slowdowns is the intervention from the VMM during synchronization-induced idling in the application, guest OS, or supporting libraries. We survey several possible mitigations, and report preliminary findings on the use of “idleness consolidation” and “IPI-free wakeup” as a partial mitigation.
Filip Blagojević, Cyril Guyot, Qingbo Wang, Timothy Tsai, Robert Mateescu, and Zvonimir Bandić, HGST Research Current state of the art runtime systems, built for managing cloud environments, almost always assume resource sharing among multiple users and applications. In large part, these runtime systems rely on functionalities of the node-local operating systems to divide the local resources among the applications that share a node. While OSes usually achieve good resource sharing by creating distinct application-level domains across CPUs and DRAM, managing the IO bandwidth is a complex task due to lack of communication between the host and IO device. In our work we focus on controlling the hard disk drive (HDD) IO bandwidth available to user-level applications in a cloud environment. We introduce priority-based (PBS) IO scheduling, where the ordering of IO commands is decided cooperatively by the host and IO device. We implemented our scheduling policies in the Linux storage stack and Hadoop Distributed File System. Initial results show that in a cloud environment, the real-time commands managed by PBS outperform the real-time IO scheduling of the Linux kernel by up to a factor of ~5 for the worst case latency, and by more than 2x for average latency.
Sahan Gamage, Ramana Kompella, and Dongyan Xu, Purdue University Many enterprises use the cloud to host applications such as web services, big data analytics and storage. One common characteristic among these applications is that, they involve significant I/O activities, moving data from a source to a sink, often without even any intermediate processing. However, cloud environments tend to be virtualized in nature with tenants obtaining virtual machines (VMs) that often share CPU. Virtualization introduces a significant overhead for I/O activity as data needs to be moved across several protection boundaries. CPU sharing introduces further delays into the overall I/O processing data flow. In this paper, we propose a simple abstraction called vPipe to mitigate these problems. vPipe introduces a simple “pipe” that can connect data sources and sinks, which can be either files or TCP sockets, at the virtual machine monitor (VMM) layer. Shortcutting the I/O at the VMM layer achieves significant CPU savings and avoids scheduling latencies that degrade I/O throughput. Our evaluation of vPipe prototype on Xen shows that vPipe can improve file transfer throughput significantly while reducing overall CPU utilization.
|