nus.soc.cs5248 ooi wei tsang recent papers from conferences
TRANSCRIPT
nus.soc.cs5248 Ooi Wei Tsang
Recent Papers
from conferences
nus.soc.cs5248 Ooi Wei Tsang
Sessions
•Session 1: Movies and Music•Session 2: Peer-to-Peer
Streaming•Session 3: Power-Friendly
nus.soc.cs5248 Ooi Wei Tsang
Movies and Music
Session 1
nus.soc.cs5248 Ooi Wei Tsang
Characterizing DVD
Wu-Chi Feng et. al.Packet Video 2003
nus.soc.cs5248 Ooi Wei Tsang
Motivations
• Lots of DVD videos available• How are they encoded?• What is the implications to our
research?
nus.soc.cs5248 Ooi Wei Tsang
DVD data
•107 video streams•140 hours•80 DVDs
nus.soc.cs5248 Ooi Wei Tsang
Bit-rates
• Maximum DVD bit rates 10 Mbps• Found on DVD 3.3 – 7.8 Mbps
• VBR• Quantization values change over time
(only Spy Kids is CBR)
nus.soc.cs5248 Ooi Wei Tsang
GOPs and Sequences
• Each GOP was encoded into a different sequence
• GOP sizes: around 12 frames
NUS.SOC.CS5248OOI Wei Tsang
nus.soc.cs5248 Ooi Wei Tsang
Sequence
sequence header:• width• height• frame rate• bit rate• :
NUS.SOC.CS5248OOI Wei Tsang
nus.soc.cs5248 Ooi Wei Tsang
GOP: Group of Picture
gop header:• time• :
NUS.SOC.CS5248OOI Wei Tsang
nus.soc.cs5248 Ooi Wei Tsang
Picture
pic header:• number• type (I,P,B)• :
nus.soc.cs5248 Ooi Wei Tsang
Frame Patterns
• Most videos have varying• Number of frames within a GOP • Frame patterns
(ID4 has 134 unique GOP
patterns)
nus.soc.cs5248 Ooi Wei Tsang
Frame Pattern
• Scene Change Detection used extensively
• IPPPPPPP quite common!
nus.soc.cs5248 Ooi Wei Tsang
Implication to Research
• Cannot assume fixed frame pattern
• Cannot always drop B frames
nus.soc.cs5248 Ooi Wei Tsang
Network Musical Performances
UC BerkeleyNOSSDAV 2001
nus.soc.cs5248 Ooi Wei Tsang
Goal
• Show that networked musical performances (NMP) can be done
nus.soc.cs5248 Ooi Wei Tsang
Observation
• Stanford – Berkeley (40 miles)• RTT ~4 ms• 0.72 meters
• Berkeley – Caltech (375 miles)• RTT ~28 ms• 4.88 meters
nus.soc.cs5248 Ooi Wei Tsang
Observation
• Musical instruments have long production latency
nus.soc.cs5248 Ooi Wei Tsang
Observation
• Don’t send audio, send command
• Keeps “states” of the current music performance
nus.soc.cs5248 Ooi Wei Tsang
Example
• NoteOn(channel, note, velocity)• NoteOff(channel, note)
nus.soc.cs5248 Ooi Wei Tsang
Packet Loss Recovery
• Lost/Late NoteOn • skipped
• Lost/Late NoteOff• executed
nus.soc.cs5248 Ooi Wei Tsang
Packet Loss Recovery
• Guard packets
• Recovery journals
nus.soc.cs5248 Ooi Wei Tsang
Bandwidth
• 20 MIDI command per seconds• 640 bps
• With recovery journals• ~7 kbps
nus.soc.cs5248 Ooi Wei Tsang
Experience
• Lost/Late NoteOn/NoteOff
• But musician can adjust and play fluidly
nus.soc.cs5248 Ooi Wei Tsang
Peer-to-Peer
Session 2
nus.soc.cs5248 Ooi Wei Tsang
P2Cast
Yang Guo et. al. WWW 2003
nus.soc.cs5248 Ooi Wei TsangNUS.SOC.CS5248OOI WEI TSANG
Patching
Time
Client Request
mcast
unicast
nus.soc.cs5248 Ooi Wei TsangNUS.SOC.CS5248OOI WEI TSANG
Patching
Time
Client Request
Patching Window: W
mcast
mcast
nus.soc.cs5248 Ooi Wei Tsang
Problem with VOD
• IP Multicast usually assumed• Patching still requires unicast
connections
nus.soc.cs5248 Ooi Wei Tsang
P2Cast
nus.soc.cs5248 Ooi Wei Tsang
New Session
nus.soc.cs5248 Ooi Wei Tsang
Existing Session + Patch
?
?
Fat Pipe First
nus.soc.cs5248 Ooi Wei Tsang
Patch Server Selection
nus.soc.cs5248 Ooi Wei Tsang
Patching Stream
patching stream
base stream
nus.soc.cs5248 Ooi Wei Tsang
Tree Example
nus.soc.cs5248 Ooi Wei Tsang
Failure Recovery
X
nus.soc.cs5248 Ooi Wei Tsang
Failure Recovery
• What if• Patch server failed?
• Base server failed?
nus.soc.cs5248 Ooi Wei Tsang
PROMISE
Mohamed Hafeeda et. al.
ACM MM 2003
nus.soc.cs5248 Ooi Wei Tsang
Problem
• P2P with streaming• One peer may not have enough
bandwidth• Need to aggregate multiple
peers
nus.soc.cs5248 Ooi Wei Tsang
Architecture
B/2B/4B/4
CollectCast
nus.soc.cs5248 Ooi Wei Tsang
CollectCast
• Select sending peers• Monitor network• Assign streaming rates and data
segments• Decide when to change peers
nus.soc.cs5248 Ooi Wei Tsang
PROMISE Operations
I want to watch
LOTR:T2T
nus.soc.cs5248 Ooi Wei Tsang
PROMISE Operations
These are the
candidates..
nus.soc.cs5248 Ooi Wei Tsang
PROMISE Operations
Max expected goodnessSubject to rate constraints
nus.soc.cs5248 Ooi Wei Tsang
PROMISE Operations
Here are your peers!
nus.soc.cs5248 Ooi Wei Tsang
PROMISE Operations
Send these..
nus.soc.cs5248 Ooi Wei Tsang
PROMISE OperationsShould
I switch
?
nus.soc.cs5248 Ooi Wei Tsang
PALS
Reza Rejaie et. al.NOSSDAV 2003
nus.soc.cs5248 Ooi Wei Tsang
Problem
• P2P with streaming• One peer may not have enough
bandwidth• Need to aggregate multiple
peers•Using layered coding•With congestion control
nus.soc.cs5248 Ooi Wei Tsang
Sliding Window
playout time window
nus.soc.cs5248 Ooi Wei Tsang
Packet Assignment
playout timeS1 S2
nus.soc.cs5248 Ooi Wei Tsang
Sending Mechanism
• Request packets in priority order• Sender must send in order• Next request overwrites previous
one
nus.soc.cs5248 Ooi Wei Tsang
Power-Friendly
Session 3
nus.soc.cs5248 Ooi Wei Tsang
GRACE-OS
Wanghong YuanSOSP 2003
nus.soc.cs5248 Ooi Wei Tsang
Motivation
• Mobile devices run on battery• How to save battery?
nus.soc.cs5248 Ooi Wei Tsang
Dynamic Voltage Scaling
•Example: AMD Athlon 4 PowerOn {300, 500, 600, 700, 800, 1000}MHz
• Energy V2
nus.soc.cs5248 Ooi Wei Tsang
CPU Scheduler
•When to execute a task•How long to execute it•How fast to execute it
nus.soc.cs5248 Ooi Wei TsangNUS.SOC.CS5248OOI WEI TSANG
CPU Reservation
“I need C units of time, out of every T units.”
nus.soc.cs5248 Ooi Wei Tsang
Probability Distribution
cycles
Cum. Prob.
500
0.8
80% ofthe time,this taskrequires 500 cycle.
nus.soc.cs5248 Ooi Wei Tsang
CPU Requirements
• “I need C units of time, out of every T units.”
• CPU only needs to run at
“With 80% success rate, C is 500 cycle”
i i
i
T
C
nus.soc.cs5248 Ooi Wei Tsang
Speed Schedulesp
eed
time
If task can finish early, we save energyby not running it at higher speed
nus.soc.cs5248 Ooi Wei Tsang
Finding Speed Schedule
• Let task execute at speed vx
during cycle x• execution time: 1/vx
• power: vx2
• average power: (1-F(x))vx2
nus.soc.cs5248 Ooi Wei Tsang
Optimize This
• Minimize:
• Subjected to:
C
xxvxF
0
2))(1(
i
C
x x
TiCiC
v1
1
nus.soc.cs5248 Ooi Wei Tsang
Implementation
• Linux Kernel• AMD Athlon 4•716 lines of code
nus.soc.cs5248 Ooi Wei Tsang
Findings
• Probability distribution is quite stable
• Able to meet deadlines with bounded miss ratio
• Save energy by 7 – 72%
nus.soc.cs5248 Ooi Wei Tsang
Proxy Assisted Streaming
Prashant Shenoy et. al.MMCN 2003
nus.soc.cs5248 Ooi Wei Tsang
Motivation
• Power-aware streaming to mobile device• save energy in decoding frames• save energy in receiving packets
nus.soc.cs5248 Ooi Wei Tsang
Architecture
server/proxy client
Here’s my energy budget for decoding +
network reception and max resolution
nus.soc.cs5248 Ooi Wei Tsang
Architecture
server/proxy client
OK, what should I send?
nus.soc.cs5248 Ooi Wei Tsang
Information Needed
• Map stream properties to energy requirement
• Need to know decoding time of a frame
nus.soc.cs5248 Ooi Wei Tsang
Frame Decoding Time
Frame Size (bits)
Time (s)
nus.soc.cs5248 Ooi Wei Tsang
Transcoding
• If current stream would exceed client decoding energy budget
• Need to transcode by reducing quality
nus.soc.cs5248 Ooi Wei Tsang
Transcode to what?
E = estimated energy neededwhile E > energy budget reduce quality by ε E = estimate energy needed
nus.soc.cs5248 Ooi Wei Tsang
Transcoded Streams
server/proxy client
nus.soc.cs5248 Ooi Wei Tsang
Reducing NIC Energy
• NIC has two modes : active/sleep
• Client can activate NIC only when packets are expected.
nus.soc.cs5248 Ooi Wei Tsang
Burst Transmission
I will start transmitting at
10:12:54.86 pm
nus.soc.cs5248 Ooi Wei Tsang
EvaluationsDecoding Time
Frame Number
nus.soc.cs5248 Ooi Wei Tsang
Evaluations
• NIC Idle Uptime: 2 – 20%