27
Client-controlled QoS Client-controlled QoS Management in Management in Networked Virtual Networked Virtual Environments Environments Patrick Monsieurs, Patrick Monsieurs, Maarten Wijnants, Wim Maarten Wijnants, Wim Lamotte Lamotte Expertise Center for Digital Expertise Center for Digital Media Media Limburgs Universitair Centrum Limburgs Universitair Centrum , , Belgium Belgium

Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Embed Size (px)

Citation preview

Page 1: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Client-controlled QoS Client-controlled QoS Management in Networked Management in Networked

Virtual EnvironmentsVirtual Environments

Patrick Monsieurs, Maarten Wijnants, Patrick Monsieurs, Maarten Wijnants, Wim LamotteWim Lamotte

Expertise Center for Digital MediaExpertise Center for Digital MediaLimburgs Universitair CentrumLimburgs Universitair Centrum, Belgium, Belgium

Page 2: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

OverviewOverview

IntroductionIntroduction Related WorkRelated Work Network Intelligence ArchitectureNetwork Intelligence Architecture Distribution of Available BandwidthDistribution of Available Bandwidth Experimental ResultsExperimental Results Conclusions and Future WorkConclusions and Future Work

Page 3: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

IntroductionIntroduction

Multimedia streams consume large amounts Multimedia streams consume large amounts of bandwidthof bandwidth

Networked multimedia applications do Networked multimedia applications do not scale well with large amounts of users not scale well with large amounts of users that transmit multimedia contentthat transmit multimedia content

Reduce downstream bandwidth usage Reduce downstream bandwidth usage while maintaining QoEwhile maintaining QoE

Page 4: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

NVE ApplicationNVE Application

Page 5: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Related WorkRelated Work

Reducing sender’s qualityReducing sender’s quality Spatial subdivisionSpatial subdivision Quality selectionQuality selection

Page 6: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Reducing Sender’s QualityReducing Sender’s Quality

Receivers notify senders when downstream Receivers notify senders when downstream capacity is exceededcapacity is exceeded

Senders reduce quality of stream to reduce Senders reduce quality of stream to reduce bandwidthbandwidth

Bandwidth and quality of Bandwidth and quality of allall receivers of receivers of the stream is reducedthe stream is reduced

Page 7: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Spatial SubdivisionSpatial Subdivision

Users in Networked Virtual Environments Users in Networked Virtual Environments have a position in the environmenthave a position in the environment

The environment can be subdivided in The environment can be subdivided in spatial regionsspatial regions

Each user is part of a single region and is Each user is part of a single region and is only aware of users in nearby regionsonly aware of users in nearby regions

Associate a multicast address to each regionAssociate a multicast address to each region Join or leave multicast addresses to reduce Join or leave multicast addresses to reduce

or increase bandwidth usageor increase bandwidth usage

Page 8: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Spatial SubdivisionSpatial Subdivision

Player A PositionPlayer B Position

Player A AOI

Player B AOI

Page 9: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Quality SelectionQuality Selection

Spatial subdivisionSpatial subdivision Senders transmit several qualities of streamsSenders transmit several qualities of streams Each quality in a region is associated with a Each quality in a region is associated with a

multicast addressmulticast address Receivers select one quality for each nearby Receivers select one quality for each nearby

regionregion Quality determined by distance and Quality determined by distance and

available bandwidthavailable bandwidth

Page 10: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Quality SelectionQuality Selection

High Quality

Medium Quality

Low Quality

Split by quality

0

200000

400000

600000

800000

1000000

1200000

1 12 23 34 45 56 67 78 89 100

111

122

133

144

155

166

177

188

199

210

221

232

time

bit

s

high

medium

low

Page 11: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Per-stream Quality SelectionPer-stream Quality Selection

Receivers select the quality of every Receivers select the quality of every multimedia streammultimedia stream

Selection based on interest manager of Selection based on interest manager of client applicationclient application

Streams must be blocked or received inside Streams must be blocked or received inside the network before reaching the receiverthe network before reaching the receiver

