共享单车的业务识别特征及质量指标研究与实践
2018-08-17陈伟栋邓翠珠谭启祥
陈伟栋,邓翠珠,谭启祥
(中国移动通信集团广东有限公司,广州 510300)
共享单车作为一种城市短途出行解决方案短时间内在我国各大城市迅速普及。共享单车的成功除了市场需求、资金因素外,还与互联网快捷支付、物联网和大数据等技术的快速发展密切关联的。共享单车业务的实现整合了智能手机终端应用、单车物联网应用以及后台大数据应用服务。为了适应共享单车应用场景,共享单车业务采用基于移动通信网络的物联网实现对车辆的管理和通信。目前共享单车已成为应用最广泛的基于移动通信网络的物联网业务之一。为了更好地保障共享单车业务的质量,本文将对某共享单车的业务流程进行深入的分析,通过对关键业务特征进行识别并构建相应的质量指标,从而提出相应的数据采集方案来实现对业务的有效监控。
1 业务流程分析
目前市场上有多种共享单车业务,如摩拜单车、OFO单车等,不同的共享单车业务技术实现方案也存在一定的不同。共享单车主要的业务流程包括以下的步骤:登录共享单车手机APP;定位并寻找附近的共享单车;通过扫描二维码或输入单车编号返回单车开锁密码或直接开锁;使用单车,并定时上报位置信息,形成骑行路线;使用完毕后关锁,单车上报关锁信息;共享单车APP返回结算结果。可见,共享单车的业务流程涉及手机APP、单车物联网模块和后台服务器之间的信息交互和配合。不同的品牌的共享单车在业务实现上存在一定的差异,需结合实际业务使用流程进行区分,梳理出业务信息交互的大致流程。
以某共享单车业务为例,整个业务使用过程中手机APP端、后台服务器端与单车端的详细交互流程如图1所示。
(1)打开APP应用,手机终端通过移动互联网与后台服务器建立连接后进行用户登录,服务器通过用户验证返回用户信息和相关配置信息,手机APP应用完成主界面加载。
图1 某共享单车的数据交互流程
(2) 手机APP读取并上报服务器其GPS位置信息,服务器返回附件的单车信息,手机APP在地图上加载呈现。
(3)用户通过扫二维码或输入单车的编号信息,将单车信息及开锁请求上报服务器。服务器根据单车状态判断是否为故障车,如果正常则返回消息并启动开锁流程。
(4)用户使用共享单车骑行过程中,手机APP定期读取GPS位置信息并上报到服务器。服务器生成用户骑行线路信息,并保存大量用户路线数据为运营提供支撑。
(5)用户完成共享单车的使用进行关锁操作,此时单车端物联网模块将通过移动通信网络上报关锁信息到服务器。服务器将结算结果返回到手机APP进行呈现。
2 提取业务识别特征
梳理出某共享单车业务流程后,需要进一步分析获取各个流程信息交互的特征,建立相应的业务识别规则,从而为后续利用信令系统实现业务关键流程的质量指标奠定基础。为此,通过搭建测试网络(如图2所示),并在业务使用过程中实时捕捉各业务流程中手机APP端、共享单车端与服务器端的数据交互信息,匹配相关业务过程的时间点,提取相应的业务识别特征。结合共享单车的业务流程和测试所捕捉的数据进行分析,就可提取出不同品牌的共享单车的手机APP和单车端的DNS域名、服务器地址和端口等特征,建立各共享单车的业务识别规则。
目前,大部分共享单车手机APP都采用TCP协议承载上层业务信息。为了保证业务信息安全,共享单车手机APP一般都采用SSL加密协议(HTTPS)对应用层数据信息进行加密。由于业务质量指标的构建不涉及业务应用层的内容,因此无需对业务应用层的内容进行深入解码分析。表1是针对某共享单车所分析出的手机APP每个流程对应的请求域名,并通过DNS解析获取相应服务器的IP地址信息。
图2 共享单车的测试环境
表1 某共享单车手机APP各业务流程对应的域名特征
共享单车端的开锁有多种实现方案,除了OFO单车早期使用固定密码的机械锁之外,单车端普遍采用基于物联网技术实现单车的开关锁操作。这种实现方案具有更好的安全性、业务拓展能力和计费能力。以某共享单车业务为例,该业务可采用短信和蓝牙两种方案实现开锁操作。如果手机终端蓝牙模块处于开启状态,手机APP通过扫码解锁时可优先使用手机终端的蓝牙通信向单车端直接发送解锁指令进行开锁。若手机APP未启动蓝牙开锁,服务器则通过向单车端的移动通信物联网模块下发指令进行解锁。通过测试和抓分组分析发现,某共享单车业务是通过服务器下发短信到共享单车物联网通信模组进行开锁的。因此,利用Mc口或短信网关接口的信令数据采集,可对该共享单车业务的短信开锁流程所使用的短信端口进行识别。如某共享单车开锁短信的服务端口号主要为:106489909****、106489901****、106489919****、106489919****。
当然,共享单车服务器也可采用分组域下发数据到单车端物联网模组进行开锁操作,这种实现方案为了保障开锁的及时性需要单车端物联网模组与业务服务器保持长连接。不同品牌的共享单车采用的开锁方案并不完全相同,需要结合测试和数据采集分析提取相应的开锁操作的业务识别特征。
共享单车使用完毕,用户关锁操作完成后,单车端需将通过移动通信物联网向服务器上报关锁信息,以便进行费用结算。利用信令系统对单车端的数据进行分析,可发现共享单车发起DNS域名解析请求获得服务器IP地址后,采用TCP协议连接服务器发送关锁数据。以某共享单车业务为例,单车端发起的DNS域名请求为***.bikeapi.**bike.com,通过该域名解析结果建立与服务器的TCP连接。
3 业务分析及质量指标
基于上节所介绍的共享单车业务流程及业务识别特征后,运营商可利用信令分析系统进行业务信令数据采集和业务识别,并开展相应的业务分析和质量分析。根据共享单车的数据交互流程,通过采集LTE网络S1接口信令数据可对共享单车的手机APP端的业务进行识别和分析;通过采集GPRS网络Gb接口信令数据可对共享单车端的物联网业务数据进行识别和分析;通过采集GSM网络的Mc接口(含MSC下发短信信令)或短信中心接口信令可对服务器下发单车端的开锁短信进行识别和分析。共享单车的信令采集方案如图3所示。
信令系统根据共享单车相应流程的业务特征部署DPI规则,统计出共享单车业务量及其业务流程的质量指标。结合信令中的小区位置信息,可实现对共享单车的投放、分布和流动情况呈现和分析。如图4所示,以广州地区某共享单车上午5点和10点热力图对比分析为例,可发现上午5点车辆从较分散状态向城市中心或交通枢纽集中的情况。通过共享单车分时热力分布图可进一步优化共享单车运营企业的投放和资费策略,提升共享单车的运转率和经济效益。同时,针对共享单车的分布和流动情况,网络也可开展针对性的小区覆盖及容量优化,提升共享单车业务质量指标。对于共享单车密集的小区,网络部门也需要做好应急预案以应付共享单车业务异常时引起的信令风暴。
图3 共享单车的信令采集方案
图4 某共享单车的分布热力图
为了实施有效的业务质量监控,可构建出对其业务域名和服务器地址访问的质量指标。如针对某共享单车业务流程,可建立以下的质量指标和连接数、业务量等统计对其进行监控:
共享单车手机APP DNS解析成功率和业务连接成功率。
共享单车短信开锁成功率。
共享单车DNS解析成功率和TCP连接成功率。
共享单车手机APP结算DNS解析成功率和业务连接成功率。
利用信令分析系统实时统计出以上质量指标,实现对共享单车业务质量的监控。同时,系统也可通过统计各个指标在时间、小区、设备、服务器IP地址等维度的指标情况,从而可对低于正常阀值或出现明显劣化的质量指标开展针对性的优化,提升用户的业务体验。以广东某地市为例,通过对某共享单车开锁短信成功率指标分小区维度统计进行TOP N最差分析,发现共享单车业务质差小区(如表2所示),并进一步分析错误码占比来指导优化工作。另外也可分IP地址维度对共享单车端到服务器的TCP连接成功率(如图5所示)进行监测,分析共享单车业务侧服务器性能对业务质量的影响情况。
表2 某共享单车短信开锁成功率质差小区
4 总结
图5 某共享单车分IP地址TCP连接成功率
本文通过深入分析某共享单车业务的实现方案和业务流程,总结出业务识别特征,并结合移动通信网络结构提出相应的信令和数据采集方案,开展业务数据和质量指标统计,支撑对共享单车业务的质量监测和保障。基于信令构建的业务识别规则和质量指标并非静态不变的,随着业务技术方案的变化和域名服务器部署的变化,其业务识别规则、质量指标也需要及时进行动态的调整和完善。总的来说,文中提到的业务流程分析、DPI识别和指标构建方法也可应用到其它物联网新业务的质量监测和保障工作中。