A message scheduling method and a storage medium

By monitoring and dynamically adjusting the sending strategy of low-priority messages in real time, the problem of transmission delay and packet loss of critical messages caused by high load in the vehicle communication network was solved, and the optimized allocation of bus resources and stable communication were achieved.

CN123055494APending Publication Date: 2026-11-06GREAT WALL MOTOR CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610982569.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-02
Publication Date
2026-11-06

AI Technical Summary

Technical Problem

In existing technologies, the static configuration of vehicle communication networks is difficult to adapt to dynamically changing traffic scenarios, resulting in delays and packet loss in the transmission of critical safety messages under high load, and making it impossible to effectively manage bus resource allocation.

Method used

By monitoring the Controller Area Network (CAN) bus load rate in real time, the transmission cycle and data volume of low-priority messages are dynamically adjusted. Methods such as extending the cycle, reducing the data volume, or stopping the transmission of low-priority messages are adopted to optimize bus resource allocation.

Benefits of technology

It improves communication efficiency and operational stability under high load scenarios, reduces transmission delay and packet loss risk of critical security messages, and ensures reliable communication of the bus network under complex operating conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123055494A_ABST
    Figure CN123055494A_ABST
Patent Text Reader

Abstract

This application discloses a message scheduling method and storage medium, applicable to the field of communication technology. The message scheduling method includes: acquiring the real-time load rate of a controller local area network (Controller Area Network) bus; in response to the real-time load rate being greater than or equal to a preset threshold, determining at least one low-priority message from messages transmitted through the Controller Area Network bus; and performing transmission degradation on the low-priority message, the transmission degradation including extending the transmission period of the low-priority message and / or reducing the message data volume of the low-priority message. By monitoring the bus load in real time and actively performing degraded transmission of low-priority messages when overloaded, the occupied bus time window is released, thereby prioritizing the transmission opportunities of high-priority messages, reducing the end-to-end latency and packet loss rate of high-priority messages, and improving communication reliability and real-time performance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, specifically to a message scheduling method and a storage medium. Background Technology

[0002] As automotive electronic architecture evolves from distributed to domain control and centralized systems, the amount of data carried by in-vehicle communication networks is showing a significant upward trend. The number of nodes connected to the same Controller Area Network (CAN) or CANFD (CAN with Flexible Data-Rate) segment continues to increase, leading to a significant increase in the amount of data transmitted on the bus. To control bus load and reduce congestion, related technologies typically employ static configuration, which involves pre-setting the transmission cycle and data length of each message, or empirically limiting the transmission frequency of non-critical messages. However, this static rule-based configuration method suffers from insufficient flexibility; its fixed scheduling strategy is difficult to adapt to dynamically changing traffic scenarios or vehicle operating conditions.

[0003] Therefore, how to reduce the adverse effects of high load on the real-time transmission of critical security messages has become a technical problem that urgently needs to be solved in this field. Summary of the Invention

[0004] To address the aforementioned technical problems, this application is proposed. Embodiments of this application provide a message scheduling method and storage medium. By monitoring the real-time load rate of the controller area network bus, and when the load rate is too high, proactively performing transmission degradation operations on low-priority messages by extending the transmission cycle and / or reducing the message data volume, the continuous occupation of bus resources by low-priority messages is reduced, thereby helping to improve the communication efficiency and operational stability of the entire bus network under high-load scenarios.

[0005] According to a first aspect of this application, a message scheduling method is provided, comprising: obtaining a real-time load rate of a controller local area network (Controller Area Network) bus; in response to the real-time load rate being greater than or equal to a preset threshold, determining at least one low-priority message from messages transmitted through the Controller Area Network bus; wherein the low-priority message refers to a message having a lower transmission priority than other messages; and performing transmission degradation on the low-priority message; wherein the transmission degradation includes: extending the transmission period of the low-priority message, and / or reducing the message data volume of the low-priority message.

[0006] As one possible implementation, the preset threshold includes a first threshold and a second threshold; the transmission degradation of the low-priority packets includes: in response to the real-time load rate being greater than or equal to the first threshold and less than the second threshold, executing a first load reduction strategy; the first load reduction strategy includes: extending the transmission period of the low-priority packets and / or reducing the packet data volume of the low-priority packets; in response to the real-time load rate being greater than or equal to the second threshold, executing a second load reduction strategy, the second load reduction strategy including: stopping the transmission of at least one low-priority packet; wherein, the second threshold is greater than the first threshold.

[0007] By introducing a first threshold and a second threshold for tiered load reduction, the flexibility and adaptability of the load reduction strategy under different congestion levels are improved. In cases of mild congestion, only moderate concessions are made by extending the cycle time or reducing the data volume, minimizing the impact on the availability of non-critical functions. In cases of severe congestion, transmission is stopped, more effectively releasing bus resources and thus improving the transmission guarantee level of high-priority messages under extreme conditions.

[0008] As one possible implementation, the conditions for stopping the transmission of at least one low-priority message include: the message's priority is lower than the stop transmission threshold, and / or the message type belongs to a non-security function category.

[0009] By limiting the conditions for stopping transmission, the safety and accuracy of the stopping operation are improved, the risk of accidentally damaging safety-critical messages when clearing unnecessary messages is reduced, and the communication continuity of functions related to driving safety, such as braking and steering, is better guaranteed.

[0010] As one possible implementation, the first load reduction strategy includes: when the difference between the real-time load rate and the first threshold is less than the first amplitude threshold, load reduction is performed by extending the sending period of the low-priority packets; when the difference between the real-time load rate and the first threshold is greater than or equal to the first amplitude threshold, load reduction is performed by reducing the packet data volume of the low-priority packets.

[0011] By dynamically selecting either extending the cycle or reducing the data volume as the primary load reduction method based on the extent to which the load rate exceeds the first threshold, the matching degree between the load reduction effect and the functional degradation degree is improved. When the overload is minor, data integrity is prioritized, while when the overload is severe, a more direct method is used to reduce the bus occupancy time, thereby achieving load regulation more efficiently.

