Industrial Control Systems (ICS) are often built from geographically distributed components and often use programmable logic controllers for localized processes. Since verification of such systems is challenging because of both time sensitivity of the system specifications and the inherent asynchrony in distributed components, developing runtime assurance that verifies not just the correctness of different components, but also generates aggregated statistics of the systems is of interest. In this paper, we first present a general technique for runtime monitoring of distributed applications whose behavior can be modeled as input/output {\em streams} with an internal computation module in the partially synchronous semantics, where an imperfect clock synchronization algorithm is assumed. Second, we propose a generalized stream-based decentralized runtime verification technique. We also rigorously evaluate our algorithm on extensive synthetic experiments and several ICS and aircraft SBS message datasets.
翻译:工业控制系统(ICS)通常从地理分布的部件中建立,并经常使用可编程逻辑控制器进行本地化过程。由于系统规格的时间敏感性和分布式部件固有的无同步性,对此类系统的核查具有挑战性,因此开发运行时间保证系统不仅能核实不同部件的正确性,而且还能生成系统的综合统计数据。在本文件中,我们首先提出对分布式应用程序进行运行时间监测的一般技术,这些应用程序的行为可以模拟为输入/输出 ~em流 }, 在部分同步的语义中有一个内部计算模块,其中假设了不完善的时钟同步算法。第二,我们提出了基于流的分布式运行时间普遍核实技术。我们还严格评估了我们关于广泛的合成实验的算法以及若干ICS和飞机的SSS和SSB信息数据集。