15-744: Computer Networking

Slides:



Advertisements
Similar presentations
1 Data-Oriented Network Architecture (DONA) Scott Shenker (M. Chowla, T. Koponen, K. Lakshminarayanan, A. Ramachandran, A. Tavakoli, I. Stoica)
Advertisements

Incrementally Deployable Information Centric Networking 1 Seyed K. Fayazbakhsh, Yin Lin, Amin Tootoonchian, Ali Ghodsi, Teemu Koponen, Bruce Maggs, KC.
Hui Zhang, Fall Computer Networking Internet Video Delivery.
Suphakit Awiphan, Takeshi Muto, Yu Wang, Zhou Su, Jiro Katto
Dynamic Adaptive Streaming over HTTP2.0. What’s in store ▪ All about – MPEG DASH, pipelining, persistent connections and caching ▪ Google SPDY - Past,
CStream: Neighborhood Bandwidth Aggregation For Better Video Streaming Thangam Vedagiri Seenivasan Advisor: Mark Claypool Reader: Robert Kinicki 1 M.S.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
An Overlay Multicast Infrastructure for Live/Stored Video Streaming Visual Communication Laboratory Department of Computer Science National Tsing Hua University.
1 USC INFORMATION SCIENCES INSTITUTE Proxy Caching Mechanism for Multimedia Playback Streams in the Internet R. Rejaie, M. Handley, H. Yu, D. Estrin USC/ISI.
1 Web Content Delivery Reading: Section and COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Ioannis Avramopoulos Instructor:
Computer Networking Lecture 18 – Internet Video Delivery Matt Mukerjee Slides: Hui Zhang, Peter Steenkiste, Athula Balachandran, Srini Seshan, et.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
CS640: Introduction to Computer Networks
EVERYWHERE: IMPACT OF DEVICE AND INFRASTRUCTURE SYNERGIES ON USER EXPERIENCE Cost TMA – Figaro - NSF Alessandro Finamore Marco Mellia Maurizio Munafò Sanjay.
Using Multimedia on the Web
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
RTSP Real Time Streaming Protocol
CIS679: RTP and RTCP r Review of Last Lecture r Streaming from Web Server r RTP and RTCP.
Active Network Applications Tom Anderson University of Washington.
CIS 725 Wireless networks. Low bandwidth High error rates.
1 Cache Me If You Can. NUS.SOC.CS5248 OOI WEI TSANG 2 You Are Here Network Encoder Sender Middlebox Receiver Decoder.
Infrastructure for Better Quality Internet Access & Web Publishing without Increasing Bandwidth Prof. Chi Chi Hung School of Computing, National University.
Less Pain, Most of the Gain: Incrementally Deployable ICN 1 Seyed K. Fayazbakhsh, Yin Lin, Amin Tootoonchian, Ali Ghodsi, Teemu Koponen, Bruce Maggs, KC.
CPSC 441: Multimedia Networking1 Outline r Scalable Streaming Techniques r Content Distribution Networks.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
PROP: A Scalable and Reliable P2P Assisted Proxy Streaming System Computer Science Department College of William and Mary Lei Guo, Songqing Chen, and Xiaodong.
Less Pain, Most of the Gain: Incrementally Deployable ICN 1 Seyed K. Fayazbakhsh, Yin Lin, Amin Tootoonchian, Ali Ghodsi, Teemu Koponen, Bruce Maggs, KC.
Fs Streaming Media a presentation by Florian Seidel.
Lecture 7: Video Streaming (II) 2-1. Outline  Network basics:  HTTP protocols  Studies on HTTP performance from different views:  Browser types [NSDI.
An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation PRESENTED BY : XI TAO AND PRATEEK GOYAL DEC
Overlay Networks : An Akamai Perspective
15-744: Computer Networking L-17 CDN, Video Streaming.
Accelerating Peer-to-Peer Networks for Video Streaming
Chapter 7 Multimedia Networking
19 – Multimedia Networking
Instructor Materials Chapter 9: Transport Layer
Live Global Sports Events
MPEG-4 Binary Information for Scenes (BIFS)
Content Distribution Networks
15-744: Computer Networking
Ad-hoc Networks.
Revisiting Ethernet: Plug-and-play made scalable and efficient
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Mohammad Malli Chadi Barakat, Walid Dabbous Alcatel meeting
Understand the OSI Model Part 2
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Computer Network.
Chapter 5 Network and Transport Layers
Chapter 2 Introduction Application Requirements VS. Transport Services
Congestion Control, Internet transport protocols: udp
ECE 671 – Lecture 16 Content Distribution Networks
Multimedia networking: outline
Managing Online Services
Overview What is Multimedia? Characteristics of multimedia
Distributed Systems CS
Computer Science 457 Networking and the Internet
Multimedia and Networks
NUS PI: Roger Zimmermann ZJU PI: TBD NUS Co-PIs: Ben Leong
Digital television systems - (DTS)
University of Houston Datacom II Lecture 1B Review Dr Fred L Zellner
It Followed Me Home: Exploring Strong Last Hop Devices and CDNs
Gigabit measurements – quality, not (just) quantity
Content Distribution Networks + P2P File Sharing
Multimedia networking: outline
Performance and Scalability Issues of Multimedia Digital Library
EE 122: Lecture 22 (Overlay Networks)
Streaming multimedia CS 352, Lecture 22
Data-Oriented Network Architecture (DONA)
Digital Video Faraz Khan.
Content Distribution Networks + P2P File Sharing
Presentation transcript:

15-744: Computer Networking CDN, Video Streaming

Overview Domain Name System (DNS) Content Delivery Networks (CDN) Extension mechanisms for DNS (EDNS) ICN vs. CDN

Content Retrieval C ICN decouples “what” from “where” Equip network with content caches e.g., CCN, DONA, NDN, 4WARD …. Route based on content names e.g., find nearest replica C C S2 ICN decouples “what” from “where” C Bind content names to intent Today: 1) Ask search engine for name of server holding object 2) Resolve name to network address of server 3) Send request for object to server

