1 Cache Me If You Can. NUS.SOC.CS5248 OOI WEI TSANG 2 You Are Here Network Encoder Sender Middlebox Receiver Decoder.

Slides:



Advertisements
Similar presentations
Cost-Based Cache Replacement and Server Selection for Multimedia Proxy Across Wireless Internet Qian Zhang Zhe Xiang Wenwu Zhu Lixin Gao IEEE Transactions.
Advertisements

Presentation of M.Sc. Thesis Work Presented by: S. M. Farhad [ P] Department of Computer Science and Engineering, BUET Supervised by: Dr. Md. Mostofa.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Adaptive Playout. NUS.SOC.CS5248 Ooi Wei Tsang 2 You are Here Network Encoder Sender Middlebox Receiver Decoder.
Optimization of Data Caching and Streaming Media Kristin Martin November 24, 2008.
Dynamic Adaptive Streaming over HTTP2.0. What’s in store ▪ All about – MPEG DASH, pipelining, persistent connections and caching ▪ Google SPDY - Past,
A Server-less Architecture for Building Scalable, Reliable, and Cost-Effective Video-on-demand Systems Jack Lee Yiu-bun, Raymond Leung Wai Tak Department.
1 NUS.SOC.CS5248 OOI WEI TSANG Playout Buffer Management.
Caching Strategies in Transcoding-Enabled Proxy System for Streaming Media Distribution Networks Bo Shen Sung-Ju Lee Sujoy Basu IEEE Transactions On Multimedia,
A Peer-to-Peer On-Demand Streaming Service and Its Performance Evaluation Presenter: Nera Liu Author: Yang Guo, Kyoungwon Suh, Jim Kurose and Don Towsley.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Multimedia Proxy Caching Mechanism for Quality Adaptive Streaming Applications in the Internet Reza Rejaie Haobo Yu Mark Handley Deborah Estrin Presented.
Multimedia Proxy Caching Mechanism for Quality Adaptive Streaming Applications in the Internet R. Rejaie, H. Yu, M. Handley, D. Estrin.
Scalable and Continuous Media Streaming on Peer-to-Peer Networks M. Sasabe, N. Wakamiya, M. Murata, H. Miyahara Osaka University, Japan Presented By Tsz.
Analysis of Using Broadcast and Proxy for Streaming Layered Encoded Videos Wilson, Wing-Fai Poon and Kwok-Tung Lo.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
Prefix Caching assisted Periodic Broadcast for Streaming Popular Videos Yang Guo, Subhabrata Sen, and Don Towsley.
Collaborative Web Caching Based on Proxy Affinities Jiong Yang, Wei Wang in T. J.Watson Research Center Richard Muntz in Computer Science Department of.
Optimal Proxy Cache Allocation for Efficient Streaming Media Distribution Bing Wang, Subhabrata Sen, Micah Adler, and Don Towsley INFOCOM 2002.
A Server-less Architecture for Building Scalable, Reliable, and Cost-Effective Video-on-demand Systems Presented by: Raymond Leung Wai Tak Supervisor:
An Overlay Multicast Infrastructure for Live/Stored Video Streaming Visual Communication Laboratory Department of Computer Science National Tsing Hua University.
Reza Rejaie AT&T Labs - Research1 Reza Rejaie AT&T Labs – Research Menlo Park, CA Jussi Kangasharju Institut Eurocom France NOSSDAV 2001, New York June.
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.
Efficient Support for Interactive Browsing Operations in Clustered CBR Video Servers IEEE Transactions on Multimedia, Vol. 4, No.1, March 2002 Min-You.
Streaming Video Gabriel Nell UC Berkeley. Outline Scalable MPEG-4 video – Layered coding method – Integrated transport-decoder buffer model RAP streaming.
A Hybrid Caching Strategy for Streaming Media Files Jussara M. Almeida Derek L. Eager Mary K. Vernon University of Wisconsin-Madison University of Saskatchewan.
Caching Techniques for Streaming Multimedia over the Internet Markus Hofmann, T.S. Eugene Ng, Katherine Guo, Sanjoy Paul, Hui Zhang SOCCER 2000 DRAFT.
Web Caching Schemes For The Internet – cont. By Jia Wang.
Peer-to-peer Multimedia Streaming and Caching Service by Won J. Jeon and Klara Nahrstedt University of Illinois at Urbana-Champaign, Urbana, USA.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 34 – Media Server (Part 3) Klara Nahrstedt Spring 2012.
A Server-less Architecture for Building Scalable, Reliable, and Cost-Effective Video-on-demand Systems Raymond Leung and Jack Y.B. Lee Department of Information.
COCONET: Co-Operative Cache driven Overlay NETwork for p2p VoD streaming Abhishek Bhattacharya, Zhenyu Yang & Deng Pan.
Distributed Multimedia March 19, Distributed Multimedia What is Distributed Multimedia?  Large quantities of distributed data  Typically streamed.
1 Multimedia Storage Issues. NUS.SOC.CS5248 OOI WEI TSANG 2 Media vs. Documents large file size write once, read many deadlines!
Distributing Layered Encoded Video through Caches Authors: Jussi Kangasharju Felix HartantoMartin Reisslein Keith W. Ross Proceedings of IEEE Infocom 2001,
NUS.SOC.CS2105 Ooi Wei Tsang Application Transport Network Link Physical you are here.
Segment-Based Proxy Caching of Multimedia Streams Authors: Kun-Lung Wu, Philip S. Yu, and Joel L. Wolf IBM T.J. Watson Research Center Proceedings of The.
NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248..
NUS.SOC.CS Roger Zimmermann (based on slides by Ooi Wei Tsang) Systems Support for Continuous Media.
PROP: A Scalable and Reliable P2P Assisted Proxy Streaming System Computer Science Department College of William and Mary Lei Guo, Songqing Chen, and Xiaodong.
Multimedia Proxy Caching Mechanism for Quality Adaptive Streaming Applications in The Internet Reza Rejaie, Haobo Yu, Mark Handley, and Deborah Estrin.
Multimedia Information System Lab. Network Architecture Res. Group Cooperative Video Streaming Mechanisms with Video Quality Adjustment Naoki Wakamiya.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) 1 Proxy Caching for Streaming Media.
NUS.SOC.CS5248 Ooi Wei Tsang Course Matters. NUS.SOC.CS5248 Ooi Wei Tsang Deadlines 11 Oct: Survey Paper Due 18 Oct: Paper Reviews Due.
NUS.SOC.CS Roger Zimmermann (based on slides by Ooi Wei Tsang) Systems Support for Continuous Media.
NUS.SOC.CS5248 Ooi Wei Tsang Rate Adaptations. NUS.SOC.CS5248 Ooi Wei Tsang You are Here Network Encoder Sender Middlebox Receiver Decoder.
August 23, 2001ITCom2001 Proxy Caching Mechanisms with Video Quality Adjustment Masahiro Sasabe Graduate School of Engineering Science Osaka University.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Proxy Caching for Streaming Media.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Rate Adaptations.
An Overview of Proxy Caching Algorithms Haifeng Wang.
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Course Matters. NUS.SOC.CS5248 Ooi Wei Tsang 2 Make-Up Lecture This Saturday, 23 October TR7, 1-3pm Topic: “CPU scheduling”
Video Caching in Radio Access network: Impact on Delay and Capacity
/ Fast Web Content Delivery An Introduction to Related Techniques by Paper Survey B Li, Chien-chang R Sung, Chih-kuei.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 27 – Media Server (Part 2) Klara Nahrstedt Spring 2009.
Seminar On Rain Technology
NUS.SOC.CS5248 OOI WEI TSANG 1 Previously, on CS5248..
A Practical Performance Analysis of Stream Reuse Techniques in Peer-to-Peer VoD Systems Leonardo B. Pinho and Claudio L. Amorim Parallel Computing Laboratory.
NUS.SOC.CS5248 Ooi Wei Tsang Systems Support for Continuous Media.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Rate Adaptations.
DASH2M: Exploring HTTP/2 for Internet Streaming to Mobile Devices
CS5248: Systems Support for Continuous Media
Proxy Caching for Streaming Media
Rate Adaptations.
The Impact of Replacement Granularity on Video Caching
Error Recovery.
Rate Adaptations.
A Server-less Architecture for Building Scalable, Reliable, and Cost-Effective Video-on-demand Systems Raymond Leung and Jack Y.B. Lee Department of Information.
Memory Management for Scalable Web Data Servers
Video On Demand.
Distributed Systems CS
Presentation transcript:

