1 / 20

Maarten Wijnants Wim Lamotte

The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision. Maarten Wijnants Wim Lamotte. Outline. Introduction System Overview Software Architecture Bandwidth Distribution Algorithm An Example Service: Video Transcoding Evaluation

shona
Download Presentation

Maarten Wijnants Wim Lamotte

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Outline • Introduction • System Overview • Software Architecture • Bandwidth Distribution Algorithm • An Example Service: Video Transcoding • Evaluation • Test Application • Experimental Results • Conclusions & Future Work 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) 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 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 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) WoWMoM2007

  7. Software Architecture 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 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 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 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 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! 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 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 WoWMoM2007

  15. Evaluation:Experimental Results WoWMoM2007

  16. Evaluation:Experimental Results 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 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 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 WoWMoM2007

  20. Thank you for your attention!Any questions?

More Related