Title: Pervasive Web Content Delivery with Efficient Data Reuse
1Pervasive Web Content Delivery with Efficient
Data Reuse
- Chi-Hung Chi and Cao Yang
- School of Computing
- National University of Singapore
- Email chich_at_comp.nus.edu.sg
2Outline
- 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 4Scenarios
- 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.
5Problem
- 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.
6Observation
- HTTP/1.1 protocol Allows a client to request
portions of an object via Range requests. - Example
- Range Request
Get http//www.nus.edu.sg Range bytes2500-4000
Servers reply
HTTP/1.1 206 Partial Content Date Thu, 03 May
2001 092212 GMT Last-Modified Thu, 03 May 2001
071227 GMT Content-Range bytes
2500-4000/7614 Content-Length 1501
7Potentials Single-client scenario
Effective network speed 1KB/s Timeout latency
100s
Request 1 - 100K byte
Reply 1 100K byte
Client
Server
Image X 400KB
1 100KB
8Potentials Single-client scenario
Effective network speed 1KB/s Timeout latency
100s
Request 100K - 200K byte
Reply 100K 200K byte
Client
Server
1 200KB
1 100KB
Image X 400KB
9Potentials Multiple-clients scenario
1 100KB
Request X
Request X
10Potentials Multiple-clients scenario
1 100KB
Request X
Request X
100KB 200KB
1 200KB
1 100KB
11Big 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.
12Our 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
14System Requirements
- Content adaptation
- Minimal bandwidth consumption
- Real-time delivery
15Design Considerations
- Proxy-based
- On-demand transcoding
- Streamed transcoding
- Small transcoding overhead
- Bandwidth optimization (Along entire path)
- Data reuse
16Scalable Data Model
- Basic Terminology
- B Set of all data bits BLK Set of all blocks
- O Set of all data objects P Set of all
presentations - Definition 1 Bit Stream
- On Union(b1b2b3 bm-1bm) where On?O, and
bi?B with i?0,m. - Definition 2 Block
- blk(i, j) Union( bibi1 bj-1bj )
- where blk(i,j)?BLK and bn?B with 0j.
- Definition 3 Presentation
- Bit expression
- Pi f (b1b2b3 bi1bi )
- where bi ? B, i? size of original object, and f
represents the encoding function. - Block Expression
- Pi f (blk(1,I1) blk(I11, I2) blk(I21, I3)
blk(Ik1, i)) - where 0the encoding function.
17Scalable Data Model
- Basic Properties
- Property 1 Inclusive Property
- Pj F (Pi , blk(i1, j))
- where i
- and F denotes the encoding function that generate
Pi by using Pi and blk(i1, j) - Property 2 Union Function F
- The encoding function F should be union function.
18Scalable 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 )
19Scalable 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 Pj Union (Pi , blk(i1, j))
- Conversion from higher quality to lower quality
- To transform Pj into Pi, simply discard the data
bits ranging from bit (i1) - to bit j.
- Conversion from lower quality to higher quality
- To transform Pi into Pj, we only need to retrieve
the data bits ranging from - i1 to j, and then append them to presentation Pi.
20Scalable Data Model
- Impact on Image Transcoding
- Allows reuse of partial objects
- Allows streamed transcoding
- Incurs minimal transcoding overhead
- Transcoding Computation Instead Block Synthesis
21System Architecture
Clients Request
ProxyCache
Servers Reply
22Proxy 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.
23Example Cache Miss
Client 1
Req 1-100KB
Client 2
1-50KB
Proxy
Req 1-100KB
Client 3
Image X 400KB
1-200KB
Client 4
24Example Partial Hit 1
Client 1
1-100KB
Req 50KB-150KB
Client 2
1-150KB
1-50KB
Proxy
Client 3
1-100KB
1-150KB
Image X 400KB
1-200KB
Client 4
25Example Partial Hit 2
Client 1
1-100KB
Client 2
1-150KB
Proxy
Req 1-100KB
Client 3
1-150KB
Image X 400KB
1-200KB
Client 4
26Example Partial Hit 3
Client 1
1-100KB
Client 2
Req 150KB-300KB
1-150KB
Proxy
Req 200KB-300KB
1-100KB
Client 3
Image X 400KB
Client 4
27Streaming and Pipelining
28Example
- JPEG 2000 Scalability in image quality
2KB
4KB
8KB
32KB (original)
16KB
24KB
29Model Analysis
- Proxy-based
- On-demand transcoding
- Streamed transcoding
- Small transcoding overhead
- Bandwidth optimization (both client server)
- Data reuse
30 31Related Work
- Progressive Data Formats
- Interlaced GIF
- Progressive JPEG
- JPEG 2000
- MPEG-4
32Related Work
- Transcoding Systems
- Mowser
- GloMop
- InfoPyramid
- Hybrid Transcoding System
33Current 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 35Contributions
- 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.
36Contributions
- 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