Network Design Issues for Cloud Data Centers



Similar documents
Peregrine: An All-Layer-2 Container Computer Network

Ethernet-based Software Defined Network (SDN) Cloud Computing Research Center for Mobile Applications (CCMA), ITRI 雲 端 運 算 行 動 應 用 研 究 中 心

Ethernet-based Software Defined Network (SDN)

Lecture 02b Cloud Computing II

Web Application Hosting Cloud Architecture

20. Switched Local Area Networks

Cisco Application Networking for IBM WebSphere

Analysis of Network Segmentation Techniques in Cloud Data Centers

INTRODUCTION TO FIREWALL SECURITY

Network Virtualization and Data Center Networks Data Center Virtualization - Basics. Qin Yin Fall Semester 2013

AppDirector Load balancing IBM Websphere and AppXcel

Introduction to Cloud Design Four Design Principals For IaaS

Data Sheet. V-Net Link 700 C Series Link Load Balancer. V-NetLink:Link Load Balancing Solution from VIAEDGE

CloudLink - The On-Ramp to the Cloud Security, Management and Performance Optimization for Multi-Tenant Private and Public Clouds

How To Use The Cisco Wide Area Application Services (Waas) Network Module

Application Delivery Networking

Optimizing Data Center Networks for Cloud Computing

Advanced Computer Networks. Datacenter Network Fabric

Radware s AppDirector and AppXcel An Application Delivery solution for applications developed over BEA s Weblogic

Lecture 7: Data Center Networks"

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

Data Centers and Cloud Computing

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

Network Technologies for Next-generation Data Centers

Proactively Secure Your Cloud Computing Platform

VXLAN: Scaling Data Center Capacity. White Paper

Intel Ethernet Switch Load Balancing System Design Using Advanced Features in Intel Ethernet Switch Family

Emerging Technology for the Next Decade

Data Centers and Cloud Computing. Data Centers

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications

Outline VLAN. Inter-VLAN communication. Layer-3 Switches. Spanning Tree Protocol Recap

Chapter 5. Data Communication And Internet Technology

Special Edition for Loadbalancer.org GmbH

Cisco Application Networking for BEA WebLogic

Availability Digest. Redundant Load Balancing for High Availability July 2013

Private Cloud Solutions Virtual Onsite Data Center

Oracle SDN Performance Acceleration with Software-Defined Networking

CompTIA Cloud+ 9318; 5 Days, Instructor-led

Lecture 02a Cloud Computing I

Hyper-V Network Virtualization Gateways - Fundamental Building Blocks of the Private Cloud

Firewalls and VPNs. Principles of Information Security, 5th Edition 1

Network Virtualization for Large-Scale Data Centers

Windows Server 2008 R2 Hyper-V Live Migration

Testing Software Defined Network (SDN) For Data Center and Cloud VERYX TECHNOLOGIES

CompTIA Cloud+ Course Content. Length: 5 Days. Who Should Attend:

Part 1 - What s New in Hyper-V 2012 R2. Clive.Watson@Microsoft.com Datacenter Specialist

Challenges of Sending Large Files Over Public Internet

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

Windows Server 2008 R2 Hyper-V Live Migration

A Case for Overlays in DCN Virtualization Katherine Barabash, Rami Cohen, David Hadas, Vinit Jain, Renato Recio and Benny Rochwerger IBM

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series

VMware vcloud Air Networking Guide

Chapter 11 Cloud Application Development

Outline. VL2: A Scalable and Flexible Data Center Network. Problem. Introduction 11/26/2012

WAN Traffic Management with PowerLink Pro100

Why Software Defined Networking (SDN)? Boyan Sotirov

Brocade Solution for EMC VSPEX Server Virtualization

Elfiq Link Load Balancer Frequently Asked Questions (FAQ)

Walmart s Data Center. Amadeus Data Center. Google s Data Center. Data Center Evolution 1.0. Data Center Evolution 2.0

Simplify VMware vsphere* 4 Networking with Intel Ethernet 10 Gigabit Server Adapters


Boas Betzler. Planet. Globally Distributed IaaS Platform Examples AWS and SoftLayer. November 9, IBM Corporation

Microsoft Private Cloud Fast Track

