the niproxy: a flexible proxy server supporting client bandwidth management and multimedia service...

20
The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

Upload: lionel-burke

Post on 02-Jan-2016

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

The NIProxy:a Flexible Proxy Server Supporting

Client Bandwidth Management and Multimedia Service Provision

Maarten WijnantsWim Lamotte

Page 2: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 2

Outline

• Introduction• System Overview• Software Architecture• Bandwidth Distribution Algorithm• An Example Service: Video Transcoding• Evaluation

– Test Application– Experimental Results

• Conclusions & Future Work

Page 3: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 3

Introduction

• Popularization of multimedia content and real-time multimedia streaming– E.g. multiplayer games: verbal communication

through voice streaming– E.g. academic applications: also video

communication

• Multimedia streaming requires considerable amount of bandwidth– Client downstream bw does not always suffice– Mechanisms are needed to maximize clients’

Quality of Experience (QoE)

Page 4: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 4

NIProxy: System Overview

• The NIProxy– Network intermediary (a “proxy”)– Abbreviation for Network Intelligence Proxy– Goal = introduce more intelligence in the

network so that it can deliver MM content to clients more intelligently and efficiently

– Outcome = improved QoE for users

Page 5: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 5

NIProxy: System Overview

• NIProxy introduces 2 kinds of intelligence in the transportation network– Network awareness

• NIProxy has knowledge of the client’s network link– Is acquired through periodic network probing– Current end-to-end throughput, latency, packet loss

rate, … • Also encompasses knowledge of the bandwidth

requirements of network streams

– Application awareness• NIProxy is aware of the application it is serving• Is acquired through support library called the NILayer• E.g. relative importance of streams

Page 6: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 6

NIProxy: System Overview

• The NIProxy provides 2 QoE-increasing mechanisms– Automatic client bandwidth management– Multimedia service provision

• NIProxy == MM service provision platform

• Both mechanisms can exploit the NIProxy’s dual awareness/intelligence

• The mechanisms are– Complementary– NOT isolated entities (i.e. they can collaborate)

Page 7: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 7

Software Architecture

Page 8: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 8

Software Architecture

• Bandwidth Manager– Responsible for managing the proxy client's

available downstream bandwidth– Has access to the NIProxy's bandwidth

distribution algorithm– Computes verdicts for the network packets it

receives• Accept• Drop• Block

– Only packets for which an accept verdict is computed are transmitted to the proxy client

Page 9: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 9

Software Architecture

• Service Manager– Applies services on MM streams on behalf of proxy

clients– Hands intercepted network packets to the currently

loaded (and interested) services– Service traversing order == load order– Services are allowed to alter the contents of the

packets they receive– Multiple services can collaborate on a single stream– Each client has its own Service Manager instance

• Services are implemented as NIProxy plug-ins

Page 10: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 10

Bandwidth Distribution Algorithm

• Manages/distributes proxy client downstream bandwidth by arranging MM streams in a stream hierarchy– Leaf nodes: actual network streams– Internal nodes: implement a certain bandwidth

distribution technique• Mutex (e.g. group multiple qualities of same stream)• Priority (e.g. distinguish between different types of

network streams)• Weight (e.g. distinguish between individual network

streams of the same type)

• Stream hierarchy is maintained by client

Page 11: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 11

An Example Service:Video Transcoding

• NIProxy video transcoding service– Enables NIProxy to reduce bandwidth

requirements of video streams– Is implemented using the cascaded pixel-

domain approach to transcoding– For each received video stream, a new node is

added to the proxy client’s stream hierarchy• Is linked to the transcoded video stream• Is added as sibling of original video stream

Page 12: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 12

An Example Service:Video Transcoding

• Mode of operation– Registers interest for video streams with

Service Manager– Consults proxy client’s stream hierarchy

• Transcode only if Bandwidth Manager computes an accept verdict for transcoded version of video stream

– If transcoding took place, original video frame is replaced by its transcoded counterpart

• Subsequent services will receive transcoded frame

• Notice collaboration between services and bandwidth distribution algorithm!

Page 13: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 13

Evaluation:Test Application

• Test application– Simple in-house developed NVE– Provides users with a top-down 2D view of the

shared virtual world– Supports voice and video communication

• Required modifications– Provide NIProxy with application awareness

• Voice: stream importance inversely proportional to virtual distance

• Video: virtual orientation is also considered• Maybe more meaningful for 3D NVEs

– “Easy” thanks to availability NILayer library

Page 14: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 14

Evaluation:Experimental Results

• Experiment– 1 proxy client, 3 “regular” clients (C1, C2, C3)– Goal = register MM experience provided to the

sole proxy client– Only 1 type of MM was considered video

• Places largest load on network• Allows demonstration of video transcoding plug-in

– Consisted of 3 intervals• Within each interval, all conditions remained constant• Transition between intervals was triggered by

changing conditions

Page 15: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 15

Evaluation:Experimental Results

Page 16: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 16

Evaluation:Experimental Results

Page 17: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 17

Evaluation:Experimental Results

• Findings– NIProxy respects client downstream bandwidth

• Packet loss and packet latency are kept to a minimum

• Improved playback of MM streams at client-side

– Client receives MM streams that are most important to it in the highest quality possible

• Has a positive impact on the user QoE

– Video transcoding service enables NIProxy to forward lower-quality video to a proxy client

• Alternative = drop video all together• NIProxy's service provision mechanism is also

capable of improving the user QoE

Page 18: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 18

Conclusions

• Increasing use of MM content & streaming– If done improperly, can result in deterioration

of user QoE instead of an improvement

• NIProxy– Introduces more intelligence in the network

• Both application- and network awareness

– Complementarily leverages this awareness to• Intelligently manage client downstream bandwidth• Apply services on MM streams on behalf of clients

– Important feature: collaboration possible– Outcome = improved MM experience for users

• Confirmed by the presented experimental results

Page 19: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

21/06/2007 WoWMoM2007 19

Future Work

• NIProxy still lacks knowledge of the client terminal and the end-user's preferences– Third kind of awareness

• Process of (un)loading services is at the moment directed entirely by proxy client– Migrate (some) of this control to NIProxy

• Bandwidth distribution algorithm is optimized for continuous streams– Provide support for bursty, short-lived streams

• Make video transcoding service dynamic– Transcode to range of output qualities

Page 20: The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte

Thank you for your attention!Any questions?