Communication channel control method and device and storage medium

By obtaining channel parameters and switching, the abnormal problems caused by channel quality fluctuations and environmental occlusion of vehicle-road cloud communication are solved, and the vehicle-road cloud collaboration efficiency and performance of intelligent connected vehicles are improved.

CN119233318APending Publication Date: 2024-12-31CHINA AUTOMOTIVE INNOVATION CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411387109.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

In the prior art, vehicle-road cloud communications are easily disturbed in severe road occlusion scenarios, resulting in fluctuations in communication channel quality and environmental occlusion, and abnormal problems arise.

Method used

By obtaining the channel parameters in the current time window, including channel busyness rate, delay, jitter and packet loss rate, we can determine whether the channel switching conditions are met, and switch the communication channel that transmits the specified message flow from PC5 to Uu channel to avoid the problem of causing the problem of Vehicle-road cloud communication abnormalities caused by fluctuations in communication channels and environmental occlusion.

Benefits of technology

Under high load and dynamic environments, ensure the quality and performance of vehicle-road cloud communication links and improve the vehicle-road cloud collaboration efficiency and performance of intelligent connected vehicles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119233318A_ABST
    Figure CN119233318A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a communication channel control method and device and a storage medium, and the method comprises the steps: obtaining a parameter value of each channel parameter in a group of channel parameters corresponding to a first communication channel in a current time window, the first communication channel is a communication channel used by a current device for transmitting a specified message stream in double communication channels, the double communication channels comprise a PC5 channel and a Uu channel, and the group of channel parameters comprise at least one of the following parameters: a channel busy rate, time delay, jitter and a packet loss rate; based on the parameter value of each channel parameter, determining whether a channel switching condition is satisfied, the channel switching condition being a condition for switching a communication channel used for transmitting the specified message flow, and the channel switching condition comprising a first switching condition corresponding to a group of channel parameters; and switching the communication channel used for transmitting the specified message flow from the first communication channel to a second communication channel in the double communication channels under the condition of determining that the channel switching condition is satisfied.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of communications, and in particular, to a method, device, and storage medium for controlling a communication channel. Background Art

[0002] With the development of "connected" cars, some vehicles are equipped with on-board terminals (TBOX) that can be used to realize vehicle-road-cloud communication. The information interaction between the vehicle, road and cloud can effectively avoid many blind spot restrictions under the perception conditions of a single vehicle, and realize the intelligent planning of large-scale traffic beyond visual range, which can not only improve traffic safety and efficiency and enhance the user experience, but also reduce the manufacturing cost of a single vehicle and reduce the dependence of the intelligent driving system on high-precision perception and maps.

[0003] In the related technology, the communication technology based on the PC (Proximity Communication) 5 interface can be used for vehicle-road-cloud communication. The communication technology based on the PC5 interface is mainly used for short-distance direct communication interfaces between vehicles, roads and road infrastructure, and has the characteristics of low latency and high reliability. However, in scenarios with severe road occlusion, the PC5 interface will be severely interfered, resulting in short-term packet loss, and vehicle-road-cloud communication anomalies due to possible factors such as fluctuations in communication channel quality and environmental occlusion.

[0004] It can be seen that the control method of the communication channel in the related art has the problem of abnormal vehicle-road-cloud communication due to possible factors such as fluctuations in the communication channel quality and environmental occlusion. Summary of the invention

[0005] The embodiments of the present application provide a method, device and storage medium for controlling a communication channel, so as to at least solve the problem of abnormal vehicle-road-cloud communication caused by possible factors such as fluctuations in communication channel quality and environmental occlusion in the control method of the communication channel in the related art.

[0006] According to one aspect of an embodiment of the present application, a method for controlling a communication channel is provided, comprising: obtaining a parameter value of each channel parameter in a set of channel parameters corresponding to a first communication channel within a current time window, wherein the first communication channel is a communication channel used by a current device in a dual communication channel to transmit a specified message stream, the dual communication channels include a PC5 channel and a Uu channel, and a set of channel parameters include at least one of the following: channel busy rate, delay, jitter, and packet loss rate; based on the parameter value of each channel parameter, determining whether a channel switching condition is met, wherein the channel switching condition is a condition for switching the communication channel used for transmitting the specified message stream, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters; when it is determined that the channel switching condition is met, switching the communication channel used for transmitting the specified message stream from the first communication channel to the second communication channel in the dual communication channel.

[0007] According to another aspect of an embodiment of the present application, a control device for a communication channel is also provided, including: a first acquisition unit, used to acquire a parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel in a current time window, wherein the first communication channel is a communication channel used by the current device in a dual communication channel to transmit a specified message stream, the dual communication channel includes a PC5 channel and a Uu channel, and a set of channel parameters includes at least one of the following: channel busy rate, delay, jitter, packet loss rate; a first judgment unit, used to judge whether a channel switching condition is met based on the parameter value of each channel parameter, wherein the channel switching condition is a condition for switching the communication channel used for transmitting the specified message stream, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters; a switching unit, used to switch the communication channel used for transmitting the specified message stream from the first communication channel to the second communication channel in the dual communication channel when it is determined that the channel switching condition is met.

[0008] According to another aspect of the embodiments of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when executed.

[0009] According to another aspect of the embodiments of the present application, an electronic device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0010] According to another aspect of the embodiments of the present application, a computer program product is provided, including a computer program, which implements the steps in any of the above method embodiments when the computer program is executed by a processor.

[0011] In an embodiment of the present application, a communication channel used for transmitting a message stream is dynamically switched based on the channel parameters of the communication channel used for transmitting the message stream, and a parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel in the current time window is obtained, wherein the first communication channel is the communication channel used by the current device to transmit a specified message stream in a dual communication channel, the dual communication channels include a PC5 channel and a Uu channel, and a set of channel parameters include at least one of the following: channel busy rate, delay, jitter, packet loss rate; based on the parameter value of each channel parameter, it is determined whether a channel switching condition is met, wherein the channel switching condition is a condition for switching the communication channel used for transmitting the specified message stream, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters; when it is determined that the channel switching condition is met, the communication channel used for transmitting the specified message stream is switched from The first communication channel is switched to the second communication channel in the dual communication channel. Due to the combination of the low latency of the PC5 channel and the large-range transmission of Uu, the communication channel used for the transmission message flow is evaluated based on the channel parameters within a certain time window for complex and changeable road conditions, and the communication channel is switched based on the evaluation results. This can avoid vehicle-road-cloud communication anomalies due to possible factors such as communication channel quality fluctuations and environmental occlusions (channel anomalies can be characterized based on channel parameters), ensure the communication quality and communication performance of the vehicle-road-cloud communication link under high load and dynamic environments, thereby improving the vehicle-road-cloud collaborative efficiency and performance of intelligent connected vehicles, and can solve the problem of vehicle-road-cloud communication anomalies caused by possible factors such as communication channel quality fluctuations and environmental occlusion in the control method of the communication channel in the related technology, thereby achieving the technical effect of improving the quality of vehicle-road-cloud communication. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0013] Figure 1 is a schematic diagram of an application scenario of a method for controlling a communication channel according to an embodiment of the present application;

[0014] Figure 2 is a flow chart of an optional communication channel control method according to an embodiment of the present application;

[0015] Figure 3 is a schematic diagram of an optional communication channel control method according to an embodiment of the present application;

[0016] Figure 4 is a schematic diagram of another optional communication channel control method according to an embodiment of the present application;

[0017] Figure 5 is a schematic diagram of another optional communication channel control method according to an embodiment of the present application;

[0018] Figure 6 is a schematic diagram of another optional communication channel control method according to an embodiment of the present application;

[0019] Figure 7 is a schematic diagram of another optional communication channel control method according to an embodiment of the present application;

[0020] Figure 8 is a schematic diagram of another optional communication channel control method according to an embodiment of the present application;

[0021] Fig. 9 is a schematic diagram of another optional communication channel control method according to an embodiment of the present application;

[0022] Fig.10 is a structural block diagram of an optional communication channel control device according to an embodiment of the present application;

[0023] Fig.11 It is a structural block diagram of a computer system of an optional electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0024] The embodiments of the present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0026] According to one aspect of an embodiment of the present application, a method for controlling a communication channel is provided. Optionally, in this embodiment, the method for controlling a communication channel can be applied to Figure 1 The hardware environment shown includes a vehicle side 102, a road side 104 and a cloud side 106. Figure 1 As shown, the vehicle end 102, the road end 104 and the cloud end 106 can be connected through the vehicle-road-cloud communication link and exchange information. Among them, the vehicle end 102 can be an OBU (On board Unit) equipped on the vehicle, the road end 104 can be an RSU (Road Side Unit) set on the road side, and the cloud end 106 can be a cloud server.

[0027] The vehicle-road-cloud communication link can be a communication link based on a wired network or a wireless network. The above-mentioned wired network can include but is not limited to at least one of the following: wide area network, metropolitan area network, local area network, and the above-mentioned wireless network can include but is not limited to at least one of the following: WIFI (Wireless Fidelity), Bluetooth, etc., and can also be other networks, which are not limited in this embodiment.

[0028] In the related technology, communication technology based on PC5 interface can be used for vehicle-road-cloud communication. Communication technology based on PC5 interface is mainly used for short-distance direct communication interface between vehicle-road and road infrastructure. The corresponding communication channel is PC5 channel, which has the characteristics of low latency and high reliability. However, in the scene of abnormal road occlusion, the PC5 interface will be seriously interfered, resulting in short-term packet loss, and abnormal vehicle-road-cloud communication due to possible factors such as fluctuations in communication channel quality and environmental occlusion.

[0029] In order to at least partially solve the above technical problems, in view of the complex and changeable road conditions, a flexible switching method can be adopted for multiple communication channels with different characteristics, and different communication channels can be used under different communication conditions to ensure the normal transmission of the message stream. In order to simplify the complexity of channel switching, a dual-channel communication link can be used. Combined with the characteristics of the communication channel, in this embodiment, a dual-channel communication link combining the PC5 channel and the Uu channel can be used to realize a communication solution with low latency of the PC5 interface and large-range transmission of the Uu interface. Here, the communication technology based on the Uu interface realizes long-distance and large-range communication between terminals and base stations through the cellular network communication interface, and the corresponding communication channel is the Uu channel. The Uu interface has additional network traffic overhead relative to the PC5 interface, and the communication delay is also higher than the PC5 interface.

[0030] For the combination of PC5 channel and Uu channel, the total number of received data packets of RSU and OBU devices within a preset period can be counted; the total number of received data packets and the set channel conversion threshold can be compared to determine the channel suitable for the current scenario, and the data transmission channel of RSU and OBU devices can be adaptively adjusted to meet the needs of different communication scenarios. However, the above communication channel switching method triggers the switching based on the total number of received data packets within a preset period, and only switches channels for communication congestion, but does not evaluate and switch for communication quality, which cannot guarantee communication quality and efficiency.

[0031] In this regard, in this embodiment, the communication channel used for the transmission message flow can be evaluated based on the channel parameters within a certain time window, and the communication channel can be switched based on the evaluation results. The channel parameters may include all or part of the channel busy rate, delay, jitter and packet loss rate. This can avoid vehicle-road-cloud communication abnormalities due to possible factors such as fluctuations in communication channel quality and environmental obstructions, and ensure the communication quality and performance of the vehicle-road-cloud communication link under high load and dynamic environments, thereby improving the vehicle-road-cloud collaborative efficiency and performance of intelligent connected vehicles.

[0032] The communication channel control method of the embodiment of the present application can be executed by any one of the vehicle end 102, the road end 104 and the cloud end 106, or can be executed by at least two of them together. Taking the vehicle end 102 as an example, Figure 2 is a flow chart of an optional communication channel control method according to an embodiment of the present application, such as Figure 2 As shown, the process includes the following steps:

[0033] Step S202, obtaining a parameter value of each channel parameter in a group of channel parameters corresponding to the first communication channel in the current time window;

[0034] Step S204, judging whether a channel switching condition is met based on the parameter value of each channel parameter;

[0035] Step S206: When it is determined that the channel switching condition is met, the communication channel used for transmitting the specified message flow is switched from the first communication channel to the second communication channel in the dual communication channels.

[0036] In this embodiment, the dual communication channels used can be a PC5 channel and a Uu channel. The current device can transmit different message streams, and different message streams are related to different message types. The message types can be divided based on the message content transmitted by the message, or based on the message identifier carried in the message, or by other means, as long as the current device can distinguish different message streams. The current device can be the aforementioned vehicle end 102, which can be a vehicle-mounted device, such as an OBU, or other vehicle-mounted devices. For the case where the current device is a road end 104 or a cloud end 106, the control method of the communication channel provided in this embodiment is also applicable. The road end 102, the vehicle end 104 and the cloud end 106 can transmit information through the PC5 channel and the Uu channel.

[0037] For the scenario where the vehicle end 102 is an OBU, the road end 104 includes an RSU and a workstation, and the cloud end 106 is a cloud platform, the vehicle is equipped with an OBU, and the OBU can directly connect to the cloud platform through the Uu channel to exchange information with the cloud platform; the OBU can communicate with the roadside RSU through the PC5 channel; the OBU can obtain the real-time data that needs to be uploaded through the vehicle communication network such as CAN (Controller Area Network) bus, Ethernet, or from other ECUs (Electronic Control Units), and assemble and report it. The information types can specifically include: vehicle data, drive motor data, fuel cell data, engine data, vehicle position data, extreme value data and alarm data, etc. Different data can correspond to different message flows. The RSU can communicate with the workstation through the optical fiber segment, and the workstation can communicate with the cloud platform through the optical fiber segment or Uu channel.

[0038] For each data stream, the parameter value of the specified channel parameter corresponding to the communication channel (or communication channel) currently used by the data stream can be obtained in units of a time window of a specified size, and based on the obtained parameter value, it is determined whether the condition for switching the communication channel used by the data stream is met. For a specified data stream, the communication channel currently used is the first communication channel, and the current device can obtain the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel within the current time window. The first communication channel is the communication channel used by the current device in the dual communication channel to transmit the specified message stream, and the current time window is the most recent complete time window before the current moment that can determine the parameter values ​​of the corresponding set of channel parameters.

[0039] In this embodiment, a set of channel parameters may include one or more, which may include at least one of the following: channel busy rate, delay, jitter, packet loss rate, for example, it may include at least one of the channel busy rate, delay and jitter, and may also include packet loss rate. Among them, the channel busy rate (Channel Busy Ratio, referred to as CBR), that is, the communication channel busy rate, which can represent the proportion of the channel occupied within a certain period of time, and is used to measure the congestion level of the current communication resource pool. Latency refers to the time required for a message to travel from the sender to the receiver. The delay parameter of the communication channel within a window refers to a parameter related to the delay fluctuation within a period of time, for example, a parameter related to the delay growth, a parameter related to the delay at a certain moment, etc. Jitter refers to the inconsistency of the arrival time of a message during the transmission process, which is a short-term change in the time interval between message arrivals. The jitter parameter of the communication channel within a window refers to a parameter related to jitter within a period of time, for example, a parameter related to the jitter amplitude, a parameter related to the number of jitters, etc. Packet loss rate refers to the proportion of messages that fail to successfully reach the receiving end from the sender during data transmission.

[0040] Based on the parameter value of each channel parameter, it can be determined whether the channel switching condition is met. The channel switching condition is a condition for switching the communication channel used to transmit the specified message flow. The channel switching condition may include one or more switching conditions, and may include a first switching condition corresponding to a set of channel parameters. The first switching condition may be: the parameter value of at least one channel parameter in a set of channel parameters reaches a set parameter threshold, or it may be: the parameter values ​​of at least two channel parameters in a set of channel parameters reach a set parameter threshold. Optionally, in addition to the first switching condition, other switching conditions may be included, for example, conditions that need to be met by the communication channel to be switched to, which is not limited in this embodiment.

[0041] The channel switching condition may be satisfied when all the switching conditions are satisfied. If the channel switching condition only includes the first switching condition, the channel switching condition is satisfied when the first switching condition is satisfied. If the channel switching condition also includes other switching conditions in addition to the first switching condition, the channel switching condition is satisfied when the first switching condition and other switching conditions are satisfied. When determining whether the channel switching condition is satisfied, it may be determined in turn whether each switching condition is satisfied until it is determined that a certain switching condition is not satisfied, or all the switching conditions have been determined to be completed.

[0042] If it is determined that the channel switching condition is met, the communication channel used to transmit the specified message stream can be switched from the first communication channel to the second communication channel in the dual communication channels. After the communication channel switching is performed, the communication channel used to transmit the specified message stream is the second communication channel at least in the next time window of the current time window. For each data stream, the same or similar method as above can be used to determine whether the communication channel switching is required; and for each time window, the same or similar method as above can be used to determine whether the communication channel switching is required; for different data streams, the corresponding time windows can be the same or different, which is not limited in this embodiment.

[0043] Through the above steps, the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel in the current time window is obtained, wherein the first communication channel is the communication channel used by the current device in the dual communication channel to transmit the specified message stream, the dual communication channel includes a PC5 channel and a Uu channel, and a set of channel parameters includes at least one of the following: channel busy rate, delay, jitter, packet loss rate, and based on the parameter value of each channel parameter, it is determined whether the channel switching condition is met, wherein the channel switching condition is the condition for switching the communication channel used for transmitting the specified message stream, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters. When it is determined that the channel switching condition is met, the communication channel used for transmitting the specified message stream is switched from the first communication channel to the second communication channel in the dual communication channel, thereby solving the problem of abnormal vehicle-road-cloud communication caused by possible factors such as fluctuations in communication channel quality and environmental occlusion in the related technology, and improving the vehicle-road-cloud collaboration efficiency and performance of intelligent connected vehicles.

[0044] In an exemplary embodiment, a set of channel parameters may include one or more related channel parameters such as channel busy rate, delay, jitter, and packet loss rate. For different channel parameters, the acquisition method may be the same or different. Accordingly, the first switching condition includes a switching condition corresponding to each channel parameter.

[0045] As an optional implementation, for a case where a set of channel parameters includes a channel busy rate, such as Figure 3 As shown, obtaining the parameter value of each channel parameter in a group of channel parameters corresponding to the first communication channel in the current time window includes: obtaining the parameter value of the channel busy rate corresponding to the first channel in the current time window.

[0046] In this embodiment, the channel busy rate corresponding to the first channel in the current time window can be counted to obtain the parameter value of the channel busy rate corresponding to the first channel in the current time window. Correspondingly, the first switching condition includes that the parameter value of the channel busy rate is greater than or equal to the first parameter threshold. The first parameter threshold can be set as needed, for example, 0.6, 0.8, etc., or other values, which are not limited in this embodiment.

[0047] For example, the CBR value of a communication channel where a message flow is located within a time window may be obtained. When the CBR value is within a corresponding range, an adjustment instruction is triggered to trigger the communication channel adjustment.

[0048] As another optional implementation, for a case where a set of channel parameters includes a delay, such as Figure 3 As shown, obtaining the parameter value of each channel parameter in a group of channel parameters corresponding to the first communication channel in the current time window includes: obtaining the number of occurrences of the first delay event corresponding to the first channel in the current time window.

[0049] In this embodiment, a fixed window counting method can be used to evaluate delay fluctuations, calculate the real-time delay mean value of the message flow, and obtain the number of occurrences of the first delay event corresponding to the first channel in the current time window. Correspondingly, the first switching condition includes that the number of occurrences of the first delay event is greater than or equal to the first number threshold. Here, the first delay event is that the difference between the current delay and the real-time delay mean value is greater than the delay growth threshold, and the delay growth threshold and the first number threshold can be set according to empirical values.

[0050] As another optional implementation, for a case where a set of channel parameters includes a delay, such as Figure 3 As shown, obtaining the parameter value of each channel parameter in a group of channel parameters corresponding to the first communication channel in the current time window includes: obtaining the number of occurrences of the second delay event corresponding to the first channel in the current time window.

[0051] In this embodiment, a fixed window counting method can be used to evaluate the delay fluctuation, calculate the real-time delay of the message flow, and obtain the number of occurrences of the second delay event corresponding to the first channel in the current time window. Correspondingly, the first switching condition includes that the number of occurrences of the second delay event is greater than or equal to the second number threshold. Here, the second delay event is that the current delay is greater than the delay threshold, and the delay threshold and the second number threshold can be set according to empirical values.

[0052] For example, for delay, the following two conditions can be set: Condition 1, multiple high delay increases within the window (can be judged based on current delay - delay average > growth threshold); Condition 2, multiple high delays within the window (can be judged based on current delay > delay threshold). If any of the above conditions are met, the adjustment instruction is triggered to trigger the communication channel adjustment.

[0053] As another optional implementation, for a case where a set of channel parameters includes jitter, such as Figure 3 As shown, obtaining the parameter value of each channel parameter in a group of channel parameters corresponding to the first communication channel in the current time window includes: obtaining the number of occurrences of a specified jitter event corresponding to the first communication channel in the current time window.

[0054] In this embodiment, the jitter can be evaluated by considering the fixed window counting method, and the number of occurrences of the specified jitter event corresponding to the first channel in the current time window is obtained. Correspondingly, the first switching condition includes that the number of occurrences of the specified jitter event is greater than or equal to the third number threshold. Here, the specified jitter event is that the current jitter is greater than the jitter threshold, and the jitter threshold and the third number threshold can be set according to empirical values.

[0055] For example, for delay, the jitter can be evaluated by considering the fixed window counting method. Multiple high jitters in the message window (which can be judged based on the current jitter> jitter threshold) trigger an adjustment instruction to trigger the communication channel adjustment.

[0056] As another optional implementation, for a case where a set of channel parameters includes a packet loss rate, such as Figure 3 As shown, obtaining the parameter value of each channel parameter in a group of channel parameters corresponding to the first communication channel in the current time window includes: obtaining the parameter value of the packet loss rate corresponding to the first channel in the current time window.

[0057] In this embodiment, the packet loss rate corresponding to the first channel in the current time window can be counted to obtain a parameter value of the packet loss rate corresponding to the first channel in the current time window. Correspondingly, the first switching condition includes that the parameter value of the packet loss rate is greater than or equal to the second parameter threshold. The second parameter threshold can be set as needed, for example, 0.2, 0.3, etc., or other values, which are not limited in this embodiment.

[0058] For example, the packet loss rate value of a communication channel where a message flow is located within a time window may be obtained. If the packet loss rate value is greater than a packet loss rate threshold, an adjustment instruction is triggered to trigger the communication channel adjustment.

[0059] Exemplarily, in an adaptive strategy, message streams can be forwarded separately on load links (i.e., communication channels). When a message stream is transmitted on a link, a received message status judgment module (used to judge the received message status) can be set to judge whether to adjust the link according to the link adjustment callback. Load sharing based on a balanced load mode can make full use of link bandwidth and improve transmission efficiency. The adjustment index (i.e., channel parameter) can be split and evaluated by a combination of delay (or time delay), jitter and packet loss rate plus a CBR index, and trigger conditions can be designed for each index.

