Windows Media Services研究

类别:软件工程 点击:0 评论:0 推荐:
1. 功能简介

Windows Media Services SDK包含以下组件:

 

组件

描述

Windows Media Unicast controls

提供一系列用于配置、监控和管理Windows Media单播服务的ActiveX控件。

Windows Media Station control

提供一系列用于配置、监控和管理Windows Media多播服务的ActiveX控件。

Windows Media Services Authentication API

提供一组COM兼容的API用于开发身份鉴别包,以便在用户访问基于Windows Media的内容之前对用户进行身份鉴别。

Windows Media Services Event Notification and Authorization API

提供一组COM兼容的API用于开发授权包,这样服务器在执行请求的任务之前可以先获得授权,并在任务完成之后发送通知。

Windows Media Services File Transfer Control

提供用于接收多播文件传输的ActiveX控件。

 

 

2. 详细介绍 2.1 Unicast controls

Windows Media单播服务(在Nsunimgr.ocx文件中)包含两个控件:Windows Media Unicast Admin和Windows Media Unicast TraceView

l           Windows Media Unicast Admin控件用于配置和管理Windows Media服务器;

l           Windows Media Unicast TraceView控件用于监控Windows Media服务器。

 

Windows Media Unicast Admin控件可以对运行单播服务的Windows Media服务器进行以下管理:

l           设置/获取服务器属性,如:最大带宽、最大客户数等;

l           监控服务器的行为,包括:连接、断开连接、播放等;

l           监控整个系统的活动,包括:服务器状态、服务器限制等;

l           过滤控件接收到的事件类型。

除了管理运行单播服务的Windows Media服务器之外,Windows Media Unicast Admin控件还管理用于提供各种服务的一系列对象。例如:client对象代表连接到服务器的一个客户;clients对象代表一系列client对象的集合;AuthenticationPlugin对象鉴别连接到服务器的客户。

 

Windows Media Unicast TraceView控件提供以下监控功能:

l           暂停/恢复事件监控;

l           清除事件日志;

l           选择监控的事件类型。可选择的事件类型包括:ServerClientAdminAlert 事件。

 

2.2 Station control

Windows Media Station 控件(在Nschmgr.ocx文件中)是一个管理Windows Media服务器多播的ActiveX控件。Windows Media Station 控件允许管理员配置广播/多播stations、启动/停止streams

具体而言,Windows Media Station 控件提供实现以下任务的功能:

l           创建、删除及管理stations

l           创建、删除及管理streams

l           创建、删除及管理clients

l           创建、删除及管理host addresses

l           创建、删除及管理Windows Media Station control objects

 

2.2.1 Windows Media Stations

每一个station定义一个stream的传输机制。station本身不包含媒体内容,但描述内容是如何被传输的。

 

2.2.2 Windows Media Station Streams

stream是定义多媒体内容的数据包。stream可以被启动、停止、关闭及重新启动。stream还包括源(source)、内容类型(content type)及相应的station

 

2.2.3 Windows Media Station Clients

每一个station与一个或多个client关联。一个client可以是Microsoft® Windows Media™ Encoder,或其它Windows Media Station control。一个client还可以是通过媒体流广播发布协议(MSBD, Media Streaming Broadcast Distribution)连接的Microsoft® Windows Media™ Player。甚至所有通过MSBD协议或HTTP协议连接的客户都是client

 

2.2.4 Windows Media Station Host Addresses

每一个station与一个host address相关联。该host address是用于广播内容的服务器网卡地址。

 

2.2.5 Windows Media Station Control Objects

Windows Media Station管理大量的对象,其中大部分对象是另外一些对象的集合。如下图所示:

 

图1. Windows Media Station管理的对象结构

 

2.3 Authentication API

Authentication API提供创建定制身份鉴别插件(authentication plug-in components,也称之为authenticators)的基础。

当客户向一个要求身份鉴别的服务器发起请求时,服务器会挑战客户以确定客户的身份。通常,这个过程等价于在不同的身份鉴别协议下检查用户帐号名称及密码。在任何给定的身份鉴别交互过程中,客户和服务器必须遵循同一身份鉴别协议。

Windows Media服务与身份鉴别插件捆绑在一起,使用身份鉴别插件来验证用户身份。身份鉴别插件是一些基于COM的对象。使用Windows Media Services Authentication API可以轻易创建新的身份鉴别插件。Windows Media服务与身份鉴别插件的交互过程如下:

 

 

图2. 身份鉴别过程

 

每一个身份鉴别插件实现一种身份鉴别协议。系统中可以注册多个身份鉴别插件,但同一时刻只能使用一个身份鉴别插件。

目前Windows Media Services和Microsoft® Windows Media™ Player支持两种内置的身份鉴别协议:

l           HTTP-BASIC

l           Microsoft® Windows NT® LAN Manager (NTLM)

其中NTLM类似于HTTP-DIGEST身份鉴别协议。

 

 

2.4 Event Notification and Authorization API

Event Notification and Authorization API用于创建事件通知和授权插件。这些插件使Windows Media服务器可以对播放的内容进行授权、监控服务器的状态及对事务进行审计。

授权(Authorization)是插件所使用的一种安全特征,可以准予或拒绝对被保护资源的访问。对于Windows Media服务,被保护的资源包括:PPV (Pay-per-View) Titles、PPM (Pay-per-Minute) Titles及一些敏感内容;另一方面,通知(Notification)是服务器所使用的一种特征,用于通知插件应该记录哪些事件,应该报告哪些信息。

Windows Media服务器使用插件来实现授权和通知,将这些任务委派给专门的插件来完成。Windows Media服务器支持同时运行多个不同的授权/通知插件,每个插件负责特定的事件集合。

通过使用Event Notification and Authorization API,你可以开发插件来实现广泛的授权相关的任务,如:

l           限制对被保护资源的访问;

l           实现对Windows Media服务客户的计账;

l           分析Windows Media服务的应用情况。

Windows Media服务与授权/通知插件的交互过程如下:

 

 

图3. 授权过程

 

2.5 File Transfer Control

File Transfer控件(在Nsfile.ocx文件中)是一个用于接收通过Internet/Intranet广播的文件的ActiveX控件。File Transfer控件支持两种传输模式:Multicast file transfersUnicast file transfers

文件接收者可以通过三种方式接收文件:

l           在发送者发送文件之前,启动一个文件接收操作以确保所有的文件传输完成;

l           调用FtsStartFileTransferReceive侦听文件传输;

l           等待直到发送者完成文件传输。

File Transfer控件可以通过事件通知接收者文件传输的状态及进展。

3. 分析

从上述功能介绍可以看出,通过身份鉴别,授权机制可以有效控制视频会议参加者可以接收的资源。但目前尚不清楚如何控制视频流发送者(即Encoder)。

另外,我们需要验证是否可以在广域网上实现多播或广播。

对Station Control需要进一步通过测试验证其功能。

本文地址:http://com.8s8s.com/it/it37556.htm