Linux流媒体服务器安装配置
随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频(Audio/Video,简称A/V)等多媒体文件时,基本上只有下载和流式传输两种选择。通常说来,A/V文 件占据的存储空间都比较大,在带宽受限的网络环境中下载可能要耗费数分钟甚至数小时,所以这种处理方法的延迟很大。如果换用流式传输的话,声音、影像、动 画等多媒体文件将由专门的流媒体服务器负责向用户连续、实时地发送,这样用户可以不必等到整个文件全部下载完毕,而只需要经过几秒钟的启动延时就可以了, 当这些多媒体数据在客户机上播放时,文件的剩余部分将继续从流媒体服务器下载。
由于受网络带宽、计算机处理能力和协议规范等方面的限制,要想从Internet上下载大量的音频和视频数据,无论从下载时间和存储空间上来讲都是不太现实的,而流媒体技术的出现则很好地解决了这一难题。目前实现流媒体传输主要有两种方法:顺序流(progressive streaming)传输和实时流(realtime streaming)传输,它们分别适合于不同的应用场合。
l 顺序流传输
顺序流传输采用顺序下载的方式进行传输,在下载的同时用户可以在线回放多媒体数据,但给定时刻只能观看已经下载的部分,不能跳到尚未下载的部分,也不能在传输期间根据网络状况对下载速度进行调整。由于标准的HTTP服务器就可以发送这种形式的流媒体,而不需要其他特殊协议的支持,因此也常常被称作HTTP流式传输。顺序流式传输比较适合于高质量的多媒体片段,如片头、片尾或者广告等。
l 实时流传输
实 时流式传输保证媒体信号带宽能够与当前网络状况相匹配,从而使得流媒体数据总是被实时地传送,因此特别适合于现场事件。实时流传输支持随机访问,即用户可 以通过快进或者后退操作来观看前面或者后面的内容。从理论上讲,实时流媒体一经播放就不会停顿,但事实上仍有可能发生周期性的暂停现象,尤其是在网络状况 恶化时更是如此。与顺序流传输不同的是,实时流传输需要用到特定的流媒体服务器,而且还需要特定网络协议的支持。
l 流媒体协议
实时传输协议(Real-time Transport Protocol,PRT)是在Internet上处理多媒体数据流的一种网络协议,利用它能够在一对一(unicast,单播)或者一对多(multicast,多播)的网络环境中实现传流媒体数据的实时传输。RTP通常使用UDP来进行多媒体数据的传输,但如果需要的话可以使用TCP或者ATM等其它协议,整个RTP协议由两个密切相关的部分组成:RTP数据协议和RTP控制协议。实时流协议(Real Time Streaming Protocol,RTSP)最早由Real Networks和Netscape公司共同提出,它位于RTP和RTCP之上,其目的是希望通过IP网络有效地传输多媒体数据。
目前市场上主流的流媒体技术有三种,分别是RealNetworks公司的RealMedia、Microsoft的Windows Media和Apple公司的QuickTime。这三家的技术都有自己的专利算法、专利文件格式甚至专利传输控制协议这三个关键要素在里面。本文就以Helix Universal Server 11为例介绍如何在Linux下构建流媒体服务器。图-1 是流媒体服务器构架。
图-1 流媒体服务器构架
二、理解单播和多播
1 单播
单播是客户端与服务器之间的点到点连接。“点到点”指每个客户端都从服务器接收远程流。只有当客户端发出请求时,才发送单播流。可通过点播或广播向客户端发布单播流。图2是单播示意图。
图2 单播示意图
2多播
多播是通过“启用多播网络”传 递的内容流;网络中的所有客户端共享同一流。以这种方式将流媒体内容转化为流的最大好处是可以节省网络带宽。通过将流媒体服务器安装到网络的每一部分,将 多播扩展到网络中没有启动多播的区域,这称为服务器分发。作为来自服务器的多播的一部分,可以分发该多播的单一的流给网络上其他部分上别的流媒体服务器。 服务器随即通过单播或多播提供流给那些网络部分,这称为“再分发”。通过将服务器连接起来,可以克服路由器不允许使用多播的问题。图3是多播示意图
图3多播示意图
三、安装、启动和停止Helix服务器
1 软件的获取
Helix Server是RealNetworks公司最新的流媒体服务平台,这个系统和微软的Window Media System不同,它并不是免费的,但在RealNetworks的网站(http://www.real.com ),还是提供有免费使用的Helix,不过有功能或时间上的限制。 这里笔者选用的是Helix Server Unlimited v11.0.1.1884 For Linux 。
2 软件安装
chmod +x helix-server-retail-11.01-rhel4-setup.bin
./ helix-server-retail-11.01-rhel4-setup.bin
Extracting files for Helix installation........................
Welcome to the Helix Server 11.0 (11.0.1.1884) Setup for UNIX
Setup will help you get Helix Server running on your computer.
[ Press [Enter] to continue... ]
#这里按回车继续#
If a Helix Server license key file has been sent to you,
please enter its directory path below. If you have not
received a Helix Server license key file, then this server
WILL NOT OPERATE until a license key file is placed in
the server's License directory. Please obtain a free
Basic Helix Server license or purchase a commercial license
from our website at http://www.real.com/. If you need
further assistance, please visit our on-line support area
at http://service.real.com/.
License Key File: []: 这是要许可证,可以先放下,等安装完再将许可证文件放入
Installation and use of Helix Server requires
acceptance of the following terms and conditions:
Press [Enter] to display the license text...
按回车继续显示协议文本,此处略过……
Choose "Accept" to accept the terms of this
license agreement and continue with Helix Server setup.
If you do not accept these terms, enter "No"
and installation of Helix Server will be cancelled.
I accept the above license: [Accept]:
#此处回车默认即可
Enter the complete path to the directory where you want
Helix Server to be installed. You must specify the full
pathname of the directory and have write privileges to
the chosen directory.
Directory: [/root/helixserver]: /usr/helixserver
# 更改安装路径
Please enter a username and password that you will use
to access the web-based Helix Server Administrator and monitor.
Username []:
# 设置远程管理用户名
Username []:Password []:
# 设置密码
Confirm Password []:
#重新确认密码
Please enter a port on which Helix Server will listen for
RTSP connections. These connections have URLs that begin
with "rtsp://"
Port [554]:
#此处回车默认即可
Please enter a port on which Helix Server will listen for
HTTP connections. These connections have URLs that begin
with "http://"
Port [80]:8080
#设置http传输端口,为避免和apache冲突,建议更改
Please enter a port on which Helix Server will listen for
MMS connections. These connections have URLs that begin
with "mms://"
Port [1755]:
# 此处回车默认即可
Helix Server will listen for Administrator requests on the
port shown. This port has been initialized to a random value
for security. Please verify now that this pre-assigned port
will not interfere with ports already in use on your system;
you can change it if necessary.
Port [11012]:11111
#更改远程管理访问的端口,系统默认的
You have selected the following Helix Server configuration:
Admin User/Password: traveller2/****
Encoder User/Password: traveller2/****
Monitor Password: ****
RTSP Port: 554
HTTP Port: 8080
MMS Port: 1755
Admin Port: 11111
Destination: /usr/helixserver
Enter [F]inish to begin copying files, or [P]revious to go
back to the previous prompts: [F]:
#如果以上设置你没意见,此处回车默认即可,否则按P重新设置
Copying Helix Server files....
Helix Server installation is complete.
If at any time you should require technical
assistance, please visit our on-line support area
at http://service.real.com/.
Cleaning up installation files...
Done.
# 安装完成
3 启动Helix流媒体服务器
(1)启动服务器
首先进入安装目录。使用命令在后台启动:
Bin/rmserver rmserver.cfg &
启动过程可以看到服务器版本和系统平台的信息,如下:
./Bin/rmserver rmserver.cfg
Helix Server (c) 1995-2005 RealNetworks, Inc. All rights reserved.
Version: Helix Server 11.0 (11.0.1.1884) (Build 74277/5688)
Platform: linux-rhel4-i686
Using Config File: rmserver.cfg
Linux kernel version 2.6.18-8.el5 detected [glibc 2.5/NPTL 2.5]
Starting PID 2727 TID 3086657232/2727, procnum 0 (controller)
Creating Server Space...
Server has allocated 256 megabytes of memory
Starting TID 3084909440/2729, procnum 1 (timer)
Calibrating timers...
Interval timer enabled (10ms resolution).
Starting TID 3082812288/2730, procnum 2 (core)
Starting Helix Server 11.0 Core...
1 CPU Detected...
Testing File Descriptors...
Setting per-process descriptor capacity to 672(1003), 21...
Testing Mutex...(401.61 ops/usec)
Testing AtomicOps...(33.81 ops/usec)
I: Loading Plugins from /root/vw/Plugins...
I: slicensepln.so 0xcb1ec0 RealNetworks Licensing Plugin
……
(2)监控服务器的进程
可以使用ps命令监控流媒体服务器的运行进程
#ps -ef|grep rmserver
root 3765 3655 0 15:13 pts/3 00:00:00 ./Bin/rmserver rmserver.cfg
root 3766 3765 1 15:13 ? 00:00:02 ./Bin/rmserver rmserver.cfg
root 3767 3765 0 15:13 ? 00:00:00 ./Bin/rmserver rmserver.cfg
root 3859 3818 0 15:15 pts/4 00:00:00 grep rmserver
说明:说明其中PID为3765是主进程,其他两个3766和3767是子进程。
(3)监控端口
可以使用命令监控流媒体服务器端口运行情况:
# netstat -ntulp | grep rmserver
tcp0 0 :::9090 :::*LISTEN 3766/rmserver
tcp0 0 :::7077 :::*LISTEN 3766/rmserver
tcp0 0 :::7878 :::*LISTEN 3766/rmserver
tcp0 0 :::4040 :::*LISTEN 3766/rmserver
tcp0 0 :::554 :::*LISTEN 3766/rmserver
tcp0 0 :::14170:::*LISTEN 3766/rmserver
tcp0 0 :::82 :::*LISTEN 3766/rmserver
tcp0 0 :::1755 :::*LISTEN 3766/rmserver
udp0 0 0.0.0.0:98750.0.0.0:* 3766/rmserver
udp0 0 0.0.0.0:32820 0.0.0.0:* 3766/rmserver
udp0 0 0.0.0.0:17550.0.0.0:*
说明:14170 即远程服务器管理端口。
(4)测试Helix服务器
推荐使用realone for Linux,实际上是RealPlayer在Linux上的克隆,甚至从性能上超过了RealPlayer。它支持相当多的视频、音频和图象格式,例如:SMIL 2.0, Ogg Vorbis, H.263 video, JPEG, GIF, PNG, MP3, AMR narrow band, AMR wide band, RA8, sipro, RV7, RV8, RV9, RV10, H263+, 3GPP rel5 SMIL 2.0等等。使用起来和熟悉的RealPlayer没有什么不同。官方主页:http://www.real.com/ ,用RealOne Player可欣赏网上在线音频和视频资料。主要功能包括:带有目标按纽,只需单击鼠标就可收听新闻和娱乐资讯;近乎CD一样的音频效果(只在28.8kbps或更快的连接速度情况下)全屏播放图象功能(只适用于高带宽连接情况)。其他功能包括:内容频道,自动升级功能,SmartStream技术消除了再次缓冲,查找媒介链接,支持MP3格式等。RealPlayer 8.0能精确地指向你所要的A/V程序,而且功能有所更新,包括内置Real.com媒体向导,新加入了“调台器”,能从2500个互联网在线电台中轻松找到你最喜欢的节目,给你全新的3D音效和视觉感受等。
安装后在播放器的地址栏输入Helix服务器的URL例如:rtsp://192.168.1.2/real9vedio.rm 。其中rtsp表示连接Helix服务器使用RTSP应用级协议,192.168.1.2是Helix服务器IP地址,当然也可以使用主机名称。如图-4 。
图-4 打开位置
图-6 测试文件在播放
使用方法:RealONE for Linux有一个主播放窗口,在文件选单中,分别有Open Location...和Open File...项,用这两项可打开要欣赏的文件。工具选单是RealONE最为庞大的选单,包含有很多功能如图-7。
图-7 Realone 工具选项
注意事项:使用Realone全屏播放不过效果要差一些。建议传输率小于200Kbps的RM视频文件,就不要使用全屏模式播放。使用快捷键“Ctrl+B”可以快速在原始大小和全屏之间自如切换。如果配合其他Linux流媒体工具使用,可将视频文件或VCD转换为RM格式文件保存。这样不但可以减小文件的容量,而且还可以自由编排、剪辑、制作DV。
(5)停止Helix服务器工作
由于Helix服务器没有提供服务器停止命令,所以只能通过使用传统的“Kill”来“杀掉服务器的进程”,使用命令:
#kill ‘cat ./Logs/rmserver.pid’
(6)系统启动时自动加载Helix服务器
如果想在启动Linux服务器时自动加载Helix服务。方法如下:开始菜单-首选项-更多首选项-会话-启动程序-增加-启动命令,右边的浏览指定确定。
四、 Helix流媒体服务器的Web管理页面
1 安装汉化软件包
Helix流媒体服务器的管理是基于web网页的,可以下载一个汉化软件包,让管理工作更加简单,该软件包可以在全国各大网站下载,安装比较简单。找到Helix Server安装目录下面的HelixAdministrator 目录,如果是默认安装,将该目录改名为HelixAdministrator_back.解压缩汉化包,可以看到一个同名的HelixAdministrator 目录,将解压出的目录拷贝到Helix Server的安装目录下。
2 登录管理员页面
在一台和流媒体服务器连接的主机上启动浏览器输入如下:
http://ip或者域名:端口号/admin/index.html
其中端口号是安装流媒体服务器时设置的。如图-8 。
http://192.168.1.2:14170/admin/index.html
图-8登录管理员页面
3 输入管理员的用户名和密码
下面浏览器会弹出一个对话框要求输入管理员的用户名和密码,如图-9 。
图-9 输入管理员用户名称和密码
4 完成登录
正确输入管理员的用户名和密码后,按“确定”按钮,即可完成登录。此时的管理页面已经是中文化的,如图-10 。
图-10 Helix管理员首页
5 查看流媒体服务器的基本信息
首先点击页面右上方“关于”按钮,查看流媒体服务器的软件版本信息,这里还可以看到管理端口等内容,主要是许可证文件(License)的对服务器功能做出的功能限制。明确当前使用的流媒体服务器的基本功能是重要的,对于进一步配置服务器非常有帮助。界面如图-11 。
图-11 流媒体服务器基本信息
22.2.3 Helix流媒体服务器的基本管理
1 服务器设置选项
Helix服务器设置选项一共十二个:端口、IP绑定 、MIME类型 、连接控制 、冗余服务器 、加载点、URL别名 、HTTP分发 、缓存目录 、延时关机 、用户/用户组名。下面我们详细介绍它们的配置。
l 端口
我们可以看到自上而下依次定义了各种不同类型的端口,包括RTSP, PNA, HTTP, MONITOR, ADMIN等端口,是因为在安装时已经设定好了,出于安全因素,管理端口在安装时被设定为一个随机值, 请校验您重新定义的端口是否系统现有的端口相冲突,在UNIX系统中,访问低于1024的端口的时候,你需要以管理员的身份登录,如图-12 。
图-12 流媒体服务器的端口设置
l IP绑定
当服务器被安装在一个拥有多于一个IP地址的系统上时,你需要指定服务器所使用的IP地址。下面列表中所定义的IP地址将被保留,仅供给服务器使用如果想保留系统中所有IP地址供服务器使用,那么请在下面地址列表中加入IP地址192.168.1.2, 同时删除其他IP地址,如图22-13 。
图22-13 流媒体服务器的IP绑定
l MIME类型
MIME类型列表确保了服务器可以正确的通过HTTP协议传送数据文件,建议不要更改下面列表. 如果你想通过HTTP传输的文件类型不在下面列表定义中,你可以添加新的MIME文件类型定义。
l Connecting Control(连接控制)
用来定义Helix Server有关连接的选项,从中我们在这里可以定义服务器的最大连接数,最大允许连接数(这个就是有授权所规定的),以及对用户播放器的限制, 比如仅限制Realplayer播放器使用,或者仅限制PLUS版本播放器使用等等.当然在这里还可以对服务的带宽进行限制,以保证同一台服务器上面的其他服务有足够的网络资源。
l Redundant Server(冗余服务器)
冗余服务器的配置页面包括:服务器列表,目录映射关系以及例外目录设置。
l Mount Points(配置加载点)
这里就是设置流媒体文件加载点。Helix Server 安装完成后,将自动生成三个载入点,即 Content、secure、fsforcache 。默认情况下,Content 指向安装目录下的“ content ”文件夹,该文件夹里的视频文件可以直接被访问。如果想将其他文件夹中的视频文件用于服务器播放,则需要设置新的加载点。单击“ + ”按钮添加新的载入点的描述(如 movie ),在“ Mount Point ”栏编辑加载点名称(如 /movie/),其将显示在链接地址中(如 rtsp://ip:554/movie/ 文件名)。加载点出现在Helix Server的每一个连接中它是一个到文件实际存放位置的 访问指向.下面的页面中将显示所有加载点以及它们所对应的实际存放路径,一个加载点都由斜线作为开始和结束的标志,唯一例外的是作为根加载点的时候,仅用一个"/"表示. 根加载点对应的是在服务器安装目录下面的Content子目录.你也可以根据自己的需要更改根加载点的位置以指向本地的其他媒体文件目录.设置界面如图-14 。
图-14 流媒体服务器的加载点配置
l 别名
别名用于在地址中替代真实文件名和目录路径.通过使用别名,你可以在发布地址时隐藏资源的真实路径. 同时,也可以让发布的地址变得更为简短。
l Http分发
Helix Server可以通过HTTP协议提供HTML的页面访问服务,同时控制经由HTTP协议访问的文件目录.下面的HTTP分发列表中定义的目录将被允许通过HTTP协议进行访问(同时包含它们的下级子目录)。
l 缓存目录
在默认情况下,所有的对流媒体文件的点播请求以及所有的广播文件都被缓存和分发到服务器和客户端之间的PROXY设备上. 当多个用户请求同一个文件的时候,他们就将之间从PROXY上读取,这样就节省了服务器的带宽占用.服务器的管理员或许希望他们中的一些不被缓存和分发到PROXY设备上,为了指明这些不需要缓存和分发的流媒体,下面的页面给出了设置信息.当设置"拒绝所有缓存请求的时候",服务器上所有的流媒体服务都将不被缓存和分发.
l 延时关机
包括四个选项:
1. 播放器中断间隔: 定义了播放器接受到服务器中断指令后到断开连接前的时间间隔。用户在到达这个时间后将被显示为正常情况的文件关闭状态(比如:文件播放结束,单击停止等).在这个过程结束后,服务器将中断到所有客户端的连接.
2. 关机进程时间: 定义了服务器估计的关机时间,一旦服务器发出了关机信息,用户可以在这段时间内关闭客户端,而当这个时间结束以后,服务器将不管用户端的连接状态而强行关闭所有连接.
3. 允许新的客户段连接: 允许在播放器中断间隔中接受新的客户端连接.
4. 记录播放器中断状态: 指定是否在日志中记录每个客户端的终端状态(成功或失败).
延时关机的设置界面如图-15 。
图-15 流媒体服务器的延时关机的设置界面
l 用户/用户组名
你必须以超级用户的方式登录才可以更改下面设置用户/用户组名。
2传输设置
流媒体服务器的传输设置包括两个部分:
l 区分服务:
同时使用区分服务,你可以指定那些运载流媒体数据的IP包的优先级。当这些数据包通过网络上支持区分服务的路由时,优先级将会影响到数据包的转发。你可以对流媒体包格式(RDT and RTP)和RTSP 控制协议指派不同的优先级. 其他协议(例如:HTTP,MMS)的数据包不受影响。
l 码率管理
码率控制特性使得服务器可以根据从播放器回馈的状态报告来调整分发数据流的大小。这些报告将使得服务器可以补偿由于网络阻塞所给用户带来的数据丢失。以下字段的更改将会影响到配置文件中有关默认码率的设置。
3 安全设置
安全设置包括:访问控制、用户数据库、用户认证、商业应用四个部分。图-16 是访问控制界面。
图-16 流媒体服务器的访问控制
l 访问控制
除了通过连接控制 来控制服务器的链接数目和带宽占用以外,你还可以建立基于IP地址和客户端链接的访问限制. 通过建立访问规则,你能允许或拒绝来自某一IP或某台机器对某个端口的访问请求. 如果用户访问一个地址被拒绝之后,将在客户端上将弹出出错框,显示"内容不可用。
l 用户数据库
服务器的商业特性将和用户认证特性一起发挥作用,数据库中可以存储定义对每个文件的访问权限. 为了进行对访问者的认证,服务器保存用户名和密码或者客户端的ID号,他们将和用户的许可权限相关联. 当客户端尝试访问一个文件时,服务器将查询该客户端是否被允许访问该文件.这些数据信息可以被存储到连续的文本文件中或存储在数据库内. 在服务器安装过程中,已经建立好通用的数据库模板。服务器可以选择两种方法保存数据:文本文件或者是数据库.采用文本文件方式时,将建立其相应的文本文件和目录结构来保存相应的数据信息.这是系统的默认选项. 在通常使用的数据库格式中,服务器采用和文本文件相类似模板来存储相关信息。
l 用户认证
域包含了用于认证的用户名和认证协议以及认证数据库的定义. 服务器可以采用三种方法来认证用户身份,分别是: Basic; RealSystem 5.0; 或 Windows NT 本地用户认证. 每个域只可以选择其中一种作为认证方式。
l 商业应用
服务器的商业特性将基于服务器的用户认证特性,在用户认证数据库中可以存储定义对每个文件的访问权限. 为了进行对访问者的认证,服务器保存用户名和密码或者客户端的ID号,他们将和用户的许可权限相关联. 当客户端尝试访问一个文件时,服务器将查询该客户端是否被允许访问该文件。
4日志和监控
日志和监控包括四个组成部分:服务器监控、基本日志、高级日志、SNMP。
l 服务器监控
服务器监控显示了当前的系统性能,以及运行中的连接数. 在这里你可以监控服务器的使用情况,谁在使用,什么时候服务器被最多的使用,以及哪些文件被最经常的调用,图-17 是服务器监控页面,在该页面中使用图表的方式反映流媒体服务器的工作状态非常直观。
图-17 流媒体服务器的监控
说明:要查看流媒体服务器的监控页面必须正确安装java语言支持。
l 基本日志
服务器以访问日志和错误日志的方式记录下所有媒体文件被请求的过程以及访问服务过程发生的故障. 您同时还可以记录下客户端的访问记录,所有的访问客户端都有唯一标识符供区别。
l 高级日志
高级的自定义日志允许您记录处理访问和错误日志以外更多的日志信息.同时也提供了多种方式来提交报告。
5 广播设置
广播设置包括:
l RealNetworks 编码
这是两种连接到服务器的直播方式中比较简单的一种方式. 基于帐号的广播允许Produer 9 模拟基于早期版本Producer到服务器的简单广播.同时支持从G2到8.5版本 。
l QT 和 RTP 编码
传送服务器用于将直播流发布到接收服务器上.当用户点击网页上指向接收服务器的连接时, 接收服务器替代传送服务器来向客户端提供更快更高质量的广播服务。传送服务器可以通过UDP,TCP 或者UDP多播的方式来传送广播,默认采用UDP单播方式.。
l Windows Media 编码
在进行Windows Media 广播的时候,Helix Server 从Windows Media 编码器(推荐为7.1版本) 以HTTP的连接方式获取数据流,并将数据流以MMS协议的方式分发给Windows Media 播放器. 一旦Windows Media 设置生效,服务器就随时可以进行直播.服务器向Windows Media 编码器发送类似Windows Media 播放器的第一次连接请求,从而获取流媒体文件, 你可以在直播开始前就在下面定义编码器选项, 为了能使Windows Media 播放器正常访问相应流媒体文件,服务器预配置了对MMS协议的支持,以及对多码流编码,Windows Media广播加载点和 Asxgen 加载点. 冗余广播 同样提供对Windows Media 广播的支持。
l 直播存档
你可以保存(或"存档")当前的直播文件用于日后的节目重播或者作为历史存档. 当直播存档功能启用以后,服务器将检查当前的直播流,同时和下面定义的直播存档对比文件名. 如果当前直播流和直播存档中配置的文件名相符合,则服务器将该直播流存档。
l 冗余广播
冗余广播允许你通过一路广播处理多路的直播源. 在默认的情况下,如果一路直播源停止了直播,那么所有的用户将被重定向到另外一个可用的直播流上,从而保证对用户的服务质量. 绝大多数用户采用RTSP的方式和服务器进行交流,冗余广播将被自动应用到这些用户连接上. 而采用PNM协议进行连接的用户,则需要手动重启这些连接.。
6 广播分发
广播分发包括以下配置:
l 传送服务器
传送服务器用于将直播流发布到接收服务器上.当用户点击网页上指向接收服务器的连接时, 接收服务器替代传送服务器来向客户端提供更快更高质量的广播服务. 传送服务器可以通过UDP,TCP 或者UDP多播的方式来传送广播,默认采用UDP单播方式。
l 接收服务器
一旦传送服务器开始直播流文件,接收服务器就从发送服务器中接收广播内容. 由于在接收服务器和发送服务器之间已经预先建立好连接,所以当客户端向接收服务器提出数据请求的时候, 广播内容将被迅速的发布到客户端上。
l 可扩展多播
在可扩展多播中,客户端和服务器之间不存在控制通道。由于这个原因,我们无法限制可以收到该种类型多播的用户数量。如果你需要在很大的一个范围内进行多播,可以采用这种方式的多播类型。
l 后台多播
后台多播建立了一个从客户端到服务器的TCP控制通道.当用户加入到多播组中时,数据流以UDP的方式进行多点传送. 您可以在需要用户认证时或者在一个中型多播组采用这种传送方式.。如果您删除后台多播中所有的客户端访问规则,那么服务器将自动生成一个默认的访问规则,它将允许所有IP地址的客户端进行多播连接。
l Windows Media多播
多播是以往直播形式的一种新选择,它允许多个客户端连接到一个给定的直播流上,从而节省带宽资源. Helix Server 可以提供对Windows Media 播放器的可扩展多播支持. 这种类型的多播基于基本的单播流。
l 会话声明
任何通过会话声明协议(SAP)监听的程序都能接收到你发布的可扩展多播内容. SAP包括用会话描述协议(SDP)传送的多播描述信息. SDP包括的事件包括多播地址,端口以及其他信息. 当SAP启用时, 服务器建立SDP信息并将它通过SAP发布. 服务器同时收集网络中其他的SAP信息,以避免重复同样的多播地址,图-18 是会话声明配置界面。
图-18会话声明配置界面
7内容管理
内容管理包括以下配置:
l 内容缓存
内容缓存将静态的内容动态的在两个或者以上服务器间进行传送. 你可以把访问文件实际存放的服务器作为内容发布服务器,而将其他缓存服务器作为内容订户服务器. 当用户请求文件不存在是,订户服务器以和客户端访问一样的方式从内容发布服务器获取相应媒体文件。图-19 是内容缓存配置界面。
图-19 内容缓存配置界面
l ISP集群
ISP集群提供了一个分派用户连接的方法. 如果你是一个互联网服务提供商(ISP),您可以代表您的客户来对流媒体进行管理. 以下是ISP集群的四个组成部分:
1. 用户列表文件, 描述帐户结构,以及各个帐户可利用的流媒体设置.
2. 服务器配置文件, 给出当前被访问的媒体文件的实际位置.
3. 媒体文件的存储目录.
4. 地址,被RealPlay用来指向媒体文件.
l 内容浏览
内容访问允许您快速的浏览,播放媒体文件以及查看存放在目录中文件源代码. 在下方设置可浏览的加载点以及可被浏览文件的扩展名.当用户访问需要认证的目录的时候同样需要输入密码进行用户认证。
l 查看代码
此项服务允许RealPlayer (7.0和以上版本)用户浏览当前 SMIL, RealText 和RealPix 文件的源代码,源代码将以自动生成的WEB文件显示给用户 用户同样可以接收其他数据文件类型的信息.当用户在播放器中选择"查看源代码"的选项时, 服务器将发送一个包含相应文件信息的页面给客户端,用户将在他的浏览器中看到这个页面.。 用户可以通过学习例子来了解如果建立他们自己的媒体片断.内容创建者在制作和复核自己的SMIL文件的时候,将会发现这个一个非常有用的特性。
通过以上6个大项29个小项的设置,Linux 流媒体的服务器的配置就介绍完了。
8 学会使用联机帮助信息
Helix流媒体服务器不仅有Web管理界面,而且提供了强大的联机帮助。点击文本管理页面的帮助按钮即可打开如图-20 。
图-20 流媒体服务器的联机帮助文档
您可以把/HelixAdministrator/Docs/Manual/目录中的所有文件复制到本地,这样就可以离线浏览了。