A management device, a method for supporting quality of service (QoS) and related equipment

By deploying the management module in the middle layer of the vehicle communication system, and sending instructions to the upper and lower layers to provide QoS support, the problem that devices cannot enjoy the DDS protocol QoS capabilities in autonomous driving scenarios is solved, and the support and difficulty of required QoS are achieved.

CN115604361BActive Publication Date: 2025-06-06YINWANG INTELLIGENT TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211064878.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-31
Publication Date
2025-06-06
Estimated Expiration
2042-08-31

AI Technical Summary

Technical Problem

The prior art is difficult to provide high communication capabilities in autonomous driving scenarios, resulting in devices bound to the SOME/IP protocol being unable to enjoy the rich quality of service (QoS) capabilities in the DDS protocol.

Method used

The management module is deployed at the intermediate layer of the communication system of the vehicle, and the instructions are sent to the upper and/or lower layers of the intermediate layer through the management module, providing support for some QoS in the QoS required for communication services with the ability of the intermediate layer.

Benefits of technology

Regardless of the communication middleware under which protocol type is bound to each communication service, it can support the required QoS, reducing the difficulty of implementing support for the QoS required for communication services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115604361B_ABST
    Figure CN115604361B_ABST
Patent Text Reader

Abstract

An embodiment of the present application discloses a management device, a method for supporting quality of service QoS, and related equipment. The method can be used in the field of autonomous driving in artificial intelligence. The management device is deployed in the middle layer of the communication system of the vehicle. The management device includes communication middleware and a management module specified by a first communication protocol. The management module is used to provide QoS support required by the first communication service during the process in which the communication middleware performs a data processing operation corresponding to the first communication service based on the provisions of the first communication protocol; wherein the management module is specifically used to transmit indication information to the upper layer or lower layer of the middle layer, and the indication information is used for the upper layer or lower layer of the middle layer to perform resource scheduling, so as to provide QoS support for the first communication service through the upper layer or lower layer of the middle layer, thereby reducing changes to the middle layer and reducing the difficulty of implementing support for QoS required by the communication service.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of autonomous driving, and in particular to a management device, a method for supporting quality of service (QoS), and related equipment. Background Art

[0002] The automotive open system architecture (AUTOSAR) is a standard software architecture widely used in the industry, which is divided into the AUTOSAR Adaptive Platform (AP) and the classic platform (CP). Among them, CP has been widely used in traditional automotive embedded ECUs, and can meet the needs of scenarios with high functional safety and real-time requirements but low computing power requirements, including engine controllers and brake controllers. AP is a new architecture that has emerged to meet the requirements of high performance and high computing power requirements of the next generation of intelligent connected vehicles, as well as complex scenarios such as autonomous driving. It will be widely used in autonomous driving vehicles in the future.

[0003] The AUTOSAR AP specification supports the binding of the scalable service-oriented middleware over Internet protocol (IP) (SOME / IP) protocol, which is a standard protocol for communication middleware. Later, in order to meet the requirements of higher communication capabilities in autonomous driving scenarios, the AUTOSAR AP specification introduced the binding of the DDS protocol, which is another standard protocol for communication middleware, to integrate the rich quality of service (QoS) in the DDS protocol into the AUTOSAR AP.

[0004] However, the communication services of many devices are currently bound to the SOME / IP protocol, and are difficult to directly replace with the DDS protocol due to architectural constraints, resulting in the inability to enjoy various QoS capabilities. Summary of the invention

[0005] The present application provides a management device, a method for supporting quality of service QoS, and related equipment, which provide support for part of the QoS required for communication services by means of the capabilities of the upper layer and / or lower layer of the middle layer of the communication system, reduce the changes to the middle layer, and reduce the difficulty of implementing support for the QoS required for communication services.

[0006] In order to solve the above technical problems, this application provides the following technical solutions:

[0007] In the first aspect, the present application provides a management device that can be used in the field of autonomous driving in the field of artificial intelligence. The aforementioned management device is deployed in the middle layer of the vehicle's communication system, and the management device includes a first communication middleware and a management module specified by a first communication protocol. Among them, the first communication middleware is used to perform data processing operations corresponding to the first communication service based on the provisions of the first communication protocol after establishing a communication link corresponding to the first communication service with the first device; wherein, a communication service indicates the transmission of one or more data, exemplarily, the sensor system can obtain location information, motion information, radar data, laser data and image data, a communication service can be defined as transmitting location information, radar data or laser data, another communication service can be defined as transmitting motion information, another communication service can be defined as transmitting image data, etc. The management module is used to provide support for the QoS required by the first communication service during the data processing of the first communication middleware.

[0008] Among them, the management module is specifically used for: in the process of the first communication middleware processing the message from the first device, when the QoS required by the first communication service includes the first QoS, transmitting the first indication information to the upper layer of the middle layer, and the first indication information is used for the upper layer of the middle layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the middle layer; or, in the process of the first communication middleware processing the message sent to the first device, when the QoS required by the first communication service includes the second QoS, transmitting the second indication information to the lower layer of the middle layer, and the second indication information is used for the lower layer of the middle layer to perform resource scheduling according to the second indication information, so as to provide support for the second QoS through the lower layer of the middle layer.

[0009] In this implementation, after a communication service has been bound to a communication middleware specified by a communication protocol, an additional management module is deployed in the middle layer, and an independent management module provides support for the QoS required by the communication service, so that no matter which type of communication middleware under the protocol each communication service is bound to, it can support the required QoS; the management module sends indication information to the upper layer and / or lower layer of the middle layer, so as to provide support for part of the QoS required by the communication service with the help of the capabilities of the upper layer and / or lower layer of the middle layer, thereby reducing changes to the middle layer and reducing the difficulty of implementing support for the QoS required by the communication service.

[0010] Optionally, the management module is also used to determine to retain the communication operation with the first device when it is uncertain whether the QoS capability of the first device can successfully match the target QoS based on the service discovery message of the first device, and to determine to formally establish a communication link with the first device when it is determined based on the communication operation that the QoS capability of the first device successfully matches the target QoS. The target QoS is the QoS that needs to be matched among the QoS required by the first communication service; "retaining the communication operation with the first device" includes retaining the interactive operation of the message with the first device. For example, "retaining the interactive operation of the message with the first device" may include: the third device continues to receive the first message of the second communication protocol type sent by the first device; optionally, it also includes the third device continuing to send the second message of the second communication protocol type to the first device.

[0011] In this implementation, when it is impossible to determine whether the QoS capability of the first device successfully matches each target QoS based on the data in the service discovery message from the first device, it will not be chosen to directly confirm the failure of link establishment with the first device, but the communication operation with the first device will be retained, and the actual QoS capability of the first device is determined based on the communication operation to determine that it can successfully match each target QoS, and then a communication link is formally established with the first device; for example, when the first communication service in the first device is bound to the SOME / IP protocol, the information carried in the service discovery message of the SOME / IP protocol cannot fully reflect the QoS capability of the first device. The use of this solution is conducive to more accurately determining the QoS capability of the first device, so as to increase the probability of successfully establishing a communication link.

[0012] Optionally, the information used to determine the QoS capability of the first device includes any one or more of the following: the time when the message is received during the communication operation, the timestamp carried in the message received during the communication operation, the sequence number carried in the message received during the communication operation, or the destination address in the message received during the communication operation. In this implementation, it is disclosed which information generated in the communication operation is used to determine the actual QoS capability of the first device, which is conducive to reducing the difficulty of implementing the solution and improving the accuracy of implementing the solution.

[0013] Optionally, the management module in the third device may also be configured with a program code for providing support for the third QoS for the first communication service. The management module is also specifically used to provide support for the third QoS through the management module when the third QoS exists in the QoS required by the first communication service, and transmit third indication information to the upper layer of the middle layer and / or the lower layer of the middle layer, the third indication information including the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer. In this implementation, after providing support for the third QoS, the management module will also transmit the third indication information to the upper layer of the middle layer and / or the lower layer of the middle layer, the third indication information including the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer, which is beneficial for the upper layer of the middle layer and / or the lower layer of the middle layer to understand more information related to the first communication service, and to achieve the coherence between the middle layer and other layers, thereby facilitating the improvement of the service quality of the first communication service.

[0014] Optionally, the management device also includes a conversion module for mapping messages of the second communication protocol type from the first device to messages of the first communication protocol type when the second communication protocol and the first communication protocol are different, and then the first communication middleware performs data processing according to the message of the first communication protocol type based on the provisions of the first communication protocol, wherein "mapping messages of the second communication protocol type from the first device to messages of the first communication protocol type" includes mapping the message from the first device from the format of the message specified by the second communication protocol to the format of the message specified by the first communication protocol. In this implementation, although each communication service is bound to only one communication protocol, the message of the second communication protocol type can be mapped to the message of the first communication protocol type through the conversion module, and the message of the first communication protocol type can be processed by the first communication middleware, that is, the third device can process messages of different communication protocols, which greatly expands the application scenarios of this solution.

[0015] Optionally, the first communication protocol includes the SOME / IP protocol, and the second communication protocol includes the DDS protocol.

[0016] Optionally, the conversion module is specifically used to map the message of the second communication protocol type from the first device to the message of the first communication protocol type after establishing a communication link with the first device; the communication middleware is specifically used to process data according to the content of the message of the first communication protocol type. The management module is also used to dynamically adjust the time occupied by the conversion module and the communication middleware in the process of processing the message from the first device, and / or, it is also used to adjust the priority of the message from the first device in the conversion module and the communication middleware. In this implementation, since the conversion module is added, the steps of the middle layer of the vehicle's communication system in the process of processing the message from the first device will be increased. The management module dynamically adjusts the time occupied by the conversion module and the first communication middleware in the process of processing the message from the first device according to the actual situation, which is conducive to making the total time of the entire middle layer processing the message controllable, and is conducive to ensuring the service quality of the third device when providing the first communication service; the way of adjusting the priority of the message from the first device in the conversion module and the communication middleware can also realize the control of the time occupied by the conversion module and the first communication middleware in the process of processing the message from the first device, which improves the implementation flexibility of this solution.

[0017] Optionally, the device also includes a conversion module, which is used to map at least one QoS configuration parameter in the QoS required by the first communication service to the SOME / IP protocol type message when sending a SOME / IP protocol type message to the second device. The manner of mapping the information related to the QoS capability of the first device to the SOME / IP protocol type message may include any one or more of the following: mapping to the message header of the SOME / IP protocol type message, that is, the message header of the SOME / IP protocol type message that carries certain QoS parameters; converting the QoS configuration parameters into string information, and filling the aforementioned string information in the Option-Configuration field of the SOME / IP protocol type message; converting the QoS configuration parameters into string information, and filling the aforementioned string information in the SOME / IP protocol type message body. In this implementation, although the SOME / IP protocol does not support a large number of QoS capabilities, when sending a SOME / IP protocol type message, at least one QoS configuration parameter in the QoS required by the first communication service is mapped to the SOME / IP protocol type message, that is, more information is passed to the other end, which is conducive to increasing the possibility of the other end understanding the actual QoS capabilities of the third device.

