Evolution of OpenCache: an OpenSource Virtual Content Distribution Network (vcdn) Platform Daniel King d.king@lancaster.ac.uk Matthew Broadbent m.broadbent@lancaster.ac.uk David Hutchison d.hutchison@lancaster.ac.uk
Network Evolution SDN, A reality check Why Software Defined Networking? There s a hype in the industry! (no, really?) Where are we on the hype cycle? Dispelling some myths SDN is not a provisioning system or configuration management tool SDN is not a new protocol You do not buy off the shelf SDN It s an architectural approach 2
Cloud Evolution Defining Network Functions Virtualization Operators use a variety of proprietary appliances to provide network functions when delivering services Deploying a new network function often requires new hardware components Integrating new equipment into the network takes space, power, and the technical knowledge This problem is compounded by function and technology lifecycles which are becoming shorter as innovation accelerates The concept of virtualization is well-known and has been used for many years Operating system virtualization (Virtual Machines) Computational and application resource virtualisation (Cloud Computing) Network Function Virtualization Virtualize the class of network function Replace specialist hardware with instances of virtual services provided on service nodes in the network Enables high volume services and functions on generic platforms 3
Content is King The Content Distribution Network (CDN) Delivery of content, especially of video, is one of the major challenges of all operator networks due to massive growing amount of traffic. Growth of video traffic is driven by the shift from broadcast media to unicast delivery via IP. Complementary to the growth of today s Video Traffic On-demand Content Services to internet end-users, with similar quality constraints as for traditional TV Service of Network Operators Operators to deploy their proprietary cache nodes into the ISP network. CDN cache nodes are dedicated physical appliances or software with specific requirements on standard but dedicated hardware. CDN controller objective is to select a cache node (or a pool of cache nodes) for answering to the end-user request, and then redirect the end-user to the selected Cache Node. The Cache Node shall answer to the end-user request and deliver the requested content to the end user. The CDN controller is a centralized component, and CDN cache nodes are distributed within the Network and in N-PoPs. 4
CDN Architecture Key Components Functional Components of the CDN Content Distribution Management Deploy content as close to each user as possible. Content Routing Route the users request for content to the closest available content store or content engine. Content Switching & Load Balancing Distribute user requests across one or multiple servers. Surrogate servers Mirrored web content servers Content Proxies Master proxy Cache proxy Content DNS servers GeoIP information servers Content Peering Gateways 5
SDN & NFV Killer Application The Virtualized CDN (vcdn) SDN Network Control Dynamic connectivity Elastic bandwidth NFV Flexibility, Performance & Predictability Performance: Mean Response Time, Latency, Hit Ratio Percentage, Number of Completed Requests, Rejection rate and Mean CDN load. Dimensioning: remaining stable whatever the use of virtualized HW resources for CDN components Resource management: allow the right balance of network i/o to CPU power to storage i/o performance (e.g., RAM and HDD). Efficient use of resources (storage) Fulfil specific storage density requirements, e.g. to cache a large catalog of popular content. Deployment & Operational tools Compliance of cache nodes with main monitoring and reporting requirements (e.g., SNMP, syslog, etc.) so that operator is able to manage different types of cache nodes together for a Delivery Service. Content Management Ability to select specific cached content (e.g., video/http) and replicate/duplicate these selected content items during delivery via virtual switching to a Quality of Experience (QoE) virtualized function without degrading the overall performance of the virtualized CDN function 6
SDN & NFV Killer Application Content Distribution Network (CDN) Design principles require an efficient, reliable and responsive CDN Fault-tolerant network with appropriate load balancing Performance of a CDN is typically characterized by the response time (i.e. latency) perceived by the end-users Slow response time is the single greatest contributor to users abandoning content and web sites and processes The performance of a CDN is affected by Distributed content location Switching mechanism Data replication and caching strategies Reliable functions and network connectivity 7
OpenCache A Software-defined Content Caching Platform OpenCache a vcdn Platform Open API facilitating control of a distributed cache nodes Deployment via online and real-time software interface An application that bridges SDN and NFV capabilities Designed to be deployed anywhere in a network; one codebase OpenCache nodes can load balanced, support fail-over and matched to anticipated demands Operates in a controller-node architecture and maps to ETSI NFV architecture The API is currently exposed in full as an external northbound interface, enabling applications to be built on-top of a cache deployment QoE-driven content placement Cross-layer load balancing Feasible to implement a standalone controller or build a plugin for the existing OpenCache controller 8
OpenCache Control & Orchestration Reference Controller Architecture Network Control NFV Management Orchestrator Operational Support System (OSS) Os-Ma Orchestrator Element Management System (EMS) ABNO Controller GMPLS VNF 1 OC Load Balancer VNF 2 OC Cache Node VNF 3 OC Fail-over Monitor Ve-Vnfm VNF Manager vcdn Controller Vn-Nf Vn-Nf Virtual Compute Virtual Compute Virtual Compute Virtual Storage Virtual Storage Virtual Storage Virtual Network Virtual Network Virtual Network Flexible Optical Switches Compute Hardware VI-Ha Virtualisation Layer Storage Hardware VI-Ha Network Hardware Nf-Vi Virtual Infrastructure Manager OpenStack NFV Infrastructure 9
CDN Control & Orchestration Other Notable Controllers Exist Network Control Floodlight RYU POX Trema ABNO IT Resource Management Cloud Stack Open Mano 10
OpenCache Current Capability OpenCache Expressions An OpenCache expression describes a set of content which an operator desires to be cached Content will only be cached if it is explicitly included in an expression A single definition can express multiple locations to be served by the same service Cache Functions create build a new OpenCache node destroy destroy an OpenCache node start create a new service on a given node, caching content matching the given expression stop destroy a service, removing the stored content pause destroy a service, without removing the stored content move modify the forwarding layer to route requests to a different node fetch retrieve the content from a remote location before a cache-miss even occurs seed define identical content stored a multiple alternative locations 11
vcdn Evolution Variety of Research Challenges Workload Management Resource Management & Optimisation Service Level Agreement Management Performance Monitoring, Measurement & Benchmarking Resilience Security 12
vcdn Function Placement Workload Management Which services/resources to use for a CDN activity, when, where, how? A particular consumer, application, or function needs for an activity one or several services/resources under given constraints: Policy Trust Security Timing & Economics Functionality & Service level Application-specifics & Inter-dependencies Scheduling and Access Policies 13
vcdn Function Placement Resource Management & Optimisation CDN Resource representation Meta models for VNFs and network infrastructure Consideration and operation of various optimisation goals: Time Performance Cost Reliability Minimising the resource footprint Power Consumption 14
vcdn Quality of Experience Service Level Agreement Management Translate consumer demands into a service and application definition Encode performance qualities Specify resource and QoS requirements Mask resource details, queue data and current workload Combination and management of several SLAs relevant at various levels High-level, human-readable SLAs Technology SLAs within the middleware to guarantee service provisioning 15
vcdn Performance Monitoring, Measurement & Benchmarking Infrastructure analytics and visualisation Existing web-based GUI used to interact with an OpenCache controller Visualises OpenCache nodes in real-time; hits and misses per second, object size, resource utilisation etc. Composite metrics Simulations and what if scenario testing Hardware performance monitoring 16
vcdn Resilience Key Requirements & Challenges Definition of VNF Resilience Classes Application-based, priority, etc. VNF Resource Monitoring Capacity (memory and CPU) limitations per instance to avoid overbooking, and failure of end-to-end services Automatic Detection of Application Failure, or Performance Degradation Proactive health checking should also be supported Isolation and reporting of failures Failover to other VNFs or physical function Storage and transfer of state information within the VSN Replication of state for active/standby network functions Resilience of VSN Network Connectivity Automatic detection of link failure Failover to another usable link Automated routing recovery These capabilities are not limited to vcdn s! 17
vcdn Resilience Role of Standards Organisations Solving the VNF Resilience Requirements Auto Scale of Virtual Network Function Instances Reliable Network Connectivity between Network Nodes Existing Operating Virtual Network Function Instance Replacement Combining Different VNF Functions (a VNF Set) VNF Resilience Classes Multi-tier Network Service IETF VNF Pool datatracker.ietf.org/wg/vnfpool/charter/ Requirements and Use Cases for Virtual Network Functions draft-xia-vnfpool-use-cases-01 Virtualisation of Mobile Core Network Use Case draft-king-vnfpool-mobile-use-case-01 Virtualisation of Content Distribution Network Use Case draft-aranda-vnfpool-cdn-use-case-00 18
Thank You! Any comments or questions are welcome. Daniel King d.king@lancaster.ac.uk Matthew Broadbent m.broadbent@lancaster.ac.uk David Hutchison d.hutchison@lancaster.ac.uk 19