Testing Network Virtualization For Data Center and Cloud VERYX TECHNOLOGIES

Cloud Models and Platforms

PowerLink Bandwidth Aggregation Redundant WAN Link and VPN Fail-Over Solutions

Advanced Computer Networks. Layer-7-Switching and Loadbalancing

An Overview of OpenFlow

Cloud Optimize Your IT

Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings

Ch. 13 Cloud Services. Magda El Zarki Dept. of CS UC, Irvine

VMUG - vcloud Air Deep Dive VMware Inc. All rights reserved.

Disaster Recovery Design Ehab Ashary University of Colorado at Colorado Springs

NComputing L-Series LAN Deployment

Cloud Infrastructure Planning. Chapter Six

How To Use Arcgis For Free On A Gdb (For A Gis Server) For A Small Business

Software Defined Environments

Panel: Cloud/SDN/NFV 黃 仁 竑 教 授 國 立 中 正 大 學 資 工 系 2015/12/26

Cisco Nexus 1000V Switch for Microsoft Hyper-V

COMLINK Cloud Technical Specification Guide DEDICATED SERVER

WINDOWS AZURE NETWORKING

Cloud Computing Architecture: A Survey

Software-Defined Networking for the Data Center. Dr. Peer Hasselmeyer NEC Laboratories Europe

VMware vcloud Director for Service Providers

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Virtualization, SDN and NFV

SDN Architecture and Service Trend

RemoteApp Publishing on AWS

IBM EXAM QUESTIONS & ANSWERS

CS514: Intermediate Course in Computer Systems

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

More than just Layer 2-7 Load Balancing Citrix NetScaler & CloudGateway

DNS ROUND ROBIN HIGH-AVAILABILITY LOAD SHARING

Solving I/O Bottlenecks to Enable Superior Cloud Efficiency

Broadcom Ethernet Network Controller Enhanced Virtualization Functionality

Enterprise Data Center Topology

Scaling Analysis Services in the Cloud

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy

Transcription:

Network Design Issues for Cloud Data Centers Tzi-cker Chiueh ( 闕 志 克 ) Cloud Computing Research Center for Mobile Applications (CCMA) 雲 端 運 算 行 動 應 用 研 究 中 心 NTHUCS 1 1 Copyright 2008 ITRI 工 業 技 術 研 究 院

Cloud Service Models Infrastructure as a Service (IaaS) A set of virtual machines with storage space and external network bandwidth unfurnished apartment Example: Amazon Service Platform as a Service (PaaS) An operating environment including (application-specific) libraries and supporting services (DBMS, AAA) furnished apartment Example: Google s App Engine, Microsoft s Azure, IBM s XaaS Software as a Service (SaaS) Turn-key software hosted on the cloud and accessible through the browser hotel Example: salesforce.com, and all major desktop software vendors NTHUCS 2

Cloud-Scale Data Center Main building blocks for Cloud Computing industry Technology components: Modular cloud computer: Optimal HW building block for constructing a cloud data center Cloud OS: An end-to-end software stack that runs cloud applications and operates a cloud data center Non-ICT technology: seismic, fire, physical security, etc. Integration/operation know-how: Operational experiences and expertise for putting together and running a cloud-scale data center NTHUCS 3

Data Center as a Computer Containerization Optimal HW building block granularity or packaging More efficient power distribution and thermal design Unification of computing, memory, network and storage resources Virtualization of all HW resources: Software-definable boundaries Faster deployment: no on-premise installation needed Requires light-out operation Google-style data center Army of commodity HW Treat failure as a common case NTHUCS 4

ITRI s Research Projects Container Computer 1.0 Manageable container computer Differences between a set of servers/switches/storage boxes and a container computer? Scalable storage/network architecture Comprehensive monitoring and control Energy-efficient cooling Cloud Operating System 1.0 Integrated data center software stack for supporting a AWS-like IaaS service on a set of commodity HW Tight integration of storage, resource, security and system/network management NTHUCS 5

