Presentation is loading. Please wait.

Presentation is loading. Please wait.

Optimal Proxy Cache Allocation for Efficient Streaming Media Distribution Bing Wang, Subhabrata Sen, Micah Adler, and Don Towsley INFOCOM 2002.

Similar presentations


Presentation on theme: "Optimal Proxy Cache Allocation for Efficient Streaming Media Distribution Bing Wang, Subhabrata Sen, Micah Adler, and Don Towsley INFOCOM 2002."— Presentation transcript:

1 Optimal Proxy Cache Allocation for Efficient Streaming Media Distribution Bing Wang, Subhabrata Sen, Micah Adler, and Don Towsley INFOCOM 2002

2 Outline Problem setting and model Optimal proxy cache allocation Proxy-assisted transmission schemes Unicast suffix batching (SBatch) Unicast patching with prefix caching (UPatch) Multicast patching with prefix caching (MPatch) Multicast merging with prefix cache (MMerge) Performance evaluation

3 Problem setting The server-proxy network is unicast- enabled. The network route from the server to the client often traverses multiple ISP domains., IP multicast is not widely deployed. The proxy-client network is ether unicast or multicast/broadcast enabled.

4 Streaming video in the Internet Unicast Unicast/ Multicast

5 Model A server with a repository of N CBR videos. A cache grain of size u is the smallest unit of cache allocation. c s and c p represent the costs associated with transmitting 1 bit of video data on the server- proxy path and on the proxy-client path. C i (v i ) is the transmission cost per unit time for video i when a prefix of length v i of the video is cached at the proxy.

6 Parameters

7 Execution flow On receiving a client request for a video, the proxy calculates a transmission schedule. This schedule specifies when and on what transmission channel that each frame will be transmitted by the proxy. The proxy also determines and requests the suffix from the server. The proxy sends a reception schedule that specifies when and from which transmission channel the client should receive each frame. Frames received ahead of their playback times are stored in a client-side workahead buffer.

8 Optimal proxy cache allocation There may not even exist a closed-form expression for c i (v i ). The valued can be obtained by monitoring a running system. saving(m i ) The saving in transmission cost when caching an m i -unit prefix of video i over caching no prefix of the video at the proxy. saving(m i ) = C i (0) - C i (m i u/b i ) Goal : maximize the aggregate savings.

9 Algorithm (1/2) Let B be a two-dimensional matrix, where each entry B(i, j) represents the maximum saving in the transmission cost when using videos up to video i and j units of the proxy cache.

10 Algorithm (2/2) 0 … j-1j … S … i-1B(i-1, j-1) iB(i, j) … N B ’ (i, j)

11 Unicast suffix batching (SBatch) The proxy-client is only unicast-capable. Suppose the first request for video i arrives at time 0. The proxy immediately begin transmitting the video prefix to the client. SBatch schedules the transmission of the suffix from the server to the proxy as late as possible. Assume a Poisson arrival process, the average number of requests in time [0, v i ] is 1+v i λ i. The average transmission cost for delivering video i is

12 Unicast patching with prefix caching (UPatch) Suppose another request for video i comes at t 2, v i < t 2 < L i. The proxy can schedule a transmission of the complete suffix at t 2 +v i. (SBatch) Another option is to schedule a patch of [v i, t 2 ] of the suffix from the server since segment [t 2, L i ] has already been scheduled to be transmitted. The decision to transmit a complete suffix or a patch depends on a suffix threshold G i.

13 UPatch

14 Multicast patching with prefix caching (MPatch) If the proxy-client path is multicast-capable, the proxy can use a multicast transmission scheme to send the video to each client. Let T i be the threshold. (a later request at t 2 ) If t 2 > T i, the proxy starts a new multicast stream. Otherwise, the request joins the ongoing multicast stream and use a separate unicast channels to obtain the missing data. If T i > v i, the proxy may have to get the missing data from the server.

15 MPatch

16 Stream merging

17 Multicast merging with prefix caching (MMerge) MMerge uses the Closest Target policy to decide how to merge a later stream into an earlier stream. The prefix cached at the proxy is directly transmitted to the client. The suffix not cached at the proxy is transmitted from the server as late as possible.

18 Performance evaluation Optimal 0-1 caching The proxy only allows a video to be cached in its entirety or not at all. Proportional Priority (PP) caching The size of the proxy cache allocated to a video is proportional to the product of the size of the video and its access probability. The allocated space is no larger than the size of the video.

19 Optimal prefix caching v.s. optimal 0-1 caching opt. prefix is better than opt. 0-1

20 Unicast schemes (SBatch v.s. UPatch) UPatch is better than SBatch

21 Multicast schemes (MPatch v.s. MMerge) MMerge does not always outperform MPatch. This is different from traditional server- based patching and stream merging.

22 MPatch v.s. MMerge (arrival rate) MMerge still does not always outperform MPatch. Why? Because of using multicast transmission from proxy to client?

23 Comparison between unicast and multicast schemes (1/2)

24 Comparison between unicast and multicast schemes (2/2)


Download ppt "Optimal Proxy Cache Allocation for Efficient Streaming Media Distribution Bing Wang, Subhabrata Sen, Micah Adler, and Don Towsley INFOCOM 2002."

Similar presentations


Ads by Google