Learning Objectives

After successfully completing this unit, you should be able to

  1. describe different video streaming applications.
  2. explain the essential technologies and protocols that support each type of video streaming application.
  3. explain how content distribution networks work.
  4. gain an understanding of the technologies used in Netflix, Spotify and YouTube.

Learning Tasks

Required:

  1. Watch the slideshow for this section.
  2. Study Section 2.6, Video Streaming and Content Distribution Networks, in the textbook.

Terms and Topics

Section 6—Video Streaming and Content Distribution Networks

Internet video
Low-quality video
High-definition video
4K video
UDP streaming
HTTP streaming
Adaptive HTTP streaming
Client buffering
Prefetching video in HTTP streaming
Client application buffer and TCP buffers
Analysis of video streaming
Early termination in video streaming
Repositioning in video streaming
HTTP byte-range header
Adaptive streaming and DASH
Dynamic adaptive streaming over HTTP (DASH)
Manifest file
Removing jitter at the receiver for audio
Fixed playout delay
Adaptive playout delay
Recovering from packet loss
Loss recovering schemes
Forward error correction (FEC)
Interleaving

Real-time measurements of delay and loss
IP anycast
TikTok
Netflix
Netflix video streaming platform
YouTube
Kankan
Limitations of the best-effort IP service
Packet loss
End-to-end delay
Packet jitter
Content distribution networks (CDNs)
Private CDN
Third-party CDN
Server placement philosophy of CDN
Enter deep philosophy
Bring home philosophy
CDN operation
Cluster selection strategies of CDN
Geographically closest cluster (of servers)

Leading Questions

Streaming Stored Video

  1. What are UDP streaming, HTTP streaming, and Adaptive HTTP streaming?
  2. Can streaming be done over TCP?
  3. What is client buffering? Why is it needed?
  4. How does UDP streaming work? What properties does UDP streaming have?
  5. Why does UDP streaming need a parallel control connection?
  6. What protocols are used for UDP streaming?
  7. What is HTTP streaming? How does it work?
  8. What are multimedia network applications using HTTP streaming?
  9. What is prefetching video? Why is it needed?
  10. HTTP streaming runs over TCP and utilizes both the client application buffer and TCP buffers. How do the two collaborate?
  11. How is early termination handled in HTTP streaming?
  12. How is repositioning video handled in HTTP streaming?
  13. What is adaptive HTTP streaming? What is dynamic adaptive streaming over HTTP (DASH)
  14. How does DASH work? What advantages does DASH have?
  15. What are content distribution networks (CDNs)?
  16. A CDN often consists of many servers. How would these servers be placed?
  17. What is the so-called enter deep philosophy for server placement within content distribution networks? How are servers placed according to enter deep?
  18. What is the so-called bring home philosophy for server placement within content distribution networks? How are servers placed according to bring home?
  19. How do CDNs work?
  20. How do CDNs take advantage of DNS to intercept and redirect requests?
  21. What six steps do CDNs use to take advantage of DNS to intercept and redirect requests?
  22. What are the cluster selection strategies for CDNs to assign a client?
  23. How do CDNs measure delay and loss performance for a client?
  24. How do some CDNs use IP anycast to match clients with CDN servers?
  25. What strategies are used by Netflix, YouTube, and Kankan, respectively, to assign clients to CDN servers?