[0018] In the second aspect, the present application provides a method for supporting quality of service (QoS), which can be used in the field of autonomous driving in the field of artificial intelligence. The aforementioned method is applied to the middle layer of the vehicle's communication system, and the middle layer of the vehicle's communication system is deployed with a first communication middleware and a management module specified by a first communication protocol. The method includes: after establishing a communication link corresponding to a first communication service with a first device, the first communication middleware performs a data processing operation corresponding to the first communication service based on the provisions of the first communication protocol; and provides support for the QoS required by the first communication service through the management module.

[0019] Among them, support for QoS required by the first communication service is provided through the management module, including: when a first QoS exists in the QoS required by the first communication service, first indication information is transmitted to the upper layer of the middle layer, and the first indication information is used for the upper layer of the middle layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the middle layer; or, when a second QoS exists in the QoS required by the first communication service, second indication information is transmitted to the lower layer of the middle layer, and the second indication information is used for the lower layer of the middle layer to perform resource scheduling according to the second indication information, so as to provide support for the second QoS through the lower layer of the middle layer.

[0020] In the second aspect of the present application, the intermediate layer of the vehicle's communication system may also include a conversion module. The first communication middleware, management module and conversion module of the intermediate layer of the aforementioned communication system are also used to execute the steps in the various possible implementation methods of the first aspect. For the specific implementation steps of the second aspect of the present application and the various possible implementation methods of the second aspect, as well as the beneficial effects brought about by each possible implementation method, reference may be made to the description of the various possible implementation methods in the first aspect, and no further details will be given here.

[0021] In a third aspect, the present application provides an autonomous driving vehicle, which may include a memory, a processor, and a bus system, wherein the memory is used to store programs, and the processor is used to execute programs in the memory, including the following steps: the bus system is used to connect the memory and the processor so that the memory and the processor communicate. The processor is used to execute the QoS support method described in the second aspect above.

[0022] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, which, when executed on a computer, enables the computer to execute the QoS supporting method described in the second aspect.

[0023] In a fifth aspect, the present application provides a circuit system, wherein the circuit system includes a processing circuit, and the processing circuit is configured to execute the QoS support method described in the second aspect.

[0024] In a sixth aspect, the present application provides a computer program which, when running on a computer, enables the computer to execute the QoS support method described in the second aspect above.

[0025] In a seventh aspect, the present application provides a chip system, which includes a processor for supporting a server or a management device to implement the functions involved in the above aspects, for example, sending or processing the data and / or information involved in the above methods. In one possible design, the chip system also includes a memory, which is used to store program instructions and data necessary for the server or communication device. The chip system can be composed of a chip, or it can include a chip and other discrete devices. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 A schematic diagram of the structure of an autonomous driving vehicle provided in an embodiment of the present application;

[0027] Figure 2a A schematic diagram of an intermediate layer of a vehicle communication system provided in an embodiment of the present application;

[0028] Figure 2b A flow chart of a QoS support method provided in an embodiment of the present application;

[0029] Figure 3 A flow chart of a QoS support method provided in an embodiment of the present application;

[0030] Figure 4 A schematic diagram of a configuration interface for the QoS required by the first communication service provided in an embodiment of the present application;

[0031] Figure 5 A schematic diagram of the structure of the middle layer of the communication system provided in an embodiment of the present application;

[0032] Figure 6 A schematic diagram of a flow chart of establishing a communication link in a method for supporting quality of service QoS provided in an embodiment of the present application;

[0033] Figure 7 A schematic diagram of the structure of a management device provided in an embodiment of the present application;

[0034] Figure 8 Another schematic diagram of the structure of the management device provided in the embodiment of the present application;

[0035] Fig. 9 Another schematic diagram of the structure of an autonomous driving vehicle provided in an embodiment of the present application. DETAILED DESCRIPTION

[0036] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchanged under appropriate circumstances. This is merely a way of distinguishing objects with the same properties when describing the embodiments of the present application. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, so that a process, method, system, product, or device that includes a series of units is not necessarily limited to those units, but may include other units that are not explicitly listed or inherent to these processes, methods, products, or devices.

[0037] The solution provided in the embodiment of the present application can be applied to the automotive open system architecture (AUTOSAR) of the vehicle, especially to the AP type AUTOSAR, and specifically to the middle layer of the communication system of the vehicle. In order to locate the middle layer of the communication system of the vehicle, the following is combined with Figure 1 and Figure 2a See first Figure 1 , Figure 1 A structural diagram of a vehicle provided in an embodiment of the present application, Figure 1 The vehicle is an autonomous driving vehicle as an example.

[0038] The autonomous vehicle 10 is configured to be in a fully or partially autonomous mode, for example, the autonomous vehicle 10 can control itself while in the autonomous mode, and can determine the current state of the vehicle and its surroundings through human operation, determine the possible behavior of at least one other vehicle in the surrounding environment, and determine the confidence level corresponding to the possibility of the other vehicles performing the possible behavior, and control the autonomous vehicle 10 based on the determined information. When the autonomous vehicle 10 is in the autonomous mode, the autonomous vehicle 10 can also be set to operate without human interaction.

[0039] The autonomous vehicle 10 may include various subsystems, such as a travel system 102, a sensor system 104, a control system 106, one or more peripheral devices 108, and a power supply 110, a computer system 112, and a user interface 116. Optionally, the autonomous vehicle 10 may include more or fewer subsystems, and each subsystem may include multiple components. In addition, each subsystem and component of the autonomous vehicle 10 may be interconnected by wire or wirelessly.

[0040] The travel system 102 may include components that provide powered movement for the autonomous vehicle 10. In one embodiment, the travel system 102 may include an engine 118, a power source 119, a transmission 120, and wheels / tires 121.

[0041] Among them, the engine 118 can be an internal combustion engine, an electric motor, an air compression engine, or a combination of other types of engines, for example, a hybrid engine consisting of a gasoline engine and an electric motor, and a hybrid engine consisting of an internal combustion engine and an air compression engine. The engine 118 converts the energy source 119 into mechanical energy. Examples of energy sources 119 include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries, and other sources of electricity. The energy source 119 can also provide energy for other systems of the autonomous driving vehicle 10. The transmission 120 can transmit the mechanical power from the engine 118 to the wheels 121. The transmission 120 may include a gearbox, a differential, and a drive shaft. In one embodiment, the transmission 120 may also include other devices, such as a clutch. Among them, the drive shaft may include one or more shafts that can be coupled to one or more wheels 121.

[0042] The sensor system 104 may include several sensors that sense information about the environment surrounding the autonomous vehicle 10. For example, the sensor system 104 may include a positioning system 122 (the positioning system may be a global positioning GPS system, or a Beidou system or other positioning systems), an inertial measurement unit (IMU) 124, a radar 126, a laser rangefinder 128, and a camera 130. The sensor system 104 may also include sensors of the internal systems of the monitored autonomous vehicle 10 (e.g., an in-vehicle air quality monitor, a fuel gauge, an oil temperature gauge, etc.). The sensing data from one or more of these sensors may be used to detect objects and their corresponding characteristics (position, shape, direction, speed, etc.). Such detection and recognition are key functions for the safe operation of the autonomous autonomous vehicle 10.

[0043] Among them, the positioning system 122 can be used to estimate the geographic location of the autonomous driving vehicle 10. The IMU 124 is used to sense the position and orientation changes of the autonomous driving vehicle 10 based on inertial acceleration. In one embodiment, the IMU 124 can be a combination of an accelerometer and a gyroscope. The radar 126 can use radio signals to sense objects in the surrounding environment of the autonomous driving vehicle 10, and can be specifically expressed as a millimeter wave radar or a laser radar. In some embodiments, in addition to sensing objects, the radar 126 can also be used to sense the speed and / or direction of travel of the object. The laser rangefinder 128 can use lasers to sense objects in the environment where the autonomous driving vehicle 10 is located. In some embodiments, the laser rangefinder 128 may include one or more laser sources, a laser scanner, and one or more detectors, as well as other system components. The camera 130 can be used to capture multiple images of the surrounding environment of the autonomous driving vehicle 10. The camera 130 can be a static camera or a video camera.

[0044] The control system 106 controls the operation of the autonomous vehicle 10 and its components. The control system 106 may include various components, including a steering system 132 , a throttle 134 , a brake unit 136 , a computer vision system 140 , a lane control system 142 , and an obstacle avoidance system 144 .

[0045] Among them, the steering system 132 can be operated to adjust the forward direction of the autonomous driving vehicle 10. For example, in one embodiment, it can be a steering wheel system. The throttle 134 is used to control the operating speed of the engine 118 and thus control the speed of the autonomous driving vehicle 10. The brake unit 136 is used to control the deceleration of the autonomous driving vehicle 10. The brake unit 136 can use friction to slow down the wheel 121. In other embodiments, the brake unit 136 can convert the kinetic energy of the wheel 121 into electric current. The brake unit 136 can also take other forms to slow down the rotation speed of the wheel 121 to control the speed of the autonomous driving vehicle 10. The computer vision system 140 can be operated to process and analyze the images captured by the camera 130 in order to identify objects and / or features in the surrounding environment of the autonomous driving vehicle 10. The objects and / or features may include traffic signals, road boundaries, and obstacles. The computer vision system 140 can use object recognition algorithms, Structure from Motion (SFM) algorithms, video tracking, and other computer vision technologies. In some embodiments, the computer vision system 140 can be used to map the environment, track objects, estimate the speed of objects, and so on. The route control system 142 is used to determine the route and speed of the autonomous driving vehicle 10. In some embodiments, the route control system 142 may include a lateral planning module 1421 and a longitudinal planning module 1422, which are respectively used to determine the route and speed for the autonomous driving vehicle 10 in combination with data from the obstacle avoidance system 144, GPS 122, and one or more predetermined maps. The obstacle avoidance system 144 is used to identify, evaluate, avoid, or otherwise cross obstacles in the environment of the autonomous driving vehicle 10, and the aforementioned obstacles may specifically be actual obstacles and virtual moving bodies that may collide with the autonomous driving vehicle 10. In one example, the control system 106 may include components other than those shown and described in addition or in lieu thereof. Alternatively, some of the components shown above may be reduced.

[0046] The autonomous vehicle 10 interacts with external sensors, other vehicles, other computer systems, or users through the peripheral devices 108. The peripheral devices 108 may include a wireless communication system 146, an onboard computer 148, a microphone 150, and / or a speaker 152. In some embodiments, the peripheral devices 108 provide a means for the user of the autonomous vehicle 10 to interact with the user interface 116. For example, the onboard computer 148 may provide information to the user of the autonomous vehicle 10. The user interface 116 may also operate the onboard computer 148 to receive user input. The onboard computer 148 may be operated via a touch screen. In other cases, the peripheral devices 108 may provide a means for the autonomous vehicle 10 to communicate with other devices located in the vehicle. For example, the microphone 150 may receive audio (e.g., voice commands or other audio input) from the user of the autonomous vehicle 10. Similarly, the speaker 152 may output audio to the user of the autonomous vehicle 10.

[0047] The wireless communication system 146 communicates wirelessly with one or more devices directly or via a communication network. For example, the wireless communication system 146 may use 3G cellular communication, 4G cellular communication, 5G cellular communication, or wireless local area network (WLAN) communication, etc. In some embodiments, the wireless communication system 146 may communicate directly with the device using an infrared link, Bluetooth, or ZigBee. Other wireless protocols, such as various vehicle communication systems, for example, the wireless communication system 146 may include one or more dedicated short range communications (DSRC) devices, which may include public and / or private data communications between vehicles and / or roadside stations.