Cloud OS 1.0 Service Model Virtual data center consists of one or multiple virtual clusters, each of which comprises one or multiple VMs Tiered architecture-based web services Users provide a Virtual Cluster specification No. of VM instances each with CPU performance and memory size requirement Per-VM storage space requirement External network bandwidth requirement Security policy Backup policy Load balancing policy Network configuration, e.g. public IP address and private IP address range OS image and application image NTHUCS 6

Container Computer 1.0 Objective: Physical data center in a box Architecture Design Principles: Commodity HW only No storage box, appliance or accelerator System-wide optimization Component vs. self-contained system server container computer warehouse computer End-to-end redundancy No HW element is indispensible Major features: All-layer-2 data center network architecture Scalable Internet edge appliance functionality Touch cooling-based thermal management Light-out management NTHUCS 7

Container Computer 1.0 Architecture Physical Server VM0 VM1 VMn Layer-3 Border Routers Layer-2-Only Data Center Network Load Balancing Traffic Shaping Intrusion Detection NAT/VPN Compute Server Rack Storage Server NTHUCS 8

Cloud Network Design Issues Internet Appliance Logic: Server load balancing Multi-homing load balancing Traffic shaping or Internet QoS guarantee WAN traffic compression and caching Network support for hybrid cloud PCI bus for data center computer Rack area networking for I/O device consolidation and sharing NTHUCS 9

NAT Support for Server Load Balancing Client <D, S> <S, D> <S, D> Router Server Load Balancing = Intra-VDC inter-vm Load Balancing Key design goal: Direct return of response traffic SLB <D, S> <S, D> D2 <D2, D1> VM1 <D1, D2> VM2 VM3 P1 P2 P3 P4 VM4 NTHUCS 10

NAT Support for Session-Aware Server Load Balancing C S: SYN S C: SYN-ACK C S: ACK + HTTP request A T: SYN T A: SYN+ACK S T: ACK+ HTTP request VM1 Client <S, D> D2 Kernel TCP Agent <D0, D1> <S, D> <S, D> SLB <D, S> Router VM1 <D, S> <D1, D0> Key design goal: Direct return of response traffic Complete three-way handshake between Client and SLB Identify the session based on cookie in HTTP request Pick the target VM Emulate three-way handshake between client and target VM Perform TCP sequence number remapping VM1 P1 P2 P3 P4 VM1 NTHUCS 11

D1 DNS Server Multi-Homing Load Balancing Externally Initiated Connections <D2> www.a.com VM1 Client <S, D2> 1 2 Router1 <S, D2> <S, D2> SLB <d1, d2> <D2, S> Router2 <D2, S> VM2 3 <d2, d1> Router3 Session-oriented load balancing Case 1: Each ISP assigns user a separate public IP address range Case 2: User owns its own public IP address range needs to involve BGP for being multi-homed and public IP address range partitioning VM3 P1 P2 P3 P4 VM4 NTHUCS 12

Multi-Homing Load Balancing Internally Initiated Connections Client 1 2 Router1 <D3, S> <S, D3> Router2 3 Router3 Session-oriented load balancing Case 1: Each ISP assigns user a separate public IP address range Case 2: User owns its own public IP address range needs to involve BGP for being multi-homed and public IP address range partitioning <S, d5> <S,D3> SLB <d5, S> <D3, S> VM1 VM2 VM3 VM4 P1 P2 P3 P4 NTHUCS 13

Network Support for Hybrid Cloud Cloud-based VDC and on-premise physical data center share the same private IP address space Use a pair of VPN gateways to connect them. The VPN (VPN2 below) gateway on the on-premise data center cannot be modified A2 VPN1 A1 VPN2 A1 VPN1 VPN2 A2 Cloud-based virtual data center On-premise physical data center NTHUCS 14

PASR: Private IP Address Reuse Every VDC has a VDC ID and its own full 24-bit private IP address space (10.x.x.x), even though multiple VDCs run on top of the same data center network The data center network must be based ONLY on L2 or Ethernet switches Analogy Virtual address = Private IP address; Physical address = MAC address Service nodes are accessible to all VDCs and thus are given a special range of private IP addresses Kernel address space (3-4GB) is shared among all processes Translation provides both isolation and flexibility VDC ID + private IP address MAC address MAC address VDC ID mapping is available When to translate Intercept ARP queries Upon sending out each packet: protection NTHUCS 15

