35
111/06/23 1 Virtual Media Center: A Generic Virtual Media Center: A Generic Architecture for Distributed Video- Architecture for Distributed Video- On-Demand Services On-Demand Services Date: 30 April 2004 Presented by: Lee KaYan,Sunny Supervisor: Prof. Michael R. Lyu Department of Computer Science & Engineering The Chinese University of Hong Kong Master of Science in Computer Science

Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

Embed Size (px)

DESCRIPTION

Department of Computer Science & Engineering The Chinese University of Hong Kong Master of Science in Computer Science. Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services. Date: 30 April 2004 Presented by: Lee KaYan,Sunny Supervisor: Prof. Michael R. Lyu. - PowerPoint PPT Presentation

Citation preview

Page 1: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 1

Virtual Media Center: A Generic Architecture for Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand ServicesDistributed Video-On-Demand Services

Date: 30 April 2004

Presented by: Lee KaYan,Sunny

Supervisor: Prof. Michael R. Lyu

Department of Computer Science & Engineering

The Chinese University of Hong Kong

Master of Science in Computer Science

Page 2: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 2

OutlineOutline

Motivation Related Work Virtual Media Center (VMC) Services Characteristics Technologies Used: Web Service and

CORBA System Architecture Implementation Details Future Works and Enhancements

Page 3: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 3

MotivationMotivation

VOD is a bandwidth demand, the capacity of concurrent users is limited at present network equipment and technologies. A simple and efficiency server selection mechanism is needed

Multimedia technologies such as compression, security and streaming protocol may change in the future. A framework to provide multimedia streaming service with the capability to adapting technologies change is needed

To implement a application called “Virtual Media Center” under this framework

Page 4: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 4

Related WorkRelated Work Video-on-Demand (VOD)

– VOD is a service that allow users to view any video at any time and can use VCR-like functions

– Currently, the most popular and cheap technology for VOD is streaming over Internet

Distributed Systems– Common VOD architectures are distributed systems (DVOD)– Distribution can be distributed system components,

distributed streaming servers, distributed media content and distributed transmission source (stripping)

Major solutions on DVOD– Replicate strategy for video content– Metrics based streaming server selection– Set-Top box for buffering, caching and decryption

Page 5: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 5

Virtual Media Center (VMC) ServicesVirtual Media Center (VMC) Services

Video Streaming for VODReal-time TV Real-time Web CamAd hoc streamingAuto server selectionCORBA API Web service API

Page 6: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 6

CharacteristicsCharacteristics

Distributed server architectureCORBA and Web service interface

between serverIntegration of heterogeneous

streaming technology and systemBy pass firewallWeb user interface

Page 7: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 7

Technologies used: Web Service and CORBATechnologies used: Web Service and CORBA

Why CORBA–Middleware for heterogeneous network,

computer hardware, operating system and programming language

– Best for interface between heterogeneous streaming server among different technology or content provider

– Drawback: difficult to pass firewall in distributed environment

Page 8: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 8

Technologies Used: CORBA and Web ServiceTechnologies Used: CORBA and Web Service

Why Web service– Can pass firewall – Best for interface between VMC and

different content providers– API for Web application– Best for remote administration,

monitoring etc.– Provide catalogue to remote Web server

Page 9: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 9

System ArchitectureSystem Architecture

Roles in VMC: System operator Content Provider Subscriber

Content Provider Content Provider

VMC Operator

Subscriber

Page 10: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 10

System ArchitectureSystem Architecture

Components in VMC: Web server – provide

catalogue of media content to subscriber

Database server – provide information storage

Streaming server – provide multimedia content storage and streaming to subscriber

Web server

Streaming server

Database server

Page 11: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 11

System ArchitectureSystem Architecture

Scenario for VOD: One central Web

server for Internet access

Many streaming server distributed in different geographic location for load balancing

Subscribers are scattered in the Internet

Web server

Streaming server

Streaming server Streaming serverSubscriber

SubscriberSubscriber

Page 12: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 12

System ArchitectureSystem Architecture

Scenario for Real-time broadcast:

Use Audio/Video capture device such as Web Cam or TV turner card

Web Cam or TV turner card can directly connected to streaming server

Web server