[0048] The power source 110 can provide power to various components of the autonomous vehicle 10. In one embodiment, the power source 110 can be a rechargeable lithium-ion or lead-acid battery. One or more battery packs of such batteries can be configured as a power source to provide power to various components of the autonomous vehicle 10. In some embodiments, the power source 110 and the energy source 119 can be implemented together, such as in some all-electric vehicles.

[0049] Some or all functions of the autonomous driving vehicle 10 are controlled by a computer system 112. The autonomous driving vehicle 10 may include one or more computer systems 112. Each computer system 112 may include at least one processor 113. The processor 113 executes instructions 115 stored in a non-transitory computer-readable medium such as a memory 114. If there are multiple computer systems 112 in the autonomous driving vehicle 10, the multiple computer systems 112 may be used to control various subsystems or components of the autonomous driving vehicle 10 in a distributed manner, that is, each component or subsystem of the autonomous driving vehicle 10 may have its own processor, such as some components of the steering component and the deceleration component. Each component may have its own processor, and the processor only performs calculations related to the functions specific to the component.

[0050] Each processor 113 may be any conventional processor, such as a central processing unit (CPU). Alternatively, the processor 113 may be a dedicated device such as an application specific integrated circuit (ASIC) or other hardware-based processor.

[0051] although Figure 1 The processor, memory, and other components of the computer system 112 are functionally illustrated as being in the same block, but one of ordinary skill in the art will appreciate that the processor, or memory, may actually include multiple processors, or memories that are not stored in the same physical housing. For example, the memory 114 may be a hard drive or other storage medium located in a housing different from the computer system 112. Thus, references to the processor 113 or memory 114 will be understood to include references to a collection of processors or memories that may or may not operate in parallel.

[0052] In some embodiments, the memory 114 may contain instructions 115 (e.g., program logic) that can be executed by the processor 113 to perform various functions of the autonomous vehicle 10, including those described above. The memory 114 may also contain additional instructions, including instructions to send data to, receive data from, interact with, and / or control one or more of the travel system 102, the sensor system 104, the control system 106, and the peripheral devices 108. In addition to the instructions 115, the memory 114 may also store data such as road maps, route information, the vehicle's location, direction, speed, and other such vehicle data, as well as other information. This information can be used by the autonomous vehicle 10 and the computer system 112 during the operation of the autonomous vehicle 10 in autonomous, semi-autonomous, and / or manual modes. A user interface 116 is used to provide information to or receive information from a user of the autonomous vehicle 10. Optionally, the user interface 116 may include one or more input / output devices within the set of peripheral devices 108, such as a wireless communication system 146, an onboard computer 148, a microphone 150, and a speaker 152.

[0053] The computer system 112 can control the functions of the autonomous vehicle 10 based on inputs received from various subsystems (e.g., the travel system 102, the sensor system 104, and the control system 106) and from the user interface 116. If there are multiple computer systems 112 in the autonomous vehicle 10, the multiple computer systems 112 can exchange data in a wired communication manner to achieve control of the autonomous vehicle 10. For example, the computer system 112 can use input from the control system 106 to control the steering system 132 to avoid obstacles detected by the sensor system 104 and the obstacle avoidance system 144. In some embodiments, the computer system 112 can be operated to provide control over many aspects of the autonomous vehicle 10 and its subsystems.

[0054] Optionally, one or more of the above components may be installed or associated separately from the autonomous vehicle 10. For example, the memory 114 may be partially or completely separate from the autonomous vehicle 10. The above components may be communicatively coupled together in a wired and / or wireless manner.

[0055] Optionally, the above components are only examples. In actual applications, the components in the above modules may be added or deleted according to actual needs. Figure 1It should not be understood as a limitation of the embodiments of the present application. An autonomous vehicle traveling on a road, such as the autonomous vehicle 10 above, can identify objects in its surrounding environment to determine adjustments to the current speed. The objects can be other vehicles, traffic control devices, or other types of objects. In some examples, each identified object can be considered independently, and based on the respective characteristics of the object, such as its current speed, acceleration, spacing from the vehicle, etc., it can be used to determine the speed to be adjusted by the autonomous vehicle.

[0056] Optionally, the autonomous vehicle 10 or a computing device associated with the autonomous vehicle 10 may be Figure 1 The computer system 112, computer vision system 140, and memory 114 can predict the behavior of the identified objects based on the characteristics of the identified objects and the state of the surrounding environment (e.g., traffic, rain, ice on the road, etc.). Optionally, each of the identified objects depends on the behavior of each other, so all the identified objects can also be considered together to predict the behavior of a single identified object. The autonomous vehicle 10 can adjust its speed based on the predicted behavior of the identified objects. In other words, the autonomous vehicle 10 can determine what stable state the vehicle will need to adjust to (e.g., accelerate, decelerate, or stop) based on the predicted behavior of the object. In this process, other factors can also be considered to determine the speed of the autonomous vehicle 10, such as the lateral position of the autonomous vehicle 10 in the road on which it is traveling, the curvature of the road, the proximity of static and dynamic objects, etc. In addition to providing instructions to adjust the speed of the autonomous vehicle, the computing device can also provide instructions to modify the steering angle of the autonomous vehicle 10 so that the autonomous vehicle 10 follows a given trajectory and / or maintains a safe lateral and longitudinal distance from objects near the autonomous vehicle 10 (e.g., cars in adjacent lanes on the road).

[0057] The above-mentioned autonomous driving vehicle 10 can be a car, a truck, a motorcycle, a bus, a ship, an airplane, a helicopter, a lawn mower, an amusement park vehicle, construction equipment, a tram, a golf cart, a train, etc., and the embodiments of the present application are not particularly limited.

[0058] In conjunction with the above description, please refer to Figure 2a , Figure 2a A schematic diagram of the middle layer of the vehicle communication system provided in the embodiment of the present application. For example, the vehicle communication system mentioned above may refer to a wired communication system in each computer system 112 in the autonomous driving vehicle 10, or may refer to a wireless communication system 146 in the autonomous driving vehicle 10. Figure 2aAs shown, the communication system in the vehicle may include an application layer, a communication management (CM) standard service implementation layer, an intermediate layer, a transport layer, and an Ethernet network of a data link layer. Among them, the application layer can deploy one or more applications. Multiple applications in the application layer may involve one or more communication services, that is, the configuration process of some applications among multiple applications will require the configuration of the communication services involved. Each communication service needs to be bound to a communication middleware specified by a communication protocol. Different communication services can be bound to the same type of communication middleware, or different types of communication middleware. What types of communication services exist in the vehicle can be predefined, and what communication services an application involves can also be predefined. For example, a communication service can be defined as transmitting one or more types of data. Exemplarily, the sensor system 104 can obtain position information, motion information, radar data, laser data and image data. The processor 113 may contain a processor for controlling the sensor system 104. The application deployed on the operating system of the processor may involve three communication services. One of the aforementioned three communication services can be defined as transmitting position information, radar data or laser data, another communication service can be defined as transmitting motion information, and another communication service can be defined as transmitting image data. It should be understood that the examples given here are only for the convenience of understanding this solution. The scope of a specific communication service can be combined with the actual application scenario and is not limited here. It should be noted that since the application layer can deploy multiple applications, different applications may involve the same communication service or different communication services.

[0059] The CM standard service implementation layer is used to provide one or more of the following functions: providing users with a configuration interface for communication services, binding each communication service to a certain communication protocol or other functions, etc. The aforementioned "certain communication protocol" refers to the protocol used to specify the communication middleware of the intermediate layer, which is not exhaustive here. The intermediate layer in the embodiment of the present application may include one or more communication middleware and management modules. For example, each type of communication middleware may be the communication middleware specified by the SOME / IP protocol, or the communication middleware specified by the DDS protocol, other types of communication middleware, and so on.

[0060] The management module is used to provide support for the QoS required by at least one communication service. For example, if a communication service (hereinafter referred to as "first communication service" for the convenience of description) is bound to a communication middleware of a first communication protocol, and if the first communication protocol does not provide support for QoS, the management module can provide support for the QoS required by the first communication service. Therefore, no matter which communication middleware specified by the protocol is bound to each communication service, the QoS required by the communication service can be supported.

[0061] For details, please refer to Figure 2b , Figure 2b A flow chart of a QoS support method provided by an embodiment of the present application. Among them, A1, after establishing a communication link corresponding to the first communication service with the first device, the first communication middleware performs a data processing operation corresponding to the first communication service based on the provisions of the first communication protocol; A2, providing support for the QoS required by the first communication service through the management module. Specifically, step A2 may include: when there is a first QoS in the QoS required by the first communication service, transmitting a first indication information to the upper layer of the middle layer, the first indication information is used for the upper layer of the middle layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the middle layer; or, when there is a second QoS in the QoS required by the first communication service, transmitting a second indication information to the lower layer of the middle layer, the second indication information is used for the lower layer of the middle layer to perform resource scheduling, so as to provide support for the second QoS through the lower layer of the middle layer. The management module can send indication information to the upper layer and / or lower layer of the middle layer, so as to provide support for part of the QoS in the QoS required by the communication service with the help of the capabilities of the upper layer and / or lower layer of the middle layer, reduce the changes to the middle layer, and reduce the difficulty of implementing support for the QoS required by the communication service.

[0062] The transport layer can provide different types of transmission channels, such as Figure 2a The shared memory (SHM) shown in FIG. 1 ), a transmission channel based on the transmission control protocol (TCP), a transmission channel based on the user data protocol (UDP) or other types of transmission channels, etc. It should be noted that the vehicle's communication system may include more or fewer layers. Figure 2a The examples are only for locating the position of the middle layer and are not used to limit this solution.

[0063] In combination with the above description, the present application embodiment provides a QoS support method, for details, please refer to Figure 3 , Figure 3A flow chart of a QoS support method provided in an embodiment of the present application. The QoS support method provided in an embodiment of the present application may include:

[0064] 301. A first communication middleware in a third device obtains a first service discovery message sent by a first device, where the first service discovery message corresponds to a first communication service.

[0065] In an embodiment of the present application, in the process of establishing a communication link corresponding to the first communication service between the first device and the third device, the first communication middleware of the third device can obtain the first service discovery message sent by the first device. Wherein, the first communication service is bound to the first communication protocol, and the first communication middleware is a communication middleware that obeys the first communication protocol specification; for example, the first communication service is bound to the SOME / IP protocol, and the first communication middleware is a communication middleware that obeys the SOME / IP protocol specification; for another example, the first communication service is bound to the DDS protocol, and the first communication middleware is a communication middleware that obeys the DDS protocol specification.

[0066] The third device can obtain the first service discovery message sent by the first device in various scenarios. For example, when the first device needs data corresponding to the first communication service, it can send the first service discovery message to the third device, and the first service discovery message is used to confirm whether the third device can provide the first communication service to the third device, so that the first communication middleware of the third device can obtain the first service discovery message sent by the first device.

[0067] For another example, the first device may send a first service discovery message to multiple devices by multicast, and the first service discovery message is used to indicate that the first device can provide the first communication service. The aforementioned multiple devices include a third device, so that the first communication middleware of the third device can obtain the first service discovery message sent by the first device. For another example, when the third device needs data corresponding to the first communication service, it can send a second service discovery message to the first device, and the second service discovery message is used to confirm whether the first device can provide the first communication service, so that the third device can obtain the first service discovery message sent by the first device, and the first service discovery message is used for the third device to determine whether the first device can provide the first communication service, etc. The third device can also obtain the first service discovery message in other application scenarios, which are not exhaustive here.