[0012] As one possible implementation, reducing the message data volume of the low-priority message includes: in response to the low-priority message being a communication message containing multiple data segments, identifying a first data segment carrying a critical signal and a second data segment carrying a non-critical signal among the multiple data segments; determining the number of second data segments to be discarded based on the difference between the real-time load rate and the preset threshold; wherein the difference is positively correlated with the number of second data segments to be discarded; and forming a simplified message based on the first data segment carrying the critical signal and the remaining second data segments.

[0013] By utilizing the structural characteristic of CAN FD messages containing multiple independent data segments, differentiated processing of critical and non-critical signals in the message is achieved. This allows for the precise preservation of signal data segments that are crucial to safety or basic functions while reducing bus load, thus avoiding the loss of critical information.

[0014] As one possible implementation, the method further includes: when forming the simplified message, setting a simplification flag in a preset field of the simplified message, the simplification flag indicating that the number of data segments in the simplified message has been discarded; sending the simplified message carrying the simplification flag, so that the receiver can identify whether the simplified message has been simplified by parsing the logical value of the simplification flag, and perform data reassembly or processing on the simplified message according to a pre-configured decoding rule.

[0015] By setting a simplification flag in the simplified message, an explicit and reliable indication is provided to the receiver to identify whether the message has been simplified. This improves the synchronization of simplification operations between the communicating parties, reduces the possibility of parsing errors due to inconsistent data formats, and helps ensure the compatibility of end-to-end communication and the accuracy of data processing.

[0016] As one possible implementation, reducing the message data volume of the low-priority message further includes: in response to the low-priority message being a Controller Area Network (CAN) standard fixed byte frame, identifying the functional priority corresponding to each data bit in the fixed byte frame, wherein the data bits include high-priority data bits and low-priority data bits; determining the number of low-priority data bits set as default values ​​based on the difference between the real-time load rate and the preset threshold; wherein the difference is positively correlated with the number of low-priority data bits set as default values; setting the determined number of low-priority data bits as default values, while retaining the valid signals corresponding to the high-priority data bits.

[0017] For standard fixed-byte frames in Controller Area Networks (CAN), by setting low-priority data bits to default values ​​and retaining only the valid signals of high-priority data bits, the amount of valid data in the message is reduced without altering the frame structure. While maintaining the physical frame length, setting non-critical signal bits to default values ​​effectively reduces the amount of valid information carried by the message, thereby lowering the processing burden on the receiving node for redundant data and reducing unnecessary bus bandwidth usage. This improves the granularity of bit-level load shedding, allowing the bus controller to focus more on processing high-priority valid safety signals and improving the communication efficiency of critical signals.

[0018] As one possible implementation, the method further includes: when the real-time load rate is lower than the preset threshold for multiple consecutive monitoring periods, determining the step size for smooth recovery based on the difference between the preset threshold and the real-time load rate, and executing a smooth recovery algorithm; wherein the smooth recovery algorithm includes: gradually shortening the transmission period of low-priority packets with extended transmission periods in a step-wise manner, and / or gradually increasing the data volume of low-priority packets with reduced data volume in a step-wise manner, until the default state is restored.

[0019] By employing a step-by-step, gradual recovery algorithm, the smoothness of the bus state transitioning from deload to normal operation is improved. This gradual recovery method reduces the risk of a sudden rebound in load rate caused by restoring a large number of message parameters at once, thereby improving the stability of the bus load recovery process and reducing the possibility of network jitter.

[0020] As one possible implementation, in response to the real-time load rate being greater than or equal to a preset threshold, determining at least one low-priority message from the messages uploaded from the controller local area network bus includes: determining the priority of the message based on the message's arbitration identifier and / or a preset priority mapping table, and determining messages with a priority lower than the low-priority judgment threshold as the low-priority messages.

[0021] By combining the arbitration identifier of the message with / or a preset priority mapping table to determine low-priority messages, the efficiency and determinism of low-priority message identification are improved. This involves utilizing the inherent arbitration mechanism of the CAN bus for rapid judgment and integrating the static configuration of the vehicle's functional safety architecture, thereby more efficiently filtering out target messages that can be downgraded.

[0022] According to a second aspect of this application, a computer-readable storage medium is provided, the storage medium storing a computer program for performing the method as described in the first aspect or any implementation thereof.

[0023] According to a third aspect of this application, a message scheduling apparatus is provided, comprising: an acquisition module for acquiring a real-time load rate of a controller local area network (Controller Area Network) bus; a determination module for determining at least one low-priority message from messages transmitted through the Controller Area Network bus in response to the real-time load rate being greater than or equal to a preset threshold; wherein the low-priority message refers to a message having a lower transmission priority than other messages; and a degradation module for performing transmission degradation on the low-priority message; wherein the transmission degradation includes: extending the transmission period of the low-priority message and / or reducing the message data volume of the low-priority message.

[0024] According to a fourth aspect of this application, a computer device is provided, the computer device comprising: one or more processors; a memory; and one or more application programs, wherein the one or more application programs are stored in the memory and configured to be executed by the processor to implement the method as described in the first aspect or any implementation thereof.

[0025] According to a fifth aspect of this application, an electronic device is provided, including a module for performing the method as described in the first aspect or any implementation thereof.

[0026] According to a sixth aspect of this application, a computer program product is provided, comprising program code for performing the method as described in the first aspect or any implementation thereof.

[0027] The message scheduling method and storage medium provided in this application, firstly, improve the ability to perceive changes in communication status by introducing the acquisition of real-time load rate of the controller area network bus, reducing the blindness of being unable to respond to instantaneous load fluctuations due to static configuration. Secondly, by actively selecting low-priority messages with minimal impact on the overall system functionality and security as load reduction targets, the selectivity and targeting of scheduling operations are improved, reducing the risk of interference to critical business messages due to indiscriminate processing. Finally, extending the transmission cycle reduces the frequency of bus occupancy per unit time for messages, reduces the amount of message data, and shortens the time occupied by bus resources for a complete transmission. By actively suppressing the transmission of low-priority messages, the stability and communication efficiency of the entire bus network under high-load scenarios are improved while ensuring the transmission of critical messages. Attached Figure Description

[0028] The above and other objects, features, and advantages of this application will become more apparent from the more detailed description of the embodiments of this application in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of this application and form part of the specification. They are used together with the embodiments of this application to explain this application and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.