[0060] Through this embodiment, for a group of channel parameters including channel busy rate, delay, jitter and packet loss rate, corresponding switching conditions and judgment methods are set respectively, which can reduce the rationality of communication channel switching and reduce the probability of frequent switching of communication channels, thereby reducing the switching overhead of communication channels.

[0061] In an exemplary embodiment, in order to avoid the crowding of communication resources caused by the concentration of message streams on one communication channel, a quantity threshold of the number of message streams allowed on each communication channel in the dual communication channels can be set, that is, a specified quantity threshold, which can be set as needed, for example, three, four or other values. In this case, the number of message streams allowed on each communication channel in the dual communication channels is less than or equal to the specified quantity threshold, and the channel switching condition also includes a second switching condition, and the second switching condition is that the number of message streams on the communication channel to be switched is less than the specified quantity threshold.

[0062] Correspondingly, after determining whether the channel switching condition is met based on the parameter value of each channel parameter, the method further includes:

[0063] S11, determining the number of message flows on the second communication channel when it is determined that the first switching condition is satisfied based on the parameter value of each channel parameter;

[0064] S12: When the number of message flows on the second communication channel is less than a specified number threshold, determine that a second switching condition is satisfied, wherein the channel switching condition is satisfied including that both the first switching condition and the second switching condition are satisfied.

[0065] In this embodiment, if the first switching condition is satisfied, the number of message streams on the second communication channel can be determined. If the number of message streams on the second communication channel is less than the specified number threshold, it is determined that the second switching condition is satisfied, and the channel switching condition is satisfied including that both the first switching condition and the second switching condition are satisfied. If the number of message streams on the second communication channel is equal to the specified number threshold, it is determined that the second switching condition is not satisfied. In this case, it can be determined that the channel switching condition is not satisfied. If the channel switching condition also includes other switching conditions, if it is determined that the second switching condition is satisfied, it can continue to determine whether the other switching conditions are satisfied. If the channel switching condition only includes the first switching condition and the second switching condition, if it is determined that the second switching condition is satisfied, it can be determined that the channel switching condition is satisfied, triggering the communication channel switching. For the case where the channel switching condition includes multiple switching conditions, the judgment order of different switching conditions can be set as needed and can be dynamically adjusted. For example, it can be determined whether the second switching condition is satisfied first, and when the second switching condition is satisfied, it can be determined whether the first switching condition is satisfied. This is not limited in this embodiment.

[0066] For example, a message sending adjustment module can be set up to adjust the sending of messages. For delay, jitter and / or packet loss, after the sending side device triggers the adjustment instruction, the message sending adjustment module can consider the number of upper limit message flows of each communication channel. If the number of message flows of other communication channels reaches the upper limit, the request is shelved / discarded. At this time, the message flow will not be switched and will be sent according to the original channel.

[0067] For example, Figure 4 As shown, within a time window, message stream 1, message stream 2 and message stream 3 are transmitted on communication channel 1, and message stream 4 and message stream 5 are transmitted on communication channel 2. For message stream 3, if the trigger index of the trigger adjustment instruction is met and the number of message streams transmitted on communication channel 2 is less than 3, message stream 3 is switched from communication channel 1 to communication channel 2 for transmission.

[0068] Through this embodiment, in addition to the first switching condition, whether to switch the communication channel is determined based on whether the number of message streams transmitted on the communication channel to be switched to reaches an upper limit. This can balance the message streams on different communication channels and reduce the possibility of congestion in all communication channels. At the same time, it can also reduce the performance waste caused by frequent channel switching (when the number of message streams transmitted on the communication channel is too large, the possibility of congestion is higher).

[0069] In an exemplary embodiment, if the network quality of the second communication channel is poor, the improvement in the transmission efficiency of the specified message stream after switching to the second communication channel is small. Therefore, before switching to the second communication channel, it can be determined that the network quality on the second communication channel meets the network quality condition. The network quality here can be characterized by at least one channel parameter in a set of channel parameters, or by other parameters. In this case, the channel switching condition also includes a third switching condition, and the third switching condition is that the network quality on the communication channel to be switched to meets the network quality condition.

[0070] Correspondingly, after determining whether the channel switching condition is met based on the parameter value of each channel parameter, the method further includes:

[0071] S21, determining the network quality of the second communication channel when it is determined that the first switching condition is satisfied based on the parameter value of each channel parameter;

[0072] S22, when the network quality of the second communication channel satisfies the network quality condition, determining that a third switching condition is satisfied, wherein the channel switching condition being satisfied includes satisfying both the first switching condition and the third switching condition.

[0073] In this embodiment, if the first switching condition is satisfied, the network quality of the second communication channel can be determined. If the network quality of the second communication channel satisfies the network quality condition, it is determined that the third switching condition is satisfied, and the channel switching condition is satisfied including that both the first switching condition and the third switching condition are satisfied. If the network quality of the second communication channel does not satisfy the network quality condition, it is determined that the third switching condition is not satisfied. In this case, it can be determined that the channel switching condition is not satisfied.

[0074] Optionally, for the case where the channel switching condition also includes the aforementioned second switching condition, it can be determined in sequence whether the first switching condition, the second switching condition, and the third switching condition are met, and if any of the switching conditions is not met, it is determined that the channel switching condition is not met. Only when the first switching condition, the second switching condition, and the third switching condition are all met, it is determined that the channel switching condition is met (for the case where the channel switching condition only includes the first switching condition, the second switching condition, and the third switching condition). The judgment order of the first switching condition, the second switching condition, and the third switching condition can be set as needed.

[0075] For example, for delay, jitter and / or packet loss, the message sending adjustment module can compare the performance indicator of the requested channel switching according to the trigger indicator of the trigger adjustment instruction. If the performance indicator of the requested channel switching meets the requirements (the requested channel switching performance indicator < the current channel performance indicator), the channel switching is performed; otherwise, the request (i.e., the adjustment instruction) is discarded.

[0076] For example, Figure 5 As shown, within a time window, message stream 1, message stream 2 and message stream 3 are transmitted on communication channel 1, and message stream 4 and message stream 5 are transmitted on communication channel 2. For message stream 3, if the trigger index of the trigger adjustment instruction is met and the network quality of communication channel 2 meets the network quality condition, message stream 3 is switched from communication channel 1 to communication channel 2 for transmission.

[0077] Through this embodiment, in addition to the first switching condition, whether to switch the communication channel is determined based on whether the network quality of the communication channel to be switched to meets the network quality condition. This can balance the message flows on different communication channels and reduce the possibility of congestion in all communication channels. At the same time, it can also reduce the performance waste caused by frequent channel switching (the worse the network quality of the communication channel, the higher the possibility of congestion).

[0078] In an exemplary embodiment, after switching the communication channel used for transmitting the specified message stream from the first communication channel to the second communication channel in the dual communication channels, the method further includes:

[0079] S31, when the first communication channel meets the network quality condition in the next time window of the current time window, keep using the second communication channel to transmit the specified message flow.

[0080] If the first communication channel meets the network quality condition in the next time window of the current time window, it is possible to switch back to using the first communication channel to transmit the specified message stream. At this time, not only is additional communication channel switching added, but in the case of network fluctuations, repeated switching between the first communication channel and the second communication channel will occur, and frequent switching of communication channels will result in additional performance overhead.

[0081] In this embodiment, if the first communication channel meets the network quality condition within the next time window of the current time window, the second communication channel can be used to transmit the specified message stream until it is determined that the second communication channel meets the channel switching condition, or until the duration of switching to the second communication channel reaches a set duration threshold and it is determined that the second communication channel meets the channel switching condition.