[0068] Among them, the first device and the third device can be different processors in the same vehicle; or, the first device and the third device can also be two independent terminal devices, for example, the third device is the vehicle itself, and the first device can be other vehicles, mobile phones, laptops or other types of terminal devices; or, the first device and the third device can also be different applications in the same processor, for example, the first device and the third device can communicate in SHM mode. The specific forms of the first device and the third device can be determined in combination with the actual application scenarios, and are not listed here in an exhaustive manner.

[0069] Exemplarily, if the first service discovery message is a message specified by the SOME / IP protocol, the first service discovery message may be expressed as a find service message, an offer service message, a subscribe event group message, or a subscription confirmation message; if the first service discovery message is a message specified by the DDS protocol, the first service discovery message may be expressed as SPDP, SEDP, or other types of messages, etc. The specific forms of expression of the first service discovery message are not enumerated here, and can be determined in combination with the actual application scenario.

[0070] The first service discovery message may carry indication information of the first communication service. For example, the message header of the service discovery message specified by the SOME / IP protocol may contain a "service identification (service ID)" field, and the indication information of the first communication service may be carried in this field. For another example, the message header of the service discovery message specified by the DDS protocol may contain a "Service ID" field determined based on the DDS-remote procedure call (RPC) mechanism, and the indication information of the first communication service may be carried in this field. For another example, the first service discovery message may carry the indication information of the first communication service in the message body, and so on. The examples are not exhaustive here.

[0071] 302. The third device determines whether to establish a communication link corresponding to the first communication service with the first device based on the first service discovery message. If the judgment result is pending, proceed to step 303; if the judgment result is no, proceed to step 305; if the judgment result is yes, proceed to step 306.

[0072] In some embodiments of the present application, after obtaining the first service discovery message of the second communication protocol type sent by the first device, the third device can determine whether it can establish a communication link corresponding to the first communication service with the first device based on the first service discovery message. If the judgment result is no, go to step 305; if the judgment result is yes, go to step 306; if the judgment result is pending, go to step 303.

[0073] The process in which the third device determines whether to formally establish a communication link corresponding to the first communication service with the first device according to the first service discovery message of the second communication protocol type sent by the first device can be divided into the following two steps:

[0074] Step 1: If the first device requests the third device to provide a certain communication service, the third device determines whether the third device can provide the first communication service to the first device. Alternatively, if the third device requests the first device to provide the first communication service, the third device determines whether the first device can provide the first communication service to the third device based on the first service discovery message of the second communication protocol type.

[0075] Step 2: When there is at least one target QoS in the QoS required by the first communication service, the third device determines whether the QoS capability of the first device can successfully match each target QoS based on the first service discovery message of the second communication protocol type, and the target QoS is the QoS that needs to be matched in one or more QoS required by the first communication service. It should be noted that the above first step can be performed first, or the above second step can be performed first, which is not limited here.

[0076] The implementation methods of the above-mentioned "first step" and "second step" are described in detail below.

[0077] (I) Determining whether the first communication service can be provided In one case, if the second communication protocol and the first communication protocol are the same communication protocol, for example, if the second communication protocol and the first communication protocol are both SOME / IP protocol, DDS protocol or other protocols, etc., then after the third device obtains the first service discovery message of the second communication protocol type sent by the first device, the first communication middleware in the third device can directly parse the first service discovery message of the second communication protocol type (that is, the first communication protocol type) based on the provisions of the first communication protocol to determine whether the first device can provide the first communication service to the third device (or whether the third device can provide the first device).

[0078] Specifically, the first communication middleware in the third device can determine whether the communication service pointed to by the first service discovery message is the first communication service; that is, when the first device requests the third device to provide a certain communication service, determine whether the communication service requested in the first service discovery message is the first communication service; or, when the third device requests the first device to provide the first communication service, determine whether the communication service provided in the first service discovery message is the first communication service required by the third device.

[0079] Optionally, the first communication middleware in the third device can also determine any one or more of the following: whether the version number of the second communication protocol adopted by the first device matches the version number of the first communication protocol adopted by the third device; the first communication middleware in the third device can also determine whether the type of network transmission protocol adopted in the first service discovery message is consistent with the type of network transmission protocol configured for the first communication service in the third device, or determine whether other information of the first device matches the third device based on the first service discovery message, etc., which are not enumerated here.

[0080] In another case, if the second communication protocol and the first communication protocol are different communication protocols, for example, if the second communication protocol is the DDS protocol and the first communication protocol is the SOME / IP protocol; or, if the second communication protocol is the SOME / IP protocol and the first communication protocol is the DDS protocol, etc., then after the third device receives the first service discovery message of the second communication protocol type sent by the first device, the conversion module in the third device can map the first service discovery message of the second communication protocol type to the first service discovery message of the first communication protocol type; wherein, "mapping the first service discovery message of the second communication protocol type to the first service discovery message of the first communication protocol type" includes mapping the first service discovery message from the format of the service discovery message specified by the second communication protocol to the format of the service discovery message specified by the first communication protocol. The specific implementation of the aforementioned mapping operation will be described in the subsequent step 303, which will not be described in detail here. The first communication middleware in the third device can directly parse the first service discovery message of the first communication protocol type based on the provisions of the first communication protocol to determine whether the first device can provide the first communication service to the third device (or whether the third device can provide the first device). The specific implementation method of the aforementioned steps can refer to the description in the previous situation and will not be repeated here.

[0081] (II) Determining whether the QoS capability of the first device can successfully match each target QoS

[0082] In an embodiment of the present application, in the process of establishing a communication link corresponding to the first communication service between the first device and the third device, the third device can determine one or more QoS required by the first communication service, and determine whether there is at least one target QoS among the one or more QoS required by the first communication service, and each target QoS is the QoS that needs to be matched in the QoS required by the first communication service. If the judgment result is yes, that is, there is at least one target QoS among the one or more QoS required by the first communication service, then it can be further determined whether the QoS capability of the first device can successfully match each target QoS; if the judgment result is no, that is, there is no QoS that needs to be matched in the QoS required by the first communication service, then it can be determined that the QoS capability of the first device can successfully match each target QoS. For example, reliability QoS, delay QoS, deadline QoS and other types of QoS are QoS that need to be matched. It should be understood that the examples of QoS that need to be matched here are only for the convenience of understanding this solution and are not used to limit this solution.

[0083] Optionally, if the first communication protocol supports rich QoS capabilities, the above judgment operation can be performed by the first communication middleware in the third device. For example, if the first communication protocol bound to the first communication service is the DDS protocol, the first communication middleware that complies with the DDS protocol specification can judge whether there is at least one target QoS among the one or more QoS required by the first communication service. If the first communication protocol does not support rich QoS capabilities, the above judgment operation can be performed by the management module in the third device. For example, if the first communication protocol bound to the first communication service is the SOME / IP protocol, the management module in the third device can judge whether there is at least one target QoS among the one or more QoS required by the first communication service.

[0084] Among them, QoS is a security mechanism of the network, which refers to the use of various basic technologies in the network to provide better service capabilities for specified communication services. The DDS protocol specifies a large number of QoS, such as reliability QoS, deadline QoS, latency QoS, durability QoS, topic data, partition QoS or other types of QoS, etc., which are not listed here exhaustively.

[0085] The third device can determine in a variety of ways whether there is at least one target QoS in one or more QoS required by the first communication service. In one implementation, the third device may store first information, the first information being used to indicate a second QoS set in the first QoS set, the second QoS set including all QoS in the multiple QoS that need to be matched in the first QoS set, and the second QoS set including at least one QoS. For example, the first QoS set refers to all QoS specified in the DDS protocol, and the first information may include all QoS that needs to be matched specified in the DDS protocol; for another example, the first QoS set refers to all QoS that can be supported by the vehicle, and the first information may include all QoS that needs to be matched in all QoS supported by the vehicle; for another example, the first information may also be flexibly configured by a technician for all QoS that needs to be matched according to the actual situation of the third device, etc., which is not limited here.

[0086] Specifically, after determining one or more QoS required by the first communication service, the first communication middleware in the third device or the management module in the third device can determine whether there is a target QoS among the one or more QoS required by the first communication service based on the first information, that is, determine whether there is an intersection between the one or more QoS required by the first communication service and the second QoS set, and determine the intersection between the one or more QoS required by the first communication service and the second QoS set as the target QoS.

[0087] In another implementation, a first rule may be configured in the third device, and the first rule indicates which QoS do not need to be matched. For example, the QoS that does not need to be matched indicated by the first rule may include any one or more of the following QoS: statically configurable QoS, QoS that only affects unilateral behavior, QoS that can be ignored as stated in the configuration information of the first communication service, or other QoS that does not need to be matched, etc., which are not exhaustively listed here. Among them, statically configurable QoS and "QoS that requires dynamic matching to determine whether a link can be formally established" are two relative concepts. For example, statically configurable QoS may include transport priority (Transport Priority) QoS, resource limits (Resource Limits) QoS or other types of QoS, which belong to statically configurable QoS, which are not exhaustively listed here. QoS that only affects unilateral behavior refers to QoS that only affects the data processing behavior of the third device. For example, the QoS that only affects unilateral behavior may include the sender data cycle (Writer Data Lifecycle) and the receiver data cycle (Reader Data Lifecycle) QoS, both of which are QoS that only affects the sender or receiver. For example, resource limit (Resource Limits) QoS, life cycle (Lifespan) QoS or other types of QoS are QoS that only affects unilateral behavior, which are not listed here. It should be noted that there may be overlaps between "statically configurable QoS", "QoS that only affects unilateral behavior" and "QoS that is declared to be ignorable in the configuration information of the first communication service", which are not limited here.

[0088] Specifically, the first communication middleware in the third device or the management module in the third device can determine whether there is a target QoS among one or more QoS required by the first communication service based on the first rule; wherein the target QoS is the QoS among one or more QoS required by the first communication service that does not obey the first rule.

[0089] In another implementation, the first information and the first rule may be configured in the third device, and the first communication middleware in the third device or the management module in the third device may determine whether there is a target QoS in one or more QoS required by the first communication service based on the first information and the first rule; wherein the target QoS belongs to the intersection of one or more QoS required by the first communication service and the second QoS set, and does not obey the first rule.

[0090] Among them, one or more QoS required by the first communication service are pre-configured. Optionally, before executing step 302, in the process of installing the application to which the first communication service belongs on the vehicle, a receiving interface for configuration information of the first communication service can be displayed through a display interface, and the user can input the configuration information of the first communication service through the receiving interface for configuration information of the first communication service. Among them, the aforementioned display interface can be a display interface of the vehicle; it can also be a display interface of other electronic devices that are communicatively connected to the vehicle. For example, the user can connect a laptop computer to the peripheral devices of the vehicle, and use the display interface of the laptop computer to input the configuration information of the first communication service.

[0091] Among them, the configuration information of the first communication service may include the first communication protocol bound to the first communication service and one or more QoS required by the first communication service; for example, the first communication protocol may be the SOME / IP protocol, the DDS protocol or other protocols used to standardize the first communication middleware, etc., which are not exhaustive here.