[0029] Figure 1 This is a flowchart illustrating a message scheduling method provided in an exemplary embodiment of this application.

[0030] Figure 2 This is a schematic diagram of the structure of a message scheduling device provided in an exemplary embodiment of this application.

[0031] Figure 3 This is a structural diagram of an electronic device provided in an exemplary embodiment of this application. Detailed Implementation

[0032] Hereinafter, exemplary embodiments according to this application will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this application, and not all embodiments of this application. It should be understood that this application is not limited to the exemplary embodiments described herein.

[0033] In the field of Controller Area Network (CAN / CAN FD) bus communication, to ensure the real-time transmission of safety-critical messages, related technologies typically employ a static configuration scheme for message transmission cycles and priorities. For example, by pre-setting arbitration identifiers and transmission cycles for each message, the CAN bus's non-destructive bit-by-bit arbitration mechanism based on identifiers allows high-priority messages to gain priority in bus contention. Its basic working principle is: during the system design phase, identifiers and cycles are allocated according to functional requirements, generating a fixed scheduling table, and nodes send messages cyclically according to the scheduling table. This static configuration method is widely used primarily because it can achieve deterministic message transmission timing, meeting the basic requirements of automotive electronic systems for reliability and predictability.

[0034] However, when using a statically configured message transmission scheme, the inherent fixed period and fixed data volume design, in pursuit of deterministic transmission, means that non-critical messages continue to be sent according to the original period and length when the load increases, causing these messages to continuously occupy the bus time window. This affects the transmission of high-priority safety messages (such as automatic emergency braking signals), potentially leading to increased latency or even packet loss. For example, in situations where safety functions such as automatic emergency braking and vehicle stability control trigger a large amount of emergency data instantaneously, the bus load rate may rapidly climb to over 80% because non-critical messages such as infotainment system logs and diagnostic data are still sent according to the original fixed period. This significantly increases the end-to-end latency of high-priority safety messages, and some safety frames may be lost due to arbitration failure or transmission buffer overflow.

[0035] The root cause of these contradictions lies in the lack of real-time sensing and dynamic adjustment capabilities for bus load rates in the relevant technologies. Staticly configured scheduling tables cannot change message transmission behavior based on real-time load conditions; even when the bus is congested, non-critical messages still occupy preset time windows. Furthermore, the CAN / CAN FD protocol itself does not provide a native dynamic congestion control mechanism and cannot proactively suppress the transmission of low-priority data. This makes bus resource allocation completely passive during load surges, and the transmission guarantee of safety-critical messages relies solely on arbitration mechanisms, which cannot resolve the continuous congestion caused by periodic bandwidth occupation.

[0036] To overcome the above contradictions, this application proposes a message scheduling method and storage medium. By monitoring the bus load rate in real time, and actively performing transmission degradation operations such as extending the transmission cycle and / or reducing the message data volume for low-priority messages when the load rate exceeds a preset threshold, the bandwidth usage under static scheduling is dynamically adjusted. This reduces the transmission delay of high-priority messages and avoids packet loss while maintaining the basic availability of non-security functions, thus optimizing the bus bandwidth configuration under complex dynamic operating conditions.

[0037] To implement the message scheduling method, a message scheduling system can first be constructed as an example. The system is deployed in a node controller with Controller Area Network (CLAN) bus communication capabilities. This node controller can be a gateway, domain controller, or other intelligent node with bus monitoring and management capabilities. The node controller is connected to multiple electronic control units via the CLAN bus, forming a bus communication network.

[0038] The node controller internally includes a load monitoring module, a priority mapping module, a policy engine module, and a message scheduling module. The load monitoring module is connected to the controller's local area network (LAN) bus and is used to collect the number of data bits and the bus time window in real time to calculate the bus load rate. The priority mapping module pre-stores the correspondence between the identifier of each message and its priority level. The configuration source of this correspondence includes the message arbitration identifier and a priority mapping table pre-established according to the vehicle's functional safety requirements.

[0039] The strategy engine module is connected to both the load monitoring module and the priority mapping module. It receives real-time load rate data from the load monitoring module and obtains the priority information of each packet currently transmitted on the bus from the priority mapping module. Internally, the strategy engine module maintains preset load rate judgment conditions and can generate corresponding scheduling decisions based on the comparison between the real-time load rate and these conditions. The packet scheduling module is connected between the strategy engine module and the Controller Area Network (CAN) bus's transmission interface. It is responsible for adjusting the transmission parameters of packets to be sent based on the scheduling decisions output by the strategy engine module. The adjustments include at least the packet transmission period and the packet data size, and the adjusted packets are then sent out through the bus.

[0040] The message scheduling module can also form a closed-loop feedback with the load monitoring module. After adjustments are made, the load monitoring module continues to collect bus load rate data, and the policy engine module further adjusts subsequent decisions accordingly to gradually stabilize the bus load state. This architecture provides a basic implementation environment for dynamic and adaptive message scheduling on the controller area network bus.

[0041] Figure 1 This is a flowchart illustrating a message scheduling method provided in an exemplary embodiment of this application. The following is a summary of the process. Figure 1 This paper provides a detailed description of the message scheduling method provided in the embodiments of this application.

[0042] In S110, the real-time load rate of the controller area network bus is obtained.

[0043] Real-time load rate refers to a parameter that reflects the data transmission activity of the Controller Area Network (CAN / CAN FD) bus within the current monitoring period. Examples include the ratio of actual data bits transmitted to the theoretical maximum number of bits, the percentage of the bus time window occupied, or a percentage calculated by statistically analyzing the number of valid data bits and the bus time window, or a combination thereof. "Real-time" means sampling and calculation are performed within a period that meets the real-time requirements of system control, for example, a period not exceeding 10ms.

[0044] In some embodiments, communication activity on the controller area network bus is continuously sampled by a load monitoring module.

[0045] As one possible implementation, the load monitoring module can sample the number of valid data bits on the bus at fixed time intervals, such as 10 milliseconds, and calculate the real-time load rate as a percentage, which is the ratio of the number of bits that the bus can theoretically transmit within that time window. That is, if the bus transmits the equivalent of 5 milliseconds of continuous full load data within a 10-millisecond window, the real-time load rate can be counted as 50%. The real-time load rate provides a quantitative basis for subsequent judgment and decision-making.

