The Content Delivery Network: Open Connect
You don't stream video from a Netflix server in California. You stream it from a box down the street. This is the power of Open Connect, Netflix's proprietary CDN.
How Open Connect Works
- Appliances: Netflix manufactures custom storage servers (Open Connect Appliances or OCAs). These are red boxes packed with SSDs and HDDs.
- ISP Partnership: They give these boxes to ISPs (Comcast, Verizon, AT&T) for free. The ISPs install them directly in their local exchanges.
- Proactive Caching: Netflix predicts what you will watch tomorrow. During off-peak hours (4 AM), they "push" the new episode of Stranger Things to the OCA in your neighborhood.
- Result: When you press play, the data travels only a few miles. 95% of traffic never touches the public internet backbone.
Adaptive Bitrate Streaming (ABS)
Netflix doesn't just send one video file. They encode the original master into dozens of variants:
- Codecs: H.264 (older compatibility), H.265/HEVC (4K efficiency), AV1 (royalty-free).
- Resolutions: 480p, 720p, 1080p, 4K.
- Bitrates: Low, Medium, High.
This creates a matrix of files. Each file is chopped into 4-second chunks.
The Manifest
When you press play, your device downloads a Manifest file (MPD or m3u8). It lists all available chunks.
Chunk 1: [1080p-High, 720p-Med, 480p-Low] Chunk 2: [1080p-High, 720p-Med, 480p-Low]
Client-Side Logic:
- Device measures bandwidth (e.g., 50 Mbps).
- Device requests Chunk 1 in 1080p-High.
- Network dips to 2 Mbps.
- Device requests Chunk 2 in 480p-Low to avoid buffering.
- Network recovers.
- Device requests Chunk 3 in 1080p-High.
High-Level Architecture
Backend Services (Microservices)
Netflix was a pioneer in Microservices. A single request to "load homepage" might fan out to 50+ services:
- Steering Service: Decides which OCA is closest to the user.
- Playback Service: Verifies DRM license and concurrency limits (screens active).
- Zuul / EVC: The Gateway that handles routing and resilience.
Data Stores
- Cassandra: Used for high-volume write data like "viewing history" (bookmarks). It handles the massive throughput of millions of users scrubbing videos simultaneously.
- EVCache: A wrapper around Memcached to reduce database load.
The Encoding Pipeline: Per-Title Optimization
Before a single frame reaches an OCA, it passes through one of the most sophisticated encoding pipelines in the industry. A studio delivers a master file that can exceed a terabyte for a feature film. Netflix then runs a massive parallel encoding job — the film is split into chunks, encoded across thousands of cloud instances simultaneously, and stitched back together.
The clever part is per-title encoding. A noisy action movie with fast cuts and explosions needs a high bitrate to look good at 1080p. A slow animated film with large flat color regions compresses beautifully and can hit the same perceptual quality at half the bitrate. Instead of using one fixed "bitrate ladder" for everything, Netflix analyzes each title (and later, each shot) and builds a custom ladder:
- The encoder runs test encodes at multiple resolutions and bitrates.
- Each result is scored with VMAF (Video Multi-method Assessment Fusion), a perceptual quality metric Netflix open-sourced that predicts how a human would rate the picture.
- The final ladder keeps only the points that deliver the best quality-per-bit.
The payoff is enormous at Netflix's scale: shaving 20% off the average bitrate saves petabytes of daily transfer and makes 4K viable on mid-tier connections.
Resilience: Assume Everything Fails
Netflix's engineering culture is famous for one uncomfortable idea: the best way to ensure your system survives failure is to cause failure on purpose.
- Chaos Monkey randomly terminates production instances during business hours. If killing a random server breaks the service, that's a bug in the architecture — better to find it at 2 PM on Tuesday than during the finale of a hit show.
- Regional evacuation: Netflix runs active-active across multiple AWS regions. If an entire region degrades, traffic is shifted to the surviving regions in minutes. This is rehearsed regularly, not just documented.
- Circuit breakers and fallbacks: When a non-critical service (say, personalized artwork) times out, the API gateway serves a default response instead of failing the whole page. The homepage you see during a partial outage may be quietly degraded — unpersonalized rows, cached artwork — but it loads.
- Backpressure at the edge: the Zuul gateway sheds low-priority traffic first under load, protecting playback (the "start a stream" path) above everything else. Browsing can degrade; pressing Play must not.
The architectural lesson: playback availability is protected by strict bulkheading. The control plane (AWS) and data plane (Open Connect) are so decoupled that even if the entire AWS side has issues, videos already streaming keep playing — the client has its manifest and talks directly to the OCA.
Steering: Picking the Right Server for Every Play
When you press play, the steering service must choose which OCA serves you. This is a constrained optimization problem running millions of times per minute:
- Proximity: prefer the appliance embedded inside your ISP; fall back to internet exchange points, then regional sites.
- Content availability: not every OCA holds every title. Popularity prediction decides what is pushed where during the nightly fill window.
- Health and load: an OCA near its throughput ceiling is deprioritized before users notice degraded throughput.
The client receives a ranked list of URLs, not just one, so it can fail over between OCAs mid-stream without a round trip to the control plane.
Scale Snapshot
| Dimension | Order of Magnitude |
|---|---|
| Subscribers | 250+ million |
| Share of downstream internet traffic | ~15% globally at peak |
| Open Connect appliances | Thousands, in 1,000+ locations |
| Microservices | 700+ |
| Daily viewing | Hundreds of millions of hours |
Design Lessons You Can Reuse
- Separate control plane from data plane. Login, browsing, and billing have completely different scaling and availability profiles than video delivery. Splitting them lets each be optimized (and fail) independently.
- Push content to the edge before it's requested. Predictive pre-caching turns your worst-case (a global premiere) into your best-case, because the bytes are already local. The same idea powers CDN strategy at any scale.
- Let the client adapt. Adaptive bitrate pushes the hardest real-time decision — "what quality can this network sustain right now?" — to the device that has the freshest information.
- Degrade gracefully, protect the core. Identify your single most important user action (for Netflix: starting playback) and design every failure mode to sacrifice something else first.
Related Concepts
- CDN — Content Delivery Networks
- Microservices Architecture
- Circuit Breaker Pattern
- System Design: YouTube Transcoding
- Caching Strategies
About ScaleWiki
ScaleWiki is an interactive educational platform dedicated to demystifying distributed systems, software architecture, and system design. Our mission is to provide high-quality, technically accurate resources for software engineers preparing for interviews or solving complex scaling challenges in production.
Read more about our Editorial Guidelines & Authorship.
Educational Disclaimer: The architectural patterns and system designs discussed in this article are based on common industry practices, technical whitepapers, and public engineering blogs. Actual implementations in enterprise environments may vary significantly based on specific product requirements, legacy constraints, and evolving technologies.
Related Articles
Top-K Heavy Hitters (Streaming)
How to find 'Trending Topics' in massive real-time streams. MapReduce, Count-Min Sketches, and Sliding Windows.
Backpressure
Flow control mechanism that prevents fast producers from overwhelming slow consumers by signaling when to slow down, pause, or drop data in streaming systems.
System Design: Dropbox (Google Drive)
Designing a file synchronization service like Dropbox or Google Drive. Key concepts: Block-level Deduplication, Delta Sync, and Strong Consistency.