[0092] For a more intuitive understanding of this solution, please refer to Figure 4 , Figure 4 A schematic diagram of a configuration interface for the QoS required by the first communication service provided in the embodiment of the present application. Figure 4 As shown, the communication protocol bound to the first communication service can be configured through the receiving interface of the configuration information of the first communication service. For example, the communication protocol bound to the first communication service can be the SOME / IP protocol or the DDS protocol. One or more QoS required by the first communication service can also be configured through the receiving interface of the configuration information of the first communication service, for example Figure 4 As shown in: Reliability QoS, Topic data QoS, User data QoS, Group data QoS, Partition QoS, Ownership QoS, Entity factory QoS, Deadline QoS, Resource Limits QoS, Durability QoS or other types of QoS, etc., it should be understood that Figure 4 The examples are only for facilitating the understanding of the present solution and are not used to limit the present solution. In the embodiment of the present application, since the management module provided in the embodiment of the present application can provide support for QoS capabilities, no matter which type of communication middleware under which the first communication service is bound, it can support the required QoS.

[0093] In some embodiments of the present application, after obtaining the first service discovery message from the first device, the third device can determine whether there is target information corresponding to each target QoS in at least one target QoS in the first service discovery message, and each target information includes a parameter for reflecting a target QoS of the first device. In one case, if there is target information corresponding to each target QoS in the first service discovery message, the third device can determine whether the capabilities of all target QoS in at least one target QoS of the first device are successfully matched with the parameters of each target QoS of the first communication service based on the target information corresponding to each target QoS. If the judgment result is yes, the third device determines that the QoS capability of the first device successfully matches each target QoS; if the judgment result is no, the third device determines that the QoS capability of the first device cannot successfully match each target QoS.

[0094] In another case, if the target information corresponding to any target QoS does not exist in the first service discovery message, it can be determined that the judgment result is pending. In another case, if the first service discovery message contains target information corresponding to at least one first target QoS, and lacks target information corresponding to at least one second target QoS, the first target QoS and the second target QoS are both included in at least one target QoS that needs to be matched by the first communication service. It can be determined whether the QoS capability of the first device can successfully match the parameters of the target QoS of the first communication service based on the target information corresponding to at least one target QoS in the first service discovery message. If the judgment result is no, the third device can determine that the QoS capability of the first device cannot successfully match each target QoS. If the judgment result is yes, the third device can determine that the judgment result is pending.

[0095] Wherein, the first service discovery message is a message of the second communication protocol type. In one case, if the second communication protocol is the SOME / IP protocol, a first mapping relationship may be stored in the conversion module in the third device, and the first mapping relationship indicates the mapping relationship between the fields in the service discovery message specified by the SOME / IP protocol and the QoS capabilities that can be reflected, that is, the first mapping relationship indicates which fields in the service discovery message specified by the SOME / IP protocol can reflect which QoS capabilities. Then the management module in the third device may determine whether there is target information corresponding to each target QoS in at least one target QoS in the first service discovery message of the SOME / IP protocol type according to the first mapping relationship.

[0096] Exemplarily, the information in the field indicating the type of transport protocol used in the service discovery message specified by the SOME / IP protocol can be used to reflect the reliability (Reliability) QoS capability of the first device (that is, an example of "target information corresponding to reliability QoS"); for example, when using the transmission control protocol (transport control protocol, TCP) for transmission, it can be defined as having a certain degree of reliability, and when using the user datagram protocol (user data protocol, UDP) for transmission (transport), it can be positioned as unreliable; optionally, the matching formula for reliability QoS can be supplemented as reliable (Reliable)>using TCP transmission>best effort (Best Effort)>using UDP transmission, etc. The setting of the specific first mapping relationship can be flexibly determined based on actual conditions and is not limited here.

[0097] In another case, if the second communication protocol is the DDS protocol, since a large number of QoS are specified in the DDS protocol, the management module in the third device or the first communication middleware in the third device can obtain information in the field corresponding to each target QoS from the first service discovery message of the DDS protocol type, so as to obtain target information corresponding to each target QoS in at least one target QoS of the first device. Further, if the second communication protocol is the DDS protocol, and the first communication protocol is the SOME / IP protocol type, whether there is target information corresponding to each target QoS in at least one target QoS in the first service discovery message, then the execution subject of the aforementioned steps can be the management module in the third device; if the first communication protocol and the second communication protocol are both DDS protocols, then the execution subject of the aforementioned steps can be the first communication middleware in the third device.

[0098] In some embodiments of the present application, in one case, if the third device determines that it cannot provide the first communication service according to the first service discovery message of the second communication protocol type, or determines that the QoS capability of the first device cannot successfully match each target QoS according to the first service discovery message of the second communication protocol type, that is, the third device determines that the judgment result is no, then the process proceeds to step 305. In another case, if the third device determines that it can provide the first communication service according to the first service discovery message, and the QoS capability of the first device successfully matches each target QoS, that is, the third device determines that the judgment result is yes, then the process proceeds to step 306. In another case, if the third device determines that it can provide the first communication service according to the first service discovery message of the second communication protocol type, and does not determine whether the QoS capability of the first device successfully matches each target QoS according to the first service discovery message of the second communication protocol type, that is, the third device determines that the judgment result is pending, then the process proceeds to step 303.

[0099] 303. The management module in the third device determines to retain the communication operation with the first device.

[0100] In some embodiments of the present application, when the management module in the third device determines that there is no target information corresponding to any target QoS in the first service discovery message, that is, it is impossible to determine whether the QoS capability of the first device can successfully match all target QoS through the first service discovery message from the first device, then it can be determined to retain the communication operation with the first device; wherein, "retaining the communication operation with the first device" includes retaining the interactive operation of the message between the first device and the first device.

[0101] For example, "retaining the interactive operation of messages with the first device" may include: the third device continues to receive the first message of the second communication protocol type sent by the first device; optionally, it also includes the third device continuing to send the second message of the second communication protocol type to the first device.

[0102] Specifically, in one case. If the second communication protocol and the first communication protocol are the same communication protocol, for example, if the second communication protocol and the first communication protocol are both SOME / IP protocol, DDS protocol or other protocols, etc. Then after the third device receives the first message of the second communication protocol type sent by the first device, the first communication middleware in the third device can directly parse and process the first message of the first communication protocol type based on the provisions of the first communication protocol. And encapsulate the result of the aforementioned data processing into a second message of the type of the second communication protocol (that is, the first communication protocol); the third device sends the second message of the second communication protocol type to the third device.

[0103] In another case, if the second communication protocol and the first communication protocol are different communication protocols, for example, if the second communication protocol is the DDS protocol and the first communication protocol is the SOME / IP protocol; or, if the second communication protocol is the SOME / IP protocol and the first communication protocol is the DDS protocol, etc., then after the third device receives the first message of the second communication protocol type sent by the first device, the conversion module in the third device can map the first message of the second communication protocol type to the first message of the first communication protocol type; the first communication middleware in the third device can parse and process the first message of the first communication protocol type based on the provisions of the first communication protocol, and encapsulate the result of the aforementioned data processing into the second message of the first communication protocol type; the conversion module in the third device can map the second message of the first communication protocol type to the second message of the second communication protocol type; the third device sends the second message of the second communication protocol type to the third device.

[0104] Among them, since step 303 is in a state of reserved link establishment, a first message can be expressed as a service discovery message or a common message, etc.; a second message can also be expressed as a service discovery message or a common message, etc. The above-mentioned mapping operation performed by the conversion module in the third device refers to converting the first message from the message format specified by the second communication protocol to the message format specified by the first communication protocol. Optionally, it also includes converting the second message from the message format specified by the first communication protocol to the message format specified by the second communication protocol.

[0105] For a more intuitive understanding of this solution, please refer to Figure 5 , Figure 5 A structural diagram of the middle layer of the communication system provided in an embodiment of the present application. Figure 5 Can be combined Figure 2a To understand, such as Figure 5 As shown, the aforementioned intermediate layer may also be configured with a conversion module. Taking the first communication protocol as the SOME / IP protocol and the second communication protocol as the DDS protocol as an example, after the third device receives the DDS protocol type message from the first device, the conversion module is used to convert the DDS protocol type message into a SOME / IP protocol type message, and then the first communication middleware specified by the first communication protocol processes the SOME / IP protocol type message; when the third device sends a message to the first device, the first communication middleware may be encapsulated into a SOME / IP protocol type message, and the conversion module is used to map the SOME / IP protocol type message into a DDS protocol type message, and then send the DDS protocol type message to the third device. It should be understood that Figure 5 The examples are only for facilitating the understanding of this solution and are not intended to limit this solution.

[0106] The mapping methods used in the process of converting the first message from the message format specified by the second communication protocol to the message format specified by the first communication protocol may include the following categories:

[0107] (1) Information that exists in both the message of the second communication protocol type and the message of the first communication protocol type and that has the same maintenance granularity as the first communication protocol can be directly mapped. For example, the source IP address and the destination IP address are common information. For another example, the message type fields specified in both the service discovery message of the second communication protocol type and the first service discovery message of the communication protocol type, illustratively, the message type of the service discovery message in the DDS protocol may include SPDP, SEDP or other message types, and the message type of the service discovery message specified in the SOME / IP protocol may include a find service message, offer service, subscribe event group or subscription confirmation (subscribe Ack) or other message types, etc. For another example, the information in the Flags-Reboot field specified in the SOME / IP protocol, and the session number (SN) information of the publisher field specified in the DDS protocol and the information in the node restart status field can be directly mapped, etc., which are not exhaustive here.

[0108] (2) For information that exists in the message of the second communication protocol type but does not exist in the message of the first communication protocol type, supplementary mapping can be performed. The supplementary mapping method can include any one or more of the following: adding fields, writing the aforementioned information in the form of a string into the optional field of the message of the first communication protocol type, or adopting other methods, etc., which are not exhaustive here. For example, if the second communication protocol is a SOME / IP protocol type, if the first communication protocol is a DDS protocol, and the service discovery message of the SOME / IP protocol type specifies the instance identification (Instance ID) information, then the Instance ID information can be added to the message of the DDS protocol type based on the DDS-remote procedure call (RPC) mechanism. For another example, if the message of the SOME / IP protocol type specifies the identification (Service ID) information of the communication service, then the Service ID information can be added to the message of the DDS protocol type based on the DDS-RPC mechanism. For another example, if the message of the SOME / IP protocol type specifies the identification (Method ID) information of the method, then the Method ID information can be added to the message of the DDS protocol type based on the DDS-RPC mechanism.

[0109] (3) For information that exists in both the second communication protocol type message and the first communication protocol type message and that has different maintenance granularities between the second communication protocol and the first communication protocol, split mapping or combined mapping can be performed. For example, the client identification (Client ID) information is specified in the SOME / IP protocol type message, which can correspond to the global unique identifier (GUID) in the publisher (Publisher) field or the subscriber (Subscriber) field in the DDS protocol type message. Since the granularity of the GUID specified in the DDS protocol is coarser than that of the Client ID, when mapping the Client ID information in the SOME / IP protocol type message to the DDS protocol type message, combined mapping can be performed. When mapping the GUID in the DDS protocol type message to the SOME / IP protocol type message, multiple sub-topics (Topics) can be split to achieve mapping with the Client ID. For another example, the Session ID information is specified in the message of the SOME / IP protocol type, which can correspond to the SN information in the Publisher field in the message of the DDS protocol type. When mapping the GUID in the message of the DDS protocol type to the message of the SOME / IP protocol type, multiple sub-Topics can also be split to achieve mapping with the Session ID, etc. It should be noted that the above examples are only for the convenience of understanding this solution and are not used to limit this solution. Exemplarily, the following Table 1 discloses the mapping method used when converting the message specified by the DDS protocol to the message specified by the SOME / IP protocol:

[0110]

[0111] Table 1

[0112] Table 1 shows the mapping method used when converting the information in the message specified by the DDS protocol into the information in the message specified by the SOME / IP protocol, that is, when writing the information in the message specified by the DDS protocol into multiple fields in the message specified by the SOME / IP protocol. It should be noted that when converting the information in the message specified by the SOME / IP protocol into the information in the message specified by the DDS protocol, "splitting and refining" can be replaced by "combining and refining". The examples in Table 1 are only for the convenience of understanding this solution. There is other information in the message specified by the SOME / IP protocol and the message specified by the DDS protocol that needs to be mapped, which is not exhaustive here.

[0113] The process of "converting the first message from the message format specified by the second communication protocol to the message format specified by the first communication protocol" may include information mapping of fields unrelated to the QoS capability of the first device; optionally, it may also include mapping of fields related to the QoS capability of the first device. Exemplarily, if the first communication protocol is the DDS protocol and the second communication protocol is the SOME / IP protocol, and a large amount of QoS-related information is carried in a message of the DDS protocol type, the information of some fields related to QoS in the message of the DDS protocol type may be converted into string information, and the aforementioned string information may be added to the message of the SOME / IP protocol type.

[0114] The manner of mapping the information related to the QoS capability of the first device into a message of the SOME / IP protocol type may include any one or more of the following:

[0115] (1) Directly mapped to the message header of the SOME / IP protocol type message, that is, the message header of the SOME / IP protocol type message carries certain QoS parameters. For example, the following multiple QoS specified in the service discovery message specified by the DDS protocol can be mapped to the fields in the service discovery message specified by the SOME / IP protocol: reliability QoS, partition QoS, topic data QoS, group data QoS, user data QoS, ownership QoS, entity factory QoS or other QoS, etc., which are not limited here.

[0116] For example, the field used to indicate the type of transport protocol used in the service discovery message specified by the SOME / IP protocol can be mapped to the field in the service discovery message specified by the DDS protocol that characterizes the reliability (Reliability) QoS capability of the first device. The reliability of TCP transmission is greater than the reliability of UDP transmission. Optionally, the matching formula for reliability (Reliability) QoS in the third device and the first device can be supplemented as Reliable > TCP transmission > Best Effort > UDP transmission.

[0117] For another example, the information in the fields of the service discovery message specified by the DDS protocol that characterize the grouping and isolation communication-related QoS capabilities of the first device (such as partition QoS, topic data QoS, group data QoS or other QoS in the DDS protocol) can be mapped into different "instance identification (Instance ID)", "Method ID", "Event ID" and so on in the service discovery message specified by the SOME / IP protocol. It should be noted that the examples given here are only for the convenience of understanding this solution and are not used to limit this solution.

[0118] (2) Convert the QoS configuration parameters into character string information, and fill the above character string information into the Option-Configuration field of the SOME / IP protocol type message.

[0119] (3) Convert the QoS configuration parameters into character string information, and fill the above character string information into the message body of the SOME / IP protocol type.

[0120] In the embodiment of the present application, although the SOME / IP protocol does not support a large number of QoS capabilities, when sending a message of the SOME / IP protocol type, at least one QoS configuration parameter in the QoS required by the first communication service is mapped to the message of the SOME / IP protocol type, that is, more information is passed to the other end, which is conducive to increasing the possibility of the other end understanding the actual QoS capabilities of the third device.

[0121] Optionally, if the first communication protocol and the second communication protocol are different, in the process of "retaining the interactive operation of the message between the third device and the first device", the management module of the third device can also dynamically adjust the time occupied by the conversion module and the first communication middleware in processing the first message from the first device. For example, the aforementioned management module dynamically adjusts the time occupied by the three stages of "mapping the first message of the second communication protocol type to the first message of the first communication protocol type", "the first communication middleware parses and processes the first message of the first communication protocol type based on the provisions of the first communication protocol, and encapsulates the result of the aforementioned data processing into the second message of the first communication protocol type", and "mapping the second message of the first communication protocol type to the second message of the second communication protocol type".

[0122] And / or, the management module of the third device can also dynamically adjust the priority of the first message from the first device in the conversion module and the communication middleware. For example, the aforementioned management module can dynamically adjust any one or more of the following priorities: the priority of the task of "mapping the first message of the second communication protocol type to the first message of the first communication protocol type" in the conversion module, the priority of the task of "the first communication middleware parses and processes the first message of the first communication protocol type based on the provisions of the first communication protocol, and encapsulates the result of the aforementioned data processing into a second message of the first communication protocol type" in the first communication middleware, the priority of the task of "mapping the second message of the first communication protocol type to the second message of the second communication protocol type" in the management module, or the priority of other tasks in the process of processing the first message from the first device, etc., which are not exhaustive here.

[0123] 304. The management module in the third device determines whether the QoS capability of the first device successfully matches each target QoS based on the communication operation. If the determination result is no, the process proceeds to step 305; if the determination result is yes, the process proceeds to step 306.

[0124] In some embodiments of the present application, the management module in the third device can determine whether the QoS capability of the first device successfully matches the target QoS based on the communication operation. If the judgment result is no, then proceed to step 305, that is, determine that the communication link establishment with the first device fails; if the judgment result is yes, then proceed to step 306, that is, determine that the communication link with the first device is formally established. Optionally, if within the target duration, the management module in the third device still cannot determine whether the QoS capability of the first device successfully matches each target QoS based on the communication operation, then proceed to step 305.

[0125] In an embodiment of the present application, when it is impossible to determine whether the QoS capability of the first device successfully matches each target QoS based on the data in the service discovery message from the first device, it will not be chosen to directly confirm the failure of link establishment with the first device, but the communication operation with the first device will be retained, and the actual QoS capability of the first device is determined based on the communication operation to determine that it can successfully match each target QoS, and then a communication link is formally established with the first device; for example, when the first communication service in the first device is bound to the SOME / IP protocol, the information carried in the service discovery message of the SOME / IP protocol cannot fully reflect the QoS capability of the first device. The use of this solution is conducive to more accurately determining the QoS capability of the first device, so as to increase the probability of successfully establishing a communication link.

[0126] Exemplarily, the information used to determine the QoS capability of the first device may include any one or more of the following: the time when the message of the first device is received during the execution of the communication operation, the timestamp carried in the message of the first device received during the execution of the communication operation, the sequence number carried in the message of the first device received during the execution of the communication operation, the destination address or other information in the message of the first device received during the execution of the communication operation, etc., which are not limited here. In the embodiment of the present application, it is disclosed which information generated in the communication operation is used to determine the actual QoS capability of the first device, which is conducive to reducing the difficulty of implementing the scheme and improving the accuracy of implementing the scheme.

[0127] For example, when the target QoS that has not been matched is the latency QoS, the actual time interval in the adjacent messages sent by the first device can be determined by using the time when the message from the first device is received during the communication operation, the timestamp or other information carried in the message from the first device received during the communication operation, etc., that is, the actual latency QoS capability of the two adjacent messages sent by the first device. For another example, when the target QoS that has not been matched is the reliability QoS, the reliability QoS will have requirements for the order in which the messages are sent, then the actual reliability QoS capability of the first device can be determined based on the sequence number carried in the message from the first device received. For another example, in some QoS related to partitions, it is required to only receive unicast messages, then it can be determined by checking whether the destination address in the message from the first device received points to a unique receiving port, etc. The example here is only to prove the feasibility of "based on the communication operation, judging whether the QoS capability of the first device matches the target QoS successfully", and is not used to limit this solution.

[0128] Optionally, when storing the QoS capabilities of the first device, the management module in the third device may add a first special identifier for at least one target QoS capability of the first device determined based on steps 304 and 305, wherein the first special identifier is used to indicate that the target QoS with the first special identifier is determined based on information generated during the communication operation process.

[0129] 305. The management module in the third device determines that establishment of the communication link with the first device fails.

[0130] For a more intuitive understanding of this solution, please refer to Figure 6 , Figure 6 A flow chart of establishing a communication link in a method for supporting quality of service (QoS) provided in an embodiment of the present application. Figure 6As shown, B1. The third device performs a link establishment handshake with the first device. B2. The third device determines that the first device can provide the first communication service based on the first service discovery message obtained during the link establishment handshake phase, and if there is no target information corresponding to all target QoS in the first service discovery message, it triggers the entry into the retention link establishment phase. B3. During the retention link establishment phase, the third device retains the communication operation with the first device. B4. Based on the communication operation, the third device determines that the QoS capability of the first device cannot successfully match each target QoS. B5. The third device determines that the communication link establishment between the third device and the first device has failed. It should be understood that Figure 6 The examples are only for facilitating the understanding of this solution and are not intended to limit this solution.

[0131] 306. The management module in the third device determines to formally establish a communication link with the first device.

[0132] 307. The first communication middleware in the third device executes a data processing operation corresponding to the first communication service based on a provision of the first communication protocol.

[0133] In the embodiment of the present application, after establishing a communication link corresponding to the first communication service with the first device, the first communication middleware in the third device performs a data processing operation corresponding to the first communication service based on the provisions of the first communication protocol.

[0134] Specifically, after establishing a communication link corresponding to the first communication service with the first device, the third device can receive a third message of the second communication protocol type sent by the first device. In one case, if the second communication protocol and the first communication protocol are the same communication protocol, after the third device receives the third message of the second communication protocol type sent by the first device, the first communication middleware in the third device can directly parse and process the third message of the first communication protocol type based on the provisions of the first communication protocol. The result of the aforementioned data processing is encapsulated into a fourth message of the second communication protocol (i.e., the first communication protocol); the third device sends the fourth message of the second communication protocol type to the third device.

[0135] In another case, if the second communication protocol and the first communication protocol are different communication protocols, after the third device receives the third message of the second communication protocol type sent by the first device, the conversion module in the third device can map the third message of the second communication protocol type to the third message of the first communication protocol type; the first communication middleware in the third device can parse and process the third message of the first communication protocol type based on the provisions of the first communication protocol, and encapsulate the result of the aforementioned data processing into a fourth message of the first communication protocol type; the conversion module in the third device can map the fourth message of the first communication protocol type to the fourth message of the second communication protocol type; the third device sends the fourth message of the second communication protocol type to the third device. The specific implementation method of the aforementioned steps can be found in the description of the aforementioned step 302, which will not be repeated here.

[0136] In the embodiment of the present application, although each communication service is bound to only one communication protocol, the conversion module can map the message of the second communication protocol type to the message of the first communication protocol type, and the message of the first communication protocol type is processed by the first communication middleware, that is, the third device can process messages of different communication protocols, which greatly expands the application scenarios of the present solution.

[0137] Optionally, if the first communication protocol and the second communication protocol are different, after establishing a communication link corresponding to the first communication service with the first device, the management module of the third device can also dynamically adjust the time taken by the conversion module and the first communication middleware in processing the third message from the first device. For example, the aforementioned management module dynamically adjusts the time taken by the three stages of "mapping the third message of the second communication protocol type to the third message of the first communication protocol type", "the first communication middleware parses and processes the third message of the first communication protocol type based on the provisions of the first communication protocol, and encapsulates the result of the aforementioned data processing into a fourth message of the first communication protocol type", and "mapping the fourth message of the first communication protocol type to the fourth message of the second communication protocol type".

