CN117118876B - Heartbeat connection detection method and device, electronic equipment and storage medium - Google Patents
Heartbeat connection detection method and device, electronic equipment and storage medium Download PDFInfo
- Publication number
- CN117118876B CN117118876B CN202311361185.4A CN202311361185A CN117118876B CN 117118876 B CN117118876 B CN 117118876B CN 202311361185 A CN202311361185 A CN 202311361185A CN 117118876 B CN117118876 B CN 117118876B
- Authority
- CN
- China
- Prior art keywords
- linked list
- identification information
- list structure
- terminal equipment
- doubly linked
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention relates to the technical field of communication, in particular to a heartbeat connection detection method, a device, electronic equipment and a storage medium, wherein the heartbeat connection detection method comprises the following steps: determining the number N of terminal equipment currently carrying out heartbeat connection detection; acquiring identification information of N terminal devices from the tail of a doubly linked list structure queue; performing heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue; and after heartbeat connection detection is carried out on the N terminal devices, acquiring target identification information of target terminal devices which keep network connection in the N terminal devices, and inserting the target identification information into the head of the doubly linked list structure queue. The invention can manage the network connection of the terminal equipment in a planned and orderly manner so as to improve the real-time performance, the effectiveness and the accuracy of the heartbeat packet transmission, thereby reducing the resource expenditure in the heartbeat packet transmission process.
Description
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a heartbeat connection detection method, apparatus, electronic device, and computer readable storage medium.
Background
The instant communication technology is a communication technology based on a computer and the Internet, can realize real-time point-to-point or multi-party communication between different devices and platforms, and has the characteristics of instantaneity, interactivity and real-time performance.
Based on the real-time requirement of the instant messaging system, a server of a software application background needs to keep an independent special network connection channel for each client needing to communicate to send data in two directions. And such a dedicated network "connection" channel is a valuable resource for the backend server. If each client cannot receive the data packet, or is shut down or the network is disconnected, the server needs to timely recover the resources so as to be reserved for communication of new client terminal equipment. To achieve this goal, the usual approach is to perform heartbeat packet management through a network "connection", namely: and (3) confirming whether each other survives or not through sending and replying the regular heartbeat data packets between the server and the client, wherein if the heartbeat packets are failed to send or the expected reply cannot be obtained within the appointed time range, the connection channel is closed, and the connection channel is the working mechanism and meaning of the heartbeat packets.
However, in a practical scenario of network communication, when the client is a mobile terminal device, the network connection health of the terminal device is affected due to power consumption fluctuation (power exhaustion shutdown) of the terminal device, environmental factors of the location where the terminal device is located (isolation of wireless signals), a processing mode of the terminal device by an operator (closing an application), and the like. Therefore, the connection between the terminal equipment and the server can be randomly disconnected, which causes the server to cause barriers to the planned and orderly management of the connection of all clients, discounts the real-time performance, the effectiveness and the accuracy of the heartbeat packet transmission, and increases the resource expense in the heartbeat packet transmission process. Therefore, there is a need for a heartbeat connection detection method, which can manage network connection of terminal devices in a planned and orderly manner, so as to improve real-time performance, effectiveness and accuracy of heartbeat packet transmission, and reduce resource overhead in the heartbeat packet transmission process.
Disclosure of Invention
The present invention aims to solve at least one of the technical problems in the related art to some extent. Therefore, an object of the present invention is to provide a heartbeat connection detection method, which has the advantages of managing network connection of client segments in a planned and orderly manner, so as to improve the real-time performance, effectiveness and accuracy of heartbeat packet transmission, and thereby reduce the resource overhead in the heartbeat packet transmission process.
According to a first aspect of an embodiment of the present invention, there is provided a heartbeat connection detection method, including:
determining the number N of terminal equipment currently carrying out heartbeat connection detection, wherein N is an integer greater than 1;
acquiring identification information of N terminal devices from the tail of a doubly linked list structure queue;
performing heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue;
and after heartbeat connection detection is carried out on the N terminal devices, acquiring target identification information of target terminal devices which keep network connection in the N terminal devices, and inserting the target identification information into the head of the doubly linked list structure queue.
In an exemplary embodiment of the present invention, the determining the number N of terminal devices currently performing heartbeat connection detection includes:
acquiring the current total number of the terminal devices capable of performing heartbeat connection detection in the current doubly-linked list structure queue;
acquiring the number of packets of the current doubly linked list structure queue;
acquiring a current speed factor;
and calculating the number N of the terminal devices currently performing heartbeat connection detection based on the total number, the grouping number and the current speed factor.
In an exemplary embodiment of the present invention, the obtaining the packet number of the packets in the doubly linked list structure queue includes:
calculating a first ratio of the survival effective duration of the network connection to the heartbeat packet sending period;
a number of packets is determined based on the first ratio.
In an exemplary embodiment of the present invention, the acquiring the current speed factor includes:
acquiring the last total number of the terminal devices which can perform heartbeat connection detection in the last doubly linked list structure queue;
calculating a second ratio of the current total number to the previous total number;
the current speed factor is determined based on the second ratio.
In an exemplary embodiment of the invention, the method further comprises:
and when a network connection request of the first terminal equipment is received, inserting first identification information of the first terminal equipment into the head of a doubly linked list structure queue, wherein the network connection request comprises the first identification information.
In an exemplary embodiment of the present invention, the inserting the first identification information of the first terminal device into the head of the doubly linked list structure queue includes:
determining a third terminal device positioned at the head of the doubly linked list structure queue;
The next pointer of the head of the doubly linked list structure queue and the previous pointer of the third terminal equipment are pointed to the first terminal equipment;
and pointing the last pointer of the first terminal equipment to the head of the queue with the double-linked list structure, and pointing the next pointer of the first terminal equipment to the third terminal equipment.
In an exemplary embodiment of the present invention, after receiving the network connection request of the first terminal device, the method further includes:
starting a mutual exclusion lock;
and after the first identification information is determined to be inserted into the head of the doubly linked list structure queue, releasing the mutual exclusion lock.
In an exemplary embodiment of the invention, the method further comprises:
and deleting the second identification information of the second terminal equipment from the doubly linked list structure queue when the network connection with the second terminal equipment is disconnected.
In an exemplary embodiment of the present invention, the deleting the second identification information of the second terminal device from the doubly linked list structure queue includes:
determining a fourth terminal device pointed by a previous pointer of the second terminal device;
determining a fifth terminal device pointed by a next pointer of the second terminal device;
And pointing the next pointer of the fourth terminal device to the fifth terminal device, and pointing the last pointer of the fifth terminal device to the fourth terminal device.
In an exemplary embodiment of the present invention, after determining that the network is disconnected from the second terminal device, the method further includes:
starting a mutual exclusion lock;
and after determining that the second identification information is deleted from the doubly linked list structure queue, releasing the mutual exclusion lock.
According to a second aspect of the present invention, there is provided a heartbeat connection detection device including:
the equipment number acquisition module is used for determining the number N of the terminal equipment for heartbeat connection detection at present, wherein N is an integer greater than 1;
the identification information acquisition module is used for acquiring the identification information of N terminal devices from the tail of the queue of the doubly linked list structure;
the heartbeat connection detection module is used for carrying out heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue;
and the target terminal equipment inserting module is used for inserting the identification information of the target terminal equipment which keeps network connection in the N terminal equipment into the head of the doubly linked list structure queue after the heartbeat connection detection is carried out on the N terminal equipment.
According to a third aspect of the present invention, there is provided an electronic device comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the heartbeat connection detection method as claimed in any one of the first aspects.
According to a fourth aspect of the present invention, there is provided a computer readable storage medium, which when executed by a processor of an electronic device, causes the electronic device to perform the heartbeat connection detection method as in any one of the first aspects.
In summary, in the heartbeat connection detection method of the embodiment of the present invention, it is determined that the number N of terminal devices currently performing heartbeat connection detection is an integer greater than 1; acquiring identification information of N terminal devices from the tail of a doubly linked list structure queue; performing heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue; after the N terminal devices are subjected to heartbeat connection detection, target identification information of target terminal devices which keep network connection in the N terminal devices is obtained, and the target identification information is inserted into the head of the doubly linked list structure queue, so that the network connection of the terminal devices can be managed in a planned and orderly manner, the timeliness, the effectiveness and the accuracy of heartbeat packet transmission are improved, and the resource overhead in the heartbeat packet transmission process is reduced.
Additional aspects and advantages of the invention will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the invention.
Drawings
FIG. 1 is a flow chart of a heartbeat connection detection method provided in accordance with an exemplary embodiment;
FIG. 2 is a schematic diagram of a heartbeat connection detection process provided in accordance with an exemplary embodiment;
fig. 3 is a schematic diagram of a terminal device insertion procedure provided according to an exemplary embodiment;
fig. 4 is a schematic diagram of a terminal device deletion procedure provided according to an exemplary embodiment;
fig. 5 is a block diagram of a heartbeat connection detection device provided in accordance with an exemplary embodiment;
FIG. 6 is a schematic diagram of a storage medium provided in accordance with an exemplary embodiment;
fig. 7 is a block diagram of an electronic device provided in accordance with an exemplary embodiment.
Detailed Description
Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to like or similar elements or elements having like or similar functions throughout. The embodiments described below by referring to the drawings are illustrative and intended to explain the present invention and should not be construed as limiting the invention.
The heartbeat connection detection method according to the embodiment of the present invention is described below with reference to the drawings. Referring to fig. 1, the heartbeat connection detection method may include the following steps:
s1, determining the number N of terminal equipment for performing heartbeat connection detection currently, wherein N is an integer greater than 1;
s2, acquiring identification information of N terminal devices from the tail of the doubly linked list structure queue;
s3, carrying out heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue;
and S4, after heartbeat connection detection is carried out on the N terminal devices, acquiring target identification information of target terminal devices which keep network connection in the N terminal devices, and inserting the target identification information into the head of the doubly linked list structure queue.
In summary, in the heartbeat connection detection method of the embodiment of the present invention, it is determined that the number N of terminal devices currently performing heartbeat connection detection is an integer greater than 1; acquiring identification information of N terminal devices from the tail of a doubly linked list structure queue; performing heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue; after the N terminal devices are subjected to heartbeat connection detection, target identification information of target terminal devices which keep network connection in the N terminal devices is obtained, and the target identification information is inserted into the head of the doubly linked list structure queue, so that the network connection of the terminal devices can be managed in a planned and orderly manner, the timeliness, the effectiveness and the accuracy of heartbeat packet transmission are improved, and the resource overhead in the heartbeat packet transmission process is reduced.
Next, each step in the heartbeat connection detection method in the present exemplary embodiment will be described in more detail with reference to the drawings and examples.
In step S1, the number N of terminal devices currently performing heartbeat connection detection is determined, where N is an integer greater than 1. In an exemplary embodiment of the present invention, the acquiring the number N of terminal devices currently performing heartbeat connection detection includes:
s11, obtaining the current total number of the terminal devices capable of carrying out heartbeat connection detection in the current doubly-linked list structure queue.
In an exemplary embodiment of the present invention, a doubly linked list data structure having only two elements, namely a Head (Head) and a Tail (Tail) is created during initialization, when a first terminal device a accesses the network, identification information of a is inserted into the doubly linked list data structure, a Next pointer of the Head and a Prev last pointer of the Tail of the doubly linked list data structure point to a, a last pointer of a points to the Head, a Next pointer of a points to the Tail, and insertion of a into the doubly linked list data structure is completed. Further, if a new terminal device B accesses the network, the identification information of B is inserted into the doubly linked list data structure, the Next pointer of the Head of the doubly linked list data structure and the Prev pointer of A point to B, the previous pointer of B points to the Head, the Next pointer of B points to A, and the insertion of B into the doubly linked list data structure is completed. And circularly executing the steps, and inserting all terminal devices accessed to the network into the doubly linked list data structure to form a doubly linked list structure queue.
In an exemplary embodiment of the present invention, the queue with a doubly linked list structure is a queue for performing network connection management on a server in a software application background, where the queue with a doubly linked list structure stores identification information of all terminal devices that the server can perform heartbeat connection detection, where the identification information represents that information may be identification information such as a network protocol (Internet Protocol, IP) address and port information of the terminal devices, and a current total number of terminal devices that the server can currently perform heartbeat connection detection may be obtained from the queue with a doubly linked list structure.
Inserting and deleting an element in the doubly linked list structure queue only needs to modify the pointer of the current element, the time complexity is O (1), and other elements do not need to be moved. In an array, other elements need to be moved to maintain the sequence when elements are inserted and deleted, and the time complexity is O (n), where n is the number of elements. Therefore, when elements are inserted into the queue and deleted from the queue, the efficiency can be greatly improved, and the heartbeat detection efficiency is further improved. On the other hand, the order of the queues with the double linked list structure can be randomly changed, and continuous memory space is not needed to be kept like an array to realize sequencing. For the situation that frequent ordering is needed, the overhead of repeatedly moving elements can be avoided by using the queue with the double linked list structure, the elements in the queue can be flexibly ordered, and then the ordering time can be effectively saved. In one exemplary embodiment of the present disclosure, experimental testing (e.g., random insertion and multiple ordering of 1000 elements) results with the same hardware conditions and program development language demonstrate: when the array form is used for storage, the time occupied by element ordering is 30 percent; and when the element is stored in a queue form with a double linked list structure, the time occupied by ordering the elements is 10 percent.
In addition, when the two-way linked list structure queue stores elements, the node of each element in the queue only needs to store two pointers additionally. When the array is initialized, a whole continuous memory space is reserved for storing elements, and accurate estimation is needed for the length of the continuous memory space, otherwise, the number of elements is less than the total application space, so that memory waste is caused. In addition, when the array storage is adopted, when the number of elements is more than the required space, new memory space with the same length needs to be reapplied, and the saved elements need to be moved, so that when the array storage is adopted, the memory occupation is larger, and a large amount of operation resources need to be occupied. In the actual heartbeat connection management scene, the heartbeat connection management scene obviously does not have the condition of accurately estimating the accurate length due to the real-time change of the network connection state. Therefore, the queue with the double linked list structure is more suitable for a heartbeat connection management scene relative to the array, a certain memory space can be saved, and the saved elements do not need to be moved, so that the memory optimization is realized.
S12, acquiring the number of packets of the current doubly linked list structure queue;
Based on the foregoing, in an exemplary embodiment of the present invention, the obtaining the number of packets of the current doubly linked list structure queue includes:
s121, calculating a first ratio of the survival effective duration of the network connection to the heartbeat packet sending period;
s122, determining the number of the packets based on the first ratio.
In an exemplary embodiment of the present invention, terminal devices stored in the doubly linked list structure queue may be grouped in the order from the tail to the head of the doubly linked list structure queue, and the number of the groups may be calculated according to the following formula:
groupNum = tcpTimeout / sendFreq – 1;(1)
wherein groupNum is the number of packets, tcpTimeout is the preset effective survival duration of the network connection, sendFreq is the sending cycle of the heartbeat packet, and tcpTimeout/sendFreq is the first ratio.
Terminal equipment in the queue with the double linked list structure is grouped according to the calculated grouping quantity, network connection management can be carried out on the terminal equipment by grouping, the memory of a server and the time slicing of a central processing unit (Central Processing Unit, CPU) are saved, and the network connection management efficiency is improved.
S13, acquiring a current speed factor.
Based on the foregoing, in an exemplary embodiment of the present invention, the acquiring the current speed factor includes:
S131, acquiring the last total number of the terminal devices which can perform heartbeat connection detection in the last doubly linked list structure queue;
s132, calculating a second ratio of the current total number to the previous total number;
s133, determining the current speed factor based on the second ratio.
In an exemplary embodiment of the present invention, the current speed factor may be calculated using the following formula:
speed = int(round (connNum / sendLast));(2)
wherein connNum represents the current total number, sendLast represents the last total number, connNum/sendLast represents the second ratio, round (connNum/sendLast) represents rounding the second ratio, and int (round (connNum/sendLast)) represents rounding the rounding result, i.e. the current speed factor is the rounding result of the rounding result.
And S14, calculating the number N of the terminal devices currently performing heartbeat connection detection based on the total number, the grouping number and the current speed factor.
In an exemplary embodiment of the present invention, the number N of terminal devices currently performing heartbeat connection detection may be calculated using the following formula:
N= (1 + connNum / groupNum)* speed;(3)
when the heartbeat connection detection is carried out, the heartbeat connection detection of the terminal equipment is carried out in batches, the number of the terminal equipment which needs to carry out the heartbeat connection detection each time is determined according to a certain algorithm, the terminal equipment can be grouped, and the heartbeat packets are sent in batches, so that the fluctuation of hardware resources caused by excessive concentration of calculation force is avoided, the calculation efficiency is improved, and the resource utilization rate is improved.
In step S2, identification information of N terminal devices is obtained from the tail of the doubly linked list structure queue.
In an exemplary embodiment of the present invention, the network connection at the tail of the queue with the doubly linked list structure has the longest validity period all the time, gradually decreases forward, and has the shortest head. Therefore, the terminal equipment which is most needed for heartbeat connection detection can be guaranteed to be arranged at the last tail part, so that the terminal equipment which is most needed for heartbeat connection detection is processed first. Therefore, each time the heartbeat connection is detected, the identification information of the N terminal devices is obtained from the tail part of the doubly linked list structure queue.
In step S3, heartbeat connection detection is performed on the N terminal devices according to the identification information of the N terminal devices, and the identification information of the N terminal devices is removed from the doubly linked list structure queue.
In an exemplary embodiment of the present invention, heartbeat packets may be sent to the N terminal devices according to the IP addresses and port information of the N terminal devices, respectively, so as to perform heartbeat connection detection on the N terminal devices by using identification information of the N terminal devices.
Further, after the heartbeat packet is sent to the N terminal devices, the IP addresses, port information, and other representations of the N terminal devices are newly removed from the doubly linked list structure queue, so as to dynamically adjust the doubly linked list structure queue.
In step S4, after performing heartbeat connection detection on the N terminal devices, target identification information of a target terminal device that maintains network connection in the N terminal devices is obtained, and the target identification information is inserted into the head of the doubly linked list structure queue.
In an exemplary embodiment of the present invention, a heartbeat packet is sent to the N terminal devices, if a response message of a target terminal device in the N terminal devices is received within a preset duration, it is determined that the target terminal device maintains network connection, target identification information of the target terminal device is obtained from the response message, and the target identification information is inserted into a head of the doubly linked list structure queue. Since the N terminal devices at the tail of the doubly linked list structure queue just perform heartbeat connection detection, the connection validity period of the N terminal devices can be started from new, so that the connection validity period of the N terminal devices is longest, and further, the identification information of the target terminal device which keeps network connection in the N terminal devices can be inserted into the head of the doubly linked list structure queue.
Here, the validity period may be set in advance for all the terminal devices in the doubly linked list data structure queue. If the connection validity period of the terminal device a located at the tail of the queue with the doubly linked list structure is close before the identification information of the N terminal devices is obtained, as shown in fig. 2, a heartbeat packet may also be generated for the terminal device a alone, so as to perform heartbeat connection detection on the terminal device a. If it is determined that the network connection is maintained by the A, the identification information of the A is inserted into the head of the queue with the double linked list structure. Further, after the identification information of A is inserted into the queue of the doubly linked list structure, the number N of the terminal devices which are currently subjected to heartbeat connection detection is obtained. For example, as shown in fig. 2, if the determined N is 3, heartbeat packets are generated to the three terminal devices D, C and B at the tail of the current doubly linked list structure queue, so as to perform heartbeat connection detection on D, C and B.
Further, after heartbeat connection detection is performed on pairs D, C and B, pairs D, C and B are removed from the doubly linked list structure queue, and at this time, Z … F and E are located at the tail of the doubly linked list structure queue. And then continuously acquiring the number N of the terminal devices performing heartbeat connection detection at the moment, and performing heartbeat connection detection on the N terminal devices. And circularly executing the steps, and detecting heartbeat connection of all the terminal devices in the doubly linked list structure queue.
Based on the foregoing, in an exemplary embodiment of the present invention, the method further includes:
s15, when a network connection request of the first terminal equipment is received, first identification information of the first terminal equipment is inserted into the head of a doubly linked list structure queue, and the network connection request comprises the first identification information.
In an exemplary embodiment of the present invention, when the server receives a network connection request of a first terminal device, the server may establish a network connection with the first terminal device according to first identification information in the network connection request, and insert the first identification information of the first terminal device into a head of a doubly linked list structure queue. Since the server has just established a network connection with the first terminal device. Therefore, the connection validity period of the first terminal device just begins, so that the connection validity period of the first terminal device is longest at the moment, and the first identification information of the first terminal device can be inserted into the head of the doubly linked list structure queue.
Based on the foregoing, the inserting the first identification information of the first terminal device into the head of the doubly linked list structure queue includes:
s151, determining a third terminal device positioned at the head of the doubly linked list structure queue;
s152, pointing the next pointer of the head of the doubly linked list structure queue to the first terminal equipment;
s153, the last pointer of the first terminal equipment points to the head of the queue with the double-linked list structure, and the next pointer of the first terminal equipment points to the third terminal equipment.
In an exemplary embodiment of the present invention, as shown in fig. 3, the terminal devices from the Head to the Tail in the doubly linked list structure queue are A, B and C, respectively, if a is located at the Head of the doubly linked list structure queue, and if a first terminal device Z establishes a network connection with a server at this time, a next pointer at the Head of the doubly linked list structure queue and a previous pointer at a are pointed to the first terminal device Z, a previous pointer at the first terminal device Z is pointed to the Head of the doubly linked list structure queue, and a next pointer at the first terminal device Z is pointed to a.
Based on the foregoing, in an exemplary embodiment of the present invention, after receiving the network connection request of the first terminal device, the method further includes:
S154, starting a mutual exclusion lock;
s155, after the first identification information is determined to be inserted into the head of the doubly-linked list structure queue, the mutual exclusion lock is released.
In an exemplary embodiment of the present invention, after receiving a network connection request of a first terminal device, and establishing connection with the first terminal device according to first identification information of the first terminal device in the network connection request, a server starts a mutual exclusion lock, and then inserts the first identification information into a head of a doubly linked list structure queue in the above manner. And after the first identification information is determined to be inserted into the head of the queue with the double linked list structure, the mutual exclusion lock is released.
After the mutual exclusion lock is started, the first identification information is inserted into the head of the doubly-linked list structure queue, and after the first identification information is determined to be inserted into the head of the doubly-linked list structure queue, the mutual exclusion lock is released, so that only one data read-write entry exists at the same moment, the problem that data loss is caused by the fact that the identification information of other terminal equipment needs to be inserted into the head of the doubly-linked list structure queue when the terminal equipment and a server are newly connected at the same moment is avoided, and the safety of data operation can be guaranteed.
In an exemplary embodiment of the present invention, based on the foregoing, in an exemplary embodiment of the present invention, the foregoing method further includes:
s16, deleting the second identification information of the second terminal equipment from the doubly linked list structure queue when the network connection with the second terminal equipment is determined to be disconnected.
In an exemplary embodiment of the present invention, if the user closes an application running on the second terminal device, and causes the server to disconnect from the second terminal device, the second identification information of the second terminal device is deleted from the doubly linked list structure queue. In an exemplary embodiment of the present invention, if the server does not receive the data returned by the second terminal device according to the first application data within a preset duration after the server sends the first application data to the second terminal device, the server determines to disconnect the network from the second terminal device.
Based on the foregoing, in an exemplary embodiment of the present invention, the deleting the second identification information of the second terminal device from the doubly linked list structure queue includes:
s161, determining a fourth terminal device pointed by a previous pointer of the second terminal device;
S162, determining a fifth terminal device pointed by a next pointer of the second terminal device;
s163, the next pointer of the fourth terminal device is pointed to the fifth terminal device, and the last pointer of the fifth terminal device is pointed to the fourth terminal device.
In an exemplary embodiment of the present invention, as shown in fig. 4, in the queue with the doubly linked list structure, the terminal devices from the Head to the Tail are A, B, E and C, respectively, and if the second terminal device E is disconnected from the network at this time, the fourth terminal device pointed to by the last pointer of the second terminal device E is B, and the fourth terminal device pointed to by the next pointer of the second terminal device E is C. And the next pointer of B is pointed to C, and the previous pointer of C is pointed to B, so that the second terminal equipment E is deleted from the doubly linked list structure queue.
It should be noted that, as shown in fig. 2, if the server determines that the network connection is disconnected with a terminal device a near the connection validity period at the tail of the doubly linked list structure queue is B when performing heartbeat connection detection, the terminal device pointed by the last pointer of a points to the tail of the doubly linked list structure queue, and points to the last pointer at the tail of the doubly linked list structure queue to B, so as to complete deletion of a from the doubly linked list structure queue.
Based on the foregoing, in an exemplary embodiment of the present invention, after determining that the network is disconnected from the second terminal device, the method further includes:
s163, starting a mutual exclusion lock;
s164, after the second identification information is deleted from the doubly linked list structure queue, the mutual exclusion lock is released.
In an exemplary embodiment of the present invention, after determining that the network connection with the second terminal device is disconnected, the server starts the mutual exclusion lock, and then deletes the second identification information from the doubly linked list structure queue in the above manner. And after determining that the second identification information is deleted from the doubly linked list structure queue, releasing the mutual exclusion lock.
By deleting the second identification information from the doubly-linked list structure queue after the mutual exclusion lock is started and releasing the mutual exclusion lock after the second identification information is deleted from the doubly-linked list structure queue, only one data read-write entry is ensured to exist at the same time, the problem that the identification information of other terminal equipment needs to be deleted from the doubly-linked list structure queue when the terminal equipment and a server are disconnected at the same time, and the second identification information cannot be deleted from the doubly-linked list structure queue due to the fact that the terminal equipment and the server are required to be disconnected at the same time is avoided, and the accuracy of data operation can be ensured.
In summary, according to the heartbeat connection detection method disclosed by the invention, on one hand, the identification information of the heartbeat connection detection terminal equipment is stored by adopting the data structure of the doubly linked list, so that the elimination of the queue elements and the repair efficiency of the queue can be ensured to be high enough, the frequent deletion and variation of the elements in the queue can be adapted, the network connection state of each terminal equipment can be adjusted at any time, and the network connection management efficiency is improved; on the other hand, the terminal equipment newly establishing network connection is arranged at the forefront of the queue, so that the fact that the validity period of the network connection is longest in the whole can be met, and the operation speed can be stabilized; in the third aspect, by using the mutual exclusion lock, only one data read-write entry exists at the same time, so that the safety and accuracy of data operation are greatly improved; in addition, when the heartbeat connection detection is carried out, the heartbeat connection detection of the terminal equipment is carried out in batches, the number of the terminal equipment which needs to carry out the heartbeat connection detection each time is determined according to a certain algorithm, the terminal equipment can be grouped, and the heartbeat packets are sent in batches, so that the fluctuation of hardware resources caused by excessive concentration of calculation force is avoided, the calculation efficiency is improved, and the resource utilization rate is improved.
Having described the heartbeat connection detection method of the exemplary embodiment of the present invention, next, a heartbeat connection detection device of the exemplary embodiment of the present invention is described with reference to fig. 5.
Referring to fig. 5, the heartbeat link detection device 50 of the exemplary embodiment of the present invention may include: a device number acquisition module 501, an identification information acquisition module 502, a heartbeat connection detection module 503, and a target terminal device insertion module 504; wherein,
the device number obtaining module 501 is configured to determine the number N of terminal devices currently performing heartbeat connection detection, where N is an integer greater than 1;
the identification information obtaining module 502 is configured to obtain identification information of N terminal devices from a tail of the queue with a doubly linked list structure;
a heartbeat connection detection module 503, configured to perform heartbeat connection detection on N terminal devices according to identification information of the N terminal devices, and remove the identification information of the N terminal devices from the doubly linked list structure queue;
and the target terminal device inserting module 504 is configured to insert, after performing heartbeat connection detection on the N terminal devices, identification information of a target terminal device that maintains network connection in the N terminal devices into a head of the doubly linked list structure queue.
In an exemplary embodiment of the present invention, the device number acquisition module includes:
the current total number obtaining unit is used for obtaining the current total number of the terminal equipment capable of performing heartbeat connection detection in the current doubly-linked list structure queue;
a packet number obtaining unit, configured to obtain the number of packets in the current doubly linked list structure queue;
the current speed factor acquisition unit is used for acquiring the current speed factor;
and the equipment number acquisition unit is used for calculating the number N of the terminal equipment currently performing heartbeat connection detection based on the total number, the grouping number and the current speed factor.
In an exemplary embodiment of the present invention, the packet number acquisition unit includes:
the first ratio calculating unit is used for calculating a first ratio of the survival effective duration of the network connection to the heartbeat packet sending period;
and a packet number acquisition subunit configured to determine the packet number based on the first ratio.
In an exemplary embodiment of the present invention, the current speed factor obtaining unit includes:
a last total number obtaining unit, configured to obtain a last total number of terminal devices capable of performing heartbeat connection detection in the last doubly linked list structure queue;
A second ratio calculating unit for calculating a second ratio of the current total number to the previous total number;
and the current speed factor obtaining subunit is used for determining the current speed factor based on the second ratio.
In an exemplary embodiment of the invention, the apparatus further comprises:
a first identification information insertion module for:
and when a network connection request of the first terminal equipment is received, inserting first identification information of the first terminal equipment into the head of a doubly linked list structure queue, wherein the network connection request comprises the first identification information.
In an exemplary embodiment of the present invention, the first identification information inserting module includes:
a third terminal device determining module, configured to determine a third terminal device located at a head of the doubly linked list structure queue;
a first terminal equipment pointing unit, configured to point a next pointer at a head of the doubly linked list structure queue and a previous pointer at the third terminal equipment to the first terminal equipment;
and the third terminal equipment pointing unit is used for pointing the last pointer of the first terminal equipment to the head of the doubly linked list structure queue and pointing the next pointer of the first terminal equipment to the third terminal equipment.
In an exemplary embodiment of the invention, the apparatus further comprises:
the first exclusive lock starting module is used for:
after receiving a network connection request of a first terminal device, starting a mutual exclusion lock;
and after the first identification information is determined to be inserted into the head of the doubly linked list structure queue, releasing the mutual exclusion lock.
In an exemplary embodiment of the invention, the apparatus further comprises:
a second identification information deleting module, configured to:
and deleting the second identification information of the second terminal equipment from the doubly linked list structure queue when the network connection with the second terminal equipment is disconnected.
In an exemplary embodiment of the invention, the
A second identification information deleting module, configured to:
a fourth terminal device determining module, configured to determine a fourth terminal device pointed by a previous pointer of the second terminal device;
a fifth terminal device determining module, configured to determine a fifth terminal device pointed by a next pointer of the second terminal device;
and the second identification information deleting unit is used for pointing the next pointer of the fourth terminal device to the fifth terminal device and pointing the last pointer of the fifth terminal device to the fourth terminal device.
In an exemplary embodiment of the invention, the apparatus further comprises:
the second exclusive lock starting module is used for:
after determining that the network connection with the second terminal equipment is disconnected, starting a mutual exclusion lock;
and after determining that the second identification information is deleted from the doubly linked list structure queue, releasing the mutual exclusion lock.
Since each functional module of the heartbeat connection detection device in the embodiment of the present invention is the same as that in the embodiment of the present invention of the heartbeat connection detection method, a detailed description thereof is omitted herein.
Having described the heartbeat connection detection method and the heartbeat connection detection device of the exemplary embodiment of the present invention, next, a storage medium of the exemplary embodiment of the present invention will be described with reference to fig. 6. Referring to fig. 6, a program product 600 for implementing the above-described method according to an embodiment of the present invention is described, which may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto, and in this document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable signal medium may include a data signal propagated in baseband or as part of a carrier wave with readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing. Program code for carrying out operations of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user computing terminal device, partly on the remote computing terminal device, or entirely on the remote computing terminal device or server. In the case of remote computing terminal devices, the remote computing terminal device may be connected to the user computing terminal device through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing terminal device (e.g., connected via the internet using an internet service provider).
Having described the storage medium of the exemplary embodiment of the present invention, next, an electronic device of the exemplary embodiment of the present invention will be described with reference to fig. 7.
The electronic device 70 shown in fig. 7 is merely an example and should not be construed as limiting the functionality and scope of use of embodiments of the present invention.
As shown in fig. 7, the electronic device 70 is in the form of a general purpose computing terminal device. Components of the electronic device 70 may include, but are not limited to: at least one processing unit 710, at least one memory unit 720, a bus 730 connecting the different system components, including the memory unit 720 and the processing unit 710, a display unit 740. Wherein the storage unit stores program code that is executable by the processing unit 710 such that the processing unit 710 performs steps according to various exemplary embodiments of the present invention described in the above-mentioned "exemplary methods" section of the present specification. For example, the processing unit 710 may perform steps S1 to S4 as shown in fig. 1.
The memory unit 720 may include volatile memory units such as a random access memory unit (RAM) 7201 and/or a cache memory unit 7202, and may further include a read only memory unit (ROM) 7203. The storage unit 720 may also include a program/utility 7204 having a set (at least one) of program modules 7205, such program modules 7205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
Bus 730 may include a data bus, an address bus, and a control bus.
The electronic device 70 may also communicate with one or more external devices 80 (e.g., keyboard, pointing device, bluetooth terminal device, etc.), which may be through an input/output (I/O) interface 750. The electronic device 70 also includes a display unit 740 that is connected to an input/output (I/O) interface 750 for display. Also, electronic device 70 may communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN) and/or a public network, such as the Internet, through network adapter 760. As shown, network adapter 760 communicates with other modules of electronic device 70 over bus 730. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with electronic device 70, including, but not limited to: microcode, end device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like. It should be noted that while several modules or sub-modules of the rate control device are mentioned in the detailed description above, such partitioning is merely exemplary and not mandatory. Indeed, the features and functionality of two or more units/modules described above may be embodied in one unit/module in accordance with embodiments of the present invention. Conversely, the features and functions of one unit/module described above may be further divided into ones that are embodied by a plurality of units/modules.
Furthermore, although the operations of the methods of the present invention are depicted in the drawings in a particular order, this is not required to either imply that the operations must be performed in that particular order or that all of the illustrated operations be performed to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step to perform, and/or one step decomposed into multiple steps to perform.
While the spirit and principles of the present invention have been described with reference to several particular embodiments, it is to be understood that the invention is not limited to the disclosed embodiments nor does it imply that features of the various aspects are not useful in combination, nor are they useful in any combination, such as for convenience of description. The invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
Claims (13)
1. A heartbeat connection detection method, comprising:
determining the number N of terminal equipment currently carrying out heartbeat connection detection, wherein N is an integer greater than 1;
acquiring identification information of N terminal devices from the tail of a doubly linked list structure queue;
performing heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue;
And after heartbeat connection detection is carried out on the N terminal devices, acquiring target identification information of target terminal devices which keep network connection in the N terminal devices, and inserting the target identification information into the head of the doubly linked list structure queue.
2. The method according to claim 1, wherein the determining the number N of terminal devices currently performing heartbeat connection detection comprises:
acquiring the current total number of the terminal devices capable of performing heartbeat connection detection in the current doubly-linked list structure queue;
acquiring the number of packets of the current doubly linked list structure queue;
acquiring a current speed factor;
and calculating the number N of the terminal devices currently performing heartbeat connection detection based on the total number, the grouping number and the current speed factor.
3. The method of claim 2, wherein the obtaining the number of packets in the doubly linked list structure queue comprises:
calculating a first ratio of the survival effective duration of the network connection to the heartbeat packet sending period;
a number of packets is determined based on the first ratio.
4. The method of claim 2, wherein the obtaining the current speed factor comprises:
Acquiring the last total number of the terminal devices which can perform heartbeat connection detection in the last doubly linked list structure queue;
calculating a second ratio of the current total number to the previous total number;
the current speed factor is determined based on the second ratio.
5. The method according to claim 1, wherein the method further comprises:
and when a network connection request of the first terminal equipment is received, inserting first identification information of the first terminal equipment into the head of a doubly linked list structure queue, wherein the network connection request comprises the first identification information.
6. The method of claim 5, wherein inserting the first identification information of the first terminal device into the head of the doubly linked list structure queue comprises:
determining a third terminal device positioned at the head of the doubly linked list structure queue;
the next pointer of the head of the doubly linked list structure queue and the previous pointer of the third terminal equipment are pointed to the first terminal equipment;
and pointing the last pointer of the first terminal equipment to the head of the queue with the double-linked list structure, and pointing the next pointer of the first terminal equipment to the third terminal equipment.
7. The method of claim 5, wherein upon receiving the network connection request of the first terminal device, the method further comprises:
starting a mutual exclusion lock;
and after the first identification information is determined to be inserted into the head of the doubly linked list structure queue, releasing the mutual exclusion lock.
8. The method according to claim 1, wherein the method further comprises:
and deleting the second identification information of the second terminal equipment from the doubly linked list structure queue when the network connection with the second terminal equipment is disconnected.
9. The method of claim 8, wherein the deleting the second identification information of the second terminal device from the doubly linked list structure queue comprises:
determining a fourth terminal device pointed by a previous pointer of the second terminal device;
determining a fifth terminal device pointed by a next pointer of the second terminal device;
and pointing the next pointer of the fourth terminal device to the fifth terminal device, and pointing the last pointer of the fifth terminal device to the fourth terminal device.
10. The method of claim 8, wherein after determining to disconnect from the network the second terminal device, the method further comprises:
Starting a mutual exclusion lock;
and after determining that the second identification information is deleted from the doubly linked list structure queue, releasing the mutual exclusion lock.
11. A heartbeat connection detection device, comprising:
the equipment number acquisition module is used for determining the number N of the terminal equipment for heartbeat connection detection at present, wherein N is an integer greater than 1;
the identification information acquisition module is used for acquiring the identification information of N terminal devices from the tail of the queue of the doubly linked list structure;
the heartbeat connection detection module is used for carrying out heartbeat connection detection on N pieces of terminal equipment according to the identification information of the N pieces of terminal equipment, and removing the identification information of the N pieces of terminal equipment from the doubly linked list structure queue;
and the target terminal equipment inserting module is used for inserting the identification information of the target terminal equipment which keeps network connection in the N terminal equipment into the head of the doubly linked list structure queue after the heartbeat connection detection is carried out on the N terminal equipment.
12. An electronic device, comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the heartbeat connection detection method as claimed in any one of claims 1 to 10.
13. A computer readable storage medium, characterized in that instructions in the computer readable storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the heartbeat connection detection method according to any one of claims 1 to 10.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311361185.4A CN117118876B (en) | 2023-10-20 | 2023-10-20 | Heartbeat connection detection method and device, electronic equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311361185.4A CN117118876B (en) | 2023-10-20 | 2023-10-20 | Heartbeat connection detection method and device, electronic equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117118876A CN117118876A (en) | 2023-11-24 |
CN117118876B true CN117118876B (en) | 2024-03-08 |
Family
ID=88796921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311361185.4A Active CN117118876B (en) | 2023-10-20 | 2023-10-20 | Heartbeat connection detection method and device, electronic equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117118876B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254179A (en) * | 2016-08-05 | 2016-12-21 | 深圳先进技术研究院 | A kind of heartbeat packet asynchronous controlling method and device |
CN106506253A (en) * | 2016-09-08 | 2017-03-15 | 深圳先进技术研究院 | A system and method for counting the number of online clients based on TCP/IP communication protocol |
CN111343218A (en) * | 2018-12-18 | 2020-06-26 | 杭州光启人工智能研究院 | Data sending and receiving method based on heartbeat message, storage medium and processor |
CN112394886A (en) * | 2021-01-21 | 2021-02-23 | 全时云商务服务股份有限公司 | Client heartbeat renewal and expiration detection method, device and computer readable medium |
CN113596619A (en) * | 2021-06-22 | 2021-11-02 | 深圳市泛海数据科技有限公司 | Fire-fighting Internet of things multi-device state judgment method, device, equipment and storage medium |
CN115665016A (en) * | 2022-09-27 | 2023-01-31 | 北京二六三企业通信有限公司 | Heartbeat monitoring method, device, equipment and storage medium |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7412454B2 (en) * | 2003-09-03 | 2008-08-12 | International Business Machines Corporation | Data structure supporting random delete and timer function |
-
2023
- 2023-10-20 CN CN202311361185.4A patent/CN117118876B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254179A (en) * | 2016-08-05 | 2016-12-21 | 深圳先进技术研究院 | A kind of heartbeat packet asynchronous controlling method and device |
CN106506253A (en) * | 2016-09-08 | 2017-03-15 | 深圳先进技术研究院 | A system and method for counting the number of online clients based on TCP/IP communication protocol |
CN111343218A (en) * | 2018-12-18 | 2020-06-26 | 杭州光启人工智能研究院 | Data sending and receiving method based on heartbeat message, storage medium and processor |
CN112394886A (en) * | 2021-01-21 | 2021-02-23 | 全时云商务服务股份有限公司 | Client heartbeat renewal and expiration detection method, device and computer readable medium |
CN113596619A (en) * | 2021-06-22 | 2021-11-02 | 深圳市泛海数据科技有限公司 | Fire-fighting Internet of things multi-device state judgment method, device, equipment and storage medium |
CN115665016A (en) * | 2022-09-27 | 2023-01-31 | 北京二六三企业通信有限公司 | Heartbeat monitoring method, device, equipment and storage medium |
Non-Patent Citations (1)
Title |
---|
基于心跳行为分析的木马快速检测方法;孟磊;刘胜利;刘龙;陈嘉勇;孙海涛;;计算机工程(14);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117118876A (en) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7454662B2 (en) | Information transmission method, device, readable storage medium and electronic device | |
CN109710615B (en) | Database access management method, system, electronic device and storage medium | |
US9916275B2 (en) | Preventing input/output (I/O) traffic overloading of an interconnect channel in a distributed data storage system | |
US9167455B2 (en) | Virtualized wireless communication system and establishing method thereof | |
CN112433920B (en) | A method, device, equipment and medium for reporting buried data | |
CN114500633B (en) | Data forwarding method, related device, program product and data transmission system | |
CN112039722B (en) | MQTT protocol simulation method and simulation equipment | |
EP3465450B1 (en) | Improving throughput in openfabrics environments | |
CN114866533A (en) | File uploading method and device and electronic equipment | |
CN111404842A (en) | Data transmission method, device and computer storage medium | |
CN117118876B (en) | Heartbeat connection detection method and device, electronic equipment and storage medium | |
CN118400303A (en) | Network detection method and device, electronic equipment and storage medium | |
US10628242B1 (en) | Message stream processor microbatching | |
CN115437794B (en) | I/O request scheduling method and device, electronic equipment and storage medium | |
CN112416509B (en) | Virtual machine control system and related equipment | |
CN110677463B (en) | Parallel data transmission method, device, medium and electronic equipment | |
CN112685226B (en) | Method, device and computer readable medium for backing up data | |
US10819622B2 (en) | Batch checkpointing for inter-stream messaging system | |
CN112615916A (en) | File deployment method and device, electronic equipment and storage medium | |
CN111210505A (en) | 3D model loading method, server, storage medium and processor | |
CN118643031B (en) | Financial data processing method and device, electronic equipment and processing medium | |
CN111865675B (en) | Container receiving and dispatching speed limiting method, device and system | |
CN113132324B (en) | Sample identification method and system | |
US20230236795A1 (en) | Data processing method implemented at edge switch, electronic device, and program product | |
CN114064362B (en) | Data recovery method, system and computer readable storage medium for distributed storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |