Communication delay optimization method and device, equipment and storage medium
By dynamically selecting the optimal link through the latency testing service and traffic management module within the vehicle domain controller, the problem of insignificant multi-chip communication latency optimization is solved, and low-cost, highly flexible communication optimization is achieved.
Patent Information
- Application Number
- CN202510659350.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-21
- Publication Date
- 2025-09-05
AI Technical Summary
Existing technologies have little effect on optimizing multi-chip communication delays within vehicle domain controllers, especially in hybrid communication scenarios. Existing methods are also costly, inflexible, and unable to be dynamically adjusted.
The delay test service at the sending end periodically sends delay test packets. The receiving end obtains and feeds back the current frame sending delay, generates a congestion factor, and uses the traffic management module and preset conditions to select the optimal link for data transmission.
It effectively reduces the communication delay between chips in the vehicle domain controller, improves the flexibility and reliability of the communication system, and reduces hardware and software development costs.
Smart Images

Figure CN120602399A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of vehicle-mounted communication processing technology, and in particular to a communication delay optimization method, device, equipment and storage medium. Background Art
[0002] With the rapid development of electric and intelligent vehicles, more and more intelligent systems are being applied to vehicles to enable intelligent driving. To achieve safe and reliable intelligent driving, these intelligent systems place higher demands on latency and bandwidth for communication within the vehicle's domain controller. Typically, a domain controller contains multiple SoCs and MCUs, and these chips often exchange a large amount of data. Therefore, achieving low-latency communication between these chips is a critical foundation for achieving intelligent driving.
[0003] Currently, chips within mainstream vehicle domain controllers communicate with each other via onboard Ethernet and PCIe. Therefore, common approaches to reducing latency include deploying edge computing and using QoS technologies. However, deploying edge computing services and using QoS technologies often optimizes the latency of a specific data link. In situations where mixed communication exists between multiple chips, the overall latency optimization effect is not significant. Hybrid communication between PCIe and Ethernet networks can effectively optimize communication latency, but this requires high hardware costs for PCIe switches and involves modifying PCIe drivers, increasing software development costs. Layering communication networks can optimize resource utilization from a system perspective, effectively reducing latency. However, this approach requires pre-planning different data transmission protocols, resulting in relatively low flexibility and the inability to dynamically adjust during system operation. For example, prolonged congestion on a data link can result in significant latency in data transmission along that link.
[0004] Therefore, there is an urgent need for a communication delay optimization method that can effectively reduce the communication delay between chips in the vehicle domain controller. Summary of the Invention
[0005] The main purpose of the present invention is to provide a communication delay optimization method, device, equipment and storage medium, aiming to solve the technical problem of large communication delay between chips in vehicle domain controllers in the prior art.
[0006] To achieve the above object, the present invention provides a communication delay optimization method, which includes the following steps:
[0007] Using the delay test service of the transmitting end to periodically send delay test packets through each link to the delay test service of the receiving end;
[0008] When the delay test service at the receiving end receives the delay test packet, it obtains the current frame transmission delay, generates a delay test feedback packet based on the current frame transmission delay and the transmission delay average threshold, and sends the delay test feedback packet to the delay test service at the sending end;
[0009] When the delay test service at the transmitting end receives the delay test feedback packet, determining the congestion factor of each link according to the current link recommended flow and the corresponding link bandwidth in the delay test feedback packet;
[0010] Based on the congestion factors of the links, the optimal link for current data transmission is determined using the traffic management module of the sending end and preset traffic migration conditions.
[0011] Optionally, when the delay test service at the receiving end receives the delay test packet, obtaining the current frame transmission delay, and generating a delay test feedback packet based on the current frame transmission delay and the transmission delay average threshold, includes:
[0012] When the delay test service at the receiving end receives the delay test packet, obtaining a current frame sending stamp and a current frame receiving timestamp, and determining a current frame sending delay based on the current frame sending stamp and the current frame receiving timestamp;
[0013] Comparing the current frame transmission delay with the transmission delay average threshold to obtain a comparison result;
[0014] The current link recommended flow rate of the transmitting end is determined according to the comparison result, and a delay test feedback packet is generated based on the current link recommended flow rate.
[0015] Optionally, before the step of periodically sending a delay test packet to the delay test service of the receiving end through each link using the delay test service of the sending end, the method further includes:
[0016] Deploy latency testing services at both the sending and receiving ends;
[0017] Under normal working conditions, the delay test service of the sending end is used to periodically send delay test packets to the delay test service of the receiving end through each link to determine the average sending delay threshold, RTT average value, and RTO average value corresponding to each link.
[0018] Optionally, when the delay test service at the transmitting end receives the delay test feedback packet, the step of determining the congestion factor of each link according to the current link recommended traffic and the corresponding link bandwidth in the delay test feedback packet includes:
[0019] When the delay test service at the transmitting end receives the delay test feedback packet, determining the current link transmission delay according to the transmitting end sending timestamp and the receiving end receiving timestamp in the delay test feedback packet;
[0020] Determine the congestion factor of each link based on the first congestion factor calculation formula and the current link transmission delay, the current link recommended flow rate in the delay test feedback packet, and the corresponding link bandwidth;
[0021] The calculation formula of the first congestion factor is:
[0022] p congestion =t timedelay *Handlingcapacity / Bandwith;
[0023] Where p congestion represents the congestion factor, t timedelay Indicates the current link transmission delay, HandlingCapacity indicates the current link recommended traffic, and Bandwith indicates the link bandwidth.
[0024] Optionally, after the step of sending the latency test feedback packet to the latency test service of the transmitting end, the method further includes:
[0025] When the delay test service at the sending end does not receive the delay test feedback packet, obtaining a current timeout retransmission time;
[0026] Determine the congestion factor of each link based on the second congestion factor calculation formula according to the current timeout retransmission time, the current link recommended traffic, and the corresponding link bandwidth;
[0027] The calculation formula of the second congestion factor is:
[0028] p congestion =t RTO *Handlingcapacity / Bandwith;
[0029] Where p congestion represents the congestion factor, t RTO Represents the current timeout retransmission time, Handlingcapacity indicates the current link recommended traffic, and Bandwith indicates the link bandwidth.
[0030] Optionally, the step of determining the optimal link for current data transmission based on the congestion factor of each link by using the traffic management module of the sending end and a preset traffic migration condition includes:
[0031] Determining, by the traffic management module of the transmitting end, whether the congestion factor of the current link is greater than the congestion factor of a link other than the current link;
[0032] If so, selecting the link with the smallest congestion factor and determining whether the data to be transmitted can be migrated to the link with the smallest congestion factor based on a preset traffic migration condition;
[0033] If the data to be transmitted can be migrated to the link with the smallest congestion factor, the link with the smallest congestion factor is used as the optimal link for current data transmission;
[0034] The preset traffic migration conditions are:
[0035] f tbr <f sug -f cur ;
[0036] Where, f tbr Represents the data flow to be transmitted, f sug represents the recommended flow of the optimal link, f cur Indicates the current link traffic.
[0037] Optionally, the step of determining the current link recommended flow of the sending end according to the comparison result includes:
[0038] If the comparison result indicates that the current frame transmission delay is greater than the upper limit of the transmission delay average threshold, then based on the preset traffic adjustment suggestion, reduce the data transmission amount of the current link to obtain the current link recommended traffic of the sending end;
[0039] If the comparison result indicates that the current frame transmission delay is less than the lower limit of the transmission delay average threshold, the data transmission amount of the current link is increased based on the preset traffic adjustment suggestion to obtain the current link recommended traffic of the sending end.
[0040] In addition, to achieve the above-mentioned purpose, the present invention also proposes a communication delay optimization device, which includes:
[0041] A test packet sending module, configured to periodically send delay test packets to the delay test service of the receiving end through each link using the delay test service of the sending end;
[0042] a feedback packet sending module, configured to obtain the current frame transmission delay when the delay test service at the receiving end receives the delay test packet, generate a delay test feedback packet based on the current frame transmission delay and the average transmission delay threshold, and send the delay test feedback packet to the delay test service at the sending end;
[0043] a congestion factor calculation module, configured to determine the congestion factor of each link according to the link recommended traffic and the corresponding link bandwidth in the delay test feedback packet when the delay test service at the sending end receives the delay test feedback packet;
[0044] The link selection module is used to determine the optimal link for current data transmission based on the congestion factor of each link, using the traffic management module of the sending end and the preset traffic migration conditions.
[0045] In addition, to achieve the above-mentioned purpose, the present invention also proposes a communication delay optimization device, which includes: a memory, a processor, and a communication delay optimization program stored in the memory and executable on the processor, wherein the communication delay optimization program is configured to implement the steps of the communication delay optimization method described above.
[0046] In addition, to achieve the above-mentioned purpose, the present invention also proposes a storage medium, on which a communication delay optimization program is stored. When the communication delay optimization program is executed by a processor, the steps of the communication delay optimization method described above are implemented.
[0047] The present invention discloses a method for periodically sending delay test packets to a delay test service at a receiving end through each link by utilizing a delay test service at a sending end; when the delay test service at the receiving end receives the delay test packet, obtaining the current frame sending delay, generating a delay test feedback packet based on the current frame sending delay and an average sending delay threshold, and sending the delay test feedback packet to the delay test service at the sending end; when the delay test service at the sending end receives the delay test feedback packet, determining the congestion factor of each link according to the current link recommended traffic and the corresponding link bandwidth in the delay test feedback packet; and based on the congestion factor of each link, determining the optimal link for current data transmission by utilizing the traffic management module of the sending end and preset traffic migration conditions. Since the delay test service at the sending end of the present invention periodically sends delay test packets through each link, the delay test service at the receiving end sends a corresponding delay test feedback packet to the sending end after receiving the delay test packet. After receiving the delay test feedback packet, the sending end determines the optimal link for current data transmission through the traffic management module and preset traffic migration conditions to send data. Compared with the existing technology, the present invention effectively reduces the communication delay between chips in the vehicle domain controller. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 This is a flow chart of a first embodiment of a method for optimizing communication delay according to the present invention;
[0049] Figure 2 Schematic diagram of the system architecture of the communication delay optimization method of the present invention;
[0050] Figure 3 A flow chart showing a flow chart of traffic adjustment suggestions in the communication delay optimization method of the present invention;
[0051] Figure 4 This is a flow chart of a second embodiment of the communication delay optimization method of the present invention;
[0052] Figure 5 This is a flow chart of a third embodiment of the communication delay optimization method of the present invention;
[0053] Figure 6 Schematic diagram of dynamic link adjustment of the traffic management module in the communication delay optimization method of the present invention;
[0054] Figure 7 This is a schematic diagram of an application scenario of the traffic management module in the communication delay optimization method of the present invention;
[0055] Figure 8 This is a structural block diagram of the first embodiment of the communication delay optimization device of the present invention;
[0056] Figure 9 It is a structural diagram of a communication delay optimization device in a hardware operating environment involved in an embodiment of the present invention.
[0057] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION
[0058] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0059] The embodiment of the present invention provides a communication delay optimization method, referring to Figure 1 , Figure 1 Schematic diagram of the flow of the first embodiment of the communication delay optimization method of the present invention.
[0060] In this embodiment, the communication delay optimization method includes steps S10 to S40:
[0061] Step S10: using the delay test service of the transmitting end to periodically send delay test packets to the delay test service of the receiving end through each link.
[0062] It should be noted that the execution subject of this embodiment can be a computer server device with data processing, network communication and program running functions used in the vehicle network communication scenario. The computer service device can be a vehicle-mounted mobile device in the vehicle, or an electronic device that can realize the above functions (such as a communication delay optimization device). The communication delay optimization device mainly includes a domain controller, wherein the domain controller contains a switching chip (for network data forwarding between chips), an MCU (Micro Controller Unit) and a SOC (System on Chip). Chips can communicate with each other through vehicle Ethernet, PCIE, etc. The following takes the vehicle-mounted communication system (hereinafter referred to as the system) including a communication delay optimization device as an example to illustrate this embodiment and the following embodiments.
[0063] It should be understood that the vehicle domain controller in the system contains multiple chips, such as SOC (System on Chip), MCU (Micro Controller Unit), etc. These chips exchange data through communication links such as on-board Ethernet and PCIE.
[0064] It is easy to understand that the transmitter can be the chip (such as a SOC or MCU) in the vehicle domain controller that actively initiates data transmission, responsible for generating data and sending it through the communication link. The receiver can be the chip in the vehicle domain controller that receives data and responds or processes the data based on the transmitter.
[0065] It's important to note that each chip in a vehicle domain controller (such as a SoC or MCU) can dynamically switch between being a transmitter or receiver, depending on the direction of data transmission. The transmitter and receiver are chip entities within the vehicle domain controller (such as a SoC or MCU). By deploying a latency testing service, dynamic link selection and communication optimization are achieved, ensuring low-latency, highly reliable data exchange between multiple chips.
[0066] For example, reference Figure 2 , Figure 2This is a schematic diagram of the system architecture in the communication delay optimization method of the present invention. In the figure, the sending end includes a delay test service and a traffic management module of the sending end, and the receiving end includes a delay test service of the receiving end. The delay test service of the sending end is used to send a delay test packet of a fixed size (such as 10KB) at a period (such as 500ms); the delay test service of the receiving end is used to calculate the sending delay of the current frame, and generate a delay test feedback packet of each data link, and send the delay test feedback packet of each data link to the delay test service of the sending end; then the delay test service of the sending end updates the congestion factor of the corresponding link based on the delay test feedback packet of each data link, and finally the traffic management module selects the link with the best delay based on the congestion factor of each link to send data.
[0067] In a specific implementation, before step S10, steps S01 to S02 are also included:
[0068] Step S01: Deploy delay testing services at the sending end and the receiving end respectively.
[0069] Step S02: Under normal working conditions, the delay test service of the sending end is used to periodically send delay test packets to the delay test service of the receiving end through each link to determine the average sending delay threshold, RTT average value, and RTO average value corresponding to each link.
[0070] It should be noted that the average transmission delay threshold can be the historical average transmission delay value of each link, calculated by periodically sending delay test packets under normal operating conditions. This value serves as a benchmark for determining whether the current link is normal. The average RTT value can be the total average time from the delay test packet being sent from the sender to the return confirmation from the receiver, reflecting the overall transmission efficiency of the link. The average RTO value can be the average waiting time for the delay test packet to be retransmitted when the sender does not receive an acknowledgment from the receiver, reflecting the link's response strategy under abnormal conditions (such as packet loss).
[0071] It should be explained that step S02 is the average value of relevant data collected under normal working conditions, while step S10 is performed under actual working conditions.
[0072] For the convenience of description, the delay test service at the sending end is referred to as SDTS, and the delay test service at the receiving end is referred to as RDTS.
[0073] It should be noted that the delay test packet may include the sending end core ID, the receiving end core ID, the sending end timestamp, the receiving end receiving timestamp, the current link throughput (i.e., the current link traffic), the link ID (representing which data link) and the session ID, etc.
[0074] It is easy to understand that the interval period and the size of the latency test packets sent by the SDTS to the RDTS via each link can be customized based on actual conditions and are not limited in this embodiment. For example, in a specific implementation, the SDTS sends a 10KB latency test packet to the RDTS via each link every 500ms.
[0075] Step S20: When the delay test service at the receiving end receives the delay test packet, it obtains the current frame sending delay, generates a delay test feedback packet based on the current frame sending delay and the sending delay average threshold, and sends the delay test feedback packet to the delay test service at the sending end.
[0076] It should be explained that the delay test feedback packet is a data packet generated by the delay test service (RDTS) at the receiving end after receiving the delay test packet from the delay test service (SDTS) at the sending end. It is used to transmit key information about the performance of each link to the sending end to support dynamic optimization of communication path selection.
[0077] It should be noted that the delay test feedback package may include the sending end chip ID, the receiving end chip ID, the sending end timestamp, the receiving end receiving timestamp, the receiving end sending timestamp, the current link recommended throughput (i.e. the current link recommended traffic), the link ID and the session ID.
[0078] In a specific implementation, step S20 includes steps S201 to S203:
[0079] Step S201: When the delay test service at the receiving end receives the delay test packet, a current frame sending stamp and a current frame receiving timestamp are obtained, and a current frame sending delay is determined based on the current frame sending stamp and the current frame receiving timestamp.
[0080] Step S202: Compare the current frame transmission delay with the transmission delay average threshold to obtain a comparison result.
[0081] Step S203: determining the current link recommended traffic of the transmitting end according to the comparison result, and generating a delay test feedback packet based on the current link recommended traffic.
[0082] It should be understood that the current frame transmission delay may refer to the time interval from when a single data frame is sent from the transmitter to when it is successfully received by the receiver. The current frame transmission delay is calculated as follows:
[0083] t de l ay =t recv -t send ;
[0084] Where, t delayIndicates the current frame sending delay, t recv Indicates the timestamp of receiving the current frame, t send Indicates the sending stamp of the current frame.
[0085] In a specific implementation, if the comparison result indicates that the current frame sending delay is greater than the upper limit of the average sending delay threshold, the data sending amount of the current link is reduced based on the preset traffic adjustment recommendation to obtain the current link recommended traffic of the sending end; if the comparison result indicates that the current frame sending delay is less than the lower limit of the average sending delay threshold, the data sending amount of the current link is increased based on the preset traffic adjustment recommendation to obtain the current link recommended traffic of the sending end.
[0086] For example, reference Figure 3 , Figure 3 The flow chart of the traffic adjustment suggestion in the communication delay optimization method of the present invention is shown in FIG. Assuming that the range of the average threshold of the sending delay is [(1-k)t timedelay ,(1+k)t timedelay ], t timedelay is the current link transmission delay, and k is a custom parameter (for example, k = 0.05, k = 0.06, etc.). In the figure, when the RDTS receives the delay test packet, it obtains the transmission delay (i.e., the current frame transmission delay); compares the transmission delay with the transmission delay average threshold; if the comparison result indicates that the current frame transmission delay is greater than the upper limit of the transmission delay average threshold, then it recommends that the current link throughput be multiplied by 0.95, i.e., based on the preset traffic adjustment, it recommends that the data transmission amount of the current link be reduced; if the comparison result indicates that the current frame transmission delay is less than the lower limit of the transmission delay average threshold, then it recommends that the current link throughput be multiplied by 1.05, i.e., based on the preset traffic adjustment, it recommends that the data transmission amount of the current link be increased; if the comparison result indicates that the current frame transmission delay is within the range of the transmission delay average threshold, then it recommends that the current link throughput be multiplied by 1, i.e., the data transmission amount of the current link be not adjusted.
[0087] Step S30: When the delay test service at the transmitting end receives the delay test feedback packet, the congestion factor of each link is determined according to the current link recommended flow and the corresponding link bandwidth in the delay test feedback packet.
[0088] It should be understood that the congestion factor is a core indicator used to quantify the degree of congestion in a communication link. By dynamically calculating the relationship between link delay, throughput, and bandwidth, the real-time load status of the link is evaluated, thereby supporting the selection of the optimal communication path.
[0089] In a specific implementation, when the delay test service at the sending end receives the delay test feedback package, the current link transmission delay can be determined based on the sending timestamp of the sending end and the receiving timestamp of the receiving end in the delay test feedback package; based on the first congestion factor calculation formula, the congestion factor of each link is determined based on the current link transmission delay and the current link recommended traffic in the delay test feedback package and the corresponding link bandwidth.
[0090] The calculation formula for the first congestion factor is:
[0091] p congestion =t timedelay *Handlingcapacity / Bandwith;
[0092] Where p congestion represents the congestion factor, t timedelay Indicates the current link transmission delay, HandlingCapacity indicates the current link recommended traffic, and Bandwith indicates the link bandwidth.
[0093] Step S40: Based on the congestion factors of the links, the optimal link for current data transmission is determined using the traffic management module of the sending end and preset traffic migration conditions.
[0094] It should be noted that the traffic management module is a software-defined communication control unit within the vehicle domain controller, integrated into the communication middle layer, and is responsible for dynamically adjusting the data transmission path between multiple chips based on the real-time link status (such as delay, congestion factor, traffic load, etc.).
[0095] In a specific implementation, since the data to be sent by the sending end needs to pass through the traffic management module, the traffic management module can select the link with the smallest congestion factor from each link as the optimal link for current data transmission based on the principle of minimum congestion factor, and finally dynamically adjust the data sending path based on the optimal link.
[0096] It should be noted that the preset traffic migration conditions can be used to determine whether the data to be transmitted can be migrated to the link with the lowest congestion factor. Specifically, the relationship between the traffic volume of the data to be transmitted, the recommended traffic volume of the optimal link, and the current traffic volume of the link is compared to determine whether the data can be migrated to the link with the lowest congestion factor for transmission.
[0097] It should be understood that by selecting the link with the smallest congestion factor as the optimal link, queuing time and transmission latency during data transmission can be effectively reduced, improving the real-time nature and responsiveness of communications. This is crucial for latency-sensitive applications such as real-time data transmission in autonomous driving and vehicle remote control. Presetting traffic migration conditions can avoid frequent and disorderly traffic switching, ensuring system stability and reliability when selecting the optimal link, reducing the risk of brief communication interruptions or data loss due to link switching, and enabling more stable operation of the communication system, providing continuous and reliable services to upper-layer applications.
[0098] Furthermore, the optimal link is determined based on the congestion factor and preset traffic migration conditions. That is, the traffic is reasonably allocated to the optimal link according to the actual congestion status and traffic load of each link. This can achieve optimal configuration of communication resources, improve the resource utilization of the entire communication system, avoid excessive congestion of some links while other links are idle and wasted, and thus improve the overall performance of the system.
[0099] This embodiment discloses using a delay test service at a sending end to periodically send delay test packets to a delay test service at a receiving end through each link; when the delay test service at the receiving end receives the delay test packet, it obtains the current frame sending delay, generates a delay test feedback packet based on the current frame sending delay and an average sending delay threshold, and sends the delay test feedback packet to the delay test service at the sending end; when the delay test service at the sending end receives the delay test feedback packet, it determines the congestion factor of each link based on the current link recommended traffic and the corresponding link bandwidth in the delay test feedback packet; based on the congestion factor of each link, the traffic management module of the sending end and preset traffic migration conditions are used to determine the optimal link for current data transmission. Since the delay test service at the sending end of this embodiment periodically sends delay test packets through each link, the delay test service at the receiving end sends a corresponding delay test feedback packet to the sending end after receiving the delay test packet. After receiving the delay test feedback packet, the sending end determines the optimal link for current data transmission through the traffic management module and preset traffic migration conditions to send data. Compared with the existing technology, this embodiment effectively reduces the communication delay between chips in the vehicle domain controller.
[0100] refer to Figure 4 , Figure 4 2 is a flow chart of the second embodiment of the communication delay optimization method of the present invention.
[0101] Based on the first embodiment described above, in this embodiment, after step S20, steps S211 to S212 are included:
[0102] Step S211: When the delay test service at the sending end does not receive the delay test feedback packet, obtain the current timeout retransmission time.
[0103] Step S212: Based on the second congestion factor calculation formula, the congestion factor of each link is determined according to the current timeout retransmission time, the current link recommended flow rate, and the corresponding link bandwidth.
[0104] It should be noted that when the delay test service at the sending end fails to receive the delay test feedback packet within the current timeout retransmission time, that is, when the delay test feedback packet is lost, the delay test service at the sending end will resend the delay test packet.
[0105] The calculation formula of the second congestion factor is:
[0106] p congestion =t RTO *Handlingcapacity / Bandwith;
[0107] Where p congestion represents the congestion factor, t RTO Represents the current timeout retransmission time, Handlingcapacity indicates the current link recommended traffic, and Bandwith indicates the link bandwidth.
[0108] Among them, the current timeout retransmission time t RTO The calculation process is as follows:
[0109] First, calculate the smoothed round-trip time of the link, that is, the smoothed RTT:
[0110] t SRtT(i+1) =t SRtT(i) +α(t RTT -t SRTT );
[0111] Where, t SRTT represents the smoothed link round trip time, t RTT represents the RTT value of the current measurement, and α represents the smoothing factor.
[0112] Then, calculate the difference between the smoothed RTT and the actual measured RTT, that is, the difference RTT:
[0113] t DevRTT =(1-β)t DevRTT +β(|t RTT -t SRTT |);
[0114] Where β is the weighted mobility factor, t DevRTT Is the difference between smoothed RTT and actual measured RTT
[0115] Finally, the current timeout retransmission time is calculated based on the smoothed RTT and the difference RTT:
[0116]
[0117] Where μ is the smoothed RTT time weight factor, is the difference RTT time weight factor.
[0118] It is understandable that α, β, μ and It can be customized according to actual conditions, and this embodiment does not limit this. For example, referring to the empirical values given in Linux in the industry, α=0.125, β=0.25, μ=1,
[0119] This embodiment discloses using a delay test service at a sending end to periodically send delay test packets to a delay test service at a receiving end through each link; when the delay test service at the receiving end receives the delay test packet, it obtains the current frame sending delay, generates a delay test feedback packet based on the current frame sending delay and an average sending delay threshold, and sends the delay test feedback packet to the delay test service at the sending end; when the delay test service at the sending end does not receive the delay test feedback packet, it obtains the current timeout retransmission time; based on a second congestion factor calculation formula, the congestion factor of each link is determined according to the current timeout retransmission time, the current link recommended traffic, and the corresponding link bandwidth; based on the congestion factor of each link, the optimal link for current data transmission is determined using the traffic management module of the sending end and preset traffic migration conditions. Compared with the existing technology, when there is packet loss in the delay test feedback packet, this embodiment determines the congestion factor of each link based on the second congestion factor calculation formula according to the current timeout retransmission time, the current link recommended traffic, and the corresponding link bandwidth, effectively improving the stability and reliability of multi-chip communication within the vehicle domain controller.
[0120] refer to Figure 5 , Figure 5 2 is a flow chart of the third embodiment of the communication delay optimization method of the present invention.
[0121] Based on the above embodiments, in this embodiment, step S40 includes steps S401 to S403:
[0122] Step S401: using the traffic management module of the transmitting end to determine whether the congestion factor of the current link is greater than the congestion factor of a link other than the current link.
[0123] Step S402: If yes, then select the link with the smallest congestion factor, and determine whether the data to be transmitted can be migrated to the link with the smallest congestion factor based on a preset traffic migration condition.
[0124] Step S403: If the data to be transmitted can be migrated to the link with the smallest congestion factor, the link with the smallest congestion factor is used as the optimal link for current data transmission.
[0125] In the specific implementation, please refer to Figure 6 , Figure 6 This is a schematic diagram of the dynamic adjustment of the link of the traffic management module in the communication delay optimization method of the present invention. In the figure, it is possible to first determine whether the data to be transmitted supports multi-link transmission based on the data sending request; if multi-link transmission is not supported, the original link is used for data transmission. If multi-link transmission is supported, the congestion factor of the supporting link is obtained, and then it is determined whether the current link congestion factor is greater than the congestion factor of other links; if the current link congestion factor is less than the congestion factor of other links, the original link is used for data transmission. If the current link congestion factor is greater than the congestion factor of other links, it is determined whether the current data can be migrated based on the preset traffic migration conditions; if the current data cannot be migrated, the original link is used for data transmission; if the current data can be migrated, a new link is selected for data transmission.
[0126] It should be noted that the preset traffic migration conditions are:
[0127] f tbr <f sug -f cur ;
[0128] Where, f tbr Represents the data flow to be transmitted, f sug represents the recommended flow of the optimal link, f cur Indicates the current link traffic.
[0129] For example, reference Figure 7 , Figure 7 This is a schematic diagram of the traffic management module application scenario in the communication latency optimization method of the present invention. The figure shows a typical multi-chip communication architecture within a vehicle domain controller. The core of the architecture is to achieve dynamic coordination between PCIE and network links through the traffic management module, ensuring efficient and reliable data transmission between chips.
[0130] This embodiment discloses utilizing a delay test service at a transmitting end to periodically send delay test packets to a delay test service at a receiving end through each link. When the delay test service at the receiving end receives the delay test packet, it obtains the current frame transmission delay, generates a delay test feedback packet based on the current frame transmission delay and an average transmission delay threshold, and sends the delay test feedback packet to the delay test service at the transmitting end. When the delay test service at the transmitting end receives the delay test feedback packet, it determines the congestion factor of each link based on the current link recommended traffic and the corresponding link bandwidth in the delay test feedback packet. The traffic management module at the transmitting end determines whether the congestion factor of the current link is greater than the congestion factor of links other than the current link. If so, the link with the smallest congestion factor is selected, and based on preset traffic migration conditions, it is determined whether the data to be transmitted can be migrated to the link with the smallest congestion factor. If the data to be transmitted can be migrated to the link with the smallest congestion factor, the link with the smallest congestion factor is used as the optimal link for current data transmission. Compared with the existing technology, this embodiment determines whether the data to be transmitted can be migrated based on preset traffic migration conditions, and selects the link with the smallest congestion factor to send data, thereby improving the efficiency and reliability of multi-chip communication within the vehicle domain controller and providing a low-cost, highly flexible communication foundation for automotive intelligence.
[0131] In addition, an embodiment of the present invention further provides a storage medium, on which a communication delay optimization program is stored. When the communication delay optimization program is executed by a processor, the steps of the communication delay optimization method described above are implemented.
[0132] Reference Figure 8 , Figure 8 This is a structural block diagram of the first embodiment of the communication delay optimization device of the present invention.
[0133] like Figure 8 As shown, the communication delay optimization device proposed in the embodiment of the present invention includes: a test packet sending module 801, a feedback packet sending module 802, a congestion factor calculation module 803 and a link selection module 804.
[0134] The test packet sending module 801 is configured to periodically send delay test packets to the delay test service of the receiving end through each link using the delay test service of the sending end.
[0135] The feedback packet sending module 802 is used to obtain the current frame sending delay when the delay test service at the receiving end receives the delay test packet, generate a delay test feedback packet based on the current frame sending delay and the average sending delay threshold, and send the delay test feedback packet to the delay test service at the sending end.
[0136] The congestion factor calculation module 803 is configured to determine the congestion factor of each link according to the link recommended traffic and the corresponding link bandwidth in the delay test feedback packet when the delay test service at the transmitting end receives the delay test feedback packet.
[0137] The link selection module 804 is configured to determine the optimal link for current data transmission based on the congestion factors of the links, using the traffic management module of the sending end and preset traffic migration conditions.
[0138] The test packet sending module 801 is also used to deploy delay test services at the sending end and the receiving end respectively; under normal operating conditions, the delay test service at the sending end is used to periodically send delay test packets to the delay test service at the receiving end through each link to determine the average sending delay threshold, RTT average, and RTO average corresponding to each link.
[0139] The feedback packet sending module 802 is also used to obtain the current frame sending stamp and the current frame receiving timestamp when the delay test service at the receiving end receives the delay test packet, and determine the current frame sending delay based on the current frame sending stamp and the current frame receiving timestamp; compare the current frame sending delay with the sending delay average threshold to obtain a comparison result; determine the current link recommended traffic of the sending end according to the comparison result, and generate a delay test feedback packet based on the current link recommended traffic.
[0140] The congestion factor calculation module 803 is also used to determine the current link transmission delay according to the sending timestamp of the sending end and the receiving timestamp of the receiving end in the delay test feedback packet when the delay test service at the sending end receives the delay test feedback packet; based on the first congestion factor calculation formula, determine the congestion factor of each link according to the current link transmission delay and the current link recommended traffic in the delay test feedback packet and the corresponding link bandwidth.
[0141] The feedback packet sending module 802 is also used to, if the comparison result indicates that the current frame sending delay is greater than the upper limit of the sending delay average threshold, then based on the preset traffic adjustment suggestion, reduce the data sending amount of the current link to obtain the current link recommended traffic of the sending end; if the comparison result indicates that the current frame sending delay is less than the lower limit of the sending delay average threshold, then based on the preset traffic adjustment suggestion, increase the data sending amount of the current link to obtain the current link recommended traffic of the sending end.
[0142] An embodiment of the present device discloses using a delay test service at a sending end to periodically send delay test packets to a delay test service at a receiving end through each link; when the delay test service at the receiving end receives the delay test packet, it obtains the current frame sending delay, generates a delay test feedback packet based on the current frame sending delay and an average sending delay threshold, and sends the delay test feedback packet to the delay test service at the sending end; when the delay test service at the sending end receives the delay test feedback packet, it determines the congestion factor of each link based on the current link recommended traffic and the corresponding link bandwidth in the delay test feedback packet; based on the congestion factor of each link, the traffic management module of the sending end and the preset traffic migration conditions are used to determine the optimal link for current data transmission. Since the delay test service at the sending end of the present device embodiment periodically sends delay test packets through each link, the delay test service at the receiving end receives the delay test packet and sends a corresponding delay test feedback packet to the sending end. After receiving the delay test feedback packet, the sending end determines the optimal link for current data transmission through the traffic management module and preset traffic migration conditions to send data. Compared with the existing technology, the present device embodiment effectively reduces the communication delay between chips in the vehicle domain controller.
[0143] Based on the first embodiment of the communication delay optimization device of the present invention, a second embodiment of the communication delay optimization device of the present invention is proposed.
[0144] In this embodiment, the congestion factor calculation module 803 is used to obtain the current timeout retransmission time when the delay test service at the sending end does not receive the delay test feedback packet; based on the second congestion factor calculation formula, the congestion factor of each link is determined according to the current timeout retransmission time and the current link recommended traffic and the corresponding link bandwidth.
[0145] When there is packet loss in the delay test feedback packet, the embodiment of the device determines the congestion factor of each link based on the second congestion factor calculation formula according to the current timeout retransmission time, the current link recommended traffic and the corresponding link bandwidth, thereby effectively improving the stability and reliability of multi-chip communication in the vehicle domain controller.
[0146] Other embodiments or specific implementations of the communication delay optimization device of the present invention can refer to the above-mentioned method embodiments and will not be described in detail here.
[0147] The present application provides a communication delay optimization device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the communication delay optimization method in the above-mentioned embodiment 1.
[0148] Reference below Figure 9 , which shows a schematic diagram of the structure of a communication delay optimization device suitable for implementing the embodiments of the present application. The communication delay optimization device in the embodiments of the present application may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), in-vehicle terminals (such as in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 9 The communication delay optimization device shown is merely an example and should not limit the functions and scope of use of the embodiments of the present application.
[0149] like Figure 9 As shown, the communication delay optimization device may include a processing device 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes based on programs stored in a read-only memory 1002 or programs loaded from a storage device 1003 into a random access memory 1004. The random access memory 1004 also stores various programs and data required for the operation of the communication delay optimization device. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are interconnected via a bus 1005. An input / output interface 1006 is also connected to the bus. Typically, the following systems can be connected to the input / output interface 1006: an input device 1007 including, for example, a touch screen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the communication delay optimization device to communicate with other devices wirelessly or wired to exchange data. Although the figure shows a communication delay optimization device with various systems, it should be understood that it is not required to implement or have all of the systems shown. More or fewer systems may be implemented or have alternatively.
[0150] In particular, according to the embodiments disclosed in the present application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, the embodiments disclosed in the present application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program comprising program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via a communication device, or installed from a storage device 1003, or installed from a read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are performed.
[0151] The communication delay optimization device provided in this application, utilizing the communication delay optimization method described in the aforementioned embodiment, can address the existing technical issue of significant inter-chip communication delay within a vehicle domain controller. Compared to the existing technology, the communication delay optimization device provided in this application achieves the same beneficial effects as the communication delay optimization method described in the aforementioned embodiment. Other technical features of this communication delay optimization device are the same as those disclosed in the aforementioned embodiment and are not further elaborated here.
[0152] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0153] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
[0154] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or system comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or system. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or system comprising the element.
[0155] The serial numbers of the above embodiments of the present invention are for description only and do not represent the advantages or disadvantages of the embodiments.
[0156] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better embodiment. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as read-only memory / random access memory, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present invention.
[0157] The above are only preferred embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention description and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A communication delay optimization method, characterized in that: The method comprises: Using the delay test service of the transmitting end to periodically send delay test packets through each link to the delay test service of the receiving end; When the delay test service at the receiving end receives the delay test packet, it obtains the current frame transmission delay, generates a delay test feedback packet based on the current frame transmission delay and the transmission delay average threshold, and sends the delay test feedback packet to the delay test service at the sending end; When the delay test service at the transmitting end receives the delay test feedback packet, determining the congestion factor of each link according to the current link recommended flow and the corresponding link bandwidth in the delay test feedback packet; Based on the congestion factors of the links, the optimal link for current data transmission is determined using the traffic management module of the sending end and preset traffic migration conditions.
2. The communication delay optimization method according to claim 1, wherein: The step of obtaining the current frame transmission delay when the delay test service at the receiving end receives the delay test packet, and generating a delay test feedback packet based on the current frame transmission delay and the transmission delay average threshold, includes: When the delay test service at the receiving end receives the delay test packet, obtaining a current frame sending stamp and a current frame receiving timestamp, and determining a current frame sending delay based on the current frame sending stamp and the current frame receiving timestamp; Comparing the current frame transmission delay with the transmission delay average threshold to obtain a comparison result; The current link recommended flow rate of the transmitting end is determined according to the comparison result, and a delay test feedback packet is generated based on the current link recommended flow rate.
3. The communication delay optimization method according to claim 1, wherein: Before the step of periodically sending a delay test packet to the delay test service of the receiving end through each link using the delay test service of the transmitting end, the method further includes: Deploy latency testing services at both the sending and receiving ends; Under normal working conditions, the delay test service of the sending end is used to periodically send delay test packets to the delay test service of the receiving end through each link to determine the average sending delay threshold, RTT average value, and RTO average value corresponding to each link.
4. The communication delay optimization method according to claim 1, wherein: The step of determining the congestion factor of each link according to the current link recommended flow and the corresponding link bandwidth in the delay test feedback packet when the delay test service at the transmitting end receives the delay test feedback packet includes: When the delay test service at the transmitting end receives the delay test feedback packet, determining the current link transmission delay according to the transmitting end sending timestamp and the receiving end receiving timestamp in the delay test feedback packet; Determine the congestion factor of each link based on the first congestion factor calculation formula and the current link transmission delay, the current link recommended flow rate in the delay test feedback packet, and the corresponding link bandwidth; The calculation formula of the first congestion factor is: p congestion =t timedelay *Handlingcapacity / Bandwith; Where p congestion represents the congestion factor, t timedelay Indicates the current link transmission delay, HandlingCapacity indicates the current link recommended traffic, and Bandwith indicates the link bandwidth.
5. The communication delay optimization method according to claim 1, wherein: After the step of sending the delay test feedback packet to the delay test service of the transmitting end, the method further includes: When the delay test service at the sending end does not receive the delay test feedback packet, obtaining a current timeout retransmission time; Determine the congestion factor of each link based on the second congestion factor calculation formula according to the current timeout retransmission time, the current link recommended traffic, and the corresponding link bandwidth; The calculation formula of the second congestion factor is: p congestion =t RTO *Handlingcapacity / Bandwith; Where p congestion represents the congestion factor, t RTO Represents the current timeout retransmission time, Handlingcapacity indicates the current link recommended traffic, and Bandwith indicates the link bandwidth.
6. The communication delay optimization method according to claim 1, wherein: The step of determining the optimal link for current data transmission based on the congestion factor of each link by using the traffic management module of the sending end and preset traffic migration conditions includes: Determining, by the traffic management module of the transmitting end, whether the congestion factor of the current link is greater than the congestion factor of a link other than the current link; If so, selecting the link with the smallest congestion factor and determining whether the data to be transmitted can be migrated to the link with the smallest congestion factor based on a preset traffic migration condition; If the data to be transmitted can be migrated to the link with the smallest congestion factor, the link with the smallest congestion factor is used as the optimal link for current data transmission; The preset traffic migration conditions are: f tbr <f sug -f cur ; Where, f tbr Represents the data flow to be transmitted, f sug represents the recommended flow of the optimal link, f cur Indicates the current link traffic.
7. The communication delay optimization method according to claim 2, wherein: The step of determining the current link recommended flow rate of the sending end according to the comparison result includes: If the comparison result indicates that the current frame transmission delay is greater than the upper limit of the transmission delay average threshold, then based on the preset traffic adjustment suggestion, reduce the data transmission amount of the current link to obtain the current link recommended traffic of the sending end; If the comparison result indicates that the current frame transmission delay is less than the lower limit of the transmission delay average threshold, the data transmission amount of the current link is increased based on the preset traffic adjustment suggestion to obtain the current link recommended traffic of the sending end.
8. A communication delay optimization device, characterized in that: The device comprises: A test packet sending module, configured to periodically send delay test packets to the delay test service of the receiving end through each link using the delay test service of the sending end; a feedback packet sending module, configured to obtain the current frame transmission delay when the delay test service at the receiving end receives the delay test packet, generate a delay test feedback packet based on the current frame transmission delay and the average transmission delay threshold, and send the delay test feedback packet to the delay test service at the sending end; a congestion factor calculation module, configured to determine the congestion factor of each link according to the link recommended traffic and the corresponding link bandwidth in the delay test feedback packet when the delay test service at the sending end receives the delay test feedback packet; The link selection module is used to determine the optimal link for current data transmission based on the congestion factor of each link, using the traffic management module of the sending end and the preset traffic migration conditions.
9. A communication delay optimization device, characterized in that: The device includes: a memory, a processor, and a communication delay optimization program stored in the memory and executable on the processor, wherein the communication delay optimization program is configured to implement the steps of the communication delay optimization method according to any one of claims 1 to 7.
10. A storage medium, characterized in that: The storage medium stores a communication delay optimization program, which, when executed by a processor, implements the steps of the communication delay optimization method according to any one of claims 1 to 7.