三、架设流服务器 流文件弄好以后,接着就该把流服务器安装设置好。这可是最关键的一步,别睡觉,用心看着。说你呢,看流媒体文章的那位!^_^ 我们采用最新的HELIX UNIVERSAL SERVER,其实就是Realserver 9,改了个很有创意的名字,中文的意思就是螺旋。不知道Realnetworks为什么用这个名字。大家从http://www.realnetworks.com上下载好了。填上2个表格,然后就可以了。其中你妹(e-mail) 的名字可千万不要写错,写错了可是收不到证书的J。偶得提醒一下:Realnetworks会提供N多个(N>10)下载站点,根据个人的经验:最好选择扶桑国『就是日本啦,好像东瀛也是它』的服务器,理由就是那个服务器的速度很快。而本土上海的服务器基本上就没有东西。 注意: (1)一定得从这里下载,从别的地方下载的是不能转起来的(估计这回也没有什么网站会提供下载)。因为Realnetworks这回采取了必须认证这个策略。就是说如果没有license,你是没有办法安装的,更不要说运行了(Realserver 8没有证书理论上是可以的,但实际上……)。 (2)下载后就该马上安装。因为我们的证书只有30天的作用(从证书发出的时刻开始计算L)。 安装没有什么好讨论的。不过有几个地方倒是要注意一下: (1)关闭病毒防护程序和防火墙。看看你的机器是不是正在winNT/2000/XP下运行,如果不是,你得切换到他们3者之一下。2000和XP要是专业版(professional),最好是服务器版(server)。 (2)安装到第二步(就是紧挨着欢迎画面后面的那一个了),要求提供证书。由于证书是压缩的,所以最好在安装以前将证书解压。到这里选择正确的证书路径就可以了。如下图所示。 
(3)到了第N步的时候(实在记不得是第几步了),会要求输入一个用户名和密码。用户名和密码你得记住了。如果可爱的你忘记了,那就只要卸掉服务器,从头再来一次!如下图所示。 
(4)接着往下走,下面就是设置pnm端口、rtsp端口、http端口。前面的两个就不要动它了。最后这个http采用的是80端口,这可是web服务器的http服务端口,正是因为如此,所以Realnetworks建议不要在流服务器上安装web服务器。其实,流服务器的负载都是很重的,如果再加上web服务,那么服务器肯定罢工。 (5)接下来的端口就是mms的,这可是大块头微软的!Realnetworks海纳百川,有容乃大,照样支持,真的不简单。而有的流服务器凭借平台优势对于Realnetworks意欲封杀,对于rm格式是不支持的。可叹!可悲!!加上可怜!!! (6)下面一路next就行了。 配置服务器 如果没什么意外的话,安装过程应该非常顺利。 这时安装程序会在桌面上创建两个快捷方式:一个是helix server的;一个是helix server管理的web页面。 首先运行helix server『双击就是了,然后命令提示对话框淅沥哗啦滚动一番以后就行了』,接下来打开helix server管理的web页面。 最先就是欢迎词,看看写的不错哦!不过下面才是最要紧的。 1、设置服务器(Server Setup) A、 端口管理(Ports) 首先出来的就是端口一览表。如下图所示 
l RTSP端口就是实时流传输协议(Real time Stream Protocol)端口。这个可是最重要的,以后所有点播和直播的数据都是从这里的。默认的是554端口,记住了是554! l 下面一个重要的端口就是监视(monitor)端口,它是用于监视当前服务器的状态的,例如有多少人在观看,有多少个文件被调用等。 l 管理(admin)端口是随机产生的,目的就是为了防止黑客攻击。也许你的运气不错今天就碰上了8888这个端口(6666也很好)。以后大家就是通过这个端口来管理流服务器。 B、 绑定IP(IP Binding) 上面我们提到了:Realnetworks建议不要在同一机器上同时安装流服务器和WEB服务器因为那将存在端口80的冲突。为了解决这个问题。我们可以: l 把WEB服务的端口改成一个非标准的,也就是使用非80端口。所以在web页的URL上你必须给出修改后的、非标准的WEB端口,要不然浏览器是没有办法和WEB服务器通信的。修改端口这种方法这将给后面的工作带来很多的不便。 l 如果兄台的服务器非常非常之好,用的是SUN的超级工作站,同时充当流服务器和WEB服务器就是轻松加愉快。那么就请安装2块网卡,每个网卡指定一个IP。将其中一个IP指定给HELIX UNIVERSAL SERVER,另一个分配WEB服务器。这样HELIX UNIVERSAL SERVER和WEB服务器可以都用80端口进行通信了『撞车的情况就不会发生』。这里就得对IP进行绑定。如下图所示。 
注意:绑定IP地址或者修改IP, 都需要重新启动HELIX UNIVERSAL SERVER『重启的地方看到了么?不就在右上角有个Restart Server么?^_^』。 C、 指定类型(MIME Type) 为了保证流数据经http协议传输不会出问题,必须得告诉HELIX UNIVERSAL SERVER如何正确的识别文件类型。如下图所示。 
一般情况下,就不要动它了『因为默认的都是配置好的』。如果你想传送的类型在上面的列表中没有的时候,才可修改它。但是,不是所有的类型都得指定的,例如流文件*.rm,如果你也在这里指定那就不对了。这里只是针对http协议! D、连接控制(Connection Control) 点击左边的Server Setup>Connection Control,弹出连接控制管理窗口。如下图所示。 
在这里你可以规定最多连接用户数,就是允许的同时最大链接数。规定的目的在于不让服务器超载,免得服务器“趴窝”。这个数字不能超过你的证书允许的数字。偶的就是10个,你的肯定也是10个,估计大家都是10个!0就是没有限制。也许有人要问了:证书最多允许多少个?反正我见过10000个的J。那不是Helix Server的,是Real server 8的,即使是8的,也不是我的L。到了这里我想起来了:Helix server采用的全新的认证算法,以前的证书对于Helix server都是无效的! 设置是否对RealPlayer的访问进行限制。同仁们都清楚RealPlayer是有Basic和Plus两个版本的,前者free,而后者是要收银子的L。大家看自己的实际情来定吧,建议是不要限制。 最下面就是限制带宽了。必要的时候还是的限制一下,以让更多的用户可以分享精品艺术或者体会竞技精神。例如不得高于450K! 设置完了,记得重启。^_^ E、 冗余服务器(Redundant Server) 这部分的内容是为高级用户准备的,但是偶想读者中将来肯定有当大型直播网站的admin的,所以我有责任向大家介绍这部分内容。 为了解释这个冗余服务器的概念,我们看看下面这张图。 
可以看出:主服务器和备用服务器上的内容是完全一样的。如果服务器设置了冗余服务器,那么在服务器和Realone开始建立链接的时候,服务器会发送给Realone一份冗余服务器列表。如果主服务器瘫痪,Realone就随机从列表中选一个服务器继续传输流文件。这对用户是透明的,他基本上就不会知道主服务器坏了。不过也许感到速度和效果没有前面好。 这在大型的点播服务特别是直播上特别有市场。 注意:冗余服务器只是在Realone Player及其以后的版本中能用,早期的Real Player版本和其他的媒体播放器是不行的。 设置冗余服务器时的注意: 备用的服务器上的内容和主服务器上的内容最好是一样的。无论是点播的还是直播的。但是,如果不是完全一样,那在设置重定向规则时可能就得麻烦一点。 冗余服务器的设置应该在多个服务器上进行。例如我们有甲、乙和丙三个服务器,想让他们成为冗余服务器。那么甲服务器的后备服务器就是乙和丙,它的后备服务器列表中就是乙和丙;而乙服务器的后备服务器列表中就是甲和丙;丙服务器的后备服务器列表中就是甲和乙。开始的时候,3个服务器均衡的向Realone提供服务。如果甲服务器突然“趴窝”了,那么原来甲的用户将转向乙和丙,播放器Realone随机选择乙和丙,这样有利于乙和丙负载的均衡。 设置如下图: 
图中: Description就是对备用服务器的简单的描述 Host当然是备用服务器的IP地址 Port就是RTSP端口 点击加号添加多个备用服务器。点击垃圾桶图标删除选中的备用服务器。 编辑规则路径( Edit Rule Path)就是指定备用服务器的重定向规则。“/”表示和主服务器完全一致。规则定好以后就得选择“Add Alternate Server To Rule”,告诉HELIX UNIVERSAL SERVER,对那个备用服务器应用该规则。 F、 设置Mount Points 哎呀,真的不知道Mount Points在中文中该怎么说L,所以偶就回避了这个问题。没有反对的吧?^_^这里就是设置流文件的地址。默认的是C:\Program Files\Real\Helix Server\Content。我们可能所有的流文件都放在X:\stream下, 所以得改改。如下图所示。
Mount Points还有其他的用处,我们在后面合适的地方将会进一步解释这个问题。 G、 设置HTTP传输(HTTP Delivery) 如果我们在网页上做了链接连接到流服务器上的流文件,如果不想用rtsp协议,那么就得用http来解决问题。有的用户的机器上安装了非常安全的防火墙,例如诺顿(我帮他做广告,它是不是得给我点广告费?),那么RTSP就可能无法发挥作用,这时就该HTTP上场了。我们这里设置的正是那些目录可以通过HTTP传输。如下图所示。
H、 设置缓冲指令(Cache Directives) 缓冲固然是好东西,但是有时候就不那么受欢迎了。例如我们做一个世界杯直播(就是2002年巴西和德国的那场)。如果允许缓冲,呵呵,也许你的喝彩声会比别人晚30秒!因此,关闭之!如下图所示。
老大,你可不能全部禁用Cache,要不然的话你的点播的内容估计效果不会很好。 I、 查看样例(Media Samples) 大家累了半天,下面轻松一下,欣赏一会清新的画面和美妙的音乐。顺便看看HELIX UNIVERSAL SERVER支持的文件类型。体会HELIX UNIVERSAL SERVER宽广的胸怀(对于对手的格式照样提供支持,而不是对手所采用的排挤手段)。 这部分我就不发话了。但是我得给你提个醒:如果该页面有的文件Realone不能播放,Realone是会提示要下载有关的插件(plug-in)进行升级,这个是没的商量的。 2、安全管理(Security) (1) 访问控制(Access Control) 访问控制就是依据IP地址来接受或者拒绝请求服务者的的访问。例如:我们可以只允许局域网内的用户访问我们的流服务器。例如他们的地址是192.168.0.1到192.168.0.100(这可是典型的局域网的IP布局),共100台机器。 首先我们必须拥有对服务器绝对的访问权利,所以首先设定管理员的访问通道。如下图所示: 
点击“+”,添加新的访问规则。
l 访问描述(Description):对访问的简单描述; l 访问类别(Access Type):是允许还是拒绝; l 客户机IP或者机器名:允许/拒绝的IP地址中的最小的IP;例如:我们允许202.120.104.45——202.120.104.47等3个IP访问,那么最小的就是202.120.104.45了。 l 客户子网掩码(Client Netmask):用于规定IP地址的范围。对于这个的设置方法,不想作介绍,因为这不是我们的重点。但是大家要知道怎么回事,所以你得看看管理员指南。 l 端口:这是该服务的端口,千万不能搞错!!!记不清就得看看服务器设置中的端口列表。 回到上面的问题,我们该这样实现访问: Description:accesstoplay(不喜欢这个你就换一个); Access Type:Allow; Client IP Address or Hostname:192.168.0.1 Client Netmask:25bits(实际上我们允许了192.168.0.1——192.168.0.127等IP的访问) Server IP Address or Hostname:你机器实际的IP; Ports:554(我们允许点播和直播采用上面的限制); 注意:应用规则是有顺序的,上面的优先级最高。所以设置好了限制以后,还得调整规则的顺序。 (2)、用户数据库(User Databases) 这部分就是对于用户及其信息管理,我们可以把它存储在普通的文件中或者写到数据库中。以后的用户认证可以采用在WEB中注册,把数据写到数据库中,以方便管理。这部分和我们的主题的关系距离不小,不讲了。 (3)、授权(Authentication) 第一步的IP地址的限制好像不是那么彻底,下面我们看看授权的访问的处理。请看下图: 
很显然:用户是分成很多的域(或者组)的。有管理组、编码组等等。下面我们给编码组开一个帐户,这可是前面的直播要的。选中SecureRBSEncoder,点击下面的用户管理(User Management)下面的为域添加一个用户(Add a User to Realm)。弹出Add对话框,填上帐号和密码就可以(这个你得记清楚,否则,编码人员就要挑你的理了),如下图所示。
以后对于用户的管理(增加、删除、该密码等等)都在这里进行。 3、广播(Broadcast) 在上面的服务器Mount Points的设置中我们基本解决了点播的内容问题。下面可是传说中的直播的啦!请看下图。
Helix支持RealProducer 9.0和RealProducer G2和8.5。很显然,二者的设置是不一样的。默认的设置最好不要动。改动时及时通知你的编码人员。呵呵,不用设置就可以直接直播,是不是简单的太出乎意料之外?但是直播的地址你得注意。在这里就是http://202.120.111.16:80/ramgen/broadcast/live.rm。怎么看怎么有点怪,直播怎么是这么一个地址?其实:这里就是用http协议向地址为202.120.111.10服务器发出文件请求;ramgen好像是一个子目录,其实它是虚拟的,实际上是一个Mount Points设置,作用在于告诉浏览器启用Realone player(或者Realplayer);而broadcast和ramgen的身份是一样的,它告诉服务器现在请求的是直播文件,不是点播文件;而live.rm则是直播的文件名,这个管理员需要从编码人员哪里获得。而realsystem 8.0是rtsp://202.120.111.16:554/encoder/live.rm。当然encoder也是Mount Points设置。 直播分为单播(Unicast)和组播(Multicasting)。前者是每一个播放器都和服务器直接有一个连接。而后者则是服务器发出一个数据流,每个播放器只要连上这个流就可以,不必连接到服务器。显然后者对于服务器来说是一件很好的事,但是对于用户的认证就无效了。 4、监视和日志(Logging & Monitoring) 在服务器运行期间,我们有必要对服务器的状态进行监控。这部分一看就懂,但非常重要!所以只给出下面几个图,不多说了。



上面我们把Helix Universal Server的最重要、最常用的部分给大家介绍了一下。但是Helix Universal Server的功能比这多很多。所以对于其他的功能如果大家今后用的着就自己看看手册就可以了。 注意事项: 1、 安装前检查windows(win2000/XP/NT)的默认的登陆帐户是否是管理员帐户。如果不是,请设置默认的登陆帐户为管理员帐户。 2、 关于计算机硬件的配置和所能承受的用户数目之间的关系向来就是人们关心的内容。我给出一组经验配置。 如果要跑1000个500K的流,你需要如下配置的服务器: 2台SUN服务器:E450, 4 CPU,5 GB RAM,Giga Ethernet, 或者,5台左右INTEL服务器:PIII 800Mhz, 4 CPU,3 GB RAM,Giga Ethernet。 3、上面那一堆IP是我在家胡编的。你可别试了说行,因为它更本就不行。 |