An inter-process communication system and method based on fusion of visualized model and DDS

CN120045356BActive Publication Date: 2026-08-21DIGITAL YUANSHENG (WUHAN) TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510206291.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-24
Publication Date
2026-08-21
Estimated Expiration
2045-02-24

AI Technical Summary

Technical Problem

例如,共享内存提供了快速的数据访问,但需要开发者管理同步和一致性问题;消息队列则简化了进程间的通信,但可能导致数据传输的延迟

Benefits of technology

[0043]通过结合可视化模型与DDS的发布-订阅机制,该方法优化了数据流动路径,减少了数据传输的延迟,从而显著提高了进程间通信的整体效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120045356B_ABST
    Figure CN120045356B_ABST
Patent Text Reader

Abstract

The application discloses an inter-process communication system and method based on fusion of a visual model and DDS, and the method comprises the following steps: a first visual model representing inter-process communication is constructed; in the first visual model, a data structure for data transmission is defined; the relationship between a data publisher and a subscriber is configured based on a DDS standard; process nodes in the first visual model are mapped with a communication interface of the DDS; real-time data transmission is performed based on the DDS, the data transmission state is tracked in real time, and integrity verification is performed based on the data structure; and based on the data transmission state, the transmission rate and size of a data packet are adjusted in real time, so that the overall communication performance is improved. Through the application, the communication efficiency and system compatibility can be improved, the system flexibility can be enhanced, dynamic adaptability can be supported, resource management can be optimized, data reliability can be improved, system design and maintenance can be simplified, and user experience can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of computer systems engineering, and in particular relates to an inter-process communication system and method based on the integration of visualization models and DDS. Background Technology

[0002] With the rapid development of information technology, especially in fields such as the Internet of Things (IoT), autonomous driving, and smart manufacturing, the demand for inter-process communication (IPC) is increasing. IPC refers to the process of exchanging data and information between multiple processes in a computer system. Effective IPC can not only improve the overall performance of the system but also enhance its flexibility and scalability.

[0003] Traditional inter-process communication (IPC) methods mainly include shared memory, message queues, pipes, and sockets. Each method has its advantages and disadvantages. For example, shared memory provides fast data access but requires developers to manage synchronization and consistency issues; message queues simplify inter-process communication but may cause data transmission delays. Therefore, in complex systems, choosing the appropriate IPC method is crucial.

[0004] To address the limitations of traditional communication methods, Data Distribution Service (DDS) emerged. DDS is a communication middleware standard for real-time, distributed systems, widely used in aerospace, military, medical, and industrial automation fields. DDS provides an efficient and reliable data transmission mechanism, supporting various QoS (Quality of Service) policies, such as reliability, latency, and bandwidth, ensuring efficient data transmission in different network environments.

[0005] The core concept of DDS is the "publish-subscribe" model. In this model, data producers (publishers) publish data to specific topics, while data consumers (subscribers) retrieve data from these topics. This loosely coupled architecture allows the system to scale flexibly; adding new publishers or subscribers does not require significant modifications to the existing system. Furthermore, DDS supports a dynamic discovery mechanism that automatically identifies and connects new publishers and subscribers at runtime, improving the system's flexibility and adaptability.

[0006] However, despite the powerful communication capabilities offered by DDS, effectively integrating it with visualization models remains a challenge. Visualization models graphically represent system architecture and its dynamic behavior, helping developers understand and manage complex systems. Combining visualization models with DDS allows for clarifying communication relationships between processes during the design phase, optimizing data flow, and improving system manageability. Summary of the Invention

[0007] To address the shortcomings of the existing technology, this invention provides an inter-process communication method based on the fusion of a visualization model and DDS, comprising the following steps:

[0008] Step S101: Construct a first visualization model representing inter-process communication, the first visualization model including process nodes, data flow direction, event triggering conditions, and state changes;

[0009] Step S103: In the first visualization model, define the data structure for data transmission;

[0010] Step S105: Configure the relationship between data publishers and subscribers based on the DDS standard;

[0011] Step S107: Map the process nodes in the first visualization model to the communication interface of DDS;

[0012] Step S109: Real-time data transmission is performed based on DDS, and the data transmission status is tracked in real time. Integrity verification is performed based on the data structure.

[0013] Step S1011: Based on the data transmission status, adjust the data packet transmission rate and size in real time to improve overall communication performance.