Streaming server

Streaming server

Subscriber

TV Antenna connected to

TV turner card

Web Cam

Page 13: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 13

System ArchitectureSystem Architecture

Scenario for Mobile user: Remote Web server for

Mobile device Consume catalogue

from VMC through Web service API

Choice best streaming server to delivery content by Remote Web server

Streaming server

VMC Web Service

Remote Web Server Wireless Access point

3G Device

Smartphone

Notebook

Page 14: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 14

System ArchitectureSystem Architecture

Scenario for ad hoc multimedia streaming:

Ad hoc streaming source registration through Web service API

Mobile user can real-time broadcast through wireless network

Suitable for news broadcast, remote monitoring etc.

Notebook

Web Cam

Streaming server

VMC Web Server

Web Service API

Page 15: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 15

System ArchitectureSystem Architecture

Scenario for local and remote servers:

CORBA within firewall Web service outside

firewall For distributed

streaming servers For independent

content providers to contribute their own streaming servers

Router

Firewall

Streaming server

VMC Web Server

Web Service

CORBA

Firewall

Router

Streaming server

Page 16: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 16

System ArchitectureSystem Architecture

Scenario for real-time server selection:

Round-Trip Time (RTT)

Server CPU utilization Server allocated

bandwidth Server connected

clients

VMC

Streaming serverStreaming server

CPU Utilization, Allocated Bandwidth and Connected Clients

Subscriber

Round-Trip Time (RTT) information

RTT Function Call RTT Function Call

Page 17: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 17

System ArchitectureSystem Architecture

Scenario for RTT Collection: Optimal

– Between subscriber and streaming server

– Need subscriber accept mobile code or install RTT client

Less optimal– Between remote Web server and

streaming server– Remote Web server should

located near subscriber– Remote Web server responsible

collect RTT and update to VMC periodically

– No mobile code or install RTT client to subscriber

– Best solution for mobile subscriber

VMC

Remote Web Server

Streaming server

Streaming server

Mobile Subscriber

RTT

RTTRTT

RTT

Mobile code or RTT Client Installed

Collect RTT periodically

Page 18: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 18

System ArchitectureSystem Architecture

A Generic Implementation Architecture

Page 19: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 19

System ArchitectureSystem Architecture

Logical Components

Client Application

Streaming Server RTT

Clie

nt

Virtual Media Center

Web ServiceStreaming Service Web Server

Server Status MonitorCORB

A-O

RB

CORB

A-O

RB

CORB

AN

amin

g Se

rvic

e

Web

Ser

vice

Cl

ient

RTT

Serv

er

Resources Monitor(CPU Loading, Allocated

bandwidth and Connected Client)

HTTP

SOAP

SOA

P

Remote Web Server

Catalogue Viewer

HTT

P, H

TTPS

Media Streaming Player

Web

Ser

vice

Media Catalogue

HTT

P, R

TSP,

MM

S

Media Content

Reso

urce

s Met

rics

Database Server

Media Archive

TV Turner Card

Auidi/Video Capture HW RTT Metric

Distributed Location * Multiple Instances

*

*

*

Page 20: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 20

ImplementationImplementation

Client Application: Microsoft Windows

Streaming Server: Windows Server 2003

.NET

Re

mot

ing

Virtual Media Center: Windows XP Professional, IIS 6, ASP.NET

Web ServiceStreaming Service: Windows Media Service 9

and Windows Media EncoderWeb Server

Server Status Monitor:C#.NETCO

RBA

-ORB

: om

niO

RB

CORB

A-O

RB:

omni

ORB

CORB

A N

amin

g Se

rvic

e: o

mni

Nam

es

C#.N

ET.N

ET

Rem

otin

g

Resources Monitor(CPU Loading, Allocated

bandwidth and Connected Client):Web Services - C#.NET

OrCORBA-VC++7.0

HTTP

SOAP

SOA

P

ASP.NET Mobile

IE 6 or Above

HTT

P, H

TTPS

Windows Media Player 9 Series

Web

Ser

vice

Media Catalogue

HTT

P, R

TSP,

MM

S

Media Content

Reso

urce

s Met

rics

Database Server:

MS SQL Server

