网络视频服务器
网络视频服务器(精选10篇)
网络视频服务器 第1篇
近年来,随着网络技术、芯片技术和视频压缩等相关技术的不断发展,数字视频传输技术、远程视频系统得到了越来越广泛的应用,并且正在向网络化、集成化的方向发展。基于IP的网络视频传输系统逐渐成为视频传输的主流。
2 视频传输系统的工作原理
在嵌入式视频监控系统结构中,利用TCP/IP协议栈构造一个专用Boa服务器[1],视频处理与Boa服务器高度集成,系统采用B/S结构。视频系统从安装在现场的嵌入式网络摄像机中获得原始的视频信号,通过视频编码器,将模拟视频信号数字化,并压缩成MPEG-4格式视频数据,然后通过内部总线送到Boa服务器,再由Boa服务器实时传送到计算机网络。客户端PC连接到计算机网络上,从嵌入式视频传输模块获得MPEG-4视频数据,经网址IP登录后,通过浏览器即可观看摄像机的图像。关于控制命令,客户端通过浏览器将控制命令发送到网络上,Boa服务器对接收到的控制命令进行分析解释,并根据授权,通过控制系统驱动摄像头执行相应的命令,从而实现远程网络对现场的实时传输。视频传输系统的工作原理如图1所示。
3 系统硬件设计
系统硬件由USB摄像头、嵌入式处理器S3C2410、SDRAM、Nand Flash、JTAG、RS232接口、RJ45接口等部分组成。视频信号由USB摄像头采集,经过MPEG-4编码压缩,由RJ45接口发送到Internet网络上进行视频的传输,FIQ为温度、红外传感器接口,可用于家居安防[2]。系统中视频的采集和压缩都是由软件实现的。系统通过RS232接口、RJ45接口与PC机相连,构成交叉编译调试的环境。JTAG调试器接在开发板的JTAG口上,系统通过该口与S3C2410通讯[3]。系统硬件结构如图2所示。
在图2中:(1)CPU主控制芯片选用S3C2410,该芯片为SAMSUNG公司生产的基于ARM920T内核的RISC微处理器,集成了包括存储器接口、USB、RS232、RJ45、FIQ、JTAG等接口硬件资源。(2)Nand Flash选用K9F1208,该芯片的单片存储容量为64M8位,工作电压为2.7V~3.6V。(3)USB摄像头选用CMOS摄像传感器,其A/D转换、定时控制、信号处理、彩色编码与补偿和变换控制等都可以集成在同一芯片中,具有集成度高、速度快、功耗低、价格便宜、体积小等优点。(4)温度传感器选用达拉斯DALLAS 18B20,应用中不需要外部任何元器件即可实现测温电路,通过FIQ接口即可实现通信。
4 系统软件的实现
4.1 建立Boa服务器
在嵌入式远程监控系统中,为了使远程主机通过Internet获得视频图像等数据信息,需要在嵌入式系统移植一个支持脚本和CGI功能的Boa服务器[4],该服务器是一种单任务Web服务器,支持CGI,源代码开放,用户端能够通过IE浏览器对嵌入式设备进行管理和监控。
建立Boa服务器的过程为:
(1)下载Boa服务器源代码文件boa-0.94.13.tar.gz,并将其解压缩在/boa/src/目录下。
(2)编译Boa。在移植Boa时,首先运行/boa/src/configure,生成一个Makefile文件,将Makefile中的“CC=gcc”改成“CC=arm-linux-gcc”,再编译。将编译器修改为平台的交叉编译器,以此得到支持ARM9平台的Boa服务器。
修改defines.h中Boa的根文件目录:
#define SERVER_ROOT“/etc/boa”。执行make命令编译Boa源代码,即会生成Boa可执行文件。
(3)配置Boa。为使Boa能在相应的嵌入式平台上运行,需对其运行环境、参数等进行配置。配置服务器主要是修改boa.conf文件中的各相关存储路径。
(4)将Boa和boa.conf文件拷贝到嵌入式系统相应的目录下,即可启动Boa程序,实现对Boa Web Server的访问。
基于Boa的嵌入式Web服务器为系统提供了网络接入和信息服务。系统基于TCP/IP协议、HTTP协议,调用具有数据请求和控制功能的CGI程序,实现服务器对客户端浏览器请求的处理,达到远程监控的目的。
4.2 CGI网页交互程序设计
CGI技术即通用网关接口(Common Gateway Interface)技术,它支持Web数据动态刷新、转换和显示。
CGI是运行在Boa服务器上的一个程序,同其它程序设计一样,必须按照CGI标准格式进行编写[5]。CGI程序的运行由客户端浏览器的输入触发,它的任务就是执行指令,将所需数据转换为环境变量进行处理,并回传处理结果。Boa服务器与CGI程序之间通过四种途径进行通信:环境变量、命令行、标准输入和标准输出。
CGI的基本工作过程为:根据客户端浏览器的请求,CGI程序通过执行Boa服务器指令,调用其它应用程序进行处理,最后将处理结果以HTTP形式反馈给客户端浏览器显示。CGI工作流程示意图见图3。
CGI是在Web服务器下运行外部程序的一个接口,CGI程序使网页具有交互功能。其最重要的作用是提供了HTML无法实现的功能,补充了HTML的不足。
CGI部分核心代码如下:
5 嵌入式B/S视频传输系统的实现及其界面
主控系统采用B/S架构,即浏览器-服务器(Browser/Server)架构。采用端对端的实时传输协议/实时传输控制协议(RTP/RTCP)实现视频数据的网络传输,用户通过手机或PC机的浏览器与远程嵌入式Web服务器进行交互,实现Boa下的网络远程视频图像数据的监控。手机、PC机浏览器的视频页面,如图4所示。
本系统采用了CGI程序的模块化结构,除远程视频监控外,还可以根据功能要求添加控制模块,如远程视频截图、音频传递、温度检测、红外检测、开关控制等。
6 结束语
随着计算机网络技术、视频技术和嵌入式技术的发展,基于嵌入式技术的网络视频监控系统逐渐成为视频监控系统的主流。基于S3C2410平台和Linux操作系统,使用Boa服务器技术、CGI技术和流媒体传输技术实现了远程视频等数据传输。整个系统具有成本低、体积小、稳定可靠、安装简便等特点,适用于智能家居、网络视频、远程监控等领域。
参考文献
[1]Jeremy Bentham,陈向群译.嵌入式系统Web服务器TCP/IP Lean[M].北京:机械工业出版社,2003.
[2]郑灵翔.嵌入式系统设计与应用开发[M].北京:北京航空航天大学出版社,2006.
[3]张素文,付薇,刘明兰.嵌入式视频图像传输系统的设计与实现[J].微计算机信息,2007,23(3-2):22-24.
[4]increase warning level in GCC_FLAGS another notch[EB/OL].http://www.boa.org/,2010-08/2011-05.
网络最经典命令行网络服务器 第2篇
下一页123
1.最基本,最常用的,测试物理网络的
ping 192.168.0.8 -t ,参数-t是等待用户去中断测试
2.查看DNS、IP、Mac等
A.Win98:winipcfg
B.Win2000以上:Ipconfig/all
C.NSLOOKUP:如查看河北的DNS
C:>nslookup
Default Server: ns.hesjptt.net.cn
Address: 202.99.160.68
>server 202.99.41.2 则将DNS改为了41.2
> pop.pcpop.com
Server: ns.hesjptt.net.cn
Address: 202.99.160.68
Non-authoritative answer:
Name: pop.pcpop.com
Address: 202.99.160.212
3.网络信使
Net send 计算机名/IP * (广播) 传送内容,注意不能跨网段
net stop messenger 停止信使服务,也可以在面板-服务修改
net start messenger 开始信使服务
4.探测对方对方计算机名,所在的组、域及当前用户名 (追捕的工作原理)
ping -a IP -t ,只显示NetBios名
nbtstat -a 192.168.10.146 比较全的
5.netstat -a 显示出你的计算机当前所开放的所有端口
netstat -s -e 比较详细的显示你的网络资料,包括TCP、UDP、ICMP 和 IP的统计等
6.探测arp绑定(动态和静态)列表,显示所有连接了我的计算机,显示对方IP和MAC地址
arp -a
7.在代理服务器端
捆绑IP和MAC地址,解决局域网内盗用IP!:
ARP -s 192.168.10.59 00 -50-ff-6c-08-75
解除网卡的IP与MAC地址的绑定:
arp -d 网卡IP
8.在网络邻居上隐藏你的计算机
net config server /hidden:yes
net config server /hidden:no 则为开启
9.几个net命令
A.显示当前工作组服务器列表 net view,当不带选项使用本命令时,它就会显示当前域或网络上的计算机上的列表,
网络最经典命令行网络服务器
,
比如:查看这个IP上的共享资源,就可以
C:>net view 192.168.10.8
在 192.168.10.8 的共享资源
资源共享名 类型 用途 注释
--------------------------------------
网站服务 Disk
命令成功完成。
B.查看计算机上的用户帐号列表 net user
C.查看网络链接 net use
例如:net use z: 192.168.10.8movie 将这个IP的movie共享目录映射为本地的Z盘
D.记录链接 net session
例如: C:>net session
计算机 用户名 客户类型 打开空闲时间
-------------------------------------------------------------------------------
192.168.10.110 ROME Windows 2000 2195 0 00:03:12
192.168.10.51 ROME Windows 2000 2195 0 00:00:39
命令成功完成。
10.路由跟踪命令
A.tracert pop.pcpop.com
B.pathping pop.pcpop.com 除了显示路由外,还提供325S的分析,计算丢失包的%
网络视频服务器 第3篇
网络视频服务器是一种对音视频数据进行压缩、处理、共享的专用设备,其采用数字式一体机结构,在计算机、流媒体传输、数字视频、因特网通信等技术的基础上,集成了多通道视频、网络传输等多种功能,可对音视频信号进行采集、压缩、复合后转换为网络IP包,通过合适的网络协议,实现视频编码数据码流实时网络传输。因为视频编码与网络传输功能都可以集成到一个小型设备中,可以直接接入局域网或其他专用网络,便于安装,所以用户无需增添其他硬件设备,通过网络浏览器即可实现在线查看,也可在上位机编写控制程序,通过LCD/触摸屏等人机界面进行浏览[1]。
该系统基于美国TI公司的多媒体处理芯片OMAP3530[2](ARM+DSP dual core)实现了网络视频服务器设计,可将其用于构建高可靠性的视频监控系统。
1 网络视频服务器总体设计
系统的主要功能是将由CCD摄像头获得的模拟视频信号通过视频解码器转换为数字视频信号,OMAP3530的ARM子系统利用DSP/BIOS Link将得到的视频信号传送给DSP子系统,视频信号通过DSP子系统压缩成符合H.264压缩标准的数据码流,压缩后的视频数据码流再由OMAP3530的ARM子系统读出,通过嵌入式Linux操作系统的RTP/RTCP协议栈,将数据打包,同时启动Web服务器,等待客户服务端通过网络访问。另外系统还可以通过以太网接口获取远端的相关控制信息,并对摄像头进行调整及参数设置。考虑到进程监控的需要,可同时将数字视频信号直接输出到TV或LCD等显示设备上。该系统具有以下几个特点:1)整体方案采用ARM+DSP的双内核结构;2)采用H.264标准作为视频压缩编码标准;3)采用开放的Linux操作系统。系统总体结构如图1所示。
2 网络视频服务器硬件电路设计
该系统以OMAP3530为核心,由音视频输入/输出模块、存储模块、网络通信模块、电源模块组成。系统的硬件电路结构如图2所示。
OMAP3530负责完成对全部协议与各种业务应用的处理、音视频信号的编解码以及对系统其他模块的管理和驱动,该芯片内部集成有600 MHz的ARM Cortex-A8内核、430 MHz的TMS320C64x+的DSP内核、2D/3D图形加速器、视频加速器及丰富的多媒体外设,其视频处理单元能够支持MPEG-4、H.264/AVC等多种协议的实时编解码,可广泛应用于流媒体、视频会议、高性能PDA等领域。在该系统中OMAP3530的ARM内核负责音/视频解码器控制、数据交换、网络传输;而DSP内核则运行优化后的H.264压缩编码算法对采集进来的音视频信号进行处理。ARM内核与DSP内核之间的数据传输是通过OMAP3530中的DSP/BIOS Link来实现的。
2.1 音视频输入输出模块
系统前端的视频输入采用模拟CCD摄像头,由于CCD摄像头输出信号为模拟信号,处理器不能直接处理,所以使用视频解码器完成视频信号的数字化,考虑到产品的兼容性,视频解码芯片选择TI公司的视频解码器TVP5158[3],该芯片可接收4路复合输入或8路独立的摄像输入,其内部还集成了4路的音频模数转换器。系统的视频输入是8路视频输入,采用交错模式传输,需要2个TVP5158 进行级联连构成1个8路视频解码器。OMAP3530通过I2C接口、McBSP接口对TVP5158进行音视频参数设置,TVP5158负责将摄像头输出的PAL/NTSC格式的模拟复合视频信号转换成BT656格式的数字视频信号,然后通过CAM接口送给OMAP3530进行相应的处理。TVP5158输出的数字音频信号则通过McBSP接口传送给OMAP3530进行相应处理。由于OMAP3530内部集成有Audio接口,所以外部SPK与Mic可直接与Audio接口连接。TVP5158与OMAP3530之间的接口电路图如图3所示。
2.2 存储模块
系统的存储器模块分为两部分,第一部分是主存储器,采用的是一块Micron公司的MT29C1G24MADLAJA-6 IT[4],其芯片内部集成了128 Mbyte的DDR和128 Mbyte的NandFlash,OMAP3530通过SDRC与GPMC接口与之进行连接。NandFlash用于固化程序,每次上电都从Flash启动;DDR则作为整个硬件系统的工作内存,由ARM和DSP共享使用。第二部分是辅助存储器,系统使用了MMC_1接口外接SD卡,用于存储Linux操作系统的图形界面和应用程序;使用MMC_2接口外扩了一块硬盘(Hard Disk),可以将编码后的视频数据保存到硬盘设备中,等待客户端随时读取。DDR与OMAP3530之间的接口电路图如图4所示。
2.3 网络通信模块
系统的网络通信芯片选择的是SMSC公司的LAN9211[5],该芯片支持多种处理器接口,支持快速以太网10/100 Mbit/s网络传输速度,其内部用于接收及发送数据FIFO的有16 kbyte,另外还集成了CSMA/CD协议的MAC与PHY,符合IEEE802.3/802.3u标准。由于OMAP3530的GPMC接口同时外接了Flash和LAN9211,即二者共用了数据线和地址线,所以需要通过总线隔离器将二者隔离开,系统采用两片Philips公司的74ALVC164245芯片作为总线隔离器,连接在Flash和OMAP3530,LAN9211和OMAP3530中间,通过GPMC的控制总线,如GPMC_NCS6,GPMC_NOE,GPMC_NWE等,与地址总线配合进行控制,以便处理器在使用其中一个器件的同时另一个器件对外呈现高阻态。Flash、LAN9211与OMAP3530之间的接口电路图如图5所示。
2.4 电源模块
系统采用TI公司的电源管理芯片TPS65930[6]为OMAP3530供电并承担一定的任务,两者之间通过I2C总线接口进行通信。TPS65930功能强大,不仅可以提供系统工作所需的时钟、各种电源,而且其内部还集成了双通道音频编解码器与驱动器、10位3输入模数转换器、I2C通信接口等功能模块。
3 网络视频服务器软件设计
网络视频服务器的软件开发主要由ARM子系统软件设计、DSP子系统软件设计、网络传输三部分组成。ARM子系统通过加载嵌入式Linux操作系统,移植Qt/Embedded作为系统的GUI库,对视频编解码模块/存储模块/网络通信模块等分别编写相应的驱动程序、为DSP分配与引导工作内存、设置DSP MMU以及ARM与DSP之间的MailBox中断服务,同时通过DSP/BIOS Link来使用DSP的各种资源,从而控制DSP进行H.264编码[7,8]。DSP子系统软件主要完成音频编解码等实时数值运算功能,采用TI公司提供的DSP/BIOS作为操作系统。
3.1 ARM子系统程序设计
首先系统上电,加载ARM引导程序,完成整个硬件系统的初始化,包括设置OMAP3530及外围器件,接着启动Linux系统,加载各种设备,如DSP、网卡、视频解码器等。由于OMAP3530是一种非对称性结构的处理器,所以系统设置ARM Core为主控,对于Linux操作系统而言,DSP Core则作为一个普通的字符型设备来被控制。ARM与DSP之间的通信是通过两者之间的MailBox来实现的,但是MailBox通信有一定的局限性,它仅适用于数据量较小的情况,在该系统中视频信号的数据量较大,所以还需要使用ARM与DSP两者通信的第二种方式,即DSP的MMU方式,通过配置DSP的MMU,将一块原属于DSP的内存单元映射到外部共享的内存单元中,再结合二两者共享DDR SDRAM内存的方式,从而实现ARM和DSP之间的通信与数据交换[9]。DSP设备一旦加载起来,就可以在应用程序中调用Linux系统的API函数,例如open,close,read,write,ioctl等,用来使用和控制DSP。
由于Linux操作系统中集成有专用于视频采集的API函数Video4Linux(V4L2),该函数提供open,write,read,ioctl等功能,设计人员通过修改control word来获取视频设备的信息、帧缓冲的参数、获取图像[10,11],所以视频信号采集程序是通过调用该API函数来实现,采集到的视频数据存储到ARM和DSP的共享内存中(ARM与DSP之间的共享内存是通过DSP/BIOS Link来分配),同时设置一定的监测信号量,负责监测缓冲区是否有数据到来,如果有数据,ARM立即通过ioctl函数通知DSP对数据进行H.264编码。因为可能会发生ARM与DSP同时读写共享内存的情况,所以系统采用MailBox中断方式来避免两者之间的读写冲突。OMAP3530内部有2个的MailBox,分别分配给ARM与DSP,两者均可以利用各自的MailBox向另一方发出中断请求,并且传递相应的参数信息并设置状态,告知对方自己当前的状态与请求类别。当数据编码完成后,DSP会向ARM发出MailBox中断,通知ARM从共享内存中取走编码后的H.264数据。如果有远端用户发出请求,ARM会将数据通过网络发送出去;反之则将数据暂时存储到硬盘中,等待用户提出请求。具体流程如图6所示。
3.2 DSP子系统程序设计
DSP子系统负责对发送来的视频流进行H.264压缩编码。首先加载DSP设备,就绪后等待ARM通过MailBox向其发送中断信号,一旦收到中断信号,DSP立即从共享内存中读取视频流,执行H.264编码算法进行编码,数据编码完毕,DSP向ARM发送MailBox中断信号,同时将编码数据发送至共享内存,等待ARM进行相应的处理。因为H.264的压缩编码算法已经被固化到OMAP3530的ROM中,程序提供丰富的编码参数,所以H.264编码器的控制与使用是通过调用TI公司的Codec Engine中的API函数来实现的,比如VIDENC_create(),VIDENC_process(),VIDENC_control(),VIDENC_dqbuf(), VIDENC_delete()等。DSP子系统软件结构如图7所示。
3.3 网络通信程序设计
由于传统的TCP/UDP协议不能满足流媒体(音频、视频)传输要求低延时、高实时性、QoS保证,所以网络传输协议采用RTP/RTCP来完成,其中RTP负责对H.264视频码流进行打包封装,RTCP负责产生和发送RTCP包并分析接收到的RTCP包,从而为RTP传输提供保证[12]。为了便于编码后的视频流数据在网络传输,首先编码后的H.264视频数据经RTP进行包封装,添加时间戳、同步信息、包序列号等参数,将其打包成适于网络传输的RTP包;接着把这些打包的RTP数据流传送到UDP/TCP层和IP层,打包成相应的IP包在网络上传输。在具体的程序设计中,由于Linux系统中使用了开源的RTP库-JRTPLIB,所以可以调用JRTPLIB的相关函数。由于JRTPLIB是一个面向对象的 RTP 库,用户在使用时无需考虑RTP/RTCP数据包是如何被发送/接收的,因为这些都可以由JRTPLIB自己来完成,只要成功建立RTP会话,通过调用PollData( )/SendPacket( )函数,就能够自动接收或发送相应的RTP/RTCP数据包。
4 测试结果与分析
该视频服务器在局域网上对各项功能进行了长时间测试,音视频工作正常,图像清晰,分辨率可达720576,传输延时小于1 s。在D1格式下,可实现固定帧率PAL为25 f/s(帧/s),NTSC为30 f/s,视频码速率最低可至128 kbit/s,提高了现有视频通信信道的视频容量并节约了存储资源,较好地解决了视频过多占用网络资源的问题。测试结果表明该系统设计合理、操作简便且工作稳定。
5 结束语
本文重点介绍了一种基于TI OMAP3530双核处理器的嵌入式网络视频服务器,它基于嵌入式Linux操作系统,采用H.264视频编码技术和RTP/RTCP传输协议, 充分发挥ARM的事件处理控制能力及DSP对数字视频大吞吐量要求。该服务器采用模块化的设计思想,各个模块之间具有很强的独立性和可扩展性,简化了系统的硬件设计,提高了系统的灵活性,可广泛应用于数字视频监控、视频会议等领域。
摘要:为了解决网络视频通信中对视频图像清晰度要求高以及减少视频过多占用网络资源的问题,构建高效、实时、可靠的数字视频监控系统,设计了一种基于OMAP3530双核视频处理芯片、H.264编码技术、嵌入式Linux操作系统、RTP/UDP网络传输协议的数字视频服务器,详细介绍了视频服务器的硬件结构、软件设计以及视频数据网络传输与处理等主要技术。实验结果表明,该服务器的关键技术指标满足应用要求,能够满足监控系统视频图像的实时性要求。
关键词:网络视频服务器,OMAP3530,ARM,DSP
参考文献
[1]高海英,王志宇.基于ADSP-BF533的嵌入式网络视频服务器的研究与实现[J].电子技术应用,2005(1):59-61.
[2]Texas.OMAP35x application processor technical reference manual[EB/OL].[2012-06-20].http://www.ti.com.
[3]Texas.TVP5158 Data Manual[EB/OL].[2012-06-20].http://www.ti.com.
[4]MT29C1G24MADLAJA-6 IT Data Manual[EB/OL].[2012-06-20].ht-tp://www.ti.com.
[5]SMSC.LAN9211 Data Manual[EB/OL].[2012-06-20].http://www.ti.com.
[6]Texas.TPS65930 Integrated Power Management Data Manual[EB/OL].[2012-06-20].http://www.ti.com.
[7]范斐斐.基于OMAP5912的H_264编解码器的实现[D].武汉:武汉理工大学,2008.
[8]于雪莲,陈钱,顾国华.基于i_MX27的H.264网络视频监控系统设计[J].电视技术,2009,33(5):119-121.
[9]高成,周飞,周东翔,等.基于3G网络的移动视频监控系统服务器端的设计[J].计算机工程与设计,2011(6):1873-1876.
[10]刘源,朱善安,叶旭东.基于DM642的嵌入式视频监控系统硬件设计[J].电子器件,2008(9):907-908.
[11]薛漪,马伍新.基于TMS320DM642芯片H.264编码器的设计[J].计算机工程与设计,2005(5):1158-1160.
浅谈高等艺术院校网络服务器的选择 第4篇
关键词:艺术院校 网络 服务器
中图分类号:TP393.08 文献标识码:A 文章编号:1673-8454(2009)21-0082-03
网络服务器可以说是整个校园网的核心,如何选择与本校校园网规模相适应的服务器,是有关决策者和技术人员都要考虑的问题。本文主要结合网络服务器的特点和分类谈谈高等艺术院校网络服务器的选择问题。
一、网络服务器的概念与应用层次分类
网络服务器是指在网络环境中为客户机(Client)提供各种服务的、特殊的专用计算机,简称服务器(Server)。在网络中,服务器承担着信息的存储、处理、发布等关键任务,是各类基于客户机/服务器(C/S)模式网络中不可或缺的重要组成部分。在中小规模艺术高校中,网络服务器可能就是一台性能较好的PC机,不同的只是其中安装了专门的服务器操作系统,使得这样一台PC机担当起了服务器的角色,俗称“PC服务器”。当然由于PC机与专门的服务器在性能方面差距较远,所以由PC机担当的服务器无论是在网络连接性能,还是在稳定性能等各方面都不能承担高负荷任务,只能适用于小型且任务简单的网络。
服务器说到底其实也是一种计算机,它也是由PC机发展过来的。在早期网络不是很普及的时候,并没有服务器这个名称,当时在整个计算机领域只有大型计算机和微型计算机两大类。只不过随着网络,特别是局域网的发展和普及,“服务器”这个中间层次的计算机开始为业界所接受,并随着网络的普及和发展不断得到发展。尽管如此,服务器与我们普通所见的计算机又不完全一样,虽然服务器也与PC机一样是由诸如主板、CPU、内存、硬盘等组成,尽管外观上也基本类似,但这些硬件又都不是普通PC机所用的,而是专门开发用于服务器环境的。
根据服务器在网络中应用的层次(或服务器的档次),我们通常将服务器分为入门级服务器、工作组级服务器、部门级服务器、企业级服务器。
入门级服务器是最基础的一类服务器,也是最低档的服务器。随着PC技术的日益提高,现在许多入门级服务器与PC机的配置差不多。它所包含的服务器特性并不是很多,所连的终端有限(通常为20台左右),况且稳定性、可扩展性以及容错冗余性能较差,仅适用于没有大型数据库数据交换、日常工作网络流量不大、无需长期不间断开机的小型网络用户。
工作组服务器是比入门级高一个层次的服务器,但仍属于低档服务器之类。它只能连接一个工作组(50台左右)的用户,网络规模较小,服务器的稳定性也不像企业级服务器那样高,当然在其他性能方面的要求也相应要低一些。工作组服务器较入门级服务器来说性能有所提高,功能有所增强,有一定的可扩展性,但容错和冗余性能仍不完善,也不能满足大型数据库系统的应用,但价格也比前者贵许多,一般相当于2~3台高性能的PC品牌机总价。目前,国内有些艺术院校的网络中心就使用这样的服务器进行校园网管理。
部门级服务器属于中档服务器系列,一般都是支持双CPU以上的对称处理器结构,具备比较完全的硬件配置,如磁盘阵列、存储托架等。部门级服务器的最大特点就是,除了具有工作组服务器的特点外,还集成了大量的监测及管理电路,具有全面的服务器管理能力,可监测如温度、电压、风扇、机箱等状态参数,结合标准服务器管理软件,使管理人员及时了解服务器的工作状况。同时,大多数部门级服务器具有优良的系统扩展性,能够在业务量迅速增大时及时在线升级系统,充分保护了用户的投资。以前能生产部门级服务器的厂商通常只有IBM、HP等几家,现在随着其他一些服务器厂商开发技术的提高,能开发、生产部门级服务器的厂商比以前多了许多。国内也有好几家具备这个实力,如联想、曙光、浪潮等。部门级服务器可连接100个左右的计算机用户,适用于对处理速度和系统可靠性要求高一些的中小型高校网络,其硬件配置相对较高,可靠性比工作组级服务器要高一些,当然其价格也较高(通常为5台左右高性能PC机价格总和)。这类服务器是艺术院校普遍使用的校园网络服务器。
企业级服务器属于高档服务器行列,正因如此,能生产这种服务器的企业也不是很多,但因没有行业标准硬性规定企业级服务器需达到什么水平,所以现在也看到了许多本不具备开发、生产企业级服务器水平的企业声称自己有了企业级服务器。企业级服务器最起码采用4个以上CPU的对称处理器结构,有的高达几十个。另外一般还具有独立的双PCI通道和内存扩展板设计,具有高内存带宽、大容量热插拔硬盘和热插拔电源、超强的数据处理能力和群集性能等。企业级服务器的机箱一般为机柜式的,有的还由几个机柜组成,像大型机一样。企业级服务器产品除了具有部门级服务器全部服务器特性外,最大的特点就是它还具有高度的容错能力、优良的扩展性能、故障预报警功能、在线诊断和RAM、PCI、CPU等具有热插拔性能。目前在全球范围内能生产高档企业级服务器的厂商也只有IBM、HP等几家,绝大多数国内外厂家的企业级服务器都只能算是中、低档企业级服务器。企业级服务器适合运行在需要处理大量数据、高处理速度和对可靠性要求极高的金融、证券、交通、邮电、通信或大型企业。企业级服务器用于联网计算机在数百台以上、对处理速度和数据安全要求非常高的大型网络。企业级服务器的硬件配置最高,系统可靠性也最强。
应该说这四种类型服务器之间的界限并不是绝对的,并且随着服务器技术的发展,各种层次的服务器技术也在不断地变化发展,也许目前在部门级才有的技术将来在入门级服务器中也必须具有。而且这几类服务器在业界也没有一个硬性标准来对其进行严格划分,它们大多时候是针对不同生产厂家的整个服务器产品线来说的。由于服务器的型号非常多,硬件配置也有较大差别,因此,高等艺术院校不必拘泥于某某级服务器,不能为节省经费降低网络服务器层次要求,也不能为盲目追求档次而浪费经费,而是应当根据自己网络的规模和服务的需要,并适当考虑相对的冗余和系统的扩展能力。特别是随着办学规模的扩大,对服务器的要求也会随着不断增长,如果服务器具有较强的扩展能力的话,就不会出现较短时间内要重新购买服务器的问题,我们只需购买一些扩展部件就可完成对服务器性能的升级。如IBM的企业级x架构服务器中就具有一种“按需扩展”的理念,就能实现这样的愿望。其实有类似理念的还有HP的“按使用支付”理念,当然这两种理念之间还是有较大区别的。IBM的“按需支付”就是您现在可以不购买将来才用得上的服务器组件,在将来您需要了再另外购买。而HP的“按使用支付”则是HP先把整套服务器设备卖给您,如果您认为有些组件目前用不上,而又有可能是将来用得上的,则在目前只需要支付您目前用得上的部分费用,至于暂时用不上的可以先不支付,等您认为用得上了,再为您安装上,您再付费,其实用途与上面IBM的“按需支付”一样,都是想减少客户的设备投资风险。
二、网络服务器的选择要素
1.以性能稳定为前提
为了保证校园网能正常运转,艺术院校选择的服务器首先要确保稳定,因为一个性能不稳定的服务器,即使配置再高、技术再先进,也不能确保校园网正常工作,还可能给学校造成难以估计的损失。另外一方面,性能稳定的服务器还意味着为学校节省维护费用。这其实也是服务器的“可用性”和“可利用性”的特点所决定的。
对一台服务器首先要求的是它必须可靠,这就是服务器的“可用性”。服务器要为很多用户提供服务,没有高的连接和运算性能是无法承受的,这就是服务器“可利用性”。服务器所面对的是整个网络的用户,而不是本机登录用户。只要网络中有用户,服务器就不能断。在一些特殊应用领域,即使没有用户使用,服务器也必须不间断地工作,必须持续地为用户提供连接服务,而不管是在上班,还是下班,也不管是工作日,还是休息日、节假日,这也是为什么服务器首先要求必须具备极高的稳定性能的根本原因。一般来说专门的服务器都需要7×24小时不间断工作,特别是像一些大型的网络服务器,如大规模高校所用服务器、网站服务器以及提供公众服务的Web服务器等。这些服务器也许真正工作开机的次数只有一次,那就是它刚买回来全面安装配置好后正式投入使用的那一次,一直到它彻底报废。稳定性是服务器的最关键性能,也是能否担当服务器角色的前提。
2.以适用够用为原则
由于艺术院校本身的信息资源以及资金实力有限,不可能一次性投太多的经费去采购档次很高、技术很先进的服务器。对于中小规模的校园网而言,最重要的就是根据实际情况,并参考以后的发展规划,有针对性地选择满足目前信息化建设的需要又不需投入太多资源的解决方案。拥有先进功能、顶尖技术的高、新、全的服务器不但在价格上要远远高于市场上的普通服务器,更重要的是这些先进的功能对于艺术院校来说,可能很少用到或者根本就用不着。
面对市场上出现的“双核”服务器、“四核”服务器等热门产品,笔者认为不应该盲目跟从潮流。难道不用“双核”或“四核”服务器就意味着落伍、意味着工作效率降低吗?从典型应用研究可以看出,在大多数应用中,服务器中的CPU性能和安装的CPU数量并不是影响服务器性能的主要因素,如果你需要提升你的服务器性能,就需要找到影响服务器性能的原因,通过观察硬件资源实际使用情况这样的简单诊断方法,来判断该提升哪一方面的系统性能,比如CPU平均占用率、内存平均使用数、网络带宽使用量、磁盘读写繁忙程度,或请专业人员进行诊断,然后“对症下药”进行优化升级,才能真正地解决问题。从各方面反馈的信息来看,“四核”服务器主要在“高性能计算、高密度计算、虚拟化与服务器整合”方面发挥着很大作用,但对中小型网络管理来说意义不大。所以艺术院校选择切合自身需要的服务器产品才是最重要的。
3.充分考虑可扩展性
由于校园网处于不断发展之中,快速增长的应用不断对服务器的性能提出新的要求,为了减少更新服务器带来的额外开销和对教学的影响,服务器应当具有较高的可扩展性。网络不可能长久不变,如果没有一定的可扩展性,用户一旦增多就不能胜任,一台几万甚至几十万的服务器短时间内就要遭到淘汰的话,就会造成学校经费的浪费。为了保持较高的可扩展性,通常需要在服务器上具备一定的可扩展空间和冗余件(如磁盘矩阵位、PCI和内存条插槽位等),通过及时调整配置来适应校园网的发展。
4.注重易操作性和可管理性
艺术院校通常没有很专业的技术人员来维护和管理服务器,这就要求服务器产品必须具有非常好的易操作性和可管理性,当出现故障时无需专业人员也能将故障排除。所谓便于操作和管理主要是指用相应的技术来提高系统的可靠性能,简化管理因素,降低维护成本。对于那些没有网络管理人员的艺术院校,尤其要注意选择一台操作简单的服务器。服务器必须具备自动报警,并配有相应的冗余、备份、在线诊断和恢复系统,以备出现故障时及时恢复服务器的运作,这是服务器“可管理性”的要求。虽然我们说服务器需要不间断持续工作,但再好的产品都有可能出现故障的一天,拿人们常说的一句话来说就是:不是不知道它可能坏,而是不知道它何时坏。服务器虽然在稳定性方面有足够的保障,但一旦出现故障该怎么办,如果像我们平时所用的计算机一样停下来进行维修,对于一个大型的服务器来说是不可能的事,这样就很可能造成整个网络的瘫痪,所带来的损失是无法用金钱来衡量的。服务器生产厂商为了解决这一难题提出了许多新的技术,如冗余技术、系统备份、在线诊断技术、故障预报警技术、内存查纠错技术、热插拔技术和远程诊断技术等,使绝大多数故障能够在不停机的情况下得到及时修复。
5.满足特殊要求
不同艺术院校的校园网应用侧重点不同,对服务器性能的要求也不一样。比如VOD服务器要求具有较高的存储容量和数据吞吐率,而Web服务器和E-mail服务器则要求24小时不间断运行。如果校园网服务器中存放的信息属于机密资料,这就要求选择的服务器有较高的安全性。
6.配件搭配合理
为了能使服务器更高效地运转,我们要确保购买的服务器内部配件的性能必须合理搭配。例如我们购买了高性能的服务器,但是服务器内部的某些配件使用了低价的兼容组件,就会出现有的配件处于瓶颈状态,有的配件处于闲置状态,最后的结果是整个服务器系统的性能下降。一台高性能的服务器不是一件或几件设备的性能优异,而是所有部件的合理搭配。要尽量避免小马拉大车,或者是大马拉小车的情况。低速、小容量的硬盘、小容量的内存,任何一个产生系统瓶颈的配件都有可能制约系统的整体性。
7.理性看待价格
“价格越低越好,性价比越高越好”,这永远是一个理想的追求。无论购买什么产品,用户都会很看重产品的价格。当然“一分价钱一分货”,高档服务器的价格比低档服务器的价格高是无可非议的事情。但对于校园网来说,不一定非得购买那些价格昂贵的服务器,尽管高端服务器功能很多,但是这些功能对艺术院校来说使用率不高,反而会白白浪费资金。性能稳定、价格适中的服务器应该是艺术院校建设校园网的较好选择。同时,在注重采购成本的同时,还要充分考虑维护成本。一个产品的价格不仅指购买它时的资金,也包括今后维护它所需的经费。
8.售后服务完善
由于服务器的使用和维护包含一定的技术含量,这就要求操作和管理服务器的人员必须掌握一定的使用知识。但对于大多数艺术院校来说,可能没有专职人员来维护服务器。因此选择售后服务好的来购买,应该成为艺术院校用户明智的选择。售后服务好基本上体现在便捷的联系方式、迅速的响应机制、热情及时的上门服务、全面准确的售后服务报告(用书面的报告形式让用户知道问题)、质保期的内容和层次透明而清晰等等方面。产品相当的情况下,就是要选择那些能提供完善售后服务的供应商。
校园网络服务器管理是一项技术性极强的实践工作,只有不断在工作中探索总结,才能真正选择好适合自身学校发展需要的网络服务器,更好地为艺术院校的教学、科研和管理工作服务!?筅
参考文献:
[1]谢志伟,李贤阳.谈述网络服务器[J].福建电脑,2006(8).
[2]曾宪权,葛畅.网络服务器技术研究与实现[J].计算机与数字工程,2007(3).
[3]李宁.网络服务器维护[J].天津冶金,2006(6).
[4]优选网络服务器──HA、HS和HR[J].信息化建设,2000(6).
[5]朱圣瑜.如何选购网络服务器[J].微电脑世界,1997(1).
服务器虚拟网络接口的研究 第5篇
数据处理的流程包括数据采集、数据预处理、解算等。数据采集是接收机记录原始观测数据。数据预处理阶段的主要工作包括数据传输和解码、数据筛选和编辑、数据标准化、接收机钟差估算、差分观测值或线性组合观测值形成、基线向量近似值估算和周跳探测、修复或标记等。数据解算指对采集到的观测值进行处理,最终输出相应的结果。
在数据筛选和编辑过程中,将根据观测值的信噪比、卫星高度角、卫星健康状态、观测值间的同步情况等对数据进行整理,数据筛选的过程和标准应该是可以设定和编辑的。必须在建立基线解算的误差方程前对周跳进行探测,并对所探测出的周跳进行处理。探测周跳的方法有多项式拟合法、历元间高次差法、残差法、伪距法,以及利用几何条件关系的组合观测值来进行跳周探测。数据处理软件所采用的应该支持经典的跳周探测方法,同时,周跳探测方法对于高级用户而言应该是开放的,他们可以在使用的过程中加入自己的周跳探测方法,以便科学研究。其他数据处理子过程,类似与跳周探测,存在多种算法和模型。数据处理软件必须能够支持对同一种处理过程采用不同的算法。
1 数据处理软件对多种数据处理算法和模型的支持
为了适应不同的应用,数据处理软件支持多种数据数量算法和模型是必要的。下面以跳周探测算法为例给出了支持多种数据处理算法的设计方法。
Cycleslip Detector定义了所有支持算法的公共接口,Cycleslip Detection定义了使用这个接口来调用某个算法,它的子类是具体类,实现了不同的算法。Cycleslip Detector和Cycleslip Detection相互作用以实现选定的算法。当算法被调用时,Cycleslip Det ection可以将算法所需要的所有数据传给算法实现者。Cycle-slip Detection将它的客户请求转发给它的Cycleslip Detector。实现类图如图1 所示。
Cycleslip Detector类层次为Cycleslip Detection定义了一系列的可重用的算法和行为,继承有助于析出这些算法中的公共功能。继承提供了另一种支持多种算法和行为的方法。一种实现方案,可以直接生成一个Cycleslip Detection的子类,从而给他不同的行为。但这将会将行为硬行编制到Cycleslip Detection中,而将算法的实现与Cycleslip Detection的实现内容混合起来,从而使Cycleslip Detection难以理解、难以维护和难以扩展,而且还不能动态的改变算法。最后得到一组相关的类,他们之间唯一的差别是他们使用的算法。将算法封装在独立的Cycleslip Detector中,使Cycleslip Detector可以独立于Cycleslip Detection,这样算法可以切换、扩展和理解。Cycleslip Detector可以根据对时间/空间的要求,对相同的行为提供不同的实现方法。这样实现也有一些缺点,增加了Cycleslip Detector和Cycleslip Detection之间的开销。无论Cycleslip Detector实现的算法是简单还是复杂,他们都共享Cycleslip Detection的接口。因此很有可能某些Cycleslip Detector不会用到所有通过这个接口传递给他们的信息,这就意味着Cycleslip Detection会创建和初始化一些永远用不到的信息。如果这是不可容忍的,那就需要在Cycleslip Detector和Cycleslip Detection间进行更加紧密的耦合。在实现的过程中应该考虑两个类之间的接口必须使Cycleslip Detector能够访问Cycleslip Detection中的任何数据,反之亦然。一种办法是将Cycleslip Detection的数据放在参数中传递给Cycleslip Detector操作,也就是说将数据发送给Cycleslip Detector。
2 数据处理流程设计
数据处理过程由一系列子过程组成,按正常流程这些过程是顺序的,但是如果在数据处理过程中出现异常情况,执行流程会有所不同。随着应用的发展这些流程将会发生变化,因此,数据处理软件应该适应并且支持这种变化。将数据处理的子过程封装成许多对象目的是增强复用性,降低耦合度,但是对象相互连接的激增会增加耦合度,降低复用性。使用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。实现方法如图2 所示。
Data Process Mediator定义了与各个子过程通信的接口。每一个Data Process Mediator的子类对应了一个处理过程,确定子过程之间的协作。每一个Sub Process的子类对应了一个数据处理的子过程。
这样设计将原本分布在对个对象间的行为集中在一起,改变这些类的行为只需生成Data Process Mediator的子类即可。这样多个同事类可以被复用。Data Process Mediator有利于Sub Process的解耦,可以独立的改变和复用Data Process Mediator和Sub Process类。使用Data Process Mediator和Sub Process之间一对多的交换代替多对多的交互。一对多的关系更易于理解、维护和扩展。将中介作为一个独立的概念并封装在一个对象中,使我们的注意力从对象各自本身的行为转移到它们之间的交换上来,有助于理解数据处理软件的子过程是如何交互的。当数据处理的流程相对固定时,没必要定义接口类,设计提供的抽象耦合已经使各个Sub Process类一起工作。Sub P rocess向Data Process Mediator发送和接受请求,Data Process Mediator在各个Sub Process协调以完成数据处理。
3 数据处理软件内存优化的索引结构
为了提高数据处理的速度,在数据处理的过程中,我们将所有的数据都装载入内存中,磁盘的访问时间为毫秒级,内存的访问速度为纳秒级,这样在数据处理过程中不再进行磁盘操作,可以大大提高执行速度。将数据装载入内存中以后,对数据的索引方式有很多种选择。对于磁盘数据库,有多种有效的索引结构,其中最有代表性的是B+树。B+树是一种适合于大型动态索引的结构,其检索与维护性能都很好,因而在磁盘数据库系统中己普遍使用,因为它既提供对关键字的随机存取又提供顺序存取,结构宽而浅,并且从根节点到任一叶节点都具有相同的也是最短的路径长度,符合常规数据库尽量减少磁盘访问次数的设计宗旨。适合于内存直接访问特性的索引方法包括可扩展的Hashing(Extendible Hashing)和T-Tree。基于哈希的索引技术只对等值选择有较好的效果,而对范围检索性能较差,其性能还不如扫描整个文件的方法。基于树的索引技术能有效的支持两种选择条件。在数据处理软件中为了提高效率采用T-Tree索引结构。T-Tree具有如下特点:
(1)T-Tree的左子树与右子树深度之差不超过l;
(2)在一个存储节点可以保存多个键值,它的最左与最右键值分别为这个节点的最小与最大键值,它的左子树仅仅包含那些键值小于或等于最小键值的记录,同理,右子树只包括那些键值大于或等于最大键值的记录;
(3)同时拥有左右子树的节点被称为内部节点(internal node),只拥有一个子树的节点被称为半叶(semi-leaf),没有子树的节点被称为叶子(leaf);
(4)为了保持空间的利用率,每一个内部节点都需要包含一个最小数目的键值。T-Tree的查询平均时间复杂度为O(log2N),N为节点数。
4 结语
对虚拟网络接口进行改进,能够允许Guest Domain发送包的大小大于MTU(链路层最大传输单元),从而有效的减少数据包的总数,间接的减少了Driver Domain和事件通道、授权表等引起的虚拟化网络性能的损耗。
参考文献
[1]李征航,黄劲松.GPS测量与数据处理[M].武汉:武汉大学出版社,2005.
网络服务器安全配置策略研究 第6篇
现在网络攻击的目的已不单纯的为了展示攻击者在计算机及网络方面超人的技术, 很多是为了通过攻击目标服务器以获取非法利益, 所以攻击的技术与手段越来越隐蔽, 发现的难度越来越大, 对服务器的安全性要求也越来越高。防火墙安全策略的设置、操作系统的漏洞、WEB应用程序本身设计的缺陷, 都可能成为被攻击的目标, 并以此为切入点入侵整个系统, 进而修改网页内容, 安装病毒木马程序, 影响被攻击服务器的正常运行, 并有可能被黑客当作跳板, 对其它计算机进行攻击, 影响更多计算机的正常运行, 对被入侵单位的声誉造成负面影响。本文主要研究服务器攻击的基本原理与一般过程, 并从操作系统本身的层面探讨如何进行网络服务器的安全策略设置, 增强服务器的安全性。
1 服务器攻击的基本原理
服务器攻击的总体思路就是寻找系统存在的漏洞, 以及人们在使用计算机的过程中容易忽略的安全设置, 发现可用于登录系统的途径, 进而在已成功登录的服务器上安装后门程序, 以方便入侵者进行后续的远程操作与控制。在整个入侵的过程中, 最为关键的一步就是寻找登录系统的突破口, 成功登录系统后安装后门程序以及在此之后控制整个系统都是非常简单的事情。在成功进入系统之后, 入侵者可以在服务器上创建专为其服务的用户账户, 安装满足其要求的控制端后门服务程序。用户账户相对比较容易发现, 在系统的用户管理界面中即可看到所有的账户, 而且一般服务器上系统用户也不会太多, 这样非法创建的用户就很容易找到。后门程序就比较难以发现, 因为后门程序可以存放在硬盘上成千上万的文件之中, 伪装成常用的应有程序进行运行, 并且可以只在必要的时间定时启动, 平时并不会执行, 这样除非有比较完善的日志系统, 并详细分析才有可能发现存在的问题。
为了简单快捷的设置而关闭系统防火墙, 采用系统默认的用户名, 使用简单的密码, 安装数据库系统采用默认的端口号, 采用默认的数据库登录名以及简单的密码或空密码, 为方便服务器的远程管理安装一些远程控制软件时完全采用默认设置等这些习惯性的操作都是极易留下安全隐患的, 很可能被入侵者所利用。
2 服务器攻击的一般过程
入侵者攻击服务器的目的通常是利用服务器的资源获得非法利益, 服务器的物理位置及网络地址对其来说并不重要, 因此攻击者的目标并不明确, 只要能为其利用即可, 所以一般情况下成功的攻击会经过主机探测、漏洞扫描、后门安装、控制利用四个阶段。
主机探测阶段的主要工作是寻找处于开机状态的服务器, 通常的做法是借助于一些扫描工具对一定IP地址范围内的主机进行探测。探测的方法可采用向目标主机发送ICMP回显请求, 与特定的端口建立TCP连接等, 因为通常情况下作为WEB服务器的80端口必然处于开放状态, 为了远程管理的方便远程桌面端口3389也会处于开放状态。通过探测找到处于开机状态的服务器之后即可进行下一步的漏洞扫描工作。
在漏洞扫描阶段也是借助于一些工具, 对探测阶段已经发现的处于开机状态的主机进行各项已知漏洞的扫描。通常首先扫描常用的远程管理软件服务端监听的端口, 如3389 (远程桌面) 、5900 (VNC) 、4899 (Remote Administrator) 等, 如果这些端口处于开放状态, 基本可以断定服务器上已经安装有这些远程管理工具, 因为不可能有其它软件刚好和这些软件的默认端口相同, 用这些远程管理客户端进行连接即可明确判断是否真正安装了这些远程管理工具。在扫描到已经安装有这些远程管理工具后即进行下一步工作, 破解用户名和密码, 通常采用暴力破解或者密码字典方法, 密码字典的方法更为普遍, 因为操作系统、远程管理软件通常都有默认的用户名或者密码, 如windows默认的用户名administrator、linux默认的用户名root, VNC甚至可以不设置用户名只设置密码, 为了安装调试的方便, 有时候管理员可能会将密码留空或者设置为简单的1234、abcd, 或者将密码设置成与用户名相同, 这些弱口令很容易被破解, 从而控制整个系统。在破解密码取得系统控制权的过程中, 也可以通过数据库管理系统的漏洞来实现, 如安装有SQL Server数据库管理系统的服务器会开放1433端口, 而数据库的默认用户名是sa, 管理员为了配置的方便常常会将密码也设置为sa或者留空, 这样入侵者就可以非常容易的连接到主机的数据库管理系统, 然后执行一些特殊的系统存储过程创建系统用户名和密码, 再借助远程桌面或者其它远程管理工具登陆到服务器上进行各种操作。
在成功扫描到系统漏洞取得系统控制权后安装后门的操作就非常简单了, 入侵者可以根据自己的需要在服务器上安装各种远程管理工具, 并添加新的操作系统用户名和密码, 以便在管理员修改密码后仍能控制整个系统。
当在服务器上安装远程管理工具, 取得系统的控制权后, 入侵者就可以利用服务器的计算资源与网络资源, 获取非法利益, 如最常见的在服务器上运行的网页程序中植入广告或者链接, 增加特定网站的点击率, 进而提高其在搜索引擎上的排名。修改原有的网页内容, 盗取注册用户的个人资料信息等。
在攻击服务器的过程中, 也有针对特定主机进行的, 在这种情况下服务器的IP地址是非常明确的, 不需要进行主机的探测, 而且也可能不容易探测出来, 如屏蔽ICMP数据包。在这种情况下入侵者通常会对该主机的所有端口进行扫描, 以发现可利用的漏洞。
3 服务器安全策略配置
主机探测和漏洞扫描是攻击过程中的关键步骤, 在服务器的安全策略中应特别注意防范, 后门安装和控制利用基本没有什么办法可以防范, 可做的是配置日志系统并定期查看, 及时发现正在进行的入侵活动并及时处理。
为隐藏主机、防止被探测到可以在操作系统防火墙上屏蔽ICMP回显请求, 防止通过发送回显请求的方式对主机进行探测。对于非必需的或者不用的端口也要通过系统防火墙进行关闭, 防止通过特定端口的扫描来判断对应IP地址的主机是否在线。有些端口必须要打开, 如为了远程管理的方便通常会开启远程桌面功能, 需要打开远程桌面对应的服务器端监听端口3389, 在这种情况下最好修改远程管理应用程序监听的默认端口, 并且不要修改为简单的端口如8888、1234等, 修改为较为复杂没有什么规律的端口如23568等等, 因为有些软件通过端口来对主机进行扫描, 扫描工具也会利用密码字典的原理对一些比较容易被使用的端口进行探测。同时由于修改后的端口通常都没有什么规律, 所以即使扫描到该端口处于开放状态, 也难以通过端口来猜测该端口上所绑定的应用。修改应用程序默认端口的方法虽然简单, 但却能在很大程度上提高系统的安全性。具体修改应用程序端口的方法可以查阅相关应用程序的说明文档, 一般都比较容易实现。
服务器通常必须对外开放一些端口, 如WEB应用服务器需要开放80端口, 完全避免对服务器的探测是不可能的, 在服务器被探测到的情况下加强安全防范策略, 尽可能的减少服务器详细配置信息的暴露显得尤为重要。服务器上应该避免安装不必要的应用软件和远程管理工具, 有些应用软件相互之间可能存在冲突, 同时安装会影响到系统的稳定性, 安装的远程管理工具太多, 配置的难度将增加, 考虑不够全面容易造成漏洞。对于必须安装的远程管理工具, 应注意采用必要的安全策略, 防止被扫描和猜测到。系统和远程管理用户名尽量不要采用默认设置, 密码要设置的足够复杂, 并注意设置合适的密码锁定策略, 防止暴力破解。设置复杂的用户名和密码在远程管理工具被扫描到的情况下也可有效防止系统入侵。服务器上应注意关闭不必要的调试信息输出, 防止通过调试信息探测系统配置信息并进一步找到入侵系统的突破口。如IIS (Interne信息服务) 默认情况下向客户端输出详细的错误信息, 而为了程序员调试方便, 错误信息中通常会包含有敏感的服务器配置信息, 如所使用的IIS版本、采用的数据库类型以及数据库文件名等, 这些信息很可能为下一步入侵提供重要参考信息, 如通过数据库文件名路径下载数据库文件, 猜测服务器上应用程序的目录结构。通过在IIS的配置中禁用向客户端发送详细的调试信息或者设置自定义的错误信息可有效防止向客户端暴露服务器敏感信息, 提高系统的安全性。
发现系统中已经存在的后门或者入侵的有效办法就是通过查看系统或应用程序的日志信息, 所以配置并经常查看系统的日志信息非常重要。尤其需要特别关注防火墙的日志信息, 发现有可疑的连接及时进行分析, 找到建立该连接的应用程序, 判断是正常的连接还是被远程控制的连接。对于WEB服务器应经常查看页面访问日志, 查看其中是否有可疑的页面访问, 及时发现网站是否被挂马, 以及是否有特殊的查询串, 找出网站应用程序被注入的漏洞。日志系统是发现正在进行的入侵活动的重要方法, 应注意将日志系统配置的完善全面。
4 小结
本文简要分析总结了网络服务器入侵的基本原理以及一般过程, 并在此基础上针对入侵的不同阶段总结了具体可行的应对策略, 希望对从事计算机网络服务器管理的人员能有一定帮助。由于网络病毒及攻击手段繁多, 操作系统和应用程序存在很多已知或未知的漏洞, 需要在平时的管理维护过程中不断研究分析各种入侵手段, 进而找到防范措施, 以保证服务器的安全性。
摘要:现在网络攻击的技术与手段越来越隐蔽, 发现的难度也越来越大, 服务器的安全性显得尤为重要。防火墙、操作系统、WEB应用程序都可能存在漏洞, 成为入侵途径, 本文主要探讨如何从操作系统的层面进行安全策略设置, 提高网络应用系统的安全性。
关键词:网络攻击,安全策略,服务器
参考文献
[1]乔素艳.Web服务器安全策略探讨[J].无线互联科技, 2012 (3) :72.
[2]丛佩丽.高校网站服务器安全防范策略[J].网络安全技术与应用, 2013 (2) :37-39+44.
[3]陈正权.物联网时代校园网服务器的安全配置策略研究[J].凯里学院学报, 2012 (6) :99-102.
[4]魏鹏.校园网络服务器的安全维护浅析[J].中国科技信息, 2011 (12) :93.
[5]文静, 谭政.服务器安全管理探析[J].广西轻工业, 2008 (11) :66-67.
网络服务器的安全防范对策 第7篇
关键词:网络服务器,密码安全,服务安全,管理制度
网络服务器存储着大量重要的数据, 加强服务器的安全是提高网络安全的重要环节。服务器操作系统本身的安全性还是很高的, 但是我们如果不进行相应的安全配置, 则达不到可信任计算机系统评估标准。我们需要在基本配置、用户密码安全设置、系统安全设置、服务安全设置、安全管理制度等方面进行相应的设置。
1 基本安装配置
1) 安装操作系统时注意安装正版的英文版的的操作系统, 并且在服务器上只安装一种操作系统, 过多的操作系统只会给入侵者更多的机会攻击服务器, 致使服务器重新启动到没有安全配置的操作系统, 从而破坏操作系统。
2) 给服务器硬盘分区时一定要使用NTFS分区。对于黑客来说存储在FAT格式的磁盘分区里的数据要比存储在NTFS格式的磁盘分区的数据更容易访问, 也更容易破坏。因此我们在进行分区和格式化时一定要采用NTFS分区格式, 这种分区格式比FAT格式具有更多的安全配置功能, 可以针对不通的文件夹设置不同的访问权限, 大大提高服务器的访问安全。
3) 做好数据的备份策略, 提高硬盘数据安全性。在考虑服务器服务器硬盘配置时, 应该考虑多个硬盘通过RAID方式进行数据的冗余。另外, 为避免硬盘损坏或者被盗, 按照“不要把所有鸡蛋放到同一个篮子”的理论我们应该使用单独的专门设备保存这些珍贵数据。如多机备份、磁带备份等。
4) 安装各种应用软件完成后, 尽快安装补丁程序。
5) 安装杀毒软件和软件防火墙, 及时升级病毒库, 可以有效清除病毒、木马、后门程序等。
2 用户密码安全设置
2.1 用户安全配置
1) 禁用gue s t帐号。有很多入侵都是通过这个账号进一步获得管理员密码或者权限的。如果不想把自己的计算机给别人当玩具, 那还是禁止的好。
2) 创建两个管理员帐号。创建一个一般权限用户用来收信以及处理一些日常事物, 另一个拥有Administrators权限的用户只在需要的时候使用。
3) 限制不必要的用户。去掉所有的Duplicate Us e r用户、测试用户、共享用户等等。用户组策略设置相应权限, 并且经常检查系统的用户, 删除已经不再使用的用户。这些用户很多时候都是黑客们入侵系统的突破口。
4) 把系统adm inis trator用户改名。大家都知道, Window s s e rve r的Adm inis trator用户是不能被停用的, 这意味着别人可以一遍又一遍地尝试这个用户的密码。尽量把它伪装成普通用户, 将Adminis trator账号改名可以防止黑客知道自己的管理员账号, 这会在很大程度上保证计算机安全。
5) 创建一个陷阱用户。什么是陷阱用户?即创建一个名为“Adm inis trator”的本地用户, 把它的权限设置成最低, 什么事也干不了的那种, 并且加上一个超过10位的超级复杂密码。这样可以让那些黑客们忙上一段时间, 借此发现它们的入侵企图。
6) 把共享文件的权限从e ve ryone组改成授权用户。任何时候都不要把共享文件的用户设置成“Everyone”组, 包括打印共享, 默认的属性就是“Everyone”组的, 一定不要忘了改。
7) 开启用户策略。使用用户策略, 分别设置复位用户锁定计数器时间为20分钟, 用户锁定时间为20分钟, 用户锁定阈值为3次。
8) 不让系统显示上次登录的用户名。默认情况下, 登录对话框中会显示上次登录的用户名。这使得别人可以很容易地得到系统的一些用户名, 进而做密码猜测。可以通过修改注册表不让对话框里显示上次登录的用户名。
2.2 密码安全设置
1) 使用安全密码, 注意密码的复杂性。一些公司的管理员创建账号的时候往往用公司名、计算机名做用户名, 然后又把这些用户的密码设置得太简单, 比如“welcome”等等。因此, 要注意密码的复杂性, 还要记住经常改密码。
2) 设置屏幕保护密码。这是一个很简单也很有必要的操作。设置屏幕保护密码也是防止内部人员破坏服务器的一个屏障。
3) 考虑使用智能卡来代替密码。对于密码, 总是使安全管理员进退两难, 密码设置简单容易受到黑客的攻击, 密码设置复杂又容易忘记。如果条件允许, 用智能卡来代替复杂的密码是一个很好的解决方法。
4) 开启密码策略控制。密码策略控制是否允许用户重新使用旧的密码, 在两次更改密码之间的时间, 最小密码长度, 以及用户是否必须混合使用大小写字母、数字和特殊字符。最低要求, 您应该要求每45天更改一次密码, 或要求至少8个字符的密码, 并确保开启了密码必须满足复杂性要求设置。
2.3 系统安全设置
1) 关闭默认共享。微软的初衷是便于网管进行远程管理, 它虽然方便了局域网用户, 但对我们来说这样的设置是不安全的。如果电脑联网, 网络上的任何人都可以通过共享硬盘, 随意进入你的电脑。更为可怕的是, 黑客可以通过连接你的电脑实现对这些默认共享的访问。所以我们有必要关闭这些共享。可以使用建立一个批处理文件放在启动项目里面的方法来删除默认共享。方法如下:
打开记事本, 输入或复制以下内容:
保存为NotShare.bat (注意后缀!) , 然后把这个批处理文件拖到“程序”“启动”项, 这样每次开机就会运行它, 也就是通过net命令关闭共享。如果哪一天你需要开启某个或某些共享, 只要重新编辑这个批处理文件即可 (把相应的那个命令行删掉) 。
2) 禁止用户从从软盘和光驱启动系统。一些第三方的工具能通过引导系统来绕过原有的安全机制。如果你的服务器对安全要求非常高, 可以考虑使用可移动软盘和光驱。
3 在服务安全设置方面
1) 把敏感文件存放在另外的文件服务器中。虽然现在服务器的硬盘都很大, 但还是应该考虑是否有必要把一些重要的用户数据存放在另外一个安全的服务器中, 并且经常备份它们。
2) 禁止建立空连接, 在默认情况下, 任何用户都可以通过空连接连上服务器, 进而枚举出帐号, 猜测密码, 可以通过修改注册表来禁止建立空连接。
3) 关闭不必要的端口, 开放的端口越多, 入侵者通过这些端口入侵的机会越多。我们可以根据相应的服务开相应的端口, 比如说一台WEB服务器需要开放80端口, 其他端口就关闭。我们可以通过本地网络自带的windows防火墙、核心交换机的ACL来设置什么服务就允许访问什么端口。
4) 根据“最少的服务+最小的权限=最大的安全”的原则, 可以把一些不需要的服务停止, 减少入侵者入侵的机会。服务器和人一样, 做的事越多了, 就越容易出现差错, 做的事越少则越专精, 不必要的错误就不会发生了。
4 制定相应的安全管理制度
从管理的角度, 通过一些文字性的规章制度规范、制约各种与网络服务有关的行为。加强网络服务器的实体安全, 如防水、防震、防盗、防火等, 如服务器机房的安全制度、上网行为管理制度、应急方案等等, 另外, 有条件的应该实施24小时机房值班制度。
5 结语
容错网络服务器系统可用性 第8篇
随着计算机技术的飞速发展和网络应用的日益广泛,保证网络的可用性成为一个关键问题。网络的可用性不仅与计算机网络的拓扑结构和流入网络的信息流有关,也与计算机网络各节点的配置和通讯设备的可用性有关[1]。为了提高计算机网络关键节点的可用性,目前主要采用两种方法:一是提高节点元器件的质量。但是由于元器件的质量不能无限的提高,而且还受环境的影响,因此用这种方法提高系统的可用性有一定的限制。二是采用容错技术。容错技术是指系统对故障的容忍技术,也就是指处于工作状态的系统中一个或多个关键部分发生故障或差错时,能自动监测与诊断,并能采取相应措施保证系统维持其规定功能或保持其功能在可接受的范围内的技术[2]。容错技术的实现采用冗余设计的思想,即通过增加硬件和软件开销来提高系统的可用性。现在计算机硬件的价格不断下降,采用这种方法比提高元器件质量要经济,而且对可用性的提高也是十分有效的。因此采用容错技术逐渐成为提高系统可用性的主要手段。
计算机网络的容错技术包括软件容错和硬件容错。软件容错极为关键的是选择具有容错能力的网络操作系统和软件[3]。硬件容错技术根据他们在网络系统中的位置分服务器端容错技术、网络连接端容错技术和工作站端容错技术三方面。由于网络服务器是典型的网络交换设备,并且在计算机网络中处于中心的地位,服务器的性能影响着整个系统数据的完整性和可恢复性,所以服务器中的容错方法成为计算机网络容错技术的主要内容[3]。在目前众多的服务器容错技术中,集群技术因其能够提供高的可用性和可伸缩性而得到了迅速广泛的应用。
服务器集群技术就是将一组相互独立的服务器用集群软件连接在一起,组成一个高度透明的大型服务器群的计算机系统,作为一个整体为客户端提供服务;当集群系统中某一台服务器发生故障时,其备援服务器便立即接管该故障服务器的应用,继续为前端的用户提供服务[4]。目前比较流行的集群技术包括:服务器镜像技术、应用程序错误接管技术和容错集群技术。
服务器集群技术的应用虽然可以提高系统的可靠度,但也增加了系统的复杂性,同时服务器系统是一个典型的软硬件故障相关性系统,即服务器硬件的故障往往要影响系统软件的正常运行,这使得对服务器集群系统的可用性分析变得非常困难。目前很少有文献对于集群计算机系统进行定量的可用性分析。本文采用广义的随机Petri网(GSPN)方法对HP双机双控容错系统进行了可用性分析。
1双机双控容错系统结构及故障机理分析
1.1双机双容错系统工作原理
HP双机双控容错系统结合了HP服务器产品的安全可用性与Cluster技术的优点,相互配合二者的优势。图1为HP双机双控容错系统的典型结构。
系统由服务器A、B组成,服务器拥有各自的系统盘,用来安装系统软件、数据库软件、应用软件和双机软件。每台服务器通过SCSI电缆与共享的数据盘相连,正常工作过程中,每台服务器运行不同的应用,应用数据被存储在共享的数据空间内。系统中两台服务器互为备份,服务器之间通过串口或内部网络来相互监测对方的心跳。当一台服务器发生故障时,这台服务器上所运行的应用程序将被另一台服务器接管,以继续为终端提供服务。
1.2系统可用性分析
由HP双机双控系统的结构及工作过程可得到系统的故障树如图2所示。
服务器中处理器、系统盘及系统的软件组成了系统的基本处理单元。处理器和系统盘的失效构成了基本处理单元的硬件故障,它与系统软件故障之间具有强烈的相关性,主要表现在:一方面,软件本身在运行过程中可能由于软件错误导致软件失效;另一方面,处理器和系统盘的临时故障可能导致软件的异常。
系统软件故障往往可以通过重启系统得以消除。系统硬件故障可以通过更换硬件设备或通过重启系统得以修复。
2双机双控系统GSPN建模
建立可修系统的可用性模型通常可以使用马尔可夫过程来描述。但是由于容错系统的复杂性和系统中软硬件之间存在故障相关,因此使用马尔可夫状态转移模型描述双机双控容错系统变得非常困难,即使能够建立起系统可用性模型,也会由于模型的复杂而无法求解。
本文采用广义的随机Petri网的方法(即GSPN)建立系统的可用性模型。GSPN方法具有层次化和模块化建模的优势,并且可以显式地描述软硬件故障相关性,比采用条件概率等方法更为优越精确[7,8]。因此GSPN被广泛地应用于通信网络性能和可用性建模中。
根据服务器集群系统的可用性特点,利用GSPN层次化建模优势,可以将集群系统模型分为基本处理单元可用性模型、冗余服务器子系统可用性模型、冗余数据磁盘子系统可用性模型。综合各个子系统的可靠性模型,可以得到服务器集群系统可靠性模型。
2.1基本处理单元GSPN可用性模型
服务器中处理器、系统盘及系统的软件组成了系统的基本处理单元。基本处理单元是一个典型的软硬件故障相关的子系统,图3所示为基本处理单元的硬件可靠性模型。
其中:H_ok表示单元硬件的完好状态;H_err表示单元硬件的异常状态;H_t表示单元硬件的临时故障状态;H_p表示单元硬件的永久故障状态;H_u表示单元硬件的可修复故障状态;H_nd表示单元硬件不可修复临时故障。
硬件处于正常运行状态H_ok下,由于各种因素的影响以λh的故障率发生故障H_e。硬件发生的故障H_e可能为需要人工进行维修的永久的故障H_p,也可能为临时的故障H_t。H_e成为H_p的概率为Ph,H_e成为H_t的概率为1-Ph。硬件发生永久故障H_p时需要人工进行维修,维修率为μh。硬件发生的临时故障H_t可能转化为两种可能:临时故障可能为自消除的故障H_u,H_u以δh的自恢复率自修复,出现的临时故障H_t为自修复临时故障H_u的概率为1-dh;临时故障也可能为不可自修复临时故障H_nd,H_nd以γh转化为永久故障H_p,临时故障为H_t为不可自修复临时故障的概率为dh。
图4所示为基本处理单元软件可靠性模型。
其中:S_ok表示软件的正常工作状态;S_e表示软件处于异常状态;S_fd表示系统完成软件错误的检测;S_d表示系统检测到软件故障; S_nd表示系统未检测到软件故障;S_err表示未检测到的软件错误转化为软件故障的中间状态;S_x表示软件的临时故障。
软件在正常运行状态S_ok下,可能由于种种原因,导致软件的异常S_e,使得软件的性能下降,比如产生内存泄漏、软件的某个模块不可使用等。对于这类软件的异常,操作系统以τd的速率完成对软件异常的检测S_fd,软件的异常可能被检测到,成为软件的故障S_d,需要软件重启,重启速率为τre。软件的异常也可能未被系统检测到S_nd。软件异常被检测到的概率为ds,软件的异常未被检测到的概率为1-ds。未被检测到的软件的异常可能最终转化为软件的故障S_d,也可能软件的异常经过一定的时间恢复正常。未被检测到的软件异常转化为故障的概率为1-td,转化的速率为ps。未被检测到的软件异常转化为td,恢复率为τex。
综合单元的软硬件模型,并考虑单元硬件故障对软件运行的影响,可以得到基本处理单元的可用性模型如图5所示。
其中:Prop表示硬件故障向软件传播的状态;FL表示基本处理单元的完全故障状态。
当单元处于临时故障状态H_u时,单元硬件一方面以δh的速率进行自恢复,在此期间,硬件的临时故障可能要传播到软件,即位置Prop中产生标识。此时将导致软件发生下列可能的行为:
• 如果软件处于正常运行状态S_ok,传播到软件的故障导致软件运行发生异常,即位置S_e中产生标识;
• 如果软件处于异常的运行状态,传播到软件的故障将直接导致软件发生可检测到的故障S_d或未检测到的故障S_nd。
当单元硬件发生需要人工维修的故障H_p时,单元系统处于完全的故障状态,即位置FL中产生标识,模型通过位置t1~t7清除软件的所有标识。但系统完成维修后,硬件恢复完好状态H_ok,系统以τre的速率重启机器,清除位置FL中的标识,系统的软硬件进入正常工作状态。
通过对基本处理单元GSPN模型进行仿真,可得到单元的有效状态(出现概率较高的状态)如表1所示。
表1中状态1为单元软、硬件均处于完好状态的概率;状态3表示单元的硬件处于完好的状态,而系统软件发生故障,此时需要重新启动计算机;状态6表示单元硬件完成了维修,等待重启计算机的状态;状态7表示单元的硬件发生故障,单元需要进行维修。
当单元处于状态3、状态6和状态7时,单元无法为服务器提供正常的服务,因此定义这三个状态为基本处理单元的故障状态。单元所处的其余状态,虽然软、硬件可能发生异常,但并不影响服务器基本功能的实现,称这些状态为单元的正常工作状态。
表2所示为基本处理单元硬件的故障率对单元的可用性的影响。
表2中Aw标识单元的可靠度,P(stat=1)、P(stat=3)、P(stat=6)和P(stat=7)分别标识单元处于状态1、状态3、状态6和状态7的概率。由表2可知,随着单元硬件的故障率的降低,单元的可用度不断升高。同时软件的故障概率(即单元处于状态3的概率)不断降低,最终稳定在一个常值。这表明,在硬件的故障率较高时,软件的故障同时受自身故障和硬件故障的影响。随着硬件故障率的降低,硬件的临时故障传播到软件的概率也降低,软件的故障主要由软件自身故障率造成。
表3所示为基本处理单元软件的故障率对单元的可用性的影响。
由表3可知,随着软件故障率的降低,软件的故障发生概率降低,系统的可用度不断提高。
为了简化基本处理单元的可用性分析,定义单元处于两种状态:故障状态和正常工作状态。单元的简化模型如图6所示。
简化后单元的GSPN可用性模型为一基本的可修系统模型。D.up状态表示单元处于正常工作状态,D.dn表示单元处于故障状态。在简化后的模型中需要确定单元的故障率和维修率。
由基本处理单元可用性模型的有效状态的分析可知,基本处理单元的故障状态包括状态3、状态6和状态7。其中状态6平均历时时间为1/τre,状态7平均历时时间为1/μh,状态3表示系统软平均历时时间为1/τre,则单元处于不可用状态的平均历时时间为:
取单元的μd=1/T作为简化后基本处理单元的维修率。根据可修系统理论[2],系统稳态可用度为:
由此可以确定简化后基本处理单元的等效的故障率λd。
当τre=3.3310-3/s,μh=2.7810-4/s时,对于表1中第一组数据经过等效处理,得基本单元的维修率为5.3210-4/s,故障率为2.2410-6/s。
2.2冗余服务器子系统GSPN模型
冗余服务器子系统由服务器A、B组成。每台服务器包含基本处理单元、网卡NIC和SCSI控制器三部分。从可靠性角度看,各部分之间为串联关系。图7所示为服务器B的GSPN可用性模型。
其中:G6.up表示处理单元B处于完好状态;G6.dn表示处理单元B发生故障状态;x9.up表示NIC-B处于完好状态;x9.dn表示NIC-B处于故障状态;x0.up表示SCSI控制器B处于完好状态;x0.dn表示SCSI控制器B处于故障状态;G4.up表示服务器B处于正常工作状态;G4.dn标识服务器B处于故障状态。
服务器正常工作过程中,处理单元、网卡和SCSI控制器分别以时间变迁t15、t17、t18所表示的速率发生故障,以时间变迁t16、t18、t20所表示的速率进行维修。当处理单元、网卡和SCSI控制器全部处于正常工作状态时,即位置G6.up、x9.up和x0.up中存在标识时,立即变迁t9触发,G4.up中产生标识,此时服务器B处于正常工作状态。当三者中有一个发生故障,都将导致位置G4.dn中产生标识,并通过立即变迁t3清除掉位置G4.up中的标识,此时服务器处于故障状态。
表4所示为服务器部件的故障率和维修率。
通过仿真得服务器的可靠度为0.946912。
同理可以得到服务器A的GSPN可用性模型。
根据系统的工作原理,服务器A、B从可靠度角度上为并联关系。图8所示为两台服务器构成的冗余服务器系统GSPN模型。
当服务器中至少一台处于正常工作状态时,即位置G4.up和G5.up中至少存在一个标识时,位置G1.up中存在标识,此时标识服务器系统处于正常工作状态。当两台服务器同时发生故障,即位置G4.dn和G5.dn中同时存在标识时,则立即变迁t35发生,G1.dn中产生标识,并通过立即变迁t38清除G1.up中的标识,此时服务器系统处于完全的故障状态。
2.3共享磁盘子系统GSPN模型
图9所示为共享磁盘子系统GSPN模型。
其中:y1.up表示共享数据盘1处于完好状态;y1.dn表示共享数据盘1发生故障状态;y2.up表示共享数据盘2处于完好状态;y2.dn表示共享数据盘2处于故障状态;G2.up表示共享磁盘系统处于完好状态;G2.dn表示共享磁盘系统处于故障状态。
系统在正常工作过程中,数据盘1和数据盘2分别以时间变迁t11、t12所表示的速率发生故障,以时间变迁t12、t14所表示的速率进行维修。当数据盘中至少有一个处于完好状态时,G2.up中存在标识,此时共享磁盘所组成的子系统处于正常工作状态。当两个磁盘均发生故障,即位置y1.dn和y2.dn中存在标识时,变迁t27触发,G2.dn中生成标识,并通过t37清除掉位置G2.up中的标识,此时共享磁盘子系统处于故障状态。故障的子系统中,任一磁盘完成了维修,G2.up中产生标识,并清除掉位置G2.dn中的标识,此时子系统重新进入正常工作状态。
3双机双控系统完整GSPN模型
通过对冗余服务器子系统和冗余数据磁盘子系统的GSPN可用性分析,可以得到系统的GSPN模型如图10所示。
其中:T.up表示系统处于正常工作状态;T.dn表示系统处于故障状态。
系统中,当冗余服务器子系统和共享数据磁盘子系统同时处于正常工作状态,即位置G2.up及G1.up中同时存在标识时,立即变迁t2触发,T.up中产生标识,此时对应着系统处于正常工作状态。当冗余服务器子系统和共享数据磁盘子系统中有一个发生故障,即位置G2.dn和G1.dn中存在标识时,T.dn中产生标识,同时清除掉T.up中的标识,此时对应着双机双控系统发生故障,需要对整套系统进行维修。
通过对系统的GSPN模型进行仿真,可以得到系统的有效状态(出现概率较高状态)如表5所示。
在表5中,状态1表示所有设备均处于完好状态,此时系统处于正常工作状态。状态2和状态3表示系统中某台处理器的基本处理单元发生故障,但由于系统的冗余配置,此时系统仍处于正常工作状态。状态4表示两台服务器的基本处理单元同时发生了故障,此时系统处于故障状态。
取数据磁盘的故障率为2.7710-7/s,维修率为1.15710-5/s,服务器部件的故障率和维修率取表4所列数据,通过仿真得系统各状态的稳态概率如表6所示。
系统的稳态可靠度为0.999836。与2.2节中单服务器系统相比,采用服务器集群技术虽然增加的系统的复杂程度,但极大地提高了系统的可靠度。
4结语
处于计算机网络中心地位的服务器的容错性能影响整个系统数据完整性和可恢复性。为了提高服务器系统的可用性,集群技术得到了广泛的应用。集群技术的应用一方面提高了系统的可用性能,但同时增加了系统的复杂性,使得对于服务器系统的可用性分析非常困难。
本文利用随机Petri网方法的模块化和层次化建模的优势,分层建立了服务器基本处理单元的可用性模型、共享数据磁盘的可用性模型、冗余服务器系统可用性模型,综合这些模型得到了冗余服务器系统可用性模型。通过对模型进行仿真分析可知,采用集群技术后,网络服务器系统的可用性得到了较大的提高。
摘要:通过分析服务器群集系统的结构和工作原理,采用随机Petri网分别建立基本处理单元的软硬件可用性模型、共享数据磁盘可用性模型和服务器可用性模型。综合各个模型,得到服务器集群系统的可用性模型,通过仿真分析可知,采用集群技术可以有效提高服务器的可靠性。
关键词:容错服务器系统,可用性模型,集群技术,随机Petri网
参考文献
[1]王先培.计算机网络可靠性概念体系及分析方法研究[D].武汉水利电力大学,1999.
[2]王少萍.工程可靠性[M].北京航空航天大学出版社,2003.
[3]刘卫明,洪联系.计算机网络系统的容错分析[J].微型机与应用,1998(8):34-35.
[4]张献华.高可用性集群技术介绍[J].信息技术,2002(5):37-42.
[5]欧阳珣.双机双空容错系统设计[J].微型机与应用,1999(5):53-54.
[6]Manish Malhotra.Dependability Modeling Using Petri-Nets[J].IEEETRANSACTION ON RELIABILITY,1995,44:428-440.
[7]Karama Kanoun.Fault-Tolerant System Dependability-Explicit Model-ing of Hardware and Software Component-interactions[J].IEEETRANSACTION ON RELIABILITY,2000,49:363-375.
日本推出“网络后事”服务 第9篇
随着记载葬礼形式等内容的“临终笔记”在日本逐渐普及,在网络世界安排后事的服务也引发关注。日本一家公司今年3月推出名为“最后的信息”的服务,旨在帮助处理用户去世后的个人信息等“网络遗产”,避免隐私泄露。
处理网络遗产
用户申请“最后的信息”服务后,首先会选定一名配偶或友人作为“特殊联系人”。随后,提供这一服务的公司每周会给用户发邮件确认其是否健在。若一段时间内没有回音,这家公司将请求用户的“特殊联系人”前去确认平安。
如果确认用户已去世,公司将向“特殊联系人”寄送一份资料,通知其删除网络数据的方法。删除内容包括去世者电子邮箱收信和发信记录、网页浏览记录、通讯录以及网上银行密码等。
东京一名现年52岁的男子今年5月申请了这项服务。这名男子说:“如果对网络个人信息放任不管,那些数据将永远留在网上。我申请这项服务是为了能过上没有后顾之忧的生活。”
开设悼念空间
雅虎公司今年7月也在日本开通类似服务。根据官方出具的火葬许可证确认用户死亡后,这家公司会自动向多达200名亲友发送事先准备好的告别邮件,通知对方用户死亡消息。同时,用户在网上的信用卡快速支付功能将自动停止。此外,用户还可设置“悼念空间”,展示自己的生平、照片、视频和遗言等内容,在网上发布告别信息,供亲友写下追悼信息。
雅虎公司目前仅在日本开通这项服务,暂未透露是否会向其他国家推广。
嵌入式视频服务器的软件设计 第10篇
1 优势
嵌入式网络视频服务器是一种对音视频数据进行压缩、存储及处理的专用的嵌入式设备, 具有广泛的应用, 它在视频监控、网络教学、视频会议、广告插播及视频节目点播等方面有着广泛的应用。视频服务器可以采用H.264, H.263, MPEG-2, MPEG-4等压缩格式, 在符合技术指标的情况下对视频数据进行压缩编码, 以满足存储和传输的要求。具有多通道输入输出、多种视音频格式接口。可配备SCSI, FC等网络接口进行组网, 实现视音频数据的传输和共享。
嵌入式网络视频服务器是一种专用的进行压缩、存储、处理视音频数据的专用计算机, 它由视音频压缩编码器、大容量存储设备、输入/输出设备、网络接口、视音频接口、RS422串行接口、协议接口、软件接口等构成。
视音频压缩编码器:由于视频图像数字化之后, 数据量很大, 因而要利用成熟的压缩技术, 将视频数据在满足技术指标要求的条件下进行高压缩比的压缩, 对视频数据进行压缩, 以满足存储和传输要求。常用的压缩标准有M-JPEG, MPEG-2, MPEG-4等压缩编码器, 通常用户可以根据实际情况来选择压缩码和压缩结构, 以适合于各种不同的播出场合, 即达到了节省硬盘空间, 其通常由于嵌入式视频服务器在网络上进行视频数据的传输, 通过对视频图像的压缩可以有效地节约网络带宽, 提高了网络传输的性能。大容量存储设备:视频服务器使用高速、宽带的SCSI接口硬盘或最为先进的存储。
网络视频监控服务器由于具有独立完成网络传输功能, 不需要另外设置计算机, 故其能实现简单的IP方式组网, 是传统的模拟监控所无法实现的。每部网络视频服务器具有网段内唯一IP地址, 通过网络连接方便对该设备 (IP地址) 进行控制管理, 也即通过IP地址识别、管理、控制该网络视频服务器所连接的视频源, 故其组网只是简单的IP网络连接, 新增一个设备只需要增加一个IP地址, 极大地方便了原由模拟系统的网络升级改造和其他网络需求情况。
由于网络视频服务器的工作可以不需要外置的计算机, 故网络视频服务器能独立自动上网就很有必要, 否则一台网络视频服务器配置一台计算机来实现拨号则失去了网络视频服务器的意义。目前国内的网络视频服务器基本上都能够实现该功能, 如网视通产品专门为国内宽带情况而设计的ADSL自动拨号技术则非常方便。
网络视频服务器的组网方式有诸多优点, 结合中央控制管理软件及服务器模式可以实现更多的网络应用。通过网络技术, 可以在实现只要能上网的地方就可以浏览画面, 采用配套的解码器则可以不需要计算机设备直接传输到电视墙等方式浏览, 极大地节约了远程监控的成本。
2 视频服务器应用软件的设计
2.1 数据结构
数据结构是对要描述对象的属性的抽象描述, 也是整个软件设计的基石和设计思想的体现。
2.1.1 视频数据存储区
视频流存储区存储的是经过压缩后的数字视频数据, 各个登录到视频服务器并发出视频流申请的客户端可以读取视频流存储区中的视频数据, 视频流缓冲的读写过程可用图1表示。
W表示缓冲区视频流的写入位置, R.表示第i个客户端在缓冲区中读取的位置。服务器视频流缓冲区的大小为1MB, 客户端从缓冲区中读取视频流有两种情况, 分别示于图1中的R1, R2。
其中, W表示写入的位置, 缓冲区为循环写入模式, 即:当写完缓冲区后会从初始位置重新写。R1, R2分别表示客户端1和客户端2的读取位置, 缓冲区大小为BUFFER, 对客户端1下一次能读取的视频流的大小为W–R1, 客户端2能读取的视频流大小为BUFFER_SIZE-R2+W。
为了表征视频流缓冲区, 可以用下面的结构体来完成:
其中*m_pBuffer是缓冲区的位置指针, 通过这个位置指针可以对视频流缓冲区的读写操作。m_ulWritePos是缓冲区的被写入视频数据的位置, m_ulReadPos是缓冲区被读取的位置;m_ulSize是缓冲区的大小;m_ulTotalWrite是缓冲区写入的总的字节数。
2.1.2 实时流接受客户端结构
实时流接收客户端结构设计成一单链表, 每一个客户端都可以用一个相应的结构体对象来表示。
其中, *m_pNext用来保存下一个客户端的结构体指针, 构成了一个单循环链表:m_ulReadIdx表示这个客户端在视频缓冲区中的读取位置;m_ifd表示此客户端的Socket的标记符;m_cltAddr用来存放此客户端的地址;m_lock此客户端的互斥锁;m_ulChannelID表示的是此客户端连接到的视频服务器的通道号;m_ulLink是视频服务器分配给每一个连接到它上的客户端的标识符, 这个标识符唯一地标识这个客户端, 视频服务器用这个标识符来完成与客户端的所有通信, 这是一个全局的标识符。m_ulTime表示客户端最后连接到视频服务器的时间, 通过这个时间和上一次连接的时间可以用来判断是否已经断开连接, 若超过某一个值就说明此客户端已经断开连接, 因而视频服务器可以回收分配给此客户端的资源;m_ulUserID是视频服务器分配给此客户端的ID号, 当有客户端登录到视频服务器上, 视频服务器就会给相应的客户端分配一个ID号;m_ulConnectMode表示的是此客户端连接到视频服务器的连接方式, 可以为TCP、UDP、组播等方式。
2.1.3 视频流头
这个视频流的结构主要包含的是视频流的一些参数, 这些重要参与在视频流的解码时用到, 因而很重要。其中m_szFlag用以存放视频流的格式, 可以是H.264, MPEG-4, 在本课题中为H.264;m_ulVersion表示的是软件的版本;m_ulCheckSum表示的是校验码;m一usStreamType是数据流类型, 这包括视频流、音频流、视音频流等;m_usVideoFonnat视频流的帧率m_usBitrate是视频码流;m_usGOP是画面组的长度, 视频压缩帧序列中分为I, P, B3种, 其中I是内部编码帧, P是前向预测帧, B是双向内插帧, 实质上I帧是一副完整的画面, 而P帧和B帧一记录的是相对于I帧的变化。没有I帧, P帧和B帧就无法解码;m_usCompression是压缩算法, 有H.264MPEG4, MJPEG等。
2.1.4 视频通道接收对象结构
视频通道接收对象结构体是对视频服务器视频通道的抽象化概括, 是非常重要的一个结构体。其中m_header是视频流的流头, 包含了视频流的重要参数;*pClient是申请此通道视频流的客户端的链表指针, 所有连接到视频服务器并申请此通道的客户端的信息都会保存在此链表中;m_buffer表示的是此通道的视频流缓冲区, 用以保存此通道的视频流;m_recordBuffer表示该通道的录像流缓冲区;m_u1ClientLinkNum表示当前连接到视频服务器并获取此通道视频流的所有客户端数目;m_lockWrite是一个互斥锁, 用于控制并发访问视频流缓冲区;m_lockCtrl也是一个互斥锁, 用于控制并发访问接收客户端链表。
2.1.5 客户端登录信息结构
其中, m_ulUserID是用户ID号, 是视频服务器分配给每一个登录到视频服务器上的客户的一个号, 用以标识此客户:m_ulTime表示的是最后一次登录到视频服务器的时间;m_ulActive表示此客户端是否是已经登录并己保存到登录客户端列表中的客户端。
2.1.6 视频编码器配置参数
这个结构用于配置视频编码器的参数, 视频编码器可以根据这些参数对视频数据进行编码。其中m_ulFormat是视频标准, 可以是PAL或NTSC制式, 我国采用的主要是PAL制式;m_usFramerate是帧率;m_usResolution是分辨率, 可以是QCIF, CIF, D1, VGA, QVGA;m_usCompression是压缩算法;m_usGOP画面组的长度;m_usBitrate是视频码流。
2.1.7 网络配置参数结构
这个结构用来保存视频服务器的网络配置参数, 其中, m_ulDeviceIP是视频服务器的IP地址:m_ulDeviceNetmask是视频服务器的子网掩码;m_ulGatewayIP是视频服务器的网关IP地址:m_ulMulticastIP是视频服务器的组播IP地址;m_szMacAddress是视频服务器的Mac地址;m_usServicePort是视频服务器的服务端口号。
2.1.8 RS232串口配置结构
这个结构主要用来配置视频服务器的串口, 其中m_ulBaudrate是波特率;m_ucDataBit是数据位;m_ucParityBit表示的是校验位;m_ucStopBit是停止位;m_ucFlowControl是流控位。
2.2 视频服务器通信协议
在主程序中有一个开启的TCP服务端, 这个服务端一直处于开启查询状态, 等待客户端的连接。当有客户端发来连接请求并连接到视频服务器的服务端时, 服务器就会给此客户端开启一个单独的线程来完成视频服务器与此客户端的全部通信, 所有通信的完成都是通过两者都遵循的通信协议来完成的。因此通信协议的制定对于整个视频服务器功能的实现非常重要。
客户端向视频服务器申请的所有服务都是通过上面的这种方式来实现的, 对应每一种服务, 比如:登录视频服务器、获取视频压缩码流、获取视频服务器的视频设置参数、修改视频服务器的参数等都对应于不同的通信协议来完成。客户端只有按己经规定好的视频服务器的通信协议将需求及完成这个任务所要求的参数发送给视频服务器, 检验通过后, 视频服务器才会响应, 并完成这个任务。
2.3 视频服务器各功能模块
设备应用层软件采用模块化的设计模式, 整个结构框图如图2所示。
2.3.1 视频流的采集和编码
视频数据的采集是通过TVP5150芯片实现的。在服务器启动之后, 系统通过激发TVP5150的驱动来完成视频数据的采集。在Linux操作系统下, V4L为获取视音频数据的API接口, 上层应用程序通过V4L接口调用TVP5150的驱动程序, 实现对视频数据的采集。在linux系统中, 对所有的设备的操作都是通过对设备文件的操作实现的。在本服务器中TVP5150设备对应的设备文件是"/dev/v41/video0", 通过指令open ("dev/v41/video0", Oes RDWR, 0) 可启动TVP5150。采集的视频数据流在IMX27芯片中经过压缩编码, 完成视频流的采集和编码。
2.3.2 视频流的反交错变换
由于通过摄像机采集到的视频图像是场交错的, 即:一帧视频数据由两场组成:奇数场和偶数场。为了获取高质量和高清晰度的视频图像, 本课题在视频服务器的设计中采用自适应去交错算法实现视频图像的反交错, 对静止和运动图像分别应用不同的去交错算法。对于静止视频图像画面, 直接将奇偶两场拼接为一场;对运动图像采用插值的方法去交错。
2.3.3 视频流的获取和分发
服务器视频流的获取采用回调函数的形式实现。在系统中设置一个全局的视频流接收回调函数。当有压缩编码后的视频流产生时, 系统会自动调用此回调函数将视频流写入到视频流缓冲区。因为这个过程由系统自动完成, 因此效率高, 实时性好。
3 结语
为了提高视频服务器的并发处理能力, 在设计服务器与客户端的通信时采用短连接的方式, 相比于长连接一次登录完成所有功能不同, 短连接实现原则是一次登录只完成一项功能, 完成之后立即释放所占用的资源, 等下次登录时再重新分配。这样可以实现资源的有效利用, 确保系统资源只分配给真正有需求的客户端, 有效地提高了服务器的并发能力。
摘要:介绍视频服务器的软件设计, 探讨嵌入式网络视频服务器的优势、数据结构、视频服务器通信协议以及视频服务器各功能模块的设计, 其中数据结构的设计是重点。
关键词:数据结构,视频服务器,通信
参考文献
[1]杨水清, 张剑, 师云飞.ARM嵌入式Linux系统开发技术详解[M].北京:电子工业出版社, 2008.
[2]韦东山.嵌入式Linux应用开发完全手册[M].北京:人民邮电出版社, 2008.
[3]KURT WALL, 张辉.GNU/Linux编程指南[M].北京:清华大学出版社, 2002.
网络视频服务器
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。


