基于ONVIF标准的高清网络摄像机的设计与开发_蔡小淳.docx

上传人:a**** 文档编号:6080 上传时间:2017-10-20 格式:DOCX 页数:60 大小:3.39MB
返回 下载 相关 举报
基于ONVIF标准的高清网络摄像机的设计与开发_蔡小淳.docx_第1页
第1页 / 共60页
基于ONVIF标准的高清网络摄像机的设计与开发_蔡小淳.docx_第2页
第2页 / 共60页
点击查看更多>>
资源描述

《基于ONVIF标准的高清网络摄像机的设计与开发_蔡小淳.docx》由会员分享,可在线阅读,更多相关《基于ONVIF标准的高清网络摄像机的设计与开发_蔡小淳.docx(60页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、暨南大学硕士学位论文 题名(中英对照 ): 基于 ONVIF标准的高清网络摄像机的设计与开发 The design and development of High-definition Network Camera based on ONVIF standard protocol 作者姓名: 蔡小淳 指导教师姓名 及学位、职称: 狄红卫博士 学科、专业名称: 光学工程 论文提交日期 : 2014年 04月 27日 论文答辩日期: 2014年 05月 26日 答辩委员会主席: 周金运教授 论文评阅人: 陈振强教授、李真副研究员 学位授予单位和日期: 暨南大学 2014年 06月 29日 独创性声

2、明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成 果,也不包含为获得 暨南大学 或其他教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名: 签字日期: 年 月 口 学位论文版权使用授权书 本学位论文作者完全了解 暨南大学 有关保留、使用学位论文的规定,有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被杳阅和借阅。本人授 权 暨南大学 可以将学位论文的全部或部分内容编入有关数据库进行检索,

3、可以采 用影印、缩印或扫描等复制手段保存、汇编学位论文。 (保密的学位论文在解密后适用本授权书 ) 学位论文作者签名: 签字口期: 年月口 学位论文作者毕业后去向: 工作单位: 通讯地址: 导师签名: 签字口期: 年月口 电话: 邮编: 摘要 视频监控被广泛地应用于国民生活和工业生产的各行各业。随着经济水平的增长和科 技研发的进步,视频监控呈现数字化、高清化、网络化、智能化的发展方向。高带宽、低 延时的 3G和4G移动通信网络以及不断改善的互联网环境为新的发展趋势提供了契机。近 年来推出的标准化安防接口 ONVIF协议,为改善众多不同品牌产品私有协议的互联互通性 能,提供了切实有效的途径。 本

4、文首先从高清网络摄像机 IPC (IP Camera)系统的需求分析出发,研究了硬件选用 的方案和软件系统的架构。系统采用具有硬件编解码功能的海思 H13518A芯片作为核心处 理器,搭配快速读写的 DDR3内存和符合工业标准的网卡。在充分研究 H13518A芯片结构 和功能的基础上,搭建了系统的运行平台 HiLinux、 根文件系统并开发了应用层软件。本文 采用 C/S和 B/S两种模式,设计了应用层软件 IPCAM主架构,并研发了各个功能模块。视 频压缩编码采用芯片的 H.264硬件编解码功能;借助多线程读写锁的功能,开发了用于保 存视频流的视频缓冲池; Web服务采用本文设计的支持多平台

5、协议的动态服务器;网络视 频点播由 RTSP流媒体服务器提供;对 ONVIF协议进行深入研究,借助 gSOAP工具高效地 开发 ONVIF框架,实现网络摄像机所必须支持的 ONVIF服务接口,并将其应用在系统架构 中。由 IPCAM完成对各个模块的初始化工作,并协调模块之间的业务调度。应用层软件主 要提供 Web访问界面友好、视频显示与传输、移动侦测、邮件报警、系统设置、互联互通 等功能。 本系统于 2013年底进入测试阶段,测试结果表明本系统功能完善、稳定性好,与其 它厂商产品互联互通,达到了高清化、网络化、即插即用的设计目的。 关键词:视频监控,高清网络摄像机, 0NVIF, 流媒体服务器

6、 Abstract In recent years, video surveillance technology has been widely used in all kinds of industrial production and daily life. With the development of economic level and technique, surveillance system is becoming digital, high definition and networking. The development of high-bandwidth, low de

7、lay 3G/4G mobile network and Internet provide an opportunity for the new development trend. The ONVIF protocol as the standardized interface of surveillance carried out a practical and effective way to improve the connectivity of many different brand products. First of all, this paper starting from

8、the demand analysis of IP network camera system elaborates systems architecture from the hardware and software aspects. Hi3518A chip which has the function of hardware encoding and decoding is used as CPU of systems, collocating with high speed accessing DDR3 memory and network interface card. The o

9、perating system, booting-file system and application software are developed, based on the study of Hi3518A chip. C/S and B/S architectures are used by the system to design and develop IPCAM application. H.264 video compression standard is used to encode video sources. Using multithreading read-write

10、 lock function, video buffer pool has been developed for storing streams. Web services are implemented by dynamic server supporting multi-platform protocol. Internet video is provided by RTSP stream server. The camera system has been supported ONVIF service interface with the tools of SOAP to effici

11、ently develop ONVIF framework in-depth study of ONVIF protocol. IPCAM application mainly provide friendly Web interface, video display and transmission, motion detection, E-mail alarm, system settings, plug and play. This system has entered the testing process by the end of 2013. Practice showed tha

12、t the system is feature-rich, stable and interconnection with other brand products. Key words: Video surveillance, High-definition IP camera, ONVIF, Streaming server 目 录 . I Abstract .II S 录 .III 第一章绪论 . 1 1.1 课题研究背景 . 1 1.2 视频监控系统的发展和现状 . 2 1.3 课题来源 . 2 1.4 主要工作和论文安排 . 2 第二章高清网络摄像机系统总体设计 .4 2.1 系统功

13、能需求分析 . 4 2.2 高清网络摄像机系统硬件方案 . 4 2.3 高清网络摄像机系统软件架构 . 7 2.4 本章小结 . 12 第三章高清网络摄像机应用软件模块开发 .13 3.1 IPCAM 主架构 . 13 3.2 视频压缩编码模块 . 13 3.3 视频缓冲池模块 . 16 3.4 设备系统配置 . 18 3.5 多平台 Web服务器 . 19 3.6 流媒体服务器 . 22 3.7 邮件报警 . 24 3.8 移动侦测 . 27 3.9 CGI通用网关接口 . 29 3.10 本章小结 . 31 第四章 ONVIF标准的研究和应用 . 32 4.1 ONVIF协议介绍 . 32

14、 4.2 ONVIF体系结构 . 33 4.3 基于 ONVIF的高清网络摄像机 . 36 4.4 本章小结 . 41 第五章系统测试 .42 5.1 测试目的和要求 . 42 5.2 测试设备和环境 . 42 5.3 刻列 . 42 5.4 结果分析 . 48 5.5 本章小结 . 49 第六章总结和展望 .50 詩 t南犬 .52 攻读学位期间发表的学术论文目录 . 54 M if . 55 第 一 章 绪 论 1.1课题研究背景 随着我国经济水平的高速增长,大范围人口流动的出现给社会治安、城市安全防范提 出了严峻的考验。经济増长的同时带来科技研发的进步,为解决这一重大难题带来强有力 的支

15、持。视频监控因其直观、方便、丰富的内容而被广泛应用于安防、监控行业,在金融、 商业、住宅小区、公共场所随处可见监控摄像头 1。在气象环境监测、地质灾害防范预警 等方面,视频监控也扮演着越来越重要的角色。 从 2004年开始,由公安部组织并实施了以杭州为代表的平安城市试点工程,给社会 治安和震慑犯罪活动带来巨大的益处。伴随着国内各个行业对安防产品不断提出更高的需 求,智能化、数字化、网络化的产品大量涌现,这些产品极大地促进安放行业的蓬勃发展。 2012年,在城市公共场所、道路交通、金融、教育和军队等领域的需求推动下,国内安放 行业的市场规模达到人民币 3240亿元。 进入 21世纪以来,互联网发

16、展迎来第二次高峰,特别是以 3G和 4G为主的移动网络 的出现,给各个行业的信息化提供技术基础。中国电信在全国商用的 3G网络使用的是 CDMA2000 IX EV-DO Rcv.A技术,最快理论下载速率为 3.1Mbit/s;升级至 Rcv.B网络后, 理论下载速率将提升 3倍,达到9.3Mbit/s。 而中国联通在多达 56个城市开通 HSPA+后, 网络下行速率最高可达 21Mbit/S。 3G给移动通信带来革命的同时,也促使安防产品从数字 监控向网络化、高清化监控过渡。传统的企业或专用安防属于固定监控,而个人、家庭的 民用监控更倾向于移动监控上。新时代社会的发展趋势对新型安防的要求是网

17、络化、数字 化、高清化,而带宽高、延时低、高质量的 3G和 4G网络以及不断改善的互联网环境,为 这一新的趋势提供了契机。 美国安防网站 SECURJTYINFO于 2011年 2月 23 口电子报头条新闻中引用 Memoori 调杳报告指出: 2010年全球安防产品总产值为 186.7亿美元,截止至 2013年,全球安防 产品人均销售额为 3.34美元,出厂总价值高达 2340亿美元 2。据中国安防网数据显示, 同 2008年相比,在过去 5年中,全球电子安防市场以年均 4.5%的增长率不断增长。预计 未来五年中,全球电子安防市场将保持 8%的年均增长率,并在 2017年达到 3,220亿美

18、元。 2013年到 2017年,视频监控等安防行业在现有的竞争局势下持续稳定发展,中国安防行 业尚存在 3到 5倍的市场空间。 1.2视频监控系统的发展和现状 近三十年来,安防监控行业经历了从无到有,从引进、模仿加工到自主创新的发展历 程,视频监控系统也经历了由模拟监控、半数字监控到全数字化监控的巨大跳跃 3。第一 代视频监控的功能是负责图像采集和图像输出,图像信号是单纯的模拟信号,通过同轴线 缆传送给视频接收端,包括显示器或录像机;第二代半数字化视频监控利用 CCD采集图 像后先经过数字信号处理器DSP, 由 DSP对图像进行一些处理后,再经过 D/A数模转换 器重新变换为 CVBS模拟信号

19、。第一、二代视频监控系统都有共同的缺点: 1)信号质量 由于经过模数转换、数模转换后降低。 2)模拟信号由同轴电缆长距离传输导致信号衰减 严重,噪声污染。 3)分辨率过低,无法满足高分辨率要求。4)同轴电缆传输距离局限性, 不适合长距离传输、跨区域传输。 为了从根源解决以上几个问题,第三代全数字化网络视频监控系统应运而生。工作流 程如下: CCD或 CMOS采集到图像信号数字化后直接送视频压缩编码模块,经过所有处 理过程后,通过网络传输给用户。第三代视频监控系统采用更高灵敏度的感光芯片,具有 高分辨率的采集能 力,达到视频高清化的目的。由于图像信号全部采用数字信号模式,避 免了多次数模 /模数

