BRKSPV-2160
Ignacio Martinez
Consulting Systems Engineer
Objectives of this session
Taking “End-to-end Multi-screen Video Delivery” as a use case, identify the role
and functions of Origin Servers and CDNs
Show the main components of a CDN and see how they have been optimized
for ABR and large scale caching
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 3
Agenda
The CDN and end-to-end multi-screen Video Delivery
– Origin Servers and CDNs
– ABR Video
CDN Architecture aspects
– Cache types
– Distribution models
– CDN Virtualization
– CDN Interconnection
– CDN Analytics, Security, Management and IPv6
CDN Sizing Parameters, Challenges and Methodology
– Intervening factors
– Popularity and Cache Hit Ratio
– Putting it all together
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Introduction
End to end Multi-screen Video Delivery
Today we will talk about Origin Servers and CDNs as well as ABR
Live ABR traffic
VOD ABR traffic
CA i
VOD Origin Servers i i
i
i
i i
Enc VOD i
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
Origin Servers and the CDN
Origin Servers
– Combine Content + Publishing Metadata 1 1
Live CDN
OS CA SE
Enc
OD
Enc NAS
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
Origin Server
Ingest must be flexible, resilient
and secure
One CDN can ingest from multiple
Origin Servers
– Local or in remote locations
Origins can be replicated
– Locally (load balancing)
– Remotely (disaster recovery)
Origins can have structure
– Security
– Capture/Recording/Playout
separation for better scalability
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public
HTTP ABR streaming concepts
Content + Content Representation
Client monitors
The client is intelligent
- Playout buffer
- Local resources (CPU, memory, screen, etc.)
- Network (TCP) connections and bandwidth
Client manages
Manifest
- Manifest database
Fragments - HTTP transport
- TCP connection(s)
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 10
Microsoft Smooth Streaming
Origin server operation (1/2)
Encoder facing
Receives fragments & “server” manifest
For live:
– Builds and maintains “client” manifest
Fragment Fragment Movie
– Maintains fmp4 file on disk
File Type
Movie Fragment
(ftyp)
(moof)
(moof)
Fragm
(mdat)
Fragm
(mdat)
Movie
Movie
Media
Media
Metadata Random
Data
Data
ent
ent
Access
– Updates the “mfra”/index box
(moov)
(mfra)
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
Microsoft Smooth Streaming
Origin server operation (2/2)
Fragme
(moof)
(mdat)
Media
Movie
Data
nt
– Client manifests are downloaded once
GET 720p.ism/QualityLevels(572000)/Fragments(video=160577243) HTTP/1.1
Movie Fragment
Movie Fragment
Random
Media Data
Media Data
(moov)
(moof)
(moof)
(mdat)
(mdat)
Access
(mfra)
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Apple HLS Streaming
Origin Server operation
Client facing
Live/VOD, client downloads playlist
For live, playlist downloaded periodically
Sliding window cfg ->length of the playlist
Segment URL in the playlist refers a
file on disk (URI)
“ordinary” web server as origin
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
Smooth vs. HLS Format Comparison
80% similar, 100% incompatible
HSS (Microsoft) HLS (Apple)
#TCP connections 2 1
Content File Format on Origin Server .ismv, Fragmented mp4 .ts, Segmented TS
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
New services - Time Shifted TV (TSTV)
Time shift TV, delayed viewing of a live event. Two flavors:
Restart TV (startOverTV), accessible only during the event
Catch-up TV accessible only after the event (via VOD catalog or reverse EPG)
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
Time Shifted TV – Origin Server Role
The defaults : “rolling” buffer for Live TV (sliding window)
Maintained by the encoder in HLS, 3 segments.
Maintained by the IIS helper in HSS/Smooth, 3 segments.
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
New services - cloud DVR (cDVR)
Recording types
– Shared
– Unique
Integrated with OS
functions
– Playout
– On-demand
encapsulation and
encryption
Highly unique
content
– Low playout demand
– Low hit ratio
– Storage
Like TSTV, demanding
requires backend logic
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
CDN - Introduction to dynamic caching
Concepts CDN
TPS
Implementation Content
Library
Cache
Storage
Cache
Storage
Cache size
as % of Content Library
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
Let’s recap
Directly influencing the OS and CDN element performance
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
CDN Architecture
Caching basics
Origin Server
RFC2616 OS OS
Cache Types
Internet
– Proxy Caches CDN
– Transparent Caches
– Private Caches
Proxy
Transparent
CDN acts as a Proxy Cache to the Cache
Cache
Origin Server SR
– OS performs revalidation
CDN efficiency
– How much popular content can the
CDN cache
DNS
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
CDN Reference Architecture
Basic CDN Design
– Two tiers
Acquisition (ingest)
Edge Delivery
– Two node types
Datacenter
Edge PoP
Three planes
– Content Data Plane
– Content Routing Plane
– Management Plane
Hierarchical Caching
– Popularity based
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
Hierarchical Caching
Architecture highlights
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public
Content Routing
Request Redirection model Origin Server
Peer to peer C C C
– Distributed Hash Table model
– Content can be cached anywhere
– Appropriate in fully meshed
topologies C C C
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public
The Challenges with Distributing ABR Objects
Old World Movie.mp4
Progressive Download
Frag1-1 Frag1-2 Frag1-3 Frag1-Z
Frag2-1 Frag2-2 Frag2-3 Frag2-Z
New World . 2hr movie, 2s segments
Frag3-1 Frag3-2 Frag3-3 Frag3-Z
ABR Delivery . 3600 fragments x 7 profiles
FragN-1 FragN-2 FragN-3
. 25,000 objects/movie FragN-Z
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 26
CDN Optimizations for ABR
Optimized TCP connection handling
Scaling to support the large # of connections for ABR
Optimized HTTP request handling
Scaling to support the large # of GET requests for ABR
Request Bundling
For live streaming, aggregates multiple cache-fill requests
for the same content into a single request to the next
cache-tier or Origin Server
Small Object Cache Throughput Optimizations
Small objects written to memory, delayed write to disk
(SSD or HDD)
Large objects continue to be cached on disk
Client/Streamer Stickiness (Content Affinity)
Service Visibility
Reporting and Analytics optimizations for ABR
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
Wholesale Services
In VDS-IS since day one: Delivery
Service concept
– Virtual CDN equivalent
VDS-IS Enhancements on support
of Wholesale Services
– Per Delivery Service bandwidth limits
– Per Delivery Service max sessions
– Per Delivery Service transaction logs
Per CP Reports available using
Cisco Analytics
– Cisco VDS-SM Service Manager
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 28
Proximity Routing
Separate Content Routing Plane
– Implemented at Service Router
– Better system scalability
Streamers inform Service Router
about status and load using
keepalive messages
– Streamer Redundancy
Variety of Streamer Selection
criteria available
– Load, content and service
availability, content based routing,
last resort routing
– Include network metrics via NPS
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 29
Web Acceleration
Accelerate webpage loading on
any device, any browser
Caching optimizations for small
objects
Front-End Optimization (FEO)
– Rewrite HTML for better rendering
Application Delivery Controllers
– SSL, GZIP, App load balancing
HTTP Security
– HTTP DDOS, HTTPS, Attack
Mitigation
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 30
CDN Interconnection (1/2)
IETF work on CDNI group
Practical experience in Cisco
sponsored CDN Federation Pilot
Validate CDN Interconnection from both
Business and Technical viewpoints
Business and Technical Tracks
Three phases completed
I - Validate existing CDN platforms
II - Test CDN Selection enhancements
III - Service Oriented
Now launching the Alpha CDN Federation
Service
Participation from CPs, SPs, Public CDN
Providers and Exchange Service
Providers
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 31
CDN Interconnection (2/2)
CDN Selection
– URL Rewriting and Re-Signing
techniques
– Keep CP information opaque
– Service Broker concept (VDS-SB)
Inter-CDN Ingest
– Upstream CDN concept
– OS URL mappings
VDS-SB
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
CDN Virtualization
Virtualization of CDN functions
– From appliances to bare metal
servers to VMs
Leverage virtualization capabilities
– Storage, Processing, Networking
Dynamic VM creation/deletion
– Elastic CDNs
Standards based, open source
– OpenStack support
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 33
Other CDN aspects
CDN Analytics Security
– Monitoring and Reporting – DDOS Attacks
– Sizing – ACL protection
– Optimized for ABR
Management IPv6
– Service Provisioning – Control plane (Service Router)
– Operation – Data Plane (Streamers)
– Ingest (Content Acquirers)
VDS-SM and CDSM
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 34
Architecture recap
While other architecture models
exist, Hierarchical caching is the
best fit for Service Provider
networks
CDNs are optimized for certain
content (e.g. VDS-IS is optimized
for ABR Video)
CDNs must be multiservice
– Support any content type
– Web Acceleration features
– Wholesale
– CDN Interconnection
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
Sizing a CDN
Before we start
Expected CDN efficiency goal
Throughput Library Size
Cache parameters
– Cache performance Streaming Performance Caching Performance
– Cache disk technology and size
On-demand Cache Size
System parameters Live Performance
Performance
Popularity
# Titles
– Topology (number of PoPs, tiers)
Object CHR
– Edge throughput # Channels
Protocol
size
– Live/on-demand ratio
Topology
– OD Library size
– Popularity distribution curve
– Failover/Redundancy policy CDN Efficiency
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public
Topology
OS Sizing depends on CDN OS OS
efficiency
100 10 90% CDN
Define CDN topology and apply Efficiency
Hierarchical Caching to achieve
efficiency goal CA
20
Example
– CDN Efficiency goal: 90%
– Two-tier CDN (edge + acquisition) SE SE
– Edge CHR: 80%
– Acquisition CHR: 50% 100
– Efficiency = 1 – (1 – Ec)*(1 – Ac) = 90%
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 38
Edge Throughput
For each Edge PoP live
50 live channels
– Obtain the peak throughput VoD Agg bitrate = 10 Mbps
Live/VoD ratio = 60%
– Obtain Live performance (Gbps) OS
f(# channels, bitrate, format) NAS
Edge PoP CHR = 80%
– And On-demand performance Acquisition CHR = 50%
3 0.5
f(CHR, bitrate, format) Total Ingest = 3.5 Gbps
– Prorate using Live/OD ratio
– Put as many caches as needed
– Add resiliency option (1+0, 1+1,
N+1) 4 2
0.5
– Calculate OD distribution traffic 0.5
Calculate Live distribution traffic
– Aggregate bitrate of all the Live
channels at all the profiles 20 30 10 15
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 39
Acquisition Throughput
For each Acquisition site live
50 live channels
– Obtain the distribution traffic VoD Agg bitrate = 10 Mbps
Live/VoD ratio = 60%
– Obtain On-demand performance OS
f(CHR, bitrate, format) NAS
Edge PoP CHR = 80%
– Put as many acquirers as needed Acquisition CHR = 50%
3 0.5
– Add CA resiliency option (1+1, N+1) Total Ingest = 3.5 Gbps
– Add Disaster Recovery option
– Add PoP failure option
Calculate Ingest traffic 4 2
– OS sizing 0.5
0.5
20 30 10 15
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 40
Popularity and CHR
CHR
a
Meet the CHR goals for the
different tiers
– Provide room for a minimum
portion of the content Library
Get an estimate of popularity
distribution for on-demand
– Zipf’s law P(k) = k-a / Si=1,N i-a
– 80/20 rule of thumb
Determine min cache storage
and load it into
streamers/acquirers
– On a per-location basis with
Content Affinity
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 41
Other factors
ABR
– CHR more difficult to predict
than for PDL
Refresh
– Additional traffic caused by
temporary content renewal
– Triggered by revalidation
Eviction
– Popularity driven
– Also depends on size, decay
Topology Considerations
– Hierarchical Caching gains
– Content Affinity
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
Sizing the Content Routing plane
Transactions per second (TPS) Example
– Driven by number of absolute URLs – 50K concurrent streams @ 1
that require DNS resolution Mbps average bitrate (50 Gbps
system)
TCP connections per stream – 20 min average viewing time
– HSS uses two (audio, video), HLS – 50,000 / (20 x 60) = 41.7 TPS
one
– Allow for 20% burst = 50 TPS
Other aspects
– Geo-location queries
– Proximity requests
– Both are cached
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 43
CDN Sizing Methodology recap
Set your Expectations
– Given your OS and network resources, establish the edge and acquisition CHR
Collect service data, ideally from an Analytics System
– Topology: # of PoPs, # of Acquisition nodes, # of Intermediate nodes if any
– Throughput: Expected peak traffic per PoP, Live/VoD ratio
– Traffic: formats, profiles, bitrates
– VoD: Library size, popularity distribution
– Resiliency requirements: 1+1, N+1
– Request Routing: # of TPS
Obtain cache performance at expected CHR (edge and acquisition)
– For both live and on-demand and prorate to obtain performance per unit
Put as many streamers and acquirers as required (performance) and load them
with as much caching storage as required to match the CHR
If it works, don’t touch it. Otherwise, go to square 0
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
Summary and final recap
New Video Technologies and Services are putting pressure on CDNs
– ABR
– Timeshift TV, cloud DVR
– Many optimizations required
Hierarchical Caching CDN Architecture is the best fit for Service Providers
– Leverage hierarchical networks in SPs
– Easily extendable to Wholesale, CDN Interconnection and other services
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
Related Sessions
BRKSPV-2999 Wednesday 11:30 - 13:00 (90 min)
– Virtualized and elastic Video Preparation and Distribution - Francois Le Faucheur
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 46
Call to Action…
Visit the World of Solutions:-
Cisco Campus
Walk-in Labs
Technical Solutions Clinics
Recommended Reading: For reading material and further resources for this
session, please visit www.pearson-books.com/CLMilan2014
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 47
Complete Your Online Session Evaluation
Complete your online session
evaluation
Complete four session evaluations
and the overall conference evaluation
to receive your Cisco Live T-shirt
BRKSPV-2160 © 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public 48