基于部标JT/T 808协议及数据格式的GPS服务器

2013年3月7日 分类: GPS系统, 部标808, 部标监控平台
2011年5月10日中国交通通信信息中心下发了《印发道路运输车辆卫星定位系统平台和道路运输车辆卫星定位系统车载终端标准符合性审查办法(试行)的通知》。通知要求,系统平台和车载终端应当分别满足《平台要求》和《终端要求》,同时分别满足《道路运输车辆卫星定位系统平台数据交换》和《道路运输车辆卫星定位系统终端通讯协议及数据格式》的要求。系统平台和车载终端,应按照本办法通过标准符合性审查。不符合标准的,不得用于道路运输车辆动态监管工作。《道路运输车辆卫星定位系统平台和道路运输车辆卫星定位系统车载终端标准》简称部标,部标包括《道路运输车辆卫星定位系统平台技术要求》(JT/T796-2011,简称《平台部标》)和《 道路运输车辆卫星定位系统车载终端技术要求》(JT/T794-2011,简称《终端部标》)。至此,关于系统平台和车载终端必须符合部标的政策性文件正式出台。而对应硬件终端标准的通信协议标准JT/T808-2011和JT/T809-2011协议也随之出台。

部标808和809的出台,统一了产品的标准,统一了平台与终端之间的通讯协议,对于GPS运营商而言,只要平台支持部标,那可以选择任意一家的GPS车载终端,也不会受厂商的制约,GPS运营商在市场竞争过程中将更看重产品的质量及服务,从而也间接地促进市场上产品的稳定性和可靠性。

但是开发部标GPS服务器是一个繁琐苦逼的活,有各种各样的GPS终端需要兼容和支持,现在交通部颁发了统一的标准协议和数据格式,大部分车辆的GPS终端都需要支持,软件也需要支持,否则可能在市场准入的时候就遇到麻烦。

我们开发了一个支持JT/T 808-2011数据格式的健壮的GPS服务器,提供下载。数据库版本支持Mysql, Sqlserver和Oracle等关系数据库,可以直接拿来做服务器连接前段GPS客户端和报表开发。需要JT 808 源码(java和C#两版本可选其一)+808模拟测试终端 + 压力测试工具的请联系我购买1200元(2379423771@qq.com), Java版本参见:基于Java Mina框架的部标GPS服务器,JT 808源码很完整,已通过交管平台接入,可以直接使用。如果自己来写,可能需要很长时间的编写,由于需要结合终端或模拟终端进行测试,很多测试用例很难测试,如拍照,多媒体上传,行车记录仪数据上传等等,很容易走弯路,浪费了大量的时间,建议直接购买808源码省时省力。而通过808模拟测试终端可以模拟硬件设备的上传行为通过TCP或UDP发送数据,帮助检验我们的程序是否正确的实现了808协议。

部标808服务器源码

 

809转发服务器的设计,参见:基于JT/T809-2011的(已过检)GPS平台数据交换及转发服务器
交通部JT808协议GPS数据Socket服务器交通部JT808协议GPS数据Socket服务器(需要Net4.0环境) 已下载 373 次

试用版不提供指令下发的功能,没有数据存储和报警分析。如果没有安装.NET4.0 runtime ,将不能运行,.NET4 runtime 安装请到微软网站 : http://www.microsoft.com/zh-cn/download/details.aspx?id=17718

 

1.支持TCP和UDP两种传输协议, 完整实现808协议的所有命令和消息;主要功能有:

2.基于完成端口的异步通信模式,可以支持大规模运输车辆的终端并发上传GPS数据;

3.对于数据包和定位包及服务器终端连接状态进行在线实时监控,提供在线下发命令接口可以很方便的与终端进行交互,如拍照摄像等;

4.对于GPS数据包进行日志保存,便于调试跟踪。

5.开发语言采用C# .NET4.0框架, 数据库框架采用Nhibernate,这样便于数据库移植,可以支持Oracle, MySql和MS Sqlserver等多个数据库。

6.Socket服务器模型采用了基于SocketAsyncEventArgs的SocketServer.  SocketAsyncEventArgs是.net提供的关于异步socket类,封装了IOCP的使用,可以用它方便的实现非阻塞通信(non-blocking IO),同时采用对象池和缓冲区管理,大大减少了对象分配和垃圾收集的工作,对于Server性能和吞吐量有很大提升。单机测试可以并发支持上万个终端。

7.数据库版,自动分析GPS数据,形成报警记录,停车报表,油量记录和加油漏油记录、历史轨迹等多个丰富的报表,直接拿来就可以用。

8.高性能的解析模块,在大规模连接的情况下,对于上传的数据包的粘包、断包仍然需要进行不差毫厘的解析,防止出现丢包的情况,这也是交通部平台过检所要求的:在5000和1万个终端连接的情况下,不允许出现连接中断、丢包的情况。

 主界面功能如下图所示,提供连接和数据包的视图,对于连接的终端可以批量下发各种命令。

 

 

服务器提供了从终端控制、参数设置和行车记录仪及其他所有808规定的平台下发指令。可以对多个终端下发。

808服务器界面

GPS服务器连接的特点是基于长连接,高吞吐量的处理特点,

1.很多企业在设计的时候,基于TCP协议开发,服务器所承受的连接都是长连接。

2.由于808协议规定终端发上来的包除了应答包,都要进行应答,很多傻逼终端企业在开发的时候,死板的照抄808协议,不应答不行。这样就造成了大批量数据上传和大批量数据应答的情况。实际上定位上传的数据包完全不应该应答,心跳包就更没道理去进行应答了。

为了提高终端接入能力和数据分析、入库能力,将终端消息的处理分成独立的五级处理模块,每个处理模块都是异步独立的,每个模块内都含有独立的处理队列,互不影响,提高数据的吞吐量和系统的响应能力。

1)第一级:实时数据解析入库,入库能力决定了客户端所看到的实时数据是否延迟;

