Communication method and system, electronic device and program product
By exchanging messages through a decentralized communication protocol between the target vehicle and the first set of target devices, the problem of vehicle communication interruption under the absence of Internet connection is solved, and the robustness and security of data synchronization and communication are achieved.
Patent Information
- Application Number
- CN202510978531.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-15
- Publication Date
- 2025-11-04
AI Technical Summary
In the absence of or with a weak internet signal, vehicles are unable to connect to the cloud service center, resulting in communication interruptions and affecting the fleet's normal communication.
The target vehicle and the first set of target devices exchange messages using a decentralized communication protocol. The data to be broadcast is generated through identity authentication and comparison of shared data sets. The distributed database function is implemented using the Scuttlebutt protocol to ensure that message transmission does not depend on a central server.
Even without an internet connection, the target vehicle and the first set of target devices can communicate normally, achieve data synchronization, improve the robustness and security of communication, and ensure the timeliness of communication.
Smart Images

Figure CN120897173A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of vehicle communication, in particular to a communication method, system, electronic device and program product. BACKGROUND
[0002] Currently, vehicle radio communication technology mainly relies on the Internet and cloud service center for information interaction to realize real-time communication. However, in the case of no Internet signal or weak Internet signal, such as traveling in the wild in a team, it is impossible to connect to the cloud service center through the Internet, which will affect the normal communication of the team. SUMMARY
[0003] Therefore, the embodiments of the present disclosure provide a communication method, system, electronic device and program product to solve the problem that the existing technology cannot connect to the cloud service center through the Internet, which affects the normal communication of the vehicle.
[0004] In a first aspect, the present disclosure provides a communication method applied to a target vehicle, the method comprising:
[0005] determining a first target device set, the first target device set comprising at least one first target device;
[0006] obtaining a shared data set of each first target device, and generating to-be-broadcast data based on the shared data set of each first target device and / or a shared data set of the target vehicle;
[0007] broadcasting a first broadcast message carrying the to-be-broadcast data to each first target device.
[0008] In a second aspect, the present disclosure provides a communication method applied to a first target device, the method comprising:
[0009] determining a second target device set, the second target device set comprising at least one second target device;
[0010] obtaining a shared data set of each second target device, and generating to-be-broadcast data based on the shared data set of each second target device and / or a shared data set of the first target device;
[0011] broadcasting a second broadcast message carrying the to-be-broadcast data to each second target device.
[0012] In a third aspect, the present disclosure provides a communication system comprising:
[0013] a target vehicle configured to determine a first target device set comprising at least one first target device, obtain a respective shared data set of each of the first target devices, generate to-be-broadcast data based on the respective shared data set of each of the first target devices and / or a shared data set of the target vehicle, and broadcast a first broadcast message carrying the to-be-broadcast data to each of the first target devices;
[0014] any of the first target devices configured to determine a second target device set comprising at least one second target device, obtain a respective shared data set of each of the second target devices, generate to-be-broadcast data based on the respective shared data set of each of the second target devices and / or a shared data set of the first target device, and broadcast a second broadcast message carrying the to-be-broadcast data to each of the second target devices.
[0015] In a fourth aspect, the present disclosure provides an electronic device comprising:
[0016] at least one processor; and
[0017] a memory communicatively connected to the at least one processor; wherein
[0018] the memory stores at least one computer program executable by the at least one processor, and the at least one computer program is executed by the at least one processor to enable the at least one processor to perform the communication method according to the first aspect or the second aspect.
[0019] In a fifth aspect, the present disclosure provides a computer program product comprising a computer program, which, when executed in a processor, implements the communication method according to the first aspect or the second aspect.
[0020] The embodiments provided by the present disclosure are that the target vehicle determines a first target device set, performs broadcast communication with each first target device in the first target device set, acquires a shared data set of each first target device, generates to-be-broadcast data based on the shared data set of each first target device and / or a shared data set of the target vehicle, and broadcasts a first broadcast message carrying the to-be-broadcast data to each first target device. The target vehicle and each first target device in the first target device set interact messages by using a decentralized communication protocol, which realizes decentralization, so that the message transmission between the target vehicle and each first target device does not depend on a central server, thereby enabling the target vehicle to still normally communicate with each first target device in the first target device set and realizing data synchronization of the target vehicle and each first target device when the target vehicle cannot connect to a cloud service center through the Internet, thereby improving the robustness of communication, ensuring communication security, and ensuring communication timeliness. BRIEF DESCRIPTION OF DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure or the prior art, the drawings needed to be used in the embodiments or prior art description will be briefly introduced. Obviously, the drawings in the following description are only embodiments of the present disclosure, and for those skilled in the art, other drawings can also be obtained without creative labor on the basis of the provided drawings.
[0022] Figure 1 The communication method flowchart applied to the target vehicle in the embodiments of the present disclosure is shown.
[0023] Figure 2 The communication method flowchart applied to the first target device in the embodiments of the present disclosure is shown.
[0024] Figure 3 The communication system architecture schematic diagram in the embodiments of the present disclosure is shown.
[0025] Figure 4 The working process schematic diagram of the communication system constructed by multiple vehicles in the embodiments of the present disclosure is shown.
[0026] Figure 5 The communication device structure schematic diagram applied to the target vehicle in the embodiments of the present disclosure is shown.
[0027] Figure 6 The communication device structure schematic diagram applied to the first target device in the embodiments of the present disclosure is shown.
[0028] Figure 7 The structure schematic diagram of the electronic device in the embodiments of the present disclosure is shown. DETAILED DESCRIPTION
[0029] The technical solutions in the embodiments of the present disclosure will be described clearly and completely in combination with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those of ordinary skill in the art without creative effort belong to the scope of the present disclosure.
[0030] The embodiments of the present disclosure and the features in the embodiments can be combined with each other without conflict.
[0031] As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0032] The terms used herein are only used to describe specific embodiments, and are not intended to limit the present disclosure. As used herein, the singular forms "a" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the terms "comprise" and / or "consist of, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. The terms "connected" or "coupled" and / or similar terms are not limited to a physical or mechanical connection, but can include an electrical connection, whether direct or indirect.
[0033] Unless otherwise defined, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in a commonly used dictionary should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and the present disclosure, and should not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0034] The communication method provided by the embodiments of the present disclosure is applied to a target vehicle, which can be any vehicle, for example, the communication method can be built into any controller of the vehicle.
[0035] The communication method provided by the embodiments of the present disclosure is applied to a target vehicle, which can be any vehicle, for example, the communication method can be built into any controller of the vehicle. Figure 1 As shown, the method mainly includes the following steps:
[0036] In step 101, the target vehicle determines a first target device set, and the first target device set includes at least one first target device.
[0037] In some embodiments, the target vehicle determines the first target device set by broadcasting a third broadcast message including identity information of the target vehicle, receiving at least one fourth broadcast message in response to the third broadcast message, each fourth broadcast message including identity information of a target device to be authenticated, and authenticating each target device to be authenticated based on the identity information of the target device to be authenticated carried by each fourth broadcast message to obtain the first target device that passes the authentication, and determining the first target device set to include each first target device.
[0038] In exemplary embodiments, the first target device can be any one of a vehicle, a mobile terminal, and a roadside device, wherein the roadside device includes a charging pile.
[0039] In exemplary embodiments, the first target device set can be obtained by the target vehicle searching for first target devices within a certain range through radio communication technology (e.g., Bluetooth, LoRa spread spectrum technology, etc.). The target vehicle and the first target devices that can communicate with each other are authenticated through broadcast or point-to-point direct communication using the radio communication technology.
[0040] In some embodiments, the target vehicle authenticates the first target devices in the surrounding area through broadcasting. Specifically, the identity information includes an identity and a public key, and authenticating each target device to be authenticated based on the identity information of the target device to be authenticated carried by each fourth broadcast message to obtain the first target device that passes the authentication includes:
[0041] Each fourth broadcast message is processed as follows:
[0042] Based on the public key carried by the fourth broadcast message, the fourth broadcast message is parsed to obtain the identity of the target device to be authenticated, and the target device to be authenticated is authenticated based on the identity of the target device to be authenticated, and the target device to be authenticated is taken as the first target device when the authentication is passed.
[0043] In exemplary embodiments, the identity of the target vehicle refers to identity information that can uniquely identify the target vehicle. The identity of the target device refers to identity information that can uniquely identify the target device. For example, a vehicle identification code, an IP address and a port number of a vehicle communication module, and other communication parameters can be used as the identity of the target vehicle; an IP address and a port number of the target device, a serial number of the target device, and other communication parameters can be used as the identity of the target device.
[0044] In the example embodiment, the identity carried in the fourth broadcast message is encrypted by a public key, and after receiving the fourth broadcast message, the identity carried in the fourth broadcast message is obtained by parsing the identity recognition information carried in the fourth broadcast message through the public key carried in the fourth broadcast message.
[0045] In the example embodiment, the target vehicle performs identity authentication on the to-be-authenticated device, including: the target vehicle verifies the integrity of the identity of the to-be-authenticated device according to a preset integrity verification rule, and if the verification is passed, the identity authentication of the to-be-authenticated device is passed.
[0046] Or
[0047] The identity authentication information further includes dynamic seed information in addition to the identity and the public key; the target vehicle generates a verification identity by taking the dynamic seed information as input by using a preset identity generation algorithm; if the verification identity is the same as the identity, the identity authentication of the to-be-authenticated device is passed; wherein the identity included in the identity authentication information is generated by the to-be-authenticated device based on an identity generation algorithm of the to-be-authenticated device and the dynamic seed information.
[0048] In the example embodiment, the target vehicle broadcasts the third broadcast message, including: the target vehicle broadcasts the third broadcast message by using technologies such as Bluetooth broadcast, ZigBee beacon broadcast, RFID tag backscattering, infrared broadcast, so that the third broadcast message can be monitored and received by other devices in the surrounding area.
[0049] In the example embodiment, in response to the third broadcast message, the target vehicle receives at least one fourth broadcast message, including: the devices in the surrounding area of the target vehicle broadcast the fourth broadcast message in response to the third broadcast message according to their own settings after monitoring and receiving the third broadcast message, and carry their own identity recognition information in the fourth broadcast message; the target vehicle monitors and receives the fourth broadcast message, parses the identity recognition information in the fourth broadcast message according to the public key carried in the fourth broadcast message to obtain an identity of a to-be-authenticated device, and performs identity authentication on the to-be-authenticated device based on the identity of the to-be-authenticated device.
[0050] In step 102, the target vehicle obtains a shared data set of each of the first target devices, and generates to-be-broadcast data based on the shared data set of each of the first target devices and / or the shared data set of the target vehicle.
[0051] In some embodiments, the to-be-broadcast data is generated based on the shared data set of each of the first target devices and the shared data set of the target vehicle, including: for each of the first target devices and the target vehicle as a combination, comparing the difference between the two shared data sets corresponding to each combination to obtain a difference data set; and generating the to-be-broadcast data based on the difference data set.
[0052] When the plurality of data in the difference data set is included, the data in the difference data set can be sorted, and at least one data in the difference data set is taken as the to-be-broadcast data according to the sorting.
[0053] When the difference data set is empty, it indicates that the shared data sets of each first target device and the target vehicle have completed synchronization. In this case, the target vehicle can wait for a preset time length, and then generate the to-be-broadcast data based on the latest shared data set of each first target device and the latest shared data set of the target vehicle.
[0054] In some embodiments, the comparison of the difference between the two shared data sets corresponding to each combination obtains a difference data set, including: for each combination, comparing the difference between the two shared data sets corresponding to the combination to obtain the difference data of the combination; integrating the difference data of each combination to obtain the difference data set; and the data in the difference data set is not repeated.
[0055] When saving the difference data of each combination to the difference data set, a repetitive verification is performed to eliminate two completely identical data, so that there is no completely repeated data in the difference data set, to avoid data redundancy, and to avoid wasting communication resources caused by repeated broadcasting of the same data.
[0056] In some embodiments, the obtaining of the shared data set of each first target device includes: establishing a corresponding shared data set for each first target device respectively, and the shared data set is empty at the beginning; and saving the broadcast data from the first target device to the shared data set of the first target device when receiving the broadcast data from the first target device.
[0057] In this way, each target device corresponds to a shared data set, and the target vehicle saves the received data of each target device to the corresponding shared data set, so that it can be determined whether the shared data set of each target device is synchronized with the shared data set of the target vehicle.
[0058] In some embodiments, the saving, upon receiving each broadcast data from the first target device, the broadcast data from the first target device to the shared data set of the first target device comprises: obtaining, upon receiving each second broadcast message, an identity of a source device of the second broadcast message; obtaining, based on a security verification parameter corresponding to the identity of each first target device, a security verification parameter of the first target device matching the identity of the source device; parsing the second broadcast message based on the security verification parameter of the matching first target device to obtain the broadcast data from the matching first target device, and saving the broadcast data from the matching first target device to the corresponding shared data set.
[0059] The target vehicle locally saves the security verification parameter of each first target device, and each time a second broadcast message of a first target device is received, the locally saved security verification parameter is used to verify the received second broadcast message, thereby ensuring communication security.
[0060] Step 103, the target vehicle broadcasts a first broadcast message carrying the to-be-broadcast data.
[0061] In some embodiments, after the target vehicle determines the first target device set, before obtaining the shared data set of each first target device, the target vehicle further exchanges a security verification parameter with each first target device in the first target device set, and saves the security verification parameter corresponding to each first target device.
[0062] The target vehicle exchanges the security verification parameter with each first target device in the first target device set, so that the target vehicle locally saves the security verification parameter corresponding to each first target device in the first target device set, and each first target device in the first target device set saves at least the security verification parameter corresponding to the target vehicle.
[0063] The first target device in the first target device set is a device that establishes trust with the target vehicle, and can further perform subsequent message interaction.
[0064] In an exemplary embodiment, the security verification parameter is a key. In addition to saving its own key, the target vehicle also saves the key corresponding to each first target device in the first target device set. When saving the key, the correspondence between the identity of the first target device and the key can be saved.
[0065] In some embodiments, the target vehicle interacts with each first target device in a message based on the security verification parameter of the target vehicle and the first target device using a decentralized communication protocol.
[0066] Exemplarily, the decentralized communication protocol includes a Scuttlebutt (SSB for short) protocol, and the target vehicle and each first target device directly exchange messages through the SSB protocol to form a decentralized communication network. By using a message synchronization mechanism of the SSB protocol, the target vehicle and each first target device directly exchange messages and update states, so that the target vehicle and each first target device respectively obtain consistent messages, and a function of a distributed database is implemented. A Gossip protocol in the SSB protocol can ensure the propagation of messages, and the target vehicle and each first target device will propagate the messages to other nodes, so that the messages are timely reached.
[0067] In some embodiments, the target vehicle interacts with each first target device by using a decentralized communication protocol, including two cases, that is, the target vehicle broadcasts messages outward based on the decentralized communication protocol, and receives and processes messages broadcast by the first target device based on the decentralized communication protocol.
[0068] Specifically, the target vehicle interacts with each first target device by using a decentralized communication protocol based on security verification parameters of the target vehicle and the first target device, including: receiving a second broadcast message, processing the second broadcast message based on the security verification parameters and the decentralized communication protocol; and / or generating a first broadcast message based on the security verification parameters of the target vehicle and the decentralized communication protocol, and broadcasting the first broadcast message.
[0069] In some embodiments, the processing of the second broadcast message based on the security verification parameters and the decentralized communication protocol includes: determining an identity of a source device of the second broadcast message; when it is determined that the source device belongs to the set of first target devices according to the identity of the source device, obtaining security verification parameters corresponding to the source device from security verification parameters of each first target device; parsing the second broadcast message based on the security verification parameters corresponding to the source device and the decentralized communication protocol; and saving data carried by the second broadcast message locally when the data is not saved.
[0070] When the target vehicle receives each second broadcast message sent by other devices, it determines whether the source of the second broadcast message belongs to the set of authenticated first target devices through identity recognition. If not, the broadcast message is directly discarded. If yes, the target vehicle continues to parse the second broadcast message based on a parsing manner agreed in the decentralized communication protocol, and saves data of the second broadcast message when the data is not saved, so as to realize content synchronization between the target vehicle and each first target device, and implement a function of a distributed database.
[0071] In some embodiments, the target vehicle broadcasts the first broadcast message carrying the to-be-broadcast data, including: encrypting the to-be-broadcast data based on the security verification parameter of the target vehicle and the decentralized communication protocol, generating the first broadcast message and broadcasting.
[0072] In an exemplary embodiment, the security verification parameter includes a key; the to-be-broadcast data is encrypted by using the key corresponding to the target vehicle, and is encapsulated according to the message format agreed in the decentralized communication protocol to generate the first broadcast message.
[0073] In some embodiments, in addition to the above-mentioned way of generating the to-be-broadcast data by comparing the differences between each shared data set, other ways of generating the to-be-broadcast data can also be used. Including but not limited to the following listed ways:
[0074] The to-be-broadcast data is generated based on the shared data set of each first target device and / or the shared data set of the target vehicle, including:
[0075] Any data in the shared data set of each first target device and the shared data set of the target vehicle is taken as the to-be-broadcast data;
[0076] Or,
[0077] From the shared data set of the target vehicle, data not broadcast by any first target device is extracted to generate the to-be-broadcast data;
[0078] Or,
[0079] From the shared data set of each first target device, data first received by the target vehicle within a preset time period is extracted to generate the to-be-broadcast data;
[0080] Or,
[0081] Based on the user input operation, new shared data is generated, the new shared data is saved to the shared data set of the target vehicle, and the to-be-broadcast data is generated based on the new shared data.
[0082] In an exemplary embodiment, the target vehicle acquires the to-be-broadcast data, including: the target vehicle acquires the to-be-broadcast data based on user operation, the way of the user operation is not limited, for example, user voice, manual operation of the interactive interface, remote control and various ways; or, data carried in the first broadcast message sent by any first target device first received by the target vehicle within a preset time period is taken as the to-be-broadcast data.
[0083] In the example embodiment, when the target vehicle broadcasts the first broadcast message, the target vehicle can broadcast the first broadcast message without specifying a destination communication address, so that each first target device can monitor and receive the first broadcast message; or the target vehicle can broadcast the first broadcast message by specifying a destination communication address, which is a communication address (such as an IP address, a port number, etc.) of each first target device in the first target device set.
[0084] In some embodiments, the method further includes: when the combined difference data is obtained, marking an object that lacks the difference data, and saving the difference data and the object that lacks the difference data in the difference data set, and generating the data to be broadcast based on the difference data set; the object includes the first target device and the target vehicle.
[0085] The broadcasting of the first broadcast message carrying the data to be broadcast includes: based on the difference data corresponding to the data to be broadcast and the object identifier that lacks the difference data, generating the first broadcast message carrying the data to be broadcast and performing directed broadcasting to the object that lacks the difference data.
[0086] Based on this, the corresponding difference data can be broadcast only to the object that has not completed synchronization.
[0087] In some embodiments, the broadcasting of the first broadcast message carrying the data to be broadcast includes broadcasting the first broadcast message carrying the data to be broadcast to each first target device. Based on this, the broadcast can be performed without specifying a destination address.
[0088] In the embodiments of the present disclosure, the target vehicle determines the first target device set, performs broadcast communication with each first target device in the first target device set, obtains a shared data set of each first target device, generates data to be broadcast based on the shared data set of each first target device and / or the shared data set of the target vehicle, and broadcasts a first broadcast message carrying the data to be broadcast to each first target device. The target vehicle and each first target device in the first target device set interact messages by using a decentralized communication protocol, which realizes decentralization, so that the message transmission between the target vehicle and each first target device does not depend on a central server, thereby enabling the target vehicle to normally communicate with each first target device in the first target device set and realize data synchronization between the target vehicle and each first target device when the target vehicle cannot connect to a cloud service center through the Internet, thereby improving the robustness of communication, ensuring communication security and timeliness.
[0089] The target vehicle exchanges security verification parameters with each first target device in the first target device set, and interacts with each first target device in a message based on the security verification parameters of the target vehicle and the first target device by using a decentralized communication protocol. Decentralization is achieved, so that the message transmission between the target vehicle and each first target device does not depend on a central server, thereby enabling the target vehicle to communicate normally with each first target device in the first target device set when the target vehicle cannot connect to a cloud service center through the Internet, thereby improving the robustness of communication, ensuring communication security and communication timeliness.
[0090] The target vehicle and each first target device form a communication network, the target vehicle and each first target device are respectively nodes in the communication network, and communicate between the nodes by using a decentralized communication protocol to maintain a data copy of each node and ensure the consistency of the data of each node, so that reliable message transmission can be achieved even in the case of unstable network signals.
[0091] Based on the same concept, the embodiments of the present disclosure also provide another communication method applied to any one of the first target devices described above.
[0092] As shown in Figure 2 The communication method applied to the first target device mainly includes the following steps:
[0093] Step 201, the first target device determines a second target device set, and the second target device set includes at least one second target device.
[0094] As described above, the first target device can be a vehicle, a mobile terminal, a roadside device, etc., and the second target device can be a vehicle, a mobile terminal, a roadside device, etc.
[0095] The first target device belongs to a first target device set, and the first target device set is a device set allowed to communicate with the target vehicle. The first target device set and the second target device set have an intersection, and the intersection can include the target vehicle and / or part of the first target devices, and the part of the first target devices in the intersection are also second target devices.
[0096] The first target device set and the second target device set can not be completely the same, and the devices existing in one set alone transmit messages to the devices in the intersection, and forward the messages to the devices existing in the other set alone through the devices, so as to realize data synchronization between the devices. In addition, the devices not in the intersection further diffuse the messages to other devices within the communication range of the devices, so as to expand the communication range.
[0097] The first target device exchanges security verification parameters with each device in the second target device set.
[0098] The first target device interacts with each of the second target devices based on security verification parameters of the first target device and the second target devices using a decentralized communication protocol.
[0099] At step 202, the first target device acquires a shared data set of each of the second target devices, and generates to-be-broadcast data based on the shared data set of each of the second target devices and / or a shared data set of the first target device.
[0100] In some embodiments, the first target device generates to-be-broadcast data based on the shared data set of each of the second target devices and / or the shared data set of the first target device, including: for each of the second target devices and the first target device as a combination, comparing differences between two shared data sets corresponding to each combination to obtain a difference data set; and generating to-be-broadcast data based on the difference data set.
[0101] In some embodiments, the first target device compares differences between two shared data sets corresponding to each combination to obtain a difference data set, including: for each combination, comparing differences between two shared data sets corresponding to the combination to obtain difference data of the combination; and integrating difference data of each combination to obtain a difference data set; and data in the difference data set is not repeated.
[0102] In some embodiments, the first target device acquires a shared data set of each of the second target devices, including: establishing a corresponding shared data set for each of the second target devices respectively, and the shared data set is an empty set initially; and saving broadcast data from the second target device to the shared data set of the second target device upon receiving the broadcast data from the second target device each time.
[0103] In some embodiments, the first target device saves broadcast data from the second target device to the shared data set of the second target device upon receiving the broadcast data from the second target device each time, including: obtaining an identity of a source device of a second broadcast message upon receiving the second broadcast message each time; acquiring security verification parameters of a second target device matching the identity of the source device based on security verification parameters corresponding to the identity of each of the second target devices; and parsing the first broadcast message based on the security verification parameters of the matching second target device to obtain broadcast data from the matching second target device, and saving the broadcast data from the matching second target device to the corresponding shared data set.
[0104] In some embodiments, the first target device generates the data to be broadcast based on the shared data set of each of the second target devices and / or the shared data set of the target vehicle, including:
[0105] any data in the shared data set of each of the second target devices and the shared data set of the target vehicle as the data to be broadcast;
[0106] or,
[0107] extracting data not broadcast by any of the second target devices from the shared data set of the target vehicle to generate the data to be broadcast;
[0108] or,
[0109] extracting data first received by the first target device within a preset time period from the shared data set of each of the second target devices to generate the data to be broadcast;
[0110] or,
[0111] generating new shared data based on user input operations, saving the new shared data to the shared data set of the first target device, and generating the data to be broadcast based on the new shared data.
[0112] Step 203, the first target device broadcasts a second broadcast message carrying the data to be broadcast.
[0113] In some embodiments, the first target device broadcasts a second broadcast message carrying the data to be broadcast, including: encrypting the data to be broadcast based on the security verification parameters of the first target device and the decentralized communication protocol to generate a second broadcast message.
[0114] In some embodiments, the method further includes: the first target device marking the second target device lacking the difference data when obtaining the combined difference data, saving the difference data and the second target device lacking the difference data in the difference data set, and generating the data to be broadcast based on the difference data set;
[0115] The first target device broadcasts a second broadcast message carrying the data to be broadcast, including: based on the difference data corresponding to the data to be broadcast and the object identifier lacking the difference data, generating a second broadcast message carrying the data to be broadcast and performing directed broadcast to the object lacking the difference data.
[0116] The specific implementation of steps 202 and 203 above can refer to the expanded description of steps 102 and 103, and the implementation process is similar, which will not be repeated here.
[0117] Based on the same concept, the embodiments of the present disclosure further provide a communication system, as shown in Figure 3 The communication system shown in the figure is only an example of a communication system composed of a target vehicle and two first target devices, and the actual number of first target devices can be one or more than one, and is not limited to two. The communication system includes:
[0118] The target vehicle is configured to determine a first target device set including at least one first target device, obtain a shared data set of each first target device, generate to-be-broadcast data based on the shared data set of each first target device and / or a shared data set of the target vehicle, and broadcast a first broadcast message carrying the to-be-broadcast data to each first target device.
[0119] Any of the first target devices is configured to determine a second target device set including at least one second target device, obtain a shared data set of each second target device, generate to-be-broadcast data based on the shared data set of each second target device and / or a shared data set of the first target device, and broadcast a second broadcast message carrying the to-be-broadcast data to each second target device.
[0120] The specific implementation process of the target vehicle can be referred to the detailed description of steps 101-103 above, which will not be repeated here.
[0121] The specific implementation process of any of the first target devices can be referred to the detailed description of steps 201-203 above, which will not be repeated here.
[0122] In addition, the communication system can further include second target devices, third target devices, fourth target devices, etc. in addition to the target vehicle and the first target devices. According to the similar processing procedures of steps 101-103 or steps 201-203, the third target device set determined by the second target devices is diffused to each third target device in the third target device set, the fourth target device set determined by the third target devices is diffused to each fourth target device in the fourth target device set, and so on, so as to form a large communication network, so that the message of the target vehicle is continuously diffused outward, and the external message is diffused to the target vehicle.
[0123] In one exemplary embodiment, as shown in Figure 4 The working process of the communication system is exemplified by taking a communication system composed of multiple vehicles as an example.
[0124] The vehicle A generates an identity of the vehicle A when starting; the vehicle A broadcasts the encrypted identity and the public key to the outside through wireless communication after encrypting the identity with the public key, that is, broadcasts an authentication message for verifying the identity; the vehicle B and the vehicle C receive the encrypted identity and the public key broadcast by the vehicle A within the broadcast coverage of the vehicle A, respectively decrypt the identity of the vehicle A with the public key, and save the identity of the vehicle A after authentication.
[0125] Similarly, the vehicle B generates an identity of the vehicle B when starting; the vehicle B broadcasts the encrypted identity and the public key to the outside through wireless communication after encrypting the identity with the public key in response to the authentication message broadcast by the vehicle A; the vehicle A and the vehicle C receive the encrypted identity and the public key broadcast by the vehicle B within the broadcast coverage of the vehicle B, respectively decrypt the identity of the vehicle B with the public key, and save the identity of the vehicle B after authentication.
[0126] Similarly, the vehicle C generates an identity of the vehicle C when starting; the vehicle C broadcasts the encrypted identity and the public key to the outside through wireless communication after encrypting the identity with the public key in response to the authentication messages broadcast by the vehicle A and the vehicle B; the vehicle A and the vehicle B receive the encrypted identity and the public key broadcast by the vehicle C within the broadcast coverage of the vehicle C, respectively decrypt the identity of the vehicle C with the public key, and save the identity of the vehicle C after authentication.
[0127] At this point, the identities of the three vehicles are saved in the vehicles A, B and C, the vehicles A, B and C exchange the keys for subsequent message decryption with each other, the mutual identity verification is completed, and the three vehicles form a trusted communication network.
[0128] The vehicle A broadcasts a message A; the vehicle B receives the message A, parses the message A with the saved key of the vehicle A, and calculates the information difference (for example, the message A not received by the vehicle C) among the vehicles A, B and C according to a decentralized communication protocol such as the Scuttlebutt protocol, and synchronizes the information difference to the vehicle C.
[0129] The vehicle C judges whether the message belongs to itself according to the identity in the message after receiving the message broadcast and synchronized by the vehicle B based on the information difference, and updates the message; similarly, the vehicle C and the vehicle A perform information difference calculation and message synchronization, and the vehicle B and the vehicle A perform information difference calculation and message synchronization.
[0130] Through message synchronization, the vehicle A, the vehicle B and the vehicle C form a distributed data storage.
[0131] In an application scenario, when multiple vehicles form a team for travel, a trusted communication system is constructed based on the communication method provided by the above embodiments of the present disclosure, and the communication efficiency and communication security between the vehicle team can be maintained even in a no-network or weak-network environment.
[0132] It can be understood that the above-mentioned various method embodiments mentioned in the present disclosure can be combined with each other to form combined embodiments without deviating from the principle logic. Limited by the length of the present disclosure, the present disclosure will not be described again. Those skilled in the art can understand that in the above-mentioned method of the specific embodiment, the specific execution order of each step should be determined according to its function and possible internal logic, and the execution order between steps is not limited to be realized according to the step number.
[0133] In addition, the present disclosure also provides a device, an electronic device, and a computer program product, which can be used to implement any one of the communication methods provided by the present disclosure. The corresponding technical solutions and descriptions are described in the method part and will not be described again.
[0134] Figure 5 A block diagram of a communication device provided by an embodiment of the present disclosure is provided, which is applied to a target vehicle. The communication device mainly includes:
[0135] A first determination module 501 is configured to determine a first target device set, wherein the first target device set includes at least one first target device;
[0136] A first exchange module 502 is configured to acquire a shared data set of each first target device, and generate to-be-broadcast data based on the shared data set of each first target device and / or a shared data set of the target vehicle;
[0137] A first communication module 503 is configured to broadcast a first broadcast message carrying the to-be-broadcast data to each first target device.
[0138] Figure 6 A block diagram of a communication device provided by an embodiment of the present disclosure is provided, which is applied to any first target device. The communication device mainly includes:
[0139] A second determination module 601 is configured to determine a second target device set, wherein the second target device set includes at least one second target device;
[0140] A second exchange module 602 is configured to acquire a shared data set of each second target device, and generate to-be-broadcast data based on the shared data set of each second target device and / or a shared data set of the first target device;
[0141] The second communication module 603 is configured to broadcast a second broadcast message carrying the to-be-broadcast data to each of the second target devices.
[0142] Figure 7 A block diagram of an electronic device is provided for the embodiments of the present disclosure.
[0143] The embodiments of the present disclosure provide an electronic device, which comprises at least one processor 701, at least one memory 702, and one or more I / O interfaces 703 connected between the processor 701 and the memory 702; wherein the memory 702 stores one or more computer programs executable by the at least one processor 701, and the one or more computer programs are executed by the at least one processor 701 to enable the at least one processor 701 to perform the communication method described above.
[0144] Each of the modules in the electronic device described above can be realized by software, hardware, and a combination thereof in whole or in part. Each of the modules described above can be embedded in or independent of the processor in the computer device in hardware form, or stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to each of the modules.
[0145] The embodiments of the present disclosure further provide a computer program product comprising a computer program, which, when executed in a processor, implements the communication method described above.
[0146] The computer program can be stored in a readable storage medium or cloud of the computer device; and the processor of the computer device reads the computer program from the readable storage medium or the cloud.
[0147] The computer program product described above can be specifically implemented by hardware, software, or a combination thereof. In an optional embodiment, the computer program product is specifically embodied as a computer storage medium, and in another optional embodiment, the computer program product is specifically embodied as a software product, such as a software development kit (SDK) and the like.
[0148] Those of ordinary skill in the art will realize and understand that all or some of the steps in the methods disclosed above and the functional modules / units in the systems and devices can be implemented as software, firmware, hardware, and appropriate combinations thereof. In hardware implementation, the division between the functional modules / units referred to in the above description does not necessarily correspond to the division of physical components; for example, one physical component can have multiple functions, or one function or step can be performed by several physical components in cooperation. Some or all of the physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software can be distributed on computer readable storage media, which can include computer storage media (or non-transitory media) and communication media (or transitory media).
[0149] As is well known to those of ordinary skill in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable program instructions, data structures, program modules or other data. Computer storage media include, but are not limited to, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM), static random access memory (SRAM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and that can be accessed by a computer. Further, it should be understood by those of ordinary skill in the art that communication media typically embodies computer readable program instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
[0150] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.
[0151] Computer readable program instructions for carrying out operations of the present disclosure can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or any combination of one or more of the above in any combination of one or more programming languages including an object oriented programming language such as Smalltalk, C++ or the like and conventional procedural programming languages such as the "C" programming language or similar programming languages. The computer readable program instructions can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.
[0152] The computer program product described herein can be embodied in a specific manner by hardware, software, or a combination thereof. In an optional embodiment, the computer program product is embodied as a computer storage medium. In another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (SDK), and the like.
[0153] The various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer readable program instructions.
[0154] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0155] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0156] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0157] The above description is merely a preferred embodiment of this disclosure and is not intended to limit this disclosure. Any modifications or equivalent substitutions made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A communication method, characterized in that, Applied to a target vehicle, the method includes: Determine a first target device set, the first target device set including at least one first target device; Obtain the shared data set of each of the first target devices, and generate broadcast data based on the shared data set of each of the first target devices and / or the shared data set of the target vehicle; The broadcast carries the first broadcast message containing the data to be broadcast.
2. The method according to claim 1, characterized in that, Based on the shared data set of each of the first target devices and the shared data set of the target vehicles, data to be broadcast is generated, including: For each pair of the first target device and the target vehicle, a difference data set is obtained by comparing the differences between the two shared data sets corresponding to each pair. Based on the aforementioned set of differential data, data to be broadcast is generated.
3. The method according to claim 2, characterized in that, The comparison of the differences between the two shared data sets corresponding to each combination to obtain the difference data set includes: For each combination, the differences between the two shared data sets corresponding to the combination are compared to obtain the difference data of the combination; Integrate the difference data of each combination to obtain a difference data set; the data in the difference data set is not duplicated.
4. The method according to claim 1, characterized in that, The step of obtaining the shared data set for each of the first target devices includes: A corresponding shared data set is established for each of the first target devices, and the shared data set is initially an empty set. Each time broadcast data is received from the first target device, the broadcast data from the first target device is saved to the shared data set of the first target device.
5. The method according to claim 4, characterized in that, The step of saving the broadcast data from the first target device to the shared data set of the first target device each time broadcast data is received includes: Each time a second broadcast message is received, the identity identifier of the source device of the second broadcast message is obtained; Based on the security verification parameters corresponding to the identity identifier of each first target device, obtain the security verification parameters of the first target device that match the identity identifier of the source device; Based on the security verification parameters of the matched first target device, the second broadcast message is parsed to obtain the broadcast data from the matched first target device, and the broadcast data from the matched first target device is saved to the corresponding shared data set.
6. The method according to claim 1, characterized in that, The first broadcast message carrying the data to be broadcast includes: The data to be broadcast is encrypted based on the security verification parameters of the target vehicle and the decentralized communication protocol, and a first broadcast message is generated and broadcast.
7. The method according to claim 1, characterized in that, The step of generating broadcast data based on the shared data set of each of the first target devices and / or the shared data set of the target vehicles includes: Each of the first target devices’ shared data sets and any data from the target vehicle’s shared data set shall be used as the data to be broadcast. or, Extract any unbroadcast data from the shared data set of the target vehicles to generate data to be broadcast; or, Extract the data first received by the target vehicle within the most recent preset time period from the shared data set of each of the first target devices, and generate the data to be broadcast; or, New shared data is generated based on user input, the new shared data is saved to the shared data set of the target vehicle, and data to be broadcast is generated based on the new shared data.
8. The method according to claim 3, characterized in that, The method further includes: When obtaining the combined difference data, objects lacking the difference data are marked, and the difference data and objects lacking the difference data are stored in the difference data set. Data to be broadcast is generated based on the difference data set; the objects include a first target device and the target vehicle. The first broadcast message carrying the data to be broadcast includes: Based on the difference data corresponding to the data to be broadcast, and the object identifier that lacks the difference data, a first broadcast message carrying the data to be broadcast is generated and broadcast to the object that lacks the difference data.
9. A communication method, characterized in that, Applied to a first target device, the method includes: Determine a second set of target devices, the second set of target devices including at least one second target device; Obtain the shared data set of each of the second target devices, and generate broadcast data based on the shared data set of each of the second target devices and / or the shared data set of the first target device; A second broadcast message carrying the data to be broadcast is broadcast to each of the second target devices.
10. A communication system, characterized in that, include: Target vehicle, used to determine a first set of target devices, the first set of target devices including at least one first target device; Obtain the shared data set of each of the first target devices, and generate data to be broadcast based on the shared data set of each of the first target devices and / or the shared data set of the target vehicle; broadcast a first broadcast message carrying the data to be broadcast to each of the first target devices; Any of the first target devices is configured to determine a second set of target devices, the second set of target devices including at least one second target device; acquire a shared data set for each of the second target devices; generate data to be broadcast based on the shared data set for each of the second target devices and / or the shared data set of the first target device; and broadcast a second broadcast message carrying the data to be broadcast to each of the second target devices.
11. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores at least one computer program that can be executed by the at least one processor, the at least one computer program being executed by the at least one processor to enable the at least one processor to perform the communication method as described in any one of claims 1-8 or the communication method as described in claim 9.
12. A computer program product, characterized in that, The computer program product includes a computer program that, when run in a processor, implements the communication method of any one of claims 1-8 or the communication method of claim 9.