[0082] For example, if the message flow is switched to the second transmission interface (corresponding to the second communication channel) because the network quality of the first transmission interface (corresponding to the first communication channel) is not up to standard or fails, even if the network link congestion of the first transmission interface is relieved, the message flow will not automatically switch back to the first transmission interface again, avoiding additional performance overhead caused by frequent interface switching behavior in the event of network fluctuations.

[0083] Through this embodiment, after the message flow switches the communication channel, even if the congestion of the communication channel before switching is relieved, the message flow is kept in the communication channel after switching, which can avoid additional performance overhead caused by frequent switching of interfaces in the case of network fluctuations.

[0084] In an exemplary embodiment, after obtaining the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel in the current time window, the method further includes:

[0085] S41, when a set of channel parameters includes a channel busy rate, based on the obtained parameter value of the channel busy rate, adjust the message generation period corresponding to the specified message stream to adjust the sending frequency of messages in the specified message stream, wherein the message generation period is positively correlated with the parameter value of the channel busy rate.

[0086] For a specified message stream, a certain message generation cycle can be used to generate and transmit messages. Here, the message generation cycle refers to the time interval between the generation of two adjacent messages, which can be understood as the time interval between the moment when the previous message of the two adjacent messages is generated and the moment when the latter message of the two adjacent messages is generated. The message generation cycle can be a fixed value, that is, the message is generated or generated at a certain time interval or frequency. For example, a specific time point or frequency can be used as a cycle, such as every 2 seconds, every 5 seconds, every minute, etc., or a suitable trigger mechanism can be selected to start, such as a timer, a scheduled task (Cron Job), or a message queue release function. Then, the use of a fixed message generation cycle has the problem of insufficient flexibility. A fixed message generation cycle means that no matter how the system state or external conditions change, the message will be generated at a preset time interval, which will cause the system to be unable to adjust flexibly. If network congestion occurs, generating and transmitting messages according to a fixed message generation cycle may further aggravate network congestion, and if the network condition is good, generating and transmitting messages according to a fixed message generation cycle may cause a waste of network resources.

[0087] In this embodiment, the message generation cycle can be adjusted based on the channel busy rate. For a specified data stream, the parameter value of the channel busy rate corresponding to the current time window and the first communication channel can be obtained, and based on the obtained parameter value of the channel busy rate, the message generation cycle corresponding to the specified message stream is adjusted. The adjustment of the message generation cycle can bring about a change in the sending frequency of messages in the specified message stream. The longer the message generation cycle, the lower the message sending frequency, and the shorter the message generation cycle, the higher the message sending frequency. Here, the message generation cycle is positively correlated with the parameter value of the channel busy rate.

[0088] The above positive correlation can be in various forms, such as linear correlation, nonlinear correlation, etc., and the growth trend of the variable is described by a specified mathematical formula to reflect the above positive correlation. However, if the message generation cycle is linearly correlated with the parameter value of the channel busy rate, the value of the message generation cycle is any value within a certain range. In this case, the parameters of tools such as timers are complex, and the accuracy of parameter settings is required to be high, which is difficult to achieve. In this regard, the above positive correlation can be segmented or threshold correlation, that is, the message generation cycle is a specified set of discrete values, and a segment of the channel busy rate corresponds to a specific message generation cycle.

[0089] For example, in the method of using CBR value for congestion control, during the period of time when congestion control is performed, the application layer can adjust the message generation cycle according to the CBR value submitted by the bottom layer. Figure 6 As shown, the parameter value is represented by X, the generation period is represented by T, when 0≤X≤a, the generation period T is set to t1, when a≤X≤b, the generation period T is set to t2, and when b≤X≤c, the generation period T is set to t3.

[0090] Through this embodiment, the message generation period corresponding to the specified message flow is adjusted based on the channel busy rate to adjust the sending frequency of the messages in the specified message flow, which can reduce the possibility of network congestion and improve the utilization of network resources.

[0091] In an exemplary embodiment, in order to ensure that high-priority messages are processed first and to avoid low-priority messages from being backlogged, a priority queue and a delay queue can be set, wherein the messages in the priority queue are sorted in descending order according to the priority of the message stream, and the messages in the delay queue are sorted in descending order based on the waiting time. Through the priority queue, the messages of the high-priority message stream can be processed first, and through the delay queue, it can be ensured that the messages of the low-priority message stream will not be backlogged for too long. For the message to be sent by the current device, it can be put into the priority queue and the delay queue at the same time.

[0092] Correspondingly, the above method also includes:

[0093] S51, sequentially obtain the head message of the priority queue; if the head message of the priority queue has not been sent, send the head message of the priority queue; if the head message of the priority queue has been sent, delete the head message of the priority queue;

[0094] S52, regularly polling the messages in the delay queue until the waiting time of the polled message is less than the waiting time threshold; if the polled message has not been sent, sending the polled message; if the polled message has been sent, deleting the polled message.

[0095] In this embodiment, at the sending end, the message is sorted by priority and the high priority message is pushed into the sending channel. Here, the priority sorting is based on the priority of the preset message type (corresponding to the message flow). The priority of the message type can be adjusted dynamically. For example, the event message priority is higher than the ordinary SPS (Sequence Parameter Set) stream message. The message set queue is implemented by dual queues, namely the priority queue and the delay queue. The dual queues share the same object. The priority queue is sorted by the message set priority, and the delay queue is sorted by the message set delay time. Here, a message set corresponds to a message flow, and the messages to be sent in the same message flow are a message set.

[0096] For priority queues, messages in the priority queue can be sorted according to the priority of the message stream to which they belong (the priority can be determined according to the message type), that is, messages in the same message stream are sorted in sequence according to the time they are sent in, and messages in different message streams are sorted in sequence according to the priority of the message stream, to ensure that high-priority messages are processed before low-priority messages. Priority queues can be sent in real time, that is, if there are messages in the priority queue, they will be obtained and processed in sequence.

[0097] When processing messages in a priority queue, the head message of the priority queue can be obtained in sequence; if the head message of the priority queue has not been sent, the head message of the priority queue is sent. Since the process or component that processes the delay queue is not aware that the message has been sent, the message can be deleted from the priority queue, and the delay queue is traversed to delete the message. The logic of the above processing method is complex and takes a long time. Optionally, a specified identifier can be added to the message to indicate that the message has been sent, and when the message is processed in the delay queue, it is determined that the message has been sent based on the added specified identifier to avoid repeated sending of the message. If the head message of the priority queue has been sent (sent when processing the message in the delay queue), at this time, since the process or component that processes the delay queue has been aware that the message has been sent, the head message of the priority queue can be directly deleted.

[0098] For a delay queue, you can start by polling the head message in the delay queue, and then poll the messages in the delay queue in sequence until the waiting time of the polled message is less than the waiting time threshold. Here, the waiting time threshold can be the maximum waiting time of the message in the queue. Since the delay queue is sorted according to the time when the message is sent in, if the waiting time of the polled message is less than the waiting time threshold, then the waiting time of the subsequent messages is less than the waiting time threshold. Therefore, you only need to poll the first message whose waiting time is less than the waiting time threshold. For the polled message, similar to the processing method of the head message of the priority queue mentioned above, if the polled message has not been sent, send the polled message; if the polled message has been sent, delete the polled message.

[0099] Considering that there is a certain time difference between different messages being added to the delay queue, if the next poll is performed after one poll is completed, the waiting time of the first message polled may be less than the waiting time threshold. For this reason, timed polling can be performed, that is, a polling operation is performed when the timed time arrives. For this reason, a polling cycle can be set, corresponding to a timer, and the timer's timing time corresponds to the polling cycle. When the timer's timing time arrives, a poll is performed and the timer is reset.

