5G行业物联网终端的软件可靠性研究及设计
2022-06-21姜元山张光伟王运付
刘 霞,姜元山,张光伟,王运付
(中讯邮电咨询设计院有限公司,北京 100048)
0 引 言
软件可靠性指在规定的条件下和规定的时间内,软件不引起系统故障的能力。软件可靠性不但与软件自身有关,也与系统输入和系统使用有关。5G行业物联网设备的软件可靠性需要结合其系统及硬件的特点,进行领域针对性分析。
1 5G行业物联网终端面临软件可靠性问题
移动物联网(基于蜂窝移动通信网络的物联网技术和应用)作为新型基础设施的重要组成部分,在5G时代,已经发展演化出很多基于5G空口接入能力的产品形态,如消费级物联网设备、行业物联网设备等。对于消费级产品,一般为单用户使用,对产品的运行可靠性等要求相对低。而行业物联网设备部署较多,分布分散,如果设备运行稳定性差,将导致上站运维频率升高,引入过高的运维成本,造成较差的客户使用体验。
本文重点分析5G行业终端运行可靠性方案,实现“业务尽可能恢复,设备尽可能运行”的目标,以期控制5G行业物联网终端运维成本,提升客户使用体验。
2 基于5G行业物联网终端关键系统架构元素的可靠性风险识别
5G行业物联网终端典型系统架构如图1所示,图中展示了该类系统典型关键软硬件架构要素,针对关键架构要素,进行基于硬件特殊性的软件可靠性风险分析,以把握产品可靠性要点,进行5G行业物联网终端针对性软件可靠性分析及设计。表1即针对架构关键要素的介绍及可靠性风险分析结果。
图1 5G行业物联网终端系统架构
表1 5G行业物联网终端关键架构要素介绍&可靠性风险分析
3 5G行业物联网终端关键系统架构要素的可靠性风险消减
本节重点针对表1分析识别的关键架构要素的可靠性风险进行风险消减设计。
3.1 “随机退避”消减“并发接入风暴”
在产品商用化过程中,可能出现区域大面积停电、断网等极端情况。特别是大面积停电场景,当同类设备有共用远程通信服务器时,可能出现区域内海量同类设备同时上电开机,向远端发起业务连接,在远程通信服务器侧出现短时间请求风暴的现象,如果服务器处理不当,将导致物联网终端侧服务请求异常,造成脱管。
为避免该类问题,建议使用“随机退避”机制。即系统上电开机,服务启动后,随机等待一定时间,建议在2 min内随机选取时间点位,以发起远程服务连接,缓解远程服务的业务并发压力。
3.2 “进程守护”消减“服务异常”
通过软件工程化方法可以提升研发质量,却无法修复软件缺陷,需要在软件运行期进行可靠性保障。
3.3 软件守护机制
行业物联网终端大部分采用嵌入式Linux系统,在Linux系统中,进程有几种典型状态。
由表2可知,一旦进程状态为“Z”,即僵尸状态,则表示服务异常。此时,内核及服务本身均无法从异常中自行恢复。
表2 Linux进程状态及服务影响分析
针对进程状态异常问题,为实现局部小范围恢复尝试,常规软件保护机制采用“守护进程”周期性(具体周期结合业务恢复的时间而定)检测系统关键进程(结合业务特点进行范围识别)的工作状态,一旦发现异常,则由守护进程控制该进程进行恢复处理。
3.3.1 看门狗守护机制
“守护进程”也是软件,即使通过工程化方法进行质量保障,但仍可能存在缺陷。为保证系统在极端场景下尝试恢复,一般采用“硬件看门狗”机制。由“守护进程”进行看门狗喂狗操作,当守护进程异常时,喂狗异常,硬件看门狗超时,最终全系统重启。通过系统重初始化,尽最大努力恢复业务。
3.3.2 进程优先级控制机制
软件喂狗需要消耗CPU资源,涉及CPU处理优先级。
当终端系统内部CPU过载,导致进程响应异常时,如果“守护进程”喂狗业务优先级高,则无法有效识别其他业务异常。因而,对特定业务进程需要考虑其处理优先级。
典型举例如下:
(1)软件喂狗进程:视系统资源冗余情况而定,如果资源冗余度低,则不建议配置过低优先级;如果冗余度高,过载可能出现异常,建议配置较低优先级。
(2)配置管理服务:不论远端或近端,均是用户的管理接口,任何场景下均需保证其进程优先级为高。
3.4 “主备系统”[13-14]消减“FLASH写入异常”
系统缺陷修复、特性扩展均需通过软件镜像更新实现,以使新版本在物联网终端侧生效。
对嵌入式终端而言,软件镜像一般保存在Nand或Nor FLASH。如果对当前运行的软件镜像存储分区进行写入,一旦中断,则可能导致终端运行异常。可靠的备选升级方案建议如下:
(1)升级小系统双备份+业务系统。升级小系统是仅在升级过程中运行的系统,对其功能进行大量剪裁,以限制FLASH资源消耗。
(2)业务系统双备份。在该方案下,被写入的分区即使在写入过程中断,终端依然可以启动,保证业务的延续性。
3.5 “反复重建”[15-17]消减“通信异常”
为保证通信链路、对端通信服务恢复正常,及时建立端到端通信,在通信异常时需考虑支持重建机制。
3.5.1 5G Modem通道重建机制
5G行业物联网终端的5G Modem软件部分一般由第三方供应商提供,运行于独立的5G硬件模块或CPU中,其工作状态等对路由软件而言相当于“黑盒”,路由软件需进行5G Modem的工作状态管理,如设备枚举、控制拨号、状态监控等,以保证产品系统的通信状态可控。
建议周期性监控5G Modem的工作状况,一旦出现异常,尝试进行5G Modem通道重建。当通道重建尝试有限次仍无法恢复时,考虑系统重启,重初始化全系统资源,尽力恢复系统运行。
3.5.2 业务端到端通信重建机制
具备联网通信能力是5G行业物联网终端的基本业务述求。当从终端侧访问另一侧服务时,路径中可能出现多级节点,中间节点、对端服务可能出现异常。
在路径状况不可预知的情况下,一旦通信链路发生异常,则需要进行反复测试,以尽力恢复通信链路。
4 结 语
本文阐述的5G行业物联网终端软件可靠性问题、典型可靠性设计,均来自行业物联网终端产品的业务实践。从业务经验的角度出发,识别行业物联网终端可靠性痛点,并结合商用实践提取有效的消减措施,对5G行业物联网终端有实用借鉴意义。