2)第二级:报警分析并入库(包括32种808协议规定的报警、停车报警和路线偏移报警),报警分析只有快速分析才能快速的推送到前端客户端;

3)  第三级:消息应答和指令下发,应答可以有一定的延迟,而不影响整个系统性能。

4)第四级:报表统计,由于油量统计、里程统计、上线率统计,需要定时扫描数据库,生成每个时段的数据统计提供给报表查询使用.

5)第五级:日志记录和显示

采用终端模拟工具,自动生成静态车辆数据,自动进行并发连接、注册和鉴权后,开始定位数据上传。每个车辆的上传轨迹是独立不重复的,报警位和状态位定时反转,便于测试报警分析和入库能力。

这样经过五秒传一次的模拟的压力测试后,真实环境就不在话下了。如何进行压力测试参见:GPS部标监控平台-压力测试

如果购买单独的808服务器,不能满足你的要求,也可以增加预算购买完整的gps平台(含服务器和BS客户端、CS客户端和手机客户端).

如需购买GPS平台源码+文档+服务,可以联系我2379423771@qq.com。

Java平台,参见:基于Struts+Spring+Hibernate+Ibatis+Quartz+Mina框架构建部标监控平台

.NET平台,参见:基于Asp.NET MVC构建GPS部标平台

cs客户端参见:GPS监控CS客户端设计

 

标签: , , ,

3 条评论 于 “基于部标JT/T 808协议及数据格式的GPS服务器”

  1. 你好
    2013年10月10日10:26
    1

    要是有dll 介绍使用或者提供源码就好了

  2. qiedebeiai
    2014年3月20日11:33
    2

    想了解下你这边是否有配套的对应的bs平台或者cs的客户端等产品。仅限研究。如果有可以简单给我发个测试的网址之类的。进行查看。

  3. zzz
    2014年9月12日10:37
    3

    软件没有办法下载了

Leave a Comment