Streaming Support for.NET Remoting over Peer-to-Peer Environments.

Slides:



Advertisements
Similar presentations
Distributed Processing, Client/Server and Clusters
Advertisements

Database Architectures and the Web
Vector Processing. Vector Processors Combine vector operands (inputs) element by element to produce an output vector. Typical array-oriented operations.
Cooperative Overlay Networking for Streaming Media Content Feng Wang 1, Jiangchuan Liu 1, Kui Wu 2 1 School of Computing Science, Simon Fraser University.
Dynamic Adaptive Streaming over HTTP2.0. What’s in store ▪ All about – MPEG DASH, pipelining, persistent connections and caching ▪ Google SPDY - Past,
A Peer-to-Peer On-Demand Streaming Service and Its Performance Evaluation Presenter: Nera Liu Author: Yang Guo, Kyoungwon Suh, Jim Kurose and Don Towsley.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map.
Scalable and Continuous Media Streaming on Peer-to-Peer Networks M. Sasabe, N. Wakamiya, M. Murata, H. Miyahara Osaka University, Japan Presented By Tsz.
Introducing: Cooperative Library Presented August 19, 2002.
Extensible Scalable Monitoring for Clusters of Computers Eric Anderson U.C. Berkeley Summer 1997 NOW Retreat.
Edward Tsai – CS 239 – Spring 2003 Strong Security for Active Networks CS 239 – Network Security Edward Tsai Tuesday, May 13, 2003.
Previous and Ongoing Research. Component Remoting Technology Map.
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
Brief Overview of.NET Remoting.NET Remoting is a Java RMI-like remote method invocation mechanism Infrastructure of.NET Remoting is highly customizable.
1 An Overlay Scheme for Streaming Media Distribution Using Minimum Spanning Tree Properties Journal of Internet Technology Volume 5(2004) No.4 Reporter.
Proxy Cache Leonid Romanovsky Olga Fomenko Winter 2003 Instructor: Konstantin Sinyuk.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
MULTICOMPUTER 1. MULTICOMPUTER, YANG DIPELAJARI Multiprocessors vs multicomputers Interconnection topologies Switching schemes Communication with messages.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
Chapter 3 Database Architectures and the Web Pearson Education © 2009.
Software Development Architectures Ankur K. Rajopadhye Louisiana Tech University.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
NETWORK Topologies An Introduction.
DEMIGUISE STORAGE An Anonymous File Storage System VIJAY KUMAR RAVI PRAGATHI SEGIREDDY COMP 512.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Java SNMP Oplet Tal Lavian. Goals Portable across a range of devices Extensible Simple and convenient for client use Consistent with SNMP model Hide unnecessary.
Session 26 Modeling the Static View: The Deployment Diagram Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 27, 2011 Presented.
BitTorrent enabled Ad Hoc Group 1  Garvit Singh( )  Nitin Sharma( )  Aashna Goyal( )  Radhika Medury( )
Querying Large Databases Rukmini Kaushik. Purpose Research for efficient algorithms and software architectures of query engines.
DBAS: A Deployable Bandwidth Aggregation System Karim Habak†, Moustafa Youssef†, and Khaled A. Harras‡ †Egypt-Japan University of Sc. and Tech. (E-JUST)
MobileMAN Internal meetingHelsinki, June 8 th 2004 NETikos activity in MobileMAN project Veronica Vanni NETikos S.p.A.
The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte.
Chapter 2: System Models. Objectives To provide students with conceptual models to support their study of distributed systems. To motivate the study of.
Jump to first page One-gigabit Router Oskar E. Bruening and Cemal Akcaba Advisor: Prof. Agarwal.
1 Network Emulation Mihai Ivanovici Dr. Razvan Beuran Dr. Neil Davies.
Chapter 8-2 : Multicomputers Multiprocessors vs multicomputers Multiprocessors vs multicomputers Interconnection topologies Interconnection topologies.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside
A P2P-Based Architecture for Secure Software Delivery Using Volunteer Assistance Purvi Shah, Jehan-François Pâris, Jeffrey Morgan and John Schettino IEEE.
Multimedia Information System Lab. Network Architecture Res. Group Cooperative Video Streaming Mechanisms with Video Quality Adjustment Naoki Wakamiya.
July 12th 1999Kits Workshop 1 Active Networking at Washington University Dan Decasper.
Link Layer Support for Unified Radio Power Management in Wireless Sensor Networks IPSN 2007 Kevin Klues, Guoliang Xing and Chenyang Lu Database Lab.
Performance Evaluation of the IEEE MAC for QoS Claudio Cicconetti, Alessandro Erta, Luciano Lenzini, and Enzo Mingozzi IEEE Transactions On Mobile.
FlowLevel Client, server & elements monitoring and controlling system Message Include End Dial Start.
SOMA Service-Oriented Mobile learning Architecture Fabian Kromer Andreas Kuntner
1 Pass-By-Value Services in Object Component Software Group 1 Yannick Loitiere Andrea Rowan Michele Co Jinze Liu.
DECADE Requirements draft-gu-decade-reqs-05 Yingjie Gu, David A. Bryan, Y. Richard Yang, Richard Alimi IETF-78 Maastricht, DECADE Session.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Database Architectures and the Web
Introduction to Load Balancing:
Action Breakout Session
Self Healing and Dynamic Construction Framework:
Chapter 12: File System Implementation
COP3530- Data Structures Advanced Lists
File System Implementation
Database Architectures and the Web
Load Balancing: List Scheduling
Green Internet Reducing Energy Consumption by Global System Operation Scheduling Top of the line CISCO CRS-1 20 J/Gb (watt per Gb/s) 1)Decoding 2)Buffering.
Outline Midterm results summary Distributed file systems – continued
Designing an Intervention
Chapter 15: File System Internals
Implementation support
Designing an Intervention
Load Balancing: List Scheduling
Performance-Robust Parallel I/O
Calypso Service Architecture
Implementation support
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Streaming Support for.NET Remoting over Peer-to-Peer Environments