Benefits of deploying ICN e.g., CCN, DONA, NDN, 4WARD …. Lower latency Reduced congestion Support for mobility Intrinsic security

Difficulties deploying ICN e.g., CCN, DONA, NDN, 4WARD …. . Routers need to be replaced to support content-based routing and to incorporate caches

Approach: Attribute gains to tenets Qualitative Quantitative Lower latency Reduced congestion Support for mobility Intrinsic security Decouple “what” from “where” Bind content names to intent Equip network with content caches Route based on content names

Basis for incrementally deployable ICN Key Takeaways To achieve quantitative benefits: Just cache at the “edge” With Zipf-like object popularities, pervasive caching and nearest-replica routing don’t add much To achieve qualitative benefits: Build on HTTP Basis for incrementally deployable ICN

Representative points in design space Cache Placement Request Routing ICN-SP Everywhere Shortest path to origin ICN-NR Nearest replica Edge Only at edge nodes Edge-Coop Edge neighbors alone

Object Popularities - Zipf Distribution ith most popular item occurs with frequency proportional to 1/iα

Request latency (hops) - Asia trace Gap between all architectures is small (< 10%) Nearest-replica routing provides almost no benefit

Revisiting Qualitative Aspects Decouple names from locations Build on HTTP Can be viewed as providing “get-by-name” abstraction Can reuse existing web protocols (e.g., proxy discovery) 2. Binding names to intents Use self-certifying names e.g., “Magnet” URI schemes Extend HTTP for “crypto” and other metadata

idICN: Content Registration Name Resolution System Register L.P.idicn.org Reverse Proxy P = Hash of public key L = content label Publish content e.g., http://en.5671….fda627b.idicn.org/wiki/ Origin Server

idICN: Client Configuration Name Resolution System Proxy Edge Cache Reverse Proxy Automatic Proxy Discovery e.g., WPAD Client Origin Server