[0014] The data structure defined in step S103 for data transmission includes:

[0015] Clearly define the data type, size, and format of the data packet;

[0016] Develop a lifecycle management strategy.

[0017] Specifically, the lifecycle management strategy includes using corresponding management functions during the creation, transmission, and destruction phases.

[0018] Specifically, step S105 includes:

[0019] Determine the data type to be transmitted and define the corresponding topic in DDS;

[0020] Create one or more publisher instances for the corresponding topic and configure their properties;

[0021] Create a subscriber instance for the corresponding topic and configure the data processing method and QoS policy for the received data.

[0022] Step S107 includes:

[0023] In the visualization model, the data flow between each process node is analyzed to identify the publishers and subscribers of the data.

[0024] Define a corresponding DDS topic for each process node;

[0025] Configure the properties of each interface for mapping.

[0026] Step S109 includes integrity verification based on the checksum or hash value defined in the data structure.

[0027] Specifically, step S1011 includes:

[0028] Based on the data transmission status, calculate the first priority of the data packet;

[0029] The transmission rate of data packets is adjusted based on the calculated first priority.

[0030] The priority of data packets is calculated using the following formula:

[0031]

[0032] Among them, P i P represents the i-th data packet being transmitted; dynamic Represents the dynamic priority of the i-th data packet; α is the influence coefficient of latency on priority; β is the influence coefficient of data packet size on priority; γ is the influence coefficient of importance on priority; Latency(P) i ) indicates data packet P i The current network latency; PacketSize(P i ) represents the size of the data packet Pi; Importance(P) i ) indicates data packet P i Importance level; τ is a time constant used to control the rate at which delay decays with priority; T is the time interval for inter-process communication under consideration.

[0033] The calculation-based adjustment of the data packet transmission rate based on the first priority includes adjusting the data packet transmission rate using the following formula:

[0034] Among them, R asjusted (P i) represents the adjusted transmission rate; BaseRate is the base transmission rate; k is the priority factor affecting the transmission rate; δ is the adjustment factor, representing the impact of packet loss rate on the transmission rate; PacketLossRate(P i ) indicates data packet P i Packet loss rate.

[0035] This invention also proposes an inter-process communication system based on the fusion of a visualization model and DDS, comprising:

[0036] A visualization model building module is used to build a first visualization model representing inter-process communication, which includes process nodes, data flow, event triggering conditions, and state changes.

[0037] A data structure definition module is used to define the data structure for data transmission in the first visualization model;

[0038] The DDS configuration module is used to configure the relationship between data publishers and subscribers based on the DDS standard.

[0039] An interface mapping module is used to map process nodes in the first visualization model to the communication interface of DDS.

[0040] The implementation of the transmission module is used for real-time data transmission based on DDS, real-time tracking of data transmission status, and integrity verification based on the data structure.

[0041] The data packet adjustment module is used to adjust the transmission rate and size of data packets in real time based on the data transmission status in order to improve the overall communication performance.

[0042] Compared with the prior art, the present invention has the following advantages:

[0043] By combining a visualization model with the publish-subscribe mechanism of DDS, this method optimizes the data flow path, reduces data transmission latency, and thus significantly improves the overall efficiency of inter-process communication.

[0044] Visual models make system architecture more intuitive, allowing developers to easily identify and adjust communication relationships between processes. This flexibility allows processes to be dynamically added or removed at runtime without requiring major modifications to the overall architecture.

[0045] This method utilizes DDS's dynamic discovery mechanism to automatically identify new publishers and subscribers at runtime, ensuring the continuity and reliability of data transmission. This adaptive characteristic enables the system to maintain efficient data interaction even when facing changing network environments.

[0046] By introducing QoS policies, the system can dynamically adjust the priority and transmission rate of data packets based on real-time monitoring of network conditions and data flow characteristics. This flexible resource management approach ensures that the system maintains good performance under different load conditions.

[0047] DDS's reliability strategy ensures the integrity and accuracy of data during transmission. Combined with a visualization model, it helps identify potential communication bottlenecks and data loss risks, further enhancing system reliability.

[0048] Visual models provide a clear view for system design and maintenance, enabling developers to quickly understand and adjust the system architecture. Such visualizations reduce design complexity and minimize potential errors.

[0049] The standardized nature of DDS enables seamless communication between different platforms and programming languages. Combined with a visual model, this approach promotes compatibility between different system components and supports the integration of heterogeneous systems.

