已阅读5页,还剩105页未读, 继续免费阅读
(信号与信息处理专业论文)网络加密卡在视频加密传输系统中的应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 中文摘要 随着互联网技术的发展和普及,多媒体技术越来越广泛的应用在企业和政府 部门,尤其是分布式多媒体在视频点播系统、视频会议系统和视频监控系统等方 面的应用,随之带来的是多媒体信息在互联网上安全传输问题。本论文将自主研 发的网络安全产品“网络加密卡应用到视频加密传输系统中,对视频在传输过 程中的实时性、可靠性和安全性进行了研究和实现。 论文主要研究了视频加密传输整个系统的软件部分,首先从项目的总体框架 研究和分析了系统的软件需求,阐述了课题中的视频加密压缩算法、t c p i p 网络 协议、软硬件开发环境以及硬件板卡介绍。在网络加密卡p c i 设备驱动程序中完 成了硬件板卡的芯片驱动,实现了p c 数据和板卡数据的交换。t c p i p 协议栈动 态链接库完成了网络协议部分,实现了数据包的解析。图像采集卡的二次开发完 成了视频数据的编码压缩,同时开发了一套流媒体应用层传输协议,实现了视频 数据的网络实时传输功能。播放器的开发完成了编码压缩视频数据的解码显示, 实现服务器软件的实时监控显示以及回放软件的提取视频文件历史数据,最后完 成了整套系统软件的测试。 视频加密传输软件结合c 语言高效的底层开发能力以及c + + 的面向对象的优 点,分别从w d m 设备底层驱动,到中间网络协议层,再到用户应用层三个模块 进行了有效开发。底层的设备驱动程序采用d r i v e r s t u d i o 技术,结合d d k 开发了 具备高速网络传输的p c i 设备驱动程序。在中间层的网络协议栈动态链接库中, 开发了多个访问设备驱动程序的a p i 接口函数,使得应用程序可以简单高效访问 网络。上层应用程序结合海康威视的图像采集卡,二次开发了客户端软件和服务 器软件,同时开发了网络播放器软件,方便视频数据的检索和回放。 关键词:网络加密卡;视频加密算法;t c p i p ;w d m ;d r i v e r s t u d i o ab s t r a c t a b s t r a c t w i t ht h er a p i dd e v e l o p m e n ta n d p o p u l a r i z a t i o no fi n t e r n e tt e c h n o l o g y , m u l t i m e d i a t e c h n o l o g yi sw i d e l yu s e di nv o d ,v i d e oc o n f e r e n c ea n dv i d e om o n i t o r i n gs y s t e m ,y e t s e c u r et r a n s m i s s i o no fm u l t i m e d i a i s c o m i n g t h i st h e s i sb r i n g si n d e p e n d e n t d e v e l o p m e n tn e t w o r ks a f e t yp r o d u c t n e t w o r ke n c r y p t i o nc a r dt ov i d e oe n e r y p t i o n t r a n s m i s s i o na n dr e s e a r c h e sr e a l - t i m e ,r e l i a b i l i t ya n ds a f e t yw h e n t r a n s m i t t i n gv i d e o t h i st h e s i sm a i n l yr e s e a r c h e st h es o f t w a r ep a r to ft h ew h o l ev i d e oe n c r y p t i o n t r a n s m i s s i o ns y s t e m f i r s t , w es t u d ya n da n a l y z et h es o f t w a r ed e m a n do ft h i ss y s t e m f r o mg l o b a lf i a m e w o r ki nt h i sp r o j e c t ,a n d d i s c u s sv i d e oe n c r y p t i o nc o m p r e s s i o n a l g o r i t h m ,t c p i pn e t w o r kp r o t o c o l ,d e v e l o p m e n te n v i r o n m e n to fs o 金:、】l ,a r e a n d h a r d w a r ea n di n t r o d u c t i o no fh a r d w a r ec a r d t h ep c id e v i c e d r i v e ri nn e t 、o f k e n c r y p t i o nc a r dc o m p l e t e sc h i pd r i v i n g ,a n dc o m p l e t e st h ea n a l y t i co fp a c k e t s t h e s e c o n dd e v e l o p m e n to fi m a g ea c q u i s i t i o nc a r dc o m p l e t e st h ec o d i n gc o m p r e s s i o no f v i d e od a t e ,a n ds t r e a m i n gm e d i at r a n s m i s s i o np r o t o c o li na p p l i c a t i o n l a y e ri sd e v e l o p e d w h i c hr e a l i z e sr e a l - t i m et r a n s m i s s i o na b o u tv i d e od a t a d e c o d ed i s p l a y i nc o d i n g c o m p r e s s i o no fv i d e od a t ei sc o m p l e t e dw h i c hr e a l i z e sr e a l t i m ed i s p l a ya n de x t r a c t st h e h i s t o r yd a t ao fv i d e of i l e s l a s t , t e s to ft h ew h o l es o f ts y s t e mi sc o m p l e t e d v i d e o e n c r y p t i o nt r a n s m i s s i o ns o f t w a r ec o m b i n i n gcw h i c hp o s s e se f f i c i e n ta b i l i t y i nb o t t o md e v e l o p m e n ta n dc + + w h i c hp o s s e so b j e c t - o r i e n t e dm e r i ti sd e v e l o p e di n w d md e v i c eb o t t o md r i v i n g ,m i d d l en e t w o r kp r o t o c o ll a y e ra n d u s e ra p p l i c a t i o nl a y e r t h ed r i v e ri nb o t t o md e v i c e sc o m b i n i n gd d k u s e sd r i v e r s t u d i ot e c h n o l o g yw h i c h p o s s e sh i g hs p e e dn e t w o r kt r a n s m i s s i o np c id e v i c ed r i v e r m u l t i p l ea c c e s sd e v i c e d r i v e ra p ii n t e r f a c ef u n c t i o ni nn e t w o r kp r o t o c o l s t a c kd y n a m i cl i n k l i b r a r yi s d e v e l o p e d ,w h i c hm a k e sa p p l i c a t i o ne a s yt oa c c e s sn e t w o r k u p p e rl a y e ra p p l i c a t i o n c o m b i n i n gi m a g ea c q u i s i t i o nc a r do fh k s wd e v e l o p sc l i e n ts o f ta n ds e r v e rs o f t ,a n d n e t w o r k p l a y e rw h i c hi se a s yt or e t r i e v a la n dp l a y b a c kf o rv i d e od a t a k e y w o r d s :n e t w o r ke n c r y p t i o nc a r d ,v i d e oe n c r y p t i o na l g o r i t h m ,t c p i p , w d m , d r i v e r s t u d i o 1 1 黑龙江大学硕士学位论文 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得墨虚堑太堂或其他教育机构的 学位或证书而使用过的材料。 学位论文作者签名:叶惫午 签字日期: 2 。】q 年6 月( 7 日 学位论文版权使用授权书 本人完全了解墨蕉堑太堂有关保留、使用学位论文的规定,同意学校保留并 向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本 人授权墨蕉堑太堂可以将学位论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、缩印或其他复制手段保存、汇编本学位论文。 学位论文作者签名:1 叶,覆午 导师签名j 矽夸 签字日期:刊。年衫月 7 日签字日期:弘胪年6 月7 日 学位论文作者毕业后去向: 工作单位:天童邯删鳃惭两艘调电话: f 芗7 7 勿乡澎 通讯地址: 匕彳、专氲驾、联村太徇l 印鸟邮编:l0o 0 9 0 翻帐7 ( 彼 第1 章绪论 i m i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i 1 1 概述 第1 章绪论 随着计算机和网络技术的发展,图像、音频、视频等多媒体信息的应用也越 来越广泛【1 1 。尤其是分布式多媒体在视频点播系统、视频广播系统、视频会议系统 和监视系统等方面的应用提出了对网络视频信息安全进行研究的要求。早期的安 全方法主要依赖于权限控制,视频数据本身没有被加密,因此,这些视频数据在 网络传输过程中很容易遭受人为攻击,如数据拦截、信息窃取、数据篡改和数据 删填等。针对这些情况,尤其是关系到军事、经济和政治敏感性的视频数据的保 护,更有必要研究视频数据如何能在网络中安全可靠的传输方案。由于视频数据 具有编码结构特殊、数据量大、实时性要求高等特点,传统的数据加密算法直接 应用于视频数据,很难满足实时性要求,而且还会改变数据格式等,这就要求对 视频数据采用特殊的加密算法和特殊的加密方式。 为了达到上述效果,我国特殊敏感用户常采用的工作方式是:在一个局域系 统内可以正常网络通信,杜绝和外部网络通信。因为连接i n t e r n e t 可以导致外部 入侵,使得内部信息泄密,所以需要一种具有极度安全的内部网络结构。目前为 实现此目地通常采取普通网络结构方式,即利用普通网卡进行连接,以路由、物 理隔绝的方式进行控制,使得内部网免于外部攻击。如果不采用此种方式使普通 用户和敏感用户同时平等的处于一个开放互连网络环境中,其信息系统具有同等 的脆弱性,在系统运行过程中受到同等的来自人为恶意威胁和攻击,安全事件一 旦发生,将造成不可预计损失1 2 1 。 虽然敏感部门采用多种措施,例如通过购买国外加密算法进行数据加密、利 用路由手段、利用物理手段多层隔绝外部入侵,但都没有从根本解决实际存在的 问题。主要原因有: ( 1 ) 因为对于一些重要的公开密码,实际都是民用使用级别,不适合敏感用 户的重要信息加密;而对于军事重要的流密码,国外基本不公开,这就需要设计 黑龙江大学硕士学位论文 一种具有自主创新的高复杂度的流密码体系。 ( 2 ) 如果利用路由、物理手段进行隔绝,则因为网络结构搭建已经形成, 抑制不了内部重组与外部入侵,甚至可以利用电磁波方式进行文件读写。如果彻 底用物理手段进行隔绝,则将使传输外部信息变得很不方便,传输重要的外部信 息不得不利用人工传输方式,使重要的信息安全仍然受到威胁1 3 l 。 信息加密关系到国家安全,例如美国政府规定密码算法的出口作为军事产品 加以限制,实际上允许出口的加密产品对其他国家来说已不再是安全的了,所以 我国必须拥有自主知识产权的信息加密技术,必须具备自行研究、自行设计、自 行开发和自行升级的能力,这对全球激烈的信息战是至关重要的事情。伴随着数 字化技术和大规模集成电路的快速发展,将序列密码、混沌算法、集成芯片有机 结合 4 1 ,应用到网络安全相关产品中是当前极具挑战性的研发课题。 1 2 项目来源及意义 本课题的项目来源于横向课题“视频加密传输系统,项目中使用的网络加密 卡源于黑龙江省科技攻关项目“基于s o c 的网络加密卡( n o g z 0 6 a 1 0 1 ) 项目 自主研发的网络安全产品。 网络加密卡采用序列密码的流加密算法方式。序列密码可以使用相同的明文 产生不同的密文,而且可以扰乱明文的统计特性,具有不存在数据扩展和误差传 递等特点。因此在军事、外交等重要机密文件的发送中,流密码始终保持着独特 的优势,已成为当前国际密码系统中研究与应用的主流。而且,作为私有密钥的 序列密码硬件加密也已经成为世界各国所采用的主要加密方法,它的特点是加密 算法由电路实现并可随时升级,按传统破译方法几乎无法被破解,其保密性和可 靠性是传统的软件加密所无法比拟的。 近几年来,随着大规模集成电路的飞速发展,f p g a 芯片技术在设计、功能、 性能和成本造价上都有了长足的进步,特别是片上系统( s y s t e m 0 1 1 c h i p ,s o c ) 技术的兴起使得解决上述的问题成为可能嘲。由于对f p g a 的开发是采用软件的设 计思想对f p g a 进行编程生成硬件逻辑,加密算法可以完全固化为硬件逻辑门电 第1 章绪论 路,所以能够解决c p u 串行工作时在速度上受限的问题,从而硬件加密的速度得 以进一步地提蒯5 1 。 本课题把基于f p g a 和混沌算法的网络加密卡应用到视频传输系统中。对视 频在传输过程中的实时性、可靠性和安全性进行了研究和实现。能够让网络加密 卡真正应用到网络信息安全中,对我国在信息安全产品的应用中有一定的意义。 1 3 论文的研究内容 本课题的工作内容包括以下几个部分: 1 、根据项目的要求选择合适的图像采集卡,研究和使用了s d k 二次开发包。 2 、研究w i n d o w s 设备驱动程序开发环境和加密卡硬件设备,开发p c i 设备驱 动程序。 3 、研究动态链接库的开发,研究和分析t c p i p 协议,开发网络协议动态链 接库。 4 、根据用户需求,开发客户服务器应用软件。 5 、研究和使用内核调试和用户层调试技巧,搭建测试环境,编写网络通信测 试软件。 1 4 论文的组织结构 论文研究的主要内容包括以下几个方面: 第1 章:绪论。概述了论文相关领域的背景知识,说明项目的来源及背景, 同时提出本论文研究的内容。 第2 章:视频加密传输系统基础知识。分析论文研究的课题涉及到的相关基 础知识。采用类比的方式对加密算法、视频编码算法以及加密方式进行了比较和 选择。对涉及到的网络协议进行简单的叙述,同时对软件的开发环境以及使用的 硬件板卡进行了了讲解和说明。 第3 章:网络加密卡p c i 设备驱动程序开发。研究网络加密卡的p c i 设备驱 动程序开发。从整个硬件设备的系统框图到w i n d o w s 的内核驱动程序开发流程, 黑龙江大学硕士学位论文 再到驱动程序的安装和调试,都做了详细的讲解,尤其是内核调试技巧上面花了 很多笔墨。 第4 章:网络加密卡动态链接库开发。研究网络协议栈动态链接库开发。从 如何引入动态链接库技术,到开发动态链接库流程。作为中间层的动态链接库, 如何实现三套接口a p i :对下是驱动程序的接口调用,对上是提供一套标准通用的 接口,同时自己需要定义一套协议栈接口。 第5 章:图像采集卡软件二次开发。研究图像采集卡的软件二次开发。对海 康威视提供的板卡和s d k 开发包进行了说明,同时对部分关键a p i 函数进行了说 明讲解,并附有流程图。 第6 章:视频加密传输系统测试。研究了整个系统的软件开发。通过对前面 几章的研究,通过多线程技术把他们整合到一起,完成了客户端软件和服务器软 件,同时进行了软件测试和数据通信实验。 总结:结论和未来展望。总结了论文研究的阶段性成果,同时也指出了论文 在某些方面的不足,为下一步工作的展开起到一定作用。 第2 章视频加密传输系统基础知识 第2 章视频加密传输系统基础知识 视频加密传输系统涉及到的基础知识较多,从软件结构来看,包括从w i n d o w s 最底层的设备驱动,到中间层的动态链接库,再到上层的应用软件。从传输过程 中的数据格式来看,包括采集卡出来的编码压缩数据,经过协议栈之后的网络格 式数据,在经过硬件加密模块又把部分内容变成了加密数据。而这些加密压缩网 络数据到达接收机时,首先经过硬件的解密模块,把加密部分还原成明文网络数 据,网络数据在经过协议栈拆包又还原成视频编码压缩数据,在经过软件解码模 块才变成可播放的视频数据。本章主要对涉及到的开发整个系统时将会遇到的基 础知识进行概括总结,有部分未讲到的将会在后续各章节进行补充。 2 1 视频加密传输系统整体框架 整个视频加密传输系统包括四个部分组成:客户端、服务器、数据库和监控 端播放器。客户端负责本地采集编码压缩视频图像,通过加密设备传输到网络上 ( 加密编码压缩数据) ;服务器负责接收网络上加密的视频流,通过解密卡解密视 频数据( 编码压缩数据) ;数据库负责存放服务器接收到的数据( 压缩视频数据) ; 监控端播放器负责访问数据库,并检索提取相关视频进行回放,其视频加密传输 系统整体框架如图2 1 所示。 量垄圣查兰至圭兰竺兰兰 图2 1 视颠加密传输系统圈 f i g u r e 2 - 1 t h e v i d e o e n c r 州o n t r m l s m i s s i o n s y s t e m d i a o r a m 2 2 视频加密传输算法 算法是整个系统的灵魂。本节主要针对数据加密算法和视频压缩算法进行了 对比和分析,同时对视频加密方式不同进行了比较选择。 2 21 视频加密算法 视频加密采用的是流密码,流密码是通过产生伪随机密钥流实现的,流密码 也被称作密钥序列发生器。密钥流通过与数据位的异或运算来进行加密或解密。 流密码不能忍受错误的传播,因为每一个比特都独立于其他比特进行加密或解密 的。它们一般比其他密码运算要快得多并且拥有更好的加密功效。由于这些特征, 流码成为了若干通信加密标准的选择,像i e e e8 0 2l l b ”l 和蓝牙”。 现在有很多流码算法,自从被指定用于流行的标准和协议中。a s 1 码、e 0 码 和r c 4 码就成为了众所周知的流密码。a 5 1 用于g s m m ,e 0 用于蓝牙“,r c 4 用 于i e e e8 0 2l l b t 1 和其他标准( 例如:o r a c l es e 咄s q l ) 中。h e l i x m 是一种面向字 的流码,它可以提供消息鉴别码m a c ( m e s s a g e a u t h e n t i c a t i o nc o d e ) 功能。它的 陲装。铽馕。蓠 第2 章视频加密传输系统基础知识 功能可以被很容易地实现,而且它比先进加密标准a e s ( a d v a n c e de n c r y p t i o n s t a n d a r d ) 还要快i 9 1 。w 7 码是一种同步的流码,这种流码可以在很高的数据率上对 有效的硬件实现进行优化l l o l 。w 7 码的提出是为了在g s m 安全方案上取代a 5 1 码,因为a 5 1 码【1 1 1 在安全方面存在缺陷。有关流码实现的性能( 在吞吐量方面) 和消耗面积( 在f p g ac l b 部分) 的结果在表2 1 中被提出。 表2 - 1 流密码的性能和面积的比较 t a b l e2 - 1t h es t r e a mc i p h e r sp e r f o r m a n c ea n da r e a so f c o m p a r a t i v e 可以看到h e l i x 码达到了最大吞吐量,这个吞吐量用m b p s 来计量。并且它还 有第二好的吞吐量面积比率,这个比率能够和衡量码的硬件特性。a 5 1 码拥有最 好的吞吐量面积比率。所有码的吞吐量面积比率来看,e 0 码拥有最小的比率, a 5 1 码拥有最大的比率,因此a 5 1 码达到了最好的硬件性能。w 7 码实现的吞吐 量比a 5 i 码好得多,然而随之带来了面积消耗。本论文采用的是改进的a 5 1 视 频加密流密码。 2 2 2 视频压缩算法 在视频监控中,视频传输所需要的带宽和视频画面的质量一直很矛盾。一般 情况视频传输所需要的带宽越宽,传输的视频画面越清晰。若需要在窄带下传输 视频,那么限制带宽造成画面质量不清晰。解决这一问题的关键就是视频压缩编 码技术。目前有两套视频编码技术标准:国际电联( i t u t ) 1 1 2 j h 2 6 x 标准和国际 标准化组绷国家电联( i s o f l e c ) 1 1 2 的m p e g 标准【1 2 1 。 i t u t 的h 2 6 x 包括h 2 61 、h 2 6 3 、h 2 6 3 + t 1 3 】,而i s o 的m p e g 标准包括 m p e g 一1 、m p e g 2 、m p e g 一4 等。同时这两大标准组织联合h 2 6 3 + 和m p e 9 4 的优 黑龙江大学硕士学位论文 点推出了h 2 6 4 a v c 标准1 1 4 j 。评比一种视频压缩算法的好坏,是在相同画面质量 情况下,哪个占用的带宽更低;或者在相同网络带宽情况下,哪个播放的画面质 量清晰,最后还需要参考算法复杂度以及实现的难易程度和需要的设备配置进行 全面比较1 1 5 l 。 在评比中,h 2 6 4 a v c 算法无疑是最大赢家。它由l t u t 和i s o 两大世界视 频压缩编码制定标准的组织联合开发制定,定位的应用领域是整个视频应用,最 主要是用在需要高压缩率和分层质量,包括i n t e r n e t 互联网上的视频流应用、低码 速率的无线网络应用、标准清晰度和高清晰度的电视广播媒体应用、数码相机的 高质量视频应用以及传输高清晰度的d v d 视频应用等等1 1 6 】- 2 0 l 。而其最具价值的 技术就是综合了两套视频压缩编码算法的标准,提供了高压缩比、高质量的视频 画面。在同等视频画面质量下,h 2 6 4 a v c 的压缩比要比h 2 6 3 高2 倍,而比 m p e g - 4 要高1 5 倍【2 昨11 2 8 1 。 高压缩比的h 2 6 4 牺牲的原因是高复杂度的计算,实现所需要的硬件设备处 理器和内存要求高,但是随着目前硬件设备如c p u 和内存的不断提升,以及算法 的不断优化,让h 2 6 4 的实现不再困难。本视频加密传输系统选择的视频压缩编 码算法就是h 2 6 4 ,并且采用硬件d s p 实现视频图像的编码压缩,减轻了c p u 的 负担,提高了运算的效率。 2 2 3 视频加密方式 视频加密传输过程中,使用的加密算法和编码压缩算法不同,采用的加密方 式就不一样。根据数据的加密过程和编码过程在数据传输时作用的位置不同,分 为以下四类,如图2 2 所示。 量:耋堡丝竺兰堡兰至竺量型蝥篓 ( a ) 完全加密算法 ( b ) 部分加密算法 ( c ) d c t 系教加密算法( d ) 墒编码过程加密算怯 图2 - 2 视频加密方式 f i g u r e 2 - 2 t h e v i d e oe n c i t t i o n m e t h o d s 1 、完全加密算法:采用先压缩后加密方式,压缩和加密脱离,加密算法一般 采用的流加密算法。 2 、部分加密算法:对压缩编码产生的关键帧i 帧进行加密,分块加密就是典 型的部分加密算法。 3 、d c t 系数加密算法:加密d c t 系数,在压缩编码过程中,加密敏感数据, 加密过程位于压缩编码内部。 4 、熵编码过程加密算法嘲:在熵编码过程中实现加密,完全将压缩编码过程 和加密过程结台,实现一种具有加密功能的压缩算法l l 9 】。 以上四种视频加密方式各有优缺点,选择判断一种压缩算法一般从以下四个 方面比较,表2 - 2 比较总结了这四种方式的优缺点,视频加密传输系统采用的是第 一种方式。 1 、安全性:破译难度大,一般认为破译付出的代价超过直接购买版权的代价 就认为是安全的。 2 、压缩比:加解密前后的数据发生的变化,若加解密前后数据量无变化称加 密算法为压缩比不变性算法。 盘 4 、数据可操作性:压缩编码后的数据可实现帧定位,解码,抓图等功能1 2 8 l 。 表2 - 2 视频加密方式优缺点 t a b l e2 - 2t h ev i d e oe n c r y p t i o na d v a n t a g e sa n dd i s a d v a n t a g e s 2 3t c p ip 协议 t c p i p 作为标准通信协议,可以运行在不同的操作系统之上,成为计算机之 间最常用的组网形式【2 9 1 。t c p i p 参考i s o 七层模型,把层次精简到四层,如图2 3 所示,每一层负责不同的功能,本节介绍每一层的作用以及其中有代表性的协议。 2 3 1 链路层 应用层 传输层 网络层 链路层 t e 】n e t 、f t p 等 t c p 和u d p i p 、i c n 口和i g m 衅 设备驱动程序及接口卡 图2 - 3t c p i p 协议栈冽 f i g u r e2 - 3t h et c p i pp r o t o c o ls t a c k 2 2 1 链路层是网络接口层,因为本层含有以太网芯片的物理地址,也是网卡芯片 在网络上能够识别的硬件地址。他在设备驱动程序中完成和实现,代表的协议是 以太网协议。以太网首部总共1 4 字节,描述了目的以太网地址,源以太网地址, 以及上一层协议的类型 2 9 - 3 3 】。 第2 章视频加密传输系统基础知识 2 3 2 网络层 本层用来处理网络上的分组活动,并且提供选路功能。代表的协议有:口协 议( 网际协议) 、i c m p 协议( 控制报文协议) 、i g m p 协议( 网络组管理协议) 1 3 4 1 , 同时我们把a r p ( 地址解析协议) 也放到这一层来说明。 口协议首部由2 0 字节构成,提供了源口地址和目的i p 地址以及数据长度等 信息,i p 提供的是不可靠无连接的传输服务。由于这个原因导致了i p 数据包通过 路由时出现先发后到的原因,而且由于网络环境的原因导致的i p 数据包丢失而不 通知发送方。所以可靠面向连接的服务需要传输层来提供。 a r p 是非常重要的协议,在局域网内,两台机器进行通信靠的就是4 8 位的以 太网地址,设备驱动程序从来不检查i p 数据报中的目的i p 地址。而a r p 就是提 供p 地址到以太网地址的映射。a r p 请求应答总共2 8 字节,包含发送端i p 地址 和以太网地址以及目的端的以太网地址和i p 地址等信息。 2 3 3 传输层 传输层为两台机器在应用程序上提供端到端的通信。这一层提供了两种传输 协议:t c p ( 传输控制协议) 和u d p ( 用户数据报协议) 。u d p 提供简单面向连接 的不可靠协议,原因是它只管把应用程序传给i p 层的数据发送出去,但并不保证 它们能够到达目的地。虽然不可靠,但是传输速度快是它的优点,所以在网络流 媒体采用的就是u d p 传输,为了保证可靠性,在它的上一层又加了一层r t p 协议 ( 实时传输协议) 。u d p 首部总共8 字节,包含1 6 位目的端口号、源端口号、u d p 长度校验和【3 5 1 。 t c p 提供一种面向连接可靠的字节流服务,一般建立成c s 模式( 客户一服务 器) 。在传输之前双方必须建立一个t c p 连接,最典型的就是“t c p 三次握手”1 3 6 1 , 并且使用多个定时器用来超时判断。t c p 解决了i p 数据包通过路由先发后到的情 况,并解决了i p 包重复的可能,保证了数据传输的可靠性。t c p 首部包含2 0 字 黑龙江大学硕士学位论文 节,包括源端口和目的端口,最重要的是有序号和滑窗1 3 。 2 3 4 应用层 应用层主要负责处理特定的应用程序细节,其中最为典型的协议就是f t p ( 文 件传输协议) ,t e l n e t ( 远程登录) 1 3 8 ,s m t p ( 简单邮件传送协议) i 朔,s n m p ( 简 单网络管理协议) 【4 0 】等。f t p 用于文件传输,使用f t p 时需要先t e l n e # 8 1 到服务器 上,然后将一个完整的文件从一个系统复制到另一个系统中。f t p 支持的a s c i i 或二进制方式传输文件【4 1 】,采用的文件结构是面向字节流或记录的。 t e l n e t 远程登录使用最为广泛,使用户不需要连接硬件去访问对方。只需要提 供一个登录帐号,就可以t e l n e t 到一台主机。图2 - 4 形象表示出来t c p i p 协议栈 的封装过程【4 2 卜f 4 9 】。 i 应用程序 上 i t c p j l i p 上 以太网帧 上 网卡 上 图2 - 4 数据在协议栈的封装过程 f i g u r e2 - 4t h ed a t ai nt h ep r o c e s so fe n c a p s u l a t i o np r o t o c o ls t a c k 2 4 开发环境 网络加密卡是自主研发的产品,为了能够在p c 机上使用网络加密卡,必须开 发配套专用软件,驱动它工作并且完成网络数据加密功能。下面是关于这套系统 第2 章视频加密传输系统基础知识 软硬件升发环境以及开发工具的介绍。 2 4 1 设备驱动程序开发环境 目前主导流行的桌面系统还是微软的w i n d o w s 操作系统,在v i s t a 出来之前, 也就是从w i n d o w s 2 0 0 0 开始,所有版本的操作系统开发驱动程序都以w i n d o w s 驱 动模型( w i n d o w sd r i v e rm o d e l ,以下简称w d m ) 为基础,它比n t 式驱动多了 即插即用( p l u g a n d p l a y ,以下简称p n p ) 和电源管理功能。虽然目前微软推出了 v i s t a 、w i n d o w s 7 操作系统,并且推出了w d f ( w i n d o w sd r i v e rf o u n d a t i o n ) 驱动 模型,但是大部分w d m 驱动程序依然在其上面能够良好的工作刚。 网络加密卡p c i 驱动采用的是w d m 驱动模型,在开发w i n d o w s 驱动程序之 前,需要先选择使用的开发的语言。目前有利用汇编语言结合k m d k i t 开发包开发 驱动程序,也有用d e l p h i 或者e 语言开发内核驱动程序,但是这方面的资料非常 少,而且配置开发环境相当困难【3 3 1 。从w i n d o w s 驱动程序编译后生成的是s y s 扩 展名的文件来看,他和动态链接库( d 1 1 ) 以及应用程序( e x e ) 一样都是p e ( p o r t a b l e e x e c u t e ) 格式的文件1 5 1 1 。所以从大的角度讲,只要是某种语言的编译器能够编译 出的可执行文件为p e 格式的二进制文件,同时能够正确给定驱动程序的入口函数 地址,那么就可以使用这种语言来开发w i n d o w s 驱动程序。所以可以选择的语言 有c 、c + + 和汇编语剖5 2 】,但不过微软提供给程序员开发的驱动开发包( d r i v e r d e v e l o p m e mk i t ,以下简称d d k ) 1 5 0 所包含文件和链接库,只能支持c 和c + + 语 言。但考虑到c 语言和c + + 语言都有各自的优缺点,所以结合了这两种语言共同 开发了p c i 设备驱动程序。 选择语言和开发包之后,接下来就是选择开发工具了。目前主流的开发 w i n d o w s 下的w d m 驱动程序有下面几种方案: 1 、直接用d d k + w i n d b g 开发:采用原始的方式开发的入占有绝大多数,而 且微软鼓励使用微软自己生产的开发工具和调试工具。d d k 除了提供驱动开发库 之外,还提供了一系列的编译和链接工具用来给开发者使用,在同时配合强大的 黑龙江大学硕士学位论文 内核调试工具w i n d b g ,能够灵活的开发出高效而又轻巧的内核驱动程序。 2 、用v c + d d k + d r i v e r s t u d i o 搭配开发1 5 2 1 :由康博公司开发的驱动工具 d r i v e r s t u d i o ( 后面简称d s ) ,极大提高了设备驱动程序的开发速度。同时该公司 把誉为w i n d o w s 程序调试工具之王的s o f i l c e 业整合进来,再加上v c 可视化的 i d e 编译工具,使更多开发者开发设备驱动程序。 3 、使用w i n d r i v e r 工具:这也是第三方开发驱动软件,开发人员不需要了解 任何的操作系统知识,使用者只需执行此软件,判断计算机上安装的硬件,经过 向导的点选,就能自动生成驱动程序代码,执行后就能够驱动硬件。 第一种方式采用的是微软提供的最原始的方式,使用c 语言进行编写代码, 虽然能够开发出最佳的驱动程序代码。但是具有所需要掌握的知识也是最多,开 发难度大,开发周期长的弱点。为了弥补这一点,现在很多使用v c + d d k 开发驱 动程序【5 3 1 。 第二种方式在代码执行效率和开发难度之间做了折中。提供驱动开发向导降 低了驱动开发的难度,同时可视化的开发界面提高了开发的速度,而最大的亮点 是使用c + + 编程语言开发提高了代码的质量和执行效率f 5 4 1 。 第三种方式是快捷的方式,减少硬件厂商的开发成本是其最大的亮点。但是 开发出来的代码效率低,并且不够灵活是他的弊端。 通过上面的类比,本设计采取了第二种方式开发加密卡的设备驱动程序。在 第三章将会详细讲述开发一个p c i 设备驱动程序的全部过程,为w i n d o w s 设备驱 动程序开发奠定基础。 2 4 2 应用程序开发环境 和开发驱动程序一样,首先应该选择一种开发语言,开发w i n d o w s 应用软件 的语言很多,如b a s i c ,p a s c a l ,d e l p h i ,c ,c + + , c 撑,j a v a t 5 3 】等等,并且他们都 有强大的i d e 开发工具。选择语言之前应该先考虑开发工具,应该考虑项目需求 选择一门开发工具,并且需要参考以下条件: 第2 章视频加密传输系统基础知识 l 、系统底层开发支持:应首要考虑到开发软件需要,调用底层a p i 函数和驱 动程序通信。 2 、代码执行效率:每个开发人员都非常关心自己开发出来的软件的执行效率 和可执行文件的大小。 3 、开发模式:目前的开发工具都提供组件开发或者是框架开发。 4 、使用人数和帮助文档:这个是为你提供使用前提和丰富的学习资料。 以上四点都是考虑的因素,而目前能够完全胜任上面条件的开发工具只有 v c 。虽然说在做界面上不如d e l p h i 和c + + b u i l d e d 5 4 1 ,做b s 不如n e t 和j a v a 5 5 1 , 但是开发从底层建起的系统,以及要求性能、速度和安全性高的系统,都会选择 v c ,它所提供的m f c ( m i c r o s o f tf o u n d a t i o nc l a s s ) 微软基础类库封装了w i n 3 2 a p i 函数【5 6 1 ,并且提供了使用其向导就可以搭建一个应用程序框架,再加上设备驱动 程序也使用了v c 开发工具,极大的提供了调试驱动程序的方便,加快了开发的速 度。 2 4 3 硬件开发环境 硬件开发环境的选择首先应该看项目使用的是哪款可编程芯片。选择可编程芯 片应该考虑以下几点:芯片是否能满足项目的要求,x i l i n x 和a l t e r a 两大公司作为 全球最大的两家p l d 厂商【5 7 1 ,他们的产品中都能够找到适合项目所需求的芯片; 开发平台软件,x i l i n x 的i s e 要优胜q u a r t u s l i i 5 引,但后者的f p g a 有价格上的优势; 市场占有率,从大陆的市场来看,a l t e r a 占有的市场份额越来越大,而且提供的开 发支持也越来越多。 视频加密传输系统中采用的网络加密卡上使用a l t e r a 公司的c y c l o n e l i 系列的 f p g a 芯片,c y c l o n e l i 这款芯片是a l t e r a 公司推出的中低端芯片,价位低又能满 足项目要求。同时提供的软件开发平台q u a r t u s l i ,可支持的开发语言v h d l 和 v e r i l o g 5 9 1 。但由于本论文主要研究的是视频加密传输的整个软件系统,主要对加密 卡的驱动程序相关硬件设备进行研究,在加密卡板卡介绍时会涉及开发驱动程序 黑龙江大学硕士学位论文 时需要关联的硬件部分。 2 5 板卡介绍 本节主要介绍开发软件时需要关心的两块板卡,一块是自主研发的网络加密 卡,一块是杭州海康威视公司的图像采集卡。熟悉硬件的基本设计和提供的s d k 开发包,才能够开发出更高效的应用软件。 2 5 1 网络加密卡介绍 网络加密卡是一块p c i 设备板卡,上面集成了c y c l o n e l i 系列的 e p 2 c 8 q 2 0 8 c s n 型号的f p g a 芯片,以及d a v i e o m 公司的1 0 1 0 0 m 自适应的 d m 9 0 0 0 a e 以太网芯片。 l 、p c i 总线 具有p c i 总线接口的设备统称为p c i 设备。p c i 总线是当前较为流行的总线之 一,提供高达1 3 3 m b s 的传输速度,计算机上的高速设备一般都设计成p c i 总线 设备,如网卡、显卡等;其他总线像u s b ,i s a 都挂在p c i 总线之上1 3 3 1 。虽然新 一代总线p c i - e 有将取代p c i 和a g p 实现总线的统一标准1 3 3 1 ,但是在工业控制领 域p c i 总线依然使用非常广泛。 2 、p c i 设备接口芯片 开发p c i 设备,需要有p c i 总线接口控制芯片,可以使用专用p c i 芯片例如 p l x 公司的9 0 5 4 系列芯片,这样可以实现完整的p c i 的主控模块和目标模块功能; 也可以采用可编程逻辑器件f p g a 实现通用p c i 总线接口,p c i 软核具备比专用 p c i 芯片更加灵活的功能。本设计中使用到p c i 控制芯片为f p g a 实现的p c i 软 核【3 引。 3 、p c i 设备资源 不管是专用p c i 芯片还是p c i 软核,都会有如下资源: p c i 配置空间:主要用来识别硬件设备以及定义主机访问p c i 卡的方式: i o 地址空间:用来提供主机i o 读写访问设备,需要i o 映射; 1 6 第2 章视频加密传输系统基础知识 设备存储器空间:提供主机存储器访问,需要内存映射; d m a :用来在高速设备传输数据时使用c p u 次数最少; 中断:让p c i 硬件和c p u 支持异步操作,减少耗费c p u 的时间。 x 8 6 结构的机器的i o 地址空间和存储器地址空间采用独立编址方式。而p c i 设备的i o 资源和存储器资源分别映射到计算机的不同地址空间。对于不同的映射 使用的访问指令不一样,i o 方式采用i n 和o u t 来读写端口,而存储器映射一般 采用内存访问指令来完成硬件的操作。网络加密卡p c i 设备采用i o 控制方式直接 通过设备的数据寄存器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广东省粤教版高中一年级语文第10单元综合测试卷及答案
- 2026年四川省简阳市高三历史上册期末考试考试卷及参考答案(综合卷)
- 2025年海南省东方市高三历史上册期末考试自测卷含完整答案(网校专用)
- 2026年黑龙江省穆棱市高一化学上册期末考试模拟检测卷带答案(综合题)
- 2026年辽宁省灯塔市高三生物下册期末考试模拟测试卷(含答案)
- 低血糖休克的系统化护理管理与临床应对-绿色-现代风
- 2026年四川省阆中市高三物理下册期末考试模拟测试卷带答案
- 3-4-Dihydro-5-methoxyl-6-methyl-2-phenyl-2H-1-benzopyran-7-ol-生命科学试剂-MCE
- 2026年河南省永城市高三生物上册期末考试模拟检测卷(含答案)
- 3-3-6-6-Tetra-tert-butyl-9-H-9-3-6-9-tercarbazole-生命科学试剂-MCE
- 2026届上海市交大附属中学高考模拟信息考试化学试题(三)含解析
- 2024版《建设工程工程量清单计价标准》解读课件
- 2026年湖北公务员考试申论试题(县乡卷)及答案
- 2026中远海运集团招聘笔试历年参考题库附带答案详解
- 施工总承包对分包单位的协调服务措施
- 卫生院中医质控制度
- 财务融入业务管理制度
- 机器人-机械电子工程导论
- 卫生院心脑血管培训课件
- 《医药市场营销》课程考试复习题库(附答案)
- 知识产权管理体系
评论
0/150
提交评论