Software Architecture Add streaming ability while keeping the advantages of.NET Remoting Add streaming ability while keeping the advantages of.NET Remoting Some components are inserted into conventional.NET Remoting architecture Some components are inserted into conventional.NET Remoting architecture Custom proxy Custom proxy Streaming controller Streaming controller Streaming buffer Streaming buffer Continuous buffer Continuous buffer Loader Loader Loader

Aggregation Mechanism When is it possible? When is it possible? When there are multiple related streaming sources in the network When there are multiple related streaming sources in the network Why do we need aggregation? Why do we need aggregation? Load balancing and sharing Load balancing and sharing Resource provided by a single node is not enough Resource provided by a single node is not enough To gather different streams and aggregate them into a single stream before presenting to application layer To gather different streams and aggregate them into a single stream before presenting to application layer We provided some APIs for developers to customize their aggregation mechanism We provided some APIs for developers to customize their aggregation mechanism First we focus on how to retrieve “ same data stream ” from different servers efficiently First we focus on how to retrieve “ same data stream ” from different servers efficiently

Notations A set of supplying nodes A set of supplying nodes S = {s i | i = 1 … n} S = {s i | i = 1 … n} A set of data blocks A set of data blocks D = {d j | j = 1 … m} D = {d j | j = 1 … m} For each supplying node s i For each supplying node s i Supplying bandwidth: r i of s i Supplying bandwidth: r i of s i A set of data blocks existed in s i : Blocks(s i ) A set of data blocks existed in s i : Blocks(s i ) Completeness of data in s i : Completeness(s i ) Completeness of data in s i : Completeness(s i ) The amount of content: k i The amount of content: k i Bandwidth requirement: Req[d j ] Bandwidth requirement: Req[d j ] Bandwidth Allocation Table: BAT mxn Bandwidth Allocation Table: BAT mxn

Weight Evaluation In our proposed algorithm, we evaluate weight of each available source to decide their priorities In our proposed algorithm, we evaluate weight of each available source to decide their priorities 3 factors are considered: 3 factors are considered: The supplying bandwidth The supplying bandwidth The completeness of the stream The completeness of the stream The amount of content The amount of content Completeness(s i ) = size(Blocks(s i )) / size(D) Completeness(s i ) = size(Blocks(s i )) / size(D) Weight(s i ) = α* r i + β* Completeness(s i ) + γ*(1/ k i ) Weight(s i ) = α* r i + β* Completeness(s i ) + γ*(1/ k i ) local global

Aggregation Algorithm function BandwidthAllocation(S) // Evaluate weight of each data source for i = 1 to n do Weight(s i ) =α* r i + β* Completeness(s i ) + γ*(1/ k i ) sort the list S by weight of each data source in decreasing order // Bandwidth allocation for i = 1 to n do // for each node for j = 1 to m do // for each block in node s i if Req(d j ) > 0 and IsContained(d j, Blocks(s i )) BAT(i, j) = MIN(r i, Req[d j ]) Req[d j ] = Req(d j ) – BAT(i, j) if every element in Req is 0 break // Break the for loop

s1s1 s2s2 s3s3 20Kb/s 40Kb/s If Weight(s i ) = (1/20)* r i + (1)* Completeness(s i ) + (0)*(1/ k i ) γβα Weight(s 1 ) = = 1.67 Weight(s 2 ) = = 1.67 Weight(s 3 ) = = 3 s1s1 s2s2 s3s3 Sort by weight in decreasing order 20Kb/s 40Kb/s Allocate bandwidth s1s1 s2s2 s3s3 20Kb/s 40Kb/s Bandwidth requirement = 60Kb/s

Experiment The simulation result The simulation result

Software APIs A simple streaming client A simple streaming client

Software APIs (Cont.) IScheduler and IOperator provides interfaces for users to customize aggregation scheduling policies and operations IScheduler and IOperator provides interfaces for users to customize aggregation scheduling policies and operations

Progress What is done What is done Simulation of proposed aggregation algorithm Simulation of proposed aggregation algorithm Specification of APIs Specification of APIs Working on.. Working on.. Implementation of aggregation mechanism Implementation of aggregation mechanism