[0050] With more efficient and reliable communication, end users can achieve better system response times and data processing capabilities. This improvement directly enhances the user experience, especially in applications with high real-time requirements.

[0051] Through real-time monitoring and feedback mechanisms, the system can dynamically adjust based on data transmission performance indicators, helping enterprises make more accurate business decisions and improve operational efficiency. Attached Figure Description

[0052] The above and other objects, features, and advantages of exemplary embodiments of the present disclosure will become readily apparent upon reading the following detailed description with reference to the accompanying drawings. In the drawings, several embodiments of the present disclosure are illustrated by way of example and not limitation, and like or corresponding reference numerals denote like or corresponding parts, wherein:

[0053] Figure 1 This is a flowchart illustrating an inter-process communication method based on the integration of a visualization model and DDS according to an embodiment of the present invention. Detailed Implementation

[0054] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this invention, and not all of them. Based on the embodiments of this invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.

[0055] The terminology used in the embodiments of this invention is for the purpose of describing particular embodiments only and is not intended to limit the invention. The singular forms “a,” “the,” and “the” as used in the embodiments of this invention and the appended claims are also intended to include the plural forms, and “multiple” generally includes at least two unless the context clearly indicates otherwise.

[0056] It should be understood that although the terms first, second, third, etc., may be used to describe... in the embodiments of the present invention, these... should not be limited to these terms. These terms are only used to distinguish... For example, first... may also be referred to as second... without departing from the scope of the embodiments of the present invention, and similarly, second... may also be referred to as first...

[0057] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.

[0058] Depending on the context, the words “if” or “suppose” as used here can be interpreted as “when” or “in response to determination” or “in response to detection.” Similarly, depending on the context, the phrases “if determination” or “if detection (of the stated condition or event)” can be interpreted as “when determination” or “in response to determination” or “when detection (of the stated condition or event)” or “in response to detection (of the stated condition or event).”

[0059] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that an article or device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such an article or device. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the article or device that includes said element.

[0060] The optional embodiments of the present invention will now be described in detail with reference to the accompanying drawings.

[0061] Example 1

[0062] like Figure 1 As shown, this invention discloses an inter-process communication evaluation method based on the fusion of a visualization model and DDS, comprising the following steps:

[0063] Step S101: Construct a first visualization model representing inter-process communication, the first visualization model including process nodes, data flow direction, event triggering conditions, and state changes;

[0064] Step S103: In the first visualization model, define the data structure for data transmission;

[0065] Step S105: Configure the relationship between data publishers and subscribers based on the DDS standard;

[0066] Step S107: Map the process nodes in the first visualization model to the communication interface of DDS;

[0067] Step S109: Real-time data transmission is performed based on DDS, and the data transmission status is tracked in real time. Integrity verification is performed based on the data structure.

[0068] Step S1011: Based on the data transmission status, adjust the data packet transmission rate and size in real time to improve overall communication performance.

[0069] DDS provides a standardized way to achieve inter-process message passing and data sharing, supporting efficient and reliable data exchange. By configuring QoS policies, DDS can optimize the reliability and latency of data transmission according to application requirements.

[0070] In the visualization model, process nodes can be viewed as data publishers and subscribers in DDS. By establishing explicit mapping relationships, the model can demonstrate how data flows between different processes, ensuring that components can exchange messages effectively through the DDS framework.

[0071] The visualization model reflects the dynamic discovery mechanism of DDS. When processes or nodes in the system change, the model can be updated in real time, displaying new communication relationships. This dynamism ensures the system's flexibility and adaptability during operation.

[0072] The visualization model can integrate data transmission monitoring functions, displaying data stream status, latency, and packet loss rate in real time.

[0073] Based on the visualization model and combined with the feedback mechanism of DDS, the priority of data packets can be dynamically calculated and the transmission strategy adjusted in real time. In this way, the model not only shows the static structure, but also reflects the dynamic behavior of the system during operation.

[0074] Example 2

[0075] This invention proposes an inter-process communication method based on the fusion of a visualization model and DDS, comprising the following steps:

[0076] Step S101: Construct a first visualization model representing inter-process communication, the first visualization model including process nodes, data flow direction, event triggering conditions, and state changes;

[0077] Step S103: In the first visualization model, define the data structure for data transmission;

[0078] Step S105: Configure the relationship between data publishers and subscribers based on the DDS standard;

