1 / 28

Caching for QoS in Multimedia Network

Caching for QoS in Multimedia Network. Under the guidance of Prof. Sridhar Iyer Student: Annanda Th. RATH. Problem Definition. Movies with 2 hours duration. S. 2Mbps. Overview on the streaming media The future of the streaming media in the internet Characteristic of streaming media.

grady-yang
Download Presentation

Caching for QoS in Multimedia Network

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Caching for QoS in Multimedia Network Under the guidance of Prof. Sridhar Iyer Student: Annanda Th. RATH

  2. Problem Definition Movies with 2 hours duration S 2Mbps • Overview on the streaming media • The future of the streaming media in the internet • Characteristic of streaming media 512Kbps 1 3 512Kbps 1Mbps 10 2 128Kbps 128kbps 256Kbps 512Kbps 256Kbps 256Kbps 5 4 384Kbps 512Kbps C13 C14 C15 C16 128Kbps 12 256Kbps 7 6 512Kbps 512Kbps C17 13 256Kbps 11 512Kbps 256Kbps 256Kbps 64Kbps 128Kbps 9 8 512Kbps 512Kbps 128Kbps 256Kbps 512Kbps 128Kbps 128Kbps C18 C19 C20 C21 256Kbps 256Kbps 256Kbps 64Kbps 256Kbps C8 C9 C10 C11 C12 C2 C3 C1 C4 C5 C6 C7

  3. Problem Definition (suite) • Objective (Goal) • Provide enhanced QoS to users. • Determining optimal placement of caching transcoding proxy in the given network topology. • Optimizing the number of caching in the network. • Minimizing the number of caching. • First optimization • Global optimization • Building up the tool

  4. Motivation • Why this work is important? • Provide enhanced QoS to client by using caching without neither increasing significant resources nor modifying the exiting protocol. • Give a clue on how to place the caching • The tool can be used to find the optimal caching position and number of caching with any given tree network topology. • Where this work can be used? • Streaming in the internet nowadays. • TV cable • E-learning • Etc…

  5. Network Topology Model • Description of network topology and its functionalities

  6. Assumptions • General assumptions • Streaming object has the specific duration • Transcoding object can be cached in the intermediate nodes. • Links can be dedicated or shared • Transcoding can be done at source or intermediate node • Each client’s request will be served base on the constraints • Buffering can be done at clients • Loss-free • Delay is tolerable • Synchronous streaming (*) • Memory for cache occupancy is infinite (*) • Our graph is the Direct Cyclic Graph network, but our analysis is based on tree network. We don’t consider in case of multi-path mechanisms. • Servers • Server knows the entire network topology. • Server can initiate the streaming or ftp mechanism depending on the proxy request • Clients • Clients have the constraints (Min-rate, Max-latency) • Clients have the sufficient memory for buffering if necessary

  7. Example • Streaming Object • Movies with the 2 hours duration • Encoding with 512 Kbps, 256Kbps, 128Kbps • Client’s Constraints • Max-latency : 15 minutes • Min-rate: 128 Kbps • Client can tolerate 15 minutes of delay and it can accept the minimum rate of 128 kb per second • Given this constraints, what is the optimal rate that we can provide to the client? • If caching proxy is needed, where we should place it?

  8. Solution Strategy • How to achieve the goal? • Prove that caching can be used to increase the client rate without increasing significant resources. • How to calculate the optimal rate based on the clients’ constraints • Streaming Vs FTP • How to determine the caching position • Optimization • Global optimization • Minimizing the number of the caching in the entire network.

  9. Movies with 2 hours duration S 2Mbps 512Kbps 1 3 512Kbps 1Mbps 10 2 128Kbps 128kbps 256Kbps 512Kbps 256Kbps 256Kbps 5 4 384Kbps 512Kbps C13 C14 C15 C16 128Kbps 12 256Kbps 7 512Kbps 6 512Kbps C17 13 256Kbps 11 512Kbps 256Kbps 256Kbps 64Kbps 128Kbps 9 8 512Kbps 512Kbps 128Kbps 256Kbps 512Kbps 128Kbps 128Kbps C18 C19 C20 C21 256Kbps 256Kbps 256Kbps 64Kbps 256Kbps C8 C9 C10 C11 C12 C2 C3 C7 C1 C4 C5 C6 Caching and client’s rate Caching proxy Caching proxy II I

  10. Clients’ constraints

  11. Calculating the optimal rate Bi: link bandwidth R.in: incoming rate, zero delay R.out: out going rate, or play back rate SD: streaming duration D.total: client delay constraint. • Streaming Vs FTP • Streaming • D.total= (R.out-R.in)*SD R.in R.out = D.total*R.in + R.in SD R.in= Min {Bi}, i is between {1,..,n} Example: take client C4, Min-rate:128 Kbps, delay: 1 hour(3600s) R.in= Min{2048,1024,512,128,256,128}, so R.in=128 Kbps SD= 2 hours (7200s) R.out= (3600* 128)/7200 + 128= 192 Kbps

  12. FTP mechanism • As ftp use the entire link bandwidth to transfer the file. • We can derive: • Client with two intermediate links D.transfer= SD(T1+T2), where T1= 1/b1, T2=1/b2 Or D.transfer= SD(B1+B2)/(B1*B2) • N links ∑ ( ∏ Bj / Bi) D.transfer= SD * {} ∏ (Bi) n n i=1 J=1 n i=1 Note: Bi, Bj: Link bandwidth SD: Streaming duration N: number of intermediate links

  13. Determining the caching position • Algorithms • Calculating the number of affected-user in the region • If the number is zero, we know that caching is not necessary • If the number is different to zero, we know that if we deploy the caching proxy anywhere in the path, we can improve the client’s rate. • Finding caching position

  14. What is the number of affected-user? Movies with 2 hours duration S • Let go to an example • Finding the min rate (link rate) from the source S to the relay node, which covered the region. • Comparing the min rate with the link bandwidth of the client connected to relay node. • If it is client’ link is greater than min rate, than, we know that this client can get more than min rate. • Else caching is not needed 2Mbps 512Kbps 1 I 3 512Kbps 1Mbps 10 2 128Kbps 128kbps 256Kbps 512Kbps 256Kbps 256Kbps 5 4 384Kbps 512Kbps C13 C14 C15 128Kbps 12 256Kbps 7 6 512Kbps 512Kbps C17 13 256Kbps II 11 512Kbps 256Kbps 256Kbps 64Kbps 128Kbps 9 8 512Kbps 512Kbps 128Kbps 256Kbps 512Kbps 128Kbps 128Kbps C18 C19 C20 C21 256Kbps 384Kbps 256Kbps 64Kbps 256Kbps C8 C9 C10 C11 C12

  15. Algorithms • At the source, find out whether we can serve the client with the best rate(α). • If not and clients have some delay • Find the weakness link between source to clients • Place the caching-transcoding proxy at the edge of the weakness link. • Calculate the time (delay) to transfer the streaming object from source (s) to caching-transcoding proxy by using (FTP mechanism, Streaming), and estimating the rate the we can provide to clients. • Calculating the cumulated-delay (FTP+Streaming) and compare with the client’s delay constraint. • If the client’s delay constraint is violated, move the caching-transcoding proxy upward (move to the top). • If not, and there are sufficient delay, move the caching-transcoding proxy downward (move to bottom). • We repeat those step until we can find the exact position of the caching-transcoding proxy.

  16. Optimization • First optimization • Finding out the possible caching position in the entire network based on • Link bandwidth characteristics • Clients’ constraints (min rate, max delay) • Calculating the number of caching proxy in the entire network. • Finding out the rate, at which, individual user can get, and also in case of group users

  17. Global optimization • The goal of the global optimization is to minimize the number of the caching in the network. • Each caching proxy will be attached with the cost, so-called cost function. • Caching proxy will be dropped according to the cost function value, depending on number of affected user in the region and the cost for caching. Example: in one region the number of affected user is only 1, it means the caching Is put just for the interest of one user only, in the global optimization, we can take This caching out of the region.

  18. Example Movies with 2 hours duration S 2Mbps • How to minimize the number of caching server? Caching position for II 512Kbps 1 3 512Kbps 1Mbps 10 2 128Kbps 128kbps Caching Position for I 256Kbps 256Kbps 256Kbps 256Kbps 5 4 384Kbps 384Kbps C13 C14 C15 C16 512Kbps 12 512Kbps 7 6 512Kbps Only one caching proxy 13 384Kbps 11 64Kbps 512Kbps 256Kbps 9 128Kbps 512Kbps 512Kbps 128Kbps 512Kbps 256Kbps 384Kbps 384Kbps 256Kbps 256Kbps I C18 C19 C21 C20 C8 C9 C10 C11 C12 C2 C3 C1 C4 II

  19. Cost Function • Cost function is the cost attached with caching proxy based on some parameters • Cost for caching • Cost for cache occupancy (memory constraint) • Cost for writing and reading the disk • Cost for transferring the file • Cost for the affected-user.

  20. Cost Function (suite…) Variable: B: is the bandwidth utilization N: is the number of user in the region Au: is the number of affected users Co: is the cache occupancy (storage) Dr: Disk reading bandwidth Dw: Disk writing bandwidth T: is the time to transfer the streaming object. C: is the cost function α: is the cost factor of the caching occupancy μ: is the cost factor of the number of the affected users β: is the cost factor of the time to transfer the streaming object Υ 1: is the cost factor for disk reading bandwidth Υ 2: is the cost factor for disk writing bandwidth r: is the rate that we can provide to the client in the region (streaming rate) Caching cost factor C(Au,r)= αCo + Υ 1Dr + Υ 2Dw + μAu + βT We consider only for the synchronous, thus we get: C(Au,r)= αCo + μAu + βT

  21. Minimizing the number of caching • Finding out Au that minimize the cost function C(Au,r), by respecting the constraint Lower_rate<=r<=upper_rate • After getting Au, compare with the actual value that we counted in each region, and • If Au> actual-value, drop the caching-proxy • If Au< actual-value, keep as it is • How to determine the cost factor α, μ, β ? • Example : α/μ = ? β/α = ? Note: It shows the degree of necessity comparing with each others

  22. Related Works • Most of the journal (researched papers) • Initial-latency (delay) is the main issue • They try to reduce or make it to be zero latency • Consider streaming service as the real time application • We assume that, initial/end-to-end delay is tolerable. The different between our work and their work are: • The delay is not the primary issue because client can tolerate some delay • Rate is our concern because we want to give a highest possible rate to client. • We assume that client has its own constraints, so the service should be provided accordingly. • Most of the research paper, they have worked on the web caching position, which is different from us, we are working the caching transcoding proxy position.

  23. Some related works papers • “Determining the Optimal Placement for Web Proxy Cache Servers Considering Latency in the Network”, Vikram Tiwari, Venkataramanam, Srinagesh Gavirneni • “Caching Location Problem”, P.Krishnan, Danny Raz, Yuval Shavitt, IEEE/ACM Transaction on Networking, VOL.8 & NO.5, October 2000. • “Batch Patch Caching for Streaming Media”, Pascal Frossard and Olivier Verscheure, IEEE Communications Letter, VOL.6, NO.4 • “Proxy that Transcode and Cache in Heterogeneous Web Client Environment”, Aameek Singh, Abhishek Trivedi, Krithi Ramamrithan, IIT Bombay.

  24. Further Works and Conclusion • Further works • Building the tool that permit us to find out the number of caching and where to put caching, more over the tool will give the optimal rate for all the user in the network. • Working on Asynchronous users. • Conclusion • Role of the caching transcoding proxy • Advantage of the tool.

  25. Time Line 1 2 1 2

  26. Thanks! Questions?

  27. Mat lab Experimentation • Dynamic network topology gernertor • Individual client rate optimization • Group rate optimization • Figure out the caching position • The use of Fmincon for optimization purpose • The use of Fmincon for cost function problem.

  28. Fmincon

More Related