[0046] Understandably, the method for obtaining real-time load rate is not limited to the ratio calculation of a single time window. For example, a sliding window averaging algorithm can be used to smooth the load rate of multiple recent sampling periods to filter out instantaneous spikes; or it can be obtained by weighting the occupancy time of specific types of frames, as long as it can dynamically reflect the actual working level of the controller area network bus at the current moment.

[0047] In S120, in response to a real-time load rate greater than or equal to a preset threshold, at least one low-priority message is determined from the messages transmitted via the controller area network bus.

[0048] When the real-time load rate obtained in step S110 is determined by the policy engine module to have reached or exceeded the preset threshold maintained internally, a load reduction strategy will be triggered. The policy engine module will then obtain the priority information of all packets to be sent in the current period from the priority mapping module, and determine at least one low-priority packet as the target object of the load reduction operation based on this information.

[0049] Low-priority messages refer to messages with a lower transmission priority compared to other messages. In other words, within the current bus system, these messages have a lower transmission urgency than others. This can refer to messages carrying non-safety-critical functions, such as data frames related to the entertainment system, diagnostic logs, or seat adjustments; it can also encompass messages that are inherently assigned a relatively low-priority identifier in the system design, even if their function may be somewhat important. Identifying and locking down these messages provides a clear target for subsequent differentiated load reduction operations, ensuring the stability of critical function communication.

[0050] Message priority can be determined in several ways. One possible approach is to determine message priority based on the message's arbitration identifier and / or a pre-defined priority mapping table, classifying messages with priorities below a low-priority threshold as low-priority messages. For example, the native arbitration identifier of the CAN bus can be used, where messages with smaller identifier values ​​have higher priorities. The node controller can directly read the message's arbitration identifier field to determine its priority level. Since the value of the arbitration identifier in the CAN bus protocol inherently determines its bus access priority, determining priority based on the arbitration identifier is direct and efficient. Simultaneously, a pre-defined priority mapping table can be accessed. This table stores a static correspondence between each message ID and its corresponding functional importance level. Querying the functional importance level corresponding to a message ID ensures consistency between the message classification results and the vehicle's safety architecture definition. The low-priority threshold can be a specific arbitration ID value, with all messages with ID values ​​greater than this threshold considered low-priority; alternatively, a level boundary line can be defined in the priority mapping table for judgment. In addition, the arbitration identifier and the preset priority mapping table can be used for double confirmation at the same time. The double confirmation mechanism not only makes use of the inherent arbitration mechanism of the CAN bus for rapid initial screening, but also ensures that the screening results are consistent with the functional safety architecture of the vehicle through the static mapping table, providing a deterministic target object for the load reduction operation.

[0051] The preset threshold refers to a critical load rate value used to determine whether the controller area network (LAN) bus has entered a congestion state requiring active intervention. The preset threshold can be a fixed value, such as 70% of the total bandwidth. When the real-time load rate equals or exceeds this value, it indicates that the bus is no longer idle, and the continued transmission of low-priority messages has begun to threaten the real-time transmission of high-priority security messages. The specific value of the preset threshold is not fixed and can be dynamically configured.

[0052] Dynamic configuration methods can include: adaptive switching based on different vehicle operating conditions (such as highway cruising, urban congestion, and parking); or dynamic deployment by the host computer based on the current network topology and functional safety level via diagnostic protocols. For example, when the vehicle is in a high-frequency data interaction mode for Advanced Driver Assistance Systems (ADAS), the preset threshold can be lowered to 65% to trigger load reduction protection earlier; while when the vehicle is in a dormant or low-load normal driving mode, the preset threshold can be appropriately raised to 75% to maintain the basic communication frequency of non-critical functions.

[0053] In S130, low-priority messages are downgraded for transmission.

[0054] Transmission degradation includes extending the transmission period of low-priority messages and / or reducing the message data volume of low-priority messages.

[0055] After identifying low-priority packets, the packet scheduling module performs transmission degradation operations on these packets according to the instructions of the policy engine module. Transmission degradation is a dynamic and combinable set of bandwidth optimization techniques, including two methods that can be used independently or in combination: extending the transmission period and reducing the packet data size.

[0056] Extending the transmission period refers to increasing the time interval between two transmissions of the same message. For example, a vehicle status message with a default transmission period of 50 milliseconds can be dynamically extended to 100 milliseconds or 200 milliseconds under a degradation strategy. This adjustment can be achieved by dynamically modifying the timeout of the transmission timer bound to the message in the message scheduling module. This directly reduces the number of times the message is transmitted per unit time, freeing up the bus time window. Consequently, without changing the integrity of the data content of a single message, the frequency of the message's occupation of the bus is reduced.

[0057] Reducing message data size refers to shrinking the data content carried in a single message frame. The implementation method depends on the specific message type. For example, for CAN FD messages, the number of segments can be reduced. A frame originally containing 4 segments (64 bytes) can be simplified to containing only 2 segments (32 bytes) or less. For standard CAN fixed-byte frames, this can be achieved by setting some data bits to default values ​​that do not affect basic functions, while only retaining and transmitting the most critical valid signals. Using this method, the physical time occupied by a single transmission on the bus can be directly reduced, alleviating congestion more quickly.

[0058] To implement load reduction measures of varying degrees in response to different levels of congestion, striking a balance between ensuring basic availability of non-critical functions and completely avoiding bus failure, in some embodiments, the preset threshold for triggering load reduction may be further configured to include a first threshold and a second threshold, wherein the second threshold is greater than the first threshold. Different levels of scheduling decisions are generated after comparing the real-time load rate with the first and second thresholds.

[0059] As a possible decision mitigation method, in response to a real-time load rate greater than or equal to a first threshold and less than a second threshold, the bus is determined to be in a state of mild congestion, and a first load reduction strategy is executed. The first load reduction strategy includes: extending the transmission period of low-priority messages and / or reducing the message data volume of low-priority messages. In response to a real-time load rate greater than or equal to the second threshold, the bus is determined to be in a state of severe congestion, and a second load reduction strategy, which is more stringent than the first load reduction strategy, is executed. The second load reduction strategy includes: stopping the transmission of at least one low-priority message.