[0100] For example, Figure 7 As shown, a message to be sent is created and placed in the priority queue and the delay queue at the same time. For the head message of the priority queue, it can be determined whether the head message has been processed. If not, the head message is sent. If it has been processed, the head message is deleted. For the delay queue, the messages in the delay queue can be polled regularly. If the remaining time of the polled message expires (that is, the waiting time of the message is greater than or equal to the waiting time threshold), it can be determined whether the polled message has been processed. If not, the polled message is sent. If it has been processed, the polled message is deleted.

[0101] Through this embodiment, by setting a priority queue and a delay queue, and putting the messages to be sent into the priority queue and the delay queue at the same time, it can be ensured that high-priority messages are sent first, while avoiding low-priority messages from being piled up, thereby improving the flexibility and timeliness of message processing.

[0102] In an exemplary embodiment, after obtaining the head message of the priority queue each time, the method further includes:

[0103] S61, when the identification value of the message identifier of the head message of the priority queue is the first identification value, determining that the head message of the priority queue has not been sent;

[0104] S62, when the identification value of the message identifier of the head message of the priority queue is the second identification value, determining that the head message of the priority queue has been sent;

[0105] S63, after sending the head message of the priority queue, setting the message identifier of the head message of the priority queue to a second identifier value.

[0106] In order to conveniently know whether the messages in the priority queue and the delay queue have been sent, the message identifier can be used to mark whether the message has been sent. For the head message of the priority queue, if the identification value of the message identifier of the message is the first identification value (for example, 0), it is determined that the head message of the priority queue has not been sent. If the identification value of the message identifier of the head message of the priority queue is the second identification value (for example, 1), it is determined that the head message of the priority queue has been sent. Here, the message identifier can be a 1-bit identifier or a multi-bit identifier. Considering that only the identifier needs to be sent, the message identifier can be set to a 1-bit identifier to reduce the occupation of storage resources.

[0107] In addition, if it is determined that the head message of the priority queue has not been sent, after sending the head message of the priority queue, the message identifier of the head message of the priority queue is set to a second identifier value to facilitate determining that the message has been sent when processing the message in the delay queue.

[0108] Similarly, after each polling of a message in a delay queue, the above method further includes:

[0109] S64, when the identification value of the message identification of the polled message is the first identification value, determining that the polled message has not been sent;

[0110] S65, when the identification value of the message identification of the polled message is the second identification value, determining that the polled message has been sent;

[0111] S66: After sending the polled message, set the message identifier of the polled message to a second identifier value.

[0112] Similar to the above, for the message polled by the delay queue, if the identification value of the message identifier of the message is the first identification value (for example, 0), it is determined that the polled message has not been sent. If the identification value of the message identifier of the polled message is the second identification value (for example, 1), it is determined that the polled message has been sent. If it is determined that the polled message has not been sent, after sending the polled message, the message identifier of the polled message is set to the second identification value to facilitate determining that the message has been sent when processing the message in the priority queue.

[0113] For example, Figure 8 As shown, for the head message of the priority queue, it is determined whether the head message has been processed based on the field FlagSend (message identifier). If FlagSend is 0, it means that the head message has not been processed. At this time, the head message is sent and the field FlagSend is set to 1. If FlagSend is 1, it means that the head message has been processed, and the head message is deleted.

[0114] Periodically poll the first message in the delay queue. If the remaining time is up (i.e., the timing time has arrived), poll the messages in the delay queue starting from the first message in the delay queue to determine whether the polled message has been processed; if FlagSend is 0, it means that the polled message has not been processed. At this time, send the polled message and set the FlagSend field to 1. If FlagSend is 1, it means that the polled message has been processed, and delete the polled message.

[0115] Through this embodiment, the message identifier is used to identify whether the message in the queue has been sent, so that the message sending status can be judged according to the message identifier, which can facilitate message status synchronization and avoid message omission or repeated sending.

[0116] The control method of the communication channel in the embodiment of the present application is explained below in conjunction with an optional example. In this optional example, the message of each message stream corresponds to a message set, and a set of channel parameters includes channel busy rate, delay, jitter and packet loss rate, which can be applied to TBOX (Telematics BOX, remote information processing control unit) vehicle-road-cloud communication applications.

[0117] This optional example provides a V2X (Vehicle to Everything, wireless communication technology for vehicles) data communication channel allocation management solution, which can ensure the communication quality and performance of the vehicle-road-cloud communication link under high load and dynamic environment, and avoid abnormal vehicle-road-cloud communication due to possible factors such as fluctuation of communication channel quality and environmental shielding, thereby improving the efficiency and performance of vehicle-road-cloud coordination of intelligent connected vehicles. In this solution, the switching timing of the vehicle-road-cloud dual-channel communication link and the channel frequency control conditions are clarified, and priority queues are used to ensure that emergency events of the vehicle-road-cloud are given priority, thereby improving the efficiency and performance of vehicle-road-cloud coordination of intelligent connected vehicles.

[0118] Combination Fig. 9, the sending end message enters the priority queue to filter high-priority messages, and the filtered messages are sent using the corresponding communication channel (PC5 channel, PC5 channel can transmit SPS stream and Event stream; Uu channel); the sending end adjusts the message sending frequency according to the current receiving channel load rate window; the sending end integrates the delay, jitter, packet loss rate and channel load rate of the received message within the time window, and makes a sending channel switching decision based on the window delay, jitter and packet loss rate of the current receiving channel message.

[0119] This optional example can effectively deal with the communication packet loss and delay problems that may occur in the vehicle-road-cloud communication link under high load and dynamic environments, and avoid vehicle-road-cloud communication abnormalities caused by possible factors such as fluctuations in communication channel quality and environmental obstructions; it clarifies the switching timing and channel frequency control conditions of the vehicle-road-cloud dual-channel communication link, and ensures that vehicle-road-cloud emergency events are given priority transmission through priority queues, thereby improving the vehicle-road-cloud collaborative efficiency and performance of intelligent connected vehicles.

[0120] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a terminal device to execute the method described in each embodiment of the present application, and the above storage medium can be ROM (Read-Only Memory, read-only memory) / RAM (Random Access Memory, random access memory), a disk or an optical disk, etc., and the above terminal device can be a mobile phone, a computer, a server or a network device, etc.

[0121] According to another aspect of the embodiments of the present application, a control device for a communication channel is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0122] Fig.10 is a structural block diagram of an optional communication channel control device according to an embodiment of the present application, such as Fig.10 As shown, the device comprises:

[0123] The first acquisition unit 1002 is used to acquire a parameter value of each channel parameter in a set of channel parameters corresponding to a first communication channel in a current time window, wherein the first communication channel is a communication channel used by the current device to transmit a specified message stream in a dual communication channel, the dual communication channel includes a PC5 channel and a Uu channel, and the set of channel parameters includes at least one of the following: channel busy rate, delay, jitter, and packet loss rate;

[0124] A first judging unit 1004 is configured to judge whether a channel switching condition is satisfied based on a parameter value of each channel parameter, wherein the channel switching condition is a condition for switching a communication channel used for transmitting a specified message flow, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters;

[0125] The switching unit 1006 is configured to switch the communication channel used for transmitting the specified message flow from the first communication channel to the second communication channel in the dual communication channels when it is determined that the channel switching condition is met.

[0126] It should be noted that the first acquisition unit 1002 in this embodiment can be used to execute the above step S202, the first judgment unit 1004 in this embodiment can be used to execute the above step S204, and the switching unit 1006 in this embodiment can be used to execute the above step S206.

