车联网TBOX开发实战二,TSP连接
TSP定义Telematics Service Provider远程信息服务提供商简单理解就是车载云服务支持手机APP远程控制和数据采集等核心功能简单连接图示如下TSP简单连接图示涉及业务范围如下APN拨号多路APN 双向认证证书秘钥TEE存储MQTT连接 TOPIC订阅TBOX唯一码售后换件等等首先理解一下APN是什么APN是移动通讯网络中的概念从通讯角度看TBOX就是一台手机。APN定义Access Point Name接入点名称是移动网络中的关键参数用于标识设备连接互联网或特定服务的网关。它由运营商分配决定了设备如何接入网络以及可使用的服务类型如蜂窝数据、彩信等。简单理解APN就是一个配置参数用于配置如何连接通讯基站中国的主要运营商为移动电信和联通。关于多路APN多路APN就是有多个连接点可以同时配置多个APN参数为什么要有多路APN1. 区分不同业务不同的业务走不同的APN接入点比如车辆数据和车辆控制走APN1大数据采集走APN2其他默认走APN3等2. 安全划分不同的APN有不同的接入形式以及相匹配的安全策略比如车控的APN1需要关键认证甚至私有专线连接APN2简单认证APN3默认开放等3. 方便计费车厂一般新车会提供三年或者几年的免费流量超出之后需要用户自行付费就类似于用户手机流量充值一样。比如付费的流量只针对APN3APN1是免费的。这样既可以保证用户远程控制功能好用又可以让比如音视频等业务由用户自己买单互不影响。比如欠费了用户只是不能听歌和看视频但是远程车控还是可以正常使用APN配置好连接上基站也就是网络之后就开始了与TSP的连接过程类似于物联网的云服务连接一般TSP会采用类似于MQTT或者TCP私有协议等方式以MQTT为例TSP部署MQTT服务TBOX部署MQTT客户端进行双向连接。只不过车载业务需要具备较高的安全性除了常规的MQTT用户名与密码等安全措施之外在连接前还需进行身份认证。通常安全性较高的一种方式为TLS双向认证Mutual Authentication确保通信双方都能验证彼此的身份防止中间人攻击或伪装。双向认证的核心原理通信双方如客户端与服务器通过交换数字证书或其他凭证验证对方的真实性。典型的双向认证流程包括客户端验证服务器证书服务器验证客户端证书双方协商加密密钥流程和技术与常规的IOT或金融领域采用的双向认证技术无异。在此不过多介绍如果后续有时间可以补充详细交互流程及证书发布和管理方法。针对TBOX场景有一点介绍一下就是证书的管理过程。根证书一般内置但需要加密存储存储方式一般为TEE或者内外置的HSM芯片什么是TEE? 可以理解为你手机中存储指纹或者虹膜的一种安全技术后续有时间单独讲述客户端证书一般在车辆下线时通过诊断刷写什么是诊断车载业务的一个关键技术后续篇幅会详细讲述还有特殊的一点一车一证通常以VIN码作为唯一码生成好处是可以针对单一特殊车辆进行注销比如TBOX损坏要换件坏件证书直接注销。认证完之后进行MQTT连接MQTT连接与常规IOT技术无异只是业务上的差异身份认证和TOPIC划分身份认证通常采用多码合一方的方式比如VIN码SIM卡IMEI等分别代码车辆身份用户卡身份通讯模组身份等TOPIC划分通常为不同的业务划分不同的TOPIC方便管理的同时还能支持业务订阅和购买整体技术架构如下整体通讯技术架构总结一下业务多路APN及私有专线区分安全及计费业务双向认证及TEE存储确保高等级安全多TOPIC划分区分业务及方便功能订阅和购买一机一证方便管理和注销总结一下技术APN接入点TLS双向认证TEE/HSM存储诊断刷写证书秘钥还有涉及到的扩展技术私有DNS管理私有专线连接私有局域网构建公私网区分及连接和数据管理多APN拨号及重拨机制