[0060] For example, the first threshold can be set at 70%, and the second threshold at 80%. These threshold values ​​can be adjusted based on factors such as the actual network topology and harness length. During mild congestion, the system alleviates bus pressure by reducing the transmission demand of low-priority messages, rather than completely interrupting communication, thus maintaining the basic availability of this type of function. When the load rate reaches or exceeds 80%, the system will forcibly cut off the transmission of the lowest-priority messages (such as entertainment system data, diagnostic logs, etc.). This mechanism of graded response based on congestion level allows for targeted clearing of unnecessary communication loads when facing bus emergencies caused by sudden surges in data volume, ensuring that the bus does not enter an uncontrollable congestion state, achieving a dynamic balance between strict security requirements and flexible functional maintenance.

[0061] When executing the operation of stopping the transmission of low-priority messages, in order to accurately select those messages that can be safely cut off and avoid accidentally stopping critical messages related to driving safety, the conditions for stopping the transmission of at least one low-priority message can be set as follows: the message priority is lower than the stop transmission threshold, and / or the message type belongs to a non-safety function category.

[0062] When making decisions, various methods can be used independently or in combination to determine which low-priority messages can be completely stopped from transmission. One possible approach is to base the judgment solely on the message type attribute; that is, by querying a pre-configured functional safety level mapping table, messages explicitly marked as non-safety function categories (such as entertainment systems, seat massage, ambient lighting, and diagnostic logs) can be directly identified as eligible for stopping transmission. As a more secure safeguard, a judgment based on the arbitration ID value can be added on top of this; for example, messages with an arbitration ID value greater than the stop transmission threshold (e.g., 0x700) can also be considered eligible for stopping. Basic screening requirements can be met using only the functional safety mapping table, or the arbitration ID can be introduced for double confirmation when both results are consistent, further improving the accuracy of the screening results. In actual configurations, it is also possible to choose to rely solely on the arbitration ID threshold for judgment. This verification mechanism ensures that even during extremely congested cleanup operations, all communication related to safety-critical functions such as braking, steering, and power is fully preserved, further enhancing functional safety.

[0063] Building upon this, higher priority safety messages can be further configured. For example, messages with an arbitration ID value less than 0x500, such as those for Autonomous Emergency Braking (AEB), Electric Power Steering (EPS), and Electronic Stability Program (ESP), can be sent immediately with the highest priority. This hierarchical processing logic ensures that bus resources are systematically and selectively allocated to the most needed functions even in the most extreme circumstances, thereby maintaining the availability of non-core functions while completely preventing bus crashes.

[0064] In scenarios where only extending the message interval and reducing the data volume are needed without completely stopping transmission, to select a more appropriate load reduction method based on the severity of the overload and achieve the optimal balance between load reduction effect and functional degradation, some embodiments further refine the load reduction method selection logic in the first load reduction strategy: When the difference between the real-time load rate and the first threshold is less than the first amplitude threshold, it indicates that the load rate is only slightly exceeded, and load reduction can be performed by extending the transmission period of low-priority messages. For example, the first amplitude threshold can be set to a value such as 5% or 15%. When the load rate exceeds the threshold but the amplitude is less than this value, the pressure is mainly alleviated by extending the message transmission interval from 50 milliseconds to 100 milliseconds or 200 milliseconds, while the data content carried by the message remains unchanged. This only reduces the information refresh frequency without losing any data details, minimizing the impact on non-critical functions that rely on this message. When the difference between the real-time load rate and the first threshold is greater than or equal to the first amplitude threshold, it indicates that the overload situation is more severe, and simply reducing the transmission frequency may not be enough to make the bus load rate drop quickly. At this point, load shedding can be implemented by reducing the amount of data in low-priority messages. For example, the number of segments carried by a CAN FD message can be reduced from four to two, or the data bits of some CAN messages can be set to default values. This selection mechanism allows the intensity of load shedding to be adapted to the magnitude of bus overload. When the load rate is severely high, it can quickly and effectively curb the aggravation of congestion by directly reducing the bus duration occupied by a single transmission, thus achieving fine-grained control of load shedding.

[0065] In the specific implementation of reducing message data volume, for specific communication messages such as CAN FD containing multiple data segments, how can we simplify the data while fully preserving key signals and preventing the loss of effective information due to excessive pruning? To this end, in response to low-priority messages containing multiple data segments, the system identifies the first data segment carrying key signals and the second data segment carrying non-key signals. Key signals refer to control commands or status data necessary to ensure basic vehicle safety or maintain the core operation of a certain function, while non-key signals may be redundant data reserved for infotainment systems, detailed diagnostic records, or future expansion. After determining the attributes of each data segment, the number of second data segments to be discarded is determined based on the difference between the real-time load rate and a preset threshold. The difference is positively correlated with the number of second data segments to be discarded; that is, the more severe the overload, the more non-key data segments are discarded. For example, it can be set that when the load rate exceeds the threshold by 10%, one second data segment is discarded; when it exceeds 20%, two second data segments are discarded; or even only key fields (such as one segment) are retained. Subsequently, based on the first data segment carrying the key signals and the remaining second data segment, a simplified message is formed. This targeted trimming method utilizes the structural feature of CAN FD messages, which can carry independent data segments. While reducing the physical transmission time per frame, it ensures the integrity of the core information, allowing the receiver to still obtain the necessary signals to maintain normal operation even after receiving the simplified message.

[0066] For example, a CAN FD message can have a data field length of up to 64 bytes, divided into eight data segments (Segment 1 to Segment 8), each segment being eight bytes and corresponding to a set of independent vehicle functions. For instance, Segment 1 to Segment 6 carry critical signals related to driving safety and core control (such as braking, steering, and powertrain status), while Segment 7 and Segment 8 carry non-critical or low-priority signals. For example, Segment 7 corresponds to the seat massage status, and Segment 8 corresponds to the audio stream data of the entertainment system. These functions can be temporarily abandoned when necessary.

