Simulation operation optimization method and device based on simulation service layer QoS strategy

By adopting QoS strategy based on the simulation service layer in the distributed simulation system, monitoring and optimizing the state of the simulation unit, the problems of irregular data interaction and excessive resource consumption in the simulation system are solved, and the robustness and efficiency of the system are improved.

CN119047220BActive Publication Date: 2024-12-31NAT UNIV OF DEFENSE TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411530905.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-30
Publication Date
2024-12-31
Estimated Expiration
2044-10-30

AI Technical Summary

Technical Problem

The existing distributed simulation system lacks normative constraints on the data interaction behavior and operation processing of simulation nodes, resulting in confusion of data transmission, excessive consumption of node resources and unstable operation, and cannot guarantee the robustness, responsiveness and consistency of the simulation system. and efficiency.

Method used

The QoS strategy based on the simulation service layer, including robustness, responsiveness, consistency and efficiency strategies, is adopted to monitor and optimize the simulation units through static or dynamic configuration to ensure that the simulation status complies with preset standards.

Benefits of technology

Effectively prevent unstable nodes from crashing, monitor network response and data consistency, improve the stability and efficiency of the simulation system, and ensure the robustness, responsiveness, consistency and sustainability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119047220B_ABST
    Figure CN119047220B_ABST
Patent Text Reader

Abstract

The present application relates to a simulation operation optimization method and device based on the QoS policy of the simulation service layer. The method includes: statically or dynamically configuring the QoS policy of each simulation unit in the distributed simulation system based on the simulation service layer; wherein the QoS policy includes a robustness policy, a responsiveness policy, a consistency policy, an efficiency policy, and a sustainability policy; after turning on the QoS switch, each simulation unit obtains the QoS policy issued by the corresponding configuration of the simulation service layer, monitors the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjusts and optimizes the simulation operation process of each simulation unit according to the monitoring situation. This method can be used to control and optimize the business status of each simulation unit and the entire simulation service in the distributed simulation system, and ensure the robustness, responsiveness, consistency, efficiency, and sustainability of the distributed simulation system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of distributed simulation technology, and in particular to a simulation operation optimization method and device based on a simulation service layer QoS strategy. Background Art

[0002] Nowadays, the scale of distributed simulation systems continues to expand, the number of nodes involved is getting larger and larger, and the data types transmitted by nodes are becoming more and more complex. There is often confusion in the transmission of simulation data, and there are phenomena of wrong transmission, random transmission and irregular transmission. At the same time, due to the lack of coordination mechanism between simulation nodes, data transmission conflicts between simulation nodes, excessive consumption of network resources by some nodes, and irregular development of simulation nodes are often caused. For distributed simulation systems, a method is needed to standardize and constrain the data interaction behavior of simulation nodes and the simulation operation processing mechanism to ensure the robustness, responsiveness, consistency, efficiency and sustainability of the simulation system.

[0003] However, the QoS (Quality of Service) strategies in existing distributed simulation systems usually only define corresponding strategies for network communication, such as: QoS strategy for direct digital synthesis, best effort (fast) and reliable (reliable) strategies for high-level architecture. These strategies cannot regulate and constrain simulation application services and cannot solve the above problems. Summary of the invention

[0004] Based on this, it is necessary to provide a simulation operation optimization method and device based on the simulation service layer QoS policy to address the above technical problems.

[0005] A simulation operation optimization method based on a simulation service layer QoS policy, the method is applied to a distributed simulation system, and comprises the following steps:

[0006] Based on the simulation service layer, statically or dynamically configure the QoS strategy of each simulation unit in the distributed simulation system; wherein, the QoS strategy includes robustness strategy, responsiveness strategy, consistency strategy, efficiency strategy and sustainability strategy;

[0007] After turning on the QoS switch, each simulation unit obtains the QoS policy issued by the corresponding configuration of the simulation service layer, monitors the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjusts and optimizes the simulation operation process of each simulation unit according to the monitoring situation.

[0008] In one embodiment, statically or dynamically configuring the QoS policy of each simulation unit in the distributed simulation system based on the simulation service layer includes:

[0009] Based on the public data model development tool provided by the simulation service layer, the QoS policy of each simulation unit is statically configured, and after the static configuration is completed, the QoS policy of each simulation unit is saved in the XML file format;

[0010] During the simulation operation, the QoS policy of each simulation unit is dynamically configured based on the state change of each simulation unit by calling the API interface of the simulation service layer.

[0011] In one embodiment, monitoring the simulation status of each simulation unit during the simulation operation based on the QoS policy includes:

[0012] Based on the robustness strategy, the stability of each simulation unit is monitored; wherein the robustness strategy includes the maximum crash number strategy, the heartbeat frequency strategy and the maximum heartbeat delay strategy;

[0013] Monitor the network response of each simulation unit based on the responsiveness strategy;

[0014] Based on the consistency strategy, the data consistency of each simulation unit is monitored; wherein the consistency strategy includes the minimum reflection number strategy of the object class, the maximum reflection number strategy of the object class, the minimum update number strategy of the object class, the maximum update number strategy of the object class, the maximum push sending number strategy of the interactive class, and the maximum push receiving number strategy of the interactive class;

[0015] Based on the efficiency strategy, the simulation operation efficiency of each simulation unit is monitored; wherein the efficiency strategy includes the committed simulation advancement time strategy, the committed reflection execution time strategy and the committed update execution time strategy;

[0016] The sustainable operation status of each simulation unit is monitored based on the sustainability strategy; wherein the sustainability strategy includes a maximum object instance number strategy and a maximum object sample number strategy.

[0017] In one embodiment, the stability of each simulation unit is monitored based on a robustness strategy, including:

[0018] The workflow of the maximum crash count strategy is as follows: when a simulation unit joins the simulation service layer, the simulation service layer queries whether the maximum crash count strategy is enabled for the simulation unit through the name of the added simulation unit. If it is enabled, the number of crashes of the simulation unit is detected through the simulation service layer. If the number of crashes has reached the preset maximum crash count of the simulation unit, the joining of the simulation unit is rejected; if the number of crashes has reached 90% of the preset maximum crash count of the simulation unit, a critical crash count level printout reminder is made through the log; if the number of crashes has reached 80% of the preset maximum crash count of the simulation unit, a warning crash count level printout reminder is made through the log to remind the user that the simulation unit is unstable and needs further rectification; when the simulation unit exits the simulation service layer abnormally, the offline function is triggered. At the offline function, it is determined whether the maximum crash count strategy switch is enabled for the simulation unit. If it is enabled, the number of crashes of the simulation unit is counted according to the name of the simulation unit; wherein, the maximum crash count of the simulation unit is the maximum number of abnormal exits of the simulation unit supported by the simulation service layer during the operation of the distributed simulation system;

[0019] The workflow of the heartbeat frequency strategy is as follows: after the simulation unit joins the simulation service layer, check whether the heartbeat switch of the simulation unit is turned on. If it is turned on, a heartbeat packet sending thread is created in the simulation unit to send heartbeat packets to the simulation service layer at regular intervals. After receiving the heartbeat packets sent from the simulation unit, the simulation service layer counts the number of heartbeat packets received and creates a timer. The detection task in the timer is set to be triggered once per minute. Each trigger will judge the number of heartbeat packets sent by all the added simulation units to determine whether it meets the preset standard heartbeat frequency. When it is not satisfied, the number of times the heartbeat frequency is not satisfied is accumulated. When the number of times the heartbeat frequency is not satisfied is accumulated to the preset maximum number of times the heartbeat frequency is not satisfied, a log of the number of times the heartbeat frequency is not satisfied is used for prompting; when the number of times the heartbeat frequency is not satisfied is accumulated to 90% of the preset maximum number of times the heartbeat frequency is not satisfied, a log of the number of times the heartbeat frequency is not satisfied is used for prompting; when the number of times the heartbeat frequency is not satisfied is accumulated to 80% of the preset maximum number of times the heartbeat frequency is not satisfied, a log of the number of times the heartbeat frequency is not satisfied is used for prompting; wherein, the heartbeat frequency is the number of heartbeats per unit time of the simulation unit;