[0138] And / or, the management module of the third device can also dynamically adjust the priority of the third message from the first device in the conversion module and the communication middleware. For example, the aforementioned management module can dynamically adjust any one or more of the following priorities: the priority of the task of "mapping the third message of the second communication protocol type to the third message of the first communication protocol type" in the conversion module, the priority of the task of "the first communication middleware parses and processes the third message of the first communication protocol type based on the provisions of the first communication protocol, and encapsulates the result of the aforementioned data processing into a fourth message of the first communication protocol type" in the first communication middleware, the priority of the task of "mapping the fourth message of the first communication protocol type to the fourth message of the second communication protocol type" in the management module, or the priority of other tasks in the process of processing the third message from the first device, etc., which are not exhaustive here.

[0139] In the embodiment of the present application, since the conversion module is added, the steps of the middle layer of the communication system in processing the message from the first device will be increased. The management module dynamically adjusts the time taken by the conversion module and the first communication middleware in processing the message from the first device according to the actual situation, which is conducive to making the total time taken by the entire middle layer to process the message controllable, and is conducive to ensuring the service quality of the third device when providing the first communication service; the method of adjusting the priority of the message from the first device in the conversion module and the communication middleware can also realize the control of the time taken by the conversion module and the first communication middleware in processing the message from the first device, thereby improving the implementation flexibility of the present solution.

[0140] 308. When the QoS required by the first communication service includes a third QoS, the management module in the third device provides support for the third QoS.

[0141] In some embodiments of the present application, the management module in the third device may pre-configure which first QoS, which second QoS, and which third QoS are there. The management module in the third device may also be configured with a program code for providing support for the third QoS for the first communication service, and the third QoS is neither the first QoS nor the second QoS. In the process of executing step 307, the management module in the third device may obtain one or more QoS required by the first communication service, and in the case where the third QoS exists in the QoS required by the first communication service, the management module in the third device provides support for the third QoS. Optionally, in an interactive operation of establishing a communication link between the third device and the first device, in the process of the third device processing a message from the first device, the management module in the third device may also transmit a third indication information to the upper layer of the middle layer, and the third indication information includes the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer. In the process of the third device sending a message to the first device, the management module in the third device may also transmit a third indication information to the lower layer of the middle layer, and the third indication information includes the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer.

[0142] In an embodiment of the present application, after providing support for the third QoS, the management module will also transmit third indication information to the upper layer of the middle layer and / or the lower layer of the middle layer. The third indication information includes the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer, which is beneficial for the upper layer of the middle layer and / or the lower layer of the middle layer to understand more information related to the first communication service, and is beneficial to achieving consistency between the middle layer and other layers, thereby facilitating improving the service quality of the first communication service.

[0143] 309. When the first QoS exists in the QoS required by the first communication service, the management module in the third device transmits first indication information to the upper layer of the middle layer, and the first indication information is used for the upper layer of the middle layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the middle layer.

[0144] In an embodiment of the present application, in the process of the third device processing the message from the first device, the message from the first device will first be processed in the transport layer, and then processed by the middle layer, and then enter the CM standardization implementation layer and the application layer in sequence. In the process of executing step 307, the management module in the third device can obtain one or more QoS required by the first communication service. When the QoS required by the first communication service exists in the first QoS, the management module in the third device transmits the first indication information to the upper layer of the middle layer. The first indication information is used for the upper layer of the middle layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the middle layer.

[0145] Among them, the upper layer of the middle layer includes the CM standardization implementation layer and the application layer, and the management module in the third device transmits the first indication information to the upper layer of the middle layer, which may include: static configuration of registers accessible to the upper layer of the middle layer, inter-process communication, adding information or other transmission methods in the message corresponding to the first communication service, etc., which are not listed exhaustively here. Exemplarily, a first QoS can be any of the following QoS: Durability QoS, Presentation QoS, Liveliness QoS, Time-based Filter QoS, Resource Limits QoS, History QoS, Writer Data Lifecycle, Reader Data Lifecycle QoS or other types of QoS, etc., which are not listed exhaustively here.

[0146] For example, if the first QoS is a time-filtering QoS, the first indication information can be used to instruct the upper layer of the middle layer to start a timer. Optionally, the first indication information also includes the duration of the timer to filter the messages reaching the upper layer of the middle layer. For another example, if the first QoS is a QoS related to capabilities such as partitioning and communication isolation, the management module in the third device can add the first indication information when transmitting the message from the first device to the upper layer of the middle layer. The first indication information is used to indicate which applications the message from the first device is associated with, etc. The management module in the third device can also transmit other information to the upper layer of the middle layer to provide support for other types of QoS through the upper layer of the middle layer. The examples here are only used to prove the feasibility of this solution and are not used to limit this solution.

[0147] 310. When there is a second QoS in the QoS required by the first communication service, the management module in the third device transmits second indication information to the lower layer of the middle layer, and the second indication information is used for resource scheduling by the second indication information of the lower layer of the middle layer, so as to provide support for the second QoS through the lower layer of the middle layer.

[0148] In the embodiment of the present application, in the process of the third device sending a message to the first device, the message sent to the first device will be processed by the application layer and the CM standardization implementation layer first, and then processed by the middle layer, and then processed by the transport layer. In the process of executing step 307, the management module in the third device can obtain one or more QoS required by the first communication service. In the case that the QoS required by the first communication service includes a second QoS, the management module in the third device can transmit the second indication information to the lower layer of the middle layer, and the second indication information is used for resource scheduling by the lower layer of the middle layer, so as to provide support for the second QoS through the lower layer of the middle layer. The way in which the management module in the third device transmits the second indication information to the lower layer of the middle layer is similar to the way in which the management module in the third device transmits the first indication information to the upper layer of the middle layer, and will not be repeated here.

[0149] Exemplarily, a second QoS may be any one of the following: reliability QoS, transport priority QoS, destination order QoS, resource limit QoS or other types of QoS, which are not exhaustively listed here.

[0150] For example, if the second QoS is reliability QoS, the type of transmission channel used for the message corresponding to the first communication service can be determined according to the configuration parameters of the reliability QoS of the first communication service. The reliability of TCP transmission is higher than the reliability of UDP transmission. The management module in the third device can also transmit other information to the lower layer of the middle layer to provide support for other types of QoS through the lower layer of the middle layer. The examples given here are only to prove the feasibility of this solution and are not used to limit this solution.

[0151] In the embodiment of the present application, step 310 is an optional step. If step 310 is not performed, during the configuration process of the first communication service, the user can also pre-configure the parameters of the lower layer of the first communication service in the middle layer to the first parameters corresponding to the parameters of the second QoS, so as to provide support for the second QoS through the lower layer of the middle layer. For example, the support for reliability QoS can be achieved by configuring the type of transmission channel used by the first communication service; for another example, the transmission priority used by the first communication service can be pre-configured to achieve support for transport priority QoS, etc., which are not exhaustive here.

[0152] In an embodiment of the present application, after a communication service has been bound to a communication middleware specified by a communication protocol, a management module is additionally deployed in the middle layer, and the management module provides support for the QoS required by the communication service, so that no matter which type of communication middleware under which each communication service is bound, it can support the required QoS; the management module sends indication information to the upper layer and / or lower layer of the middle layer, so as to provide support for part of the QoS required by the communication service with the help of the capabilities of the upper layer and / or lower layer of the middle layer, thereby reducing changes to the middle layer and reducing the difficulty of implementing support for the QoS required by the communication service.

[0153] exist Figures 1 to 6 On the basis of the corresponding embodiments, in order to better implement the above solutions of the embodiments of the present application, the following also provides related devices for implementing the above solutions. Figure 7 , Figure 7 A structural diagram of a management device provided in an embodiment of the present application. The management device 700 is deployed in the middle layer of the communication system of the vehicle. The management device 700 includes a communication middleware 701 and a management module 702 specified by a first communication protocol, wherein the communication middleware 701 is used to perform data processing operations corresponding to the first communication service based on the provisions of the first communication protocol after establishing a communication link corresponding to the first communication service with the first device, and a communication service indicates the transmission of one or more data; the management module 702 is used to provide support for the QoS required by the first communication service. Among them, the management module 702 is specifically used to: when the first QoS exists in the QoS required by the first communication service, transmit the first indication information to the upper layer of the middle layer, and the first indication information is used for the upper layer of the middle layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the middle layer; or, when the second QoS exists in the QoS required by the first communication service, transmit the second indication information to the lower layer of the middle layer, and the second indication information is used for the lower layer of the middle layer to perform resource scheduling, so as to provide support for the second QoS through the lower layer of the middle layer.

[0154] Optionally, the management module 702 is also used to determine to retain the communication operation with the first device when it is uncertain whether the QoS capability of the first device can successfully match the target QoS based on the service discovery message of the first device, and to determine to formally establish a communication link with the first device when it is determined based on the communication operation that the QoS capability of the first device successfully matches the target QoS, wherein the target QoS is the QoS that needs to be matched in the QoS required by the first communication service.

[0155] Optionally, the information used to determine the QoS capability of the first device includes any one or more of the following: the time when the message is received during the communication operation, the timestamp carried in the message received during the communication operation, the sequence number carried in the message received during the communication operation, or the destination address in the message received during the communication operation.

[0156] Optionally, the management module 702 is specifically used to provide support for the third QoS through the management module 702 when there is a third QoS in the QoS required by the first communication service, and transmit third indication information to the upper layer of the middle layer and / or the lower layer of the middle layer, the third indication information including the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer.

[0157] Optionally, see Figure 8 , Figure 8 Another structural diagram of the management device provided by the embodiment of the present application. The management device also includes a conversion module 703, which is used to map a message of the second communication protocol type from the first device to a message of the first communication protocol type when the second communication protocol is different from the first communication protocol.

[0158] Optionally, the first communication protocol includes the SOME / IP protocol, and the second communication protocol includes the DDS protocol.

[0159] Optionally, the conversion module 703 is specifically used to map the message of the second communication protocol type from the first device to the message of the first communication protocol type after establishing a communication link with the first device; the communication middleware 701 is specifically used to process data according to the content of the message of the first communication protocol type; the management module 702 is also used to dynamically adjust the time occupied by the conversion module 703 and the communication middleware 701 in processing the message from the first device, and / or, is also used to adjust the priority of the message from the first device in the conversion module 703 and the communication middleware 701.

[0160] Optionally, the management device 700 further includes a conversion module 703, which is used to map at least one QoS configuration parameter of the QoS required by the first communication service into the SOME / IP protocol type message when sending the SOME / IP protocol type message to the second device.

[0161] It should be noted that the information interaction, execution process, etc. between the modules / units in the management device 700 are the same as those in the present application. Figures 2a to 6 The corresponding method embodiments are based on the same concept. For specific contents, please refer to the description in the method embodiments shown above in this application, which will not be repeated here.

