交通部颁发的《机动车驾驶员计时培训系统平台技术规范》中的驾培TCP协议和jt808协议虽然很像,但有本质的不同,很多人以为就是部标808协议,这个认识是错误的,驾培协议是驾培协议,jt808协议是jt808协议,不能混淆,两者也并不兼容,从协议,终端设备到软件平台功能,都不兼容。当然你可以从jt808的代码上改造,但仍然需要花费很大精力。
两者的开发框架和技术当然都是一样的,都可以用netty来做为通信框架,参见:
基于部标JT/T 808协议及数据格式的GPS服务器
主要有以下的不同:
1)消息头
驾培协议消息头中终端手机号定位为16位,而jt808协议中的终端手机号为12位,首先消息头就要比jt808协议的长4位,从一开始就不兼容了。
2)终端注册鉴权流程
驾培协议终端注册时,增加了IMEI号,这样设计方便了平台通过识别IMEI号,判断设备来源,比如很多平台都是和终端绑定的,使用我的平台,必须是我家的终端才能接入。
注册应答也有很大的差别,由于驾培是要求驾培数据加密传输的,所以需要平台在注册成功的时候,将加密证书下发给终端,由终端加密后,进行鉴权。
终端在注册应答中,获取鉴权码和证书及口令,然后对鉴权码进行加密后,发起鉴权请求。平台获取到鉴权码,需要解密后,才能验证鉴权是否成功。由下图中