[0020] The workflow of the maximum heartbeat delay strategy is as follows: after the simulation unit turns on the heartbeat switch, the standard average ping value under the current network conditions is calculated by automatically sending three ICMP request messages, and the standard average ping value is set as the acceptable maximum heartbeat delay value of the simulation unit. The simulation unit periodically sends ICMP request messages to the simulation service layer on the heartbeat thread to obtain the current heartbeat delay value, and compares the current heartbeat delay value with the acceptable maximum heartbeat delay value. If the current heartbeat delay value does not meet the acceptable maximum heartbeat delay value, the maximum heartbeat delay policy non-compliance times are accumulated. When the accumulated maximum heartbeat delay policy non-compliance times reaches the maximum value of the preset maximum heartbeat delay policy non-compliance times, a prompt is given in the log of the simulation unit.

[0021] In one embodiment, monitoring the network response of each simulation unit based on the responsiveness strategy includes:

[0022] Each time the simulation unit advances time, it is determined whether the simulation unit has turned on the responsiveness switch and the committed simulation advancement time strategy switch. If it is turned on, the physical time spent from the last time advancement of the simulation unit to the current time advancement is calculated to obtain the time advancement time consumption, and the moment of this time advancement is recorded as the previous moment of the next time advancement;

[0023] Compare the time advancement time with the promised simulation advancement time of the simulation unit. If the time advancement time is greater than the promised simulation advancement time, calculate the actual advancement delay time; if the time advancement time is less than the promised simulation advancement time, record the actual advancement delay time as 0;

[0024] After calculating the actual advancement delay time, the actual advancement delay time is compared with the preset acceptable delay time. If the actual advancement delay time does not meet the acceptable delay time, the number of unsatisfied advancement delay times is accumulated, and then the unsatisfied advancement delay times policy values ​​of each level set by the responsiveness strategy are compared with the current number of unsatisfied advancement delay times. If the number of unsatisfied advancement delay times reaches the warning level, a warning level unsatisfied advancement delay times log is used for prompting; if the number of unsatisfied advancement delay times reaches the critical level, a critical level unsatisfied advancement delay times log is used for prompting; if the number of unsatisfied advancement delay times reaches the over-limit level, a over-limit level unsatisfied advancement delay times log is used for prompting;

[0025] According to the current level of non-satisfactory advancement delay times log reminder, the status of the responsiveness strategy is set to warning status, critical status and over-limit status, and the set responsiveness strategy status is synchronized to the management and control end interface for display.

[0026] In one embodiment, monitoring the data consistency of each simulation unit based on the consistency strategy includes:

[0027] The working process of the minimum reflection number strategy of the object class is as follows: when the simulation unit subscribes to a certain object class and the simulation unit receives the object class data in the form of reflection, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If so, accumulate the reflection times of the object class, and after the simulation unit turns on the minimum reflection number strategy switch of the object class, determine whether the accumulated reflection times within a simulation step meet the preset minimum reflection times. If the minimum reflection times are not reached, reset the accumulated reflection times within a simulation step so as to perform the accumulation calculation of the reflection times within the next simulation step.

[0028] The workflow of the maximum reflection number strategy of the object class is as follows: when the simulation unit subscribes to a certain object class and the simulation unit receives the object class data in the form of reflection, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If so, accumulate the reflection times of the object class, and after the simulation unit turns on the maximum reflection number strategy switch of the object class, determine whether the accumulated reflection times within a simulation step meet the preset maximum reflection times. If it exceeds the maximum reflection times, accumulate the inconsistent times, and reset the accumulated reflection times within a simulation step so as to perform the accumulation calculation of the reflection times within the next simulation step.

[0029] The working process of the minimum update number strategy of the object class is as follows: when the simulation unit publishes a certain object class and the simulation unit updates the object class data in the simulation step, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If it is turned on, the update number of the object class is accumulated, and after the simulation unit turns on the minimum update number strategy switch of the object class, determine whether the accumulated update number in a simulation step meets the preset minimum update number. If the minimum update number is not reached, the inconsistent number is accumulated, and the accumulated update number in a simulation step is reset, so as to perform the cumulative calculation of the update number in the next simulation step;

[0030] The workflow of the maximum update number strategy of the object class is as follows: when the simulation unit publishes a certain object class and the simulation unit updates the object class data in the simulation step, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If so, accumulate the update times of the object class, and after the simulation unit turns on the maximum update number strategy switch of the object class, determine whether the accumulated update times within a simulation step meet the preset maximum update times. If it exceeds the maximum update times, accumulate the inconsistencies, and reset the accumulated update times within a simulation step so as to perform the cumulative calculation of the update times within the next simulation step.

[0031] The workflow of the maximum push sending times strategy for the interactive class is as follows: when the simulation unit announces a certain interactive class and is sending the interactive class, first determine whether the simulation unit has turned on the policy switch for the QoS interactive class. If so, accumulate the number of sending times for the interactive class, and after the simulation unit turns on the maximum push sending times strategy switch for the interactive class, determine whether the accumulated number of sending times within a simulation step has reached the preset maximum push sending times. If it exceeds the maximum push sending times, accumulate the inconsistent times, and reset the accumulated number of sending times within a simulation step so as to perform the cumulative calculation of the number of sending times within the next simulation step;

[0032] The working process of the maximum push reception number strategy of the interactive class is as follows: when the simulation unit has subscribed to a certain interactive class and is receiving the interactive class, first determine whether the simulation unit has turned on the policy switch of the QoS interactive class. If it is turned on, the reception number of the interactive class is accumulated, and after the simulation unit turns on the maximum push reception number strategy switch of the interactive class, determine whether the accumulated reception number within a simulation step has reached the preset maximum push reception number. If it exceeds the maximum push reception number, the inconsistent number is accumulated, and the accumulated reception number within a simulation step is reset, so as to perform the accumulation calculation of the reception number within the next simulation step;

[0033] After the number of inconsistencies is accumulated, the accumulated number of inconsistencies is compared with the set number of inconsistencies at each level. When the accumulated number of inconsistencies reaches the set warning level inconsistencies, a warning level log is output; when the accumulated number of inconsistencies reaches the set critical level inconsistencies, a critical level log is output; when the accumulated number of inconsistencies reaches the set over-limit level inconsistencies, an over-limit level log is output.

[0034] In one embodiment, monitoring the simulation operation efficiency of each simulation unit based on the efficiency strategy includes:

[0035] The working process of the committed simulation advancement time strategy is as follows: when the committed simulation advancement time strategy switch of the simulation unit is in the on state, the time advancement time is calculated at the end of each time advancement of the simulation unit, and the time advancement time is compared with the preset committed simulation advancement time. If the time advancement time exceeds the committed simulation advancement time, the number of times that the efficiency is not met is accumulated, and the simulation advancement efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not met;

[0036] The working process of the committed reflection execution time strategy is as follows: when the committed reflection execution time strategy switch of the simulation unit is in the on state, the execution time of the simulation unit reflecting the object class is timed, and the reflection timing duration is compared with the preset committed reflection execution time. If the reflection timing duration exceeds the committed reflection execution time, the number of times that the efficiency is not satisfied is accumulated, and the reflection execution efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not satisfied.