20、转换造成的质量降低、噪声干扰。图像的输出采用网络方式更加灵活方 便,不再受线缆长度和区域的局限,可以实现远距离传输 4。 数字化、网络化、高清化是第三代视频监控系统的特征,随着安防技术的逐步发展, 标准化则成为视频监控系统新时期的演变趋势。由于国内外生产安防产品的厂商众多,厂 商私有协议相差甚远,导致不同安防产品之间无法对接使用。这就要求视频监控满足接口 开放化、协议标准化。这其中包括音视频的压缩编解码、产品互联互通的接口等 。 1.3课题来源 本课题来源于广州市科技计划重点项目,课题任务是设计和开发基于 ONVIF标准的 高清网络摄像机系统,系统具有以下功能:实时高分辨率的远程监控画面和声音

21、;支持多 平台浏览器访问的 Web服务;实现即插即用功能的 ONVIF标准;智能的运动侦测、邮件 报警功能。 1.4主要工作和论文安排 本课题研究的内容是设计并开发 Web访问界面友好、功能丰富、支持多平台多协议处 理,实现与不同品牌产品即插即用的高清网络摄像机系统。系统主要包括视频显示与传输、 移动侦测、邮件报警、系统设置、互联互通等功能。所有的功能支持 C/S和 B/S两种方式, 2 Mac和 Linux平台用户可以通过浏览器使用, Windows用户可以使用私有客户端、浏览器 或者支持ONVIF协议的 ODM (ONVIF DEVICE MANAGE)软件访问摄像机。系统对 ONVIF标

