10 Thousand Channels to 10 Million Viewers: 10 Thousand Channels to 10 Million Viewers: Scaling Video Delivery over IP Scaling Video Delivery over IP Neill A. Kipp Neill A. Kipp Distinguished Engineer Distinguished Engineer
One Frame of Video One Frame of Video
Y Cb Cr Y Cb Cr
program allocation PID table program map PAT 0 packetized table elementary stream PMT 1 481 188 byte packets 482 PES PES audio 35 491 MPEG-2 Video Transport MPEG-2 Video Transport signals
Linear Transcoder multiple profile H.264 1920 × 1080 1280 × 720 single profile multicast 768 x 432 H.262 512 × 288 Transcode to MPEG-4 Transcode to MPEG-4 320 × 180
13,445 Pillars running on 1443 hosts Encoder Boundary time shift Point (EBP) buffer DASH MPD TS RAM disk 7 x 188 byte packets per UDP Package into DASH with Pillar LP Package into DASH with Pillar LP
XFINITY TV App for Comcast customers
Voice Remote Voice Remote
cache geographically distributed edge cache clusters miss to mid tier … health reports manifest Content Router DNS HTTP hostname to selected server in and path numeric manifest 302 closest, least-loaded address path redirect cluster of router hostname to resolve Distributed HTTP Access Distributed HTTP Access
40 Super8 instances for national linear IPVS cache miss to origin mid tier Super8 JITP Super8 JITP cache
Player Plays Player Plays the Frame the Frame
35 Ad Signal Ad Signal https://www.youtube.com/watch?v=3LHk2dou6jE
Blackout Blackout https://www.youtube.com/watch?v=wiq3f02u3Y4
EAS Aggregator National Ingest EAS WS DASH Origin Super8 OASIS CAP poll XML Emergency Emergency Alert! Alert! ENDEC http://wallpapersinhq.pw/images/big/untitled_wallpaper-11614.jpg
Press Record Press Record
Rio 1.0 Cloud Recording Pillar Linear Packager Architecture A8 MPD TS JQ A8 Scheduler Segment Manifest Updater Agent Recorder S3 + fanout Recorder C3 DASH Active Manager Origin Stream Vault Queues ZK Super8 Reconstituted JITP S3 Archive Vault N8 Stream Agent N8 Agent Reconstitution SQL Agent Archived S3 Vault Metadata Storage
etcd Kubernetes nodes launch IP traffic schedule Kubernetes Master Kubernetes master master monitor Virtualization, Virtualization, Orchestration, Orchestration, rebalance One-click One-click configure Deploy Deploy
Hunk MemSQL Hadoop + metadata history path real-time 2 years 3.5 PB analytics Storm HTTP Collector Headwaters VIPER Player playback Kafka Platform Big Data Big Data metrics Comcast API 1 min heartbeat
13,445 linear channels 13,445 Pillars – 1443 VMs – 40 data centers x1000 426 Super8 instances x100 40 data centers 72 mid-tier nodes 36 TB ram disk 20 PB spinning 550 edge nodes At Scale At Scale 138 TB ram disk 6.3 Tbps capacity 6 PB spinning 15 billion transactions, 5 PB per day 10 million viewers
Release Live Pillar LP Management Linear Linear Alternate Transcoder Packager Placement Content Opportunity Information Content System Event Emergency Advertising Rio Cloud Origination Scheduler Alert Decision Recording System System System Super8™ Alternate Blackout Just-in-time Content Manager On Cloud Packager Router Manifest Demand Recordings Manipulator IP Content On Demand Delivery Transcoder Network DASH VOD Origin C2Factory VOD Indexer Multicast Network Controller Attached Home Storage Gateway Player Platform Analytics Ingest Service Delivery Big Data Analytics Engineering/ Real Time Player Storage Infrastructure Reporting Platform
Recommend
More recommend