[0127] Through the embodiments of the present application, the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel in the current time window is obtained, wherein the first communication channel is the communication channel used by the current device to transmit a specified message stream in the dual communication channel, the dual communication channel includes a PC5 channel and a Uu channel, and a set of channel parameters includes at least one of the following: channel busy rate, delay, jitter, packet loss rate; based on the parameter value of each channel parameter, it is determined whether a channel switching condition is met, wherein the channel switching condition is a condition for switching the communication channel used for transmitting the specified message stream, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters; when it is determined that the channel switching condition is met, the communication channel used for transmitting the specified message stream is switched from the first communication channel to the second communication channel in the dual communication channel, thereby solving the problem of abnormal vehicle-road-cloud communication caused by possible factors such as fluctuations in communication channel quality and environmental occlusion in the control method of the communication channel in the related art, reducing the influence of environmental factors on message stream transmission, and ensuring the normal operation of vehicle-road-cloud communication.

[0128] In an exemplary embodiment, the first acquisition unit includes at least one of the following: a first acquisition module, which is used to obtain the parameter value of the channel busy rate corresponding to the first channel in the current time window when a set of channel parameters includes the channel busy rate, wherein the first switching condition includes that the parameter value of the channel busy rate is greater than or equal to the first parameter threshold; a second acquisition module, which is used to obtain the number of occurrences of the first delay event corresponding to the first channel in the current time window when a set of channel parameters includes the delay, wherein the first delay event is that the difference between the current delay and the real-time delay mean is greater than the delay growth threshold, and the first switching condition includes that the number of occurrences of the first delay event is greater than or equal to the first number threshold; a third acquisition module, which is used to obtain the number of occurrences of the first delay event corresponding to the first channel in the current time window when a set of channel parameters includes the delay. The number of occurrences of a second delay event corresponding to the first channel channel in the mouth, wherein the second delay event is that the current delay is greater than the delay threshold, and the first switching condition includes that the number of occurrences of the second delay event is greater than or equal to the second number threshold; a fourth acquisition module, used to obtain the number of occurrences of a specified jitter event corresponding to the first channel channel in the current time window when a set of channel parameters includes jitter, wherein the specified jitter event is that the current jitter is greater than the jitter threshold, and the first switching condition includes that the number of occurrences of the specified jitter event is greater than or equal to the third number threshold; a fifth acquisition module, used to obtain the parameter value of the packet loss rate corresponding to the first channel channel in the current time window when a set of channel parameters includes the packet loss rate, wherein the first switching condition includes that the parameter value of the packet loss rate is greater than or equal to the second parameter threshold.

[0129] In an exemplary embodiment, the number of message streams allowed on each communication channel in the dual communication channels is less than or equal to a specified number threshold, and the channel switching condition further includes a second switching condition, and the second switching condition is that the number of message streams on the communication channel to be switched to is less than the specified number threshold. The above-mentioned device also includes: a second judgment unit, which is used to determine whether the channel switching condition is met based on the parameter value of each channel parameter, and determine the number of message streams on the second communication channel when the first switching condition is determined to be met based on the parameter value of each channel parameter; a first determination unit, which is used to determine that the second switching condition is met when the number of message streams on the second communication channel is less than the specified number threshold, wherein the channel switching condition is met includes that both the first switching condition and the second switching condition are met.

[0130] In an exemplary embodiment, the channel switching condition further includes a third switching condition, and the third switching condition is that the network quality on the communication channel to be switched to satisfies the network quality condition. The above-mentioned device further includes: a third judgment unit, which is used to determine whether the channel switching condition is met based on the parameter value of each channel parameter, and determine the network quality of the second communication channel when the first switching condition is met based on the parameter value of each channel parameter; a second determination unit, which is used to determine that the third switching condition is met when the network quality of the second communication channel satisfies the network quality condition, wherein the channel switching condition is met includes that both the first switching condition and the third switching condition are met.

[0131] In an exemplary embodiment, the above-mentioned device also includes: a first execution unit, which is used to switch the communication channel used for transmitting the specified message stream from the first communication channel to the second communication channel in the dual communication channel, and then continue to use the second communication channel to transmit the specified message stream if the first communication channel meets the network quality condition in the next time window of the current time window.

[0132] In an exemplary embodiment, the above-mentioned device also includes: an adjustment unit, which is used to adjust the message generation period corresponding to the specified message stream based on the acquired parameter value of the channel busy rate after obtaining the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel within the current time window, when the set of channel parameters includes a channel busy rate, so as to adjust the sending frequency of messages in the specified message stream, wherein the message generation period is positively correlated with the parameter value of the channel busy rate.

[0133] In an exemplary embodiment, the messages to be sent by the current device are simultaneously placed in the priority queue and the delay queue, wherein the messages in the priority queue are sorted in descending order according to the priority of the message stream, and the messages in the delay queue are sorted in descending order based on the waiting time. The above-mentioned device also includes: a second execution unit, which is used to sequentially obtain the head message of the priority queue; if the head message of the priority queue has not been sent, send the head message of the priority queue; if the head message of the priority queue has been sent, delete the head message of the priority queue; a third execution unit, which is used to periodically poll the messages in the delay queue until the waiting time of the polled message is less than the waiting time threshold; if the polled message has not been sent, send the polled message; if the polled message has been sent, delete the polled message.

[0134] In an exemplary embodiment, the above-mentioned device also includes: a fourth execution unit, which is used to determine that the head message of the priority queue has not been sent after each acquisition of the head message of the priority queue, if the identification value of the message identifier of the head message of the priority queue is a first identification value; determine that the head message of the priority queue has been sent, if the identification value of the message identifier of the head message of the priority queue is a second identification value; after sending the head message of the priority queue, set the message identifier of the head message of the priority queue to the second identification value; a fifth execution unit, which is used to determine that after each polling of a message in a delay queue, if the identification value of the message identifier of the polled message is a first identification value, the polled message has not been sent; if the identification value of the message identifier of the polled message is a second identification value, determine that the polled message has been sent; after sending the polled message, set the message identifier of the polled message to the second identification value.

[0135] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.

[0136] According to another aspect of the embodiments of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium includes a stored program, wherein the steps of any of the above method embodiments are executed when the program is run.

[0137] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, a ROM, a RAM, a mobile hard disk, a magnetic disk, or an optical disk.

[0138] According to another aspect of the embodiments of the present application, an electronic device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor is configured to execute the steps in any of the above method embodiments through the computer program. In an exemplary embodiment, the electronic device may further comprise a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.

[0139] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail herein.

[0140] According to another aspect of the embodiment of the present application, a computer program product is also provided, which includes a computer program / instruction, and the computer program / instruction contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 1109, and / or installed from the removable medium 1111. When the computer program is executed by the central processing unit 1101, various functions provided by the embodiment of the present application are executed. The above-mentioned serial numbers of the embodiments of the present application are only for description and do not represent the advantages and disadvantages of the embodiments.

[0141] Fig.11 The computer system structure block diagram of the electronic device used to implement the embodiment of the present application is schematically shown. Fig.11 As shown, the computer system 1100 includes a CPU (Central Processing Unit) 1101, which can perform various appropriate actions and processes according to the program stored in the ROM 1102 or the program loaded from the storage part 1108 to the RAM 1103. Various programs and data required for system operation are also stored in the random access memory 1103. The central processing unit 1101, the read-only memory 1102 and the random access memory 1103 are connected to each other through a bus 1104. An I / O (Input / Output) interface 1105 is also connected to the bus 1104.

[0142] The following components are connected to the I / O interface 1105: an input section 1106 including a keyboard, a mouse, etc.; an output section 1107 including a CRT (Cathode RayTube), an LCD (Liquid Crystal Display), etc., and a speaker, etc.; a storage section 1108 including a hard disk, etc.; and a communication section 1109 including a network interface card such as a LAN card, a modem, etc. The communication section 1109 performs communication processing via a network such as the Internet. A drive 1110 is also connected to the input / output interface 1105 as needed. A removable medium 1111, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1110 as needed so that a computer program read therefrom is installed into the storage section 1108 as needed.