[0037] The workflow of the committed update execution time strategy is as follows: when the committed update execution time strategy switch of the simulation unit is in the on state, the execution time of the simulation unit updating the object class is timed, and the update timing duration is compared with the preset committed update execution time. If the update timing duration exceeds the committed update execution time, the number of times that the efficiency is not met is accumulated, and the update execution efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not met;

[0038] After the number of times the efficiency is not satisfied is accumulated, the accumulated number of times the efficiency is not satisfied is compared with the set number of times the efficiency is not satisfied at each level. When the accumulated number of times the efficiency is not satisfied reaches the set warning level number of times the efficiency is not satisfied, a warning level log is output; when the accumulated number of times the efficiency is not satisfied reaches the set critical level number of times the efficiency is not satisfied, a critical level log is output; when the accumulated number of times the efficiency is not satisfied reaches the set over-limit level number of times the efficiency is not satisfied, an over-limit level log is output.

[0039] In one embodiment, monitoring the sustainable operation status of each simulation unit based on the sustainability strategy includes:

[0040] The workflow of the maximum object instance number strategy is as follows: for a certain object class, set the maximum number of object instances that can be registered for the object class, and when registering instances of the object class, first determine whether the object class has the maximum object instance number strategy switch turned on. If it is turned on, add up the number of registered instances of the object class, and then compare the number of registered object instances of the object class with the preset maximum number of object instances. If the maximum number of object instances has been reached, print out the object instance overlimit level through the log; if it has reached 90% of the maximum number of object instances, print out the object instance critical level through the log; if it has reached 80% of the maximum number of object instances, print out the object instance warning level through the log;

[0041] The workflow of the maximum object sample number strategy is as follows: for a certain object class, set the maximum number of object samples that can be supported for registration for the object class, and when registering samples for the object class, first determine whether the maximum object sample number strategy switch is turned on for the object class. If it is turned on, then the number of registered samples of the object class within a simulation step is accumulated, and then the number of registered object samples of the object class within a simulation step is compared with the preset maximum object sample number. If the maximum object sample number has been reached, the object sample overlimit level is printed out through the log; if ninety percent of the maximum object sample number has been reached, the object sample critical level is printed out through the log; if eighty percent of the maximum object sample number has been reached, the object sample warning level is printed out through the log.

[0042] A simulation operation optimization device based on a simulation service layer QoS policy, the device is applied to a distributed simulation system, and the device comprises:

[0043] A policy configuration module, used to statically or dynamically configure the QoS policy of each simulation unit in the distributed simulation system based on the simulation service layer; wherein the QoS policy includes robustness policy, responsiveness policy, consistency policy, efficiency policy and sustainability policy;

[0044] The simulation optimization module is used for each simulation unit to obtain the QoS policy issued by the corresponding configuration of the simulation service layer after turning on the QoS switch, monitor the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjust and optimize the simulation operation process of each simulation unit according to the monitoring situation.

[0045] The above-mentioned simulation operation optimization method and device based on the simulation service layer QoS policy can realize the control and optimization of the business status of each simulation unit and the entire simulation service by statically or dynamically configuring the QoS policy of each simulation unit in the distributed simulation system. Among them, by configuring the robustness policy, it is possible to prevent the unstable simulation unit program from crashing and affecting the operation of the entire distributed simulation system, thereby improving the stability of the operation of the distributed simulation system. By configuring the responsiveness policy, the network responsiveness of each simulation unit in the distributed simulation system can be monitored, and other problems caused by slow network response can be discovered in time and timely reminded. By configuring the consistency policy, it is possible to effectively prevent the phenomenon of mistransmission, random transmission and irregular transmission of simulation data. By configuring the efficiency policy, the simulation advancement time, update execution time and reflection execution time in the simulation unit can be calculated. When it is found that it takes too much time, the corresponding business can be optimized to achieve the purpose of improving the operation efficiency, and it can prevent the execution time of a certain place from being too slow and thus affecting the advancement of the entire simulation. By configuring the persistence strategy, the number of registrable instances and samples of the object class can be limited. Too many registrations may lead to excessive consumption of machine resources. Excessive use of machine resources may lead to slow server response speed and unsuccessful connection establishment between the simulation unit and the simulation service. Therefore, the persistence configuration can ensure the sustainable operation of the simulation system. By configuring the QoS strategy of the simulation service layer, the robustness, responsiveness, consistency, efficiency and sustainability of the distributed simulation system can be guaranteed. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] Figure 1 A schematic diagram of a flow chart of a simulation operation optimization method based on a simulation service layer QoS policy in one embodiment;

[0047] Figure 2 A schematic diagram of the workflow of a QoS policy in one embodiment;

[0048] Figure 3 A schematic diagram of the composition of a QoS policy in an embodiment. DETAILED DESCRIPTION

[0049] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0050] In one embodiment, Figure 1 As shown, a simulation operation optimization method based on the simulation service layer QoS policy is provided, which is applied to a distributed simulation system and includes the following steps:

[0051] Step S1, statically or dynamically configuring the QoS strategy of each simulation unit in the distributed simulation system based on the simulation service layer; wherein the QoS strategy includes robustness strategy, responsiveness strategy, consistency strategy, efficiency strategy and sustainability strategy.

[0052] The specific implementation process of step S1 includes:

[0053] Static configuration: Based on the public data model development tool provided by the simulation service layer, the QoS policy of each simulation unit is statically configured, and after the static configuration is completed, the QoS policy of each simulation unit is saved in the XML file format.

[0054] Dynamic configuration: During the simulation process, the QoS policy of each simulation unit is dynamically configured based on the state change of each simulation unit by calling the API (application programming) interface of the simulation service layer. Dynamic configuration can dynamically change the QoS policy of each simulation unit as the distributed simulation system runs and the state of the simulation unit changes, thereby enhancing the flexibility of QoS policy management.

[0055] Step S2, after turning on the QoS switch, each simulation unit obtains the QoS policy issued by the corresponding configuration of the simulation service layer, monitors the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjusts and optimizes the simulation operation process of each simulation unit according to the monitoring situation.

[0056] The workflow of QoS policy is as follows: Figure 2 As shown in the figure, the composition of QoS policy is as follows Figure 3 As shown, monitoring the simulation status of each simulation unit during simulation operation based on the QoS policy includes the following steps:

[0057] 1. Monitor the stability of each simulation unit based on the robustness strategy; the robustness strategy includes the maximum crash number strategy, the heartbeat frequency strategy and the maximum heartbeat delay strategy. By configuring the robustness strategy of the simulation unit, it is possible to prevent the unstable simulation unit program from crashing and affecting the operation of the entire simulation system, thereby improving the stability of the distributed simulation system.

[0058] (1) The workflow of the maximum crash count strategy is as follows: when a simulation unit joins the simulation service layer, the simulation service layer queries the name of the added simulation unit to see whether the maximum crash count strategy is enabled for the simulation unit. If it is enabled, the simulation service layer detects the number of crashes of the simulation unit. If the number of crashes has reached the preset maximum crash count of the simulation unit, the simulation unit is rejected. If the number of crashes has reached 90% of the preset maximum crash count of the simulation unit, a critical crash count level reminder is printed out through the log. If the number of crashes has reached 80% of the preset maximum crash count of the simulation unit, a warning crash count level reminder is printed out through the log to remind the user that the simulation unit is unstable and needs further rectification.

[0059] When the simulation unit exits the simulation service layer abnormally, the offline function is triggered. At the offline function, it is determined whether the maximum crash count policy switch is turned on for the simulation unit. If it is turned on, the crash count of the simulation unit is counted according to the name of the simulation unit.

