(车辆工程专业论文)基于c的汽车检测通讯系统的研究.pdf_第1页
(车辆工程专业论文)基于c的汽车检测通讯系统的研究.pdf_第2页
(车辆工程专业论文)基于c的汽车检测通讯系统的研究.pdf_第3页
(车辆工程专业论文)基于c的汽车检测通讯系统的研究.pdf_第4页
(车辆工程专业论文)基于c的汽车检测通讯系统的研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(车辆工程专业论文)基于c的汽车检测通讯系统的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉理工大学硕士学位论文 摘要 汽车自动检测线往往距离长,速度快。为使车内检测人员与主监控室有良好 沟通和协调,本文运用c 撑语言开发一种运行在w i n c e 系统上的通讯系统,使之 可以利用无线局域网接收测试指令,传输被测车辆信息,获取测试结果,存储及 查询测试信息。 通过对汽车户外测试环境的调查,针对测试项目的技术要求,划分系统的功 能模块、理定了软件设计流程,确定汽车检测通信系统的软件结构,运用c j f j 语 言编写适用于汽车户外检测的无线通讯系统软件,搭建软件测试平台,完成了汽 车户外检测无线通讯系统的开发与测试工作。 文章首先系统地阐述了与汽车检测通讯系统相关的技术及协议。分析了系统 的总体需求。根据这些系统需求,开始了整个系统的设计。在总体设计上给出了 系统总体硬件结构和系统软件结构,选取了c s 即客户机服务器模式。接着根 据t c p 通信协议的特点制定了数据通讯协议,保证了客户端和服务器端收发测 试信息的准确率。然后划分了系统的功能模块和软件的设计流程。在给出了总体 设计之后,开始详细而已具体的设计工作。首先选择了s q ls e r v e r2 0 0 5 作为这 个检测通讯系统的数据库系统,然后通过代码实现了创建数据库和数据表。接着 分别编程实现了服务器端和客户端程序的详细功能模块。在完成了系统设计之 后,根据软件设计流程,对系统进行了功能和承载测试。测试结果显示,检测通 讯系统基本满足之前提出的系统需求。 最终文章得到了一种基于c j f i 的汽车检测通讯系统,此系统可以作为其他户 外检测系统的一个子系统,帮助其完成户外测试员与室内主控室的沟通,大大提 高了检测效率。而且由于采用了对称和非对称混合加密算法,保障了整个测试系 统的通信安全。 关键词:检测;加密;无线;通信 武汉理工大学硕士学位论文 a b s tr a c t v e h i c l ea u t o m a t i ct e s tl i n ew a sa l w a y sl o n gd i s t a n c e ,h i g hs p e e d i no r d e rt oh e l p c o n t r o lr o o ms t a f fc o m m u n i c a t i o nw i t hr o a dt e s ts t a f f , u s i n gc ! l a n g u a g et od e v e l o p ac o m m u n i c a t i o n ss y s t e mr u n n i n go nw i n c ec o m m u n i c a t i o n s s ot h a ty o uc a nu s e w i r e l e s sl a nt or e c e i v et e s tc o m m a n d s ,t r a n s m i tt h em e a s u r e dv e h i c l ei n f o r m a t i o n , a c c e s st ot e s tr e s u l t s ,i n f o r m a t i o ns t o r a g ea n dq u e r yt e s t s t h ep u r p o s eo ft h ea r t i c l ei st ou s et h ec 弹l a n g u a g et os e tu paw i r e l e s s a u t o m o t i v ec o m m u n i c a t i o ns y s t e ms u i t a b l ef o ro u t d o o rt e s t i n g t h es t u d ym e t h o di s i n v e s t i g a t e dc u r r e n to u t d o o rv e h i c l et e s ts i t u a t i o na n da n a l y z es y s t e mr e q u i r e m e n t s t h e nd i v i d e ds y s t e mf u n c t i o nm o d u l ea n ds o f t w a r ed e v e l o p m e n tp r o c e s s ,t h e n r e a l i z e di tb yp r o g r a m m i n g a f t e rt h ec o m p l e t i o no fs y s t e ms t u d y , m a k es o m et e s tt o v e r i f yi t f i r s t l y ,t h ea r t i c l es y s t e m a t i c a l l ye x p o u n d e dv e h i c l et e s tc o m m u n i c a t i o ns y s t e m r e l a t e dt e c h n o l o g i e sa n dp r o t o c o l sa n da n a l y z e dt h eo v e r a l ls y s t e mr e q u i r e m e n t s b a s e do nt h e s es y s t e mr e q u i r e m e n t s ,i ts t a r t e dt od e v e l o pt h ew h o l es y s t e m t h e a r t i c l eg a v et h ec o n s t r u c t i o no fo v e r a l ls y s t e mh a r d w a r ea n ds y s t e ms o f t w a r ea n d s e l e c t e dt h ec st h a ti sc l i e n t s e r v e rm o d e l t h e na c c o r d i n gt ot h ec h a r a c t e r i s t i c so f t c pc o m m u n i c a t i o np r o t o c o ld a t ac o m m u n i c a t i o np r o t o c o l sd e v e l o p e dt oe n s u r et h a t t h ec l i e n ta n ds e r v e rs e n da n dr e c e i v et e s tt h ea c c u r a c yo ft h ei n f o r m a t i o n t h e n d i v i d et h es y s t e mf u n c t i o nm o d u l e sa n ds o f t w a r ed e s i g np r o c e s s a f t e rt h ed e s i g ni s g i v e n ,i tb e g a nt od e t a i lt h es p e c i f i cd e s i g n f i r s tc h o s es q ls e r v e r2 0 0 5d a t a b a s e s y s t e ma sc o m m u n i c a t i o ns y s t e m sd a t am a n a g e m e n ts y s t e m ,a n dt h e nc r e a t e da d a t a b a s ei m p l e m e n t e db yt h ec o d ea n dd a t at a b l e s t h e ni tp r o g r a m m e dt h e s e r v e r - s i d er e s p e c t i v e l y ,a n dt h ed e t a i l so fc l i e n tm o d u l e s a f t e rt h ec o m p l e t i o no f s y s t e md e s i g n ,a c c o r d i n gt o t h es o f t w a r ed e s i g np r o c e s s ,t h ef i n a lc h a p t e ro ft h e s y s t e mw a sf u n c t i o n a l a n ds t r e s st e s t s t h er e s u l t ss h o w e dt h a tt h et e s t i n g c o m m u n i c a t i o ns y s t e mm e e tt h es y s t e mr e q u i r e m e n t s f i n a l l y ,t h ep a p e rc r e a t e da na u t o m o t i v et e s t i n gc o m m u n i c a t i o ns y s t e mb a s e d o n c j | | t h i ss y s t e l l ac a ns e r v ea sas u b s y s t e mo fo u t d o o rd e t e c t i o ns y s t e mt oh e l pt h e m c o m p l e t eo u t d o o ra n di n d o o rt e s t i n gm a i nc o n t r o lr o o ms t a f fc o m m u n i c a t i o n ,g r e a t l y i m p r o v i n gt h ed e t e c t i o ne f f i c i e n c ya n ds u c c e s s f u l l ya p p l y i n gt h es y m m e t r i ca n d a s y m m e t r i ch y b r i de n c r y p t i o na l g o r i t h m st op r o t e c tt h es e c u r i t yo ft h ee n t i r et e s t s y s t e mo fc o m m u n i c a t i o n t t 武汉理工大学硕士学位论文 k e yw o r d s :t e s t , e n c r y p t , w i r e l e s s ,c o m m u n i c a t i o n i i i 独创性声明 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 武汉理工大学或其他教育机构的学位或证书而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示了谢意。 学位论文使用授权书 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权武汉理工大学可以将本学位论文的 全部内容编入有关数据库进行检索,可以采用影印、缩印或其他复制 手段保存或汇编本学位论文。同时授权经武汉理工大学认可的国家有 关机构或论文数据库使用或收录本学位论文,并向社会公众提供信息 服务。 ( 保密的论文在解密后应遵守此规定) 研究生( 签名) f 晰师( 签名) 期o u b ( o ,厂疆 武汉理工大学硕士学位论文 1 1 引言 第1 章绪论 随着国民生活水平的提高,汽车已从奢侈品逐步成为普通老百姓的代步工 具,成为了大众生活的一部分。人们对与其朝夕相处的代步工具的质量要求日趋 严格、国家在汽车质量方面的法规日趋完善促使汽车制造商执行越来越严格的汽 车检测标准。目前大多数汽车下线检测线实现了检测自动化,网络化,大大提高 了检测精度和检测效率。 1 2 课题来源 试车道上的行驶测试是汽车下线检测过程中的一个重要环节,为了建立测试 结果与被试车辆间的对应关系,汽车生产厂家大多采用v i n 码( 车辆识别码) 标识车辆身份。对于在试车道上高速行进中的车辆所进行的测试项目,需利用无 线通信方式与主控室互通消息,为此,需在试车道上建立了一个无线局域网,利 用手持式无线终端传输被测车辆信息、收发测试指令、获取测试结果,存储及查 询测试信息。 1 3 论文结构 本论文其余部分的结构如下: 第2 章对论文的理论基础及相关协议进行了简要阐述。 第3 章讨论系统的需求分析,包括鉴别测试主题需求,通讯需求,消息安全 需求,存取数据需求等。 第4 章讨论系统总体设计,包括相关主要技术、硬件系统设计、功能模块划 分、设计流程等。 第5 章描述数据库的设计,包括数据库系统的选择、数据库表的设计及建立 数据库表等。 第6 章描述服务器端的设计与实现,包括主程序设计,数据操纵模块设计, 通讯模块设计和加密解密模块设计。 第7 章描述客户端的设计与实现,包括验证v i n 码模块设计,扫描v i n 码 模块设计,通讯模块设计和加密解密模块设计。 第8 章描述系统的配置与使用和系统的测试。 l 武汉理工大学硕十学位论文 第9 章是对本论文的总结和展望。 1 4 本章小结 本章首先简要概述了汽车下线检测技术发展背景,给出了本课题来源,接着 介绍了论文组织结构。 2 武汉理工大学硕士学位论文 第2 章涉及的相关技术及协议 为了研究的正常开展,这里先用一章内容集中介绍课题相关的技术和协议。 2 1 n e t 平台及c # 语言 c 撑( 念cs h a r p ) 是微软公司2 0 0 0 年和n e t 计划同时推出的。c 撑是一种源 于c + + 、类似于j a v a 的一种全新的完全面对对象的编程语言。c j f i 是专门为n e t 平台设计的。因此,要掌握好c 撑这门语言,必须先了解n e t 平台。 2 1 1 n e t 平台简介 2 0 0 0 年6 月2 2 日,微软公司正式推出了其下一代操作系统平台 m i c r o s o f t n e t ( 以下简称n e t ) 。微软公司的雄心是使用n e t 平台重新占有以前 被s u n 公司的j a v a 和j 2 e e 所占的网络软件份额。n e t 平台是直接针对i n t e m e t 环境的平台,是微软用来统一包括p c 、手机、p d a 上的通用系统服务的利器。 n e t 平台旨在实现下列目标: ( 1 ) 提供一个统一的面对对象的编程环境。 ( 2 ) 提供一个将软件分发和版本控制冲突最小化的代码执行环境。 ( 3 ) 提供一个能够非常安全执行代码的环境。 ( 4 ) 提供一个与底层操作系统无关的运行环境。 n e t 框架具有两个核心组件:公共语言运行库和n e t 平台类库。 通俗地讲,可以把公共语言运行库看成是运行在n e t 平台上的应用程序的 保姆,而可以把应用程序看着是一个想要去桃树上摘桃子的小孩子。小孩子爬上 桃树去摘桃子,保姆站在地上告诉他要小心,这就是所谓的公共语言库保证应用 程序运行安全;保姆还要给他拿着袋子装小孩子摘下来的桃子,这就是运行库给 应用程序的内存管理;之前保姆还替他呼叫外地的小朋友一起来分享果实,这就 是远程处理等等。所谓的以运行库目标的代码就是托管代码,不以运行库目标的 代码就是非托管代码,也就和有人管教的孩子是乖孩子,没人管教的孩子是野孩 子的道理一样。 另外一个重要组件,类库就是封装好的一个个直接拿来稍微修改就可以使用 的类。 图2 1 显示了公共语言运行库和类库与应用程序之间以及与整个系统之间 3 武汉理工大学硕 学位论文 的关系。该图显示了托管代码在是运用类库运行在运行库上的,而非托管代码是 直接和操作系统打交道的。该机制的优点是一旦托管代码有严重的错误不会危及 到系统底层,因为托管代码是在运行库这个非常安全的环境里运行缺点是不如 非托管代码灵括,高效。 勰警 图2 - i 公共语言运行库与应用程序以及操作系统间的关系 2 1 2 n e t 平台桨构 n e t 平台的架构可用图2 - 2 表示,整个平台由七大部分组成:支持公共语 言规范的多种开发语言、公共语言规范、应用程序编程接口( 包括a s p n e t 、 w e bs e r v i c e s 、w i n d o w sg u i 和控制台程序等) 、数据库编程接口( 数据和 x m l ) 、基础类库、公共浯言运行时和一个集成开发环境v i s u a ls t u d i o n e t 。 武汉理上大学硕士学位论文 匦兹五磊函 i c o m m o nl a n g u a g es p e c i f i c a t i o n 掣1 户捌幽蝴幽鞋弩炉姻喊l a s p n e tw e bs e r v j c e so h d 。m f o m s4 l 眵幽涵湖魁姻黝国纰邋哦爿 晦柚叫函鼬蚴幽蚴豳刨妇酬 图2 - 2n e t f r a m e w o r k 架构 c o m m o n l a n g u a g e r u n t i m e 公共语言运行库是所有部件的基石。在其之上, b a s ec l a s sl i b r a r y 类库和a d o n e t 数据访问可以直接访问c l r ,对上层的 a s p n e t 和w i n d o w sf o r m s 来说,又给它们提供了访问数据库和系统资源的接 口。通用语占规范是实现n e t 平台跨语言的基础。 n e t 平台上豹程序之所以能够类似于j a v a 一样跨系统运行,是因为c l r 能 把按照通用语言规范编程的多语言代码编译成m s i l ( 微软中间语言) ,这个语 言是中立的,不针对任何系统平台的。等到要真正执行的时候,再通过j i t o u s t i n t i m e ) 编译成本地代码执行。 n e t 卜的程序开发到本地执行的整个过程可用圈2 3 表示: v c 代码 卜编译成 入 c # 代码本机 v 8 代码 微软中m * 、 代码 间语言 图2 - 3 程序开发到本地执行过程 武汉理工大学硕士学位论文 2 2 网络体系结构 2 2 1o s i 参考模型 o s i 参考模型( o s i r m ) 的全称是开放系统互连参考模型o p e ns y s t e m i n t e r c o n n e c t i o nr e f e r e n c em o d e l ,o s 删) ,它是由国际标准化组织i s o 提出的 一个网络系统互连模型,如图2 4 所示。o s i 参考模型把网络通讯过程逐步分解 成7 层。每层执行相应的功能,其对外的接口都标准化。这样的好处是,一可以 屏蔽硬件网络设备间的差异,实现不同类型的主机相互通信,二可以实现专业化 分工,使厂家专注于自己擅长的领域。 ? 【j i l 。;l i i 。i 鲷”一- 。,1 l f j i l 。j l i 。;习a p d u 攘霜袭彖缨协议了 6 障嚣1 鄹孵酽诼1 习p p d u 接口会话璎协议; 3 匝莩孙” 2 镗箱瑟捞波 l 数据聱胬屡1 i 数冤链跽屡 ; l 物理菸| _ 物理瑟 芏祝a铭由嚣 一鞫络璎主 k oh 熬觅蜓弱 - _ 褂# 糟 i : 。| 闷络瑟ip a c k e t 1 r 一 叫数据涟路瑟lf l a m e 。“ 隧二至蔓 b i t 撬一路电耨协议 怒笺枕一路出嚣协波 辘一路由器游波 图2 4o s i 参考模型 2 2 2t c p i p 网络体系结构 t c p i p 协议采用了4 层结构,如图2 5 所示。o s i 中的物理层和数据链层被 统一成接口层。而会话层,表示层和应用层都被统一成应用层。 6 军 武汉理工大学硕+ 学位论文 分堪协议 应用屡t e t 、m 、s m 伸、咐t p 、d n s 传输壤 t c p 、u d p 网络层 l p 、l c m p 、a r p 、r a r p 接口层 酞n 、a r p a n t 、s a w 盯 图2 - 5t c p i p 分层模型图 2 2 3o s i 与t c p i p 模型对比 t c p i p 和o s i 模型对应关系如图2 - 6 所示。 t c p i pr e f e r e n c em o d e lt c p i pp r o t o c o ls t a c k o s lr e f e r e n c em o d e l a p p l i c a t i o nl a y e r t e l n e t 、f t p 、哪 a p p l i c a t i o nl a y e r p r e s e n t a t i o nl a y e r d n s 、s m t p s e s s i o nl a y e r t r a n s p o r tl a y e r t c p 、u d p t r a n s p o r tl a y e r t n t e m e tl a y e ri p 、i c m p 、a r p 、r a r pn e t w o r kl a y e r e t h e r n e t 、t o k e n r i n g 、 d a t al i n kl a y e r n e t w o r ki n t e r f a c el a y e r f d d l p h y s i c a ll a y e r 图2 - 6t c p i p 与o s i 参考模型对比 t c p i p 模型由于其实用性,流行程度,已经成为事实上的行业标准。 2 3 相关协议介绍 在t c p i p 模型中的传输层( t r a n s f e rl a y e r ) 有两种通信协议:t c p 和u d p 。 下面先简要介绍u d p 协议。 7 武汉理工大学硕士学位论文 一_ _ - _ _ ,- _ 一 2 3 1u d p 协议 u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) 是传输层的一个重要协议( 见图2 7 ) ,它采 取无连接方式提供高层协议间的事物处理服务,提供了用程序之间传送数据包的 基本体制。每个u d p 数据包都是一个独立的信息,包括完整的源地址或目的地 址。它在网络上以任何可能的路径传往目的端,但不能保证能否到达目的端和到 达目的端的时间以及内容的正确性。 o舔糙3 l l l 嗽潦端翻蟹 l 嫩秘的端翻学 l 缎翻融怅痰l 鳓跬疆) p 检验襁 7 数探( 翔裳露 j 2 3 2t c p 协议 2 7u d p 数据报格式 t 娜 上 t c p 是t r a n s m i s s i o nc o n t r o lp r o t o c o l 的简称,是一种面向连接的保证可靠传 输的协议。通过t c p 协议传输,得到的是一个顺序的无差错的数据流。t c p 传 输实体之间使用t c p 数据报交换数据( 见图2 8 ) 。 8 武汉理工大学硕士学位论文 o3l?81 5l s l 鹱零l 头舞长度纛务类蠹总长度 字节摹位) dm 标 袋o 跨段镰移 f f 存嚣对耀c 耵。 7 捧坟 头部饺礁翱 匏倥蒙融辱地艟 3 2 僚嚣的聃魄链 _ 造磺如荣有的话) 三 ij 图2 - 8t c p 数据报格式 t 2 0 字节 上 t c p 协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先 建立逻辑连接,然后再传输数据,最后释放连接3 个过程。t c p 提供端到端、全 双工通信;采用字节流方式,如果字节流太长,将其分段;提供紧急数据传送功 能。 2 3 3t c p 和u d p 协议应用的比较 使用u d p 协议时,每个数据包中都给出了完整的地址信息,因此不需要建 立发送端和接收端的连接。对于t c p 协议,由于它是一个面向连接的协议,在 套接字之间进行数据传输之前必须建立连接,所以在t c p 中多了一个连接建立 的时间。 使用u d p 传输数据时是有大小限制的,每个被传输的数据包必须限定在 6 4 k b 之内。而t c p 没有这方面的限制,一旦连接建立起来,双方的套接字就可 以按统一的格式传输大量的数据。u d p 是一个不可靠的协议,发送端所发送的 数据报不一定以相同的次序到达接收端。而t c p 是一个可靠的协议,它确保接 收端完全正确地获取发送端所发送的全部数据。 在汽车测试通讯系统中,要求可靠地传输测试指令和测试结果,所以t c p 协议比较适合。 9 武汉理工大学硕士学位论文 2 4 计算模式 2 4 1 三种计算模式介绍 商用计算模式大致有最初的集中式,c l i e n t s e r v e r 模式,然后到现在的 b r o w s e r s e r v e r 模式。 集中式计算模式是指由一个大型机支持所有的运算,与之相连接的是一些几 乎没有什么运算能力的哑端。这样的模式好处在于安全性高,缺点是硬件初始的 投资高,可移植性差。 c l i e n t s e r v e r 模式就是指把应用程序设计分为两块,一块运行在c l i e n t 客户 端,另一块运行在s e r v e r 端。由于网络带宽的限制,客户端程序在本地承担了 大部分的数据处理工作,处理好了之后再占用网络带宽交给服务器端处理。这样 做的好处很明显,通讯效率高,服务器负担轻,响应快。缺点就是每次程序的更 新,都需要客户端程序逐个安装和升级。 b r o w s e r s e r v e r 模式相对c s 模式来说,就是客户端程序统一成一个简单的 b r o w s e r 浏览器。客户端的绝大部分业务处理工作都通过网络发送给服务器去处 理,处理之后将结果转化成h t m l 格式传回浏览器。基本上,浏览器所作的工 作就是把h t m l 代码解释并显示成我们所能直接看到的网页形式。 2 4 2b s 和c s 模式的比较 目前最流行的计算模式是b s 和c s 模式,都有以下特点: 1 b s 模式占用带宽多,通信效率比c s 模式低。因为在b s 模式中浏览器 几乎不做任何有意义的处理工作,它接到用户的点击之后就第一时间请示服务 器,由服务器分析处理用户的请求,再传回浏览器。浏览器接到这个已经处理好 的结果,再显示给用户。整个过程,来回请示,必将大大降低通信效率。而c s 模式不一样,c s 模式中的客户端程序会有针对性处理大部分用户的请求。 2 b s 模式面对的是开放的广域网,其对传输的信息的安全控制不如c s 模 式。首先,c s 模式面对的是固定的,可控的用户。而b s 模式面对的是不可预 知的用户。他们只要拥有b r o w s e r 就可以访问。其次c s 模式可以实现本地r s a 网络数据加密,确保网络通讯信息安全。 3 b s 模式的突出优点是程序部署极其便利。一旦服务器更新了服务, b r o w s e r 一旦连接上服务器就可以享受最新的服务。与之相对的是c s 模式。如 果程序要更新,用户必须挨个更新客户端程序。如果客户端数量大到一定程度, 这个工作将及其繁重。 1 0 武汉理工大学硕士学位论文 2 4 3 汽车检测通讯系统的计算模式选择 汽车检测通讯系统的实际环境要求手持移动设备和主控室计算机之间通信 迅速,对通讯安全要求高。而且汽车检测通讯系统是运行在局域网里,所以其软 件部署的工作负担不重。 综上所述,汽车检测通讯系统采用c l i e n t s e r v e r 计算模式就比较符合实际应 用环境的。 2 5 基于套接字的网络编程技术 套接字( s o c k e t ) 是支持t c p i p 的网络通信的基本操作单元。通俗的讲,可 以把套接字看成一个个插座。插座向里的这端把主机的口和端口固定在一起, 而向外的一端提供接口,以供网络连接用。等到插头插上插座之后,两头的插座 内部就连通了。 图2 - 9 是在网络中应用套接字通信的基本原理示意图。主机a 上的进程a 在 绑定好的套接字上存储一定量的信息。网络管理软件把这段信息通过网络接口卡 发送给主机b 。主机b 首先通过网络接口卡接收到这段信息,转给网络管理软件 处理。网络管理软件再把这段信息传给进程b 所绑定的套接字。 主橇a 寰枫b 图2 - 9 套接字之间的通信 在汽车检测通讯系统的客户端,我们建立了一个称为c l i e n t s o c k e t 的客户端 套接字,另一个运行于服务器端,我们称之为s e r v e r s o c k e t 。 套接字之间的通讯一般分为三个步骤: 第一,服务器端建立一个监听套接字。这个套接字绑定本地i p 和端口,并 开启监听。 第二,客户端建立一个连接套接字。这个套接字绑定要连接的服务器端口 武汉理工大学硕士学位论文 和端口。 第三,客户端套接字向服务器端发起连接,服务器端接受其连接。 2 5 1 运用c # 实现面向连接的套接字编程 针对面向连接的t c p 和面向无连接的u d p 协议,套接字编程也分两种:面 向连接的和面向无连接的套接字。 c 撑面向连接的套接字的编程如图2 1 0 所示。 对于服务器端,首先要创建监听套接字: s o c k e tl i s t e n e r s o c k e t = n e w s o c k e t ( a d d r e s s f a m i l y i n t e r n e t w o r k , s o c k e t t y p e s t r e a m ,p r o t o c o l t y p e t o p ) 然后绑定本地口和端口 b i n d ( i p e n d p o i n ti p e ) ; i p e 是i p e n d p o i n t 类的一个实例。其绑定了一个口和端口。 再开启监听 l i s t e n ( i n tn u m ) ; 其中h u m 为系统等待用户程序服务排队的连接数,超过这个数目客户无法连 接上服务器。 在开启了监听之后,服务器就做好了接受客户端连接请求的准备。 如果客户端发起了连接请求,服务器端就用a c c e p t 方法接受请求,并同时创 建一个新的套接字专门处理和该客户的通信。 对于客户端的编程几乎和服务器一样,不同的是在使用c o n n e c t 方法 绑定端点的时候,所使用的不是本地i p ,而是所要连接的服务器的i p 。 1 2 武汉理工大学硕七学位论文 服务嚣端客户端 图2 1 0 面向连接的套接字编程 2 5 2 无连接的套接字 使用无连接的套接字编程比较简单,如图2 1 1 所示,和面向连接的套接字编 程不同点就在于,发起连接的一方不需要使用c o n n e c t 方法。 设备1 s o c k e t ( ) b i y d ( ) l i s t e n ( ) r e c e i v e f r o m ( ) s e n d t o ( ) c l o e s e ( ) 图2 11 无连接的套接字编程 1 3 设备2 s o c k e t ( ) b 姗) s e n d t o ( ) r e c e i v e f r o m ( ) c l o e s e ( ) 武汉理工大学硕士学位论文 2 5 3 汽车检测通讯系统的选择 由于汽车检测通讯系统采取了t c p 协议,所以汽车检测通讯系统编程的时候 应该使用面向连接的套接字编程技术。 2 6 网络数据加密解密算法 网络诞生的时候并没有考虑太多安全问题,所以网络通讯不可避免地要受到 黑客的侵袭。如何保证网络数据的安全传输呢? 最好的方法就是在本地加密后再 传输,达到目的端之后再解密。下面将介绍网络数据加密算法。 2 6 1 数据加密模型 一般数据加密模型为明文x 经过加密算法e 运用加密密钥k e 加密成密文y , 传输到目的端,如图2 1 2 所示。目的端接收到密文y 之后,经过解密算法d 运 用解密密钥k d 解密成明文x 。如果在信息传输中途被黑客截取,由于没有解密 密钥k d ,也无法被破译。 图2 1 2 数据加密与解密的一般模型 2 6 2 对称加密算法 所谓对称加密算法是指加密密钥和解密密钥一致。这个算法模型首先要传输 密钥给目的端,在目的端收到密钥之后才可以解密之后接收的密文。如果加密密 钥在传输的过程中被截取,那么后续的密文都会被截取者破译,对称加密就宣告 失败了。所以对称加密模型的关键点是如何保证密钥的安全传输。 n e t 类库使用的对称加密算法有r c 2 、d e s 、t r i p l e d e s 和r i j n d a e l 。为了 1 4 武汉理工大学硕士学位论文 提高安全系数,n e t 基类库中提供的对称加密算法使用一个密钥和一个初始化 向量( i v ) 加密明文。初始化向量是随机生成的字符集,使用它可以保证对相 同的明文加密得到的密文完全不相同。这就断绝了那些通过相似的密文推敲密钥 的希望,大大地提高了对称加密算法的安全系数。 在n e t 平台中,对称加密是面向s t r e a m 的,也就是数据流。n e t 平台里常用的 加密算法是t r i p l e d e s c r y p t o s e r v i c e p r o v i d e r 。 t r i p l e d e s 算法采用d e s 的三次连续迭代,安全系数比d e s 对称加密算法 提高了三倍。 2 6 3 非对称加密算法 所谓非对称加密算法是指加密密钥和解密密钥不一致的算法。其中加密密钥 和解密密钥是由一定的算法推导出来的。这个算法是不可逆的,也就是由算法推 导出加密密钥和解密密钥容易,而由加密密钥或解密密钥推导出对方却几乎不可 能。 所以使用非对称加密算法可以对任何人公开一个公钥,把明文用这个公钥加 密成密文。只有和这个公钥相配对的私钥才可以对这个密文进行解密。任何其他 未经授权的使用者无法从公钥推导出私钥,也就无法破译。 非对称加密算法比对称加密算法安全性更高。因为非对称加密模型中,唯一 能解密的私钥是不需要通过网络传输的。而对称加密算法的密钥是必须通过网络 传输给对方,否则对方无法解密。 但是非对称加密不是基于流式的,无法把数据串接起来。 n e t 平台里提供了r s a c r y p t o s e r v i c e p r o v i d e r 类来产生公钥私钥对,进行加 密解密。 2 6 4 对称加密算法和非对称加密算法的混用 通过以上章节分析可知,对称加密算法和非对称加密算法各有优缺点。对称 加密算法是基于流,加密速度快,但是由于密钥需要通过网络传输,容易被截取, 安全性不够。非对称加密算法不是基于流,加密速度慢,效率低,不适合处理大 量数据,但是由于其私钥不通过网络传输,所以安全性高。 所以在实际应用中,通常混用两种加密算法,使其扬长避短,达到很好的效 果。 具体实现方法如图2 1 3 所示。主机b 在本地产生非对称算法的公钥私钥对, 并把公钥传输给主机a 。主机a 用这个公钥加密对称算法的密钥,并传给主机a 。 1 5 武汉理工大学硕七学位论文 这步是关键,解决了对称加密密钥算法中的密钥安全传输问题。因为即使这个用 非对称加密算法加密过的对称密钥被截取,由于没有私钥也无法被破译。在主机 b 得到这个加密后的密钥后,用本地私钥解密。于是双发都安全的拥有了同样的 对称密钥和初始向量。这样双发再用这个对称密钥和初始加密明文,就可 以安全地传输了。 2 7 本章小结 图2 1 3 混合加密模型 本章首先介绍了n e t 平台及c 撑语言,然后介绍了网络体系结构及涉及的相 关协议,接着对基于套接字的网络编程技术做了阐述。最后简单介绍了用c j f i 语 言实现数据加密解密算法。 1 6 武汉理工大学硕十学位论文 第3 章系统需求分析 上面介绍了与通讯系统相关的技术和协议,在本章中将讨论系统需求分析。 3 1 鉴别测试主体需求 汽车道路测试系统需要建立测试结果与被试车辆间的对应关系。汽车生产厂 家大多采用v i n 码( 车辆识别码) 标识车辆身份。于是需要扫描v i n 码( 条形 码) 的硬件设备和软件模块。硬件设备用于采集v i n 码信息,软件模块用于读 入并显示v i n 码信息。 v i n 是英文v e r d ei d e n t i f i c a t i o nn u m b e r ( 车辆识别码) 的缩写。因为a s e 标 准规定:v i n 码由1 7 位字符组成,所以俗称十七位码。它包含了车辆的生产厂 家、年代、车型、车身型式及代码、发动机代码及组装地点等信息。正确解读 v i n 码,对于我们正确地识别车型,以致进行正确地诊断和维修都是十分重要的。 v i n 码的编制是遵循一定规则的,要防止非法v i n 码进入测试系统,就需要 对扫描进来的v i n 码进行验证。 3 2 基本通信需求 这是通讯系统的基础需求。对于在试车道上高速行进中的车辆所进行的测试 项目,需利用无线通信方式与主控室互通消息,所以需要手持无线通讯设备。软 件上需要在手持通讯设备上安装通讯客户端向主控室计算机发起连接请求,而主 控室计算机上安装通讯服务器端监听通讯客户端的连接请求。在连接建立后,双 方要通过一定的通信机制来保证正确无误地交换测试信息。 3 - 3 通讯安全需求 检测通讯系统所要传输的信息如果泄漏,可能会造成不良后果。可能会产生 不良后果。故需要对传输的数据加密,这样即使被人窃取,也无法破译,或者说 破译成本过大。 3 4 信息存储需求 1 7 武汉理工大学硕士学位论文 汽车测试数据对汽车生产厂家有着重要的价值。所以很有必要把测试数据存 储在个可靠安全的数据库里,以备查询、分析。 3 5 本章小结 本章主要介绍了检测通讯系统的所有需求,主要有鉴别测试主体需求,基本 通信需求,通讯安全需求和信息存储需求。 1 8 武汉理上人学母i 士学位论文 4 1 系统硬件结构 第4 章系统总体设计 汽车户外检测系统所在的试车道大多距离长,且受检汽车在高速行驶中。如 果采用传统双绞线局域网通讯方式显然不合时直。取而代之的是w l a n ( w i r e l e s s l o c a la r e an e t w o r k ) 无线局域网方式。无线局域网采取r a d i of r e q u e n c y 技术, 使得用户可以跨越空间的障碍而自由地通讯。 汽车检测无线通讯系统硬件部分是由主控室计算机,无线交换机,接入点 ( a c c g s s p o i n t ,以下简称a p ) 和手持无线终端组成的,如图4 _ l 所示。a p 通过 有线网络与主控室计算机以及无线交换机连接,手持无线终端以无线方式与接入 点交换测试信息。 圈4 1 通讯系统的硬件结构框图 4 1 1 无线交换机 无线交换机( w i f e l e s s s w i t c h ) j 作在开放系统l :i j 奎参考模型( 简称o s i ) 的第 二层,属于数据链路层的连接设备,可以对数据的传输进行同步、放大和整形处 理。并起着集中配置和管理所有与其连接的a p 的作用。 4 1 2 a p a p 相当于局域网集线器,工作在o s i 的第一层。它在无线局域网和有线网 络之间接收、存储和传输数据,以支持一组无线终端设备。它通过天线与无线设 备进行通信。在有多个a p 的时候,无线终端设备可以在a p 间漫游切换。a p 1 9 武汉理工大学硕士学位论文 的有效范围是2 0 一5 0 0 mb 1 。 业界把a p 分为“瘦”a p 和“胖”a p 两种。所谓的“瘦”就是指真正接入点, 而“胖 a p 其实就是无线路由器,除无线接入功能外,一般具备w a n 、l a n 两个 接口,多支持d h c p 服务器、d n s 和m a c 地址克隆,以及v p n 接入、防火墙等安 全功能。 4 1 3 带扫描头的手持无线终端 带扫描头的手持无线终端用于汽车检测人员扫描v i n 条形码和以无线方式 与接入点交换测试信息。 4 2 系统软件结构 在完成了系统需求分析和系统硬件设计后,下面将设计系统总体软件架构。 由上文讨论计算模式时,选择了c s 模式作为汽车检测通讯系统的计算模式。系 统采用客户机服务器( c s ) 的三层模式,如图4 2 所示。s e r v e r 和n 个c l i e n t 相连接,服务器直接操作数据库。客户端也可以间接通过服务器端来操作数据库。 图4 2 三层c s 结构示意图 1 客户层 客户层也叫做应用表示层,即客户端,是系统和用户交互的窗口。所谓的表示层, 2 0 武汉理工大学硕士学位论文 就是给用户一个操作和获取信息的途径。在汽车检测通讯系统中,它担负着扫描 v i n 码,验证v i n 码的合法性,响应用户发起的测试指令和显示测试结果的重 任。为了使用户能直接地进行操作,客户层需要使用图形用户接口。若通讯用户 变更,系统只需要改写显示控制和数据检查程序,而不会影响其他两层。数据检 查的内容限于数据的形式和值的范围,不包括有关业务本身的处理逻辑。 2 服务层 服务层又叫做功能层,相当于应用的本体,它

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论