A method and system for disassembling a door lock communication group
By generating and encrypting sub-feature vectors in smart lock groups, and combining signature verification by multicast routers with dynamic splitting of multicast trees, the single point of failure and low packet accuracy in existing communication group management technologies are solved, achieving secure and efficient communication group decomposition and improving network efficiency and security.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-17
- Publication Date
- 2026-03-20
AI Technical Summary
Existing technologies in the communication group management of smart door locks suffer from single point of failure risk, low grouping accuracy, high communication redundancy, and difficulty in quickly responding to split requests in the local network, resulting in a decline in network efficiency and security.
The master lock generates sub-feature vectors and encrypts them before sending them to the local storage of member locks. Combined with the multicast router to verify the validity of the signature, the multicast tree is dynamically split and invalid interfaces are detected, thus achieving fine-grained communication group decomposition at the interface level.
It achieves secure and reliable, interface-level fine-grained door lock group decomposition, improving splitting efficiency and communication security, ensuring high network resource utilization and a seamless user experience.
Smart Images

Figure CN121151298B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of communication, in particular to a door lock communication group decomposition method and system. BACKGROUND
[0002] In recent years, with the large-scale deployment of intelligent door lock groups, how to achieve safe and efficient sub-group dynamic splitting has become a key challenge. Existing communication group management methods mostly rely on centralized servers for member authentication and grouping, which has the risk of single point failure and is difficult to quickly respond to splitting requests in local networks. Traditional multicast technology lacks close binding with physical device identities, which cannot effectively verify the legitimacy of door lock devices, resulting in low grouping accuracy, high communication redundancy, and invalid interfaces in the splitting process, affecting network efficiency and security. SUMMARY
[0003] The purpose of the present application is to provide a door lock communication group decomposition method and system to solve the problems in the prior art and achieve safe and reliable, interface-level refined door lock group decomposition, improving splitting efficiency and communication security.
[0004] One embodiment of the present application provides a door lock communication group decomposition method, which comprises:
[0005] Preconfiguration and sub-feature vector distribution: according to the sub-feature vector generated by the master door lock and its binding relationship with the member door lock, the sub-feature vector is encrypted and distributed to the corresponding member door lock for local storage through a secure channel;
[0006] Splitting request triggering and verification: according to the splitting request issued by the master door lock, a multicast message containing the target sub-group feature vector and digital signature is generated, and the multicast router verifies the validity of the signature and starts the splitting process;
[0007] Multicast tree dynamic splitting and interface registration: according to the results of querying the local ARP table and sub-group registration table by the multicast router, the sub-group to which each interface connected door lock belongs is determined, and the corresponding sub-feature vector is registered in the multicast forwarding table for the corresponding interface;
[0008] Invalid interface detection and simplification: according to the detection message issued by each sub-group master door lock and the confirmation message of the member door lock, the multicast router identifies and removes the sub-feature vector registration of the interface not associated with the valid door lock, and completes the decomposition of the communication group.
[0009] Optionally, the preconfiguration and sub-feature vector distribution comprises:
[0010] Sub-feature vector generation: according to the device registration table maintained by the master door lock, sub-feature vectors bound to each sub-communication group are generated;
[0011] Secure delivery: According to the IP address and sub-feature vector mapping relationship in the device registry, the sub-feature vector is encrypted and delivered to the corresponding member lock through the control channel;
[0012] Local storage: According to the received encrypted sub-feature vector and mapping relationship, each member lock decrypts and stores it locally;
[0013] Global communication group maintenance: According to the main feature vector shared by all door locks, maintain the multicast tree structure and communication of the global communication group.
[0014] Optionally, the split request trigger and verification includes:
[0015] Split request generation: According to the split operation of the master door lock, construct a split request message containing the target sub-group feature vector, member IP address list, timestamp and digital signature;
[0016] Multicast sending: According to the preset multicast address, the master door lock sends the split request message;
[0017] Message verification: According to the split request message received by the multicast router, verify the message format, timestamp freshness and digital signature in turn;
[0018] Split process start: According to the result of successful verification, the multicast router parses and stores the target sub-group feature vector and member IP address to the local sub-group registry, and starts the split process.
[0019] Optionally, the multicast tree dynamic splitting and interface registration includes:
[0020] ARP table query: According to the ARP table of the multicast router, obtain the device IP address information connected by each interface;
[0021] Subgroup association judgment: According to the IP address list in the sub-group registry, compare the matching relationship between it and the IP address in the ARP table;
[0022] Interface feature registration: According to the matching result, register the corresponding sub-feature vector for the interface connected to the target sub-group member in the multicast forwarding table (*, G);
[0023] Forwarding table update: According to the registration result, update the feature vector set and egress interface list of the multicast forwarding table.
[0024] Optionally, the invalid interface detection and simplification includes:
[0025] Probe message sending: According to the timing trigger of each sub-group master door lock, multicast the probe message containing the group feature vector and random number;
[0026] Acknowledgement packet feedback: according to the probe packet received by the member lock, a multicast reply containing the same feature vector and random number is sent back;
[0027] Interface validity judgment: according to whether the multicast router receives a matching acknowledgement packet from the interface within a set timeout, the validity of the interface for the feature vector is judged;
[0028] Invalid interface cleaning: according to the interface judged as invalid, the multicast router removes it from the forwarding interface list of the feature vector and updates the multicast forwarding table.
[0029] Yet another embodiment of the present application provides a decomposition system of a lock communication group, the system comprising:
[0030] A distribution module for pre-configuring and distributing a sub-feature vector: according to the sub-feature vector generated by the master lock and its binding relationship with the member lock, the sub-feature vector is encrypted and distributed to the corresponding member lock for local storage through a secure channel;
[0031] A trigger module for splitting request triggering and verification: according to the splitting request issued by the master lock, a multicast packet containing the target sub-group feature vector and digital signature is generated, and the splitting process is started after the multicast router verifies the validity of the signature;
[0032] A splitting module for dynamic splitting of multicast trees and interface registration: according to the results of the multicast router querying the local ARP table and the sub-group registration table, the sub-group to which each interface connected lock belongs is determined, and the corresponding sub-feature vector is registered in the multicast forwarding table for the corresponding interface;
[0033] A probe module for invalid interface probing and simplification: according to the probe packet issued by each sub-group master lock and the acknowledgement packet of the member lock, the multicast router identifies and removes the sub-feature vector registration of the interface not associated with the valid lock, and completes the decomposition of the communication group.
[0034] Yet another embodiment of the present application provides a storage medium having a computer program stored therein, wherein the computer program is configured to execute the method described in any of the above embodiments when running.
[0035] Yet another embodiment of the present application provides an electronic device comprising a memory and a processor, the memory having a computer program stored therein, and the processor being configured to run the computer program to execute the method described in any of the above embodiments.
[0036] Compared with the prior art, the decomposition method of the door lock communication group provided by the application, according to the sub-feature vector generated by the master door lock and the binding relationship thereof with the member door locks, encrypts the sub-feature vector and issues it to the corresponding member door lock for local storage through a secure channel; according to the splitting request issued by the master door lock, a multicast message containing the target sub-group feature vector and a digital signature is generated; according to the results of querying the local ARP table and the sub-group registration table by the multicast router, the sub-group to which the door locks connected by each interface belong is determined, and the corresponding sub-feature vector is registered in the multicast forwarding table for the corresponding interface; according to the probe message issued by each sub-group master door lock and the confirmation message of the member door locks, the multicast router identifies and removes the sub-feature vector registration of the interface of the unassociated valid door locks, and completes the decomposition of the communication group, so that the safe and reliable, interface-level refined door lock group decomposition can be realized, and the splitting efficiency and communication security are improved. BRIEF DESCRIPTION OF DRAWINGS
[0037] Figure 1 The hardware structure block diagram of the computer terminal of the decomposition method of the door lock communication group provided by the embodiment of the application is shown in the figure.
[0038] Figure 2 The flowchart of the decomposition method of the door lock communication group provided by the embodiment of the application is shown in the figure.
[0039] Figure 3 The decomposition mechanism diagram of the door lock communication group provided by the embodiment of the application is shown in the figure.
[0040] Figure 4 The structure diagram of the decomposition system of the door lock communication group provided by the embodiment of the application is shown in the figure. DETAILED DESCRIPTION
[0041] The embodiments described below with reference to the drawings are exemplary and are only used to explain the application, and cannot be explained as a limitation of the application.
[0042] In the intelligent community security and smart home scene, the intelligent door lock multi-party video communication group system has been widely used. In actual use, there is often a need to split a large-scale communication group into several sub-communication groups. For example, in a public security communication group participated by the residents of an entire building, it may be necessary to split the communication group into multiple small discussion groups according to the unit building or the urgency of the topic. In the prior art, if the communication group splitting is to be realized, the terminal usually needs to actively exit the current communication group and initiate a new communication group, which is cumbersome and will cause communication interruption, re-negotiation of session keys and network addresses, and poor user experience. In addition, the traditional scheme cannot realize smooth splitting while maintaining the original multicast routing structure, and the network resource utilization rate is low. Therefore, a lightweight and dynamic communication group decomposition scheme is urgently needed, which can quickly complete the communication group splitting based on the existing network architecture without the need for the terminal to re-access.
[0043] The embodiment of the present application first provides a disassembly method of a door lock communication group, which can be applied to an electronic device, such as a computer terminal, specifically, a common computer, etc.
[0044] The following will be described in detail by taking a computer terminal as an example. Figure 1 A hardware structure block diagram of a computer terminal provided with the disassembly method of the door lock communication group is shown in FIG. 1. Figure 1 As shown in the figure, the computer device includes a processor, a memory and a network interface connected through a system bus, wherein the memory can include a non-volatile storage medium and an internal memory.
[0045] The non-volatile storage medium can store an operating system and a computer program. The computer program includes program instructions, which, when executed, can make the processor execute any disassembly method of the door lock communication group.
[0046] The processor is used to provide computing and control capabilities to support the operation of the entire computer device.
[0047] The internal memory provides an environment for the computer program in the non-volatile storage medium, which, when executed by the processor, can make the processor execute any disassembly method of the door lock communication group.
[0048] The network interface is used for network communication, such as sending assigned tasks, etc. Those skilled in the art can understand that Figure 1 The structure shown in FIG. 1 is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device to which the scheme of the present application is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different component arrangement.
[0049] It should be understood that the processor can be a central processing unit (CPU), and the processor can also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0050] Referring to Figure 2 and Figure 3Embodiments of the present application provide a method for splitting a door lock communication group, which can include the following steps:
[0051] S201, pre-configuring and distributing sub-feature vectors: according to the sub-feature vectors generated by the master door lock and the binding relationship between the sub-feature vectors and the member door locks, the sub-feature vectors are encrypted and distributed to the corresponding member door locks through a secure channel; specifically, the pre-configuring and distributing sub-feature vectors include:
[0052] Sub-feature vector generation: according to the device registration table maintained by the master door lock, sub-feature vectors bound to each sub-communication group are generated;
[0053] Secure distribution: according to the IP address and sub-feature vector mapping relationship in the device registration table, the sub-feature vectors are encrypted and distributed to the corresponding member door locks through a control channel;
[0054] Local storage: according to the received encrypted sub-feature vectors and the mapping relationship, each member door lock decrypts and stores them locally;
[0055] Global communication group maintenance: according to the master feature vector shared by all door locks, the multicast tree structure and communication of the global communication group are maintained.
[0056] S202, split request triggering and verification: according to the split request issued by the master door lock, a multicast message containing the target sub-group feature vector and the digital signature is generated, and the multicast router verifies the validity of the signature and starts the split process after verification; specifically, the split request triggering and verification include:
[0057] Split request generation: according to the split operation of the master door lock, a split request message containing the target sub-group feature vector, the member IP address list, the timestamp and the digital signature is constructed;
[0058] Multicast sending: according to the preset multicast address, the master door lock sends the split request message;
[0059] Message verification: according to the split request message received by the multicast router, the message format, the timestamp freshness and the digital signature are verified in sequence;
[0060] Split process start: according to the result of successful verification, the multicast router parses and stores the target sub-group feature vector and the member IP address to the local sub-group registration table, and starts the split process.
[0061] S203, multicast tree dynamic splitting and interface registration: according to the results of the multicast router querying the local ARP table and the sub-group registration table, the sub-group to which each interface connected door lock belongs is determined, and the corresponding sub-feature vector is registered in the multicast forwarding table for the corresponding interface; specifically, the multicast tree dynamic splitting and interface registration include:
[0062] ARP table query: according to the ARP table of the multicast router, obtain the IP address information of the devices connected to each interface;
[0063] Subgroup association judgment: according to the IP address list in the subgroup registration table, compare the matching relationship with the IP address in the ARP table;
[0064] Interface feature registration: according to the matching result, register the corresponding sub-feature vector for the interface connected to the target subgroup member in the multicast forwarding table (*, G);
[0065] Forwarding table update: according to the registration result, update the feature vector set and the out-interface list of the multicast forwarding table.
[0066] S204, invalid interface detection and simplification: according to the detection packet sent by the master lock of each subgroup and the confirmation packet of the member lock, the multicast router identifies and removes the sub-feature vector registration of the interface of the invalid lock associated, and completes the decomposition of the communication group. Specifically, the invalid interface detection and simplification includes:
[0067] Probe packet sending: according to the timing trigger of the master lock of each subgroup, multicast sends a detection packet containing the feature vector of the group and a random number;
[0068] Confirmation packet feedback: according to the detection packet received by the member lock, multicast replies a confirmation packet containing the same feature vector and random number;
[0069] Interface validity judgment: according to whether the multicast router receives the matched confirmation packet from the interface within the set timeout, judge the validity of the interface for the feature vector;
[0070] Invalid interface cleaning: according to the interface judged as invalid, the multicast router removes it from the forwarding interface list of the feature vector, and updates the multicast forwarding table.
[0071] In practical applications, a technical solution example can include the following:
[0072] Core idea:
[0073] The application provides a feature vector-based dynamic decomposition mechanism for a communication group (hereinafter referred to as a conference). During system initialization, all door locks are in the same global communication group, share a multicast distribution tree and a master feature vector. The master door lock pre-generates and issues a sub-feature vector bound to each sub-communication group. When the communication group needs to be decomposed, the master door lock sends a split request to the network, which contains the feature vector of the target sub-group. After verifying the legality of the request, the multicast router identifies the sub-group to which the door lock device directly connected based on the local device connection information, dynamically creates an independent sub-multicast tree for each sub-feature vector, and updates the multicast forwarding table item. Through the detection mechanism, the router can automatically detect the effectiveness of the interface and remove the invalid feature registration. Finally, the single global communication group is seamlessly decomposed into multiple sub-communication groups without changing the multicast group address and interrupting the existing media stream.
[0074] Core process:
[0075] Unified communication group initial stage:
[0076] Door locks A to F are in the same communication group ID_P, sharing a single multicast distribution tree. The multicast router maintains a global forwarding table, and all terminal addresses are bound to the output interface and associated with the master feature vector p.
[0077] Door lock A is the master control end, and the gateway router of door lock A is router A. In this stage, the key data is pre-buried: door lock A generates sub-group feature vectors a (bound to door locks A / B / C) and d (bound to door locks D / E / F), which are encrypted and issued to the corresponding door locks for storage through the communication group control channel.
[0078] Split request trigger stage:
[0079] Door lock A initiates a split request, the destination address is multicast group G, and the target sub-group feature vectors a (bound to door locks A / B / C) and d (bound to door locks D / E / F) and a digital signature are contained. The digital signature is generated by the master feature vector p. Each multicast router on the multicast tree verifies the validity of the signature and confirms that A has the operation authority before starting the split process.
[0080] Multicast tree dynamic split stage:
[0081] Each multicast router on the tree performs the split operation. First, create a sub-multicast tree ID_X for the feature vector a, based on the ARP table item, if you directly connect the door locks A, B, C device addresses, then the (*, G) table item connects the interfaces of the above door locks to register the feature a, otherwise register a and d; at the same time, create a sub-multicast tree ID_Y for the feature vector d, based on the ARP table item, if you directly connect the door locks D, E, F device addresses, then the (*, G) table item connects the interfaces of the above door locks to register the feature d, otherwise register a and d.
[0082] Further simplification, because some branches have no connection door lock DEF, the interface does not need to register the feature d. Therefore, each communication group group performs "simplified interaction", that is, each door lock sends a multicast message carrying its own communication group feature and a random value, and requires the door lock receiving the message to immediately reply with a multicast message carrying the communication group feature and the random value; the router is responsible for listening, and if a simplified message carrying a certain feature is sent from an interface and no simplified reply message with the corresponding random value is received within a certain time, the feature of the interface is deleted - this can avoid sending invalid audio and video streams in the future.
[0083] Detailed technical solutions:
[0084] System composition and preconditions:
[0085] The system is composed of six intelligent door lock devices (door lock A, door lock B, door lock C, door lock D, door lock E, and door lock F) and two multicast routers (router A and router D). Door lock A serves as the master control end, and its gateway router is router A; door lock D serves as the master control end of another sub-communication group, and its gateway router is router D. All door lock devices need to join the same multicast group G in the initialization stage, and the multicast group address is 239.1.1.1. During system initialization, all door lock devices share a master feature vector p, which serves as the unique identifier of the global communication group.
[0086] In the pre-configuration stage before the communication group starts, door lock A generates two sub-feature vectors: feature vector a for identifying sub-communication group X (including door lock A, B, and C), and feature vector d for identifying sub-communication group Y (including door lock D, E, and F). This correspondence is achieved through a device registration table maintained by door lock A, which records the IP address of each door lock device and its corresponding feature vector. For example, the device registration table explicitly records that IP address 192.168.1.101 (door lock A) corresponds to feature vector a, IP address 192.168.1.102 (door lock B) corresponds to feature vector a, IP address 192.168.1.103 (door lock C) corresponds to feature vector a, IP address 192.168.1.104 (door lock D) corresponds to feature vector d, and so on.
[0087] Door lock A sends feature vector a to door lock B and door lock C through a dedicated control channel, and sends feature vector d to door lock D, door lock E, and door lock F. During the transmission process, the summary information of the device registration table is also sent, so that each door lock device is aware of the device-feature vector mapping relationship of the entire system. Each door lock device stores the received feature vector and mapping relationship in the local storage area.
[0088] Unified communication group stage:
[0089] In the unified communication group phase, all door lock devices (A-F) are under the same communication group ID_P. The multicast router maintains a global multicast forwarding table (*, G), and the establishment process of the table item is as follows: when the door lock device first joins the multicast group, an IGMP join message is sent to the directly connected router, and the source IP address of the message is the IP address of the door lock device. After receiving the IGMP join message, the router first records the interface and source IP address of the sending message, and then creates a corresponding table item in the multicast forwarding table.
[0090] The multicast forwarding table contains the following fields: multicast group address (G=239.1.1.1), out-interface list, feature vector set, timestamp, and state flag. The out-interface list records all network interfaces that need to forward multicast traffic, and each interface item also contains a list of door lock device IP addresses connected by the interface. The feature vector set initially contains only the main feature vector p. The timestamp records the last update time of the table item. The state flag identifies the current state of the table item, such as active or inactive.
[0091] For example, the multicast forwarding table of router A may contain the following table items: multicast group address = 239.1.1.1, out-interface list = eth1, connected IP: 192.168.1.101, associated feature vector set = [p], eth2 connected IP: 192.168.1.102, associated feature vector set = [p], eth3 connected IP: 192.168.1.103, associated feature vector set = [p], timestamp = 2023-08-20 10:00:00, state flag = active. The table items of router D are similar, but record the IP addresses and feature vector sets of its directly connected door locks D, E, and F.
[0092] The multicast router also establishes a feature listening table. This table maintains the mapping relationship between interfaces and feature vectors, and is the key basis for the router to determine whether to receive and process specific feature vector traffic. The feature listening table records the interface, associated feature vector, and state information.
[0093] In this phase, audio and video media streams are distributed in the global multicast tree. The media stream uses a specific encapsulation format, containing the following fields: version number, message type, multicast group address, feature vector, communication group ID, sequence number, and timestamp. All door lock devices can receive and send data, realizing full intercommunication. The router forwards messages according to the out-interface list in the multicast forwarding table, ensuring that each door lock device can receive the media stream.
[0094] Split request trigger phase:
[0095] When door lock A needs to initiate communication group decomposition, a split request message is constructed. The message contains the following field information: the message type field is set to SplitReq (0x09); the multicast group field is set to 239.1.1.1; the feature vector field uses the master feature vector p; and the communication group ID field is ID_P. The payload part contains the target subgroup feature vector a, the IP addresses of the subgroup members: door lock A, door lock B, and door lock C, the target subgroup feature vector d, the IP addresses of the subgroup members: door lock D, door lock E, and door lock F, and a timestamp.
[0096] The split request message is transmitted along the multicast forwarding tree between multicast routers through the multicast group G. After the router receives the message, the following verification process is performed: first, check the correctness of the message format, verify the length and value range of each field; and finally, verify the freshness of the timestamp, requiring the timestamp to be within 5 seconds of the current system time. After verification, the router parses the target subgroup feature vectors a and d, records the details of the split request, including the request time, the IP addresses of the related devices, the target subgroup communication group feature vectors, etc., and stores it locally as a subgroup registration table, recording the IP addresses of the subgroup members and the feature vectors corresponding to each IP address. For example: the subgroup registration table records: 192.168.1.101 corresponds to feature vector a, 192.168.1.102 corresponds to feature vector a, and 192.168.1.103 corresponds to feature vector a.
[0097] Multicast tree dynamic splitting phase:
[0098] After receiving a legitimate split request, the router begins to perform the split operation. The router first queries the local ARP table. The ARP table contains the mapping relationship between IP addresses and MAC addresses, as well as interface information.
[0099] The router determines the feature vector that needs to be registered according to the following detailed process: first, the router queries the ARP table to obtain the ARP list connected by each interface. For example, the ARP list of router A can show: device IP: 192.168.1.101, corresponding MAC address, and interface eth1; device IP: 192.168.1.102, corresponding MAC address, and interface eth2; device IP: 192.168.1.103, corresponding MAC address, and interface eth3. Then, the router further queries the locally stored sub-group registration table, and the router traverses all IP addresses recorded in the sub-group registration table to query and compare the ARP table to determine whether there is a corresponding ARP table entry. If there is a corresponding ARP table entry, the out-interface connected to the device is registered in the (*, G) table entry. Specifically, the router updates the multicast forwarding table, adds the feature vector a in the feature vector set, and marks the interface that needs to forward the traffic of the feature vector a in the corresponding out-interface entry.
[0100] For the sub-communication group Y corresponding to the feature vector d, the router uses the same processing logic: traverse all IP addresses recorded in the sub-group registration table to query and compare the ARP table to determine whether there is a corresponding ARP table entry. If there is a corresponding ARP table entry, the out-interface connected to the device is registered in the (*, G) table entry. For the interface that connects both the feature vector a device and the feature vector d device, the feature vectors a and d are registered at the same time. At the same time, in order to avoid the case that the router is not directly connected to the lock, but other routers connected to the lock are hung below, for the interface whose ARP table entry does not contain the IP addresses of A, B, C, D, E, and F locks, the feature vectors a and d also need to be registered at the same time, and unnecessary a or d will be gradually simplified in the subsequent detection message interaction process.
[0101] The registration process includes the following specific steps: first, the router creates a new feature vector set containing all feature vectors that need to be registered; then, the feature vector set field in the multicast forwarding table is updated; then, the corresponding feature vector forwarding flag is set for each out-interface; finally, the timestamp field is updated to the current system time, and the state flag is set to active.
[0102] The master door lock of each sub-communication group (door lock A is the master door lock of sub-communication group X, and door lock D is the master door lock of sub-communication group Y) starts a detection mechanism after receiving the split request message. The master door lock of each sub-communication group sends a detection message. The identity of the master door lock is determined by the information carried in the split request message: door lock A specifies the master door lock role of each sub-communication group when it issues the split request message. Specifically, when issuing the feature vector a to door locks B and C, door lock A is instructed to be the master door lock of sub-communication group X; when issuing the feature vector d to door locks D, E, and F, door lock D is instructed to be the master door lock of sub-communication group Y.
[0103] The master door lock of each sub-communication group (such as door lock A, which is the master door lock of sub-communication group X) periodically multicasts a detection message PruneProbe. The message type of this message is 0x0A, which contains the feature vector (such as a) of the sub-communication group and a randomly generated random number. This message is sent through the multicast group G. After receiving the PruneProbe message, the router parses the feature vector and the random number, and creates a waiting confirmation table entry locally for the receiving interface, recording the interface, the feature vector, the random number, and the sending timestamp, and starts a 200ms timeout timer. Subsequently, the router transmits the PruneProbe message from all other interfaces that have registered the feature vector.
[0104] The door lock devices belonging to the feature vector (such as door locks B and C) immediately multicast a confirmation message PruneAck after receiving the PruneProbe message. The message type of this message is 0x0B, which contains the same feature vector and random number as in PruneProbe. After receiving the PruneAck message from an interface, the router matches the previously recorded waiting confirmation table entry according to the feature vector and random number in the message. If a matching table entry is found, the interface is marked as confirmed for this feature vector, indicating that there is a valid sub-communication group member device downstream of the interface.
[0105] For interfaces that have registered a specific feature vector, if no corresponding PruneAck confirmation message is received within 200ms, the router will perform a complete removal operation. This operation involves the coordinated update of multiple table entries in the router, and the specific process is as follows:
[0106] First, the router checks the set of feature vectors associated with the interface in the multicast forwarding table. The router queries the multicast forwarding table entry corresponding to the multicast group G (239.1.1.1) and locates the entry for the particular interface. If the entry's set of feature vectors contains the target feature vector (e.g., feature vector a) currently being processed, the router initiates the removal procedure. The removal operation is atomic to ensure consistency between the data forwarding plane and the control plane state.
[0107] Specifically, the router removes the target feature vector a from the set of feature vectors for the interface. For example, assume that the set of feature vectors for interface eth2 in the multicast forwarding table of router A was originally [a, d], indicating that the interface needed to forward traffic for both the sub-group X (feature a) and the sub-group Y (feature d). After the probe for feature vector a times out, the router updates the set to [d]. Next, the router updates the overall state flag of the multicast forwarding table. If the set of feature vectors for the interface is empty, the router removes the interface from the outgoing interface list completely; otherwise, the router updates only the forwarding flag bit for the interface.
[0108] The router then synchronously updates the Feature Listening Table. This table maintains the mapping between interfaces and feature vectors and is the key basis for the router to determine whether it needs to receive and process traffic for a particular feature vector. The router looks up all entries in the table that are associated with the interface and feature vector a and marks their state as "inactive." After a short delay (typically 1-2 packet processing cycles), these entries are removed from the data plane completely by a background cleanup task, freeing up the corresponding storage resources.
[0109] For example, assume that a downstream interface eth3 of router D was previously registered to forward traffic for feature vector a (i.e., belonging to sub-group X). During a complete PruneProbe / PruneAck interaction, router D sent a PruneProbe(a) packet with a random number Rl from interface eth3. However, within 200 milliseconds, router D did not receive any PruneAck(a) response from interface eth3 that matches Rl. At this point, router D determines that there are no valid members of sub-group X downstream of interface eth3.
[0110] Thus, router D accesses its multicast forwarding table, finds the entry of multicast group G (239.1.1.1), and locates the subentry of the out-interface eth3. It modifies the feature vector set from [a] to an empty set []. Since the interface is no longer associated with any feature vector, router D further removes eth3 from the out-interface list of multicast group G. Meanwhile, router D queries the feature listening table, finds all mapping entries in the form of (eth3, a), marks them as invalid, and finally deletes them. Thereafter, any traffic destined for G and with feature vector a will not be forwarded to the eth3 interface, thus achieving precise pruning of the network branch and avoiding waste of bandwidth resources.
[0111] Splitting completion and independent operation:
[0112] After the splitting operation is completed, the system enters the independent operation phase. At this time, the original global multicast tree has been successfully split into two independent logical sub-multicast trees, each using the same multicast address G (239.1.1.1) but achieving traffic isolation through different feature vectors. Sub-communication group X uses feature vector a, and door locks A, B, and C form an independent communication domain; sub-communication group Y uses feature vector d, and door locks D, E, and F form an independent communication domain. The media streams between the two sub-communication groups are completely isolated and do not interfere with each other.
[0113] Communication of video streams and data streams is based on the updated multicast forwarding table. The multicast forwarding table of each router has been updated and records the feature vector set corresponding to each out-interface. When the door lock device sends video data, it sets the corresponding feature vector field in the data packet. The router receives the data packet, parses the feature vector field, and queries the multicast forwarding table, and only forwards the data packet to the interface that has registered the corresponding feature vector. This precise matching mechanism based on feature vectors ensures that data streams can only propagate within the specified sub-communication group and cannot leak to other sub-communication groups.
[0114] Taking an actual communication process as an example, when door lock B needs to send video data to sub-communication group X, it constructs a data packet with a destination address of 239.1.1.1 and a feature vector of a. Router A receives the data packet, queries its forwarding table, and finds that only the interfaces connecting door locks A, B, and C have registered the feature vector a, so it only forwards the data packet to these interfaces. When the data packet reaches router D, router D checks that the feature vector is a, and its direct interfaces have all registered feature vector d, so it discards the data packet, ensuring that data will not be transmitted to the door lock devices of sub-communication group Y.
[0115] Session termination and cleanup mechanism:
[0116] When it is necessary to remove the split state and restore the global communication group, the system initiates a session termination and cleanup mechanism. The mechanism is initiated by the master lock A, triggering the entire cleanup process by sending a merge request packet. The merge request packet adopts a specific format, containing the following fields: the message type field is set to MergeReq (0x0C), which is a message type specially used for merge requests; the multicast group field is set to 239.1.1.1; the feature vector field uses the master feature vector p; and the communication group ID field is ID P. The payload part contains a list of sub-feature vectors to be merged (including feature vector a and feature vector d), a timestamp, and an operation type identifier (identifying full merge or partial merge).
[0117] After the router receives the merge request packet, it first performs packet verification. The verification process includes checking the integrity of the packet format, confirming that the length and value range of each field meet the specifications, and ensuring that the request comes from a legal master lock; verifying the freshness of the timestamp, requiring the timestamp to be within 5 seconds of the current system time. After verification, the router parses the packet content to obtain the list of sub-feature vectors to be merged, and begins to perform the cleanup operation.
[0118] The cleanup operation adopts a gradual strategy and is executed in three distinct stages. The first stage is to stop the media stream forwarding of the sub-communication group. The router immediately sends a stream stop notification packet to all outgoing interfaces, which contains the message type StreamStop (0x0D) and the feature vector (a or d). At the same time, the router suspends the forwarding of sub-communication group traffic to temporarily added outgoing interfaces, but keeps the transmission channel of control signaling open. In this stage, the router records the traffic stop time of each interface and monitors the decline of media traffic to ensure that the traffic stop operation is completed within 100 milliseconds.
[0119] The second stage is to clear the related entries in the feature listening table. The router first queries the feature listening table to find all table entries related to sub-feature vectors a and d. For each table entry, the router sets its state flag to "to be deleted" and records the to-be-deleted timestamp. Then, the router waits for a 1-second buffer time, which is to ensure that all ongoing packets are properly processed to avoid data loss. During the buffer period, the router continues to monitor network traffic to confirm that no new sub-communication group packets are generated. After the buffer period ends, the router begins to completely remove these entries from the data plane. The removal operation includes: clearing the mapping relationship between the feature vector and the interface, releasing related memory resources, and updating the version number of the feature listening table.
[0120] The third stage is to update the multicast forwarding table. After confirming that the feature detection table is cleaned up, the router starts to adjust the multicast forwarding table. The router traverses all entries in the multicast forwarding table, and completely removes the feature vector added for the sub-communication group in the (*, G) entry. The specific operation includes: deleting feature vectors a and d from the feature vector set; adjusting the out-interface list to remove the interface serving only the sub-communication group; and restoring the forwarding table to a state containing only the main feature vector p. At the same time, the router releases resources related to the sub-communication group, including memory buffers, counters, timers, and the like. During the entire update process, the router maintains atomic operations to ensure that there is no data inconsistency during the update.
[0121] When the cleaning operation is completed, the system returns to the unified global communication group state. All lock devices use the main feature vector p for communication again, and the media stream resumes global multicast transmission. The router sends a cleaning completion confirmation packet to the master lock A, which contains cleaning result codes, released resource statistics, process time consumption, and the like. After receiving the confirmation packet, the master lock A updates the system state and notifies all lock devices that the communication group has returned to the global state.
[0122] During the entire cleaning process, the system ensures service continuity, and the media stream transmission does not interrupt, and the user does not perceive any service jitter. The cleaning operation adopts a graceful degradation manner, preferentially guarantees the transmission of important control signaling, gradually releases non-critical resources, and ensures that the system operates stably and reliably during the entire process.
[0123] Beneficial effects: dynamic lossless splitting is achieved, the communication group can be dynamically split into multiple sub-communication groups during communication, the entire process is not perceived by the user experience, and the media stream does not interrupt; the network is efficient, based on the existing multicast tree splitting, and does not need to be reconstructed; good scalability, supporting simultaneous splitting into multiple sub-communication groups, suitable for complex community management scenarios; good compatibility, complementary to the communication group fusion scheme, and jointly constructing a flexible multi-communication group management system.
[0124] Innovations: a dynamic communication group splitting mechanism based on feature vectors and network perception is proposed, the router analyzes the splitting instruction and queries the local ARP table, automatically and dynamically divides the multicast tree, and realizes the elastic expansion of the communication group system;
[0125] A path optimization algorithm of a detection mechanism is designed, the network can autonomously discover and prune invalid forwarding branches through detection packet interaction and random number matching verification, and the efficiency of the network after splitting is improved;
[0126] A communication group decomposition technology without group change and continuous flow is realized, the traffic isolation is realized through the feature vector on the premise of maintaining the same multicast group address, and the terminal is avoided from re-accessing;
[0127] It provides a set of feature-based, two-level communication group management models. By using the main feature vector and sub-feature vector in tandem, it maintains the uniformity of the global communication group while supporting the independence of the sub-communication groups, thus simplifying system management and control.
[0128] As can be seen, based on the sub-feature vectors generated by the master lock and their binding relationship with member locks, the sub-feature vectors are encrypted and sent to the local storage of the corresponding member locks through a secure channel; based on the split request issued by the master lock, a multicast message containing the target subgroup feature vector and digital signature is generated; based on the results of the multicast router querying the local ARP table and the subgroup registry, the subgroup to which each interface belongs is determined, and the corresponding sub-feature vector is registered for the corresponding interface in the multicast forwarding table; based on the probe messages issued by the master locks of each subgroup and the acknowledgment messages of the member locks, the multicast router identifies and removes the sub-feature vector registration of interfaces not associated with valid locks, thus completing the communication group decomposition. This enables secure and reliable, interface-level fine-grained lock group decomposition, improving splitting efficiency and communication security.
[0129] Another embodiment of the present invention provides a decomposition system for a door lock communication group, see [link to relevant documentation]. Figure 4 The system may include:
[0130] The distribution module 401 is used for pre-configuration and sub-feature vector distribution: based on the sub-feature vector generated by the master door lock and its binding relationship with the member door lock, the sub-feature vector is encrypted and sent to the local storage of the corresponding member door lock through a secure channel;
[0131] Trigger module 402 is used for triggering and verifying split requests: Based on the split request issued by the master door lock, a multicast message containing the target subgroup feature vector and digital signature is generated, and the multicast router verifies the validity of the signature before starting the split process;
[0132] The splitting module 403 is used for dynamic splitting of the multicast tree and interface registration: based on the results of the multicast router querying the local ARP table and the subgroup registry, it determines the subgroup to which each interface belongs and registers the corresponding sub-feature vector for the corresponding interface in the multicast forwarding table;
[0133] The detection module 404 is used for invalid interface detection and simplification: based on the detection messages sent by the master locks of each subgroup and the confirmation messages sent by the member locks, the multicast router identifies and removes the sub-feature vector registration of the interface that is not associated with a valid lock, thus completing the decomposition of the communication group.
[0134] This invention also provides a storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above method embodiments when running.
[0135] The embodiment of the present application also provides an electronic device, comprising a memory and a processor, the memory has a computer program stored therein, and the processor is configured to run the computer program to execute the steps in any one of the method embodiments.
[0136] Specifically, the electronic device can further comprise a transmission device connected with the processor and an input-output device connected with the processor.
[0137] The above embodiment according to the drawings illustrates the structure, features and effects of the present application, and the above description is only the preferred embodiment of the present application, but the present application is not limited to the embodiment shown in the drawings, any change or modification made according to the concept of the present application, or equivalent embodiments with equivalent changes, shall be within the protection scope of the present application.
Claims
1. A method for decomposing a door lock communication group, characterized in that, The method includes: Pre-configuration and sub-feature vector distribution: Based on the sub-feature vectors generated by the master lock and their binding relationships with member locks, the sub-feature vectors are encrypted and distributed to the local storage of the corresponding member locks via a secure channel; wherein, the pre-configuration and sub-feature vector distribution includes: Sub-feature vector generation: Based on the device registry maintained by the master lock, sub-feature vectors bound to each sub-communication group are generated, wherein the sub-feature vectors are used to identify the sub-communication group; Secure distribution: Based on the mapping relationship between IP addresses and sub-feature vectors in the device registry, the sub-feature vectors are encrypted and distributed to the corresponding member locks via a control channel; Local storage: Based on the received encrypted sub-feature vectors and mapping relationships, each member lock decrypts them and stores them locally; Global communication group maintenance: Based on the master feature vector shared by all locks, the multicast tree structure and communication of the global communication group are maintained; Split Request Triggering and Verification: Based on the split request issued by the master lock, a multicast message containing the target subgroup feature vector and digital signature is generated. After the multicast router verifies the validity of the signature, the split process is initiated; wherein, the target subgroup feature vector is the sub-feature vector of the target sub-communication group; Dynamic multicast tree splitting and interface registration: Based on the results of the multicast router querying the local ARP table and subgroup registry, the subgroup to which each interface belongs is determined, and the corresponding sub-feature vector is registered for the corresponding interface in the multicast forwarding table. After the splitting operation, the original global multicast tree is successfully split into multiple independent logical sub-multicast trees. Each sub-multicast tree uses the same multicast address and achieves traffic isolation through different sub-feature vectors. The multicast forwarding table contains the following fields: multicast group address, outgoing interface list, feature vector set, timestamp, and status flag. The feature vector set contains at least one of a main feature vector or a sub-feature vector. Invalid Interface Detection and Simplification: Based on the probe messages sent by the master locks of each subgroup and the acknowledgment messages sent by the member locks, the multicast router identifies and removes the sub-feature vector registration of interfaces that are not associated with valid locks, thus completing the decomposition of the communication group.
2. The method according to claim 1, characterized in that, The split request triggering and verification includes: Split Request Generation: Based on the split operation of the master lock, construct a split request message containing the target subgroup feature vector, member IP address list, timestamp and digital signature; Multicast transmission: The master door lock sends a split request message according to the preset multicast address; Message verification: Based on the split request message received by the multicast router, verify the message format, timestamp freshness, and digital signature in sequence; Split process initiation: Based on the successful verification result, the multicast router parses and stores the target subgroup feature vector and member IP addresses to the local subgroup registry, and initiates the split process.
3. The method according to claim 2, characterized in that, The dynamic splitting and interface registration of the multicast tree includes: ARP table lookup: Obtain the IP address information of the devices connected to each interface based on the local ARP table of the multicast router; Subgroup association determination: Based on the IP address list in the subgroup registry, compare its matching relationship with the IP address in the ARP table; Interface feature registration: Based on the matching results, register the corresponding sub-feature vectors for the interfaces connecting to the target subgroup members in the multicast forwarding table (*,G); Forwarding table update: Based on the registration results, update the feature vector set and outgoing interface list of the multicast forwarding table.
4. The method according to claim 3, characterized in that, The invalid interface detection and simplification includes: Probe message transmission: Based on the timed triggering of the master lock of each subgroup, a probe message containing the sub-feature vector of the sub-communication group and a random number is sent via multicast; Confirmation message feedback: Based on the probe messages received by the member door lock, the multicast reply contains an confirmation message containing the same sub-feature vector and a random number; Interface validity determination: The validity of the interface for the sub-feature vector is determined by whether the multicast router receives a matching acknowledgment message from the interface within the set timeout period. Invalid interface cleanup: Based on the interfaces determined to be invalid, the multicast router removes them from the forwarding interface list of the sub-feature vector and updates the multicast forwarding table.
5. A decomposition system for a door lock communication group, characterized in that, The system includes: The distribution module is used for pre-configuration and sub-feature vector distribution: based on the sub-feature vectors generated by the master lock and their binding relationship with member locks, the sub-feature vectors are encrypted and sent to the local storage of the corresponding member locks through a secure channel; wherein, the pre-configuration and sub-feature vector distribution includes: sub-feature vector generation: based on the device registry maintained by the master lock, sub-feature vectors bound to each sub-communication group are generated, wherein the sub-feature vectors are used to identify the sub-communication group; secure sending: based on the mapping relationship between IP addresses and sub-feature vectors in the device registry, the sub-feature vectors are encrypted and sent to the corresponding member locks through a control channel; local storage: based on the received encrypted sub-feature vectors and mapping relationships, each member lock decrypts them and stores them locally; global communication group maintenance: based on the master feature vector shared by all locks, the multicast tree structure and communication of the global communication group are maintained; The triggering module is used for triggering and verifying split requests: based on the split request issued by the master door lock, a multicast message containing the target subgroup feature vector and digital signature is generated, and the multicast router verifies the validity of the signature before starting the split process; wherein, the target subgroup feature vector is the sub-feature vector of the target sub-communication group; The splitting module is used for dynamic splitting of the multicast tree and interface registration: based on the results of the multicast router querying the local ARP table and subgroup registry, it determines the subgroup to which each interface belongs and registers the corresponding sub-feature vector for the corresponding interface in the multicast forwarding table; The detection module is used for invalid interface detection and simplification: based on the detection messages sent by the master lock of each subgroup and the confirmation messages sent by the member locks, the multicast router identifies and removes the sub-feature vector registration of the interface that is not associated with a valid lock, thus completing the decomposition of the communication group; The system further includes: after the splitting operation is completed, the original global multicast tree is successfully split into multiple independent logical sub-multicast trees, each sub-multicast tree uses the same multicast address and achieves traffic isolation through different sub-feature vectors; the multicast forwarding table includes the following fields: multicast group address, outgoing interface list, feature vector set, timestamp and status flag, and the feature vector set includes at least one of the main feature vector or sub-feature vector.
6. The system according to claim 5, characterized in that, The triggering module is specifically used for: Split Request Generation: Based on the split operation of the master lock, construct a split request message containing the target subgroup feature vector, member IP address list, timestamp and digital signature; Multicast transmission: The master door lock sends a split request message according to the preset multicast address; Message verification: Based on the split request message received by the multicast router, verify the message format, timestamp freshness, and digital signature in sequence; Split process initiation: Based on the successful verification result, the multicast router parses and stores the target subgroup feature vector and member IP addresses to the local subgroup registry, and initiates the split process.
7. A storage medium, characterized in that, The storage medium stores a computer program, wherein the computer program is configured to execute the method of any one of claims 1-4 when it is run.
8. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to run the computer program to perform the method of any one of claims 1-4.
Citation Information
Patent Citations
Multicast management method and two-layer equipment
CN102075422A
Multicast safety access apparatus and method thereof
CN105791318A
Information issuing method and system based on intelligent door lock
CN120071481A