[0060] Among them, the maximum number of crashes of the simulation unit is the maximum number of abnormal exits of the simulation unit supported by the simulation service layer during the operation of the distributed simulation system. Abnormal exit means that the simulation unit does not exit the simulation through the normal exit path and call the stop simulation interface, but exits the simulation directly by closing the program, crashing the program, etc.

[0061] It can be understood that the maximum crash count strategy can greatly improve the stability of the distributed simulation system. When a simulation unit is not stable enough and an abnormal problem occurs, causing the program to crash, it is likely to affect the operation of the entire simulation system. This application limits the simulation unit by setting the maximum crash count of the simulation unit. If the simulation unit crashes too many times, this simulation unit will no longer be allowed to join the simulation service during this simulation process.

[0062] (2) The workflow of the heartbeat frequency strategy is as follows: after the simulation unit joins the simulation service layer, it queries whether the heartbeat switch of the simulation unit is turned on. If it is turned on, a heartbeat packet sending thread is created in the simulation unit to periodically send heartbeat packets to the simulation service layer. After receiving the heartbeat packets sent from the simulation unit, the simulation service layer counts the number of heartbeat packets received and creates a timer. The detection task in the timer is set to trigger once per minute. Each trigger will judge the number of heartbeat packets sent by all the added simulation units to determine whether The preset standard heartbeat frequency is met. When it is not met, the number of times the heartbeat frequency does not meet is accumulated. When the number of times the heartbeat frequency does not meet is accumulated to the preset maximum number of times the heartbeat frequency does not meet, a log of heartbeat frequency not meeting the limit is used for prompting; when the number of times the heartbeat frequency does not meet is accumulated to ninety percent of the preset maximum number of times the heartbeat frequency does not meet, a log of heartbeat frequency not meeting the critical number is used for prompting; when the number of times the heartbeat frequency does not meet is accumulated to eighty percent of the preset maximum number of times the heartbeat frequency does not meet, a log of heartbeat frequency not meeting the warning number is used for prompting.

[0063] Among them, the heartbeat frequency is the number of heartbeats per unit time of the simulation unit. This application defaults to one minute as the unit time. In the default setting of the simulation unit, the heartbeat interval is set to once per second. Therefore, in theory, the simulation service layer will receive 60 heartbeat packets sent by a simulation unit in one minute. Considering the delay problem caused by network transmission, the actual requirement is to receive 55 heartbeats per minute to meet the standard, that is, divide the unit time by the heartbeat interval time and then subtract 5 to get the standard heartbeat frequency.

[0064] (3) The workflow of the maximum heartbeat delay strategy is as follows: The maximum heartbeat delay strategy is used to calculate the network delay of the simulation unit for the simulation service layer. After the simulation unit turns on the heartbeat switch, it automatically sends three ICMP (Internet Control Message Protocol) request messages to calculate the standard average ping value under the current network conditions, and sets the standard average ping value as the acceptable maximum heartbeat delay value of the simulation unit. The simulation unit periodically sends ICMP request messages to the simulation service layer on the heartbeat thread to obtain the current heartbeat delay value, and compares the current heartbeat delay value with the acceptable maximum heartbeat delay value. If the current heartbeat delay value does not meet the acceptable maximum heartbeat delay value, the maximum heartbeat delay strategy non-compliance times are accumulated. When the accumulated maximum heartbeat delay strategy non-compliance times reaches the maximum value of the preset maximum heartbeat delay strategy non-compliance times, a prompt is given in the simulation unit log. Specifically, the maximum heartbeat delay strategy non-compliance times are configured in the jcd file, which refers to the public data model file generated by the JModel software.

[0065] Among them, the ping value refers to the time from the computer sending data to the network server to receiving the feedback data from the server, which is generally calculated in milliseconds.

[0066] 2. Monitor the network response of each simulation unit based on the responsiveness strategy. Among them, the responsiveness strategy is to detect whether the time delay of each simulation unit in the simulation service layer meets the standard. To set the responsiveness strategy, you need to set the standard value of the time advancement delay and the number of warning reminders corresponding to each level. It should be noted that the activation of the responsiveness strategy depends on the committed simulation advancement time strategy in the consistency strategy. Only when the committed simulation advancement time strategy in the consistency strategy is configured at the same time, the responsiveness strategy can work normally, because the time advancement delay is equal to the current simulation advancement time minus the committed simulation advancement time. The time here refers to physical time, not simulation time or logical time. Physical time refers to the natural time in the real world, and logical time refers to the physical time in the simulation world that is similar to the objective world.

[0067] Specifically, the workflow of the responsive strategy is:

[0068] Each time the simulation unit advances time, determine whether the simulation unit has turned on the responsiveness switch and the committed simulation advancement time strategy switch. If turned on, calculate the physical time spent from the last time advancement of the simulation unit to the current time advancement, obtain the time advancement time consumption, and record the moment of this time advancement as the previous moment of the next time advancement.

[0069] Compare the time advancement time with the promised simulation advancement time of the simulation unit. If the time advancement time is greater than the promised simulation advancement time, calculate the actual advancement delay time; if the time advancement time is less than the promised simulation advancement time, record the actual advancement delay time as 0.

[0070] After calculating the actual advancement delay time, the actual advancement delay time is compared with the preset acceptable delay time. If the actual advancement delay time does not meet the acceptable delay time, the number of unsatisfied advancement delay times is accumulated, and then the unsatisfied advancement delay times policy values ​​of each level set by the responsiveness strategy are compared with the current number of unsatisfied advancement delay times. If the number of unsatisfied advancement delay times reaches the warning level, a warning level unsatisfied advancement delay times log is used for prompting; if the number of unsatisfied advancement delay times reaches the critical level, a critical level unsatisfied advancement delay times log is used for prompting; if the number of unsatisfied advancement delay times reaches the over-limit level, a over-limit level unsatisfied advancement delay times log is used for prompting.

[0071] According to the current level of non-satisfactory advancement delay times log reminder, the responsiveness strategy status is set to warning status, critical status, and over-limit status, and the set responsiveness strategy status is synchronized to the management and control end interface for display. This makes it easier to find the status changes of the current simulation unit more quickly.

[0072] Among them, the responsiveness strategy has three levels of unsatisfied advancement delay times strategy values, including warning level unsatisfied advancement delay times, critical level unsatisfied advancement delay times, and over-limit level unsatisfied advancement delay times. The times of each level can be statically configured in the public data model development tool provided by the simulation service layer; they can also be dynamically configured by calling the API interface of the simulation service layer during the simulation operation.

[0073] It can be understood that by configuring the responsiveness strategy of the simulation unit, the network responsiveness of each simulation unit in the distributed simulation system can be monitored, and other problems caused by slow network response can be discovered in time. In some scenarios, different simulation units may be interconnected in different locations. Due to the long geographical distance, the network delay increases, and the time taken to advance the time will become longer, which will affect the operation of the entire distributed simulation system. The responsiveness strategy can effectively discover this problem and provide timely reminders.

[0074] 3. Monitor the data consistency of each simulation unit based on the consistency strategy; wherein the consistency strategy includes the minimum reflection number strategy of the object class, the maximum reflection number strategy of the object class, the minimum update number strategy of the object class, the maximum update number strategy of the object class, the maximum push sending number strategy of the interaction class and the maximum push receiving number strategy of the interaction class.

