Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Article Title: Modeling and Verification of Mobile and Communication Behavior for IoT Devices

All Authors: Jingyu Liu, Xuansong Li, Zhifei Chen, Haibo Ye, Wei Song

First Institution: Nanjing University of Science and Technology, School of Computer Science and Engineering

Publication Time: 2024, 35(11): 4993-5015

Abstract
/
Abstract
ABSTRACT

The application range of IoT devices is continuously expanding. Model checking is an effective means to enhance the reliability and security of such devices, but commonly used model checking methods cannot effectively characterize the common cross-space mobility and communication behaviors of these devices. Therefore, we propose a modeling and verification method for the mobility and communication behavior of IoT devices to achieve verification of the spatiotemporal properties of such devices. By incorporating pull and push actions and global communication mechanisms into ambient calculus, we propose the Global Communication Mobile Environment Calculus (ACGC) and provide the model checking algorithm for ACGC against ambient logic; based on this, we introduce a mobile communication modeling language (MLMC) to describe the mobility and communication behavior of IoT devices and provide a method to convert MLMC descriptions into ACGC models; furthermore, we implement the model checking tool ACGCCk to verify whether the properties of IoT devices are satisfied and accelerate the detection speed through some optimizations; finally, we demonstrate the effectiveness of the proposed method through case studies and experimental analysis.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Scan to read the full text
Content
/
Content
/
Summary
/
Selection
CONTENT
CONTENT

1 Method Overview

In order to characterize the passive mobility of devices and users and their cross-space communication from the level of atomic operations, we introduce the push and pull actions and the global communication mechanism into AC, proposing the Global Communication Mobile Environment Calculus ACGC. ACGC is a relatively abstract process algebra that is difficult for users to use directly; therefore, this paper proposes MLMC to assist users in modeling the behavior of IoT devices. MLMC can clearly describe the mobility and communication behavior of IoT devices while supporting the conversion of its model to ACGC models.

First, construct an ambient corresponding to each entity based on the entity declaration. The name of the ambient is the same as that of the entity, and its internal ACGC process is initially set to an empty process. Then, define the action rules to add ACGC processes representing the behaviors of the entity into the ambient representing the entity. Each process of each entity must be converted into a corresponding ACGC process. The method to convert a process into an ACGC process is: according toTable 1 the conversion rules, convert each statement in the process into the corresponding capability or communication prefix in sequence and concatenate them, then add them before an empty process. If the action rules of an entity consist of multiple parallel processes, then the ACGC processes converted from these processes are also added to the ambient representing the entity in parallel. Finally, nest the ambients representing the entities according to the initial location definitions. For a given entity, move all ambients of the entities that are nested one layer deep in the initial location definitions into the ambient of that entity, and the ACGC processes representing its behavior in that entity’s ambient run in parallel with the ambient of the entities nested one layer deep. For those entities that are not nested by any other entities, their ambients are run in parallel and merged into one ACGC process.

Table 1 Conversion Rules from MLMC Statements to Capabilities or Communication Prefixes

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

This paper designed and implemented the model checking tool ACGCCk for ACGC against AL. Figure 1 shows the basic structure of ACGCCk. Input an ACGC process converted from MLMC and an AL formula, the process lexical analysis module and the formula lexical analysis module convert the strings representing processes and formulas into token sequences, then the process syntax analysis module and the formula syntax analysis module parse the token sequences of processes and formulas respectively and construct corresponding process trees and formula trees, finally the recursive detection module recursively calls the model checking algorithm on the process tree and formula tree and provides the detection results.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 1 Basic Structure of ACGCCk

The process tree and formula tree are tree data structures representing ACGC processes and AL formulas. This paper expands and improves upon the AC process tree structure representation method to design process trees suitable for representing ACGC processes and formula trees for AL formulas. Figure 2 shows the structure of the process tree and formula tree. In the process tree, all nodes except the root node RootNode represent a capability, communication primitive, or ambient in the process; in the formula tree, each node represents an operator in the formula. Total order: All honest nodes confirm (submit) the same block in the same order.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 2 Structure of Process Tree and Formula Tree