Media Archive: *.WMV

TV Turner Card: TVB

Auidi/Video Capture

HW: Web Cam

RTT Metric

Distributed Location * Multiple Instances

*

*

*

Page 21: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 21

Implementation DetailsImplementation Details

Database structure in SQL server 2000:

Page 22: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 22

Implementation DetailsImplementation Details

In VMC server: Web Server

– Windows 2003 Server– Internet Information Server 6– ASP.NET 1.1

Web Service– Visual Studio .NET 2003 C#

VMC Monitor (e.g. Collect RTT, server status etc.)– Visual Studio .NET 2003 C#– .NET Remoting

Database server– SQL server 2000 MSDE version

CORBA Naming Service– omniORB Naming Service

CORBA server object (for streaming server CPU utilization, allocated bandwidth and connected clients update)– omniORB ORB + VS.NET 2002 VC++ 7.0

Page 23: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 23

Implementation DetailsImplementation Details

In Streaming server: VOD service

– Microsoft Windows Media Server 9– HTTP, MMS and RTSP– Windows Media File format (*.wmv)

Real-time broadcast for TV and Web Cam– Windows Media Encoder

RTT Server– Visual Studio .NET 2003 C#– .NET remoting– Windows service

CPU utilization, allocated bandwidth and connected clients update– CORBA client: omniORB ORB + VS.NET 2002 VC++ 7.0– Web service client: VS.NET 2003 C#

Page 24: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 24

Implementation DetailsImplementation Details

Remote Web Server: (for Wireless Mobile Device, Pocket PC version) Web Server

– Windows 2003 Server– Internet Information Server 6– ASP.NET 1.1

Pocket PC requirement– Microsoft Pocket PC 2003– Windows Media Player 9

Development and testing– Visual Studio .NET 2003 C#– ASP.NET 1.1 Mobile Control– .NET compact framework 1.1– Pocket PC 2003 Emulator– Pocket PC 2003 Phone Edition Emulator

Page 25: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 25

Implementation DetailsImplementation Details

Programs in VMC server: omniNames VMC_impl VMCMonitor

Page 26: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 26

Implementation DetailsImplementation Details

Programs in streaming server: WMSMonitor VSSMonitor Windows Service

Page 27: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 27

Implementation DetailsImplementation Details

System Monitoring Tool: S (s.exe)

Syntax:

s <serverid> [<serverip>]

e.g. s 0

(0 means display the run-time information for all servers)

Page 28: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 28

Implementation DetailsImplementation Details

Subscriber Interface:

VMC Home Page

Page 29: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 29

Implementation DetailsImplementation Details

Subscriber Interface:

Catalogue Page

Page 30: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 30

Implementation DetailsImplementation Details

Subscriber Interface:

Catalogue Page -

Filter Functions

Page 31: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 31

Implementation DetailsImplementation Details

Subscriber Interface:

Select Server Page

Page 32: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 32

Implementation DetailsImplementation Details

Subscriber Interface:

VOD Session Page

Page 33: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 33

Advantage and DisadvantageAdvantage and Disadvantage Advantage

– CORBA and Web Service are well defined standard– Independent to individual streaming technologies– Web Interface for multiple devices: PC, mobile notebook,

Pocket, Palm, 3G phone or Smart phone etc.– Real-time server selection– RTT independent to any underlying network path selection

algorithm and easy to implement Disadvantage

– Subscriber must installed a build in streaming player in Web browser to decode the target streaming

– Remote Web server must located nearest to subscriber to obtain the best RTT estimation for subscriber

– Streaming quality and concurrent connections are still limited to underlying bandwidth, compression technology and network equipment

Page 34: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 34

Future Works and EnhancementsFuture Works and Enhancements

Implementation– Interoperability between different ORB– Mobile code for RTT client– Native player install in subscriber device– Test remote Web server for mobile device on real device– Publish Web service on UDDI directory

Testing– Stress test on efficiency of RTT, CPU utilization,

allocated bandwidth and connected clients– Improvement of concurrent clients capacity on real-time

server selection

Page 35: Virtual Media Center: A Generic Architecture for Distributed Video-On-Demand Services

112/04/19 35

End of Presentation

Thanks !