Upload
jetta
View
32
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Course Matters. Recent Papers. from journals. Good Posters Bad Posters. Improving I/O Performance of Intermediate Multimedia Storage Node. Pal Halvorsen Thomas Plagemann Vera Goebel Multimedia Systems 03. Problem. Improve the performance of I/O in integrated multimedia storage node - PowerPoint PPT Presentation
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
dataFile
SystemNetworkSystem
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 4KBPacket Size
Tim
e (s
)
zero-copytraditional
Results: Zero Copy
Results: Network Level Framing
UDP With NLF
0
2
4
6
8
1 2 4 8Packet Size (KB)
Tim
e (x
100
ms)
The RestChecksum
Traditional UDP
0
2
4
6
8
1 2 4 8Packet Size (KB)
Tim
e (x
100
ms)
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
RadioRouterHost
RadioRouterHost
RadioRouterHost
RadioRouterHost
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
FG
H
E
B
Stable Group
A C
D
FG
H
E
B
BCD are in my group
AGH are in my group
Stable Group
A C
D
FG
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