Data communication monitoring methods, apparatus and system
By setting the reserved bit flag of the data packet in low-power Bluetooth data communication, the data monitor can accurately distinguish the sender of the data packet, solving the problem of poor monitoring stability of data communication, and achieving higher stability and simple implementation methods.
Patent Information
- Application Number
- PCT/CN2024/117155
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-13
- Filing Date
- 2024-09-05
- Publication Date
- 2025-05-22
AI Technical Summary
In data communication such as Bluetooth low power consumption, the data monitor cannot distinguish the received data packets, resulting in poor stability of data communication monitoring.
By setting at least one of the reserved bits of the first packet in each connection event as the first flag, the data listener determines the sender of the packet based on the flag, thereby distinguishing the received data packet.
This method effectively reduces the listening errors of data communication, improves the stability of data communication listening, and does not need to send additional data packets, making the implementation easier.
Smart Images

Figure CN2024117155_22052025_PF_FP_ABST
Abstract
Description
Data communication monitoring method, device and system
[0001] This application claims priority to the invention application with an application date of November 13, 2023, application number "202311514900.3", and patent name "A data communication monitoring method, device and system", and all its contents are incorporated herein by reference. Technical Field
[0002] The embodiments of the present application relate to the field of electronic technology, and in particular to a data communication monitoring method, device, and system. Background Art
[0003] In data communications such as Bluetooth Low Energy (BLE), data communication is typically achieved by sending data packets between a first and second data transmitter. A data monitoring terminal then monitors the data communication between the first and second data transmitters by receiving the data packets. However, because the data monitoring terminal cannot distinguish between received data packets, the stability of data communication monitoring is poor.
[0004] Therefore, how to improve the stability of data communication monitoring has become a technical problem that needs to be solved urgently.
[0005] Summary of the Invention
[0006] In view of this, one of the technical problems solved by the embodiments of the present application is to provide a data communication monitoring method, device, and system, which improve the stability of data communication monitoring.
[0007] In the first aspect, an embodiment of the present application provides a data communication monitoring method, which is applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring. The method includes: receiving a first data packet in a current connection event; determining the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is a first flag, wherein the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag.
[0008] In the second aspect, an embodiment of the present application provides a data communication monitoring method, which is applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring. The method includes: in the current connection event, receiving at least one data packet; determining a data packet in which at least one of the reserved bits is a first flag as a data packet sent by the first data sending end, wherein the first data sending end sets at least one of the reserved bits of each first data packet to the first flag.
[0009] In a third aspect, an embodiment of the present application provides a data communication monitoring device, which is applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring. The device includes: a first receiving module, which is used to receive the first data packet in the current connection event; and a first determination module, which is used to determine the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is a first flag, wherein the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag.
[0010] In a fourth aspect, an embodiment of the present application provides a data communication monitoring device, which is applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring. The device includes: a second receiving module, for receiving at least one data packet in the current connection event; a second determination module, for determining a data packet in which at least one of the reserved bits is a first flag as a data packet sent by the first data sending end, wherein the first data sending end sets at least one of the reserved bits of each first data packet to the first flag.
[0011] In a fifth aspect, an embodiment of the present application provides a data communication monitoring system, comprising a first data sending end, a second data sending end, and a data monitoring end, wherein the first data sending end sends a first data packet to the second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring, and the data monitoring end executes the method described in the first aspect or the second aspect.
[0012] In an embodiment of the present application, the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag, and the data listening end determines the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is the first flag. Alternatively, the first data sending end sets at least one of the reserved bits of each first data packet in each connection event to the first flag, and the data listening end determines the data packet with at least one of the reserved bits as the first flag as the data packet sent by the first data sending end. Therefore, the embodiment of the present application can utilize the reserved bits of the first data packet to distinguish the sender of the received data packet, reduce the monitoring errors of the data communication, and improve the stability of the data communication monitoring. In addition, the embodiment of the present application does not need to send additional data packets, and the implementation method is simpler. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] Hereinafter, some specific embodiments of the present application will be described in detail in an exemplary and non-limiting manner with reference to the accompanying drawings. The same reference numerals in the accompanying drawings indicate the same or similar components or parts. It should be understood by those skilled in the art that these drawings are not necessarily drawn to scale. In the accompanying drawings:
[0014] FIG1 is a schematic diagram of sending and receiving data packets in data communication;
[0015] FIG2 is a flow chart of a data communication monitoring method according to an embodiment of the present application;
[0016] FIG3 is a schematic diagram of a packet header of a data packet according to an embodiment of the present application;
[0017] FIG4 is another schematic diagram of sending and receiving data packets in data communication;
[0018] FIG5 is a schematic diagram of another data packet sending and receiving in data communication;
[0019] FIG6 is a flow chart of another data communication monitoring method according to an embodiment of the present application;
[0020] FIG7 is a schematic structural diagram of a data communication monitoring device according to an embodiment of the present application;
[0021] FIG8 is a schematic structural diagram of another data communication monitoring device according to an embodiment of the present application;
[0022] FIG9 is a schematic structural diagram of a data communication monitoring system according to an embodiment of the present application. DETAILED DESCRIPTION
[0023] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present invention, the technical solutions in the embodiments of the present invention will be clearly and detailedly described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of them. All other embodiments obtained by those skilled in the art based on the embodiments in the embodiments of the present invention should fall within the scope of protection of the embodiments of the present invention.
[0024] In the following detailed description, reference is made to the accompanying drawings, which form a part of the detailed description and illustrate exemplary embodiments. In addition, it is understood that other embodiments may be utilized and structural and / or logical changes may be made without departing from the scope of the claimed subject matter. It should also be noted that directions and references (e.g., up, down, top, bottom, etc.) may be used merely to facilitate the description of features in the drawings. Therefore, the following detailed description is not to be construed in a limiting sense, and the scope of the claimed subject matter is limited solely by the appended claims and their equivalents.
[0025] In the following description, numerous details are set forth. However, it will be apparent to those skilled in the art that the embodiments herein may be practiced without these specific details. In some cases, well-known methods and apparatus are shown in block diagram form rather than in detail to avoid blurring the embodiments herein. References throughout this specification to "an embodiment" or "one embodiment" or "some embodiments" mean that the specific features, structures, functions, or characteristics described in conjunction with the embodiment are included in at least one embodiment herein. Therefore, the phrases "in an embodiment" or "in one embodiment" or "some embodiments" appearing throughout this specification do not necessarily refer to the same embodiment. In addition, in one or more embodiments, specific features, structures, functions, or characteristics may be combined in any suitable manner. For example, the first embodiment may be combined with the second embodiment in any case where the specific features, structures, functions, or characteristics associated with the two embodiments are not mutually exclusive.
[0026] As used in the description and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0027] The terms "coupled" and "connected," along with their derivatives, may be used herein to describe functional or structural relationships between components. It should be understood that these terms are not intended to be synonymous with each other. On the contrary, in certain embodiments, "connected" may be used to indicate that two or more elements are in direct physical, optical, or electrical contact with each other. "Coupled" may be used to indicate that two or more elements are in direct or indirect (with other intermediate elements between them) physical or electrical contact with each other, and / or that two or more elements collaborate or interact with each other (e.g., as in a cause-and-effect relationship).
[0028] As used herein, the terms "above," "below," "between," and "on" refer to the relative position of one component or material with respect to other components or materials where such physical relationship is significant. For example, in the context of materials, a material or materials positioned above or below another material may be in direct contact or may have one or more intervening materials. Moreover, a material positioned between two materials or materials may be in direct contact with both layers or may have one or more intervening layers. In contrast, a first material or materials "above" a second material or materials is in direct contact with the second material or materials. Similar distinctions apply in the context of component assembly.
[0029] As used throughout this description and in the claims, a list of items linked by the term "at least one of" or "one or more of" may mean any combination of the listed items. For example, the phrase "at least one of A, B, or C" may mean A; B; C; A and B; A and C; B and C; or A, B, and C.
[0030] The term "circuit" or "module" may refer to one or more passive and / or active components that are arranged to cooperate with each other to provide a desired functionality. The term "signal" may refer to at least one current signal, voltage signal, or magnetic signal. The terms "substantially," "close to," "approximately," "close to," and "approximately" generally mean within + / - 10% of a target value.
[0031] The specific implementation of the embodiment of the present invention is further described below with reference to the accompanying drawings of the embodiment of the present invention.
[0032] In data communications such as Bluetooth Low Energy (BLE), data communication is usually performed by sending data packets between a first data transmitter and a second data transmitter. A data monitoring terminal monitors the data communication between the first data transmitter and the second data transmitter. By monitoring, the first data packet and the second data packet sent by the first data transmitter and the second data transmitter, respectively, can be received, and effective monitoring information, such as a received signal strength indication (RSSI), can be obtained.
[0033] Taking Bluetooth low energy digital communication as an example, the first data transmitter and the second data transmitter are the central and peripheral roles of the data communication, respectively. The data monitoring end monitors the data packets sent by the central and peripheral roles of the communication.
[0034] The following specifically illustrates the implementation of data communication monitoring through a car digital key system.
[0035] As digital car key systems become increasingly popular in new energy vehicles, they have become a key application scenario for data communication monitoring. In a typical application scenario, a digital car key system installs three or more anchor nodes around the vehicle body as data monitoring terminals, while a central node is installed in the central control position as the first data transmitter. A mobile terminal (e.g., a mobile phone, key, or other wearable device) serves as the second data transmitter. The mobile terminal (second data transmitter) and the central node (first data transmitter) establish a connection and exchange data packets for security authentication. The anchor node (data monitoring terminal) monitors the data packets sent by the mobile terminal (second data transmitter) and the central node (first data transmitter), obtains the signal strength indication of the signal transmitted from the mobile terminal (second data transmitter) to the anchor node (data monitoring terminal), and uses this as the basis for ranging. Signal strength indication ranging for digital car key systems uses signal strength indication ranging based on Bluetooth Low Energy (BLE).
[0036] The anchor node (data listening end) can only receive data packets from the mobile terminal (second data sending end) and the central node (first data sending end), but cannot distinguish whether the data packet is sent by the central node (first data sending end) or the mobile terminal (second data sending end). This can easily cause the anchor node (data listening end) to monitor data communication errors. For example, the anchor node (data listening end) may mistake the first data packet sent by the central node (first data sending end) for the second data packet sent by the mobile terminal (second data sending end). If the anchor node (data listening end) performs ranging based on the first data packet sent by the central node (first data sending end), the ranging will be inaccurate and the monitoring link will be lost.
[0037] Referring to Figure 1 , if the central node (first data transmitter) and the mobile terminal (second data transmitter) send data packets with a large connection interval, or if they are out of sync for a long time, the anchor node (data listener) will need to open a larger receive (Rx) time window to receive the first data packet in the current connection event. Furthermore, the anchor node (data listener) cannot distinguish whether the data packet is sent by the central node (first data transmitter) or the mobile terminal (second data transmitter) based on the packet format. The anchor node (data listener) may mistake the second data packet P2 for the first data packet P1, causing errors in the anchor node's monitoring timing. The signal strength indication obtained by the anchor node (data listener) may also be incorrect, leading to inaccurate ranging and even loss of the monitoring link.
[0038] For the anchor node (data listening end), the data packets sent by the central node (first data sending end) and the mobile terminal (second data sending end) cannot be distinguished from each other based on the packet header or payload. In many cases, the central node (first data sending end) and the mobile terminal (second data sending end) both send BLE empty packets, with only a few fields in the payload header differing. However, these fields cannot determine whether the received data packet is from the central node (first data sending end) or the mobile terminal (second data sending end), nor which data packet it is. Therefore, under actual conditions, the anchor node (data listening end) is prone to making misjudgments. This misjudgment causes the anchor node (data listening end) to be unable to obtain the signal strength indication of the signal transmitted by the mobile terminal (second data sending end) to the anchor node (data listening end), resulting in inaccurate ranging.
[0039] In view of the above situation, in an embodiment of the present application, the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event as a first flag, and the data listening end determines the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is the first flag. Alternatively, the first data sending end sets at least one of the reserved bits of each first data packet in each connection event as a first flag, and the data listening end determines the data packet with at least one of the reserved bits as the first flag as the data packet sent by the first data sending end. Therefore, the embodiment of the present application can utilize the reserved bits of the first data packet to distinguish the sender of the received data packet, reduce the monitoring errors of the data communication, and improve the stability of the data communication monitoring. In addition, the embodiment of the present application does not need to send additional data packets, and the implementation method is simpler.
[0040] The present invention provides a data communication monitoring method, which is applied to a data monitoring terminal. In the present invention, a second data transmitting terminal and a first data transmitting terminal mutually transmit data packets to implement data communication. The data monitoring terminal receives the data packets to implement data communication monitoring.
[0041] In the embodiment of the present application, the first data sending end and the second data sending end realize data communication (here, low-power Bluetooth digital communication is used as an example for explanation). The first data sending end can serve as a data communication central role or a data communication peripheral role in the low-power Bluetooth data communication, and correspondingly, the second data sending end can serve as a data communication peripheral role or a data communication central role in the low-power Bluetooth data communication.
[0042] For example, in the application scenario of a car digital key system, the first data sending end can be the central node of the vehicle's central control, the second data sending end can be a mobile terminal, and the data monitoring end can be the anchor nodes installed around the vehicle body.
[0043] For another example, in a smart home application scenario, the first data sending end may be the central control of an appliance in the smart home, the second data sending end may be a mobile terminal, and the data monitoring end may be an anchor node installed on the appliance.
[0044] In the application scenario of the automobile digital key system, the central node (first data transmitter) can serve as the data communication central role or data communication peripheral role in low-power Bluetooth data communication; the mobile terminal (second data transmitter) can also serve as the data communication central role or data communication peripheral role in low-power Bluetooth data communication. The central node (first data transmitter) and the mobile terminal (second data transmitter) send low-power Bluetooth data packets to each other to implement low-power Bluetooth data communication. The anchor node (data monitoring terminal) monitors the data packets sent by the mobile terminal (second data transmitter) and the central node (first data transmitter), obtains the signal strength indication of the signal transmitted by the mobile terminal (second data transmitter) to the anchor node (data monitoring terminal), and uses this as the basis for ranging judgment.
[0045] For example, when the mobile terminal (second data sending end) acts as a data communication peripheral role in low-power Bluetooth data communication, the mobile terminal (second data sending end) consumes less power, and an electronic car key can be used as the mobile terminal (second data sending end).
[0046] For example, when the mobile terminal (second data sending end) serves as the central role of data communication in low-power Bluetooth data communication, the mobile terminal (second data sending end) consumes more power, and a mobile phone can be used as the mobile terminal (second data sending end).
[0047] In the embodiment of the present application, the first data sending end is selected as the data communication central role or the data communication peripheral role as needed; correspondingly, the second data sending end is selected as the data communication peripheral role or the data communication central role.
[0048] Referring to FIG2 , the method according to an embodiment of the present application is applied to a data monitoring terminal, and the method includes:
[0049] Step S1: In the current connection event, receive the first data packet.
[0050] A connection event is a process in which a first data transmitting end and a second data transmitting end send data packets to each other in a data communication. In the current connection event, the first data transmitting end sends at least one first data packet, and the second data transmitting end sends at least one second data packet.
[0051] Specifically, in the current Bluetooth low energy data communication connection event, the data communication central role first sends the first data packet. That is, after the Bluetooth low energy data communication is established, the data communication central role sends the first data packet. If the first data sending end is the data communication central role, the first data packet is the first data packet sent by the first data sending end. If the first data sending end is the data communication peripheral role and the second data sending end is the data communication central role, the first data packet is the second data packet sent by the second data sending end. In other words, if the first data sending end is the data communication central role, the first data packet is the first first data packet sent by the first data sending end in the current connection event; if the second data sending end is the data communication central role, the first data packet is the first second data packet sent by the second data sending end in the current connection event.
[0052] In the current connection event, the first data packet received by the data listening end may be the first data packet sent by the first data sending end, or may be the second data packet sent by the second data sending end.
[0053] Step S2: Determine the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is a first flag.
[0054] The first data sending end sets at least one of the reserved bits of the first first data packet in each connection event as a first flag.
[0055] Specifically, referring to FIG3 , the reserved bit (RFU, Reserved for Future Use) is a 2-bit data bit in the header of a data packet, and has no defined use in the existing standard data structure.
[0056] In an embodiment of the present application, the first data sending end sets at least one of the reserved bits of the first first data packet sent in each connection event as a first flag, and the data listening end distinguishes the sender of the first data packet by whether at least one of the reserved bits of the first data packet received is set as the first flag.
[0057] In the embodiment of the present application, both reserved bits may be set as the first flag, or only one of them may be set as the first flag. For example, the first flag is 1. In the embodiment of the present application, only the first data sending end and the data listening end need to agree that the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event as the first flag.
[0058] Specifically, since the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag, if at least one of the reserved bits of the received first data packet is the first flag, it is determined that the sender of the first data packet in the current connection event is the first data sending end. If none of the reserved bits of the received first data packet is the first flag, it is determined that the sender of the first data packet in the current connection event is not the first data sending end.
[0059] Therefore, the embodiment of the present application can utilize the reserved bit of the first data packet to distinguish the sender of the received data packet, thereby reducing monitoring errors in data communication and improving the stability of data communication monitoring.
[0060] In some specific implementations of the embodiments of the present application, step S2 includes:
[0061] Step S21: If the first data sending end is the data communication central role, and at least one of the reserved bits of the first data packet received in the current connection event is a first flag, determine that the sender of the first data packet in the current connection event is the data communication central role.
[0062] If at least one of the reserved bits of the first received data packet is a first flag, then the sender of the first data packet in the current connection event is determined to be the first data sending end. Since the first data sending end is a data communication central role, the sender of the first data packet in the current connection event is determined to be the data communication central role.
[0063] In some specific implementations of the embodiments of the present application, step S2 further includes:
[0064] Step S22: Update the synchronization time between the data monitoring terminal and the first data sending terminal.
[0065] Step S23: obtaining a received signal strength indicator between the data listening end and the second data sending end according to the first second data packet sent by the second data sending end after the transmission interframe interval after the first data packet, thereby achieving ranging between the data listening end and the second data sending end.
[0066] Since the first data packet in the data communication is sent by the data communication central role, it means that the data communication packet is received correctly, and the synchronization time between the data monitoring end and the first data sending end is updated.
[0067] After a transmission interframe spacing (TIFS) after the first data packet, the first data packet received by the data listening end is the first second data packet sent by the second data sending end, and the received signal strength indication between the data listening end and the second data sending end can be obtained based on the second data packet.
[0068] Specifically, the present application may also perform other operations after synchronization between the data listening end and the first data sending end is achieved. The embodiments of the present application are not limited to achieving ranging between the data listening end and the second data sending end.
[0069] In some specific implementations of the embodiments of the present application, step S2 includes:
[0070] Step S24: If the first data sending end is the data communication central role, and the reserved bits of the first data packet received in the current connection event are all second flags, it is determined that the sender of the first data packet received in the current connection event is not the data communication central role.
[0071] If the reserved bit of the first received data packet is set to the second flag, it is determined that the first data packet received by the data listening terminal in the current connection event is not the first data packet in the current connection event. For example, the second flag is 0. Since the first data packet in the current connection event is the first data packet sent by the data communication central role, that is, the first data packet sent by the first data transmitter, and at least one of its reserved bits is set to the first flag, the first data packet received by the data listening terminal in the current connection event is not the first data packet sent by the data communication central role, indicating a data communication packet reception error.
[0072] In some specific implementations of the embodiments of the present application, step S2 includes:
[0073] Step S25: discard the first received data packet, end the current connection event, and expand the size of the opened receiving time window in the next connection event.
[0074] Since the first data packet received in the current connection event is not the first data packet in the current connection event, it indicates a data communication packet reception error. The synchronization time between the data listener and the data communication central role will not be updated. The first received data packet is discarded, the current connection event ends, and the receive time window opened in the next connection event is expanded to allow for the receipt of data packets in the next connection event.
[0075] In some specific implementations of the embodiments of the present application, the method further includes:
[0076] Step S3: If no data packet is received in the current connection event, the current connection event is terminated, and the size of the receiving time window opened in the next connection event is expanded so as to receive the data packet in the next connection event.
[0077] In some specific implementations of the embodiments of the present application, step S2 includes:
[0078] Step S26: If the first data sending end is a data communication peripheral role, and at least one of the reserved bits of the first data packet received in the current connection event is a first flag, determine that the sender of the first data packet in the current connection event is a data communication peripheral role.
[0079] If at least one of the reserved bits of the first received data packet is a first flag, it is determined that the sender of the first data packet in the current connection event is the first data sending end. Since the first data sending end is a data communication peripheral role, determining that the sender of the first data packet in the current connection event is the data communication peripheral role indicates a data communication packet reception error.
[0080] In some specific implementations of the embodiments of the present application, if it is determined that the sender of the first data packet in the current connection event is a data communication peripheral role, step S24 is executed.
[0081] Since the first data packet in the data communication was sent by the Data Communication Peripheral Role, this indicates a data communication packet reception error. The synchronization time between the Data Listener and the Data Communication Central Role will not be updated. The first data packet is discarded, the current connection event ends, and the receive window size is expanded in the next connection event to allow for data packet reception.
[0082] In some specific implementations of the embodiments of the present application, step S2 includes:
[0083] Step S27: If the first data sending end is a data communication peripheral role, and the reserved bit of the first data packet received in the current connection event is the second flag, determine whether the sender of the first data packet in the current connection event is a data communication central role based on subsequently received data packets.
[0084] If the reserved bit of the first received data packet is the second flag, then it is determined based on subsequently received data packets whether the sender of the first data packet in the current connection event is the first data sender. For example, the second flag is 0.
[0085] In some specific implementations of the embodiments of the present application, step S26 further includes:
[0086] The synchronization time of the first data packet is recorded, and a received signal strength indicator between the data monitoring terminal and the second data sending terminal is obtained according to the first data packet.
[0087] Since it is not possible to determine whether the first data packet was sent by the second data sending end, only the synchronization time of the first data packet is recorded, and the synchronization time between the data listening end and the data communication central role is not updated. In the embodiment of the present application, the received signal strength indication between the data listening end and the second data sending end can be obtained based on the first data packet, but subsequent steps are still required to further determine whether the received signal strength indication between the data listening end and the second data sending end can achieve ranging between the data listening end and the second data sending end.
[0088] In some specific implementations of the embodiments of the present application, step S26 is specifically: if after the transmission inter-frame interval after the first data packet, at least one of the reserved bits of the second data packet received is a first flag, the data listening end determines that the sender of the first data packet in the current connection event is the data communication central role.
[0089] The embodiment of the present application further determines whether at least one of the reserved bits of the received second data packet is a first flag after the transmission inter-frame interval after the first data packet, that is, further determines whether the first data packet sent by the first data sending end as a data communication peripheral role is the second data packet in the current data communication.
[0090] The embodiment of the present application can more accurately determine whether the first data packet in the current connection event is sent by the second data sending end acting as the central role of data communication, and further determine whether the packet is received correctly.
[0091] In some specific implementations of the embodiments of the present application, the method further includes:
[0092] Step S28: Update the synchronization time between the data monitoring terminal and the data communication central role (the second data sending terminal).
[0093] S29: Implement ranging between the data listening end and the second data sending end according to the received signal strength indication between the data listening end and the second data sending end.
[0094] If it is determined that the first data packet in the current connection event is sent by the second data sending end as the data communication central role, it means that the data communication packet is received correctly, and then the synchronization time between the data listening end and the data communication central role is updated.
[0095] The distance between the data monitoring terminal and the second data transmitting terminal is measured according to the received signal strength indication between the data monitoring terminal and the second data transmitting terminal.
[0096] Specifically, the present application may also perform other operations after synchronization between the data listening end and the second data sending end is achieved. The embodiments of the present application are not limited to achieving ranging between the data listening end and the second data sending end.
[0097] In some specific implementations of the embodiments of the present application, the method further includes:
[0098] Step S210: If no data packet with at least one of the reserved bits set to the first flag is received after the inter-frame space following the first data packet, the received data packet is discarded, the current connection event is terminated, and the size of the receiving time window opened in the next connection event is expanded.
[0099] The embodiment of the present application further determines whether at least one of the reserved bits of the received second data packet is a first flag after the inter-frame interval following the first data packet, that is, further determines whether the first data packet sent by the first data transmitter, which acts as a peripheral role in data communication, is the second data packet in the current data communication. Therefore, if it can be further determined through step S28 that the first data packet in step S26 was not sent by the second data transmitter, which acts as a central role in data communication, it indicates that a data communication packet reception error occurred. The present application discards the received data packet, ends the current connection event, and expands the size of the open receiving time window in the next connection event, thereby avoiding synchronization processing in the event of a packet reception error.
[0100] In some specific implementations of the embodiments of the present application, if the first data sending end is a data communication peripheral role, the method may also execute step S3.
[0101] In the current connection event, if no data packet is received, the current connection event is ended, and the size of the opened receiving time window is expanded in the next connection event so as to receive the data packet in the next connection event.
[0102] Taking the application scenario of a car digital key system as an example, the following describes how to achieve ranging between the second data sending end and the data listening end based on the first second data packet sent by the second data sending end obtained by the data listening end, for the case where the first data sending end serves as the data communication central role (as shown in Figure 4) and the first data sending end serves as the data communication peripheral role (as shown in Figure 5).
[0103] In the application scenario of the automobile digital key system, the first data sending end is the central node of the vehicle's central control, the second data sending end is a mobile terminal, and the data listening end is an anchor node installed around the vehicle body. The first data sending end and the data listening end are wired or wirelessly connected. Specifically, the first data sending end and the data listening end are connected through a CAN bus, and the data listening end obtains the first data packet sent by the first data sending end as a data communication central role (as shown in Figure 4) or a data communication peripheral role (as shown in Figure 5) through the CAN bus. The data listening end obtains the second data packet sent by the second data sending end as a data communication peripheral role (as shown in Figure 4) or a data communication central role (as shown in Figure 5) through a wireless network.
[0104] Referring to FIG. 4 , when the central node (first data transmitter) plays the central role in data communication, the central node (first data transmitter) sets at least one of the reserved bits of the first data packet in each connection event to 1. The anchor node (data listener) receives the first data packet. If the first data packet received by the anchor node (data listener) is sent by the central node (first data transmitter), it indicates that the packet was received correctly; otherwise, it indicates that the packet was received incorrectly. The anchor node (data listener) determines whether the first data packet in the current connection event was sent by the central node (first data transmitter) based on whether at least one of the reserved bits of the first data packet is 1.
[0105] If at least one of the reserved bits of the first data packet received by the anchor node (data listening end) is 1, then the first data packet in the current connection event is sent by the central node (first data sending end), indicating that the packet is received correctly. The synchronization time between the anchor node (data listening end) and the central node (first data sending end) is updated. Based on the transmission inter-frame interval after the first data packet, the second data packet sent by the mobile terminal (second data sending end) is received to obtain the received signal strength indication between the anchor node (data listening end) and the mobile terminal (second data sending end), thereby achieving ranging between the anchor node (data listening end) and the mobile terminal (second data sending end).
[0106] If the reserved bits of the first data packet received by the anchor node (data listener) are all 0, then the first data packet received by the anchor node (data listener) is not the first data packet in the current connection event, indicating a packet reception error. The first received data packet is discarded, the current connection event ends, and the receive window size is increased in the next connection event. If no data packet is received in the current connection event, the current connection event ends, and the receive window size is increased in the next connection event.
[0107] Referring to FIG5 , when the central node (first data transmitting end) is a data communication peripheral role, the central node (first data transmitting end) sets at least one of the reserved bits of the first first data packet in each connection event to 1. The anchor node (data listening end) receives the first data packet. If the first data packet received by the anchor node (data listening end) is sent by the mobile terminal (second data transmitting end), it indicates that the packet reception is correct; otherwise, it indicates that the packet reception is incorrect. The anchor node (data listening end) determines whether the first data packet in the current connection event was sent by the central node (first data transmitting end) based on whether at least one of the reserved bits of the first data packet is 1.
[0108] If at least one of the reserved bits in the first data packet received by the anchor node (data listener) is 1, and the first data packet in the current connection event was sent by the central node (first data sender), a packet reception error occurs. The first data packet is discarded, the current connection event ends, and the receive window size is increased for the next connection event.
[0109] If the reserved bits of the first data packet received by the anchor node (data listening end) are all 0, then the first data packet in the current connection event may be the second data packet sent by the mobile terminal (second data sending end). The received first data packet (which may be the second data packet) can be used as the basis for synchronization and ranging, recording the synchronization time of the first data packet (which may be the second data packet) and obtaining the received signal strength indication between the data listening end and the second data sending end based on the first data packet (which may be the second data packet). The anchor node (data listening end) further receives the second data packet after the transmission inter-frame interval after the first data packet. If at least one of the reserved bits of the second data packet received by the anchor node (data listening end) is 1, it is determined that the sender of the second data packet in the current connection event is the central node (first data sending end). If the second data packet is the first first data packet sent by the central node (first data sending end), then the first data packet is the first second data packet sent by the mobile terminal (second data sending end), indicating that the packet is received correctly. According to the synchronization time of the first and second data packets recorded previously, the synchronization time of the anchor node (data listening end) and the mobile terminal (second data sending end) is updated, and the received signal strength indication between the anchor node (data listening end) and the mobile terminal (second data sending end) is obtained according to the first and second data packets sent by the mobile terminal (second data sending end) recorded previously, so as to realize the ranging between the anchor node (data listening end) and the mobile terminal (second data sending end); if the reserved bit of the second data packet received by the anchor node (data listening end) is not 1, then the second data packet in the current connection event is not sent by the central node (first data sending end), which also indicates a packet receiving error. The first data packet is discarded, the current connection event is ended, and the size of the receiving time window opened in the next connection event is expanded. In the current connection event, if no data packet is received, the current connection event is ended, and the size of the receiving time window opened in the next connection event is expanded.
[0110] In the embodiments of the present application, the receive window size in each connection event is normal, and the data listening end can fully determine the order in which packets are received. However, if a packet in which at least one of the reserved bits is set to the first flag is not received in the current connection event, the order in which subsequent packets are received cannot be determined. In scenarios where ranging is implemented based on signal strength indication, there is a possibility that even if a packet is received, the order in which subsequent packets are received cannot be determined because a packet in which at least one of the reserved bits is set to the first flag is not received, and thus the correct signal strength indication cannot be obtained.
[0111] In order to solve the above technical problems, the present invention also provides a data communication monitoring method, which is applied to a data monitoring terminal. In the present invention, the second data sending terminal and the first data sending terminal send data packets to each other to achieve data communication, and the data monitoring terminal receives the data packets to achieve data communication monitoring.
[0112] In the embodiment of the present application, the first data sending end is selected as the data communication central role or the data communication peripheral role as needed; correspondingly, the second data sending end is selected as the data communication peripheral role or the data communication central role.
[0113] Referring to FIG6 , the method according to the embodiment of the present application includes:
[0114] Step T1: In the current connection event, receive at least one data packet.
[0115] A connection event is a process in which a first data transmitting end and a second data transmitting end send data packets to each other in a data communication. In the current connection event, the first data transmitting end sends at least one first data packet, and the second data transmitting end sends at least one second data packet.
[0116] Step T2: Determine a data packet in which at least one of the reserved bits is a first flag as a data packet sent by the first data sending end.
[0117] The first data sending end sets at least one of the reserved bits of each first data packet as a first flag.
[0118] Specifically, referring to FIG3 , the reserved bit (RFU, Reserved for Future Use) is a 2-bit data bit in the header of a data packet, and has no defined use in the existing standard data structure.
[0119] In an embodiment of the present application, the first data sending end sets at least one of the reserved bits of each first data packet sent in a connection event as a first flag, and the data listening end distinguishes the sender of the data packet by whether at least one of the reserved bits of the received data packet is set as the first flag.
[0120] In the embodiment of the present application, both reserved bits may be set to the first flag, or only one of them may be set to the first flag. For example, the first flag is 1. In the embodiment of the present application, only the first data sending end and the data listening end need to agree that the first data sending end sets at least one of the reserved bits of each first data packet in the connection event to the first flag.
[0121] Specifically, since the first data sending end sets at least one of the reserved bits of each first data packet in the connection event to the first flag, if at least one of the reserved bits of the received data packet is the first flag, it is determined that the sender of the first data packet in the current connection event is the first data sending end. If none of the reserved bits of the received first data packet are the first flag, it is determined that the sender of the first data packet in the current connection event is not the first data sending end.
[0122] Therefore, the embodiment of the present application can utilize the reserved bit of the first data packet to distinguish the sender of the received data packet, thereby reducing monitoring errors in data communication and improving the stability of data communication monitoring.
[0123] In some specific implementations of the embodiments of the present application, the method further includes:
[0124] Step T3: Determine the data packet whose reserved bits are all the second flags as the data packet sent by the second data sending end.
[0125] If the reserved bits of the received data packet are all the second flags, it is determined that the sender of the data packet is the second data sending end. For example, the second flag is 0.
[0126] In some specific implementations of the embodiments of the present application, the method further includes:
[0127] Step T4: If the first data packet received in the current connection event is not a data packet sent by the data communication central role, the size of the receiving time window opened in the next connection event is expanded.
[0128] Since the reserved bit of the first data packet of the first data sending end is set to the first flag, the data listening end can determine whether the sender of the received data packet is the first data sending end or the second data sending end, but the data listening end cannot determine the order of the data packets. If the first data sending end is a central role in data communication, the first data packet is not the first data packet sent by the first data sending end. In order to ensure that the correct data packet is received, the data listening end needs to continuously expand the size of the receiving window opened in the next connection event. If the first data sending end is a peripheral role in data communication, the first data packet is the first data packet sent by the first data sending end. In order to ensure that the correct data packet is received, the data listening end needs to continuously expand the size of the receiving window opened in the next connection event.
[0129] In some specific implementations of the embodiments of the present application, the size of the expanded receiving time window is determined based on the clock accuracy of the first data sending end and the second data sending end, the interval between the last synchronization time and the start time of the current connection event, and a preset fixed expansion window value.
[0130] The embodiment of the present application determines the size of the expanded receiving time window based on the clock accuracy of the first data transmitting end and the second data transmitting end, the interval between the last synchronization time and the start time of the current connection event, and a preset fixed window expansion value, so that the data listening end can receive data packets by expanding the receiving time window. In this way, the data listening end treats any data packet received as the first data packet in the current connection event. Even if a packet reception error occurs, the packet reception error can be corrected in the next connection event by using the expanded receiving time window, thereby ensuring that the data listening link is not disconnected.
[0131] In some specific implementations of the embodiments of the present application, the method further includes:
[0132] Step T5: obtaining a received signal strength indicator between the data listening end and the second data sending end according to the data packet with the second flag in the reserved bit, thereby achieving ranging between the data listening end and the second data sending end.
[0133] The data packet with the second flag in the reserved bit is the second data packet sent by the second data sending end. The present application can obtain the received signal strength indication between the data listening end and the second data sending end through the second data packet, thereby realizing ranging between the data listening end and the second data sending end.
[0134] Although the embodiment of the present application cannot determine the order of the received data packets, it can determine the sender of the received data packets. The embodiment of the present application can solve the possible packet reception errors by expanding the receiving time window. The embodiment of the present application can obtain sufficient received signal strength indications in the scenario of multiple packet sending or receiving.
[0135] Corresponding to the above method, referring to FIG7 , an embodiment of the present application further provides a data communication monitoring device, which is applied to a data monitoring end. A first data sending end and a second data sending end send data packets to each other to implement data communication, and the data monitoring end receives the data packets to implement data communication monitoring. The device includes:
[0136] The first receiving module 701 is configured to receive a first data packet in a current connection event.
[0137] The first determination module 702 is used to determine the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is a first flag, wherein the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag.
[0138] Corresponding to the above method, referring to FIG8 , an embodiment of the present application further provides a data communication monitoring device, which is applied to a data monitoring end. A first data sending end and a second data sending end send data packets to each other to implement data communication, and the data monitoring end receives the data packets to implement data communication monitoring. The device includes:
[0139] The second receiving module 801 is configured to receive at least one data packet in a current connection event;
[0140] The second determining module 802 is configured to determine a data packet whose at least one reserved bit is a first flag as a data packet sent by the first data sending end, wherein the first data sending end sets at least one reserved bit of each first data packet to the first flag.
[0141] Corresponding to the above method, see Figure 9, an embodiment of the present application also provides a data communication monitoring system, including a first data sending end, a second data sending end and a data monitoring end. The first data sending end and the second data sending end send data packets to each other to realize data communication, and the data monitoring end receives data packets to realize data communication monitoring. The data monitoring end executes any of the above embodiment methods.
[0142] Thus far, specific embodiments of the present subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve the desired results. Furthermore, the processes depicted in the accompanying drawings do not necessarily require the specific order shown or sequential order to achieve the desired results. In certain embodiments, multitasking and parallel processing may be advantageous.
[0143] In the 1990s, technological improvements could be clearly distinguished as either hardware improvements (for example, improvements to circuit structures like diodes, transistors, and switches) or software improvements (improvements to process flows). However, with the advancement of technology, many process flow improvements today can now be considered direct improvements to hardware circuit structures. Designers almost always create the corresponding hardware circuit structure by programming the improved process flow into the hardware circuit. Therefore, it cannot be said that a process flow improvement cannot be implemented using hardware modules. For example, a programmable logic device (PLD), such as a field programmable gate array (FPGA), is an integrated circuit whose logical function is determined by user programming. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to hire a chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly done using "logic compiler" software. This is similar to the software compiler used when developing programs. Before compilation, the original code must also be written in a specific programming language, called a hardware description language (HDL). There is not just one HDL, but many, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art will also understand that by simply programming the method flow in one of these hardware description languages and then programming it into an integrated circuit, a hardware circuit that implements the logic method flow can be easily obtained.
[0144] The controller can be implemented in any suitable manner. For example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also know that in addition to implementing the controller in a purely computer-readable program code format, the controller can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be considered as structures within the hardware component. Or even, the devices for implementing various functions can be considered as both software modules that implement the method and structures within the hardware component.
[0145] The systems, devices, modules, or units described in the above embodiments may be implemented by computer chips or entities, or by products having certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0146] For the convenience of description, the above devices are described as being divided into various units according to their functions. Of course, when implementing this application, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0147] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0148] The present application is described with reference to the flow chart and / or block diagram of the method, device (system), and computer program product according to the embodiment of the present application. It should be understood that each flow process and / or box in the flow chart and / or block diagram and the combination of the flow process and / or box in the flow chart and / or block diagram can be realized by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processing machine or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for realizing the function specified in one flow chart flow or multiple flows and / or one box or multiple boxes of the block diagram.
[0149] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0150] These computer program instructions can 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, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.
[0151] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.
[0152] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
[0153] Computer-readable media includes permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media (transitory media), such as modulated data signals and carrier waves.
[0154] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.
[0155] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0156] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communications network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.
[0157] The various embodiments in this specification are described in a progressive manner. Similar parts between the various embodiments can be referred to in conjunction with each other. Each embodiment focuses on the differences between the other embodiments. In particular, the system embodiments are generally similar to the method embodiments, so the description is relatively simple. For relevant parts, refer to the description of the method embodiments.
[0158] The above are merely embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.
Claims
1. A data communication monitoring method, applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring, characterized in that: The method comprises: In the current connection event, receive the first data packet; Determine the sender of the first data packet in the current connection event based on whether at least one of the reserved bits of the first data packet is a first flag, wherein the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag.
2. The data communication monitoring method according to claim 1, characterized in that: The step of determining the sender of the first data packet in the current connection event according to whether at least one of the reserved bits of the first data packet is a first flag comprises: If the first data sender is a data communication central role, and at least one of the reserved bits of the first data packet received in the current connection event is a first flag, it is determined that the sender of the first data packet in the current connection event is a data communication central role.
3. The data communication monitoring method according to claim 2, characterized in that: The method further comprises: Updating the synchronization time between the data listening terminal and the data communication central role; According to the transmission frame interval after the first data packet, the first second data packet sent by the second data sending end is received to obtain the received signal strength indication between the data listening end and the second data sending end, so as to realize the ranging between the data listening end and the second data sending end.
4. The data communication monitoring method according to claim 1, characterized in that: The step of determining the sender of the first data packet in the current connection event according to whether at least one of the reserved bits of the first data packet is a first flag comprises: If the first data sending end is a data communication central role, and the reserved bits of the first data packet received in the current connection event are all second flags, it is determined that the sender of the first data packet received in the current connection event is not a data communication central role.
5. The data communication monitoring method according to claim 1, characterized in that: The step of determining the sender of the first data packet in the current connection event according to whether at least one of the reserved bits of the first data packet is a first flag comprises: If the first data sending end is a data communication peripheral role, and at least one of the reserved bits of the first data packet received in the current connection event is a first flag, it is determined that the sender of the first data packet in the current connection event is a data communication peripheral role.
6. The data communication monitoring method according to claim 4 or 5, characterized in that: The method further comprises: The first received data packet is discarded, the current connection event is ended, and the size of the opened receiving time window is expanded in the next connection event.
7. The data communication monitoring method according to claim 1, characterized in that: The step of determining the sender of the first data packet in the current connection event according to whether at least one of the reserved bits of the first data packet is a first flag comprises: If the first data sending end is a data communication peripheral role, the second data sending end is a data communication central role, and the reserved bits of the first data packet received in the current connection event are all second flags, it is determined whether the sender of the first data packet in the current connection event is the data communication central role based on subsequently received data packets.
8. The data communication monitoring method according to claim 7, characterized in that: The method of determining whether the sender of the first data packet in the current connection event is the data communication central role according to the subsequently received data packets further includes: The synchronization time of the first data packet is recorded, and a received signal strength indication between the data listening end and the second data sending end is obtained according to the first data packet.
9. The data communication monitoring method according to claim 8, characterized in that: The method of determining whether the sender of the first data packet in the current connection event is the data communication central role according to the subsequently received data packets is specifically: If at least one of the reserved bits of the next data packet received after the transmission interframe space after the first data packet is a first flag, the data monitoring end determines that the sender of the first data packet in the current connection event is the data communication central role.
10. The data communication monitoring method according to claim 9, characterized in that: The method further comprises: Updating the synchronization time between the data listening terminal and the data communication central role; The distance measurement between the data listening end and the second data sending end is implemented according to the received signal strength indication between the data listening end and the second data sending end.
11. The data communication monitoring method according to claim 8, characterized in that: The step of determining that the sender of the first data packet in the current connection event is the data communication central role also includes: If no data packet with at least one of the reserved bits as the first flag is received after the transmission interframe interval after the first data packet, the received data packet is discarded, the current connection event is terminated, and the size of the opened receiving time window is expanded in the next connection event.
12. The data communication monitoring method according to claim 1, characterized in that: The method further comprises: In the current connection event, if no data packet is received, the current connection event is terminated, and the size of the opened receiving time window is enlarged in the next connection event.
13. A data communication monitoring method, applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring, characterized in that: The method comprises: In the current connection event, at least one data packet is received; A data packet whose at least one reserved bit is a first flag is determined as a data packet sent by a first data sending end, wherein the first data sending end sets at least one reserved bit of each first data packet as the first flag.
14. The data communication monitoring method according to claim 13, characterized in that: The method further comprises: The data packet whose reserved bits are all second flags is determined to be the data packet sent by the second data sending end.
15. The data communication monitoring method according to claim 13 or 14, characterized in that: The method further comprises: If the first data packet received in the current connection event is not a data packet sent by the data communication central role, then In the next connection event, the size of the received time window opened is increased.
16. The data communication monitoring method according to claim 15, characterized in that: The size of the expanded receiving time window is determined according to the clock accuracy of the first data sending end and the second data sending end, the interval between the last synchronization time and the start time of the current connection event, and a preset fixed expansion window value.
17. The data communication monitoring method according to claim 13, characterized in that: The method further comprises: According to the data packet whose reserved bit is the second flag, a received signal strength indication between the data listening end and the second data sending end is obtained to implement ranging between the data listening end and the second data sending end.
18. The data communication monitoring method according to claim 1 or 13, characterized in that: The first data sending end is a central node, the second data sending end is a mobile terminal, and the data monitoring end is an anchor node.
19. A data communication monitoring device, applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring, characterized in that: The device comprises: A first receiving module, used for receiving a first data packet in a current connection event; The first determination module is used to determine the sender of the first data packet in the current connection event according to whether at least one of the reserved bits of the first data packet is a first flag, wherein the first data sending end sets at least one of the reserved bits of the first first data packet in each connection event to the first flag.
20. A data communication monitoring device, applied to a data monitoring end, wherein a first data sending end sends a first data packet to a second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring, characterized in that: The device comprises: A second receiving module, configured to receive at least one data packet in a current connection event; The second determination module is used to determine a data packet whose at least one reserved bit is a first flag as a data packet sent by a first data sending end, wherein the first data sending end sets at least one reserved bit of each first data packet to the first flag.
21. A data communication monitoring system, comprising a first data sending end, a second data sending end and a data monitoring end, wherein the first data sending end sends a first data packet to the second data sending end, and the second data sending end sends a second data packet to the first data sending end, and the data monitoring end receives the first data packet and the second data packet to implement data communication monitoring, and the data monitoring end executes the method described in any one of claims 1 to 18.
Citation Information
Patent Citations
Data communication method and system, electronic equipment, chip and storage medium
CN112203238A
Data message sending method, data message processing method, data message sending device, data message processing device, data message sending equipment and data message
CN114125940A
Communication system, communication method and related device
CN116783869A
Data communication monitoring method, device and system
CN117580130A
Identification of traceroute nodes and associated devices
US20180077043A1