Use intelligent proxies inside the network Use intelligent proxies inside the network near receiversnear receivers

Page 12: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Network Intelligence Network Intelligence Architecture: ProxiesArchitecture: Proxies

Intelligent proxies are placed in the network Intelligent proxies are placed in the network near clientsnear clients

Intelligent proxies can transcode network Intelligent proxies can transcode network streamsstreams

Reduces or blocks network streams when Reduces or blocks network streams when more bandwidth is requested then availablemore bandwidth is requested then available

Page 13: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Network Intelligence Network Intelligence Architecture: ProxiesArchitecture: Proxies

Bandwidth of streams is reduced based on Bandwidth of streams is reduced based on the importance of each stream and the importance of each stream and consumed bandwidthconsumed bandwidth

Importance of streams is application Importance of streams is application specific and is determined by the client specific and is determined by the client application (e.g.. Nearby avatars’ audio application (e.g.. Nearby avatars’ audio streams are more important)streams are more important)

Page 14: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Network Intelligence Network Intelligence Architecture: ClientsArchitecture: Clients

Clients have network intelligence layer Clients have network intelligence layer between transport and application layerbetween transport and application layer

Separates application logic (such as interest Separates application logic (such as interest management) from networking logic (such management) from networking logic (such as bandwidth consumption)as bandwidth consumption)

Page 15: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Network Intelligence Network Intelligence ArchitectureArchitecture

Interest manager

Video Audio Position

Stream3 Stream4Stream2Stream1 Stream6Stream5

Weights of streams

Class1 Class2 Class3

Transcoder1 Transcoder2 Transcoder3

Client-proxy communication

Application layer

Network intelligence layer

Proxy/router

Network

Interest manager

Video Audio Position

Interest manager

Video Audio Position

Stream3 Stream4Stream2Stream1 Stream6Stream5

Weights of streams

Class1 Class2 Class3

Transcoder1 Transcoder2 Transcoder3

Client-proxy communication

Application layer

Network intelligence layer

Proxy/router

Network

Page 16: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Intelligent ProxyIntelligent Proxy

Content-based “transcoders” (block/pass, lower Content-based “transcoders” (block/pass, lower quality, validation, …)quality, validation, …)

Located near end-users (eg. DSLAM)Located near end-users (eg. DSLAM) complexity of network management located at complexity of network management located at edge of networkedge of network

Measures bandwidth of managed streams and Measures bandwidth of managed streams and available bandwidth of link to clientavailable bandwidth of link to client

When available bandwidth to a client is exceeded, When available bandwidth to a client is exceeded, determines which streams to block or transcodedetermines which streams to block or transcode

Page 17: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Network Intelligence LayerNetwork Intelligence Layer

Replaces standard networking operationsReplaces standard networking operations Provides interface with client’s interest manager, Provides interface with client’s interest manager,

which periodically requests the importance of the which periodically requests the importance of the managed network streamsmanaged network streams

Communicates with intelligent proxies in the Communicates with intelligent proxies in the networknetwork

Separates application logic from networkingSeparates application logic from networking Associates correct transcoder to network stream Associates correct transcoder to network stream

(type of content is specified on creation of the (type of content is specified on creation of the socket)socket)

Page 18: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Communication Between Proxy Communication Between Proxy and Network Intelligence Layerand Network Intelligence Layer

Admission control: specify which streams Admission control: specify which streams must be managed (filter by destination port must be managed (filter by destination port on proxy)on proxy)

Creation of a stream hierarchy (next slide)Creation of a stream hierarchy (next slide) Communicating importance of streamsCommunicating importance of streams Multicast tunneling: NI layer monitors Multicast tunneling: NI layer monitors

which multicast addresses are joined by which multicast addresses are joined by clientsclients

Page 19: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Distribution of Available Distribution of Available BandwidthBandwidth

Hierarchy of Hierarchy of available streamsavailable streams

Relative QoSRelative QoS Components:Components:

– PriorityPriority– MutexMutex– Weighted Weighted

collectioncollection

Priority

Weight

Mutex

Weight

Weight

Weight Weight

Weight

Mutex Mutex

Position updates

3D models

Audio data

Video dataVideo data Video data

1 2

0.5 0.5

0.5 0.5

wi wi wiwi wi

wi wi

Page 20: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Distribution of Weighted Distribution of Weighted CollectionsCollections

Stream Stream ssii has weight has weight wwii between 0 and 1 between 0 and 1

Stream Stream ssii consumes bandwidth consumes bandwidth mmii

Total bandwidth Total bandwidth MM = = iimmii

Reduce bandwidth if Reduce bandwidth if MM > available > available bandwidth bandwidth BB

hh((ii, , bb) := highest transcoded bandwidth of ) := highest transcoded bandwidth of stream stream ssii that is less than bandwidth that is less than bandwidth bb

Weighted bandwidth Weighted bandwidth WW = = iiwwiimmii

Page 21: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Distribution of Weighted Distribution of Weighted CollectionsCollections

Initial estimate Initial estimate t t ((ii) for stream ) for stream ssii: :

t t ((ii) = ) = hh((ii, , wwiimmiiBB//WW))

iitt ( (ii) ) BB

Remaining bandwidth Remaining bandwidth RR00 = = BB - - iitt ( (ii))

Distribute remaining bandwidth: Distribute remaining bandwidth: – Assume streams ordered by Assume streams ordered by wwii, , ww00 highest: highest:

– Target bandwidth Target bandwidth TT((ii) = ) = hh((ii, , tt ( (ii) + ) + RRii))

where where RRii = = RRii-1-1 – ( – (TT((ii-1) – -1) – t t ((ii-1)) for -1)) for ii > 0 > 0

Page 22: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Experimental SetupExperimental Setup

Intelligent client

Intelligent proxy

Network

Clients

Clients

Page 23: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Experiment 1Experiment 1

Maximum available bandwidth is reduced Maximum available bandwidth is reduced over timeover time

Clients remain stationary in the worldClients remain stationary in the world Nearby clients have higher weightsNearby clients have higher weights

Page 24: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Experiment 1Experiment 1

0

100000

200000

300000

400000

500000

6000000 19

38

57

76

95

114

133

152

171

190

209

228

247

266

285

304

323

342

Time (sec)

Bit

s

C:4 Q:2

C:4 Q:1

C:4 Q:0

C:3 Q:2

C:3 Q:1

C:3 Q:0

C:2 Q:2

C:2 Q:1

C:2 Q:0

C:1 Q:2

C:1 Q:1

C:1 Q:0

Max

Page 25: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Experiment 2Experiment 2

Fixed maximum available bandwidthFixed maximum available bandwidth Bandwidth is not sufficient to transmit all Bandwidth is not sufficient to transmit all

video streams at highest qualityvideo streams at highest quality First, client 3 moves away from the First, client 3 moves away from the

intelligent client (reducing its weight), and intelligent client (reducing its weight), and later returns quicklylater returns quickly

Page 26: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

Experiment 2Experiment 2

0

100000

200000

300000

400000

500000

600000

1 18 35 52 69 86 103 120 137 154 171 188

Time (sec)

Bits

C:9 Q:2

C:9 Q:1

C:9 Q:0

C:7 Q:2

C:7 Q:1

C:7 Q:0

C:5 Q:2

C:5 Q:1

C:5 Q:0

C:1 Q:2

C:1 Q:1

C:1 Q:0

Max

Page 27: Client-controlled QoS Management in Networked Virtual Environments Patrick Monsieurs, Maarten Wijnants, Wim Lamotte Expertise Center for Digital Media

ConclusionsConclusions

Bandwidth of managed streams is adapted Bandwidth of managed streams is adapted to maximum available bandwidthto maximum available bandwidth

Distribution of bandwidth is dynamic, Distribution of bandwidth is dynamic, based on the client’s interest in each streambased on the client’s interest in each stream

Separation of application logic and network Separation of application logic and network logiclogic

Intelligent proxy architecture is useful for Intelligent proxy architecture is useful for mobile devices such as PDA’smobile devices such as PDA’s