Vehicle data processing method, device, vehicle controller and storage medium
By realizing the identity verification of vehicle data processing requests and data request range verification in the on-board controller, the target database is determined for data processing, and the problem of traditional on-board controllers processing large quantities of vehicle data is solved, and processing efficiency and data usage are improved.
Patent Information
- Application Number
- CN202410364870.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-28
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2044-03-28
AI Technical Summary
Due to performance and storage capacity limitations, traditional vehicle controllers cannot effectively process large amounts of vehicle data, resulting in greater challenges in the collection and processing of vehicle data.
By obtaining the vehicle data processing request generated by the client controller, performing identity verification and data request scope verification, the target database is determined for data processing. Specific steps include data compression, writing or reading, and data decompression and feedback if necessary.
The processing process of vehicle data is optimized, processing efficiency is improved, manpower and material consumption is reduced, operation and processing of large quantities of vehicle data is realized, data management costs are reduced, and data efficiency and utilization rate are improved.
Smart Images

Figure CN118432853B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of vehicle-mounted equipment, and in particular to a vehicle data processing method, an electric vehicle, a vehicle data processing device, a vehicle controller, a computer-readable storage medium, and a computer program product. Background Art
[0002] As the degree of electrification of vehicles increases, especially with the increase of high-level driving assistance functions such as autonomous driving and active safety, the number of electronic control units in vehicles has increased significantly, and the traditional distributed architecture can no longer meet current needs. On-board controllers have become the mainstream developed by car companies and / or suppliers at this stage, which can greatly optimize the electronic circuits of vehicles and process a small amount of vehicle data when some vehicle software is running.
[0003] However, for some embedded software controllers that are currently put into use in large quantities, they are limited by their own performance and storage capacity and cannot implement an operating system with too high capabilities to process vehicle data. For example, general on-board controllers have their own storage media, and due to cost reasons, their capacity is in the range of several hundred KBytes to several Mbytes, resulting in the inability to perform operations such as storage, reading or modification of large amounts of vehicle data, which poses a great challenge to the collection and processing of vehicle data and is not conducive to problem analysis and troubleshooting in the subsequent vehicle development process. Summary of the invention
[0004] In view of the above problems, the present disclosure provides a vehicle data processing method, an electric vehicle, a vehicle data processing device, a vehicle controller, a computer-readable storage medium and a computer program product. The technical solution of the present disclosure is as follows:
[0005] According to a first aspect of an embodiment of the present disclosure, a method for processing vehicle data is provided, comprising:
[0006] Obtaining a vehicle data processing request generated by a client controller; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing;
[0007] Based on the identity information, performing a first verification on the client controller to verify the legitimacy of the client controller;
[0008] In the case of verifying that the client controller is legitimate, performing a second check on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request;
[0009] When the vehicle data processing request is verified to be legal, a database index is performed based on the identity information and the virtual address to determine a target database, so as to process the target vehicle data based on the target database.
[0010] In an exemplary embodiment, the processing of the target vehicle data based on the target database includes:
[0011] In a case where the vehicle data processing request is a vehicle data writing request, compressing the target vehicle data to obtain compressed vehicle data;
[0012] The compressed vehicle data is written into the target database, and a data writing feedback message is generated and returned to the client controller.
[0013] In an exemplary embodiment, the processing of the target vehicle data based on the target database includes:
[0014] In a case where the vehicle data processing request is a vehicle data reading request, reading the target vehicle data from the target database;
[0015] Decompressing the target vehicle data to obtain decompressed vehicle data;
[0016] A data reading feedback message is generated based on the decompressed vehicle data, and the data reading feedback message is returned to the client controller.
[0017] In an exemplary embodiment, the first verification of the client controller based on the identity information to verify the legitimacy of the client controller includes:
[0018] Based on the identity information, obtaining the filing information of the client controller;
[0019] Based on the challenge / response authentication method, generate challenge information and predicted response information; the challenge information is a data fragment randomly generated for the record information, and the response information is a predicted response result returned by the client controller for the challenge information;
[0020] Sending the challenge information to the client controller to obtain actual response information returned by the client controller;
[0021] Compare and verify the predicted response information and the actual response information to obtain a corresponding verification result;
[0022] If the predicted response information and the actual response information are the same, the client controller is verified to be legal; if the predicted response information and the actual response information are different, the client controller is verified to be illegal.
[0023] In an exemplary embodiment, the performing a second check on the vehicle data processing request based on the virtual address and the data length to check the legitimacy of the vehicle data processing request includes:
[0024] determining a data request range of the vehicle data processing request based on the virtual address and the data length; and
[0025] Based on the filing information, determining a data authorization scope for the client controller;
[0026] Compare and verify the data request range and the data authorization range to obtain a corresponding verification result;
[0027] Wherein, when the data request range belongs to the data authorization range, the vehicle data processing request is verified to be legal; and when the data request range exceeds the data authorization range, the vehicle data processing request is verified to be illegal.
[0028] According to a second aspect of an embodiment of the present disclosure, there is provided an electric vehicle, comprising:
[0029] The client controller is used to generate a vehicle data processing request; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing;
[0030] A data storage server, configured to obtain the vehicle data processing request, and perform a first check on the client controller based on the identity information to verify the legitimacy of the client controller; when the client controller is verified to be legitimate, perform a second check on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request; when the vehicle data processing request is verified to be legitimate, perform a database index based on the identity information and the virtual address to determine a target database, so as to process the target vehicle data based on the target database;
[0031] The data backup server is used to obtain the target vehicle data from the target database to back up the target vehicle data.
[0032] In an exemplary embodiment, the client controller includes a gateway controller and a CAN communication controller, and the gateway controller includes a CAN protocol stack and a gateway driver; wherein,
[0033] The CAN communication controller is used to generate the vehicle data processing request and send it to the CAN protocol stack via the CAN bus;
[0034] The CAN protocol stack is used to package the vehicle data processing request into CAN short frame data, and transmit the CAN short frame data to the gateway driver in the form of long data based on the CanTp protocol;
[0035] The gateway driver is used to convert the CAN short frame data into effective load data through the RTE standard, and transmit the effective load data to the data storage server based on the SOME / IP protocol.
[0036] According to a third aspect of an embodiment of the present disclosure, a vehicle data processing device is provided, including:
[0037] A request acquisition module, used to acquire a vehicle data processing request generated by a client controller; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing;
[0038] A first verification module, configured to perform a first verification on the client controller based on the identity information to verify the legitimacy of the client controller;
[0039] A second verification module, configured to perform a second verification on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request when the client controller is verified to be legitimate;
[0040] The data processing module is used to perform database indexing based on the identity information and the virtual address to determine the target database and process the target vehicle data based on the target database when verifying that the vehicle data processing request is legal.
[0041] According to a fourth aspect of an embodiment of the present disclosure, a vehicle controller is provided, comprising:
[0042] A processor and a memory connected to the processor, wherein the memory stores program data, and the processor is used to call the program data stored in the memory to implement the vehicle data processing method as described in any one of the above items.
[0043] According to a fifth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, wherein the computer-readable storage medium includes program data, and when the program data is executed by a processor of a computer device, the computer device is enabled to execute a vehicle data processing method as described in any one of the above items.
[0044] According to a sixth aspect of an embodiment of the present disclosure, a computer program product is provided, wherein the computer program product includes program instructions, and when the program instructions are executed by a processor of a computer device, the computer device is enabled to execute a vehicle data processing method as described in any one of the above items.
[0045] The technical solution provided by the embodiments of the present disclosure brings at least the following beneficial effects:
[0046] On the one hand, this solution first generates a vehicle data processing request by obtaining the client controller to verify the legitimacy of the client controller and the vehicle data processing request, and then, if the verification is passed, the target database is indexed through the identity information and virtual address in the vehicle data processing request to process the target vehicle data based on the target database, thereby optimizing the vehicle data processing flow, effectively improving the efficiency of processing vehicle data, and reducing the consumption of manpower and material resources; on the other hand, this solution is different from the traditional vehicle data processing method. It first verifies the legitimacy of the client controller through the identity information of the client controller, and then verifies the legitimacy of the vehicle data processing request through the virtual address and data length of the target vehicle data. If both verifications are passed, the target vehicle data is processed using the target database, thereby enabling the operation and processing of a large amount of vehicle data even if the controller performance is low and the storage capacity is not high, effectively reducing the data management costs of automobile companies and / or suppliers, and improving the efficiency and utilization rate of vehicle data, which is conducive to problem analysis and troubleshooting based on vehicle data in the subsequent vehicle development process.
[0047] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] The drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the description are used to explain the principles of the present disclosure, and do not constitute improper limitations on the present disclosure.
[0049] Figure 1 The present invention is a diagram showing an application environment of a method for processing vehicle data according to an exemplary embodiment.
[0050] Figure 2The figure is a system architecture block diagram of an electric vehicle according to an exemplary embodiment.
[0051] Figure 3 The figure is a block diagram of a body structure of an electric vehicle according to an exemplary embodiment.
[0052] Figure 4 It is a block diagram of a communication architecture of a client controller according to an exemplary embodiment.
[0053] Figure 5 The figure is a flowchart of a method for processing vehicle data according to an exemplary embodiment.
[0054] Figure 6 The present invention is a flowchart showing the steps of writing target vehicle data according to an exemplary embodiment.
[0055] Figure 7 The present invention is a module diagram showing steps of reading and processing target vehicle data according to an exemplary embodiment.
[0056] Figure 8 The module diagram of a method for writing and reading vehicle data is shown according to an exemplary embodiment.
[0057] Fig. 9 It is a module diagram showing a message format of the SOME / IP protocol according to an exemplary embodiment.
[0058] Fig.10 The figure is a structural block diagram of a vehicle data processing device according to an exemplary embodiment.
[0059] Fig.11 The present invention is a block diagram of a vehicle controller for vehicle data processing according to an exemplary embodiment.
[0060] Fig.12 It is a block diagram of a computer-readable storage medium for vehicle data processing according to an exemplary embodiment.
[0061] Fig.13 It is a block diagram of a computer program product for vehicle data processing according to an exemplary embodiment. DETAILED DESCRIPTION
[0062] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0063] The term "and / or" in the embodiments of the present application refers to any and all possible combinations of one or more of the associated enumerated items. It should also be noted that when used in this specification, "include / comprise" specifies the presence of stated features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements and / or components and / or their groups.
[0064] The terms "first", "second", etc. in this application are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.
[0065] In addition, although the terms "first", "second", etc. are used many times in this application to describe various operations (or various elements or various applications or various instructions or various data), etc., these operations (or elements or applications or instructions or data) should not be limited by these terms. These terms are only used to distinguish one operation (or element or application or instruction or data) from another operation (or element or application or instruction or data).
[0066] The vehicle data processing method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown, the terminal 102 (e.g., an electric vehicle) communicates with the built-in server 104 via a communication network. The data storage system can store data that the server 104 needs to process. The data storage system can be integrated on the server 104, or placed on the cloud or other network servers.
[0067] In some embodiments, reference Figure 1 , the server 104 obtains the vehicle data processing request generated by the client controller; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data to be processed; then based on the identity information, a first check is performed on the client controller to verify the legitimacy of the client controller; then, when the client controller is verified to be legitimate, a second check is performed on the vehicle data processing request based on the virtual address and data length to verify the legitimacy of the vehicle data processing request; finally, when the vehicle data processing request is verified to be legitimate, a database index is performed based on the identity information and the virtual address to determine the target database, so as to process the target vehicle data based on the target database.
[0068] In some embodiments, the terminal 102 (such as a mobile terminal, a fixed terminal) can be implemented in various forms. The terminal 102 can be a mobile terminal including a mobile phone, a smart phone, a laptop, a portable handheld device, a personal digital assistant (PDA), a tablet computer (PAD), etc. The terminal 102 can also be a fixed terminal such as an automated teller machine (ATM), an automatic all-in-one machine, a digital TV, a desktop computer, a fixed computer, etc.
[0069] In the following, it is assumed that the terminal 102 is a fixed terminal. However, it will be understood by those skilled in the art that the configuration according to the embodiments disclosed in the present application can also be applied to a mobile type terminal 102 if there are operations or elements specifically for mobile purposes.
[0070] In some embodiments, the data processing component running on the server 104 may load any of a variety of additional server applications and / or middle-tier applications being executed, such as HTTP (Hypertext Transfer Protocol), FTP (File Transfer Protocol), CGI (Common Gateway Interface), RDBMS (Relational Database Management System), etc.
[0071] In some embodiments, the server 104 may be implemented as an independent server or a server cluster consisting of multiple servers. The server 104 may be suitable for running one or more application services or software components that provide the terminal 102 described in the above disclosure.
[0072] In some embodiments, the operating system on which the application service or software component runs may include various versions of Linux, Android, AUTOSAR AP operating systems, various commercial or UNIX®-like operating systems and / or mobile operating systems, as well as other online operating systems or offline operating systems, without specific limitation here.
[0073] In an exemplary embodiment, the vehicle data processing method provided in the present application may be applied to an electric vehicle, and the electric vehicle is used to be controlled by the server 104 to execute the vehicle data processing method. Figures 2 to 3 , Figure 2 is a system architecture block diagram of an electric vehicle according to an exemplary embodiment. Figure 3 The figure is a block diagram of a body structure of an electric vehicle according to an exemplary embodiment.
[0074] In one embodiment, the electric vehicle includes a client controller, a data storage server, and a data backup server.
[0075] The client controller is used to generate a vehicle data processing request; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing.
[0076] Specifically, Figure 2 As shown, the client controller first obtains various data information through CAN / LIN to generate a vehicle data processing request, and then the client controller sends the vehicle data processing request to the data storage server through the SOME / IP protocol.
[0077] In one embodiment, CAN / LIN is a CAN (Controller Area Network) bus. In some embodiments, the CAN bus includes a CAN_H line and a CAN_L line. The CAN_H line and the CAN_L line represent the high level line and the low level line in the CAN bus, respectively. The CAN bus uses unbalanced differential signal transmission, and the voltage difference between the CAN_H line and the CAN_L line determines the transmission state of the data. For example, the voltage difference between the CAN_H line and the CAN_L line can be 2.5V, when the CAN_H line is higher than the CAN_L line, it indicates a logic 1, and when the CAN_H line is higher than the CAN_L line, it indicates a logic 0.
[0078] In one embodiment, the SOME / IP protocol is a protocol for data exchange and communication in a vehicle network. SOME / IP stands for Scalable service-Oriented MiddlewarE over IP, which is a service location protocol based on an IP network and is designed to support communication between various control units inside a vehicle. Among them, the SOME / IP protocol allows different control units inside a vehicle to communicate through an IP network and provides a flexible service location mechanism. Through the SOME / IP protocol, control units inside a vehicle can easily discover and access services provided by other units to achieve data sharing and exchange.
[0079] Among them, the data storage server is used to obtain a vehicle data processing request, and based on the identity information, perform a first check on the client controller to verify the legitimacy of the client controller; when the client controller is verified to be legitimate, a second check is performed on the vehicle data processing request based on the virtual address and data length to verify the legitimacy of the vehicle data processing request; when the vehicle data processing request is verified to be legitimate, a database index is performed based on the identity information and the virtual address to determine the target database, so as to process the target vehicle data based on the target database.
[0080] The data backup server is used to obtain the target vehicle data from the target database to back up the target vehicle data.
[0081] In some embodiments, Figure 3 As shown, the data storage server is installed on one side of the front end of the electric vehicle, and the data backup server is installed on the other side of the front end of the electric vehicle, so that the distance between the data storage server and the data backup server is the farthest.
[0082] The purpose of configuring the data storage server and the data backup server in this way is to prevent data loss due to accidents such as vehicle collisions, fires, and severe conditions, thereby making the probability of simultaneous damage to various stored data in the data storage server and the data backup server extremely small.
[0083] In some embodiments, the storage media and operating systems deployed for the data storage server and the data backup server respectively may be different to avoid common cause failure of the data storage server and the data backup server due to software design, electromagnetic environment, vibration, high temperature, water wading, etc.
[0084] Through the above-mentioned electric vehicle, on the basis of the previous distributed storage, a data storage server and a data backup server are added to provide more data storage media expansion and backup for each client controller in the electric vehicle.
[0085] In an exemplary embodiment, reference Figure 4 , Figure 4 The communication architecture block diagram of a client controller according to an exemplary embodiment is shown. In one embodiment, the client controller includes a gateway controller and a CAN communication controller, and the gateway controller includes a CAN protocol stack and a gateway driver; wherein,
[0086] The CAN communication controller is used to generate vehicle data processing requests and send them to the CAN protocol stack via the CAN bus.
[0087] The CAN protocol stack is used to package vehicle data processing requests into CAN short frame data, and transmit the CAN short frame data to the gateway driver in the form of long data based on the CanTp protocol.
[0088] The gateway driver is used to convert CAN short frame data into payload data through the RTE standard, and transmit the payload data to the data storage server based on the SOME / IP protocol.
[0089] In one embodiment, if Figure 4As shown, the CAN communication controller is connected to the CAN protocol stack in the gateway controller via the CAN bus, so that the CAN communication controller can transmit the vehicle data processing request to the gateway controller via the CAN bus.
[0090] In some embodiments, the CAN protocol stack refers to a set of software modules for processing CAN bus communications. This protocol stack includes the implementation of the CAN data link layer and the physical layer, which are used to transmit data on the CAN bus and ensure the reliability of the data.
[0091] Among them, the CAN data link layer is responsible for packaging data into CAN frames and adding necessary control information to ensure the correct transmission of data. This includes functions such as frame sending and receiving, error detection and correction, and flow control.
[0092] The CAN physical layer is responsible for converting CAN frames into electrical signals and sending them to the CAN bus, and converting electrical signals received from the bus into CAN frames. This includes the electrical characteristics, transmission rate, connection method, etc. of the physical layer.
[0093] In one embodiment, continue as Figure 4 As shown, the CAN protocol stack first transmits the CAN short frame data to the CanTp module; then, the CanTp module transmits the CAN short frame data in the form of long data to the gateway driver and the Dcm module based on the CanTp protocol; then, the gateway driver performs complex driving logic and functional processing on the CAN short frame data in the form of long data to obtain the payload data in the CAN short frame data; then, the payload data is standardized through the RTE standard to obtain the unified payload data; finally, based on the SOME / IP protocol, the unified payload data is transmitted to the data storage server.
[0094] In some embodiments, the CanTp module is used to realize the transmission of large-capacity data on the CAN bus. CanTp is the full name of CAN Transport Protocol, which is a protocol for transmitting large-capacity data on the CAN bus. Among them, the CanTp module is used to reorganize the CAN short frame data transmitted by the CAN protocol stack and verify the integrity of the data, and then provide the complete data to the gateway driver and Dcm module.
[0095] In some embodiments, the Dcm module is Diagnostic Communication Management, which is a standard protocol for diagnostic communication management. In the automotive field, Dcm usually refers to the diagnostic communication management module, which is used to manage the communication between the diagnostic tool and the vehicle control unit. Among them, the Dcm module is responsible for handling the establishment, maintenance and termination of diagnostic communications, including the establishment of diagnostic sessions, the processing of diagnostic requests, the management of data transmission, and other functions.
[0096] In some embodiments, payload data refers to the actual data portion carried in a data packet, that is, the portion excluding the header and the tail. In data communication, payload is the core content of transmitted data, and contains the information or content to be transmitted.
[0097] In some embodiments, the full name of the RTE standard is Runtime Environment. In the automotive field, RTE usually refers to the runtime environment software module defined in the AUTOSAR (Automotive Open System Architecture) standard. Among them, the RTE module is one of the core components in the AUTOSAR software architecture. It provides an abstraction layer for managing and coordinating the interaction between application software components. RTE is responsible for handling functions such as communication, data transmission, event triggering, etc. between application software components to ensure the stability and reliability of the entire system.
[0098] In some embodiments, through the RTE module, application software components can communicate and collaborate without directly relying on the underlying hardware and communication protocols, thereby achieving a modular, portable and scalable software architecture. The introduction of RTE allows software developers to focus more on the development of application software without having to pay too much attention to the underlying hardware and communication details.
[0099] Through the above-mentioned client controller, CanTp is connected to the gateway driver module to convert the vehicle data transmitted based on the CanTp protocol into the Payload in the SOME / IP protocol to request the data storage server to provide related services, such as data writing / data reading, etc. In turn, it can be achieved: ① Adopting unified data management for vehicle data to effectively reduce the cost of the whole vehicle; ② Adopting a unified data management solution to simplify the vehicle-cloud data communication protocol and data processing and file parsing solutions, which is convenient for the background data management of the whole vehicle; ③ Some controllers that do not contain large-capacity storage media can be upgraded to support large-capacity data storage without modifying the hardware; ④ Electric vehicles support database management and data compression, avoiding space waste caused by the lack of management and compression methods in low-end controllers; ⑤ Sending large-capacity data by using the CanTp protocol enables controllers that do not support Ethernet communication to obtain large-capacity storage services.
[0100] In some embodiments, Figure 5 As shown, a method for processing vehicle data is provided, and the method is applied to Figure 1 Taking the server 104 in the example as an example, the method includes the following steps:
[0101] Step S11: Obtain a vehicle data processing request generated by the client controller.
[0102] Among them, the client controller is the controller of each functional domain in the electric vehicle, and each controller has its own storage medium, but due to cost reasons, its capacity is small and cannot store and run a large amount of vehicle data.
[0103] In one embodiment, the vehicle data processing request is a data processing request sent by the client controller to the server to write, read, share, restore, view, update, delete or process vehicle-related data.
[0104] In some embodiments, the vehicle data processing request includes a vehicle data writing request and a vehicle data reading request, wherein the vehicle data writing request includes a data inserting request and a data updating request, and the vehicle data reading request includes a data querying request and a data deleting request.
[0105] The data insertion request is used to request to insert new vehicle information into the database, including the basic information, status, location, etc. of the vehicle. The update request is used to request to update the existing vehicle information in the database, such as updating the vehicle status, location, owner information, etc.
[0106] Among them, the query request is used to request to obtain the information of a specific vehicle or a list of vehicles, such as querying vehicle information based on the license plate number, obtaining information of all vehicles in the database, etc. The delete request is used to request to delete the information of a specific vehicle from the database, perhaps because the vehicle has been sold or scrapped.
[0107] In some embodiments, the vehicle data processing request is generated by a client controller and sent to a server via a structured query language (SQL) or an application programming interface (API) to perform corresponding operations according to the request and return processing results.
[0108] In one embodiment, the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing.
[0109] Among them, the identity information is the unique identity of the client controller, which can be composed of various symbol codes and digital numbers; the virtual address is the logical address of the database where the client controller requests to store the target vehicle data; the data length refers to the number of bytes or the length of the byte array required to store vehicle-related information in the database, which depends on the structure and storage method of the target vehicle data.
[0110] Among them, if the target vehicle data is stored in the database table in the form of structured data, the data length can be determined by calculating the sum of the lengths of each field. For example, if the vehicle data includes fields such as license plate number, model, color, etc., and the length of each field is different, the total length of the vehicle data can be obtained by adding up their lengths. In addition, if the vehicle data is stored in the database in the form of a binary data stream, the data length is the number of bytes in the binary data stream. In this case, it is necessary to consider the data encoding method (such as UTF-8, UTF-16, etc.) and whether it contains additional metadata information.
[0111] Step S12: Based on the identity information, a first verification is performed on the client controller to verify the legitimacy of the client controller.
[0112] In an exemplary embodiment, in step S12, the server performs a first verification on the client controller based on the identity information to verify the legitimacy of the client controller, which may specifically include the following steps:
[0113] Step 1: Based on the identity information, obtain the registration information of the client controller.
[0114] Among them, a static client access permission configuration table is pre-stored in the database, which records the access address of each client controller, the maximum supported storage space, data and configuration management authority, security access key and other filing information. Therefore, after receiving the vehicle data processing request, the server can query the filing information of the client controller in the client access permission configuration table of the database according to the identity information in the vehicle data processing request.
[0115] Step 2: Generate challenge information and predicted response information based on the challenge / response authentication method.
[0116] In some embodiments, Challenge-Response Authentication is an authentication mechanism used to verify the identity of a client controller without transmitting a password or other sensitive information. In Challenge-Response Authentication, a server sends a random challenge to a client controller, and the client controller is required to generate a response using its private key or other security credentials to prove its identity.
[0117] The challenge information is a random challenge sent by the server to the client controller, which can be a data segment randomly generated for the filing information, and the data segment can be a string of random numbers, which is unique in each authentication process.
[0118] The response information is a predicted response generated by the server to the filing information of the client controller based on a preset program algorithm, which can be a predicted response result returned by the client controller to the challenge information.
[0119] Step 3: Send the challenge information to the client controller to obtain the actual response information returned by the client controller.
[0120] Specifically, the client controller receives the challenge information, and generates actual response information based on the challenge information and its own identity information, so as to return the actual response information to the server.
[0121] Step 4: Compare and verify the predicted response information and the actual response information to obtain the corresponding verification result.
[0122] If the predicted response information and the actual response information are the same, the client controller is verified to be legal; if the predicted response information and the actual response information are different, the client controller is verified to be illegal.
[0123] In some embodiments, the server authorizes or denies access to the client controller based on the verification result.
[0124] Among them, if the client controller verification is legal, the server will authorize the client controller according to the data and configuration management authority; if the client verification is illegal, the server will deny the client controller access, and the client controller will return a denial of access message.
[0125] In some embodiments, when the client controller is verified to be legal, the server allows access to the client controller and further verifies the vehicle data processing request; when the client controller is verified to be illegal, the server denies access to the client controller and the vehicle data processing request.
[0126] Step S13: When the client controller is verified to be legitimate, a second verification is performed on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request.
[0127] In an exemplary embodiment, in step S13, the server performs a second check on the vehicle data processing request based on the virtual address and the data length to check the legitimacy of the vehicle data processing request, which may specifically include the following steps:
[0128] Step 1: Based on the virtual address and data length, determine the data request scope of the vehicle data processing request; and based on the filing information, determine the data authorization scope for the client controller.
[0129] Specifically, the server determines the data request scope requested for access based on the virtual address and data length of the request processing corresponding to the vehicle data processing request; and determines the data authorization scope for authorized access to the client controller based on the data and configuration management permissions in the filing information of the client controller.
[0130] Step 2: Compare and verify the data request scope and the data authorization scope to obtain the corresponding verification result.
[0131] Specifically, the server performs conditional verification on the vehicle data processing request according to the data request scope and data authorization scope requested by the client controller to access, so as to determine the legitimacy of the vehicle data processing request.
[0132] In some embodiments, conditional verification is used to verify whether a vehicle data processing request satisfies a constraint condition.
[0133] Among them, if the data request range does not exceed the data authorization range, the vehicle data processing request meets the constraint conditions; if the data request range exceeds the data authorization range, the vehicle data processing request does not meet the constraint conditions.
[0134] Among them, when the data request scope falls within the data authorization scope, the vehicle data processing request is verified to be legal; when the data request scope exceeds the data authorization scope, the vehicle data processing request is verified to be illegal.
[0135] In some embodiments, the server allows or refuses to execute the vehicle data processing request based on the verification result.
[0136] Among them, if the vehicle data processing request meets the constraint conditions, the server allows the execution of the vehicle data processing request; if the vehicle data processing request does not meet the constraint conditions, the server refuses to execute the vehicle data processing request and returns a rejection request message to the client controller.
[0137] Step S14: When the vehicle data processing request is verified to be legitimate, a database index is performed based on the identity information and the virtual address to determine a target database, so as to process the target vehicle data based on the target database.
[0138] Specifically, after verifying that both the client controller and the vehicle data processing request are legal, the server performs database indexing based on the identity information and virtual address carried in the vehicle data processing request to determine the target database for requesting data processing; then, the target database is used to process the target vehicle data.
[0139] In some embodiments, the target database may process the target vehicle data by writing, reading, sharing, restoring, viewing, updating, deleting, and other related data processing methods.
[0140] In the process of processing the above vehicle data, on the one hand, this solution first generates a vehicle data processing request by acquiring the client controller to verify the legitimacy of the client controller and the vehicle data processing request, and then, if the verification is passed, the target database is indexed through the identity information and virtual address in the vehicle data processing request, so as to process the target vehicle data based on the target database, thereby optimizing the vehicle data processing flow, effectively improving the efficiency of processing vehicle data, and reducing the consumption of manpower and material resources; on the other hand, this solution is different from the traditional vehicle data processing method, first verifying the legitimacy of the client controller through the identity information of the client controller, and then verifying the legitimacy of the vehicle data processing request through the virtual address and data length of the target vehicle data, so that when both verifications are passed, the target vehicle data is processed using the target database, so that even if the performance of the controller is low and the storage capacity is not high, the operation and processing of a large amount of vehicle data can be realized, effectively reducing the data management costs of automobile companies and / or suppliers, and improving the efficiency and utilization rate of vehicle data, which is conducive to problem analysis and troubleshooting based on vehicle data in the subsequent vehicle development process.
[0141] Those skilled in the art can understand that in the above method of the specific implementation, the disclosed method can be implemented in a more specific manner. For example, the above described implementation of the server processing the target vehicle data based on the target database is only illustrative.
[0142] In an exemplary embodiment, see Figure 6 , Figure 6 This is a flow chart of an embodiment of writing target vehicle data in this application. In step S14, the process of the server processing the target vehicle data based on the target database specifically includes the following steps:
[0143] Step S141: When the vehicle data processing request is a vehicle data writing request, data compression is performed on the target vehicle data to obtain compressed vehicle data.
[0144] Step S142: Write the compressed vehicle data into the target database, and generate a data write feedback message to return to the client controller.
[0145] Specifically, if the vehicle data processing request initiated by the client controller is a vehicle data write request, that is, a request to write the target vehicle data into the target database, the server first compresses the target vehicle data to obtain compressed vehicle data; then, the compressed vehicle data is written into the target database; finally, after the compressed vehicle data is written, the server generates a data write feedback message to return to the client controller to notify the client controller that the writing of the target vehicle is completed.
[0146] Among them, regarding writing the compressed vehicle data into the target database, it can specifically include: the server adds the compressed vehicle data into the target database to increase the data in the target database; or, the server replaces the target data in the target database with the compressed vehicle data to modify the data in the target database.
[0147] In an exemplary embodiment, see Figure 7 , Figure 7 This is a flow chart of an embodiment of reading and processing target vehicle data in this application. In step S14, the process of the server processing the target vehicle data based on the target database specifically includes the following steps:
[0148] Step S143: when the vehicle data processing request is a vehicle data reading request, the target vehicle data is read from the target database.
[0149] Step S144: decompress the target vehicle data to obtain decompressed vehicle data.
[0150] Step S145: Generate a data reading feedback message based on the decompressed vehicle data, and return the data reading feedback message to the client controller.
[0151] Specifically, if the vehicle data processing request initiated by the client controller is a vehicle data reading request, that is, a request to read the target vehicle data from the target database, the server first reads the target vehicle data from the target database, wherein the target vehicle data is compressed storage data; then, the server decompresses the target vehicle data to obtain the decompressed vehicle data; finally, the server generates a data reading feedback message based on the decompressed vehicle data, and returns it to the client controller, so as to return the read target vehicle data to the client controller for subsequent processing.
[0152] Among them, reading the compressed stored data from the target database may specifically include: the server extracts the target vehicle data from the target database and deletes the target vehicle data from the target database; or, the server copies the target vehicle data from the target database to view the data in the target database.
[0153] In other exemplary embodiments, the server may also perform data recovery through the client controller to recover the target vehicle data in the event of abnormal power failure, storage chip abnormality, etc., which may specifically include the following steps:
[0154] Step 1: In case of an abnormality of the electric vehicle, obtain a data recovery request sent by the client controller.
[0155] The data recovery request at least carries the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing.
[0156] Step 2: Based on the data recovery request, read the target vehicle data from the backup database.
[0157] The target vehicle data is pre-written into the target database and the backup database respectively. When the electric vehicle is abnormal, the data in the target database may be damaged. Therefore, the server can read the target vehicle data from the backup database based on the data recovery request.
[0158] Step 3: Decompress the target vehicle data to obtain the decompressed vehicle data.
[0159] Step 4: Generate a data recovery feedback message based on the decompressed vehicle data, and return the data recovery feedback message to the client controller.
[0160] Among them, steps 2 to 4 in this embodiment are similar to the process of extracting target vehicle data from target vehicle data and generating and returning data reading feedback messages in the above embodiment, and will not be described in detail here.
[0161] In other exemplary embodiments, the server may also perform data sharing through the client controller to share the target vehicle data of the first client controller with the second client controller, which may specifically include the following steps:
[0162] Step 1: Obtain a data sharing request sent by the second client controller.
[0163] The data sharing request at least carries the identity information of the second client controller, the virtual address and data length of the target vehicle data requested for processing.
[0164] Step 2: Based on the data sharing request, read the target vehicle data from the target database.
[0165] The target vehicle data is data that the first client controller pre-requests to be written into the target database. When data is shared, the server can read the target vehicle data from the target database based on the data sharing request.
[0166] Step 3: Decompress the target vehicle data to obtain the decompressed vehicle data.
[0167] Step 4: Generate a data sharing feedback message based on the decompressed vehicle data, and return the data sharing feedback message to the second client controller.
[0168] Among them, steps 2 to 4 in this embodiment are similar to the process of extracting target vehicle data from target vehicle data and generating and returning data reading feedback messages in the above embodiment, and will not be described in detail here.
[0169] In order to more clearly illustrate the vehicle data processing method provided by the embodiment of the present disclosure, the vehicle data processing method is specifically described below with reference to a specific embodiment. Figures 8 to 9 , Figure 8 FIG. 1 is a module diagram of a method for writing and reading vehicle data according to an exemplary embodiment. Fig. 9 The module diagram of a message format of the SOME / IP protocol according to an exemplary embodiment is shown. The vehicle data writing and reading method is applied to the server 104, which specifically includes a vehicle data writing method and a vehicle data reading method.
[0170] The method for writing vehicle data specifically includes the following steps:
[0171] Step 1: The client sends a data write request to the data storage server based on the SOME / IP protocol.
[0172] The data writing request includes the original data requested to be written, the client ID and the virtual address of the database requested to be written.
[0173] In one embodiment, if Fig. 9 As shown in a, the data write request of the SOME / IP protocol includes a SOME / IP protocol message header and a storage service protocol message content. The message header includes a data write message ID, a message length, a client ID, and a session ID; the message content includes a virtual address of the database requested to be written, a data length of the original data requested to be written, and data content.
[0174] Step 2: The data storage server performs security verification on the client.
[0175] If the security verification is passed, the process proceeds to step three; if the security verification is not passed, the client's data writing request is rejected.
[0176] Step 3: The data storage server performs database indexing based on the client ID and virtual address and indexes to the target database.
[0177] Step 4: The data storage server compresses the original data to obtain processed data.
[0178] Step 5: The data storage server writes the processed data into the target database and returns a data writing feedback message to the client indicating that the data writing is completed based on the SOME / IP protocol.
[0179] Among them, regarding writing the processed data into the target database, it can specifically include: the data storage server adds the processed data to the target database to increase the data in the target database; or, the data storage server replaces the target data in the target database with the processed data to modify the data in the target database.
[0180] In one embodiment, if Fig. 9 As shown in b, the data write feedback message of the SOME / IP protocol includes a SOME / IP protocol message header and a storage service protocol message content. The message header includes a data write message ID, a message length, a client ID, and a session ID; and the message content includes a data write result.
[0181] The method for reading vehicle data specifically includes the following steps:
[0182] Step 1: The client sends a data read / in request to the data storage server based on the SOME / IP protocol.
[0183] The data reading request includes the original data requested to be read, the client ID and the virtual address of the database requested to be read.
[0184] In one embodiment, if Fig. 9 As shown in c, the data read request of the SOME / IP protocol includes a SOME / IP protocol message header and a storage service protocol message content. The message header includes a data read message ID, a message length, a client ID, and a session ID; the message content includes a virtual address of a database requested to be read and a data length of the original data requested to be read.
[0185] Step 2: The data storage server performs security verification on the client.
[0186] If the security verification is passed, the process proceeds to step three; if the security verification is not passed, the client's data reading request is rejected.
[0187] Step 3: The data storage server performs database indexing based on the client ID and virtual address and indexes to the target database.
[0188] Step 4: The data storage server reads the compressed storage data from the target database.
[0189] Step 5: The data storage server decompresses the compressed storage data to obtain the decompressed original data.
[0190] Step 6: The data storage server generates a data read feedback message based on the decompressed original data, and sends the data read feedback message to the client based on the SOME / IP protocol.
[0191] Among them, reading the compressed stored data from the target database may specifically include: the data storage server extracts the target data in the target database to delete data in the target database; or the data storage server copies the target data in the target database to view data in the target database.
[0192] In one embodiment, if Fig. 9 As shown in d, the data read feedback message of the SOME / IP protocol includes a SOME / IP protocol message header and a storage service protocol message content. The message header includes a data read message ID, a message length, a client ID, and a session ID; and the message content includes the read original data.
[0193] In this way, on the one hand, this solution first generates a vehicle data processing request by obtaining the client controller to verify the legitimacy of the client controller and the vehicle data processing request, and then, if the verification is passed, the target database is indexed through the identity information and virtual address in the vehicle data processing request to process the target vehicle data based on the target database, thereby optimizing the vehicle data processing flow, effectively improving the efficiency of processing vehicle data, and reducing the consumption of manpower and material resources; on the other hand, this solution is different from the traditional vehicle data processing method. It first verifies the legitimacy of the client controller through the identity information of the client controller, and then verifies the legitimacy of the vehicle data processing request through the virtual address and data length of the target vehicle data. If both verifications are passed, the target vehicle data is processed using the target database, thereby being able to operate and process a large amount of vehicle data even if the controller performance is low and the storage capacity is not high, effectively reducing the data management costs of automobile companies and / or suppliers, and improving the efficiency and utilization rate of vehicle data, which is conducive to problem analysis and troubleshooting based on vehicle data in the subsequent vehicle development process.
[0194] It should be understood that although Figure 2-Figure 9 The steps in the accompanying drawings are shown in sequence according to the arrows, but these steps are not necessarily performed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be performed in other orders. Moreover, Figure 2-Figure 9 At least part of the steps may include multiple steps or multiple stages. These steps or stages are not necessarily performed at the same time, but can be performed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed in turn or alternately with other steps or at least part of the steps or stages in other steps.
[0195] It can be understood that the same / similar parts between the various embodiments of the above method in this specification can refer to each other, and each embodiment focuses on the differences from other embodiments. For related points, please refer to the description of other method embodiments.
[0196] Fig.10 is a structural block diagram of a vehicle data processing device provided in an embodiment of the present application. Fig.10 The vehicle data processing device 10 includes: a request acquisition module 11, a first verification module 12, a second verification module 13 and a data processing module 14.
[0197] The request acquisition module 11 is used to acquire a vehicle data processing request generated by a client controller; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing;
[0198] The first verification module 12 is used to perform a first verification on the client controller based on the identity information to verify the legitimacy of the client controller;
[0199] The second verification module 13 is used to perform a second verification on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request when verifying the legitimacy of the client controller;
[0200] The data processing module 14 is used to perform database indexing based on the identity information and the virtual address to determine the target database and process the target vehicle data based on the target database when verifying that the vehicle data processing request is legal.
[0201] In one embodiment, in the aspect of processing the target vehicle data based on the target database, the vehicle data processing device 10 is further configured to execute:
[0202] In a case where the vehicle data processing request is a vehicle data writing request, compressing the target vehicle data to obtain compressed vehicle data;
[0203] The compressed vehicle data is written into the target database, and a data writing feedback message is generated and returned to the client controller.
[0204] In one embodiment, in the aspect of processing the target vehicle data based on the target database, the vehicle data processing device 10 is further configured to execute:
[0205] In a case where the vehicle data processing request is a vehicle data reading request, reading the target vehicle data from the target database;
[0206] Decompressing the target vehicle data to obtain decompressed vehicle data;
[0207] A data reading feedback message is generated based on the decompressed vehicle data, and the data reading feedback message is returned to the client controller.
[0208] In one embodiment, in the aspect of performing a first verification on the client controller based on the identity information to verify the legitimacy of the client controller, the vehicle data processing device 10 is further configured to execute:
[0209] Based on the identity information, obtaining the filing information of the client controller;
[0210] Based on the challenge / response authentication method, generate challenge information and predicted response information; the challenge information is a data fragment randomly generated for the record information, and the response information is a predicted response result returned by the client controller for the challenge information;
[0211] Sending the challenge information to the client controller to obtain actual response information returned by the client controller;
[0212] Compare and verify the predicted response information and the actual response information to obtain a corresponding verification result;
[0213] If the predicted response information and the actual response information are the same, the client controller is verified to be legal; if the predicted response information and the actual response information are different, the client controller is verified to be illegal.
[0214] In one embodiment, in the aspect of performing a second check on the vehicle data processing request based on the virtual address and the data length to check the legitimacy of the vehicle data processing request, the vehicle data processing device 10 is further configured to execute:
[0215] determining a data request range of the vehicle data processing request based on the virtual address and the data length; and
[0216] Based on the filing information, determining a data authorization scope for the client controller;
[0217] Compare and verify the data request range and the data authorization range to obtain a corresponding verification result;
[0218] Wherein, when the data request range belongs to the data authorization range, the vehicle data processing request is verified to be legal; and when the data request range exceeds the data authorization range, the vehicle data processing request is verified to be illegal.
[0219] Fig.11 2 is a block diagram of a vehicle controller 20 provided in an embodiment of the present application. For example, the vehicle controller 20 may be an electronic device, an electronic component, or a server array, etc. Fig.11The vehicle controller 20 includes a processor 21, which may be a processor set, which may include one or more processors, and the vehicle controller 20 includes a memory resource represented by a memory 22, wherein the memory 22 stores program data, such as an application. The program data stored in the memory 22 may include one or more modules, each corresponding to a set of executable instructions. In addition, the processor 21 is configured to implement the vehicle data processing method as described above when calling the program data stored in the memory 22.
[0220] In some embodiments, the vehicle controller 20 is an electronic device, and the computing system in the electronic device can run one or more operating systems, including any operating system discussed above and any commercial server operating system. The vehicle controller 20 can also run any of various additional server applications and / or middle-layer applications, including HTTP (Hypertext Transfer Protocol) servers, FTP (File Transfer Protocol) servers, CGI (Common Gateway Interface) servers, super servers, database servers, etc. Exemplary database servers include, but are not limited to, database servers commercially available from (International Business Machines) and the like.
[0221] In some embodiments, the processor 21 generally controls the overall operation of the vehicle controller 20, such as operations associated with display, data processing, data communication, and recording operations. The processor 21 may include one or more processor components to execute a computer program to complete all or part of the steps of the above method. In addition, the processor component may include one or more modules to facilitate the interaction between the processor component and other components. For example, the processor component may include a multimedia module to facilitate the interaction between the user's vehicle controller 20 and the processor 21 using the multimedia component to control.
[0222] In some embodiments, the processor component in the processor 21 may also be referred to as a CPU (Central Processing Unit). The processor component may be an electronic chip having the ability to process signals. The processor may also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor component, etc. In addition, the processor component may be implemented by an integrated circuit chip.
[0223] In some embodiments, the memory 22 is configured to store various types of data to support operations on the vehicle controller 20. Examples of such data include instructions, collected data, messages, pictures, videos, etc. for any application or method operating on the vehicle controller 20. The memory 22 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk, optical disk, or graphene memory.
[0224] In some embodiments, the memory 22 can be a memory stick, a TF card, etc., which can store all the information in the vehicle controller 20, including the input raw data, computer programs, intermediate operation results and final operation results are all stored in the memory 22. In some embodiments, it stores and retrieves information according to the location specified by the processor. In some embodiments, only with the memory 22 can the vehicle controller 20 have a memory function to ensure normal operation. In some embodiments, the memory 22 of the vehicle controller 20 can be divided into main memory (internal memory) and auxiliary memory (external memory) according to its purpose, and there is also a classification method of dividing it into external memory and internal memory. External memory is usually a magnetic medium or an optical disk, etc., which can store information for a long time. Memory refers to the storage component on the motherboard, which is used to store the data and programs currently being executed, but is only used to temporarily store programs and data. If the power is turned off or the power is cut off, the data will be lost.
[0225] In some embodiments, the vehicle controller 20 may further include: a power supply component 23 configured to perform power management of the vehicle controller 20, a wired or wireless network interface 24 configured to connect the vehicle controller 20 to a network, and an input / output (I / O) interface 25. The vehicle controller 20 may operate based on an in-vehicle operating system stored in the memory 22, and the in-vehicle operating system may be, for example, Linux, Android, AUTOSAR AP, or other systems.
[0226] In some embodiments, the power assembly 23 provides power to various components of the vehicle controller 20. The power assembly 23 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the vehicle controller 20.
[0227] In some embodiments, the wired or wireless network interface 24 is configured to facilitate wired or wireless communication between the vehicle controller 20 and other devices. The vehicle controller 20 can access a wireless network based on a communication standard, such as WiFi, an operator network (such as 2G, 3G, 4G or 5G), or a combination thereof.
[0228] In some embodiments, the wired or wireless network interface 24 receives broadcast signals or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the wired or wireless network interface 24 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0229] In some embodiments, the input / output (I / O) interface 25 provides an interface between the processor 21 and a peripheral interface module, which may be a keyboard, a click wheel, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.
[0230] Fig.12 3 is a block diagram of a computer-readable storage medium 30 provided in an embodiment of the present application. The computer-readable storage medium 30 stores a computer program 31, wherein the computer program 31 implements the vehicle data processing method as described above when executed by a processor.
[0231] If the integrated units of the functional units in the various embodiments of the present application are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium 30. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or the whole or part of the technical solution can be embodied in the form of a software product. The computer-readable storage medium 30 includes several instructions in a computer program 31 to enable a computer device (which can be a personal computer, a system server, or a network device, etc.), an electronic device (such as MP3, MP4, etc., or a smart terminal such as a mobile phone, a tablet computer, a wearable device, or a desktop computer, etc.) or a processor to execute all or part of the steps of the methods of various implementation methods of the present application.
[0232] Fig.13 4 is a block diagram of a computer program product 40 provided in an embodiment of the present application. The computer program product 40 includes program instructions 41, and the program instructions 41 can be executed by the processor of the vehicle controller 20 to implement the vehicle data processing method as described above.
[0233] Those skilled in the art should understand that the embodiments of the present application may provide a method for processing vehicle data, a device for processing vehicle data 10, a vehicle controller 20, a computer-readable storage medium 30, or a computer program product 40. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may take the form of a computer program product 40 implemented on one or more computer program instructions 41 (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0234] The present application is described with reference to the flowchart and / or block diagram of the vehicle data processing method, vehicle data processing device 10, vehicle controller 20, computer-readable storage medium 30 or computer program product 40 according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by the computer program product 40. These computer program products 40 can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the program instructions 41 executed by the processor of the computer or other programmable data processing device generate instructions for implementing the process in the flowchart. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0235] These computer program products 40 may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the program instructions 41 stored in the computer program product 40 produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0236] These program instructions 41 may also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the program instructions 41 executed on the computer or other programmable device for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0237] It should be noted that the above-mentioned various methods, devices, electronic devices, computer-readable storage media, computer program products, etc. may also include other implementation methods according to the description of the method embodiments. The specific implementation methods can refer to the description of the relevant method embodiments, and will not be described one by one here.
[0238] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are to be considered exemplary only, and the true scope and spirit of the present disclosure are indicated by the claims.
[0239] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. A method for processing vehicle data, characterized in that: The method comprises: Obtaining a vehicle data processing request generated by a client controller; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing; Based on the identity information, performing a first verification on the client controller to verify the legitimacy of the client controller; In the case of verifying that the client controller is legitimate, performing a second check on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request; When verifying that the vehicle data processing request is legal, a database index is performed based on the identity information and the virtual address to determine a target database so as to process the target vehicle data based on the target database; wherein, processing the target vehicle data based on the target database includes writing, reading, sharing, restoring, viewing, updating or deleting the target vehicle data based on the target database.
2. The method according to claim 1, characterized in that The processing of the target vehicle data based on the target database includes: In a case where the vehicle data processing request is a vehicle data writing request, compressing the target vehicle data to obtain compressed vehicle data; The compressed vehicle data is written into the target database, and a data writing feedback message is generated and returned to the client controller.
3. The method according to claim 1, characterized in that The processing of the target vehicle data based on the target database includes: In a case where the vehicle data processing request is a vehicle data reading request, reading the target vehicle data from the target database; Decompressing the target vehicle data to obtain decompressed vehicle data; A data reading feedback message is generated based on the decompressed vehicle data, and the data reading feedback message is returned to the client controller.
4. The method according to claim 1, characterized in that The first verification of the client controller based on the identity information to verify the legitimacy of the client controller includes: Based on the identity information, obtaining the filing information of the client controller; Based on the challenge / response authentication method, generate challenge information and predicted response information; the challenge information is a data fragment randomly generated for the record information, and the response information is a predicted response result returned by the client controller for the challenge information; Sending the challenge information to the client controller to obtain actual response information returned by the client controller; Compare and verify the predicted response information and the actual response information to obtain a corresponding verification result; If the predicted response information and the actual response information are the same, the client controller is verified to be legal; if the predicted response information and the actual response information are different, the client controller is verified to be illegal.
5. The method according to claim 4, characterized in that The performing a second check on the vehicle data processing request based on the virtual address and the data length to check the legitimacy of the vehicle data processing request includes: determining a data request range of the vehicle data processing request based on the virtual address and the data length; and Based on the filing information, determining a data authorization scope for the client controller; Compare and verify the data request range and the data authorization range to obtain a corresponding verification result; Wherein, when the data request range belongs to the data authorization range, the vehicle data processing request is verified to be legal; and when the data request range exceeds the data authorization range, the vehicle data processing request is verified to be illegal.
6. An electric vehicle, characterized in that: The electric vehicle comprises: The client controller is used to generate a vehicle data processing request; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing; A data storage server, used for obtaining the vehicle data processing request, and performing a first check on the client controller based on the identity information to verify the legitimacy of the client controller; when the client controller is verified to be legitimate, performing a second check on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request; when the vehicle data processing request is verified to be legitimate, performing a database index based on the identity information and the virtual address to determine a target database to process the target vehicle data based on the target database; wherein the processing of the target vehicle data based on the target database includes writing, reading, sharing, restoring, viewing, updating or deleting the target vehicle data based on the target database; The data backup server is used to obtain the target vehicle data from the target database to back up the target vehicle data.
7. The electric vehicle according to claim 6, characterized in that: The client controller includes a gateway controller and a CAN communication controller, and the gateway controller includes a CAN protocol stack and a gateway driver; wherein, The CAN communication controller is used to generate the vehicle data processing request and send it to the CAN protocol stack via the CAN bus; The CAN protocol stack is used to package the vehicle data processing request into CAN short frame data, and transmit the CAN short frame data to the gateway driver in the form of long data based on the CanTp protocol; The gateway driver is used to convert the CAN short frame data into effective load data through the RTE standard, and transmit the effective load data to the data storage server based on the SOME / IP protocol.
8. A vehicle data processing device, characterized in that: The device comprises: A request acquisition module, used to acquire a vehicle data processing request generated by a client controller; the vehicle data processing request carries at least the identity information of the client controller, the virtual address and data length of the target vehicle data requested for processing; A first verification module, configured to perform a first verification on the client controller based on the identity information to verify the legitimacy of the client controller; A second verification module, configured to perform a second verification on the vehicle data processing request based on the virtual address and the data length to verify the legitimacy of the vehicle data processing request when the client controller is verified to be legitimate; A data processing module is used to perform database indexing based on the identity information and the virtual address to determine a target database after verifying that the vehicle data processing request is legal, so as to process the target vehicle data based on the target database; wherein the processing of the target vehicle data based on the target database includes writing, reading, sharing, restoring, viewing, updating or deleting the target vehicle data based on the target database.
9. A vehicle controller, characterized in that: The vehicle controller includes a processor and a memory connected to the processor, wherein the memory stores program data, and the processor is used to call the program data stored in the memory to execute the method as described in any one of claims 1-5.
10. A computer-readable storage medium having program instructions stored therein, characterized in that: When the program instructions are executed by a processor, the method according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Multifunction vehicle bus controller
CN107248945A
Vehicle data acquisition method and device, vehicle and computer readable storage medium
CN114120482A
Data transmission method and device, equipment and storage medium
CN117014361A