[0075] (1) The minimum reflection number strategy of the object class is to judge whether the reflection number of a certain object class within a simulation step meets the standard, that is, the reflection number within a simulation step cannot be less than the minimum reflection number set for the object class. The specific workflow of this strategy is: when the simulation unit subscribes to a certain object class and the simulation unit receives the object class data in the form of reflection, first determine whether the simulation unit has turned on the QoS object class policy switch. If it is turned on, the reflection number of the object class is accumulated, and after the simulation unit turns on the minimum reflection number policy switch of the object class, it is determined whether the accumulated reflection number within a simulation step meets the preset minimum reflection number. If the minimum reflection number is not reached, the inconsistent number is accumulated, and the accumulated reflection number within a simulation step is reset so as to perform the accumulation calculation of the reflection number within the next simulation step. Among them, one simulation step is one time advancement.

[0076] It should be noted that the cumulative calculation of the number of reflections of the object class and the time advancement for judging whether the minimum number of reflections is met are in different threads, so atomic variables are needed to ensure the security of the data for storing the number of reflections of the object class.

[0077] (2) The maximum reflection number strategy of the object class is to judge whether the reflection number of a certain object class within a simulation step meets the standard, that is, the reflection number within a simulation step cannot be more than the maximum reflection number set for the object class. The specific workflow is: when the simulation unit subscribes to a certain object class and the simulation unit receives the object class data in the form of reflection, first determine whether the simulation unit has turned on the QoS object class policy switch. If it is turned on, the reflection number of the object class is accumulated, and after the simulation unit turns on the maximum reflection number policy switch of the object class, determine whether the accumulated reflection number within a simulation step meets the preset maximum reflection number. If it exceeds the maximum reflection number, the inconsistent number is accumulated, and the accumulated reflection number within a simulation step is reset, so as to perform the accumulation calculation of the reflection number within the next simulation step.

[0078] It should be noted that the cumulative calculation of the number of reflections of the object class and the time advancement for judging whether the maximum number of reflections is met are in different threads, so atomic variables are needed to ensure the security of the data for storing the number of reflections of the object class.

[0079] (3) The minimum update number strategy of the object class is to judge whether the update number of a certain object class in a simulation step meets the standard, that is, the update number in a simulation step cannot be less than the minimum update number set for the object class. The specific workflow is: when the simulation unit publishes a certain object class and the simulation unit updates the object class data in the simulation step, first determine whether the simulation unit has turned on the QoS object class policy switch. If it is turned on, the update number of the object class is accumulated, and after the simulation unit turns on the minimum update number policy switch of the object class, determine whether the accumulated update number in a simulation step meets the preset minimum update number. If it does not meet the minimum update number, the inconsistency number is accumulated, and the accumulated update number in a simulation step is reset so that the update number accumulation calculation in the next simulation step can be performed.

[0080] It should be noted that the cumulative calculation of the number of updates of the object class and the time advancement for judging whether the minimum number of updates is met are in different threads, so atomic variables are needed to ensure the security of the data for the stored number of updates of the object class.

[0081] (4) The maximum update number strategy of the object class is to judge whether the update number of a certain object class in a simulation step meets the standard, that is, the update number in a simulation step cannot exceed the maximum update number set for the object class. The specific workflow is as follows: when the simulation unit publishes a certain object class and the simulation unit updates the object class data in the simulation step, first determine whether the simulation unit has turned on the QoS object class policy switch. If it is turned on, the update number of the object class is accumulated, and after the simulation unit turns on the maximum update number policy switch of the object class, determine whether the accumulated update number in a simulation step meets the preset maximum update number. If it exceeds the maximum update number, the inconsistency number is accumulated, and the accumulated update number in a simulation step is reset so that the cumulative update number calculation in the next simulation step can be performed.

[0082] It should be noted that the cumulative calculation of the number of updates of the object class and the time advancement for judging whether the maximum number of updates is met are in different threads, so atomic variables are needed to ensure the security of the data for the stored number of updates of the object class.

[0083] (5) The maximum push sending number strategy of the interaction class is to judge whether the sending number of a certain interaction class in a simulation step exceeds this maximum push sending number. The specific workflow is: when the simulation unit announces a certain interaction class and is sending the interaction class, first determine whether the simulation unit has turned on the QoS interaction class policy switch. If it is turned on, the sending number of the interaction class is accumulated, and after the simulation unit turns on the maximum push sending number strategy switch of the interaction class, determine whether the accumulated sending number in a simulation step has reached the preset maximum push sending number. If it exceeds the maximum push sending number, the inconsistent number is accumulated, and the accumulated sending number in a simulation step is reset, so as to perform the cumulative calculation of the sending number in the next simulation step.

[0084] It should be noted that the cumulative calculation of the number of times the interactive class is sent and the time advancement for judging whether the maximum number of times the sending is advanced is in different threads. The number of times the interactive class is sent also needs to use atomic variables to ensure the security of the data.

[0085] (6) The maximum push reception number strategy of the interaction class is to judge whether the reception number of a certain interaction class in a simulation step exceeds this maximum push reception number. The specific workflow is: when the simulation unit subscribes to a certain interaction class and is receiving the interaction class, first determine whether the simulation unit has turned on the QoS interaction class policy switch. If it is turned on, the reception number of the interaction class is accumulated, and after the simulation unit turns on the maximum push reception number strategy switch of the interaction class, determine whether the accumulated reception number in a simulation step has reached the preset maximum push reception number. If it exceeds the maximum push reception number, the inconsistent number is accumulated, and the accumulated reception number in a simulation step is reset so that the accumulation calculation of the reception number in the next simulation step can be performed.

[0086] It should be noted that the cumulative calculation of the number of receptions of the interactive class and the time advancement for judging whether the maximum number of receptions has been reached are in different threads. The number of receptions of the interactive class also needs to use atomic variables to ensure the security of the data.

[0087] After the number of inconsistencies is accumulated, the accumulated number of inconsistencies is compared with the set number of inconsistencies at each level. When the accumulated number of inconsistencies reaches the set warning level inconsistencies, a warning level log is output; when the accumulated number of inconsistencies reaches the set critical level inconsistencies, a critical level log is output; when the accumulated number of inconsistencies reaches the set over-limit level inconsistencies, an over-limit level log is output.

[0088] It can be understood that configuring consistency strategies can effectively prevent simulation data from being mis-transmitted, randomly transmitted, or transmitted in an irregular manner. Among them, the minimum update number strategy and the maximum update number strategy of the object class can effectively limit the number of updates of the simulation unit within a simulation step, preventing the simulation unit program from performing more than the expected number of updates in a simulation step, which will prolong the time taken to advance the entire distributed simulation system and affect the efficiency of the simulation operation, or performing too few updates in a simulation step, which does not meet the number of updates required by the current business needs, thereby causing data inconsistency. The minimum reflection number strategy and the maximum reflection number strategy of the object class can be based on the update number of the object class in this simulation step, and the number of reflections in this simulation step can be agreed. When the number of reflections is less than the update number in this simulation step, there must be a reflection that may be triggered in the next simulation step, rather than in this simulation step; when the number of reflections is greater than the update number in this simulation step, there must be a reflection that should have been triggered in the previous simulation step, rather than in this simulation step; according to the provisions of QoS consistency, the update number of the publishing unit in a simulation step and the reflection number of the ordering unit in a simulation step should be equal to ensure data consistency. The maximum push sending number strategy of the interactive class is to set a maximum limit on the number of sending of the interactive class in a simulation step. The interactive class belongs to the non-continuation message. The interactive class can choose not to send in a simulation step, so we only limit the maximum number of times the interactive class sends, which can prevent the wrong sending caused by sending too many interactive classes in a simulation step. Similarly, the maximum advancement reception number strategy of the interactive class is to set a maximum limit on the reception number of the interactive class within a simulation step, which can prevent erroneous reception caused by receiving too many interactive classes in one simulation step.

