Presentation is loading. Please wait.

Presentation is loading. Please wait.

Pervasive Web Content Delivery with Efficient Data Reuse Chi-Hung Chi and Cao Yang School of Computing National University of Singapore

Similar presentations


Presentation on theme: "Pervasive Web Content Delivery with Efficient Data Reuse Chi-Hung Chi and Cao Yang School of Computing National University of Singapore"— Presentation transcript:

1 Pervasive Web Content Delivery with Efficient Data Reuse Chi-Hung Chi and Cao Yang School of Computing National University of Singapore Email: chich@comp.nus.edu.sg

2 Outline Introduction Scenarios Observation Potentials and Challenges System Model and Architecture Requirements and Design Consideration Scalable Data Model System Architecture and Proxy Example Related Work Conclusion

3 Part 1 Introduction

4 Scenarios Digital Images on the Internet – accounts for 40% of the data bytes accessed across the WWW Internet Client Variation – in terms of hardware capabilities, user tolerance level, personal preference, etc. Network Variation – in terms of network bandwidth, timeout latency, etc.

5 Problem Web-based digital image libraries Single copy approach Problem: not able to accommodate the wide spectrum of Internet clients Multiple copy approach Problem: hard to maintain – What versions to keep? – Users’ requirements keep changing.

6 Observation HTTP/1.1 protocol – Allows a client to request portions of an object via Range requests. Example: Range Request HTTP/1.1 206 Partial Content Date: Thu, 03 May 2001 09:22:12 GMT Last-Modified: Thu, 03 May 2001 07:12:27 GMT Content-Range: bytes 2500-4000/7614 Content-Length: 1501 Get http://www.nus.edu.sg Range: bytes=2500-4000 Server’s reply

7 Potentials Single-client scenario Client Server Request: 1 - 100K byte Image X 400KB Reply: 1 – 100K byte 1 – 100KB Effective network speed: 1KB/s Timeout latency: 100s

8 Potentials Single-client scenario Client Server Request: 100K - 200K byte Reply: 100K – 200K byte 1 – 200KB Effective network speed: 1KB/s Timeout latency: 100s 1 – 100KB Image X 400KB

9 Potentials Multiple-clients scenario Client 1 Server Image X 400KB Proxy Client 2 Client 3 Effective network speed: 1KB/s Timeout latency: 100s Request X 1 – 100KB 1-100KB 1 – 100KB

10 1 – 200KB Potentials Multiple-clients scenario Client 1 Server Image X 400KB Proxy Client 2 Client 3 Effective network speed: 1KB/s Timeout latency: 100s 1 – 100KB Request X 100KB – 200KB 1 – 100KB 1 – 200KB

11 Big Idea! The potential benefits of JPEG 2000 and HTTP/1.1 protocol can be maximized by storing and reusing partial objects. Over slow network link, as more clients requests for the target image, the visual effect improves until the original quality is obtained.

12 Our Solution Exploits the potentials of JPEG 2000 and HTTP/1.1 protocol. A proxy-based transcoding system that stores and reuses partial objects. Allows scalable image web delivery. Minimizes network bandwidth consumption and client latency.

13 Part 2 System Model and Architecture

14 System Requirements Content adaptation Minimal bandwidth consumption Real-time delivery

15 Design Considerations Proxy-based On-demand transcoding Streamed transcoding Small transcoding overhead Bandwidth optimization (Along entire path) Data reuse

16 Scalable Data Model Basic Terminology B:Set of all data bitsBLK: Set of all blocks O:Set of all data objectsP: Set of all presentations Definition 1: Bit Stream O n = Union(b 1 b 2 b 3 … b m-1 b m ) where O n  O, and b i  B with i  [0,m]. Definition 2: Block blk(i, j) = Union( b i b i+1 … b j-1 b j ) where blk(i,j)  BLK and b n  B with 0<i<j and n  [i, j]. Definition 3: Presentation Bit expression: Pi = f (b 1 b 2 b 3 … b i+1 b i ) where bi  B, i  size of original object, and f represents the encoding function. Block Expression: Pi = f (blk(1,I 1 ) blk(I 1 +1, I 2 ) blk(I 2 +1, I 3 ) … blk(I k +1, i)) where 0< I1< I2< I3… < Ik <i-1, and f represents the encoding function.

