铁路应用云平台的优势及安全防护措施探讨

2020-12-07 08:47
现代城市轨道交通 2020年11期
关键词:应用程序铁路错误

1 背景

铁路应用程序产品通常具有很长的使用寿命,而其所用半导体硬件的生命周期却相对较短。这种差异对于制造商和运营商而言是一个挑战:一方面,客户要求半导体产品制造商具有长期的后续交付能力;另一方面,摩尔定律预测半导体性能每2年提高1倍,这导致旧硬件和新硬件在功能和处理速度方面的差距会日益增大,使既有硬件存在过时的问题。此外,半导体价格还会持续下降。

随着铁路领域数字化的发展,对于软件的要求不断提高,使用新型硬件的需求也日益增长。因此,产生了以下问题:

(1)运营商和制造商如何解决上述矛盾,并从未来半导体组件的快速发展中获得更多收益;

(2)如何在不断变化的应用环境中长期安全地运行现有应用程序软件;

(3)如何使软件改写和开发的成本最小化和易管理。

而在云计算平台(以下简称“云平台”)中,之前为特定硬件编制的软件无需更改即可在商用现货(COTS)硬件上运行,这有助于解决上述问题,并且能够充分利用新硬件的价格优势,是创新性的解决方案。

2 云平台概述

近年来,云平台已在信息技术(IT)中逐步发展起来。德国联邦信息安全局(BSI)给云计算的定义是,根据需求通过网络提供、使用和计费的IT服务,此类服务的提供和使用仅通过规定的技术接口和协议实现。其服务范围涵盖整个IT领域,包括基础架构(如计算能力、存储空间)、平台和软件。云计算服务可提高分布式软件的运行效率、可用性和可扩展性。其基础是将功能强大的硬件完全虚拟化,以降低硬件资源的成本,通过应用程序的冗余运行实现其高可用性,并实现在不中断应用程序运行的前提下随时更换硬件的目标,使程序的维护和修改得以简化。目前,此类服务相关的主要研究方向是其可用性,即可靠性、可维护性及信息安全性之间的相互关系和作用。

图1展示了典型的云计算基础架构。其中,浅灰色部分是COTS硬件和软件,黑色部分是适用于特定应用程序的软件,红色部分是云平台基础设施,具体包括以下模块。

(1)前端。前端是用户控制云平台的管理界面,用户可通过该界面启动和停止应用程序,更改资源配置,如主内存、中央处理器(CPU)内核数等。

(2)云控制器。该功能实现了从平台到云的转变。云控制器的功能是控制和协调云计算,负责控制虚拟机(VM)在现有物理主机上的部署。此服务可以实现许多功能,例如,将1个应用程序(APP)冗余地部署到2 个VM上。

(3)数据存储器。数据存储器用于保存VM的镜像备份,以及提供网络存储服务。

(4)网络服务。网络服务可确保每个VM仅根据其配置进行通信,并在必要时获取自己的IP地址。为此,需要通过虚拟局域网(VLAN)或软件定义网络(SDN)创建虚拟网络,该网络仅允许在規定的VM之间进行消息路由。除此之外,动态主机配置协议(DHCP)和域名系统(DNS)也是示例性的网络服务。DHCP无须手动配置网络接口便可将客户端连接到现有网络中,如果相应客户端的操作系统支持,则可自动分配诸如IP地址、网络掩码、网关、域名等必要信息。由于IP地址可以在网络中动态更改,因此用于解析域名的DNS也是最重要的服务之一。

(5)表决器(voter)。表决器是一个与平台相关的服务,可通过网络服务进行配置。表决器的功能是验证所有消息的准确性及其执行情况是否正常,从这一点上看,它也是一种网络服务,可保障云平台的安全性。

(6)VM。VM通常由应用程序和运行该应用程序的操作系统组成。

(7)管理程序。管理程序是构建VM的关键,它将硬件划分为多个虚拟组件。为提高软件的执行速度,机器指令通常设置为本地执行;但与程序代码的本地执行不同,此处可使用仿真器,在软件中模拟真实CPU的指令集。这意味着,为特定硬件编制的软件无须更改便可在其他硬件上运行,这对于解决硬件过时的问题非常有利。

(8)主机操作系统(Host OS)。Host OS是主机上的操作系统,在图1中是COTS组件。

云平台服务分为公有云和私有云2类。其中,公有云服务一般由供应商提供,供公众或大型集团/团体(如整个工业部门)使用;而私有云中的云基础设施则仅供某个机构单独使用,可由该机构或第三方组织和管理,建立在自有或第三方计算中心基础上。由于铁路是重要的基础设施,必须确保第三方未经授权不能对其进行访问,因此铁路行业在这一点上达成了共识,即铁路应用程序应在私有云中运行。

3 铁路应用云平台的优势

铁路应用云平台的使用对运营商具有以下优势:

(1) 软件的运行与硬件(仿真器)的开发分离,可解决现有硬件过时的问题;

(2) COTS硬件平台的购置成本较低,可通过使用标准IT设备实现规模经济效益;

(3) 可将仿真器迁移到任意服务器基础设施上,因此云平台的可维护性显著提高,维护活动也集中在少数中央服务器基础设施上;

(4) 冗余服务器可以自动转移故障,从而使系统具有更高的可用性,如可以在自然灾害后快速恢复;而且当一个物理硬件发生故障时,另一个物理硬件可立刻接管相应功能。

4 铁路应用云平台的安全防护措施

4.1 设置冗余VM

为保障铁路应用程序安全地运行,可以在云平台中通过使用一个或多个(通常是相同的)冗余VM维持系统的容错能力,其具体功能如下。

(1)避免物理硬件发生故障,如硬盘、内存(RAM)、CPU,以及计算机的电源系统。常用解决方案是,通过云控制器将冗余VM设置在不同的物理硬件上,必要时,也可将其分配到多个计算中心(跨地域复制)中。通过对各个物理硬件进行冗余的不间断供电,解决电源引起的故障。

(2)避免在COTS硬件和软件中出现系统性错误,如CPU命令、操作系统、管理程序或仿真器错误。为能够在COTS软件(主机操作系统)中检测系统错误,可以在应用程序中设置具有所需安全完整性等级的监控措施,如通过接口监视COTS软件(即系统调用);为避免COTS硬件出现系统错误,可以通过多种方式重新设计COTS硬件,如使用Intel公司或AMD公司生产的不同处理器。

(3)利用VM在云平台中的异步性识别系统错误。由于各个VM并非同步执行,因此短期的影响(如电压波动)不会对应用程序、管理程序和操作系统处于同一状态的所有主机产生干扰。这导致各VM对系统错误的反应不同,系统错误也因此可以被识别。

4.2 系统错误检测

对危险系统错误的检测可以通过特定的监视程序(监视器)实现。该监视器在冗余VM中运行,而VM必须定期向监视器报告,如果监视器未收到报告,则说明系统出现错误。设置监示器时,必须确保其与被监视的应用程序不在同一物理硬件上。然而,云平台面临的挑战是存在一个异步网络,因此无法保证报告消息能够在规定的时间范围内到达,这使系统组件间的时间同步变得困难。此时,可利用其他方式解决这一问题,如消息ID所包含的逻辑时间或COTS CPU的时钟生成器,但这2种方式并不十分精确。绝大多数情况下,消息传输时间都较为稳定且足够短,因此有充足的时间用于处理超时;但是在极少数情况下,可能会出现误报,即系统无故障却检测到超时。

4.3 表决器的安全通信连接

一个程序要生效和执行,必须经过大多数VM的许可,这一点通过表决器实现。在云平台上,由于虚拟机是通过虚拟网络与表决器连接的,因此需要采取其他措施确保各组件之间的通信安全,具体如下。

(1)防篡改。通常使用检错码(如奇偶校验位、CRC32、MDS、SHA256)或纠错码(汉明码、里德-所罗门码、BCH码、卷积码)检测数据存储器或消息中数据的损坏。

(2)防插入、重新排序、重复和遗漏。通常通过增加消息计数器实现。

(3)防延迟。如果消息的发送时间过长,则可以为其设置时间戳,使其在一定时限内有效。对此的基本要求是系统时间同步功能正常。

(4)防人为操控。为防止人为攻击,通常使用加密密钥或一次性密码簿(OTP),这些技术可防篡改,微小的改动就会产生极易识别、令人难以置信的数据。對于中间人攻击(即攻击者拦截消息,并将其任意篡改,再转发出去),可以使用加密签名的方法解决。每个发件人拥有一个只有自己知道的私钥,可以用它签署自己发出的消息。而所有接收者都有来自发送者的对应公钥(预先使用Diffie-Hellman密钥交换算法等进行交换),以此可验证发送者是否正确。

5 结语与展望

铁路应用程序是保障铁路安全、顺畅运营的重要一环,传统的解决方案存在硬件资源利用率低、管理及维护成本高等问题,而云平台解决方案则为其发展提供了一个新的方向。对于云平台面临的安全方面的考验,可通过采取各种安全防护措施得以解决。相信在未来,铁路应用云平台必将得到完善和广泛应用。

参考文献

[1]Arthur Martens, Bj?rn Cassens, Lars Schnieder. L?sung von Obsoleszenzproblemen durch verl?ssliche Cloud-Plattformen[J]. Signal+Draht,112(6):38-44.

收稿日期 2020-08-25

责任编辑 苏靖棋

猜你喜欢
应用程序铁路错误
在错误中成长
删除Win10中自带的应用程序
谷歌禁止加密货币应用程序
2017年铁路暑运创新高
“怒”与“努”
“浮”字等
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序
可爱的错误等