[0089] 4. Monitor the simulation operation efficiency of each simulation unit based on the efficiency strategy; among them, the efficiency strategy includes the committed simulation advancement time strategy, the committed reflection execution time strategy and the committed update execution time strategy. The purpose of the efficiency strategy is to ensure that the simulation unit and the simulation service can run efficiently. Simulation advancement, reflection execution and update execution are things that happen all the time during the operation of the distributed simulation system, which are closely related to the efficiency of the entire simulation operation. Constraining the execution time can further improve the efficiency of the operation.

[0090] (1) The working process of the committed simulation advancement time strategy is as follows: when the committed simulation advancement time strategy switch of the simulation unit is turned on, the time advancement time is calculated at the end of each time advancement of the simulation unit, and the time advancement time is compared with the preset committed simulation advancement time. If the time advancement time exceeds the committed simulation advancement time, the number of times that the efficiency is not met is accumulated, and the simulation advancement efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not met. The commitment of the simulation advancement time can well constrain the efficiency of the simulation unit. In a distributed simulation system, the speed of each simulation advancement affects the operation of the entire distributed simulation system.

[0091] Among them, the simulation advancement time is the time consumed for each time advancement, and this application calculates the physical time.

[0092] (2) The working process of the committed reflection execution time strategy is as follows: when the committed reflection execution time strategy switch of the simulation unit is in the on state, the execution time of the simulation unit reflecting the object class is timed, and the reflection timing duration is compared with the pre-set committed reflection execution time. If the reflection timing duration exceeds the committed reflection execution time, the number of times the efficiency is not met is accumulated, and the reflection execution efficiency of the simulation unit is constrained based on the accumulated number of times the efficiency is not met.

[0093] Among them, the reflection execution time is when a simulation unit subscribes to an object class, and another simulation unit that has the right to publish the object class updates the object class. At this time, the reflection function of the first simulation unit will be triggered. Because the reflection function is a callback function, the user will rewrite the reflection function and perform some business operations in the reflection function. At this time, it is very necessary to control the execution time of the reflection execution function. The business execution of reflection often processes message business. The faster the reflection execution, the faster the consumption of messages. Therefore, constraining the reflection execution time can speed up the simulation unit's ability to process simulation messages.

[0094] (3) The working process of the committed update execution time strategy is as follows: when the committed update execution time strategy switch of the simulation unit is in the on state, the execution time of the simulation unit updating the object class is timed, and the update timing duration is compared with the pre-set committed update execution time. If the update timing duration exceeds the committed update execution time, the number of times the efficiency is not met is accumulated, and the update execution efficiency of the simulation unit is constrained based on the accumulated number of times the efficiency is not met.

[0095] Among them, the update execution time is when a simulation unit publishes an object class. The simulation unit program can update this object class. The update execution time can be timed, so that you can understand how long it takes to update the object class. The update execution time is related to the sending of object class data, including the serialization and sending of data. Constraining the update execution time can prevent the sending of too much data, the serialization takes a long time, or the network condition is not good, and the network delay is too large when sending.

[0096] After the number of times the efficiency is not satisfied is accumulated, the accumulated number of times the efficiency is not satisfied is compared with the set number of times the efficiency is not satisfied at each level. When the accumulated number of times the efficiency is not satisfied reaches the set warning level number of times the efficiency is not satisfied, a warning level log is output; when the accumulated number of times the efficiency is not satisfied reaches the set critical level number of times the efficiency is not satisfied, a critical level log is output; when the accumulated number of times the efficiency is not satisfied reaches the set over-limit level number of times the efficiency is not satisfied, an over-limit level log is output.

[0097] It can be understood that by configuring the efficiency strategy, the simulation advancement time, update execution time and reflection execution time in the simulation unit can be calculated. When it is found that too much time is consumed, the corresponding business can be optimized to achieve the purpose of improving operating efficiency; it can also prevent the execution time in a certain place from being too slow and thus affecting the advancement of the entire simulation.

[0098] 5. Monitor the sustainable operation status of each simulation unit based on the sustainability strategy; wherein the sustainability strategy includes the maximum object instance number strategy and the maximum object sample number strategy.

[0099] (1) The workflow of the maximum object instance number strategy is as follows: for a certain object class, set the maximum number of object instances that can be registered for the object class. When registering instances of the object class, first determine whether the maximum object instance number strategy switch is turned on for the object class. If it is turned on, then add up the number of registered instances of the object class. Then, compare the number of registered object instances of the object class with the preset maximum number of object instances. If the maximum number of object instances has been reached, then print out the object instance overlimit level through the log; if the maximum number of object instances has been reached, then print out the object instance critical level through the log; if the maximum number of object instances has been reached, then print out the object instance warning level through the log.

[0100] (2) The workflow of the maximum object sample number strategy is as follows: for a certain object class, set the maximum number of object samples that can be registered for the object class. When registering samples for the object class, first determine whether the maximum object sample number strategy switch is turned on for the object class. If it is turned on, then accumulate the number of registered samples of the object class within a simulation step. Then, compare the number of registered object samples of the object class within a simulation step with the preset maximum object sample number. If the maximum object sample number has been reached, then print out the object sample over-limit level through the log; if it has reached 90% of the maximum object sample number, then print out the object sample critical level through the log; if it has reached 80% of the maximum object sample number, then print out the object sample warning level through the log.

[0101] It can be understood that by configuring a persistence policy, the number of registrable instances and samples of an object class can be limited. Too many registered instances or samples may lead to excessive consumption of machine resources. Excessive use of machine resources may lead to slow server response speed, unsuccessful connection establishment between the simulation unit and the simulation service, and other problems. Therefore, persistence configuration can ensure the sustainable operation of the simulation system.

[0102] It should be understood that although Figure 1 and Figure 2 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 1 and Figure 2 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.

[0103] In one embodiment, a simulation operation optimization device based on a simulation service layer QoS policy is provided, comprising:

[0104] A policy configuration module, used to statically or dynamically configure the QoS policy of each simulation unit in the distributed simulation system based on the simulation service layer; wherein the QoS policy includes robustness policy, responsiveness policy, consistency policy, efficiency policy and sustainability policy;

[0105] The simulation optimization module is used for each simulation unit to obtain the QoS policy issued by the corresponding configuration of the simulation service layer after turning on the QoS switch, monitor the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjust and optimize the simulation operation process of each simulation unit according to the monitoring situation.

[0106] For the specific definition of the simulation operation optimization device based on the simulation service layer QoS policy, please refer to the definition of the simulation operation optimization method based on the simulation service layer QoS policy in the above text, which will not be repeated here. Each module in the above-mentioned simulation operation optimization device based on the simulation service layer QoS policy can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0107] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0108] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A simulation operation optimization method based on simulation service layer QoS strategy, characterized in that: Applied to a distributed simulation system, the method comprises: Static or dynamic configuration of the QoS strategy of each simulation unit in the distributed simulation system based on the simulation service layer; wherein the QoS strategy includes robustness strategy, responsiveness strategy, consistency strategy, efficiency strategy and sustainability strategy; After turning on the QoS switch, each simulation unit obtains the QoS policy issued by the corresponding configuration of the simulation service layer, monitors the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjusts and optimizes the simulation operation process of each simulation unit according to the monitoring situation; The simulation state of each simulation unit during the simulation operation is monitored based on the QoS policy, including: Based on the robustness strategy, the stability of each simulation unit is monitored; wherein the robustness strategy includes a maximum crash number strategy, a heartbeat frequency strategy, and a maximum heartbeat delay strategy; Based on the responsiveness strategy, the network response of each simulation unit is monitored; the responsiveness strategy is to detect whether the delay of the time advancement of each simulation unit in the simulation service layer meets the standard; Based on the consistency strategy, the data consistency of each simulation unit is monitored; wherein the consistency strategy includes the minimum reflection number strategy of the object class, the maximum reflection number strategy of the object class, the minimum update number strategy of the object class, the maximum update number strategy of the object class, the maximum push sending number strategy of the interaction class, and the maximum push receiving number strategy of the interaction class; Based on the efficiency strategy, the simulation operation efficiency of each simulation unit is monitored; wherein the efficiency strategy includes a committed simulation advancement time strategy, a committed reflection execution time strategy and a committed update execution time strategy; The sustainable operation status of each simulation unit is monitored based on the sustainability strategy; wherein the sustainability strategy includes a maximum object instance number strategy and a maximum object sample number strategy.