17 Scalable Data Model Basic Properties Property 1: Inclusive Property Pj = F (P i, blk(i+1, j)) where i<j, blk(i+1, j)  BLK, and F denotes the encoding function that generate P i by using P i and blk(i+1, j) Property 2: Union Function F The encoding function F should be union function.

18 Scalable Data Model Property 3: Single Pass Property According to inclusive property, we have: Pi = F (Pi-1, blk(i, i) ) or Pi = F (Pi-1, bi ) Similarly, Pi-1 = F (Pi-2, bi-1 ) Pi-2 = F (Pi-3, bi-2 ) … P2 = F (P1, b2 ) P1 = F (b1 )

19 Scalable Data Model Transcoding Operations Suppose we want to transform between a lower quality presentation Pi and a higher presentation Pj. Based on our data model, the following equation holds: P j = Union (P i, blk(i+1, j)) Conversion from higher quality to lower quality To transform P j into P i, simply discard the data bits ranging from bit (i+1) to bit j. Conversion from lower quality to higher quality To transform P i into P j, we only need to retrieve the data bits ranging from i+1 to j, and then append them to presentation P i.

20 Scalable Data Model Impact on Image Transcoding Allows reuse of partial objects Allows streamed transcoding Incurs minimal transcoding overhead Transcoding Computation Instead Block Synthesis

21 System Architecture Assembling Transcoding HTTP Proxy ClientServer Proxy Cache Filtering Request Customization Client’s Request Server’s Reply

22 Proxy Cache Caching partial objects Introducing the notion of “partial hit” Cache hit Cache miss Partial hit Enforcing single range Multiple ranges are not allowed. The cached content must start with the first data bit.

23 Example: Cache Miss Proxy Client 2 Client 3 Client 1 Client 4 Content Provider Image X 400KB Req: 1-100KB 1-100KB 1-50KB 1-200KB

24 1-150KB 1-100KB 1-150KB Example: Partial Hit 1 Proxy Client 2 Client 3 Client 1 Client 4 Content Provider Image X 400KB 1-100KB 1-50KB Req: 50KB-150KB 100KB-150KB Req: 100KB-150KB 50KB-150KB 1-200KB

25 1-150KB Example: Partial Hit 2 Proxy Client 2 Client 3 Client 1 Client 4 Content Provider Image X 400KB 1-100KB Req: 1-100KB 1-200KB 1-100KB

26 1-300KB 1-150KB Example: Partial Hit 3 Proxy Client 2 Client 3 Client 1 Client 4 Content Provider Image X 400KB 1-100KB Req: 200KB-300KB 1-150KB 1-200KB 1-100KB Req: 150KB-300KB 200KB-300KB

27 Streaming and Pipelining Transcoding HTTP Proxy ClientServer Client Proxy Server Cached content Unavailable content Pipelining of data bytes transferred over proxy- client link and server- proxy link

28 Example JPEG 2000 – Scalability in image quality 2KB4KB8KB 16KB24KB 32KB (original)

29 Model Analysis Proxy-based On-demand transcoding Streamed transcoding Small transcoding overhead Bandwidth optimization (both client & server) Data reuse

30 Part 3 Related Work

31 Progressive Data Formats Interlaced GIF Progressive JPEG JPEG 2000 MPEG-4

32 Related Work Transcoding Systems Mowser GloMop InfoPyramid Hybrid Transcoding System

33 Current Transcoding Systems Assumption The transcoding process cannot commence until the object has been downloaded in its entirety. Limitations Does not support scalable image web delivery. Can not cache or reuse partial objects. Store-and-forward transcoding – break the pipeline of data bytes transferred across the network

34 Part 6 Conclusion

35 Contributions Scalable data model Proposed a general data model that allows reuse of partial objects. Identified inclusive property that enables scalable web delivery. The data model enables streamed transcoding and minimizes transcoding overhead. The data model applies to any multimedia type such as image, audio and video.

36 Contributions System Model Exploited the potential benefits of scalable data format and HTTP/1.1 protocol. Supports scalable web delivery with cumulative effect. Proposed the idea of caching and reusing partial objects. Introduced the concept of partial hit. Benefits: content adaptation, minimal network bandwidth consumption and real-time delivery.

37 Q & A


Download ppt "Pervasive Web Content Delivery with Efficient Data Reuse Chi-Hung Chi and Cao Yang School of Computing National University of Singapore"

Similar presentations


Ads by Google