[0079] Step S107: Map the process nodes in the first visualization model to the communication interface of DDS;

[0080] Step S109: Real-time data transmission is performed based on DDS, and the data transmission status is tracked in real time. Integrity verification is performed based on the data structure.

[0081] Step S1011: Based on the data transmission status, adjust the data packet transmission rate and size in real time to improve overall communication performance.

[0082] The data structures defined in the visualization model are not merely static descriptions, but core components of inter-process communication. Their specific functions include:

[0083] By explicitly defining data types, we can ensure the consistency of data transmission formats. For example, defining data types such as integers, floating-point numbers, and strings ensures that both the sender and receiver can process the data correctly.

[0084] Specifying the size of each data type (e.g., 4 bytes for integers, 8 bytes for floating-point numbers) helps with effective memory management and bandwidth control during transmission. The format (e.g., JSON, XML, binary, etc.) ensures error-free data parsing and serialization.

[0085] Lifecycle management defines the state of data during creation, transmission, use, and destruction. This ensures data is properly handled throughout the communication process, avoiding memory leaks or data conflicts. For example, it allows defining data validity periods and whether persistent storage is required.

[0086] Data structures can also include mechanisms such as checksums and hash values ​​to ensure data integrity during transmission. This helps detect data corruption or tampering, enhancing system reliability.

[0087] Data structures can define the rules for data interaction between different processes, including request and response patterns, packet priorities, and so on. These rules can be represented graphically in a visual model, making them easy to understand and maintain.

[0088] In a visual model, the definition of a data structure can be specified in the following ways:

[0089] Using graphical elements (such as rectangles, circles, etc.) in the model to represent different types of data and their attributes makes it easier for developers and maintainers to understand data flow and processing logic.

[0090] Arrows or lines are used to indicate the direction of data flow between processes, and combined with the definition of data structures, a clear data transmission path is formed.

[0091] Displaying the lifecycle states of data (such as creation, transfer, processing, destruction, etc.) in the model helps developers identify potential problems and optimize data processing workflows.

[0092] The data structure defined in step S103 for data transmission includes:

[0093] Clearly define the data type, size, and format of the data packet;

[0094] Develop a lifecycle management strategy. By defining the states of data creation, transmission, processing, and destruction, ensure effective data management across processes and avoid data loss or memory leaks.

[0095] Specifically, the lifecycle management strategy includes using corresponding management functions during the creation, transmission, and destruction phases.

[0096] Using graphical elements in a visualization model to represent the defined data structure makes the data flow and state changes clearly visible.

[0097] Arrows are used to indicate the flow path of data between different processes, and combined with the definition of data structures, a clear data transmission logic is formed.

[0098] Specifically, step S105 includes:

[0099] Determine the data type to be transmitted and define the corresponding topic in DDS;

[0100] Create one or more publisher instances for the corresponding topic and configure their properties;

[0101] Create a subscriber instance for the corresponding topic and configure the data processing method and QoS policy for the received data.

[0102] Step S107 includes:

[0103] In the visualization model, the data flow between each process node is analyzed to identify the publishers and subscribers of the data.

[0104] Define a corresponding DDS topic for each process node;

[0105] Configure the properties of each interface for mapping.

[0106] In the first visualization model, process nodes represent various processing units or functional modules in the system. Each process node needs a clear description of its function, input / output data types, and its role in the system. For example, suppose process node A is responsible for data acquisition, and process node B is responsible for data processing.

[0107] Each process node needs to associate with the DDS communication interface. These interfaces define how the node interacts with the DDS, including how data is published and subscribed. The communication interface typically includes the following:

[0108] Topic: Each process node needs to define one or more topics for publishing and receiving data.

[0109] Data type: Specifies the data structure associated with the topic to ensure that data can be correctly parsed across different nodes.

[0110] QoS policy: Configure appropriate QoS policies for each communication interface to meet transmission requirements (such as reliability, latency, etc.).

[0111] Mapping process nodes and DDS interfaces:

[0112] The specific steps of the mapping are as follows:

[0113] Identify data flow: In the visualization model, analyze the data flow between each process node to identify data producers (publishers) and consumers (subscribers). For example, process node A may need to publish the collected data to the topic "SensorData," while process node B subscribes to data from that topic.

[0114] Establish topic relationships: Define a corresponding DDS topic for each process node. For example, the output data of process node A can be mapped to the topic "SensorData", and the input of process node B can subscribe to this topic.