Multi-Tenancy Multiple virtual data centers share a single physical data center How to give each virtual data center its own private IP address space? How to set up and enforce management policies for each virtual data center separately? How to account for resource usage for each virtual data center separately? How to isolate the state and performance of one virtual data center from another? Generalization: multiple virtual data centers from multiple providers and multiple on-site physical data centers work as one

VPN + PASR + Multi-Homing LB On-premise Physical Data Center Client Cloud-based Virtual Data Center <d7,d5> <d5,d7> 1 2 Router1 VPN SLB A <A,B3> Router2 <B3,A> 3 Router3 <A,B3> <B3,A> <d100, A> <A, d100> <d7,d5> Per-VM routing table set-up: Route packets to on-premise PDC VPN gateway: Bind tunnel connection ID with VDC ID Outgoing packets Extract VDC ID based on source MAC Tunnel outgoing packets based on their VDC ID Incoming packets Convert tunnel connection ID to VDC ID d100 VPN Look up destination MAC using its VDC ID <d5,d7> Defa. Router VM1 Defa. Router VM2 Defa. Router VM3 Defa. Router VM4 P1 P2 P3 P4 NTHUCS 17

General Framework Each web service is uniquely identified by N combinations of a public IP address and a port number There could be M VMs behind each web service N=1, M=1: port forwarding N=1, M>1: server load balancing N>1, M=1: multi-homing load balancing N>1, M>1: server LB + multi-homing LB Multiple tunnels between two VPN gateways Load balancing among multiple VPN tunnels NTHUCS 18

Hybrid Cloud + 1 Server Load Balancer Direct Return of Response Traffic SLB is in the on-premise data center <D, S> Client <S,D> <D, S> VM <S,D> d1 VPN VPN SLB <S,d1> <S,d2> VM Cloud-based virtual data center On-premise physical data center NTHUCS 19

Hybrid Cloud + 1 Server Load Balancer Direct Return of Response Traffic SLB is in the cloud-based data center <D, S> Client <S,D> <D, S> VM <S,d2> VPN <S,d2> VPN SLB <S,D> d1 VM On-premise physical data center Cloud-based virtual data center NTHUCS 20

Hybrid Cloud + 1 Server Load Balancer No Direct Return of Response Traffic SLB is in the on-premise data center Client <S,D> <D, S> <s,d0>,d2 <d0,s> VM VPN VPN <s,d2> SLB <d2,s> <s,d1> VM <d1,s> Cloud-based virtual data center On-premise physical data center NTHUCS 21

Hybrid Cloud + 1 Server Load Balancer No Direct Return of Response Traffic SLB is in the cloud-based data center Client <D, S> <S,D> d1 VM <d0,d1> <d1,d0> VPN VPN SLB <d0,d1> <d1,d0> d2 <S,D> d1/d2 VM d0 On-premise physical data center Cloud-based virtual data center NTHUCS 22

Hybrid Cloud + 2 Server Load Balancers <D2,S> <S,D2> Client <S,D1> <D1,S> VM SLB <S,D2> DNS Server VPN VPN SLB <S,D1> VM Cloud-based virtual data center On-premise physical data center NTHUCS 23

Distributed Traffic Shaping Centralized packet scheduling: All traffic goes through a choke point Provision a queue for all outgoing packets from a VDC Schedule packets from multiple queues using a weighted round robin scheduler Time granularity: 1000 bytes per msec vs. 1M bytes per second Bounded credit accumulation Deficit allowance: burst accommodation Distributed packet scheduling: Enable direct return of response traffic How to coordinate per-pm schedulers in a responsive and lowoverhead manner 10 Mbps shared among 100 VMs = 0.1 Mbps per VM? NTHUCS 24

What s Wrong with Ethernet? Spanning tree-based Not all physical links are used No load-sensitive dynamic routing Fail-over latency is high ( > 5 seconds) Cannot scale to a large number of end points (e.g. 1M) Forwarding table is too small: 16K to 64K Does not support VM migration and visibility Lack of broadcast traffic scoping VM migration limited to a subnet NTHUCS 25

Peregrine s Network Topology CORE Region TOR NTHUCS 26