Figure 3 describes a scenario where a hotel uses robots to deliver meals via elevators. The hotel has 9 floors, labeled F1–F9, and is equipped with an elevator Elev that can travel between these 9 floors, which can only accommodate one robot at a time. F2–F9 each have 10 guest rooms, with the xth floor’s guest rooms labeled Rx01–Rx10. Two robots located on F1, Rob1 and Rob2, need to deliver their respective meals Food1 and Food2 to rooms R206 and R702.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 3 Robot Meal Delivery Scenario
Figure 4 describes the basic process of the robot using the elevator. The robot calls the elevator from the departure floor, the elevator arrives at the departure floor and opens the door, sends a “wait to enter elevator” command to the robot, after the robot successfully enters the elevator, it informs the elevator of the destination floor, when the elevator arrives at the destination floor and opens the door, it sends a “wait to exit elevator” command to the robot, after the robot successfully exits the elevator, it sends an “exited elevator” command to the elevator, and the elevator enters the idle state.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 4 Basic Process of Robot Using Elevator

In this scenario, we are mainly concerned with whether two properties can be satisfied.

Property 1: Food1 and Food2 are ultimately delivered to R206 and R702, respectively.

Property 2: Rob1 and Rob2 will not be present in Elev at the same time.
The entities that need to be modeled in this scenario include: floors F1–F9, guest rooms R201–R210, …, R901–R910, elevator Elev, robots Rob1 and Rob2, meals Food1 and Food2. Therefore, the entity declaration is as shown in Figure 5.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 5 Entity Declaration of Robot Meal Delivery Scenario

Based on the positional relationship shown in Figure 2, the initial location definition is obtained as shown in Figure 6.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 6 Initial Location Definition of Robot Meal Delivery Scenario
According to the basic process shown in Figure 4, the action rule definition is obtained as shown in Figure 7 (this paper assumes that there are two processes in the elevator Elev to handle the requests of Rob1 and Rob2, and there is no coordination mechanism between these two processes).

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 7 Action Rule Definition of Robot Meal Delivery Scenario

2 Experimental Analysis
This paper designed related simulation experiments to evaluate the performance of the optimized ACGCCk tool. We study the following two questions.

Question 1. How does the structure scale of the process affect the time overhead of detection.

Question 2. How does the reduction scale of the process affect the time overhead of detection.

For Question 1, this paper mainly measures the structural scale of the process by the number of ambients contained in it. In combination with actual situations, this paper constructs several processes composed of nested and parallel ambients, with the nesting depth of these processes being 3, and the number of ambients ranging from 100 to 1000, which are non-reducible; for each process, efforts are made to ensure that the internal nesting relationships are evenly distributed (i.e., the number of child ambients nested one layer deep in most parent ambients is similar).

For Question 2, we mainly measure the reduction scale by the size of the set of reducible processes of the process. In combination with actual situations, we construct several reducible processes, with the size of the set of reducible processes ranging from 126 to 1287.
Figure 8 shows the impact of the structure scale and reduction scale of the process on the detection time overhead. It can be seen that as the structural scale or reduction scale of the process increases, the detection time overhead also increases rapidly, but the ACGCCk tool has an acceptable detection time overhead for processes of general scale.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Figure 8 Performance Evaluation Experimental Results of ACGCCk

3 Conclusion and Outlook

To address the issue that some existing model checking methods cannot be effectively applied to the formal verification of IoT devices with mobility and communication behaviors, this paper integrates push and pull actions and global communication mechanisms based on AC, proposes the Global Communication Mobile Environment Calculus ACGC, and provides the model checking algorithm for ACGC against AL, proposes the mobile communication modeling language MLMC and provides the conversion method from MLMC models to ACGC models, implements the model checking tool ACGCCk, and demonstrates through experiments that ACGCCk has practical application value. Our next step is to further expand upon ACGC to better characterize the behaviors of IoT devices; at the same time, we will continue to study optimization strategies to further reduce time and space overhead, achieving performance optimization of ACGCCk.

Authors
/
Introduction
/
Profile
AUTHOR
AUTHOR

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Jingyu Liu, Master’s student, CCF student member, main research area is formal technology.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Xuansong Li, Ph.D., Associate Professor, CCF professional member, main research areas are software methodology, formal technology, ubiquitous computing technology, IoT security.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Zhifei Chen, Associate Professor, CCF professional member, main research areas are program analysis, software testing, software maintenance.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Haibo Ye, Associate Professor, CCF professional member, main research areas are ubiquitous computing, IoT.

Modeling and Verification of Mobile and Communication Behavior for IoT Devices

Wei Song, Professor, Doctoral supervisor, CCF distinguished member, main research areas are software engineering and methodology, formal methods, service computing.

Leave a Comment