[0115] Configure interface properties: During the mapping process, configure the properties of each interface, such as data type and QoS policy. Ensure that the publisher of process node A is set to "reliable" mode, while the subscriber of process node B has appropriate latency tolerance.

[0116] Implement the mapping relationship using visual modeling tools or programming interfaces. Specific steps may include:

[0117] Choose a modeling tool that supports DDS and use its graphical interface for mapping operations.

[0118] In some cases, the corresponding DDS configuration code can be automatically generated based on the visualization model, simplifying the implementation process.

[0119] Ensure that all mapping relationships are documented in detail, including the function of each process node, topic relationships, and its QoS settings.

[0120] After the mapping is completed, verification is required to ensure the correctness and validity of the data flow:

[0121] Simulation test: By simulating the data transfer between test process nodes, check whether the data is sent and received as expected.

[0122] Performance evaluation: Monitor data transmission latency, packet loss rate and other performance indicators to ensure the effective implementation of QoS policies.

[0123] Example

[0124] Suppose that in a smart home system, the following process nodes exist:

[0125] Process node A: Temperature sensor data acquisition.

[0126] Process node B: Temperature control system.

[0127] Mapping process:

[0128] Define a topic: Create a topic “TemperatureData” to transmit temperature data.

[0129] Process node A:

[0130] Publisher: Configure the topic "TemperatureData", data type as floating point, QoS set to "Reliable".

[0131] Process node B:

[0132] Subscriber: Subscribe to the topic "TemperatureData" and set the latency tolerance to 100ms.

[0133] Through the above steps, process nodes A and B are successfully mapped to the DDS communication interface, enabling efficient data transmission and processing.

[0134] Step S109 includes integrity verification based on the checksum or hash value defined in the data structure. During data transmission, the checksum or hash value defined in the data structure is used to ensure the integrity and reliability of the data.

[0135] Specifically, step S1011 includes:

[0136] Based on the data transmission status, calculate the first priority of the data packet;

[0137] The transmission rate of data packets is adjusted based on the calculated first priority.

[0138] The priority of data packets is calculated using the following formula:

[0139]

[0140] Among them, P i P represents the i-th data packet being transmitted; dynamic Represents the dynamic priority of the i-th data packet; α is the influence coefficient of latency on priority; β is the influence coefficient of data packet size on priority; γ is the influence coefficient of importance on priority; Latency(P) i ) indicates data packet P i The current network latency; PacketSize(P i ) indicates data packet P i Size; Importance (P) i ) indicates data packet P i Importance level; τ is a time constant used to control the rate at which delay decays with priority; T is the time interval for inter-process communication under consideration.