22、准进行了深入的研究,并将其嵌入在系统架构中。 论文的章节安排如下: 第一章绪论。阐述了本课题的研究背景、发展现状和主要工作。 第二章高清网络摄像机系统总体设计。从需求分析出发研究了硬件的选用和软件系统 架构。 第三章高清网络摄像机系统应用软件的模块化开发。本章依据模块化的思想分别对前 一章提出的软件架构进行研究和实现。 第四章 ONVIF标准的研究和应用。本章对 ONVIF标准进行深入的研究,并实现在摄 像机系统应用中。 第五章系统测试。介绍了系统测试的目的、要求,并对测试过程进行详细的描述,对 测试结果进行分析。 第六章总结和展望。对本文工作进行总结,对未来进一步的工作指出方向。 第二章高清

23、网络摄像机系统总体设计 2.1系统功能需求分析 摄像机是视频监控系统中最重要的先决环节,负责视频图像的采集和音频的记录。尤 其是网络摄像机需要满足的功能更加复杂,包括视频编码和解码、视频点播服务、移动侦 测报警、隐私区域遮盖、用户管理、图像参数设置、系统参数设置、网络应用协议、良好 的 Web访问操作页面等 5。这就要求摄像机具有以下功能: 1) 优秀的运算能力 由于高清视频具有十分庞大的数据,只有通过视频编码技术才能降低存储和传输数据 的负荷。而进行如此大量的视频编码处理工作,需要运算性能强大的处理器 芯片。同时, 网络摄像机与普通的摄像机相比功能强大丰富,业务模块繁多。因此要求核心处理器能