1 Cache Me If You Can

NUS.SOC.CS5248 OOI WEI TSANG 2 You Are Here Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 3 Cache Proxies for Web A

NUS.SOC.CS5248 OOI WEI TSANG 4 Hierarchical Caching A B

NUS.SOC.CS5248 OOI WEI TSANG 5 Cooperative Caching AB

NUS.SOC.CS5248 OOI WEI TSANG 6 Distributed Caching AB

NUS.SOC.CS5248 OOI WEI TSANG 7 Streaming Media vs. Web Pages

NUS.SOC.CS5248 OOI WEI TSANG 8 Video Access Pattern by S. Acharya and B. Smith Study at Lulea University, Sweden 55% complete, 45% stop very early High temporal locality

NUS.SOC.CS5248 OOI WEI TSANG 9 Bimodal Distribution

NUS.SOC.CS5248 OOI WEI TSANG 10 Zipf Distribution log (Frequency) log (rank) Frequency = C/rank m

NUS.SOC.CS5248 OOI WEI TSANG 11 Zipf Law Frequency of English Words “the” “of” “to” “a” City size

12 Benefits of Caching

NUS.SOC.CS5248 OOI WEI TSANG 13 Reduce Access Latency :):(

NUS.SOC.CS5248 OOI WEI TSANG 14 Reduce Server Load

NUS.SOC.CS5248 OOI WEI TSANG 15 Buy Some Time

NUS.SOC.CS5248 OOI WEI TSANG 16 Reduce Client Buffer Size

17 Type of Cache

NUS.SOC.CS5248 OOI WEI TSANG 18 Types of Cache Static caching Dynamic caching patching buffer

NUS.SOC.CS5248 OOI WEI TSANG 19 Static Caching Cache “all or nothing” is bad Split video into segments of size S

NUS.SOC.CS5248 OOI WEI TSANG 20 If I am writing a survey Introduction Differences between web and media caching Video access pattern Benefits of caching Different type of cache Proxy caching architecture

NUS.SOC.CS5248 OOI WEI TSANG 21 Other Caching Issues How to segment? Which segments to cache? When to fetch data? Who to fetch from? When cache is full, who to kick out? How to measure popularity? Can cache adapt to popularity?

NUS.SOC.CS5248 OOI WEI TSANG 22 Rest of the Lecture Soccer – cooperative caching proxy Silo, rainbow and cache token – distributed caching proxy Mocha – with congestion control

23 SOCCER Self-organizing cooperative caching architecture

NUS.SOC.CS5248 OOI WEI TSANG 24 How to segment?

NUS.SOC.CS5248 OOI WEI TSANG 25 Effects of Size S Large S : Low utilization Small S : Lots of gaps

NUS.SOC.CS5248 OOI WEI TSANG 26 Prefix Caching Policy 1 Chunk = k segments

NUS.SOC.CS5248 OOI WEI TSANG 27 Fetching Cache Data B A Server Client 2Client 1

NUS.SOC.CS5248 OOI WEI TSANG 28 Option 2 B A Server Client 2Client 1

NUS.SOC.CS5248 OOI WEI TSANG 29 Option 3 B A Server Client 2Client 1

NUS.SOC.CS5248 OOI WEI TSANG 30 Issues How to advertise? How to choose helper?

NUS.SOC.CS5248 OOI WEI TSANG 31 How to Advertise? Balance between network load freshness of information

NUS.SOC.CS5248 OOI WEI TSANG 32 Scalable Advertisement Expanding Ring Advertisement

NUS.SOC.CS5248 OOI WEI TSANG 33 How to Choose Helper? Consideration for Static Cache network distance (1,2,3,4) number of streams being served

NUS.SOC.CS5248 OOI WEI TSANG 34 Static Cache Cost for retrieving data from node X to node Y =

NUS.SOC.CS5248 OOI WEI TSANG 35 Dynamic Caching Need to consider the size of patching buffer S

NUS.SOC.CS5248 OOI WEI TSANG 36 Dynamic Caching N used N fetched = min(s, N used + Δ) S

NUS.SOC.CS5248 OOI WEI TSANG 37 Dynamic Cache Potential Waste = N fetched /N used Integrate into overall cost

NUS.SOC.CS5248 OOI WEI TSANG 38 Helper Selection Helper ask other helpers to help if segments not found on local cache Pick lowest cost helper

NUS.SOC.CS5248 OOI WEI TSANG 39 If Static Cache Retrieve to fill current gap May pick different helpers for different gaps Should avoid frequent switching

NUS.SOC.CS5248 OOI WEI TSANG 40 If Dynamic Cache Stick to one helper

NUS.SOC.CS5248 OOI WEI TSANG 41 Evaluations SOCCER Hierarchical Proxies Single Proxy

42 Silo, Rainbow and Cache Token

NUS.SOC.CS5248 OOI WEI TSANG 43 Distributed Caching B A Server new clip!

NUS.SOC.CS5248 OOI WEI TSANG 44 Distributed Caching B A Server

NUS.SOC.CS5248 OOI WEI TSANG 45 Distributed Caching B A Server

NUS.SOC.CS5248 OOI WEI TSANG 46 Distributed Caching B A Server

NUS.SOC.CS5248 OOI WEI TSANG 47 Cooperative vs Distributed Cooperative caching caches independently Distributed caching caches as a team

NUS.SOC.CS5248 OOI WEI TSANG 48 Problems Who should cache what? Which segment to kick out? How to redistribute data?

NUS.SOC.CS5248 OOI WEI TSANG 49 RCache N p proxies video of length L v divide into N s equal segments Each proxy caches each segment with a/N p probability

NUS.SOC.CS5248 OOI WEI TSANG 50 Analysis Probability that whole video is cached Storage requirement aL

NUS.SOC.CS5248 OOI WEI TSANG 51 Two Parameters How to divide video into segments? What is the probability of storing each segment?

NUS.SOC.CS5248 OOI WEI TSANG 52 Silo segment size probability of storage

NUS.SOC.CS5248 OOI WEI TSANG 53 Problems Who should cache what? Which segment to kick out? How to redistribute data?

NUS.SOC.CS5248 OOI WEI TSANG 54 Compute Popularity For each video For each segment

NUS.SOC.CS5248 OOI WEI TSANG 55 Rainbow Algorithm less popular

NUS.SOC.CS5248 OOI WEI TSANG 56 Problems Who should cache what? Which segment to kick out? How to redistribute data?

NUS.SOC.CS5248 OOI WEI TSANG 57 Data Redistribution When popularity changes, need to redistribute. Redistribute “on-demand” (lazy)

NUS.SOC.CS5248 OOI WEI TSANG 58 Cache Token Each segment have two bits (T,C) T: I am suppose to have the segment C: I have the segment

NUS.SOC.CS5248 OOI WEI TSANG 59 Data Redistribution (T=1,C=1) (T=0,C=0) (T=1,C=0) (T=0,C=1)

NUS.SOC.CS5248 OOI WEI TSANG 60 Silo, Rainbow and Token Distributed Caching Architecture Fault tolerant Scalable

61 Proxy Cache + Congestion Control

NUS.SOC.CS5248 OOI WEI TSANG 62 Scenario (10am) A Server Client 2

NUS.SOC.CS5248 OOI WEI TSANG 63 Scenario (1am) A Server Client 2

NUS.SOC.CS5248 OOI WEI TSANG 64 Problem Cache interfere with congestion control algorithm Make cache adapt aware of quality adaptation

NUS.SOC.CS5248 OOI WEI TSANG 65 Congestion Control Protocol RAP: AIMD + Layered Coding “sender-driven layered unicast”

NUS.SOC.CS5248 OOI WEI TSANG 66 Solutions Making cache “quality-aware” Prefetch Replacement Algorithm

NUS.SOC.CS5248 OOI WEI TSANG 67 Cache Miss A Server Client 2

NUS.SOC.CS5248 OOI WEI TSANG 68 Cache Hit A Server Client 2 repair + prefetch

NUS.SOC.CS5248 OOI WEI TSANG 69 Peeking Inside the Cache

NUS.SOC.CS5248 OOI WEI TSANG 70 Cache Hit: Repair

NUS.SOC.CS5248 OOI WEI TSANG 71 Cache Hit: Prefetch

NUS.SOC.CS5248 OOI WEI TSANG 72 Cache Hit: Prefetch

NUS.SOC.CS5248 OOI WEI TSANG 73 Prefetch Algorithm prefetch window playback point

NUS.SOC.CS5248 OOI WEI TSANG 74 Proxy Request to Server Multiple requests (for different clients) are batched.

NUS.SOC.CS5248 OOI WEI TSANG 75 Server Response Missing segments are sent in decreasing priority

NUS.SOC.CS5248 OOI WEI TSANG 76 Server Response Send as many segments as possible until next prefetch request

NUS.SOC.CS5248 OOI WEI TSANG 77 Solutions Making cache “quality-aware” Prefetch Replacement Algorithm

NUS.SOC.CS5248 OOI WEI TSANG 78 Goal of Replacement Algorithm Goal: converge to efficient state if a stream is popular average quality is high variation in quality is low

NUS.SOC.CS5248 OOI WEI TSANG 79 The Algorithm

NUS.SOC.CS5248 OOI WEI TSANG 80 Trashing and Locking

NUS.SOC.CS5248 OOI WEI TSANG 81 Choosing Victim whit (weighted hit) = T play /T total Calculate whit for each layer in a stream over a popularity window

NUS.SOC.CS5248 OOI WEI TSANG 82 Example PopularityLock?NameLayer 5.91Nemo0 4.31Nemo1 4.00Matrix Matrix Gigli0

NUS.SOC.CS5248 OOI WEI TSANG 83 Evaluations Two Criteria Completeness Continuity

NUS.SOC.CS5248 OOI WEI TSANG 84 vs Request Number

NUS.SOC.CS5248 OOI WEI TSANG 85 Different Popularity

NUS.SOC.CS5248 OOI WEI TSANG 86 Summary Proxy Caching for video Techniques for segmentation, replacement etc. Interactions with other aspect of streaming