[0141] Among them, Latency(P i Use network monitoring tools (such as Wireshark, Ping, Traceroute, etc.) to monitor packet transmission latency in real time. For protocols such as TCP / IP, you can obtain the PacketSize (P) using a packet capture tool. i Importance (P) iThe importance of each data packet can be determined based on business needs, typically through user settings or system rules. For example: critical data packets: importance level 3, general data packets: importance level 2, low-priority data packets: importance level 1. Regression analysis is performed based on historical data. A large number of data packet delays and their priorities are collected, and linear regression or other regression models are used to determine the optimal value of α; alternatively, the impact of delay on priority is measured under different network conditions, and α is adjusted until ideal performance is achieved. β can be obtained by experimentally measuring the transmission performance of data packets of different sizes, observing the relationship between transmission rate and data packet size, or by using regression analysis to determine the impact of data packet size on priority. γ can be determined based on user feedback and business needs analysis, and its impact on priority can be set empirically. k is evaluated by analyzing historical transmission data to assess the actual impact of prioritization on transmission rate. The value of k can be obtained by testing the transmission effect of data packets with different priorities, or by testing the actual transmission rate of data packets under different load conditions, recording the impact of priority changes on rate, and calculating k. δ can be used to collect packet loss rate data under different network conditions, analyze the impact of packet loss rate on transmission rate, or establish a model to observe the impact of changes in packet loss rate on transmission rate, and adjust δ to optimize performance.

[0142] The calculation-based adjustment of the data packet transmission rate based on the first priority includes adjusting the data packet transmission rate using the following formula:

[0143] Among them, R adjusted (P i ) represents the adjusted transmission rate; BaseRate is the base transmission rate; k is the priority factor affecting the transmission rate; δ is the adjustment factor, representing the impact of packet loss rate on the transmission rate; PacketLossRate(P i ) indicates data packet P i Packet loss rate.

[0144] Based on the definition of the data structure, QoS parameters such as reliability, latency, and bandwidth are set to ensure efficient data transmission.

[0145] In DDS, the relationship between publishers and subscribers is managed through topics. Each topic represents a specific data type; publishers publish data to a specific topic, and subscribers receive data from that topic. Configuring the relationship between publishers and subscribers involves the following steps:

[0146] First, determine the data type to be transmitted and define the corresponding topic in DDS. For example, define a topic named "SensorData" to transmit sensor data.

[0147] Create one or more publisher instances for a specific topic and configure their properties, such as data sending rate and data persistence.

[0148] Create a subscriber instance for the corresponding topic and configure the data processing method and strategy it receives.

[0149] QoS policies are used to control the characteristics of data transmission to meet the needs of different applications. The main policies include:

[0150] Reliability configures publishers and subscribers to ensure reliable data delivery. You can choose between "Reliable" or "Best Effort" modes. Reliable mode ensures all data is acknowledged as received, while Best Effort mode does not guarantee data delivery.

[0151] Latency sets the required data transmission delay, which can be reduced by configuring data transmission priorities or selecting appropriate network protocols. For example, choosing a faster transmission path or prioritizing the transmission of important data.

[0152] Bandwidth control ensures a certain level of transmission quality during network congestion by limiting the data transmission rate or using bandwidth allocation strategies. For example, a maximum transmission rate can be set for publishers to prevent network overload.

[0153] By combining the above QoS strategies, the efficiency and reliability of data transmission can be optimized:

[0154] QoS settings are dynamically adjusted based on real-time network conditions and data traffic. For example, when network congestion occurs, the data transmission rate can be temporarily reduced or the system can switch to best effort mode.

[0155] The monitoring mechanism collects data transmission performance metrics (such as latency and packet loss rate) and adjusts QoS policies based on feedback to adapt to constantly changing network conditions.

[0156] Different QoS policies can be set for different types of data streams. For example, a high reliability and low latency policy can be used for important data streams, while a more lenient standard can be used for non-critical data streams.

[0157] Assuming a DDS is used for data transmission in an autonomous vehicle system, the specific steps are as follows:

[0158] Define a topic: Create a topic “VehicleStatus” to transmit vehicle status information.

[0159] Create a publisher: Configure a publisher, set the maximum sending rate to 10Hz, and ensure data reliability in "reliable" mode.

[0160] Create a subscriber: Configure a subscriber to ensure that it can process the received data in real time, and set the latency tolerance to 50ms.

[0161] Configure QoS policies:

[0162] Reliability: Select "Reliable" mode.

[0163] Delay: By adjusting priorities, ensure that important status updates are sent immediately.

[0164] Bandwidth control: Limit the publisher's bandwidth to 500kbps to prevent network congestion.

[0165] Example 3

[0166] This invention also proposes an inter-process communication system based on the fusion of a visualization model and DDS, including...

[0167] A visualization model building module is used to build a first visualization model representing inter-process communication, which includes process nodes, data flow, event triggering conditions, and state changes.

[0168] A data structure definition module is used to define the data structure for data transmission in the first visualization model;

[0169] The DDS configuration module is used to configure the relationship between data publishers and subscribers based on the DDS standard.

[0170] An interface mapping module is used to map process nodes in the first visualization model to the communication interface of DDS.

[0171] The implementation of the transmission module is used for real-time data transmission based on DDS, real-time tracking of data transmission status, and integrity verification based on the data structure.

[0172] The data packet adjustment module is used to adjust the transmission rate and size of data packets in real time based on the data transmission status in order to improve the overall communication performance.

[0173] Example 5

[0174] This disclosure provides a non-volatile computer storage medium storing computer-executable instructions that can perform the steps described in the above embodiments.

[0175] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer 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. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.

[0176] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.

[0177] Computer program code for performing the operations of this disclosure can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (AN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0178] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0179] The units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the units are not, in some cases, intended to limit the specific unit.

[0180] The preferred embodiments of the present invention have been described above to make the spirit of the present invention clearer and easier to understand, and are not intended to limit the present invention. All modifications, substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope summarized by the appended claims.

Claims