24、够 胜任多任务处理的重担 6。 2) 快速的实时响应 网络摄像机应该满足快速视频编解码,响应用户对视频流的点播请求的同时及时处理 各个模块的任务,因此对调度整个摄像机系统软件的基础一一嵌入式操作系统要求具有良 好的实时性和高效性。 3) 先进的压缩编码 占用空间庞大的原始视频数据和有限的传输带宽制约着高清视频的发展。为了通过网 络实时且快速地传输高清视频流,在较窄的带宽的情况下还能流畅地传送清晰的图像,必 须借助先进的视频编码技 术如 H.264或 MPEG4压缩标准,通过编码后有效地降低传输的 数据量使得实时远程高清监控成为可能 7。 4) 方便的网络服务 由于 a前主流的电子设备所运行的操

25、作系统平台种类不一,系统平台之间存在不可避 免的差异性,用户使用不同的浏览器访问摄像机必然有所差别。本系统专门为各种不同平 台的用户设计了跨平台多协议流媒体服务器以处理这种差异。而用户可以使用不同操作系 统的浏览器和播放器通过各自的流媒体协议点播摄像机的监控视频,方便用户的使用。 2.2高清网络摄像机系统硬件方案 系统硬件方面主要考虑核心处理器 CPU、 运行内存 DDR和网卡三个方面。经过对系 统需求的具体分析可知, CPU需要提供快速硬件编解码的功能和强大的运算频率;运行内 存需要满足高速读写的要求;能够支持工业标准的网卡 8。 2.2.1核心处理器模块 本系统采用华为海思 Hi3518A

26、芯片作为摄像机的核心。 Hi3518A是海思为安防行业提 供的专业型高清网络摄像机 SOC, 它集成了 ISP和新一代的 H.264编码器。由于采用领先 于行业的低功耗设计,使得 Hi3518A具有低码率、低功耗、高质量的性能,其功能模块如 图 2-1所示。 图 2-lHi3518A功能模块图 Hi3518A支持的外围设备接口如图 2-2所示,具体技术参数如下: 1) 处理器内核 ARM926440MHz, 16KB I-Cache, 16KB D-Cache 2) 视频编码 H.264 Main Profile LeveM.O; H.264 Baseline; MJPEG/JPEG Base

27、line 3) 视频编码处理性能 H.264编码支持最大分辨率 2M Pixel H.264&JPEG 多码流实时编码能力: 720P30fps+VGA30龟 s+QVGA30龟 s+720P lfjsJPEG抓拍;支持 JPEG抓拍 720P30fj)s; CBR/VBR两种码率控制模式,输出码率范 围 32 40kbits。 编码帧率支持 1/16 30fj)s;支持 8个感兴趣区域编码和 8个编码前 OSD叠加。 4) 智能视频分析 集成智能分析引擎,支持周界防范、视频诊断、运动侦测等智能分析应用。 5) 音频编解码 实现多协议语音软件编解码,支持 G.711、 G.726、 ADPCM

28、多种协议。 6) 视频、音频接口 输入:支持 8/10/12 bit RGB Bayer输入,时钟频率最高 74.25MHz ;支持 BT.601、 BT.656 ;支持与 SONY、 Aptina、 OmniVision、 Panasonic 等主流高清 CMOS 对接;支持 与 CCD sensor对接;兼容多种 sensor电平;提供可编程 sensor时钟输出;支持输入最大分 辨率为 2M Pixel。 输出:支持负载自动检测;提供 1路 CVBS输出和 1个 BT.1120视频输出接口,用于 外扩 HDMI或SDI接口;支持 1080P30fps输出;集成 Audio codec,