idICN: Content Delivery Name Resolution System 2. Name resolution 3. Rqst by address Proxy Edge Cache Reverse Proxy 5. Response + Metadata 1. Rqst L.P.idicn.org 4. Fetch 6. Response Client Origin Server

Conclusions Motivation: Gains of ICN with less pain Latency, congestion, security Without changes to routers or routing! End-to-end argument applied to ICN design space Can get most quantitative benefits with “edge” solutions Pervasive caching, nearest-replica routing not needed Can get qualitative benefits with existing techniques With existing HTTP + HTTP-based extensions Incrementally deployable + backwards compatible idICN design: one possible feasible realization Open issues: economics, other benefits, future workloads ..

Overview Background/Terminology Client-server protocol: HTTP chunking Video quality analytics

It’s all Video! The Internet Today… Video Video Could be Video Probably Video It’s all Video! Encrypted Video? Purchasing Videos? Why do we care about video? DEFINITELY Video! Sharing Video! Video in the name! Ads! (and Videos!) 2014 1H – NA Fixed Access

Demystifying Video Delivery Video Source Screen Internet Video Player So how video is delivered today? ??? What’s this? Today’s lecture Source: www.conviva.com

Terminology Frame FPS (frames per second) Resolution Bitrate 24, 25, 30, or 60 Resolution Number of pixels per frame 160x120 to 1920x1080 (1080p) to 4096x2160 (4K) Bitrate Information stored/transmitted per unit time Usually measured in kbps to mbps Ranges from 200Kbps to 30 Mbps

Requirements What’s video quality? Smooth/continuous playback High bitrate Short start-up time What they mean depends on the type of videos Delay Bandwidth Examples 2, N-way conference < 200 ms 4 kbps audio only, 200 kbps – 5 Mbps video Skype, Google hangout, Polycom, Cisco Short form VoD < 1-5s 300 kbps – 2 Mbps & higher Youtube Long form VoD < 5-30s 500 kbps – 6 Mbps & higher Netflix, Hulu, Qiyi, HBOGO Live Broadcast < 5-10s WatchESPN, MLB

Client-Server Protocol Video Source Screen Internet Video Player ??? What protocol? Source: www.conviva.com

1st Gen: HTTP Download Browser requests the video (file), stores it locally, and gives the file to the player to display.

First Gen: HTTP Progressive Download (2) 7/11/2019 First Gen: HTTP Progressive Download (2) Alternative: set up connection between server and player; player takes over Web browser requests and receives a Meta File (which describes the object) instead of receiving the file itself; Browser launches the player and passes it the Meta File; Player sets up a connection with Web Server and downloads or streams the file by HTTP

Streaming Model: Buffers and Timing Max Buffer Duration = allowable jitter File Position "Bad": Buffer overflows Smooth Playback Time Max Buffer Size Buffer Duration "Bad": Buffer underflows and playback stops Buffer Size "Good" Region: smooth playback Buffer almost empty Time

Drawbacks of HTTP Progressive Download 7/11/2019 Drawbacks of HTTP Progressive Download HTTP connection keeps data flowing as fast as possible to user's local buffer May waste bandwidth if user does not watch the entire video TCP file transfer can use more bandwidth than necessary Cannot change video quality (bit rate) to adapt to network congestion Mismatch between whole file transfer and stop/start/seek playback controls. However: player can use file range requests to seek to video position Takeaways of 1st generation: General-purpose protocols don’t work

2nd Generation: Real-Time Streaming 7/11/2019 2nd Generation: Real-Time Streaming Build our own protocol! This gets us around HTTP; app layer protocol can be better tailored to Streaming Example: Real-time Streaming Protocol

Drawbacks of Real-Time Streaming 7/11/2019 Drawbacks of Real-Time Streaming Streaming protocols often blocked by routers HTTP delivery can use ordinary proxies and caches Takeaways of 1st & 2nd generations: 1st gen: General-purpose protocols (HTTP) don’t work 2nd gen: Rather than adapt Internet to streaming, adapt media delivery to the Internet