[0162] The present application also provides an automatic driving vehicle. Figure 1 For a description of Fig. 9 , Fig. 9 Another structural diagram of an autonomous driving vehicle provided in an embodiment of the present application, wherein the autonomous driving vehicle 10 may be deployed with Figure 7 or Figure 8 The management device 700 described in the corresponding embodiment is used to implement Figures 2a to 6 The function of the third device in the corresponding embodiment. Since in some embodiments, the autonomous driving vehicle 10 may also include a communication function, the autonomous driving vehicle 10 includes Figure 1 The components shown in the figure may also include: a receiver 901 and a transmitter 902, wherein the processor 113 may include an application processor 1131 and a communication processor 1132. In some embodiments of the present application, the receiver 901, the transmitter 902, the processor 113 and the memory 114 may be connected via a bus or other means.

[0163] The processor 113 controls the operation of the autonomous driving vehicle. In a specific application, the various components of the autonomous driving vehicle 10 are coupled together through a bus system, wherein the bus system may include a power bus, a control bus, and a status signal bus in addition to a data bus. However, for the sake of clarity, various buses are referred to as bus systems in the figure.

[0164] The receiver 901 can be used to receive input digital or character information and generate signal input related to the relevant settings and function control of the autonomous driving vehicle. The transmitter 902 can be used to output digital or character information through the first interface; the transmitter 902 can also be used to send instructions to the disk group through the first interface to modify the data in the disk group; the transmitter 902 can also include a display device such as a display screen.

[0165] In the embodiment of the present application, the application processor 1131 is used to execute Figures 2a to 6The QoS support method executed by the third device in each corresponding method embodiment. It should be noted that the specific implementation of the QoS support method executed by the application processor 1131 and the beneficial effects brought about can all be referred to. Figures 2a to 6 The descriptions in the corresponding method embodiments will not be repeated here one by one.

[0166] In an embodiment of the present application, a computer-readable storage medium is also provided, in which a program for generating a vehicle driving speed is stored. When the computer is running on a computer, the computer executes the above-mentioned Figures 2a to 6 The illustrated embodiment describes steps performed by a third device in the method.

[0167] The present application also provides a computer program product which, when executed on a computer, enables the computer to execute the above Figures 2a to 6 The illustrated embodiment describes steps performed by a third device in the method.

[0168] The present application also provides a circuit system, which includes a processing circuit, wherein the processing circuit is configured to perform the above Figures 2a to 6 The illustrated embodiment describes steps performed by a third device in the method.

[0169] The management device or autonomous driving vehicle provided in the embodiment of the present application may be a chip, which includes: a processing unit and a communication unit. The processing unit may be, for example, a processor, and the communication unit may be, for example, an input / output interface, a pin or a circuit. The processing unit may execute the computer execution instructions stored in the storage unit to enable the chip to execute the above Figures 2a to 6 The QoS support method described in the illustrated embodiment. Optionally, the storage unit is a storage unit in the chip, such as a register, a cache, etc. The storage unit may also be a storage unit located outside the chip in the wireless access device, such as a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM), etc.

[0170] The processor mentioned in any of the above places may be a general-purpose central processing unit, a microprocessor, an ASIC, or one or more integrated circuits for controlling the execution of the program of the above-mentioned first aspect method.

[0171] It should also be noted that the device embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed over multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. In addition, in the drawings of the device embodiments provided by the present application, the connection relationship between the modules indicates that there is a communication connection between them, which may be specifically implemented as one or more communication buses or signal lines.

[0172] Through the description of the above implementation mode, the technicians in the relevant field can clearly understand that the present application can be implemented by means of software plus necessary general hardware, and of course, it can also be implemented by special hardware including special integrated circuits, special CLUs, special memories, special components, etc. In general, all functions completed by computer programs can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be various, such as analog circuits, digital circuits or special circuits. However, for the present application, software program implementation is a better implementation mode in more cases. 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, which is stored in a readable storage medium, such as a computer floppy disk, U disk, mobile hard disk, ROM, RAM, disk or optical disk, etc., including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0173] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.

[0174] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, a computer, a server, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server, or data center. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a server or a data center that includes one or more available media integrations. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)), etc.

Claims

1. A management device, It is characterized in that The management device is deployed in the middle layer of the vehicle's communication system, and the management device includes a communication middleware and a management module specified by a first communication protocol, wherein: The communication middleware is configured to perform a data processing operation corresponding to the first communication service based on the provisions of the first communication protocol after establishing a communication link corresponding to the first communication service with the first device, wherein a communication service indicates the transmission of one or more types of data; The management module is used to provide support for QoS required by the first communication service; Wherein, the management module is specifically used for: In a case where the QoS required by the first communication service includes a first QoS, transmitting first indication information to an upper layer of the intermediate layer, wherein the first indication information is used for the upper layer of the intermediate layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the intermediate layer; or, In the case that the QoS required by the first communication service includes a second QoS, second indication information is transmitted to the lower layer of the middle layer, and the second indication information is used for the lower layer of the middle layer to perform resource scheduling according to the second indication information, so as to provide support for the second QoS through the lower layer of the middle layer.

2. The device according to claim 1, It is characterized in that The management module is further used to determine to retain the communication operation with the first device when it is uncertain whether the QoS capability of the first device can successfully match the target QoS based on the service discovery message of the first device, and to determine to formally establish the communication link with the first device when it is determined based on the communication operation that the QoS capability of the first device successfully matches the target QoS, wherein the target QoS is the QoS that needs to be matched among the QoS required by the first communication service.

3. The device according to claim 2, It is characterized in that The information used to determine the QoS capability of the first device includes any one or more of the following: the time when the message is received during the execution of the communication operation, the timestamp carried in the message received during the execution of the communication operation, the sequence number carried in the message received during the execution of the communication operation, or the destination address in the message received during the execution of the communication operation.

4. The device according to any one of claims 1 to 3, It is characterized in that The management module is specifically used to provide support for the third QoS through the management module when there is a third QoS in the QoS required by the first communication service, and transmit third indication information to the upper layer of the middle layer and / or the lower layer of the middle layer, wherein the third indication information includes the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer.

5. The device according to any one of claims 1 to 3, It is characterized in that The management device also includes a conversion module, which is used to map the message of the second communication protocol type from the first device to the message of the first communication protocol type when the second communication protocol and the first communication protocol are different communication protocols.

6. The device according to claim 5, It is characterized in that The first communication protocol includes the SOME / IP protocol, and the second communication protocol includes the DDS protocol.

7. The device according to claim 5, It is characterized in that The conversion module is specifically configured to map the message of the second communication protocol type from the first device to the message of the first communication protocol type after establishing the communication link with the first device; The communication middleware is specifically used to process data according to the content of the message of the first communication protocol type based on the provisions of the first communication protocol; The management module is also used to adjust the time taken by the conversion module and the communication middleware in processing the message from the first device, and / or to adjust the priority of the message from the first device in the conversion module and the communication middleware.

8. The device according to any one of claims 1 to 3, It is characterized in that The apparatus further comprises a conversion module for mapping at least one QoS configuration parameter of the QoS required by the first communication service into the SOME / IP protocol type message when sending the SOME / IP protocol type message to the second device.

9. A method for supporting quality of service (QoS). It is characterized in that The method is applied to an intermediate layer of a communication system of a vehicle, wherein the intermediate layer of the communication system of the vehicle is deployed with a communication middleware and a management module specified by a first communication protocol, and the method comprises: After establishing a communication link corresponding to a first communication service with a first device, the communication middleware performs a data processing operation corresponding to the first communication service based on a provision of the first communication protocol; Providing, by the management module, support for the QoS required by the first communication service; The providing, by the management module, support for QoS required by the first communication service, comprises: In a case where the QoS required by the first communication service includes a first QoS, transmitting first indication information to an upper layer of the intermediate layer, wherein the first indication information is used for the upper layer of the intermediate layer to perform resource scheduling according to the first indication information, so as to provide support for the first QoS through the upper layer of the intermediate layer; or, In the case that the QoS required by the first communication service includes a second QoS, second indication information is transmitted to the lower layer of the middle layer, and the second indication information is used for the lower layer of the middle layer to perform resource scheduling according to the second indication information, so as to provide support for the second QoS through the lower layer of the middle layer.

10. The method according to claim 9, It is characterized in that The method further comprises: When it is uncertain whether the QoS capability of the first device can successfully match the target QoS based on the service discovery message of the first device, the management module determines to retain the communication operation with the first device, and when it is determined based on the communication operation that the QoS capability of the first device successfully matches the target QoS, determines to formally establish the communication link with the first device, wherein the target QoS is the QoS that needs to be matched among the QoS required by the first communication service.

11. The method according to claim 10, It is characterized in that The information used to determine the QoS capability of the first device includes any one or more of the following: the time when the message is received during the execution of the communication operation, the timestamp carried in the message received during the execution of the communication operation, the sequence number carried in the message received during the execution of the communication operation, or the destination address in the message received during the execution of the communication operation.

12. The method according to any one of claims 9 to 11, It is characterized in that The providing, by the management module, support for the QoS required by the first communication service further includes: In the case where a third QoS exists in the QoS required by the first communication service, support for the third QoS is provided by the management module, and third indication information is transmitted to the upper layer of the middle layer and / or the lower layer of the middle layer, wherein the third indication information includes the processing time of the message corresponding to the first communication service in the middle layer and / or the priority of the message corresponding to the first communication service in the middle layer.

13. The method according to any one of claims 9 to 11, It is characterized in that The intermediate layer of the communication system of the vehicle is also deployed with a conversion module, and the method further includes: In the case where the second communication protocol is different from the first communication protocol, the conversion module maps the message of the second communication protocol type from the first device to the message of the first communication protocol type.

14. The method according to claim 13, It is characterized in that The first communication protocol includes the SOME / IP protocol, and the second communication protocol includes the DDS protocol.

15. The method according to claim 13, It is characterized in that The mapping of the message of the second communication protocol type from the first device to the message of the first communication protocol type by the conversion module includes: after establishing the communication link with the first device, mapping the message of the second communication protocol type from the first device to the message of the first communication protocol type; The communication middleware performs data processing operations corresponding to the first communication service based on the provisions of the first communication protocol, including: the communication middleware performs data processing according to the content of the message of the first communication protocol type based on the provisions of the first communication protocol; The method also includes: the management module adjusting the time taken by the conversion module and the communication middleware in processing the message from the first device, and / or adjusting the priority of the message from the first device in the conversion module and the communication middleware.

16. The method according to any one of claims 9 to 11, It is characterized in that The intermediate layer of the communication system of the vehicle is also deployed with a conversion module, and the method further includes: When sending a message of the SOME / IP protocol type to the second device, at least one QoS configuration parameter in the QoS required by the first communication service is mapped to the message of the SOME / IP protocol type through the conversion module.

17. An autonomous driving vehicle, It is characterized in that The method comprises a processor, wherein the processor is coupled to a memory, wherein the memory stores program instructions, and when the program instructions stored in the memory are executed by the processor, the method according to any one of claims 9 to 16 is implemented.

18. A computer-readable storage medium comprising a program, which, when executed on a computer, causes the computer to execute the method according to any one of claims 9 to 16.

19. A circuit system, It is characterized in that The circuit system comprises a processing circuit configured to perform the method of any one of claims 9 to 16.

Citation Information

Patent Citations

  • Universal domain controller supporting service oriented architecture (SOA), vehicle and interaction system

    CN114268666A

  • SOA-based vehicle cloud cooperative control system and method, and readable storage medium

    CN114553873A