Top Banner
MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University
30

MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Dec 21, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

MediaNet: User-defined Adaptive Scheduling for

Streaming Data

Michael Hicks

Adithya NagarajanUniversity of Maryland

Robbert van RenesseCornell University

Page 2: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Motivation

• Multi-user streaming data applications– Sources

• Sensor reports• Movies• Live video or audio• Weather reports• Stock quotes

• Support Quality of Service (QoS)– Application-specific metrics– Fair and efficient sharing of resources

– Situations• Military• Disaster• Home network

Page 3: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

MediaNet

• Adaptive– Schedules flows using available resources– Adapts to loads not under its control

• User-directed– Adaptations are directed by users, based on

relative preferences and user priority

• Comprehensive– Global view of the network, accounting for

overall network utilization, and per-user utility

Page 4: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

MediaNet Architecture

Video description,location, &

resource info

User’s desiredstream &

adaptation prefs

Globalscheduling

service

publish

subscribe

Video source

Video player

schedules

feedback

Page 5: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

• Continuous Media Network (CMN)– Directed acyclic graph of operations

• frame droppers, transcoders, compressors and decompressors, filters, aggregators, etc.

• User specification– One or more CMN’s, each with associated

utility value

• Goal: Maximize users’ utility while utilizing the network efficiently

Streaming Computations

Page 6: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Operations

Op

frmn

IntervalFrame sizeOther attributes• Fixed location?• Transitions only?

frm1

Page 7: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example User Specification

1.0

0.3

0.1

Utility CMN

Vid

Prio*Vid

Vid Prio*DropPB

Prio* User

DropB

Prio* User

Prio* UserpcS

pcS

pcS

pcD

pcD

pcD

Page 8: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Global Scheduling Service

• Schedules each user specification on the actual network– Locates each operation on a node– Inserts send and receive operations between

nodes; can have varying transport attributes

• Scheduling choices based on current network resources (i.e. operates on-line)

Page 9: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Global Scheduling Algorithm

• Simulated annealing technique– Cost function for network configurations– Maximize minimum utility for all users, plus

• Optimize individual user utilities above minimum• Use best-cost configuration at these utilities

• Cost function– Relates resource cost of a configuration to the

total resources available (CPU, bandwidth)

Page 10: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Creating Configurations

• Gather all user specs at utility u, combine them, and partition into distinct trees

• For each tree– Calculate network “shortest” paths

• Actually, most bandwidth-plentiful paths

– Find “best” placement of operations to nodes

Page 11: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example: Creating Config

pc1 pc5

Vid1 Prio*

pc1 pc7

Vid1 Prio*

pc1 pc8

pc2 pc4

Vid2 Prio*

pc2 pc8

5 user specifications, utility 1.0

User2

User4

Vid1 Prio* User1

User3

User5

Vid2 Prio*

Page 12: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example: Creating Config

Vid1 Prio* User1

pc1 pc5

User3

pc7

User5

pc8

Vid2 Prio* User2

pc2 pc4

User4

pc8

Combining the specs

Page 13: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example: Scheduling

pc1

pc2

pc3

pc5

pc6

pc4

pc7

pc8

300

300 150

300

300

300

300

150

1. Initial network conditions

Page 14: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example: Scheduling

pc1

pc2

pc3

pc5

pc6

pc4

pc7

pc8

300

300 150

300

300

300

300

150

2. Scheduling the 1st tree

v1 u1 u3

u5

p* p*

Page 15: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example: Scheduling

pc1

pc2

pc3

pc5

pc6

pc4

pc7

pc8

150

300 150

150

300

150

150

0

3. Adjusting edge weights

v1 u1 u3

u5

p* p*

Page 16: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Example: Scheduling

pc1

pc2

pc3

pc5

pc6

pc4

pc7

pc8

150

300 150

150

300

150

150

0

4. Scheduling the 2nd tree

v1 u1 u3

p*

p*

p*

u2v2

u4

u5

Page 17: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Prototype Implementation

• Global scheduling service– implemented on a single node– eventually hierarchical

• Local, per-node schedulers– monitor and report available bandwidth;

eventually CPU + memory usage– implement local CMNs

• Global scheduler reconfigures schedules on-line

Page 18: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Local Scheduling

• Implement the CMN given by the GS– Must correctly reconfigure on-line

• Report monitoring info back to GS• Implemented in Cyclone

– Type-safe, C-like language– One component per operation, dynamically

reconfigurable

• Current uses TCP for send/receive– Other transports possible/useful

Page 19: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Monitoring

• Monitor available bandwidth– Keep track of TCP throughput, attempted vs.

actual bandwidth

• Report to global scheduler when – attempted ≠ actual bandwidth (i.e. at peak)– after a regular timeout

• Too pessimistic– “creep” bandwidth estimate additively to

optimistically attempt higher utility configs

Page 20: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

On-line Reconfiguration

• New configuration is applied in parallel with the current configuration– Old operations are “flushed” along the

dataflow path– New operations are enabled when all old ones

are flushed on a particular node

• Challenges– Rapid reconfiguration– Low disruption to stream

Page 21: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Experiments• Conducted on 8 850 MHz PIII’s, 512 MB RAM, 100 Mb/s Ethernet,

RedHat Linux 7.1 using a “bowtie” topology:

MPEG clip Bandwidth Requirements

Frame rate I+P+B I+P I+B

30 fps 144 KB/s 88 KB/s 28 KB/s

Page 22: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Single-flow Performance Comparison

No adaptation Priority-based frame dropping

Local, proactive frame dropping MediaNet

Page 23: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Multi-User Performance

Page 24: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Multi-User Performance

Page 25: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Multi-User Performance

B frame dropping op

Page 26: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Multi-User Performance

B frame dropping op

Page 27: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Related Work

• Layered Multicast

• In-network stream processors– MEGA, Active Nets

• Flow planning systems– Ninja, Darwin, CANS, End-to-End Paths,

Conductor, PATHS, Choi et al.

• Reservation-based QoS– OMEGA

Page 28: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Future Work

• Hierarchy of global schedulers– Better scalability

• Scaling user utilities– Based on user priority and resource usage– Enforces fairness

• Better on-line monitoring• More experiments

– Real wireless– Simulation for larger scenarios

Page 29: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Conclusions

• Application-specific QoS via user specs• High network utilization and per-user utility

via global scheduling:– Share resources between flows in a multicast-

like manner, but generalized to CMNs– Utilize multiple, redundant paths– Intelligently place operations to reduce

network utilization

• Adapts to resource availabilities on-line

Page 30: MediaNet: User-defined Adaptive Scheduling for Streaming Data Michael Hicks Adithya Nagarajan University of Maryland Robbert van Renesse Cornell University.

Papers, Software at

http://www.cs.umd.edu/projects/medianet

For More Information