3rd Generation: HTTP Streaming 7/11/2019 3rd Generation: HTTP Streaming Reusing HTTP: Client-centric architecture with stateful client and stateless server Standard server: Web servers Standard Protocol: HTTP Session state and logic maintained at client HTTP Chunking: Video is broken into multiple chunks (like with bittorrent) Each chunk can be played independent of other chunks Playing chunks in sequence gives seamless video Meta-file (manifest) provides chunk file names

HTTP Chunking Protocol Manifest: A1, A2, … Server Client Manifest HTTP Adaptive Player … A1 A1 A2 … A1 A2 Manifest HTTP GET Manifest Cache Web server Web browser Web server HTTP HTTP TCP TCP

HTTP Chunking Protocol Manifest: A1, A2, … Server Client Manifest HTTP Adaptive Player … A1 A2 … A1 A1 A2 A1 A2 HTTP GET A2 HTTP GET A1 Cache Web server Web browser Web server HTTP HTTP TCP TCP

Adaptive Bitrate with HTTP Streaming 7/11/2019 Adaptive Bitrate with HTTP Streaming Encode video at different quality/bitrate levels Client can adapt by requesting chunks at different bitrate levels Chunks of different bitrates must be synchronized All encodings have the same chunk boundaries and all chunks can be played independently, so you can make smooth splices to chunks of higher or lower bit rates

HTTP Chunking Protocol Manifest: LQ: A1, A2, … HQ: B1, B2, ... Server Client Manifest HTTP Adaptive Player … B1 A1 A2 … A1 A1 A1 A2 … B1 B2 … HTTP GET A1 HTTP GET B2 Cache B2 B1 B2 Web server Web browser Web server HTTP HTTP TCP TCP

Advantages of HTTP Streaming 7/11/2019 Advantages of HTTP Streaming Easy to deploy: it's just HTTP! Work with existing caches/proxies/Webservers/Firewall Fast startup by downloading lowest quality/smallest chunk Bitrate switching is seamless Can switch bitrate and server (even CDN) during playback Tradeoff 1: fixed chunk length. Small with respect to the movie size Large with respect to TCP 5-10 seconds of 1Mbps – 3Mbps  0.5MB – 4MB per chunk Tradeoff 2: predetermined bitrate levels Can only switch between predetermined bitrate levels.

Demystifying Video Delivery Video Source Screen Internet Video Player ??? Source: www.conviva.com

Demystifying Video Delivery Video Source Screen Encoders & Video Servers Video Player CMS and Hosting ISP & Home Net Content Delivery Networks (CDN) Source: www.conviva.com

Overview Background/Terminology Client-server protocol: HTTP chunking Video quality analytics

What’s wrong with this picture? Video Source Screen Encoders & Video Servers No Feedback! Video Player CMS and Hosting ISP & Home Net Content Delivery Networks (CDN) Source: www.conviva.com

Closing the Loop with Quality Analytics Video Source Content Broker Screen Encoders & Video Servers Video Player CMS and Hosting Why feedback from clients? - Only client can measure video quality accurately ISP & Home Net Content Delivery Networks (CDN) Source: www.conviva.com

Closing the Loop with Quality Analytics Video Source Screen Encoders & Video Servers Video Player CMS and Hosting ISP & Home Net Content Delivery Networks (CDN) Source: www.conviva.com

Why Quality Analytics is Challenging Why Quality Analytics is Challenging? (1) Spatial Diversity of Performance Performance of CDNs have large spatial diversity. Need to choose CDN (servers) for different clients.

Performance of CDNs have large temporal variance. Why Quality Analytics is Challenging? (2) Temporal Diversity of Performance Performance of CDNs have large temporal variance. Need to choose CDN (servers) dynamically.

C3: Internet-Scale Control Platform for Video QoE Optimization Conviva Architecture How to scale up? C3: Internet-Scale Control Platform for Video QoE Optimization

Next Lecture Wireless