“得得得和德德玛”通过精心收集,向本站投稿了6篇评价网站服务器软件的几个方面网络服务器,下面是小编为大家整理后的评价网站服务器软件的几个方面网络服务器,如果喜欢可以分享给身边的朋友喔!
- 目录
篇1:评价网站服务器软件的几个方面网络服务器
首先是管理方面的特点 ,主要有:是否图形方式配置、是否图形方式安装、有没有远程管理能力、可否利用简单网管协议配置和监视, 第二是从扩展能力来说 ,主要有:是否兼容.NET技术 、可否向64位移植、是否支持集群、能否使用IPv6协议、是否经过J2EE1.4的认证
首先是管理方面的特点,主要有:是否图形方式配置、是否图形方式安装、有没有远程管理能力、可否利用简单网管协议配置和监视。
第二是从扩展能力来说,主要有:是否兼容.NET技术 、可否向64位移植、是否支持集群、能否使用IPv6协议、是否经过J2EE1.4的认证、是否兼容J2EE1.4标准。
第三个是其他的一些特征,主要有:是否具有多级的日志记录能力、是否支持微软的ISAPI接口、是否支持虚拟主机、有没有基于web的用户接口,
第四是软件的编程和脚本特征,主要有:是否提供软件的源代码、有没有自己的API、有没有自己的脚本和批处理语言、是否支持外部的脚本和批处理语言。
第五个是安全方面的考虑,主要有:是否可以对活动目录进行认证、有没有反垃圾的机制、有没有防病毒的机制、是否内置了防火墙功能、是否内置了代理功能、是否有支持内部用户访问的特定机制、是否有LDAP轻量目录访问协议的认证机制、有没有实现硬件形式的安全套接字访问协议、有没有实现软件形式的安全套接字访问协议。
第六方面软件的服务和支持如何,主要包含:是否有商业级的支持、有没有论坛支持、是否有免费的电话支持、有没有GSA计划表、有没有邮件列表支持、是否有有效的服务级协议合同。(责任编辑:城尘)
原文转自:www.ltesting.net
篇2:评价网站服务器软件的几个方面服务器教程
首先是管理方面的特点,主要有:是否图形方式配置、是否图形方式安装、有没有远程管理能力、可否利用简单网管协议配置和监视,
第二是从扩展能力来说,主要有:是否兼容.NET技术 、可否向64位移植、是否支持集群、能否使用IPv6协议、是否经过J2EE1.4的认证、是否兼容J2EE1.4标准。
第三个是其他的一些特征,主要有:是否具有多级的日志记录能力、是否支持微软的ISAPI接口、是否支持虚拟主机、有没有基于web的用户接口,
第四是软件的编程和脚本特征,主要有:是否提供软件的源代码、有没有自己的API、有没有自己的脚本和批处理语言、是否支持外部的脚本和批处理语言。
第五个是安全方面的考虑,主要有:是否可以对活动目录进行认证、有没有反垃圾的机制、有没有防病毒的机制、是否内置了防火墙功能、是否内置了代理功能、是否有支持内部用户访问的特定机制、是否有LDAP轻量目录访问协议的认证机制、有没有实现硬件形式的安全套接字访问协议、有没有实现软件形式的安全套接字访问协议。
第六方面软件的服务和支持如何,主要包含:是否有商业级的支持、有没有论坛支持、是否有免费的电话支持、有没有GSA计划表、有没有邮件列表支持、是否有有效的服务级协议合同。
篇3:服务器软件Apache
服务器软件Apache
一、软件简介
1、Apache是最流行的Web服务器端软件之一。快速、可靠、可通过简单的API扩展,Perl/Python解释器可被编译到服务器中,完全免费,完全源代码开放。如果你需要创建一个每天有数百万人访问的Web服务器,Apache可能是最佳选择。
2、Apache Web Server Win32从版本1.3.17开始使用MSI(扩展名)的形式发布,MSI文件可以在Windows下直接运行,使用起来就和我们平常所用的那些EXE(扩展名)文件一样的方便。
3、不过MSI文件这种新兴的东东也给使用微软较早发行的Win98和WinNT的用户带来了麻烦,当它们安装时系统会提示“无法通过Windows 安装程序服务安装此安装程序包。您必须安装带有更新版本Windows 安装程序服务的Windows Service Pack”,根本无法让你继续下去!――而在WinME和Win2K下面则不会有这种麻烦出现。
4、要解决在Win98和WinNT下安装MSI文件不能完成的麻烦,你需要先有相应版本的名为“Microsoft Installer”的软件包,把它安装之后方可以开始MSI的安装工作。
5、此软件为免费软件;本文测试环境为Windows 2000。
6、确保此软件安装前已卸载(或停止服务)了其他的HTTP服务器端软件。
二、软件安装
1、本机已升级成了域控制器,已拥有一个名为“edu.enanshan.com”的域名;计算机名为“server”;完整的计算机名为“server.edu.enanshan.com”。
2、双击Apaceh的安装文件“.msi”即可进入安装向导。
3、当安装向导进行到“License Agreement”(协议许可)时,点选中“I accept the terms in the license agreement”(我接受这些协议)项后再按“Next”便能继续进行下一步操作。
4、之后进入的是“Server Information”(服务器信息)的界面,对于域控制器,系统会自动填写各项的相关内容;如果没有,则需手动填入“Network Domain”(网络域名)、“Server Name”(服务器名)和“Administrator's Email Address”(管理员信箱)三项内容,然后才能选中“Run as a service for all Users”(所有用户使用的服务)项后按“Next”继续即可。
5、接着便是选择安装类型(Setup Type)。Apache提供“Complte”(完全安装)和“Custom”(定制安装)两种安装方式,一般点选中“Complte”项继续(Next)进行完全安装。
6、在“Destination Folder”(目标目录)中,系统默认将把Apache安装到“C:Program FilesApache Group”中,为了以后操作方便起见,建议将此处的安装路径用“Change”改变到“C:”下。系统安装成功后将自动在此建立一个名为“Apache”的目录,也就是说,安装之后的实际Apache系统文件所在路径将为“C:Apache”目录。
7、其他各项均选默认选项即可完成最后安装!安装成功后需根据提示重新启动计算机。然后进入到控制面板中,打开“管理工具”中的“服务”,就可以看到Apache的服务已成功地处于运行状态了!
8、此外,在开始菜单中的“程序”里也将有名为“Apache httpd Server”的组件,其下的“Configure Apache Server”(配置Apaceh服务器)项可以编辑配置文件和测试配置;“Control Apache Server” (控制Apaceh服务器)项可以开启、停止和重启动Apache的服务;“Review Server Log Files”(查看日志文件)中则可以查看Apache的系统日志文件等。
9、当确信Apache已经安装成功并处于运行状态之后,则就可以直接打开浏览器,在地址栏输入“server”(服务器名)的格式,就可以调出你的第一个Apache页面罗!
10、如欲卸载它,除了要到控制面板的“添加/删除程序”里找到“Apache HTTP Server Version 1.3.20”项去“删除”外,还需要将“C:Apache”整个目录删掉才较为彻底。
三、基本设置
1、Apache的核心配置文件名是“httpd.conf”,其所存放的路径为“C:Apacheconf”目录下。用记事本打开它后,对它进行修改后再保存便可达到配置Apache服务器的目的'!
2、由于配置文件“httpd.conf”决定着整个Apahce服务器的使用,因此对于它的修改千万要小心!强烈建议先做好多个备份,以防出错!如果实在忘了备份了,当错得无法还原时,系统还为你准备了个名为“httpd.default.conf”的备份文件,它是你初安装好Apache后系统自动做好的“httpd.conf”的备份。好在好在!我就差一点重装。^-^
3、更改主页路径
(1)默认的,Apache主页文件存放在“C:Apachehtdocs”目录下。
(2)比如要想输入“server”(服务器名)即可调出“D:Onlymewy”目录下的自己的主页文件,则先用记事本打开“C:Apacheconf”目录下的“httpd.conf”文件,用“编辑”菜单中的“查找”功能,找到“DocumentRoot ”C:/Apache/htdocs“”一句,然后将半角引号中的“C:/Apache/htdocs”改成“D:/Onlyme/wy”(注册这里是“/”而不是“”了)。
4、好了,现在打开浏览器,输入“server”,看看出现什么!啊,“HTTP 404 没有找到”?天啦!哦,对了,还有默认主页文件名,Apache的只有一个“index.html”,你的是这名吗?反正我的不是,后面跟上文件名不就得了!所以现在还只得输入“server/”。该出来了吧!仍是不行?嗯,试试这样,在开始菜单中的“程序”里找到“Apache httpd Server”组件,再选其下“Control Apache Server”中的“Restart”重新运行一下Apache的HTTP服务。……终于可以了!长出了一口气。
5、不过呢,每次调用主页时都要输入文件名实在是麻烦!把我的“Index.htm”添加进去吧!好,还是需要宝贝的“httpd.conf”文件,寻找“DirectoryIndex index.html”行,这里放的就是默认调用的文件!在“index.html”的后面加入你的“index.htm”和其他类型,再保存即可。唯一需要注意的是,各文件类型之间都必须要用一个空格来分隔开!
6、最后仍要提醒的是:改了配置后,如果未能生效,记住先用用“Restart”!
篇4:IIS服务器的特性网络服务器
以下为大家介绍的是一些IIS的特有的功能: 1,IIS可以赋予一部主机电脑一组以上的IP地址,而且还可以有一个以上的域名作为Web网站,您可以利用TCP/IP内容设置两组以上的IP地址给它,除了为网卡再加进一组IP地址之外,必须在负责这个点的 DNS上为这组IP地址指
以下为大家介绍的是一些IIS的特有的功能:
1,IIS可以赋予一部主机电脑一组以上的IP地址,而且还可以有一个以上的域名作为Web网站,您可以利用TCP/IP内容设置两组以上的IP地址给它,除了为网卡再加进一组IP地址之外,必须在负责这个点的 DNS上为这组IP地址指定另一个域名,完成这些步骤以后,在Inte.netService Manage中就会出现一个虚拟Web服务器,虚拟服务器(Virtual Server)必须有它自己的主目录(home directory),对于IIS来说,所有服务器都是它的虚拟服务器,
IIS服务器的特性网络服务器
,
2,在互联网上,有很多网站需要多部服务器才能够应付来自用户端的请求,这就需要利用DNS所具有的功能,将一组以上的IP指定给同一个域名,每当这个网站接到服务要求,由DNS负责进行解析,它会指定域名的下一组IP地址给它,若要求采用这套做法,服务器的内容必须逐一复制到每一部服务器上。
3,为了存取后端数据库,IIS支持以下三种方式:
IDC:Internet Data Connector
ADO:ActiveX Data Object
ADC:Advanced Data Connector
这三种存储方式各有其特点,这里特别强调的是这三种数据库存取方式的后端数据库都必须提供ODBC界面才可以。
原文转自:www.ltesting.net
篇5:提高IIS网站服务器的执行效率的八种方法网络服务器
以下是提高IIS 5.0网站 服务器 的执行效率的八种方法: 1. 启用HTTP的持续作用可以改善15~20%的执行效率,2. 不启用记录可以改善5~8%的执行效率。 3. 使用 [独立] 的处理程序会损失20%的执行效率。 4. 增加快取记忆体的保存文档数量,可提高Active Server Pag
以下是提高IIS 5.0网站服务器的执行效率的八种方法:1. 启用HTTP的持续作用可以改善15~20%的执行效率。2. 不启用记录可以改善5~8%的执行效率。 3. 使用 [独立] 的处理程序会损失20%的执行效率。 4. 增加快取记忆体的保存文档数量,可提高Active Server Pages之效能。 5. 勿使用CGI程式。 6. 增加IIS 5.0电脑CPU数量。 7. 勿启用ASP侦错功能。 8. 静态网页采用HTTP 压缩,大约可以减少20%的传输量。简单介绍如下
1、启用HTTP的持续作用
启用HTTP的持续作用(Keep-Alive)时,IIS与浏览器的连线不会断线,可以改善执行效率,直到浏览器关闭时连线才会断线。因为维持「Keep-Alive」状态时,于每次用户端请求时都不须重新建立一个新的连接,所以将改善服务器的效率。 此功能为HTTP 1.1预设的功能,HTTP 1.0加上Keep-Alive header也可以提供HTTP的持续作用功能。
2、启用HTTP的持续作用可以改善15~20%的执行效率。
如何启用HTTP的持续作用呢?步骤如下: 在 [Inte.net服务管理员] 中,选取整个IIS电脑、或Web站台,於 [内容] 之 [主目录] 页,勾选 [HTTP的持续作用] 选项。
3、不启用记录
不启用记录可以改善5~8%的执行效率。 如何设定不启用记录呢?步骤如下: 在 [Internet服务管理员] 中,选取整个IIS电脑、或Web站台,於 [内容] 之 [主目录] 页,不勾选 [启用记录] 选项。 设定非独立的处理程序 使用 [独立] 的处理程序会损失20%的执行效率,此处所谓「独立」系指将 [主目录]、[虚拟目录] 页之应用程式保护选项设定为 [高(独立的)] 时。因此 [应用程式保护] 设定为 [低 (IIS处理程序)] 时执行效率较高,设定画面如下: 如何设定非「独立」的处理程序呢?步骤如下: 在 [Internet服务管理员] 中,选取整个IIS电脑、Web站台、或应用程式的起始目录。於 [内容] 之 [主目录]、[虚拟目录] 页,设定应用程式保护选项为 [低 (IIS处理程序)] 。
4、调整快取(Cache)记忆体
IIS 5.0将静态的网页资料暂存於快取(Cache)记忆体当中;IIS 4.0则将静态的网页资料暂存於档案当中。调整快取(Cache)记忆体的保存档案数量可以改善执行效率。 ASP指令文档执行过後,会在暂存於快取(Cache)记忆体中以提高执行效能。增加快取记忆体的保存文档数量,可提高Active Server Pages之效能。 可以设定所有在整个IIS电脑、「独立」Web站台、或「独立」应用程式上执行之应用程式的快取记忆体档案数量,
如何设定快取(Cache)功能呢?步骤如下: 在 [Internet服务管理员] 中,选取整个IIS电脑、「独立」Web站台、或「独立」应用程式的起始目录。於 [内容] 之 [主目录]、[虚拟目录] 页,按下 [设定] 按钮时,即可由 [处理程序选项] 页设定 [指令档快取记忆体] 。 如何设定快取(Cache)记忆体档案数量呢?步骤如下: 在 [Internet服务管理员] 中,选取整个IIS电脑、或Web站台的起始目录。於 [内容] 之 [伺服器扩充程式] 页,按下 [设定] 按钮。 即可设定快取(Cache)记忆体档案数量。
5、勿使用CGI程式
使用CGI程式时,因为处理程序(Process)须不断地产生与摧毁,造成执行效率不佳。 一般而言,执行效率比较如下: 静态网页(Static):100 ISAPI:50 ASP:10 CGI:1 换句话说,ASP比CGI可能快10倍,因此勿使用CGI程式可以改善IIS的执行效率。 以弹性(Flexibility)而言:ASP >CGI >ISAPI >静态网页(Static)。 以安全(Security)而言:ASP(独立) = ISAPI(独立)= CGI >ASP(非独立) = ISAPI(非独立)= 静态网页(Static)。
6、增加IIS 5.0电脑CPU数量
根据微软的测试报告,增加IIS 4.0电脑CPU数量,执行效率并不会改善多少;但是增加IIS 5.0电脑CPU数量,执行效率会几乎成正比地提供,换句话说,两颗CPU的IIS 5.0电脑执行效率几乎是一颗CPU电脑的两倍,四颗CPU的IIS 5.0电脑执行效率几乎是一颗CPU电脑的四倍。 IIS 5.0将静态的网页资料暂存於快取(Cache)记忆体当中;IIS 4.0则将静态的网页资料暂存於档案当中。调整快取(Cache)记忆体的保存档案数量可以改善执行效率。
7、启用ASP侦错功能
勿启用ASP侦错功能可以改善执行效率。 如何勿启用ASP侦错功能呢?步骤如下: 於 [Internet服务管理员] 中,选取Web站台、或应用程式的起始目录,按右键选择 [内容],按 [主目录]、[虚拟目录] 或 [目录]页,按下 [设定] 按钮,选择 [应用程式侦错] 页,不勾选 [启用ASP伺服器端指令侦错]、[启用ASP用户端指令侦错] 选项。
8、静态网页采用HTTP 压缩
静态网页采用HTTP 压缩,大约可以减少20%的传输量。 HTTP压缩功能启用或关闭,系针对整台IIS服务器来设定。 用户端使用IE 5.0浏览器连线到已经启用HTTP压缩IIS 5.0之Web服务器,才有HTTP压缩功能。 如何启用HTTP压缩功能呢?步骤如下: 若要启用HTTP压缩功能,方法为在 [Internet服务管理员] 中,选取电脑之 [内容],於 [主要内容] 之下选取 [WWW服务]。然後按一下 [编辑] 按钮,於 [服务] 页上,选取 [压缩静态档案] 可以压缩静态档案,不选取 [压缩应用程式档案] 。 动态产生的内容档案(压缩应用程式档案)也可以压缩,但是须耗费额外CPU处理时间,若% Processor Time已经百分之八十或更多时,建议不要压缩。
原文转自:www.ltesting.net
篇6:RTP/RTCP流媒体服务器技术网络服务器
1 引言 随着互联网的飞速发展,流媒体技术的应用越来越广泛,从网上广播、电影播放到远程教学以及在线的新闻网站等都用到了流媒体技术,但现有公开文献所报道的大多是利用现有的流媒体服务器来搭建一个流媒体服务系统,或者是针对流媒体数据的编码方式所进行的
1 引言随着互联网的飞速发展,流媒体技术的应用越来越广泛,从网上广播、电影播放到远程教学以及在线的新闻网站等都用到了流媒体技术。但现有公开文献所报道的大多是利用现有的流媒体服务器来搭建一个流媒体服务系统,或者是针对流媒体数据的编码方式所进行的研究。本文对流媒体服务器技术的研究重点在于如何建立一个服务器,并且在实现流媒体传输的两个基本协议RTP/RTCP的基础上构建一个基本的流媒体服务器。
2 流媒体技术简介
2.1 “流”的定义
现在网上传输视频、音频主要有下载(Download)和流式传输(Streaming)两种方式。流式传输是连续传送视/音频信号,当流媒体在客户机播放时其余部分在后台继续下载。流式传输有顺序流式传输(Progressive Streaming)和实时流式传输(Realtime Streaming)两种方式。实时流式传输是实时传送,特别适合现场事件,实时流式传输必须匹配连接带宽,这意味着图像质量会因网络速度降低而变差,以减少对传输带宽的需求。“实时”的概念是指在一个应用中数据的交付必须与数据的产生保持精确的时间关系。
在Inte.net中使用流式传输技术的连续时基媒体就称为流媒体,通常也将其视频与音频称为视频流和音频流。实现流式传输一般都需要专用服务器和播放器。
2.2 流媒体系统组件
流媒体是由各种不同软件构成的,这些软件在各个不同层面上互相通信,基本的流媒体系统包含以下3个组件:
播放器(Player),用来播放流媒体的软件。
服务器(Server),用来向用户发送流媒体的软件。
编码器(Encode),用来将原始的音频视频转化为流媒体格式的软件。
这些组件之间通过特定的协议互相通信,按照特定的格式互相交换文件数据。有些文件中包含了由特定编解码器解码的数据,这种编解码器通过特定算法压缩文件的数据量。
3 流媒体服务器的基本功能和服务方式
3.1 流媒体服务器的主要功能
(1)响应客户的请求,把媒体数据传送给客户。流媒体服务器在流媒体传送期间必须与客户的播放器保持双向通信(这种通信是必需的,因为客户可能随时暂停或快放一个文件)。
(2)响应广播的同时能够及时处理新接收的实时广播数据,并将其编码。
(3)可提供其他额外功能,如:数字权限管理(DRM),插播广告,分割或镜像其他服务器的流,还有组播。
3.2 流媒体服务器的服务方式
(1)单播。在客户端与媒体服务器之间建立一个单独的数据通道,从1台服务器送出的每个数据包只能传送给1个客户机。
(2)组播。在以组播技术构建的网络上,允许路由器一次将数据包复制到多个通道上。
(3)点播与广播。点播连接是客户端与服务器之间的主动的连接,在点播连接中,用户通过选择内容项目来初始化客户端连接,用户可以开始、停止、后退、快进或暂停流。广播指的是用户被动地接收流,在广播过程中,数据包的单独一个拷贝将发送给网络上的所有用户,客户端接收流,但不能控制流。
4 构建流媒体服务器
4.1 RTP/RTCP协议简介
实时传输协议RTP(Realtime Transport Protocol):是针对Internet上多媒体数据流的一个传输协议, 由IETF(Internet工程任务组)作为RFC1889发布。RTP被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP的典型应用建立在UDP上,但也可以在TCP或ATM等其他协议之上工作。RTP本身只保证实时数据的传输,并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。
实时传输控制协议RTCP(Realtime Transport Control Protocol):负责管理传输质量在当前应用进程之间交换控制信息。在RTP会话期间,各参与者周期性地传送RTCP包,包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。RTP和RTCP配合使用,能以有效的反馈和最小的开销使传输效率最佳化,故特别适合传送网上的实时数据。
RTCP主要有4个功能:
(1)用反馈信息的方法来提供分配数据的传送质量,这种反馈可以用来进行流量的拥塞控制,也可以用来监视网络和用来诊断网络中的问题;
(2)为RTP源提供一个永久性的CNAME(规范性名字)的传送层标志,因为在发现冲突或者程序更新重启时SSRC(同步源标识)会变,需要一个运作痕迹,在一组相关的会话中接收方也要用CNAME来从一个指定的与会者得到相联系的数据流(如音频和视频);
(3)根据与会者的数量来调整RTCP包的发送率;
(4)传送会话控制信息,如可在用户接口显示与会者的标识,这是可选功能。
4.2 RTP/RTCP工作过程
工作时,RTP协议从上层接收流媒体信息码流(如H.263),装配成RTP数据包发送给下层,下层协议提供RTP和RTCP的分流。如在UDP中, RTP使用一个偶数号端口,则相应的RTCP使用其后的奇数号端口。RTP数据包没有长度限制,它的最大包长只受下层协议的限制。
4.3 服务器的算法
服务器软件模型主要有两种,即并发服务器和循环服务器。循环服务器(Iterative Server)是指在一个时刻只处理一个请求的服务器。并发服务器(Concurrent Server)是指在一个时刻可以处理多个请求的服务器。事实上,多数服务器没有用于同时处理多个请求的冗余设备,而是提供一种表面上的并发性,方法是依靠执行多个线程,每个线程处理一个请求,从客户的角度看,服务器就像在并发地与多个客户通信,
电脑资料
由于流媒体服务时间的不定性和数据交互实时性的请求,流媒体服务器一般采用并发服务器算法。本文构建了一个基本的流媒体服务器,能够同时响应多个用户的请求,把本地硬盘流媒体文件或实时数据流(H.263格式)发送给用户。在应用中,把客户分为请求实时数据的实时客户和请求文件数据的文件客户两类。主要算法为:
(1)打开设备,分配资源。当设备准备好时,创建一个RTP实时服务线程和一个RTCP实时服务线程。
(2)创建一个UDP套接字并将其绑定到所提供服务的地址之上。
(3)反复调用接收模块,接收来自客户的RTCP报告,根据其类型做出响应。对新实时客户的请求,把客户地址添加到实时服务的客户列表中,对新文件客户的请求,则创建一个新RTP文件服务线程和一个新RTCP文件服务线程;对已经在服务中的客户则根据RTCP报告的内容调整服务。
RTP实时服务线程1:初始化客户列表和RTP首部。
RTP实时服务线程2:从设备读取媒体数据,把数据发送给实时服务列表中的客户。
RTP实时服务线程3:更新RTP首部和统计数据。
RTP实时服务线程4:计算延时,重复第二步。
RTCP实时服务线程1:初始化RTCP首部。
RTCP实时服务线程2:发送发送方报告给实时服务列表中的客户。
RTCP实时服务线程3:计算延时,重复第二步。
RTP文件服务线程1:初始化RTP首部。
RTP文件服务线程2.:从文件读取媒体数据,把数据发送给客户。
RTP文件服务线程3:更新已发送数据的统计信息,为生成发送方报告做准备。
RTP文件服务线程4:计算延时,调整发送速度,正常情况下开始重复第二步。
RTCP文件服务线程1:初始化RTCP首部,发送一个源描述(SDES)报文给客户。
RTCP文件服务线程2:根据已发送数据的统计信息生成发送方报告,发送给客户。
RTCP文件服务线程3:计算延时,正常情况下开始重复第一步。
5 流媒体服务器实现中应注意的问题
5.1 会话和流的两级分用
一个RTP会话(Session)包括传给某个指定目的地对(Destination Pair)的所有通信量,发送方可能包括多个。而从同一个同步源发出的RTP分组序列称为流(Stream),一个RTP会话可能包含多个RTP流。一个 RTP分组在服务器端发送出去的时候总是要指定属于哪个会话和流,在接收时也需要进行两级分用,即会话分用和流分用。只有当RTP使用同步源标识 (SSRC)和分组类型(PTYPE)把同一个流中的分组组合起来,才能够使用序列号(Sequence Number)和时间戳(Timestamp)对分组进行排序和正确回放。
5.2 多线程的管理
并发服务器模式要求用多线程来提供服务,所以多线程的管理十分重要。在本文构建的服务器中,不同客户的请求和反馈都由服务器的主线程处理,由于实时数据的独有性,不同实时客户可以共用一个RTP实时服务线程和一个RTCP实时服务线程,这样可以大大减小服务器的负担,而每个文件客户由于请求的文件不同,相应地对速度和开始时间的要求都可能不同,所以需要有自己独有的RTP文件服务线程和RTCP文件服务线程。
RTP服务线程负责把实时数据流发送给客户, RTCP服务线程根据RTP线程的统计数据,产生发送方报告给客户。RTP线程和RTCP线程之间通过一段共享内存交互统计数据,对共享内存必须设置互斥体进行保护,防止出现错误读写。在这种方式下,服务器可以根据每个用户的不同请求和具体情况方便地提供不同的服务。
5.3 时间戳的处理
时间戳字段是RTP首部中说明数据包时间的同步信息,是数据能以正确的时间顺序恢复的关键。时间戳的值给出了分组中数据的第一个字节的采样时间 (Sampling Instant),要求发送方时间戳的时钟是连续、单调增长的,即使在没有数据输入或发送数据时也是如此。在静默时,发送方不必发送数据,保持时间戳的增长,在接收端,由于接收到的数据分组的序号没有丢失,就知道没有发生数据丢失,而且只要比较前后分组的时间戳的差异,就可以确定输出的时间间隔。
RTP规定一次会话的初始时间戳必须随机选择,但协议没有规定时间戳的单位,也没有规定该值的精确解释,而是由负载类型来确定时钟的颗粒,这样各种应用类型可以根据需要选择合适的输出计时精度。
在RTP传输音频数据时,一般选定逻辑时间戳速率与采样速率相同,但是在传输视频数据时,必须使时间戳速率大于每帧的一个滴答。如果数据是在同一时刻采样的,协议标准还允许多个分组具有相同的时间戳值。
5.4 媒体数据发送速度的控制
由于RTP协议没有规定RTP分组的长度和发送数据的速度,因而需要根据具体情况调整服务器端发送媒体数据的速度。对来自设备的实时数据可以采取等时间间隔访问设备缓冲区,在有新数据输入时发送数据的方式,时间戳的设置相对容易。对已经录制好的本地硬盘上的媒体文件,以H.263格式的文件为例,由于文件本身不包含帧率信息,所以需要知道录制时的帧率或者设置一个初始值,在发送数据的时候找出发送数据中的帧数目,根据帧率和预置值来计算时延,以适当的速度发送数据并设置时间戳信息。
5.5 多种流同步
RTCP的一个关键作用就是能让接收方同步多个RTP流,例如:当音频与视频一起传输的时候,由于编码的不同,RTP使用两个流分别进行传输,这样两个流的时间戳以不同的速率运行,接收方必须同步两个流,以保证声音与影像的一致。为能进行流同步,RTCP要求发送方给每个传送一个唯一的标识数据源的规范名(Canonical Name),尽管由一个数据源发出的不同的流具有不同的同步源标识(SSRC),但具有相同的规范名,这样接收方就知道哪些流是有关联的。而发送方报告报文所包含的信息可被接收方用于协调两个流中的时间戳值。发送方报告中含有一个以网络时间协议NTP(Network Time Protocol)格式表示的绝对时间值,接着RTCP报告中给出一个RTP时间戳值,产生该值的时钟就是产生RTP分组中的TimeStamp字段的那个时钟。由于发送方发出的所有流和发送方报告都使用同一个绝对时钟,接收方就可以比较来自同一数据源的两个流的绝对时间,从而确定如何将一个流中的时间戳值映射为另一个流中的时间戳值。
6 结论
流媒体技术的应用日益广泛,对流媒体技术的研究具有很大的实际意义,本文通过对RTP/RTCP协议的研究,分析流媒体服务器的一般功能和结构,给出构建一个基本的流媒体服务器的实现方案,实验证明可以同时满足多个实时和文件客户的要求,并已经应用于一个远程监控系统中。
原文转自:www.ltesting.net
评价网站服务器软件的几个方面网络服务器(整理6篇)