Scaling up to 1M VMs Routing vs. Forwarding Problem: small forwarding table (< 64K) Solution: Two-stage forwarding Source Intermediate Destination Problem: two-stage forwarding limits scalability and introduces latency penalty Solution: Dual-mode forwarding Direct: source destination Indirect: source intermediate destination NTHUCS 27

Two-Stage Forwarding Every Intermediate knows how to route to every VM in its scope Intermediate needs to be notified when VM leaves or joins its scope Source Intermediate Destination Intermediate: TOR_Swicth(Dest) or Physical_Machine (Dest) Directory Server: Host Intermediate(Host) Host 1 Directory Server Host 36 NTHUCS 28

Fast Fail-Over Goal: Fail-over latency < 50 msec Strategy: Pre-compute a primary and backup route for each VM Each VM has two virtual MACs Asymmetric routing When a link fails, notify hosts using affected primary routes that they should switch to corresponding backup routes Route computation is dynamic and aims to balance the loads on physical network links NTHUCS 29

Interaction with Fail-Over Mechanism For each physical node P, routing algorithm computes two disjoint spanning trees, which enable other physical nodes to reach P Direct routing: MAC1(VM25), MAC2(VM25) Indirect routing: MAC1(TOR1), MAC1(TOR2) or MAC1(PM22), MAC2(PM22) VM1, VM4, VM127 PM1 TOR1 TOR2 VM8, VM90, VM25 PM22 NTHUCS 30

When a VM Moves Notify old and new Intermediaries Invalidate the ARP entry of this VM on all other VMs that communicate with it Invalidate (asynchronously) all direct forwarding entries of this VM on the network NTHUCS 31

Additional Issues Performance Isolation between storage access traffic and application traffic Scalability of directory server Relative effectiveness of random routing (e.g., Valiant load balancing) and load-aware routing Granularity of fail-over group: When a link fails, how many node pairs are affected All node pairs whose route goes through the failed link All per-node spanning trees that contain the failed link NTHUCS 32

PCIe-based Rack Area Networking Problems: 10GE NIC is expensive and power hungry Multiple 1GE NICs require too many cables Directly attached disks should be accessible when the host CPUs are turned off or die Solution: I/O device consolidation or sharing Single-root IOV: multiple VMs on the same host can share a set of I/O devices without conflicting with one another Multiple-root IOV: multiple VMs from multiple hosts can share a set of I/O devices without conflicting with each other PCIe network is a promising candidate Lower power consumption How to use SR-IOV hardware to support MR-IOV How to integrate PCIe network with Peregrine NTHUCS 33

Conclusions Cloud data center network issues Rack area networking All-L2 data center backbone (e.g. TRILL) Internet edge logic Existing solutions are fragmented or incomplete Plenty of room for innovation for a fully integrated solution ITRI/CCMA is working at full steam on this NTHUCS 34

Thank You! Questions and Comments? tcc@itri.org.tw NTHUCS 35

Internet Edge Functionalities Cluster-based implementation Server load balancing Firewalling and IDS/IPS Network Address Translation Multi-homing load balancing (Cloud OS 2.0) Internet traffic shaping (Cloud OS 2.0) VPN for hybrid cloud (Cloud OS 2.0) WAN traffic caching and compression (Cloud OS 2.0) NTHUCS 36

Symmetric vs. Asymmetric Routing Intermediary of a VM is its associated PM, which has three MAC addresses, I1, I2 and I3, and I3 never appears in any forwarding tables Source address check inside switch: a packet with source address A that comes in through port P1 but is supposed to routed via P2 will be dropped prevents asymmetric routing unless source address modification is used Direct forwarding: s d; Indirect forwarding: s I(d) d Look-up: VDCid(d) + IPaddr(d) + I3(s) I3(s): d1, d2, I1(d), I2(d) [0 0 1 1], [0 0 0 1], [0 1 0 1] first direct MAC address, second direct MAC address, first intermediary, and second intermediary PASR check on outgoing packets I3(s) + VDCid(d) + IPaddr(d): d, I(d) = ARPcache_lookup(VDCid(d)+IPaddr(d)) s I3(s) guarantee source address never matches any forwarding table entry and thus enables asymmetric routing NTHUCS 37