an OpenSource Virtual Content Distribution Network (vCDN) Platform

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
Orchestrator
NFV Management
Operational Support System (OSS)
Orchestrator
Os-Ma
Element Management
System (EMS)
ABNO
Controller
GMPLS
VNF 1
OC
Load Balancer
VNF 2
OC
Cache Node
VNF 3
OC Fail-over
Monitor
VNF Manager
vCDN Controller
Ve-Vnfm
Vn-Nf
Vn-Nf
Virtual Compute
Virtual Compute
Virtual Compute
Virtual Storage
Virtual Storage
Virtual Storage
Virtual Network
Virtual Network
Virtual Network
Virtualisation Layer
Flexible Optical
Switches
VI-Ha
VI-Ha
Storage
Hardware
Compute
Hardware
NFV Infrastructure
9
Network
Hardware
Nf-Vi
Virtual
Infrastructure
Manager
OpenStack
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