Course Matters. Recent Papers from journals Good Posters Bad Posters

Preview:

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

Recommended