高速公路收费系统通信服务器的设计与实现解析_高速公路收费系统维护

其他范文 时间:2020-02-27 13:26:57 收藏本文下载本文
【www.daodoc.com - 其他范文】

高速公路收费系统通信服务器的设计与实现解析由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“高速公路收费系统维护”。

收稿日期 :2002201229

作者简介 :付孟若(1972-, 男 , 广东韶关人 , 博士生 , fumengruo @21cn.com.高速公路收费系统通信服务器的设计与实现 付孟若

吴今培

张其善

(北京航空航天大学 电子信息工程学院 , 北京 100083

摘要 :高速公路收费系统通信服务器是高速公路收费系统数据传输的枢

纽.重点介绍了高速公路收费系统通信服务器软件的设计、实现方法和特点.通信服 务器使用按优先级分发报文的通信协议 , 支持多用户的并发通信.为了实现数据共享 的集中控制 , 通信服务器采用客户 Π服务器的模式.使用多线程的编程技术 , 满足了对 通信服务器实时性的要求.目前 , 该软件已通过了验收 , 在广深高速公路上运行良好.关

词 :通信软件;协议(通信;网络软件;并发通信 中图分类号 :U 412.36+ 6.1;TP 393.09文献标识码 :A

文 章 编 号 :100125965(2003 0720624203 De sign and implementation of on highway toll(School of E , of Aeronautics and Astronautics , Beijing 100083, China toll connection system is the center of data transmiion.The de 2sign , of communication server were introduced.Based on designed protocol support packets , communication server exchanges data concurrently with end 2users.Client ΠServer m odel was utilized to meet the need of centralized control of sharing data.Multithread

programming technique was used to fulfill requirement of real 2time.The system w orks satis factorily at G uangzhou 2Shenzhen highway.K ey words :communication s oftware;protocol(communication;netw ork s oftwares;concurrent communication

我国是当今世界上公路建设速度最快的国

家.目前已通车高速公路收费系统普遍采用 “ 人工 收费 , 计算机管理” , 随着高速公路路网的发展和 计算机网络、通信等高新技术的发展 , 在区域或省 内实行联网收费 , 是当前智能交通系统(ITS 发展 的趋势.高速公路收费系统一般分为 3级 :收费车 道、收费站、收费管理中心.收费管理中心负责管 理各个收费站 , 收费站管理各个车道 , 收费中心与 收费站通过同步数字网 S DH(Synchronous Digital Hierardly 快速传递数据 , 收费站通过局域网对收 费车道实施监控并获得相关的收费信息.收费数 据在车道形成 , 经过收费站上报到中心.各种系统 配置及参数表由中心下发到收费站 , 再由收费站 下发到各个车道.为了连接高速公路收费管理中心和收费站、收费车道 , 分发收费数据和监控数据 , 需要开发高 速公路收费系统通信服务器.主要解决各级管理 部门之间的网络互连、监控报文的可靠实时分发 和其它类型报文的可靠分发.通过该通信服务器 , 可以获得各个收费车道设备的实时状态信息 , 并 可下发打开车道、关闭车道、强制下班等控制报文 和其它业务参数表.本文主要讨论该通信服务器的设计(功能、通 信协议 和实现(开发手段、软件结构和特点.1系统设计

通信服务器是高速公路收费系统通信的桥

2003年 7月 第 29卷 第 7期 北 京 航 空 航 天 大 学 学 报

Journal of Beijing University of Aeronautics and Astronautics July 2003 V ol.29 N o 17 梁 , 通过它可以实现各级系统之间的数据通信和 信息交换.1 功能

① 实时接收和发送监控报文;② 根据数据的 优先级 , 接收和发送其它各种类型的报文;③ 支持 文件传输;④ 通信链路的维护和侦测.当链路中断 并恢复后 , 支持自动重连;⑤ 具有简单网管功能 , 可以维护各个通信节点.2 通信协议

通信服务器为各个客户端提供 TCP ΠIP 的接 口 [1].由于报文不是按照 FIFO(先进先出 的原则 进行传送 , 因此通信服务器使用一个应用层的通 信协议 , 来调度和分配优先级不同的报文.按照协 议的定义 , 报文被分为 5部分(见图 1.目的地址 源地址 优先级 数据 校验 图 1

报文结构 报文按类型分为监控报文和数据报文.监控

报文的优先级别最高 , 数据报文的优先级次之 , 普 通文件的优先级最低.网络通信中断时 , 器缓存未上传的数据 ,..优先级划分的原则是 :在同类 报文中 , 不需确认的监控报文或实时数据报文的 优先级最高 , 其次才是需要确认的监控报文或非 实时数据报文.2实

现 2.1

开发手段

在 Windows 2000平台上有大量的系统服务类 型作为分布式计算手段.除了直接使用 Windows 提供的 Wins ock 服务外 ,Windows 2000还有命名管 道(pipe、远程过程调用(RPC、分布式组件对象 模型(DC OM、消息队列(MS M Q 等名目繁多的分 布式软件开发手段.RPC ,DC OM 都是为专门的系 统功能而设定的 , 在通信服务器以数据传输为主 的情况下 , 使用它们只能增加系统开销.MS M Q 虽 然很适用于开发传输数据的中转中心 , 但它使用 了过多的中间层系统调用 , 导致效率太低 , 会成为 系统的瓶颈.因此最佳的选择就是直接对 Wins ock(Windows S ocket 接口进行开发 , 虽然编程复杂 , 但可以获得最好的性能 [2].2.2

软件结构

高速公路收费系统采用客户 Π服务器的模 式 [1].其中通信服务器是服务器端 , 与它相连的其 它应用系统是客户端 , 其模型如图 2所示.客户 Π

服务器模式就是以服务器为中心实现数据共享的 集中控制.客户端只要与通信服务器间建立一条 连接 , 就可以与所有其它的客户端通信.客户 Π服 务器模式实际上包含了 2个程序 , 一个运行在服 务器端 , 另一个运行在客户端.客户端与服务器端 建立可靠的、面向连接的服务.服务器首先启动 , 建立一个套接口 , 并把它和本机的网络地址绑定 起来 , 然后使套接口做好侦听的准备 , 这时就可以 等待接收数据了.客户端在建立套接口后 , 就可以 与服务器建立连接了.连接一旦建立后 , 服务器和 客户端就可以通过套接口发送和接收数据了.事 实上 , 服务器和客户端的程序并不是对称的.客户 端的程序不停地向服务器发出请求 , 服务器侦听 套接口 , 根据客户端的请求做出响应 , 所以它们之.,.图 2 客户 Π服务器模型

广深高速公路收费系统通信服务器包含通信 模块、链路控制模块、报文处理模块和用户管理模 块.这些模块之间的关系如图 3所示.图

3通信服务器的结构

通信模块根据报文的优先级 , 可靠地发送和 接收报文 , 并支持报文的静态路由.链路控制模块监测网络连接是否正常.如果 不正常则通知主线程设置网络不正常标识 , 同时 定时检查网络通信是否正常.如果网络连接恢复 正常 , 则通知主线程可以进行数据传输.报文处理模块负责报文的处理 , 主要包括提 取报文所需的原始数据 , 并根据报文的定义格式 , 封装和拆封报文.用户管理模块主要完成与通信服务器连接的 客户端的管理 , 管理的内容包括授权客户端连接 526 第 7期

付孟若等 :高速公路收费系统通信服务器的设计与实现

通信 , 客户端的名称 — 地址表格的维护 , 各通信节 点通信状态的显示和管理 , 以及在必要的时候 , 可

以强制断开与通信节点的通信连接等.由于每个客户端都需要与通信服务器建立 TCP ΠIP 连接 , 为了提高软件代码的重用性和加速 应用系统的开发 , 利用 Windows 平台的 ActiveX 技 术将客户端的通信代码封装成一个 OCX 控件 , 这 样通信服务器和客户端的 OCX 就构成了一个基 于 TCP ΠIP 的实时分发技术的客户 Π服务器模式.这种实时的分发技术能够在不同的模块间提供透 明的通信手段 , 开发层次在 OSI 7层网络模型的 应用层上.2.3

点多个客户端的实时、并发通信.根据需求 , 通信服务器需要与多达 30个的客户端建立连接 , 这样要解决处理各个节点数据的延时问题.通信 服务器建立了 30个逻辑通信链路(建立并打开 30个套接口 , 与请求通信的客户端相连 , 来解决服 务器调度客户端并发通信的问题 , 每个逻辑通信 链路都分别使用 512个字节的缓冲区.以满足客户端的实时、2 时 , , 使用了.一个接收线程 , 分别处理报文的发送和接收.发送 线程和接收线程需要协同工作.通信服务器使用 同步事件(WS AEventSelect 来同步数据 , 防止发送 线程和接收线程在读取数据缓冲区时发生冲突.3 差错控制采用连续 ARQ(自动重复请求 方式.客户端可以一次发送多个数据报文 , 通信服 务器接收到报文、解析后发回一个应答 , 对一次传 输进行确认.这样可以避免客户端每次发送一个 数据报文 , 都需要等待通信服务器的应答 ACK(Acknowledgement , 从而提高了信道的利用率和 传输效率.确认应答机制.根据设计的通信协议 , 并 不能保证发送的报文都被通信服务器可靠地接 收.为了保证数据传输的可靠性 , 通信服务器设计 了可靠的确认应答机制.客户端在发送数据报文 后 , 就等待服务器的应答(ACK 报文.如果在规定 的时间内 , 客户端没有收到服务器的应答 , 则重新 发送未正确接收的数据 , 同时重发次数增加一次.如果重发次数超过了规定的次数 M , 就丢弃该数 据报文 , 同时启动通信链路检测线程 , 检查通信链 路的状况 , 如图 4所示.图

4通信链路检测线程的流程数据转发机制.通信服务器对接收到的报 文进行分析.如果报文的目的地址不是本地 , 就通

过全线地址表对目标地址进行路由 , 然后通知发 送线程 , 从指定的端口转发.2, 所 ,.如果需要增 , 可以编辑全线地址表 , 加入通信节 点地址和名称即可.3结 束 语

使用多线程的编程技术开发的、支持并发通 信的通信服务器 , 在广深高速公路系统升级改造 过程中 , 经过了系统联合调试和实际运行的考验 , 并运行良好.采用 ActiveX 技术开发的 OCX 控件 , 加速了应用软件的开发 , 提高了代码的重用性.实 践证明 , 它可以满足实时性和多用户并发通信的 要求.参考文献(R eferences [1]Leon R E.W orld of internet :A client 2server architecture and the new generation of in formation servers[J].Online and CDROM Re 2view ,1994,18(5 :279~284 [2]哈蒙德.计算机局域网性能分析 [M].钟嘉强译.北京 :人民 邮电出版社 ,1991

Hamm ond.Performance analysis for com puter LANs[M].T ranslated by Zhong Jiaqiang.Beijing :People ’ s P ost and T elecommunications Publishing H ouse ,1991(in Chinese [3]Anthony Jones , Jim Ohlund.W indows 网络编程技术 [M].京京 工作室译.北京 :机械工业出版社 ,2000 Anthony Jones , Jim Ohlund.Netw ork programming for micros oft windows[M].T ranslated by Jing Jing S tudio.Beijing :China M a 2chine Pre ,2000(in Chinese 626北 京 航 空 航 天 大 学 学 报

2003年

下载高速公路收费系统通信服务器的设计与实现解析word格式文档
下载高速公路收费系统通信服务器的设计与实现解析.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文