[0067] When the real-time load rate is detected to reach and exceed a first threshold (e.g., 70%), but is below a second threshold (e.g., 80%), the bus is considered to be slightly congested. If, at this point, the load rate exceeds the first threshold by a preset first amplitude threshold (e.g., 5%), the system will execute a data reduction strategy. The message scheduling module identifies Segment 7 and Segment 8 of the current message as non-critical, low-priority data segments, while Segment 1 to Segment 6 are critical data segments. Based on this, it decides to discard Segment 8 and only encapsulate Segment 1 to Segment 7 into a simplified message for transmission. In this way, the six core critical data segments are fully preserved, while the least important entertainment data is suppressed. If the bus load rate continues to deteriorate, it is considered severely congested. The system will execute a stricter load reduction strategy. In addition to continuing to perform operations such as period extension, it may further discard Segment 7, ultimately sending only Segment 1 to Segment 6 (a total of six data segments), thereby maximizing the release of bus bandwidth and ensuring the transmission of critical safety signals. After the load returns to normal, the system will initiate a smooth recovery algorithm. When the load rate drops back to the normal level of 50%, the system will first restore Segment 7 (seat massage function) in the sent messages. After sending several frames, if the load monitoring module confirms that the bus load rate has not rebounded abnormally, it will then further restore Segment 8 (entertainment system).

[0068] Upon receiving a simplified message, the receiver needs to know that the message has been simplified in order to employ correct decoding and data processing logic and avoid parsing errors due to discrepancies between the expected and actual data format. To this end, a simplification flag can be set in a preset field of the simplified message during its creation. This flag indicates that a number of data segments in the simplified message have been discarded. This preset field can be a reserved bit in the CAN FD frame header not occupied by other protocol functions, or it can be defined in a specific location in the data field. The simplified message carrying the simplification flag is then sent, allowing the receiver to identify whether the message has been simplified by parsing the logical value of the flag and to reassemble or process the simplified message according to pre-configured decoding rules. Alternatively, it can ignore missing data segments and process only valid segments according to predetermined logic. By embedding explicit identifiers within the communication protocol, this method reliably ensures synchronization between the sender and receiver in streamlined operations without relying on additional out-of-band signal lines or complex context inference, thus maintaining end-to-end communication compatibility and data interpretation accuracy.

[0069] In different network architectures, low-priority messages may also manifest as traditional Controller Area Network (CAN) standard fixed-byte frames. For these fixed-length frames, in order to reduce their impact on the effective bus bandwidth without altering the frame structure, thereby freeing up resources for high-priority messages, some embodiments first identify the functional priority of each data bit in the fixed-byte frame in response to the low-priority message being a CAN standard fixed-byte frame. These data bits can be distinguished as high-priority and low-priority data bits based on the importance of their carried functions. For example, in an 8-byte CAN frame, bit 0 of Byte 0 (i.e., bit 0 of byte 0) might be used to carry a high-priority safety-related signal, such as an emergency braking warning; while other bits might carry non-critical signals with lower real-time and safety requirements, such as seat position adjustment or window control. Then, the number of low-priority data bits set to the default value is determined based on the difference between the real-time load rate and a preset threshold; the difference is positively correlated with the number of low-priority data bits set to the default value. That is, the more severe the overload, the more non-critical signal bits are abandoned from transmitting their changed values. Subsequently, a predetermined number of low-priority data bits are set to default values, such as all being set to "0" or maintaining the previous valid state, while retaining the valid signals corresponding to the high-priority data bits. This approach leverages the immutable nature of the standard CAN frame format, replacing dynamically changing non-critical data with static default values, thereby reducing the transmission frequency of truly changing signals on the bus and the processing overhead of meaningless data by the receiving node. This allows the bus controller to focus more on parsing and processing the retained valid high-priority signals within a fixed frame transmission time, indirectly improving the real-time performance of these critical signals.

[0070] When the bus load rate recovers from a high load state to a normal level after load reduction measures are implemented, or due to other reasons, immediately restoring all degraded message transmission parameters to their default values ​​may cause a momentary rebound in the bus load rate or even trigger congestion again. Therefore, in order to smoothly transition the bus from a load reduction state back to a normal state, in some embodiments, when the real-time load rate is below a preset threshold for multiple consecutive monitoring periods, such as two consecutive monitoring periods below the threshold, the system does not immediately perform a full recovery. Instead, it determines the smooth recovery step size based on the difference between the preset threshold and the real-time load rate and executes a smooth recovery algorithm. The larger this difference, the more idle the bus is, and the larger the recovery step size it can tolerate.

[0071] The smooth recovery algorithm includes: gradually shortening the transmission period of low-priority packets with extended transmission periods in a step-wise manner, and / or gradually increasing the data size of low-priority packets with reduced data size in a step-wise manner, until the default state is restored. For example, for a packet whose transmission period was previously extended from 10 milliseconds to 50 milliseconds, it is first adjusted to 30 milliseconds, and after sending several frames, if the load rate remains stable below the threshold, it is further adjusted to 20 milliseconds, and finally restored to the default 10 milliseconds. For packets whose data size was previously reduced, the number of segments or valid data bits is also gradually increased. For example, one segment is restored first, and the next segment is restored only after confirming that there are no bus anomalies. This step-wise dynamic recovery method avoids network jitter caused by frequent fluctuations in the load rate near the threshold, reduces the problem of load rate spikes again due to a large number of packet parameters being restored at once, and ensures a smooth transition of bus communication state.

[0072] The following describes an application scenario for a Controller Area Network (CLAN) bus. The operating status of the CLAN bus is divided into four levels, determined by comparing the real-time load rate obtained by the load monitoring module with preset thresholds for each level. The four levels are: low load, normal load, high load warning, and critical load.

[0073] First, in a low-load state, which means the real-time load rate is below the default communication capacity limit, the system can execute optimization strategies to improve throughput. For example, it can try to use the CAN FD format to merge multiple short messages by extending the data segment length (maximum 64 bytes) to reduce the number of frames on the bus.

[0074] For normal load conditions, this indicates that the real-time load rate is within the normal operating range and no load reduction process has been triggered. The message scheduling module operates according to the standard sending procedure. All messages are prioritized and arbitrated based on the arbitration identifier, and are sent with the default sending period and default frame format (such as standard CAN fixed byte frames or complete CAN FD multi-segment messages) to maintain deterministic communication and low latency.