29、支持 16bit语音输入 和输出。 7) 外围接口 支持 POR;集成高精度 RTC;集成 2通道 SAR-ADC; 3个 UART接口; IR接口、 I2C接 P, SPI/ ASP GPIOP; 3lPWMP; lSDIO2.0P, #SDHC ; l1USB2.0 HOST接口;支持 RMII和 Mil模式;提供 PHY时钟输出,支持 10/100Mbit/s全双工或半双工 模式。 图 2-2Hi3518A外围设备接口 2.2.2 网卡 MAC模块 Hi3518A的 MAC支持 RMII和 MII模式,本系统外置网口 PHY选用 LAN8740, RMII 图 2-3Hi3518A网卡模

30、块 MDIO需要接上拉电阻,电阻值为 4.7说。 MDCK信号在源端串联 22D电阻,以获 取更好的信号质量。 TXDO TXD3信号和 Hi3518端直连。 MII模式下, TXCK信号在 对接芯片端 ( 即网口 PHY)串联33Q电阻。 RMII模式下, TXCK复用为 RMII_CLK, 在 Hi3518端串联 33Q电阻。 RXDO RXD3信号和 Hi3518端直连即可。 RXCK信号在 对接芯片端 ( 即网口 PHY)串联 33D电阻。 2.2.3 DDR内存模块 Hi3518A支持 DDR3,接口电平标准为 SSTL-15,具有如下特点:提供 1个 DDRC接 口; Hi3518

31、A DDRC具备 1 个 DDRn SDRAM片选;支持数据总线位宽为 16bit/8bit; Hi3518A地址总线位宽为 14bit,DDR2时, DDRC接口支持: 16bit DDR2, 器件最大容 量 Hi3518A为 2Gb=256MB, Hi3518C为 lGb=128MB;DDR时钟频率 : 300MHz-440MHz。 DDR3 时 , DDRC 接 口支持 : 16bitDDR3,器件最大容量 Hi3518A 为 2Gb=256MB, Hi3518C 为 lGb=128MB; DDR 时钟频率: 300MHz-440MHz。 2.3高清网络摄像机系统软件架构 2.3.1嵌入

32、式平台简介 目前主流的嵌入式平台 0S免费开源的有 Linux、 uC/OSII, 收费商用的有 WindowsCE、 VxWorks、 PalmOS 等。 WindowsCE是微软推出的一款具有优秀人际交互界面、多任务、 32位兼容性良好的 7 微型嵌入式操作系统。 WindowsCE继承了 Windows的一系列优点,如功能丰富、界面出 色、兼容Windows系统接口、强大的开发工具。但是 WindowsCE实时性差,并且和 Windows 一样并不开放源码,开发成品所需的版权费也不可小视 9。 VxWorks是 1983年美国 WindRiver公司设计的一种实时操作系统,完善的系统设计

33、支 持多种标准和协议,如 P SIX、 ANSI C。 抢占式、轮转调度、中断处理等特点也使得 VxWorks 能够多任务、高效率处理业务。然而高昂的价格和税费限制了使用人数的增长,同样只提 供二进制代码的缺点使得开发人员稀少,也阻碍了其自身的发展壮大 work.lan.static ip.s addr; 当用户需要设置设备网关时,可以调用: SYSCONF t *pConf = SYSCONF_dup ; pConf-work.lan.static_gateway.s_addr=XXX.XXX.XXX.XXX SYSCONF_save(pConf); 其中, SYSCONF_save负责更新

34、 SYSCONF_t的值,并在重启后设置生效。如果需要 更改系统配置,应该在更改后重启设备。 系统也提供了设置 Sensor的一系列接口以便更改 Sensor的效果。 Sensor是摄像机采集 图像的感光元器件,视频图像的灰度、色彩度、对比度、饱和度、镜像翻转、红外灯模式 切换、白平衡、曝光补偿等参数,都可以通过设置 Sensor实现。 当更改了 SYSCONF_t图像质量方面的设置后,不仅需要调用 SYSCONF_save保存信 息,还要调用相应的 Sensor接口,如 SENSOR_contrast_set设置对比度。 3.5多平台 Web服务器 3.5.1 嵌入式 Web服务器介绍 1)