2. The method according to claim 1, characterized in that Based on the simulation service layer, statically or dynamically configure the QoS policy of each simulation unit in the distributed simulation system, including: Based on the public data model development tool provided by the simulation service layer, the QoS policy of each simulation unit is statically configured, and after the static configuration is completed, the QoS policy of each simulation unit is saved in the XML file format; During the simulation operation, the QoS policy of each simulation unit is dynamically configured based on the state change of each simulation unit by calling the API interface of the simulation service layer.

3. The method according to claim 1, characterized in that Based on the robustness strategy, the stability of each simulation unit is monitored, including: The workflow of the maximum crash count strategy is as follows: when a simulation unit joins the simulation service layer, the simulation service layer queries whether the maximum crash count strategy is enabled for the simulation unit through the name of the added simulation unit. If enabled, the number of crashes of the simulation unit is detected through the simulation service layer. If the number of crashes has reached the preset maximum crash count of the simulation unit, the joining of the simulation unit is rejected; if the number of crashes has reached 90% of the preset maximum crash count of the simulation unit, a critical crash count level printout reminder is made through the log; if the number of crashes has reached 80% of the preset maximum crash count of the simulation unit, a warning crash count level printout reminder is made through the log to remind the user that the simulation unit is unstable and needs further rectification; when the simulation unit exits the simulation service layer abnormally, the offline function is triggered, and at the offline function, it is determined whether the maximum crash count strategy switch is enabled for the simulation unit. If enabled, the number of crashes of the simulation unit is counted according to the name of the simulation unit; wherein the maximum crash count of the simulation unit is the maximum number of abnormal exits of the simulation unit supported by the simulation service layer during the operation of the distributed simulation system; The workflow of the heartbeat frequency strategy is as follows: after the simulation unit joins the simulation service layer, query whether the heartbeat switch of the simulation unit is turned on. If it is turned on, create a heartbeat packet sending thread in the simulation unit to send heartbeat packets to the simulation service layer at regular intervals. After receiving the heartbeat packets sent from the simulation unit, the simulation service layer counts the number of received heartbeat packets and creates a timer. The detection task in the timer is set to be triggered once per minute. Each trigger will judge the number of heartbeat packets sent by all the added simulation units to determine whether it meets the preset standard heartbeat frequency. If not, When the condition is satisfied, the number of times the heartbeat frequency is not satisfied is accumulated. When the number of times the heartbeat frequency is not satisfied is accumulated to the preset maximum number of times the heartbeat frequency is not satisfied, a log of the number of times the heartbeat frequency is not satisfied exceeding the limit is used for prompting; when the number of times the heartbeat frequency is not satisfied is accumulated to 90% of the preset maximum number of times the heartbeat frequency is not satisfied, a log of the number of times the heartbeat frequency is not satisfied critical is used for prompting; when the number of times the heartbeat frequency is not satisfied is accumulated to 80% of the preset maximum number of times the heartbeat frequency is not satisfied, a log of the number of times the heartbeat frequency is not satisfied warning is used for prompting; wherein the heartbeat frequency is the number of heartbeats per unit time of the simulation unit; The workflow of the maximum heartbeat delay strategy is as follows: after the simulation unit turns on the heartbeat switch, the standard average ping value under the current network conditions is calculated by automatically sending three ICMP request messages, and the standard average ping value is set as the acceptable maximum heartbeat delay value of the simulation unit. The simulation unit periodically sends ICMP request messages to the simulation service layer on the heartbeat thread to obtain the current heartbeat delay value, and compares the current heartbeat delay value with the acceptable maximum heartbeat delay value. If the current heartbeat delay value does not meet the acceptable maximum heartbeat delay value, the maximum heartbeat delay strategy non-compliance times are accumulated. When the accumulated maximum heartbeat delay strategy non-compliance times reaches the maximum value of the preset maximum heartbeat delay strategy non-compliance times, a prompt is given in the log of the simulation unit.

4. The method according to claim 1, characterized in that Monitoring the network response of each simulation unit based on the responsiveness strategy includes: Each time the simulation unit advances time, it is determined whether the simulation unit has turned on the responsiveness switch and the committed simulation advancement time strategy switch. If it is turned on, the physical time spent from the last time advancement of the simulation unit to the current time advancement is calculated to obtain the time advancement time consumption, and the moment of this time advancement is recorded as the previous moment of the next time advancement; Compare the time advancement time with the promised simulation advancement time of the simulation unit, if the time advancement time is greater than the promised simulation advancement time, calculate the actual advancement delay time; if the time advancement time is less than the promised simulation advancement time, record the actual advancement delay time as 0; After calculating the actual advancement delay time, the actual advancement delay time is compared with the preset acceptable delay time. If the actual advancement delay time does not meet the acceptable delay time, the number of unsatisfied advancement delay times is accumulated, and then the unsatisfied advancement delay times policy values ​​of each level set by the responsiveness strategy are compared with the current number of unsatisfied advancement delay times. If the number of unsatisfied advancement delay times reaches the warning level, a warning level unsatisfied advancement delay times log is used for prompting; if the number of unsatisfied advancement delay times reaches the critical level, a critical level unsatisfied advancement delay times log is used for prompting; if the number of unsatisfied advancement delay times reaches the over-limit level, a over-limit level unsatisfied advancement delay times log is used for prompting; According to the current level of non-satisfactory advancement delay times log reminder, the status of the responsiveness strategy is set to warning status, critical status and over-limit status, and the set responsiveness strategy status is synchronized to the management and control end interface for display.

