Video streaming and CDNs

Streaming video (including Netflix, YouTube and Amazon Prime) account for about 55%–80% of Internet traffic, depending on the measurement method.

Video streaming services are implemented using:

  1. application-level protocols
  2. geographically distributed servers that function in some ways like a cache

Internet video

Prerecorded videos:

A video is:

Video can be compressed:

Compressed Internet video ranges from:

Bitrate Resolution
300 kbps – 2 Mbps 240p–480p
2 – 5 Mbps 720p HD
4 – 10 Mbps 1080p Full HD
15 – 40 Mbps 4K UHD
50+ Mbps 8K

To provide continuous playout, the network must provide an average throughput to the streaming application that is at least as large as the bit rate of the compressed video.

Streaming systems use codecs such as H.264/AVC, HEVC/H.265 and AV1.

HTTP streaming

HTTP streaming:

If all clients receive the same encoding of the video, users with low bandwidth may experience stalls while users with high available bandwidth may not fully utilize the network.

This has led to the development of adaptive HTTP-based streaming protocols:

DASH:

HLS:

CMAF is a universal shipping container for internet video streaming, so that DASH and HLS can share the same media segments.

Content Distribution Networks

Major video-streaming companies use Content Distribution Networks (CDNs).

A CDN consists of a set of geographically distributed servers that cache content and serve user requests from locations that are close to the user or otherwise optimal.

CDNs use routing mechanisms such as DNS-based redirection, Anycast, and load balancing to direct users to an appropriate server.

CDNs have two different server placement philosophies:

In practice, CDNs use a hybrid approach, combining both strategies.

Netflix

Netflix video distribution has two major components:

  1. the Amazon cloud infrastructure
    • the web site and its databases run in cloud infrastructure
    • many different formats and bit rates are created for each movie
  2. its own private CDN infrastructure (Netflix Open Connect)
    • Netflix has installed server racks both in IXPs and within residential ISPs themselves
    • encoded versions of videos are uploaded to CDN servers

Netflix distributes by pushing videos to CDN servers during off-peak hours.

For locations that cannot hold the entire library, Netflix pushes only the most popular videos, which are determined on a day-to-day basis.

When a user selects a movie to play:

YouTube

The Google/YouTube design and protocols are proprietary.

Through several independent measurement efforts we can gain a basic understanding about how YouTube operates.

YouTube:

Previous Peer-to-peer file distribution All ⏎ Next Introduction to the transport layer

A Kemar Joint