1. An inter-process communication method based on the fusion of a visualization model and DDS, characterized in that, Includes the following steps: Step S101: Construct a first visualization model representing inter-process communication, the first visualization model including process nodes, data flow direction, event triggering conditions, and state changes; Step S103: In the first visualization model, a data structure for data transmission is defined. The data structure includes the data type, size, format, and lifecycle management strategy of the data packet. The data structure is used to ensure the consistency of the data format and correct parsing during the transmission process. The lifecycle management strategy includes using corresponding management functions in the creation, transmission, and destruction stages to ensure the effective management of data in the creation, transmission, and destruction stages. Step S105: Configure the relationship between data publishers and subscribers based on the DDS standard; Step S107: Map the process nodes in the first visualization model to the communication interface of DDS; Step S109: Real-time data transmission based on DDS, and real-time tracking of data transmission status. Real-time tracking of data transmission status includes real-time monitoring of data stream latency and packet loss rate, and integrity verification based on checksum or hash value defined in the data structure. Step S1011: Based on the data transmission status, calculate the dynamic priority of the data packet. The dynamic priority is determined comprehensively based on the current network latency, data packet size, and data packet importance level. Based on the dynamic priority, adjust the data packet transmission rate and size in real time to improve the overall communication performance.

2. The method as described in claim 1, characterized in that, Step S105 specifically includes: Determine the data type to be transmitted and define the corresponding topic in DDS; Create one or more publisher instances for the corresponding topic and configure their properties; Create a subscriber instance for the corresponding topic and configure the data processing method and QoS policy for the received data.

3. The method as described in claim 1, characterized in that, Step S107 includes: In the visualization model, the data flow between each process node is analyzed to identify the publishers and subscribers of the data. Define a corresponding DDS topic for each process node; Configure the properties of each interface for mapping.

4. The method as described in claim 1, characterized in that, The priority of data packets is calculated using the following formula: Among them, P i P represents the i-th data packet being transmitted; dynamic Represents the dynamic priority of the i-th data packet; α is the influence coefficient of latency on priority; β is the influence coefficient of data packet size on priority; γ is the influence coefficient of importance on priority; Latency(P) i ) indicates data packet P i The current network latency; PacketSize(P i ) indicates data packet P i Size; Importance (P) i ) indicates data packet P i Importance level; τ is a time constant used to control the rate at which delay decays with priority; T is the time interval for inter-process communication under consideration.

5. The method as described in claim 4, characterized in that, Adjusting the data packet transmission rate based on the first priority calculated includes adjusting the data packet transmission rate using the following formula: Among them, R adjusted (P i PacketLossRate(P) is the adjusted transmission rate; BaseRate is the base transmission rate; k is the priority factor affecting the transmission rate; δ is the adjustment factor, representing the impact of packet loss rate on the transmission rate; PacketLossRate(P) is the adjusted transmission rate. i ) indicates data packet P i Packet loss rate.

6. An inter-process communication system based on the integration of a visualization model and DDS, characterized in that, include: A visualization model building module is used to build a first visualization model representing inter-process communication, which includes process nodes, data flow, event triggering conditions, and state changes. The data structure definition module is used to define a data structure for data transmission in the first visualization model. The data structure includes the data type, size, format, and lifecycle management strategy of the data packet. The data structure is used to ensure the consistency of data format and correct parsing during the transmission process. The lifecycle management strategy includes the use of corresponding management functions in the creation, transmission, and destruction stages to ensure the effective management of data in the creation, transmission, and destruction stages. The DDS configuration module is used to configure the relationship between data publishers and subscribers based on the DDS standard. An interface mapping module is used to map process nodes in the first visualization model to the communication interface of DDS. The real-time transmission module is used for real-time data transmission based on DDS and real-time tracking of data transmission status. Real-time tracking of the data transmission status includes real-time monitoring of data stream latency and packet loss rate, and performing integrity verification based on the checksum or hash value defined in the data structure. The data packet adjustment module is used to calculate the dynamic priority of data packets based on the data transmission status. The dynamic priority is determined comprehensively based on the current network latency, data packet size and data packet importance level. Based on the dynamic priority, the transmission rate and size of data packets are adjusted in real time to improve the overall communication performance.

Citation Information

Patent Citations

  • Visualization method and device of domain controller DDS communication network architecture and vehicle

    CN116684312A

  • Intelligent device RMS evaluation method and performance evaluation system

    CN118210693A