Upload
coleen-holt
View
219
Download
6
Embed Size (px)
Citation preview
Course Matters
Recent Papers
from journals
Good PostersBad Posters
Improving I/O Performance of Intermediate
Multimedia Storage Node
Pal HalvorsenThomas Plagemann
Vera GoebelMultimedia Systems 03
Problem
• Improve the performance of I/O in integrated multimedia storage node
• 3 areas of improvement are identified• reduce memory copy• checksum computation• FEC computation
Reduce Memory Copy
• File system maintain pointer to an area in memory
• Communication system maintain pointer to same area in memory
• Memory copy avoided!
Network Level Framing
• Packet payloads are stored with checksum
• When packets are retrieved for sending, destination address in header is updated
• Checksum is updated with new destination
• No need to recompute checksum for payload
Integrated Error Management
• Data are stored on RAID-4 (single parity checks)
• Use the same error correcting code for RAID and packets
• Avoid multiple computation of error correcting code
Experiment: Memory Copy
• Read 28662512B file 38 times in a loop
• The time to transmit data through the storage node is reduced by 45-50% when there is no CPU load, and by 70-73% when CPU load is high
Experiment: Network Level Framing
• Transmit 255MB file• Time to calculate checksum is
reduced by 95-99%• Time spent in kernel is reduced
by 51-61%
Experiment: Integrated Error Management
• With encoding FEC, the maximum throughput is 22-24 Mbps.
• Without encoding FEC, the maximum throughput is 1Gbps
Let’s try again..
Improving I/O Performance of
Intermediate Media Storage Node
Pal HalvorsenThomas Plagemann
Vera Goebel
Contributions
• Improve performance by• reducing memory copy• reducing checksum computation• reducing ECC computation
Reduce Memory Copy
• One shared copy of data for different OS component
data
File System
NetworkSystem
Memory
Network Level Framing
1
2
3
store payloadwith payload’s checksum
read payloadwith checksum
update header andchecksum
• Reduce time to packetize data and compute checksum for data
Integrated Error Management
• Avoid multiple computation of error correcting code
data data data ECCRAID
ECC
reuse RAIDECC as ECCpacket
Average Time to Transmit 1GB file from memory system under high CPU Load
0
50
100
150
200
250
300
1KB 2KB 3KB 4KB
Packet Size
Tim
e (s
)
zero-copytraditional
Results: Zero Copy
Results: Network Level Framing
UDP With NLF
0
2
4
6
8
1 2 4 8
Packet Size (KB)
Tim
e (
x100 m
s)
The RestChecksum
Traditional UDP
0
2
4
6
8
1 2 4 8
Packet Size (KB)
Tim
e (
x100 m
s)
Accumulated UDP Protocol Execution Time for sending 225MB file
Results: Integrated Error Management
With ECC Encoding
Without ECC Encoding
22-24 Mbps 1 Gbps
Maximum Throughput with/without Encoding usingCauchy-based Reed Solomon Erasure Code
Ad Hoc Networks
Session 1
Mobile Ad Hoc Network
Radio
Router
Host
Animation
• http://www-i4.informatik.rwth-aachen.de/~mesut/manet/manet_en.html
Mobile Ad Hoc Network
Radio
Router
Host
Radio
Router
Host
Radio
Router
Host
Radio
Router
Host
Examples
• Battlefield• Highway• Disaster Zone
Challenges
• All the difficulties of wireless LAN• Plus• Nodes can move• Connections can go up/down• No fix route
Two Papers
• IEEE JSAC • Special Issues in Wireless
Multimedia
• Baochun Li from U. of Toronto• Shiwen Mao from Polytechnic U.
NonStop: Continuous Streaming Service on
MANET
Baochun Li IEEE JSAC 2004
Streaming over MANET
Network Partition Problem
Only Solution ..
• Predict Partition• Replicate Service
Partition Prediction
Network Partition Problem
How to Predict Partition?
• given velocity of each node• cluster nodes into “mobile
groups”• find mean group velocity
Clustering Algorithm
Clustering Algorithm
Clustering Algorithm
Clustering Algorithm
Choosing Server
?
How to Choose Server?
• find “stable group”• choose server within stable
group with the most similar velocity
Stable Group
A B
mean <= radio rangeand variance is not too large
probability
distance
Stable Group
A C
D
F
G
H
E
B
Stable Group
A C
D
F
G
H
E
B
BCD are in my group
AGH are in my group
Stable Group
A C
D
F
G
H
E
B
BCDGH are in my group
ABDGH are in my
group
How to Choose Server?
• find “stable group”• choose server within stable
group with the most similar velocity
Summary
• Server construct mobile group by clustering nodes using velocity
• Use mean mobile group velocity to predict network partition
•Replicate service before partition to ensure continuous service
Summary
• Node construct stable group by comparing distance over time
• Choose server within stable group with most similar velocity
Multipath Transport and Multistream
Coding for MANET
Shiwen Mao et. al.IEEE JSAC
Single Path Transport
Multipath Transport
Multipath Transport
Video Coding: 1 of 3
I P P P P P P P
Typical Frame Dependency
Video Coding: 1 of 3
II
PP
PP
PP
Multistream Coding
Dynamic Reference Frame
• Choose last received frame as reference
believed to be received
Predict Network States
GOOD :)
BAD :(
NACK ACK
Example
0
1
2
3
4
5
6
7
ACK0 ACK2 ACK4
NACK1 NACK3 NACK5 ACK7
8
9
ACK6
10
Video Coding: 2 of 3
I P P P
I P P P Base Layer
EnhancementLayer
Video Coding: 2 of 3
S D
EL
BL
Video Coding: 2 of 3
NACK
NACK
Video Coding: 2 of 3
S D
BL
Video Coding: 3 of 3
• Multiple Description Coding
MDMC
• MDMC
+
Example of MDMC
359 363 370
+7
Typical Reference Frame
Example of MDMC
359 363 370
MDMC Reference Frame
Example of MDMC
359 363 +9
Example of MDMC
359 ? +9
Example of MDMC
359 363 370
+9
361
Example of MDMC
359 ? +9,+2
Comparisons
Reference Frame
LayeredCoding
MDMC
Feedback
Buffer
Decoding Delay
Improving Multicast
Session 2
Organizing Multicast Receivers
Brian Neil Levine Sanjoy Paul
JJ Garcia-Luna-AcevesMultimedia Systems 03
Retransmission in Mcast
Idea
• Ask a neighbour for a missing packet
“Helper” Tree
Pick Helper By Hop
Pick Helper by Hop
• Not entirely accurate• Need to consider latency, link
condition etc.
Pick Neighbour By Latency
Pick Helper by Latency
• How to measure latency?• unicast?• multicast?• shared-tree? per-source tree?
Ideal “Location” of Helper
• share a common path, and is closer to source (“acceptable”)
Idea
• Suppose node A and B know their path back to the source, then they can deduce if A is acceptable to help B
MTrace
A B C
D
E
HG
F
I
ERS
A B C
D
E
HG
F
I
my path is ABCDF
ERS
A B C
D
E
HG
F
I
Respond if
• acceptable• not too many helpee
Picking Helper
• packet loss measurement
A B C
D
E
HG
F
I
30%
10%
Maintenance
• Periodic refresh states (soft-states)
• Periodic repeat procedure
Summary
• Organized receivers based on common path
• Enable peer-to-peer retransmission
THE END