http://dblab.usc.edu annoucements read the papers for next week posted on read the papers for next...
TRANSCRIPT
http://dblab.usc.eduhttp://dblab.usc.edu
AnnoucementsAnnoucements Read the papers for next week posted on Read the papers for next week posted on
http://dblab.usc.edu/csci599http://dblab.usc.edu/csci599 A homework will be assigned on Tuesday, August 29A homework will be assigned on Tuesday, August 29thth, due , due
date is September 19date is September 19thth..
My office hours are: My office hours are: Tuesdays 3:20 to 5 pmTuesdays 3:20 to 5 pm Thursdays 12:30 to 2 pmThursdays 12:30 to 2 pm
Timetable for the project:Timetable for the project: Sept 28: 1 page description of your projectSept 28: 1 page description of your project Oct 3Oct 3:: Feedback on your project description Feedback on your project description Oct 12: In class presentation of your project (5 minutes)Oct 12: In class presentation of your project (5 minutes) Oct 26: In class update of your project (15 minutes)Oct 26: In class update of your project (15 minutes) Nov 23: Thanksgiving recessNov 23: Thanksgiving recess Nov 28 & 30: Project PresentationsNov 28 & 30: Project Presentations
http://dblab.usc.eduhttp://dblab.usc.edu
Candidate projectsCandidate projects At the end of lecture on August 24, we At the end of lecture on August 24, we
discussed three different projects:discussed three different projects:1.1. Extend the current studies to consider Extend the current studies to consider
availability of data. Current focus is on availability of data. Current focus is on throughput, number of simultaneous displays.throughput, number of simultaneous displays.
2.2. Design, implement and evaluate replacement Design, implement and evaluate replacement policies that choose victim clips and swap them policies that choose victim clips and swap them out in favor of other clips. Each device should out in favor of other clips. Each device should be able to make this decision independent of be able to make this decision independent of other devices and based on the sequence of other devices and based on the sequence of requests issued either by itself or neighboring requests issued either by itself or neighboring devices.devices.
3.3. Explore role of devices configured with multiple Explore role of devices configured with multiple cards. What are its benefits and costs?cards. What are its benefits and costs?
An Evaluation of Two Policies An Evaluation of Two Policies for Placement of Continuous for Placement of Continuous Media in Multi-hop Wireless Media in Multi-hop Wireless
NetworksNetworks
Shahram Ghandeharizadeh, Tooraj Helmi, Shahram Ghandeharizadeh, Tooraj Helmi, Taehee Jung, Shyam Kapadia, Shahin ShayandehTaehee Jung, Shyam Kapadia, Shahin Shayandeh
Computer Science DepartmentComputer Science DepartmentUniversity of Southern CaliforniaUniversity of Southern California
http://dblab.usc.eduhttp://dblab.usc.edu
OutlineOutline Target environment: H2O networksTarget environment: H2O networks Two placement strategyTwo placement strategy
Frequency-based Frequency-based Byte-hitByte-hit
Performance comparison:Performance comparison: Byte-hit is superior to frequency-basedByte-hit is superior to frequency-based
1.1. Maximizes number of simultaneous displaysMaximizes number of simultaneous displays
2.2. More robust to error in access frequencies More robust to error in access frequencies
Conclusions and future researchConclusions and future research
http://dblab.usc.eduhttp://dblab.usc.edu
Target EnvironmentTarget Environment Key characteristics:Key characteristics:
Limited by the bandwidth and radio range of Limited by the bandwidth and radio range of wireless devices (less constrained by energy and wireless devices (less constrained by energy and mobility).mobility).
Management of devices is decentralized.Management of devices is decentralized. Each device is autonomous.Each device is autonomous. Devices cooperate when in radio-range of one another.Devices cooperate when in radio-range of one another.
http://dblab.usc.eduhttp://dblab.usc.edu
Home-to-Home Online (H2O) devices collaborate to Home-to-Home Online (H2O) devices collaborate to deliver continuous media:deliver continuous media:
A H2O device is a wireless device with a powerful A H2O device is a wireless device with a powerful processor and abundant amount of storage.processor and abundant amount of storage.
Target Environment: H2OTarget Environment: H2O
S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim Conference on Multimedia, 2003.Conference on Multimedia, 2003.
http://dblab.usc.eduhttp://dblab.usc.edu
Home-to-Home Online (H2O) devices collaborate to Home-to-Home Online (H2O) devices collaborate to deliver continuous media:deliver continuous media:
A H2O device is a wireless device with a powerful A H2O device is a wireless device with a powerful processor and abundant amount of storage.processor and abundant amount of storage.
H2O Framework (Cont…)H2O Framework (Cont…)
S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim Conference on Multimedia, 2003.Conference on Multimedia, 2003.
http://dblab.usc.eduhttp://dblab.usc.edu
Home-to-Home Online (H2O) devices collaborate to Home-to-Home Online (H2O) devices collaborate to deliver continuous media:deliver continuous media:
A H2O device is a wireless device with a powerful A H2O device is a wireless device with a powerful processor and abundant amount of storage.processor and abundant amount of storage.
H2O Framework (Cont…)H2O Framework (Cont…)
S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim Conference on Multimedia, 2003.Conference on Multimedia, 2003.
http://dblab.usc.eduhttp://dblab.usc.edu
Home-to-Home Online (H2O) devices collaborate to Home-to-Home Online (H2O) devices collaborate to deliver continuous media:deliver continuous media:
A H2O device is a wireless device with a powerful A H2O device is a wireless device with a powerful processor and abundant amount of storage.processor and abundant amount of storage.
H2O Framework (Cont…)H2O Framework (Cont…)
S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim S. Ghandeharizadeh, H2O Clouds: Issues, Challenges and Solutions, in IEEE Pacific-Rim Conference on Multimedia, 2003.Conference on Multimedia, 2003.
http://dblab.usc.eduhttp://dblab.usc.edu
H2O Framework (Cont…)H2O Framework (Cont…) H2O devices complement existing wired H2O devices complement existing wired
infrastructureinfrastructure
A H2O device may serve in 4 different roles:A H2O device may serve in 4 different roles:1.1. Display a clip: video-on-demandDisplay a clip: video-on-demand
2.2. Store a clip for future referencesStore a clip for future references
3.3. Act as a router of data from a producer to a Act as a router of data from a producer to a displaydisplay
4.4. Combination of the above 3 simultaneouslyCombination of the above 3 simultaneously
http://dblab.usc.eduhttp://dblab.usc.edu
H2O Uses & ChallengesH2O Uses & Challenges A household may:A household may:
Access clips for entertainment, education, etc.Access clips for entertainment, education, etc. Publish video library (never-erase).Publish video library (never-erase). Establish time-shifted recording of live events: Establish time-shifted recording of live events:
monitor the house while on travel, Memex, monitor the house while on travel, Memex, MyLifeBits, etc.MyLifeBits, etc.
Research challenges:Research challenges: Privacy of user profiles and content.Privacy of user profiles and content. Effective user-interfaces.Effective user-interfaces. How to minimize loss-of-data in the presence of How to minimize loss-of-data in the presence of
node removals.node removals. Hiccup-free display:Hiccup-free display:
Placement of dataPlacement of data
http://dblab.usc.eduhttp://dblab.usc.edu
Placement of ClipsPlacement of Clips Three alternative placement strategies:Three alternative placement strategies:
1.1. SimpleSimple
2.2. Halo-ClipHalo-Clip
3.3. Halo-BlockHalo-Block
http://dblab.usc.eduhttp://dblab.usc.edu
Placement of ClipsPlacement of Clips Consider 9 clips sorted based on their Consider 9 clips sorted based on their
popularitypopularity
Very popularVery popular Less popularLess popular
http://dblab.usc.eduhttp://dblab.usc.edu
No delays when displaying MatrixNo delays when displaying Matrix Data is retrieved from local storageData is retrieved from local storage
http://dblab.usc.eduhttp://dblab.usc.edu
Display of Tarzan incurs delaysDisplay of Tarzan incurs delays Data is streamed from the base stationData is streamed from the base station
http://dblab.usc.eduhttp://dblab.usc.edu
Streaming from base stationStreaming from base station Exhausts network bandwidth of intermediate Exhausts network bandwidth of intermediate
nodes:nodes: Prevents display of clips from the base station Prevents display of clips from the base station
using intermediate nodes.using intermediate nodes. Interferes with on-going display utilizing the Interferes with on-going display utilizing the
bandwidth of the network links.bandwidth of the network links.
http://dblab.usc.eduhttp://dblab.usc.edu
Streaming from base stationStreaming from base station Exhausts network bandwidth of intermediate Exhausts network bandwidth of intermediate
nodes:nodes: Prevents display of clips from the base station Prevents display of clips from the base station
using intermediate nodes.using intermediate nodes. Interferes with on-going display utilizing the Interferes with on-going display utilizing the
bandwidth of the network links.bandwidth of the network links. Solution: Admission controlSolution: Admission control
Limited network bandwidth provides the Limited network bandwidth provides the following simple motivation: Minimize usage of following simple motivation: Minimize usage of network bandwidth. How?network bandwidth. How?
http://dblab.usc.eduhttp://dblab.usc.edu
Streaming from base stationStreaming from base station Exhausts network bandwidth of intermediate Exhausts network bandwidth of intermediate
nodes:nodes: Prevents display of clips from the base station Prevents display of clips from the base station
using intermediate nodes.using intermediate nodes. Interferes with on-going display utilizing the Interferes with on-going display utilizing the
bandwidth of the network links.bandwidth of the network links. Solution: Admission controlSolution: Admission control
Limited network bandwidth provides the Limited network bandwidth provides the following simple motivation: Minimize usage of following simple motivation: Minimize usage of network bandwidth. How?network bandwidth. How? Maximize references serviced using local storage of a Maximize references serviced using local storage of a
H2O device. This is realized using smart placement H2O device. This is realized using smart placement algorithms.algorithms.
http://dblab.usc.eduhttp://dblab.usc.edu
Simple: Frequency-basedSimple: Frequency-based Frequency-based algorithm:Frequency-based algorithm:
1.1. Node Node ii sorts clips based on its access frequency sorts clips based on its access frequency
2.2. Node Node ii stores those clips with the highest access stores those clips with the highest access frequency.frequency.
Objective: maximize the number of Objective: maximize the number of references serviced by the local storage of references serviced by the local storage of Node Node ii.. This is a greedy objective, optimizing a local This is a greedy objective, optimizing a local
criterion.criterion.
Key research question: Is assigning most Key research question: Is assigning most frequently referenced clips to each node the frequently referenced clips to each node the best strategy?best strategy?
http://dblab.usc.eduhttp://dblab.usc.edu
Simple: Byte-hitSimple: Byte-hit Byte-hit algorithm:Byte-hit algorithm:
Node i sorts clips based on their byte-hit value. Node i sorts clips based on their byte-hit value. Byte-hit of clip j is defined as its frequency of Byte-hit of clip j is defined as its frequency of access divided by its size.access divided by its size.
Node i stores clips with the highest byte-hit value Node i stores clips with the highest byte-hit value until storage available storage is exhausted.until storage available storage is exhausted.
Research question: What is the Research question: What is the performance tradeoff between Byte-hit and performance tradeoff between Byte-hit and Frequency-based? Which one is better Frequency-based? Which one is better under what conditions?under what conditions?
Key finding: Byte-hit is superior to Key finding: Byte-hit is superior to Frequency-based.Frequency-based.
http://dblab.usc.eduhttp://dblab.usc.edu
AssumptionsAssumptions1.1. Constant bit rate continuous mediaConstant bit rate continuous media
Alternative is variable bit rate continuous mediaAlternative is variable bit rate continuous media
2.2. Fixed network topologiesFixed network topologies
3.3. Placement of the base stationPlacement of the base station
4.4. A mix of media typesA mix of media types
5.5. Zipfian distribution of access to clipsZipfian distribution of access to clips
http://dblab.usc.eduhttp://dblab.usc.edu
Continuous MediaContinuous Media Display of a clip as a function of time.Display of a clip as a function of time.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
http://dblab.usc.eduhttp://dblab.usc.edu
Continuous MediaContinuous Media A clip has a fixed display time.A clip has a fixed display time.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Clip display time
http://dblab.usc.eduhttp://dblab.usc.edu
Continuous MediaContinuous Media A clip has a fixed size.A clip has a fixed size.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Clip size
http://dblab.usc.eduhttp://dblab.usc.edu
Continuous MediaContinuous Media Average bandwidth for continuous display is clip size divided by the Average bandwidth for continuous display is clip size divided by the
clip display time.clip display time.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Display bandwidth requirements
BW = Line slope
http://dblab.usc.eduhttp://dblab.usc.edu
Time and spaceTime and space One may manipulate the bandwidth required to display a One may manipulate the bandwidth required to display a
clip by prefetching a portion of the clip.clip by prefetching a portion of the clip.
Constant Bit Rate Media
Time
Bytes
Startup latency
Prefetch portion
http://dblab.usc.eduhttp://dblab.usc.edu
Time and spaceTime and space One may manipulate the bandwidth required to display a One may manipulate the bandwidth required to display a
clip by prefetching a portion of the clip.clip by prefetching a portion of the clip.
Constant Bit Rate Media
Time
Bytes
Startup latency
Prefetch portion
For a tutorial see: S. Ghandeharizadeh and R. Muntz, “Design and Implementation of For a tutorial see: S. Ghandeharizadeh and R. Muntz, “Design and Implementation of Scalable Continuous Media Servers,” Parallel Computing Journal, Elsevier, Vol 24, 1998.Scalable Continuous Media Servers,” Parallel Computing Journal, Elsevier, Vol 24, 1998.
http://dblab.usc.eduhttp://dblab.usc.edu
AssumptionsAssumptions1.1. Constant bit rate continuous mediaConstant bit rate continuous media
Alternative is variable bit rate continuous mediaAlternative is variable bit rate continuous media
2.2. Fixed network topologiesFixed network topologies
3.3. Placement of the base stationPlacement of the base station
4.4. A mix of media typesA mix of media types
5.5. Zipfian distribution of access to clipsZipfian distribution of access to clips
http://dblab.usc.eduhttp://dblab.usc.edu
2D topologies2D topologies
GridGrid
StringString
GraphGraph
http://dblab.usc.eduhttp://dblab.usc.edu
AssumptionsAssumptions1.1. Constant bit rate continuous mediaConstant bit rate continuous media
Alternative is variable bit rate continuous mediaAlternative is variable bit rate continuous media
2.2. Fixed network topologiesFixed network topologies
3.3. Placement of the base stationPlacement of the base station
4.4. A mix of media typesA mix of media types
5.5. Zipfian distribution of access to clipsZipfian distribution of access to clips
http://dblab.usc.eduhttp://dblab.usc.edu
Placement of base stationPlacement of base station
Target EnvironmentTarget Environment
http://dblab.usc.eduhttp://dblab.usc.edu
AssumptionsAssumptions1.1. Constant bit rate continuous mediaConstant bit rate continuous media
Alternative is variable bit rate continuous mediaAlternative is variable bit rate continuous media
2.2. Fixed network topologiesFixed network topologies
3.3. Placement of the base stationPlacement of the base station
4.4. A mix of media typesA mix of media types
5.5. Zipfian distribution of access to clipsZipfian distribution of access to clips
http://dblab.usc.eduhttp://dblab.usc.edu
Mix of media typesMix of media types Database consists of two media types:Database consists of two media types:
Video clips, required bandwidth = 4 MbpsVideo clips, required bandwidth = 4 Mbps 2 hours, 2 GB2 hours, 2 GB 60 minutes, 1 GB60 minutes, 1 GB 30 minutes, 0.5 GB30 minutes, 0.5 GB
Audio clips, required bandwidth = 300 KbpsAudio clips, required bandwidth = 300 Kbps 4 minutes, 9 MB4 minutes, 9 MB 2 minutes, 4.5 MB2 minutes, 4.5 MB 1 minute, 2.25 MB1 minute, 2.25 MB
There are C clips in the database:There are C clips in the database: Clip i mod 6 = 0 is a 2 hour video clipClip i mod 6 = 0 is a 2 hour video clip Clip i mod 6 = 1 is a 4 minute audio clipClip i mod 6 = 1 is a 4 minute audio clip Clip i mod 6 = 2 is a 1 hour video clipClip i mod 6 = 2 is a 1 hour video clip Clip i mod 6 = 3 is a 2 minute audio clip ….Clip i mod 6 = 3 is a 2 minute audio clip ….
http://dblab.usc.eduhttp://dblab.usc.edu
AssumptionsAssumptions1.1. Constant bit rate continuous mediaConstant bit rate continuous media
Alternative is variable bit rate continuous mediaAlternative is variable bit rate continuous media
2.2. Fixed network topologiesFixed network topologies
3.3. Placement of the base stationPlacement of the base station
4.4. A mix of media typesA mix of media types
5.5. Zipfian distribution of access to clipsZipfian distribution of access to clips
http://dblab.usc.eduhttp://dblab.usc.edu
Zipfian distribution of accessZipfian distribution of access Visit Visit http://dblab.usc.eduhttp://dblab.usc.edu for code for code
http://dblab.usc.eduhttp://dblab.usc.edu
Key observationsKey observations None of the techniques observes a linear None of the techniques observes a linear
increase in throughput. Why?increase in throughput. Why? Byte-his is superior to Frequency-based. Byte-his is superior to Frequency-based.
Why?Why?
http://dblab.usc.eduhttp://dblab.usc.edu
Local hit ratioLocal hit ratio Byte-hit increases the number of references Byte-hit increases the number of references
serviced using the local storage of each serviced using the local storage of each node.node.
This can be quantified by summing up the This can be quantified by summing up the access frequency of clips assigned to each access frequency of clips assigned to each node:node:
http://dblab.usc.eduhttp://dblab.usc.edu
Byte-hit is not OptimalByte-hit is not Optimal Byte-hit is only a greedy heuristic. Byte-hit is only a greedy heuristic. Optimal may outperform it because Optimal Optimal may outperform it because Optimal
considers all possible combinations of considers all possible combinations of assigning clips to a node.assigning clips to a node.
http://dblab.usc.eduhttp://dblab.usc.edu
ExampleExample Assume capacity of Assume capacity of
each node is 14 bytes.each node is 14 bytes. Consider the shown Consider the shown
repository:repository:
Byte-hit assigns clip 2 Byte-hit assigns clip 2 to the node, resulting in to the node, resulting in a 10% hit ratio.a 10% hit ratio.
Optimal and Optimal and Frequency-based will Frequency-based will assign clip 1, resulting assign clip 1, resulting in a 70% hit ratio.in a 70% hit ratio.
Clip-idClip-id SizeSize FreqFreq Freq/Freq/sizesize
11 1414 0.70.7 0.050.05
22 11 0.10.1 0.100.10
33 2020 0.20.2 0.010.01
http://dblab.usc.eduhttp://dblab.usc.edu
Freq-based is not optimalFreq-based is not optimal Assume capacity of Assume capacity of
each node is 14 bytes.each node is 14 bytes. Consider the shown Consider the shown
repository:repository:
Byte-hit and Optimal Byte-hit and Optimal assign clips 2 and 3 to assign clips 2 and 3 to the node, resulting in a the node, resulting in a 60% hit ratio.60% hit ratio.
Frequency-based Frequency-based assigns clip 1, resulting assigns clip 1, resulting in a 40% hit ratio.in a 40% hit ratio.
Clip-idClip-id SizeSize FreqFreq Freq/sizeFreq/size
11 1414 0.40.4 0.030.03
22 11 0.30.3 0.300.30
33 11 0.30.3 0.300.30
http://dblab.usc.eduhttp://dblab.usc.edu
Varying access FrequenciesVarying access Frequencies Experimental Experimental
design:design:
http://dblab.usc.eduhttp://dblab.usc.edu
ConclusionsConclusions Byte-hit is superior to Frequency-based:Byte-hit is superior to Frequency-based:
1.1. Increased local accesses when access Increased local accesses when access frequencies are accurate. frequencies are accurate.
2.2. More robust to changes in access frequencies.More robust to changes in access frequencies.
Complexity of implementing Byte-hit is Complexity of implementing Byte-hit is almost identical to Frequency-based.almost identical to Frequency-based.
With a mix of demographics, Byte-hit With a mix of demographics, Byte-hit remains superior to Frequency-based.remains superior to Frequency-based.
http://dblab.usc.eduhttp://dblab.usc.edu
Future research directionFuture research direction Compare Byte-hit with a technique that Compare Byte-hit with a technique that
places data with the objective to optimizes places data with the objective to optimizes for a global criterion:for a global criterion: Average search size for a clipAverage search size for a clip Euclidian distance between nodesEuclidian distance between nodes Number of simultaneous displaysNumber of simultaneous displays
http://dblab.usc.eduhttp://dblab.usc.edu
Halo-Clip (Cont…)Halo-Clip (Cont…) Display of “Finding Nemo” incurs no delaysDisplay of “Finding Nemo” incurs no delays
http://dblab.usc.eduhttp://dblab.usc.edu
Halo-Clip (Cont…)Halo-Clip (Cont…) Streaming of “Secretary” incurs delaysStreaming of “Secretary” incurs delays
http://dblab.usc.eduhttp://dblab.usc.edu
Halo-BlockHalo-Block Display of Tarzan Display of Tarzan
requires streamingrequires streaming Some clients may Some clients may
incur delaysincur delays