35、 lighttpd lighttpd是来自德国的一款性能较高、兼容性较好的开源 Web服务器,支持 CGI、 Author、 URL重定向、 Alias等功能,很多 Apache的功能也在 lighttpd上实现了。 Lighttpd的设计目 的是为高性能网站提供安全快速的 Web服务 17。 2) shttpd shttpd是一个比 thttpd功能更丰富的轻量级 Web服务器,不仅支持 CGI、 SSL、 cookie 和 MD5认证,还可以方便地嵌入专有软件。在使用 uclibc编译和开发 shttpd的情况下, 可以达到非常低的运行开销。 3) BOA 出现于 1991年,支持认证、

36、CGI的单任务 HTTP服务器,最大的优点是体积小至 60K 左右,而内存资源消耗也很少;由于它是单任务服务器,每次只能按照顺序完成用户的请 求而不能新建进程或线程并发处理连接 18。 4) thttpd thttpd是出自 ACME公司的易于移植的并发型 HTTP月艮务器,虽然体积较 Boa稍大一 些,但也是一款非常精巧的服务器,而且 thttpd支持扩展 HTTPS、 SSL等安全协议,从而 能够更安全地传输数据。 3.5.2 多平台 Web服务器设计 开源并且免费的嵌入式 Web服务器各有优缺点。功能丰富的服务器的最大缺点是体积 相对庞大,这使得其很少应用于嵌入式设备上。综合对以上几种流

37、行的 Web服务器的分析, 并没有一种功能满足本系统 Web服务的需求并且程序体积足够小、占用系统资源少的服务 器。尤其是以上开源的服务器功能要么相对单一,要么无法完全贴合本系统的需求。 与模拟摄像机使用同轴电缆进行模拟信号传输不同的是,网络摄像机需要接入互联网 进行数据传输。对于同一局域网内的设备并不会有太大问题,但是假如局域网外的某个互 联网设备需要访问摄像机时,需要对摄像机进行端口映射,以便外网设备可以正确访问摄 像机 19。这个过程也叫做 “ 打洞 ” 。如果摄像机上有多个应用程序使用不同的端口时,会 增加端口映射的工作,浪费大量的端口资源。 对此,本文根据系统的需求设计了一款能够同时

38、响应不同平台浏览器访问、无缝切合 IPCAM程序架构的多线程动态 Web服务器 IPCAM_Network, 并且能够使多个网络服务模 块共用一个端口。 IPCAM_Network的基本框架建立在 SPOOK之上。 SPOOK是整个 Web服务器的主体 框架,如图 3-5所示。 图 3-5 SPOOK流程图 SPOOK架构包含了系统所支持的各种网络协议,形成一个动态的协议簇集合。通过 判断当前请求连接的协议类型,对于匹配的请求调用相应的协议模块对请求进行响应。 SPOOK定义了 SPOOK_server的结构体变量类型,用于保存监听线程端口 port、 监听 循环开关 trigger、 监听线

39、程 tid、 协议集簾入口地址 entry。 协议集族的入口地址包含了 2 个函数指针,SPOOK_TASK_Probe 和 SPOOK_TASK_Loop。 SPOOK_TASK_Probe 判断请 求是否匹配当前协议的接口函数,而 SPOOK_TASK_Loop则是在匹配的前提下,调用当前 协议处理 Web请求的过程。通过回调函数的机制,将请求类型的判断和数据的处理过程交 由各个不同协议模块负责。 调用 SPOOK_init初始化全局变量 server,创建监听线程 server_do_poll和监听套接字 master_socket, 并设置指定的共享端口。当监测到有 Web服务请求连接

40、时,通过 accept接 收请求新建子socket。 为了防止套接字发生异常情况阻塞而导致程序失去响应,对 socket 进行超时设置。此时启动处理子线程 server_SeSSi n_pr be, 负责对预先提取的数据匹配处 理。 Socket套接字提供了 recv接口对数据进行接收,当设置了 MSG_PEEK标志时,只是 对网络数据的预接收,实际上真正的网络数据还在 Socket套接字的缓存中 2(3。 SPOOK_server全局变量存储多个协议的匹配判断接口,将之前提取的数据发送到协议判断 接口,如果匹配则跳出循环,不匹配则调用下一个协议的判断接口进行判断,直到得出匹 配结果或者遍历完协议集簇的接口,则跳出循环。对于得到匹配结果的请求,调用相应的 协议处理接口。 图 3-6 SPOOK模型结构 至此, SPOOK架构完成对多种协议的动态判断和响应。可以通过 SPOOK_A

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 研究报告 > 论证报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