[0143] In particular, according to an embodiment of the present application, the process described in each method flow chart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer readable medium, and the computer program contains a program code for executing the method shown in the flow chart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 1109, and / or installed from the removable medium 1111. When the computer program is executed by the central processor 1101, various functions defined in the system of the present application are executed.

[0144] It should be noted that Fig.11 The computer system 1100 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0145] Obviously, those skilled in the art should understand that the above modules or steps of the present application can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present application is not limited to any specific combination of hardware and software.

[0146] The above are only preferred embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the principles of the present application shall be included in the protection scope of the present application.

Claims

1. A method for controlling a communication channel, characterized in that: include: Obtaining a parameter value of each channel parameter in a set of channel parameters corresponding to a first communication channel in a current time window, wherein the first communication channel is a communication channel used by a current device in a dual communication channel to transmit a specified message stream, the dual communication channels include a PC5 channel and a Uu channel, and the set of channel parameters includes at least one of the following: channel busy rate, delay, jitter, and packet loss rate; Based on the parameter value of each channel parameter, determining whether a channel switching condition is satisfied, wherein the channel switching condition is a condition for switching a communication channel used for transmitting the specified message flow, and the channel switching condition includes a first switching condition corresponding to the set of channel parameters; When it is determined that the channel switching condition is met, the communication channel used for transmitting the designated message flow is switched from the first communication channel to the second communication channel in the dual communication channels.

2. The method according to claim 1, characterized in that The acquiring the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel in the current time window includes at least one of the following: In a case where the set of channel parameters includes a channel busy rate, obtaining a parameter value of the channel busy rate corresponding to the first channel in the current time window, wherein the first switching condition includes that the parameter value of the channel busy rate is greater than or equal to a first parameter threshold; In the case where the set of channel parameters includes delay, obtaining the number of occurrences of a first delay event corresponding to the first channel in the current time window, wherein the first delay event is that the difference between the current delay and the real-time delay mean is greater than a delay growth threshold, and the first switching condition includes that the number of occurrences of the first delay event is greater than or equal to a first number threshold; In the case where the set of channel parameters includes a delay, obtaining the number of occurrences of a second delay event corresponding to the first channel in the current time window, wherein the second delay event is that the current delay is greater than a delay threshold, and the first switching condition includes that the number of occurrences of the second delay event is greater than or equal to a second number threshold; In the case where the set of channel parameters includes jitter, obtaining the number of occurrences of a specified jitter event corresponding to the first channel in the current time window, wherein the specified jitter event is that the current jitter is greater than a jitter threshold, and the first switching condition includes that the number of occurrences of the specified jitter event is greater than or equal to a third number threshold; In a case where the set of channel parameters includes a packet loss rate, a parameter value of the packet loss rate corresponding to the first channel within the current time window is obtained, wherein the first switching condition includes that the parameter value of the packet loss rate is greater than or equal to a second parameter threshold.

3. The method according to claim 1, characterized in that The number of message streams allowed on each communication channel of the dual communication channels is less than or equal to a specified number threshold, and the channel switching condition further includes a second switching condition, wherein the second switching condition is that the number of message streams on the communication channel to be switched to is less than the specified number threshold; After determining whether a channel switching condition is met based on the parameter value of each channel parameter, the method further includes: In a case where it is determined based on the parameter value of each channel parameter that the first switching condition is satisfied, determining the number of message flows on the second communication channel; When the number of message flows on the second communication channel is less than the specified number threshold, it is determined that the second switching condition is satisfied, wherein the channel switching condition being satisfied includes that both the first switching condition and the second switching condition are satisfied.

4. The method according to claim 1, characterized in that: The channel switching condition further includes a third switching condition, wherein the third switching condition is that the network quality on the communication channel to be switched to meets the network quality condition; After determining whether a channel switching condition is met based on the parameter value of each channel parameter, the method further includes: Determining the network quality of the second communication channel when it is determined that the first switching condition is satisfied based on the parameter value of each channel parameter; In a case where the network quality of the second communication channel satisfies the network quality condition, it is determined that the third switching condition is satisfied, wherein the channel switching condition being satisfied includes that both the first switching condition and the third switching condition are satisfied.

5. The method according to claim 4, characterized in that After switching the communication channel used for transmitting the specified message stream from the first communication channel to the second communication channel in the dual communication channels, the method further includes: When the first communication channel meets the network quality condition in a time window next to the current time window, the second communication channel is kept used to transmit the designated message flow.

6. The method according to claim 1, characterized in that After acquiring the parameter value of each channel parameter in a set of channel parameters corresponding to the first communication channel within the current time window, the method further includes: In the case where the set of channel parameters includes a channel busy rate, based on the acquired parameter value of the channel busy rate, the message generation period corresponding to the specified message stream is adjusted to adjust the sending frequency of messages in the specified message stream, wherein the message generation period is positively correlated with the parameter value of the channel busy rate.

7. The method according to any one of claims 1 to 6, characterized in that The messages to be sent by the current device are put into the priority queue and the delay queue at the same time, wherein the messages in the priority queue are sorted in descending order according to the priority of the message flow, and the messages in the delay queue are sorted in descending order based on the waiting time; The method further comprises: Obtaining the head message of the priority queue in sequence; sending the head message of the priority queue if the head message of the priority queue has not been sent; deleting the head message of the priority queue if the head message of the priority queue has been sent; The messages in the delay queue are polled periodically until the waiting time of the polled message is less than the waiting time threshold; if the polled message has not been sent, the polled message is sent; if the polled message has been sent, the polled message is deleted.

8. The method according to claim 7, characterized in that After each acquisition of the head message of the priority queue, the method further includes: when the identification value of the message identifier of the head message of the priority queue is a first identification value, determining that the head message of the priority queue has not been sent; when the identification value of the message identifier of the head message of the priority queue is a second identification value, determining that the head message of the priority queue has been sent; after sending the head message of the priority queue, setting the message identifier of the head message of the priority queue to the second identification value; After each polling of a message in the delay queue, the method further includes: when the identification value of the message identifier of the polled message is the first identification value, determining that the polled message has not been sent; when the identification value of the message identifier of the polled message is the second identification value, determining that the polled message has been sent; after sending the polled message, setting the message identifier of the polled message to the second identification value.

9. A control device for a communication channel, characterized in that: include: A first acquisition unit is used to acquire a parameter value of each channel parameter in a set of channel parameters corresponding to a first communication channel in a current time window, wherein the first communication channel is a communication channel used by a current device in a dual communication channel to transmit a specified message stream, the dual communication channel includes a PC5 channel and a Uu channel, and the set of channel parameters includes at least one of the following: channel busy rate, delay, jitter, and packet loss rate; A first judgment unit is used to judge whether a channel switching condition is met based on a parameter value of each channel parameter, wherein the channel switching condition is a condition for switching a communication channel used for transmitting a specified message flow, and the channel switching condition includes a first switching condition corresponding to a set of channel parameters; The switching unit is used to switch the communication channel used for transmitting the specified message flow from the first communication channel to the second communication channel in the dual communication channels when it is determined that the channel switching condition is met.

10. A computer-readable storage medium, characterized in that: A computer program is stored in the computer-readable storage medium, wherein when the computer program is executed by a processor, the steps of the method of any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Polling method and device thereof

    CN101753246A

  • Information frame sending method and communication terminal

    CN103260253A

  • Task polling method, task arrangement method and relevant device

    CN108021439A

  • Data transmission method, terminal and storage medium

    CN110972197A

  • Communication method and communication device

    CN111432457A