[0075] The high load warning state indicates that the real-time load rate has reached a preset warning threshold (e.g., 60%), but has not yet reached the threshold for determining a critical load state. In this state, the system begins to identify whether the message to be sent is a critical real-time message. If the message is a critical real-time message (such as AEB, ESP), it is protected, retaining its normal transmission in standard CAN or CAN FD format without any degradation. If the message is a non-critical real-time message, transmission optimization is performed. Furthermore, if the message supports CAN FD, the system attempts to use the CAN FD format to merge multiple small data messages into a single data segment for transmission, reducing the number of frames and thus lowering the real-time load rate. If the message only supports standard CAN, a compression strategy is adopted to merge multiple small messages or discard non-real-time data segments.

[0076] The crisis load state indicates that the real-time load rate has reached a preset crisis judgment threshold (e.g., 70%). This state further includes two sub-levels: Mild Crisis: When the real-time load rate is greater than or equal to the first threshold (e.g., 70%) and less than the second threshold (e.g., 80%), the first load reduction strategy is activated. This involves identifying at least one low-priority message from the messages transmitted on the bus, downgrading its transmission by extending the transmission cycle (e.g., increasing the time interval between two transmissions of a message from 50ms to 200ms). Alternatively, the message data volume may be reduced. For CAN FD messages, the first data segment carrying critical signals is identified and retained, while the second data segment carrying non-critical signals is discarded. For standard CAN fixed byte frames, high-priority data bits are identified and retained, while low-priority data bits are set to default values.

[0077] Severe Crisis: Real-time load rate is greater than or equal to the second threshold (e.g., 80%), triggering the second load reduction strategy. This involves stopping the transmission of verified low-priority packets (those whose priority is below the stop threshold and / or whose type belongs to a non-security function category). For all non-core packets that have not been stopped, the transmission cycle is further extended, and their data volume is forcibly reduced. The upper-layer system bus is notified that it is in an extremely congested state, allowing for system-level degradation.

[0078] Finally, if a bus error (such as a bit error or stuffing error) is detected, the error handling subroutine is entered to perform a bus reset or resynchronization operation. Within each control cycle, the message scheduling module sends messages according to the optimized strategy, and the load monitoring module updates the real-time load rate statistics in real time, forming a closed-loop feedback loop. The system continuously cycles through a hierarchical control process.

[0079] Figure 2 This is a schematic diagram of the structure of a message scheduling device provided in an exemplary embodiment of this application, as shown below. Figure 2As shown, the message scheduling device 2 includes: an acquisition module 21, used to acquire the real-time load rate of the controller local area network bus; a determination module 22, in response to the real-time load rate being greater than or equal to a preset threshold, determining at least one low-priority message from the messages transmitted through the controller local area network bus; wherein, a low-priority message refers to a message with a lower transmission priority than other messages; and a reduction module 23, used to perform transmission degradation on the low-priority message; wherein, transmission degradation includes: extending the transmission period of the low-priority message, and / or reducing the message data volume of the low-priority message.

[0080] As one possible implementation, the preset thresholds include a first threshold and a second threshold; the load reduction module 23 can be configured to: execute a first load reduction strategy in response to a real-time load rate greater than or equal to the first threshold and less than the second threshold; the first load reduction strategy includes: extending the transmission period of low-priority packets and / or reducing the packet data volume of low-priority packets; and execute a second load reduction strategy in response to a real-time load rate greater than or equal to the second threshold, the second load reduction strategy including: stopping the transmission of at least one low-priority packet; wherein, the second threshold is greater than the first threshold.

[0081] As one possible implementation, the downgrade module 23 can be configured to stop sending at least one low-priority message under the following conditions: the message priority is lower than the stop sending threshold, and / or the message type belongs to a non-security function category.

[0082] As one possible implementation, the load reduction module 23 can be configured as follows: the first load reduction strategy includes: when the difference between the real-time load rate and the first threshold is less than the first amplitude threshold, load reduction is performed by extending the sending period of low-priority messages; when the difference between the real-time load rate and the first threshold is greater than or equal to the first amplitude threshold, load reduction is performed by reducing the message data volume of low-priority messages.

[0083] As one possible implementation, the reduction module 23 can be configured to: reduce the message data volume of low-priority messages, including: in response to the low-priority message being a communication message containing multiple data segments, identifying a first data segment carrying a critical signal and a second data segment carrying a non-critical signal among the multiple data segments; determining the number of second data segments to be discarded based on the difference between the real-time load rate and a preset threshold; wherein the difference is positively correlated with the number of second data segments to be discarded; and forming a simplified message based on the first data segment carrying the critical signal and the remaining second data segments.

[0084] As one possible implementation, the message scheduling device 2 can also be configured to: when forming a simplified message, set a simplification flag in a preset field of the simplified message, the simplification flag being used to indicate that the number of data segments in the simplified message has been discarded; send the simplified message carrying the simplification flag so that the receiver can identify whether the simplified message has been simplified by parsing the logical value of the simplification flag, and reassemble or process the simplified message according to the pre-configured decoding rules.

[0085] As one possible implementation, the reduction module 23 can be configured to: in response to a low-priority message being a standard fixed byte frame of the Controller Area Network (CAN), identify the functional priority corresponding to each data bit in the fixed byte frame, wherein the data bits include high-priority data bits and low-priority data bits; determine the number of low-priority data bits set to the default value based on the difference between the real-time load rate and a preset threshold; wherein the difference is positively correlated with the number of low-priority data bits set to the default value; set the determined number of low-priority data bits to the default value, and retain the valid signals corresponding to the high-priority data bits.

[0086] As one possible implementation, the message scheduling device 2 can also be configured to: when the real-time load rate is lower than a preset threshold for multiple consecutive monitoring periods, determine the step size of smooth recovery based on the difference between the preset threshold and the real-time load rate, and execute a smooth recovery algorithm; wherein, the smooth recovery algorithm includes: gradually shortening the transmission period of low-priority messages whose transmission period will be extended in a step-like manner, and / or gradually increasing the data volume of low-priority messages whose data volume will be reduced in a step-like manner, until the default state is restored.

[0087] As one possible implementation, the determining module 22 can be configured to: determine the priority of the message based on the arbitration identifier of the message and / or a preset priority mapping table, and determine the message with a priority lower than the low priority judgment threshold as a low priority message.