5. The method according to claim 1, characterized in that Based on the consistency strategy, the data consistency of each simulation unit is monitored. include: Among them, the workflow of the minimum reflection number strategy of the object class is as follows: when the simulation unit subscribes to a certain object class and the simulation unit receives the object class data in the form of reflection, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If it is turned on, the reflection number of the object class is accumulated, and after the simulation unit turns on the minimum reflection number strategy switch of the object class, determine whether the accumulated reflection number within a simulation step meets the preset minimum reflection number. If the minimum reflection number is not reached, the inconsistent number is accumulated, and the accumulated reflection number within a simulation step is reset, so as to perform the accumulation calculation of the reflection number within the next simulation step; The workflow of the maximum reflection number strategy of the object class is as follows: when the simulation unit subscribes to a certain object class and the simulation unit receives the object class data in the form of reflection, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If so, accumulate the reflection times of the object class, and after the simulation unit turns on the maximum reflection number strategy switch of the object class, determine whether the accumulated reflection times within a simulation step meet the preset maximum reflection times. If it exceeds the maximum reflection times, accumulate the inconsistent times, and reset the accumulated reflection times within a simulation step so as to perform the accumulation calculation of the reflection times within the next simulation step; The working process of the minimum update number strategy of the object class is as follows: when a simulation unit publishes a certain object class and the simulation unit updates the object class data in a simulation step, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If so, accumulate the update number of the object class, and after the simulation unit turns on the minimum update number strategy switch of the object class, determine whether the accumulated update number in a simulation step satisfies the preset minimum update number. If the minimum update number is not reached, accumulate the inconsistent number, and reset the accumulated update number in a simulation step so as to perform the cumulative calculation of the update number in the next simulation step. The workflow of the maximum update number strategy of the object class is as follows: when a simulation unit publishes a certain object class and the simulation unit updates the object class data in a simulation step, first determine whether the simulation unit has turned on the policy switch of the QoS object class. If so, accumulate the update number of the object class, and after the simulation unit turns on the maximum update number strategy switch of the object class, determine whether the accumulated update number in a simulation step satisfies the preset maximum update number. If it exceeds the maximum update number, accumulate the inconsistent number, and reset the accumulated update number in a simulation step so as to perform the cumulative calculation of the update number in the next simulation step. The workflow of the maximum push sending number strategy of the interaction class is as follows: when the simulation unit announces a certain interaction class and is sending the interaction class, first determine whether the simulation unit has turned on the policy switch of the QoS interaction class. If it is turned on, the number of sending times of the interaction class is accumulated, and after the simulation unit turns on the maximum push sending number strategy switch of the interaction class, determine whether the accumulated number of sending times within a simulation step has reached the preset maximum push sending number. If it exceeds the maximum push sending number, the inconsistent number is accumulated, and the accumulated number of sending times within a simulation step is reset, so as to perform the cumulative calculation of the number of sending times within the next simulation step; The workflow of the maximum push reception number strategy of the interaction class is as follows: when the simulation unit has subscribed to a certain interaction class and is receiving the interaction class, first determine whether the simulation unit has turned on the policy switch of the QoS interaction class. If so, accumulate the reception times of the interaction class, and after the simulation unit turns on the maximum push reception number strategy switch of the interaction class, determine whether the accumulated reception times within a simulation step have reached a preset maximum push reception times. If it exceeds the maximum push reception times, accumulate the inconsistent times, and reset the accumulated reception times within a simulation step so as to perform the accumulation calculation of the reception times within the next simulation step; After the number of inconsistencies is accumulated, the accumulated number of inconsistencies is compared with the set number of inconsistencies at each level. When the accumulated number of inconsistencies reaches the set warning level inconsistencies, a warning level log is output; when the accumulated number of inconsistencies reaches the set critical level inconsistencies, a critical level log is output; when the accumulated number of inconsistencies reaches the set over-limit level inconsistencies, an over-limit level log is output.

6. The method according to claim 1, characterized in that Based on the efficiency strategy, the simulation operation efficiency of each simulation unit is monitored, including: The workflow of the committed simulation advancement time strategy is as follows: when the committed simulation advancement time strategy switch of the simulation unit is in the on state, the time advancement time is calculated at the end of each time advancement of the simulation unit, and the time advancement time is compared with the preset committed simulation advancement time. If the time advancement time exceeds the committed simulation advancement time, the number of times that the efficiency is not met is accumulated, and the simulation advancement efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not met; The working process of the committed reflection execution time strategy is as follows: when the committed reflection execution time strategy switch of the simulation unit is in the on state, the execution time of the simulation unit reflecting the object class is timed, and the reflection timing duration is compared with the preset committed reflection execution time. If the reflection timing duration exceeds the committed reflection execution time, the number of times that the efficiency is not satisfied is accumulated, and the reflection execution efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not satisfied. The workflow of the committed update execution time strategy is as follows: when the committed update execution time strategy switch of the simulation unit is in the on state, the execution time of the simulation unit updating the object class is timed, and the update timing duration is compared with the preset committed update execution time. If the update timing duration exceeds the committed update execution time, the number of times that the efficiency is not met is accumulated, and the update execution efficiency of the simulation unit is constrained based on the accumulated number of times that the efficiency is not met; After the number of times the efficiency is not satisfied is accumulated, the accumulated number of times the efficiency is not satisfied is compared with the set number of times the efficiency is not satisfied at each level. When the accumulated number of times the efficiency is not satisfied reaches the set warning level number of times the efficiency is not satisfied, a log output at the warning level is performed; when the accumulated number of times the efficiency is not satisfied reaches the set critical level number of times the efficiency is not satisfied, a log output at the critical level is performed; when the accumulated number of times the efficiency is not satisfied reaches the set over-limit level number of times the efficiency is not satisfied, an over-limit level log output is performed.

7. The method according to claim 1, characterized in that Based on the sustainability strategy, the sustainable operation status of each simulation unit is monitored, including: The workflow of the maximum object instance number strategy is as follows: for a certain object class, the maximum number of object instances that can be supported for registration of the object class is set, and when registering instances of the object class, first determine whether the maximum object instance number strategy switch of the object class is turned on, if it is turned on, then add up the number of registered instances of the object class, and then compare the number of registered object instances of the object class with the preset maximum object instance number, if the maximum number of object instances has been reached, then print out the object instance overlimit level through the log; if the maximum number of object instances has been reached, then print out the object instance critical level through the log; if the maximum number of object instances has been reached, then print out the object instance warning level through the log; The workflow of the maximum object sample number strategy is as follows: for a certain object class, set the maximum number of object samples that can be supported for registration for the object class, and when registering samples for the object class, first determine whether the maximum object sample number strategy switch is turned on for the object class. If it is turned on, accumulate the number of registered samples of the object class within a simulation step, and then compare the number of object samples registered for the object class within a simulation step with the pre-set maximum object sample number. If the maximum object sample number has been reached, print out the object sample overlimit level through the log; if it has reached ninety percent of the maximum object sample number, print out the object sample critical level through the log; if it has reached eighty percent of the maximum object sample number, print out the object sample warning level through the log.

8. A simulation operation optimization device based on simulation service layer QoS strategy, characterized in that: Applied in a distributed simulation system, the device comprises: A policy configuration module, used to statically or dynamically configure the QoS policy of each simulation unit in the distributed simulation system based on the simulation service layer; wherein the QoS policy includes a robustness policy, a responsiveness policy, a consistency policy, an efficiency policy, and a sustainability policy; The simulation optimization module is used for each simulation unit to obtain the QoS policy issued by the corresponding configuration of the simulation service layer after turning on the QoS switch, monitor the simulation status of each simulation unit during the simulation operation based on the QoS policy, and adjust and optimize the simulation operation process of each simulation unit according to the monitoring situation; The simulation state of each simulation unit during the simulation operation is monitored based on the QoS policy, including: Based on the robustness strategy, the stability of each simulation unit is monitored; wherein the robustness strategy includes a maximum crash number strategy, a heartbeat frequency strategy, and a maximum heartbeat delay strategy; Based on the responsiveness strategy, the network response of each simulation unit is monitored; the responsiveness strategy is to detect whether the delay of the time advancement of each simulation unit in the simulation service layer meets the standard; Based on the consistency strategy, the data consistency of each simulation unit is monitored; wherein the consistency strategy includes the minimum reflection number strategy of the object class, the maximum reflection number strategy of the object class, the minimum update number strategy of the object class, the maximum update number strategy of the object class, the maximum push sending number strategy of the interaction class, and the maximum push receiving number strategy of the interaction class; Based on the efficiency strategy, the simulation operation efficiency of each simulation unit is monitored; wherein the efficiency strategy includes a committed simulation advancement time strategy, a committed reflection execution time strategy and a committed update execution time strategy; The sustainable operation status of each simulation unit is monitored based on the sustainability strategy; wherein the sustainability strategy includes a maximum object instance number strategy and a maximum object sample number strategy.