[0088] An electronic device includes: a processor; a memory for storing processor-executable instructions; and a processor for executing the message scheduling method described in the embodiments provided in this application.

[0089] Below, for reference Figure 3 This application describes an electronic device according to embodiments thereof. The electronic device may be either or both of a first device and a second device, or a standalone device independent of them, which may communicate with the first device and the second device to receive acquired input signals from them.

[0090] Figure 3 A block diagram of an electronic device according to an embodiment of this application is illustrated.

[0091] like Figure 3 As shown, the electronic device 30 includes one or more processors 31 and memory 32.

[0092] The processor 31 may be a central processing unit (CPU) or other form of processing unit with data processing and / or instruction execution capabilities, and may control other components in the electronic device 30 to perform desired functions.

[0093] The memory 32 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 31 may execute the program instructions to implement the message scheduling methods of the various embodiments of this application described above and / or other desired functions. Various contents such as input signals, signal components, and noise components may also be stored in the computer-readable storage medium.

[0094] In one example, the electronic device 30 may also include an input device 33 and an output device 34, which are interconnected via a bus system and / or other forms of connection mechanism (not shown).

[0095] When the electronic device is a standalone device, the input device 33 can be a communication network connector for receiving the collected input signals from the first device and the second device.

[0096] In addition, the input device 33 may also include, for example, a keyboard, a mouse, etc.

[0097] The output device 34 can output various information to the outside, including determined distance information, direction information, etc. The output device 34 may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.

[0098] Of course, for the sake of simplicity, Figure 3 Only some of the components of the electronic device 30 relevant to this application are shown in this illustration; components such as buses, input / output interfaces, etc., are omitted. In addition, the electronic device 30 may include any other suitable components depending on the specific application.

[0099] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this application. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0100] A computer-readable storage medium stores a computer program for executing the message scheduling method described in the embodiments provided in this application.

[0101] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof.

[0102] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this application to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.

Claims

1. A message scheduling method, characterized in that, include: Obtain the real-time load rate of the controller area network bus; In response to the real-time load rate being greater than or equal to a preset threshold, at least one low-priority message is determined from the messages transmitted through the controller area network bus; wherein, the low-priority message refers to a message with a lower transmission priority than other messages; The transmission of the low-priority message is downgraded; wherein the transmission downgrade includes: extending the transmission period of the low-priority message, and / or reducing the message data volume of the low-priority message.

2. The message scheduling method according to claim 1, characterized in that, The preset threshold includes a first threshold and a second threshold; The transmission degradation of the low-priority messages includes: In response to the real-time load rate being greater than or equal to the first threshold and less than the second threshold, a first load reduction strategy is executed; the first load reduction strategy includes: extending the transmission period of the low-priority packets, and / or reducing the packet data volume of the low-priority packets; In response to the real-time load rate being greater than or equal to the second threshold, a second load reduction strategy is executed, the second load reduction strategy including: stopping the transmission of at least one low-priority message; Wherein, the second threshold is greater than the first threshold.

3. The message scheduling method according to claim 2, characterized in that, The conditions for stopping the transmission of at least one low-priority message include: the message's priority is lower than the stop transmission threshold, and / or the message type belongs to a non-security function category.

4. The message scheduling method according to claim 2, characterized in that, The first load reduction strategy includes: When the difference between the real-time load rate and the first threshold is less than the first amplitude threshold, load reduction is performed by extending the sending period of the low-priority messages. When the difference between the real-time load rate and the first threshold is greater than or equal to the first amplitude threshold, load reduction is performed by reducing the amount of data in the low-priority messages.

5. The message scheduling method according to claim 1, characterized in that, The reduction of the message data size of the low-priority messages includes: In response to the low-priority message being a communication message containing multiple data segments, the first data segment carrying a critical signal and the second data segment carrying a non-critical signal are identified among the multiple data segments; The number of second data segments to be discarded is determined based on the difference between the real-time load rate and the preset threshold; wherein the difference is positively correlated with the number of second data segments to be discarded. Based on the first data segment carrying the key signal and the remaining second data segment, a simplified message is formed.

6. The message scheduling method according to claim 5, characterized in that, The method further includes: When forming the simplified message, a simplified flag is set in a preset field of the simplified message. The simplified flag is used to indicate that the number of data segments in the simplified message has been discarded. The simplified message carrying the simplification flag is sent so that the receiver can identify whether the simplified message has been simplified by parsing the logical value of the simplification flag, and reassemble or process the simplified message according to the pre-configured decoding rules.

7. The message scheduling method according to claim 1, characterized in that, The reduction of the message data size of the low-priority message further includes: In response to the low-priority message being a standard fixed byte frame of the Controller Area Network (CAN), the functional priority corresponding to each data bit in the fixed byte frame is identified, wherein the data bits include high-priority data bits and low-priority data bits; The number of low-priority data bits set as the default value is determined based on the difference between the real-time load rate and the preset threshold; wherein the difference is positively correlated with the number of low-priority data bits set as the default value. Set the determined number of low-priority data bits to the default value, and retain the valid signals corresponding to the high-priority data bits.

8. The message scheduling method according to claim 1, characterized in that, The method further includes: When the real-time load rate is lower than the preset threshold for multiple consecutive monitoring periods, the step size for smooth recovery is determined based on the difference between the preset threshold and the real-time load rate, and the smooth recovery algorithm is executed. The smooth recovery algorithm includes: gradually shortening the transmission period of low-priority messages whose transmission period will be extended in a step-like manner, and / or gradually increasing the data volume of low-priority messages whose data volume will be reduced in a step-like manner, until the default state is restored.

9. The message scheduling method according to claim 1, characterized in that, In response to the real-time load rate being greater than or equal to a preset threshold, at least one low-priority message is determined from the messages uploaded from the controller area network bus, including: The priority of a message is determined based on its arbitration identifier and / or a preset priority mapping table, and messages with a priority lower than the low priority judgment threshold are identified as low priority messages.

10. A computer-readable storage medium, characterized in that, The device contains a computer program that, when executed by a processor, implements the message scheduling method according to any one of claims 1 to 9.