CN113613348A - Connection establishing method and device, electronic equipment and storage medium - Google Patents

Connection establishing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113613348A
CN113613348A CN202110919622.4A CN202110919622A CN113613348A CN 113613348 A CN113613348 A CN 113613348A CN 202110919622 A CN202110919622 A CN 202110919622A CN 113613348 A CN113613348 A CN 113613348A
Authority
CN
China
Prior art keywords
access point
time
connection
candidate
target
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.)
Granted
Application number
CN202110919622.4A
Other languages
Chinese (zh)
Other versions
CN113613348B (en
Inventor
翁祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202110919622.4A priority Critical patent/CN113613348B/en
Publication of CN113613348A publication Critical patent/CN113613348A/en
Application granted granted Critical
Publication of CN113613348B publication Critical patent/CN113613348B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The present disclosure relates to a connection establishing method, apparatus, electronic device, and storage medium, the method comprising: determining a candidate access point set, wherein the candidate access point set comprises at least one access point; acquiring the processing time consumption of the access point in the process of establishing connection of the access point; when the processing time consumption of a first access point in the candidate access point set reaches a first time threshold value, acquiring a new access point, wherein the first time threshold value is smaller than an automatic overtime limit value; and adding the new access point into the candidate access point set until a first target access point is determined from the candidate access point set, wherein the first target access point is used for successfully establishing connection with the server. By the method, the access point can supplement a new access point to participate in connection racing without waiting for an automatic overtime limit value, so that the whole connection establishment time can be completed in a short time, and the connection establishment efficiency is improved.

Description

Connection establishing method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of internet technologies, and in particular, to a connection establishing method and apparatus, an electronic device, a computer-readable storage medium, and a computer program product.
Background
The long connection is used as a bottom-layer uplink and downlink signaling channel of some application program platforms and is depended on by various services (such as private messaging, games, live broadcast and the like) of the upper layers of the application program platforms.
In the related art, in the long connection establishment phase, the client may select a certain number of access points from a group of access points configured in advance and start connection racing at the same time. When a certain access point is connected or the handshake reaches the automatic timeout limit (default 15 seconds), the client eliminates the access point, supplements a new access point, and enables the new access point to join in connection racing until the access point exists to enable the connection and handshake between the client and the server to be completed. However, in the manner of the related art, a new access point needs to be supplemented only after the access point connection or handshake reaches the automatic timeout limit, which causes a problem that the connection establishment takes a long time.
Disclosure of Invention
The present disclosure provides a connection establishment method, apparatus, electronic device, computer-readable storage medium, and computer program product, to at least solve the problem of long connection establishment time in the related art. The technical scheme of the disclosure is as follows:
according to a first aspect of the embodiments of the present disclosure, there is provided a connection establishment method, including:
determining a candidate access point set, wherein the candidate access point set comprises at least one access point;
acquiring the processing time consumption of the access point in the process of establishing the connection of the access point;
when the processing time consumption of a first access point in the candidate access point set reaches a first time length threshold value, acquiring a new access point, wherein the first time length threshold value is smaller than an automatic overtime limit value;
and adding the new access point to the candidate access point set until a first target access point is determined from the candidate access point set, wherein the first target access point is used for successfully establishing connection with a server.
In one embodiment, the acquiring a new access point when the processing time consumption for the first access point in the candidate access point set reaches a first time threshold includes:
when the processing time consumption of a first access point in the candidate access point set reaches the first time length threshold value, acquiring the number of access points in the candidate access point set;
and acquiring a new access point when the number of the access points does not reach a number threshold value.
In one embodiment, the method further comprises:
removing the first access point from the set of candidate access points when the processing elapsed time corresponding to the first access point reaches the automatic timeout limit value.
In one embodiment, the processing time is any one of connection establishment time and handshake time.
In one embodiment, after the determining the first target access point from the candidate access point set, the method further includes:
acquiring a second duration threshold;
and when determining that the second target access point successfully establishes the connection from the candidate access point set within the second time length threshold, determining an access point for data transmission from the first target access point and the second target access point.
In one embodiment, the determining an access point for data transmission from the first target access point and the second target access point includes:
acquiring a first time delay of the first target access point and a second time delay of the second target access point;
when the first time delay is larger than the second time delay, the second target access point is adopted for data transmission;
and when the second time delay is greater than or equal to the first time delay, the first target access point is adopted for data transmission.
In one embodiment, the obtaining the second duration threshold includes:
acquiring a first time delay of the first target access point;
and determining the second duration threshold according to the first time delay and a preset adjusting parameter value.
In one embodiment, the determining the second duration threshold according to the first time delay and a preset adjustment parameter value includes:
and acquiring the ratio of the first time delay to the preset adjusting parameter value as the second time length threshold.
According to a second aspect of the embodiments of the present disclosure, there is provided a connection establishment apparatus including:
a request sending module configured to perform determining a candidate access point set, the candidate access point set including at least one access point;
the time consumption acquisition module is configured to acquire the processing time consumption of the access point in the process of establishing the connection of the access point;
an access point acquisition module configured to acquire a new access point when the processing time consumption of a first access point in the candidate access point set reaches a first time threshold, wherein the first time threshold is smaller than an automatic timeout limit value;
a connection establishment module configured to perform adding the new access point to the set of candidate access points until a first target access point is determined from the set of candidate access points, the first target access point being used to successfully establish a connection with a server.
In one embodiment, the access point obtaining module includes:
a number acquisition unit configured to acquire the number of access points existing in the candidate access point set when the processing time consumption for existing of a first access point in the candidate access point set reaches the first time threshold;
an access point acquisition unit configured to perform acquisition of a new access point when the number of access points does not reach a number threshold.
In one embodiment, the apparatus further comprises:
an access point removal module configured to perform removal of the first access point from the set of candidate access points when the processing elapsed time corresponding to the first access point reaches the automatic timeout limit value.
In one embodiment, the processing time is any one of connection establishment time and handshake time.
In one embodiment, the apparatus further comprises:
a threshold acquisition module configured to perform acquisition of a second duration threshold;
an access point selection module configured to determine an access point for data transmission from the first target access point and the second target access point when it is determined that the second target access point successfully establishes a connection from the candidate access point set within the second duration threshold.
In one embodiment, the access point selection module includes:
a delay obtaining unit configured to perform obtaining a first delay of the first target access point and a second delay of the second target access point;
an access point selection unit configured to perform data transmission using the second target access point when the first time delay is greater than the second time delay; and when the second time delay is greater than or equal to the first time delay, the first target access point is adopted for data transmission.
In one embodiment, the threshold acquisition module is configured to perform acquisition of a first delay of the first target access point; and determining the second duration threshold according to the first time delay and a preset adjusting parameter value.
In one embodiment, the threshold obtaining module is configured to obtain a ratio of the first time delay to the preset adjustment parameter value as the second time duration threshold.
According to a third aspect of embodiments of the present disclosure, there is provided a computer program product comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the connection establishment method of any of the above first aspects.
According to a fourth aspect of embodiments of the present disclosure, there is provided a computer-readable storage medium, wherein instructions, when executed by a processor of an electronic device, enable the electronic device to perform the connection establishment method of any one of the above first aspects.
According to a fifth aspect of embodiments of the present disclosure, there is provided a computer program product, which includes instructions that, when executed by a processor of an electronic device, enable the electronic device to perform the connection establishment method of any one of the above first aspects.
The technical scheme provided by the embodiment of the disclosure at least brings the following beneficial effects:
and when the processing time consumption for establishing the connection between the access points in the candidate access point set reaches a first time length threshold value, acquiring a new access point, adding the new access point into the candidate access point set, and enabling the new access point to be connected with other access points in the candidate access point set in parallel for racing until the connection between the first target access point and the server is determined to be successfully established from the candidate access point set. By configuring the first time threshold in advance, wherein the first time threshold is smaller than the automatic timeout limit value, the access point can supplement a new access point to participate in connection racing without waiting for the automatic timeout limit value, so that the whole connection establishment time can be completed in a short time, and the connection establishment efficiency is improved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
Fig. 1 is a diagram illustrating an application environment for a connection establishment method according to an example embodiment.
Fig. 2 is a flow chart illustrating a method of connection establishment in accordance with an example embodiment.
Fig. 3 is a flow chart illustrating a method of connection establishment in accordance with an example embodiment.
Fig. 4a and 4b are schematic diagrams illustrating a comparison of establishing a connection according to an example embodiment.
Fig. 5a and 5b are schematic diagrams illustrating a comparison of establishing a connection according to an example embodiment.
Fig. 6 is a block diagram illustrating a connection establishment apparatus according to an example embodiment.
FIG. 7 is a block diagram illustrating an electronic device in accordance with an example embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
It should also be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for presentation, analyzed data, etc.) referred to in the present disclosure are both information and data that are authorized by the user or sufficiently authorized by various parties.
A connection establishment method in the related art is explained below.
In the related art, if connection is established between a client and a server for the first time in a current network, the client may randomly select n access points from a given set of access points, so that the n access points start connection racing in parallel, where n is any positive integer. In the connection racing process, whenever the client determines that the processing time consumption of one access point exceeds the automatic timeout limit value defined by the default of the transmission protocol of the access point, the client eliminates the access point, selects a new access point from a given group of access points and participates in the connection racing in parallel until a target access point exists, so that the connection and handshake between the client and the server are completed.
If the client and the server are not connected for the first time under the current network, the client acquires a target access point successfully connected for the last time from the database in the first round of connection racing stage, and the target access point is directly used for establishing connection with the server. And if the processing time consumption of the target access point exceeds the default automatic overtime limit value of the access point or the connection establishment of the target access point fails, the client enters a second round of connection racing stage. Randomly selecting n access points from the rest access points in a given group of access points, starting connection racing at the same time, and continuously executing the process of establishing connection for the first time until a new target access point exists to enable the connection and handshake between the client and the server to be completed.
In the related art, a new access point is supplemented only after the access point is connected or the handshake reaches the automatic timeout limit value, and the problem that the time for establishing the connection is long as the automatic timeout limit value is long generally exists. In addition, for non-initial connection establishment, as the connection and handshake time consumption index of each access point may change with time, when the index of the target access point becomes worse, there is no opportunity to supplement other access points in time to participate in connection racing, and the overall time consumption for connection establishment is also influenced.
In order to solve the above problem, the present disclosure provides a connection establishment method, which can be applied in an application environment as shown in fig. 1. Wherein the terminal 110 interacts with the server 120 through the network. The terminal 110 has an application installed therein. The application program can be, but is not limited to, a social type, an instant messaging type, an e-commerce type, a short video type and the like. An application platform is deployed in the server 120 to support the application. The terminal 110 is pre-configured with a set of access points. When the terminal 110 needs to establish a connection with the server 120, the terminal 110 acquires at least one access point from a group of access points, and constructs a candidate access point set. In the process of establishing connection between access points, the process of acquiring each access point by the terminal 110 is time-consuming. The processing elapsed time is compared to a first time threshold. And when the processing time consumption reaches a first time length threshold value, acquiring a new access point, adding the new access point into the candidate access point set, and enabling the new access point to participate in connection racing. The terminal 110 repeats the above process for the new access point until there is a first target access point in the set of candidate access points for successful connection establishment between the terminal 110 and the server 120.
The terminal 110 may be, but is not limited to, various personal computers, notebook computers, smart phones, tablet computers, and portable wearable devices. The server 120 may be implemented as a stand-alone server or a server cluster composed of a plurality of servers.
Fig. 2 is a flowchart illustrating a connection establishment method according to an exemplary embodiment, where the connection establishment method is used in a terminal, as shown in fig. 2, and includes the following steps.
In step S210, a set of candidate access points is determined.
The access point may be characterized by an IP (Internet Protocol) address, a port number, an access point identifier, and the like. The candidate access point set comprises at least one access point participating in connection racing. The at least one access point may be obtained by the client from a group of access points configured in advance according to a preset access point selection manner, for example, in a random selection manner, a designated order selection manner, and the like. The preconfigured access points may include access points under various Transmission protocols, for example, access points under Transmission protocols including TCP (Transmission Control Protocol), UDP (User Datagram Protocol), QUIC (Quick UDP Internet Connection, UDP-based low-latency Internet transport layer Protocol), and the like.
Specifically, when the client needs to establish connection with the server, the client acquires at least one access point from a group of access points configured in advance according to a preset access point selection mode to obtain a candidate access point set. The connection establishment in this embodiment may be a first connection establishment or a non-first connection establishment in the current network. The kind of connection established may be a short connection or a long connection.
In step S220, in the process of establishing connection by the access point, the process of acquiring the access point takes time.
The processing time can be characterized by any one of the connection establishment time, the handshake time and the like. When the access point needs to perform multiple connections and handshakes, the processing time consumption can be time consumption for each connection or time consumption for each handshake. By providing a plurality of processing time-consuming processes, the use flexibility of the connection established by the client and the compatibility of the client under different transmission protocols can be improved.
Specifically, the client sends data packets to the server through each access point, so that each access point can establish connection between the client and the server. In the process of establishing connection of each access point, the client acquires the current processing time of each access point in real time or in a timing manner.
In step S230, when the processing time consumption for the first access point in the candidate access point set reaches the first time length threshold, a new access point is acquired.
Wherein the first time threshold is less than the automatic timeout limit. The automatic timeout limit may refer to a time consuming limit defined by the transport protocol by default, e.g., for the TCP transport protocol, the access point connection is determined to timeout after a default connection or handshake exceeds 15 seconds. The first duration threshold may be a fixed value that is preconfigured, e.g., 2 seconds preconfigured; or a threshold value obtained according to the processed time consumed for several times in history, for example, a percentile value such as P95, P99.9, etc. is adopted. The P95 and the P99.9 are used for arranging the response time consumption of the server from small to large, the time consumption values sequentially at the 95% positions are P95 values, and the time consumption values sequentially at the 99.5% positions are P99.5 values.
The first access point refers to an access point which consumes the current processing time to reach a first time length threshold, and the number of the access points can be one or more. When the number of the first access points is one, acquiring a new access point corresponding to the first access point; when the number of the first access points is plural, a new access point corresponding to each first access point may be acquired.
A new access point may refer to an access point that has not yet participated in a connection race, and one or more new access points may be acquired for each first access point.
Specifically, after acquiring the processing time consumption of each access point, the client compares the processing time consumption with the first time length threshold. When the processing time for acquiring the existence of the first access point in each access point reaches the first time threshold, the client may acquire a new access point from a group of access points configured in advance or a backup access point configured in advance, and the like.
In step S240, the new access point is added to the candidate access point set until a first target access point is determined from the candidate access point set, where the first target access point is used to successfully establish a connection with the server.
Specifically, the client adds a new access point to the candidate access point set, updates the candidate access point set, and detects the processing time consumption of each access point in the current candidate access point set according to the contents of steps S210 to S230 until the first target access point exists in the candidate access point set, so that the connection between the client and the server is successfully established. The client can stop connecting the racing and use the first target access point to transmit data with the server.
In the connection establishing method, when the processing time consumption for establishing the connection of the access points in the candidate access point set reaches a first time length threshold value, a new access point is obtained, the new access point is added into the candidate access point set, and the new access point and other access points in the candidate access point set are connected in parallel for racing until the connection between the first target access point and the server is determined to be successfully established from the candidate access point set. The first time length threshold value is configured in advance, and the first time length threshold value is smaller than the automatic timeout limit value. The access point can supplement a new access point to participate in connection racing without waiting for an automatic overtime limit value, so that the whole connection establishment time can be completed in a short time, and the connection establishment efficiency is improved.
In an exemplary embodiment, in step S220, when the processing time consumption for the first access point existing in the candidate access point set reaches the first time threshold, acquiring a new access point includes: when the processing time consumption of a first access point in the candidate access point set reaches a first time length threshold value, acquiring the number of access points of the access points in the candidate access point set; and when the number of the access points does not reach the number threshold value, acquiring a new access point.
The number threshold refers to the maximum value of the access points that can be accommodated in the candidate access point set. The quantity threshold may be a pre-configured fixed value, for example, 10 pre-configured quantity thresholds; the dynamic change value may be obtained according to the operating condition of the server, for example, a mapping relationship between the response time and the threshold value is established in advance. And searching for a threshold corresponding to the current response time from the mapping relation to be used as a current quantity threshold.
Specifically, when the processing time consumption of each time the client determines that the first access point exists reaches a first time threshold, the client acquires the number of access points currently existing in the candidate access point set. The number of acquired access points is compared to a number threshold. And when the number of the access points is smaller than the number threshold, acquiring a new access point, and adding the new access point into the candidate access point set. Accordingly, when the number of access points is greater than or equal to the number threshold, the client stops acquiring new access points.
Illustratively, the current candidate access point set includes three access points, access point 1, access point 2, and access point 3. It is determined that access point 1 is the first access point. If the number threshold is 10, the client may acquire a new access point 4, and add the access point 4 to the candidate access point set, so that the candidate access point set includes 4 access points. If the number threshold is 3, the client stops acquiring a new access point.
In the embodiment, by configuring the number threshold of the access points, a plurality of access points can perform connection racing in the same time period, so that the success rate and the efficiency of connection establishment are improved; in addition, by controlling the maximum number of access points which are simultaneously used for connection racing, the excessive operation pressure brought to the server can be avoided.
In an exemplary embodiment, the method further comprises: and when the processing time corresponding to the first access point reaches the automatic timeout limit value, removing the first access point from the candidate access point set.
Specifically, after the client determines that the processing time consumption of the first access point reaches the first time threshold, the client may enable the first access point to continue to establish connection between the client and the server until the current processing time consumption of the client acquiring the first access point reaches the automatic timeout limit value, or the acquisition of the first access point fails to establish connection. The client removes the first access point from the set of candidate access points to eliminate the first access point.
In this embodiment, after it is determined that the processing time consumption of the access point reaches the first time length threshold, the first access point continues to be connected and established on the premise of supplementing a new access point, and the number of access points which are connected simultaneously can be increased without significantly increasing the server pressure, thereby improving the connection establishment success rate and efficiency.
In an exemplary embodiment, after determining the first target access point from the candidate access point set in step S240, the method further includes: acquiring a second duration threshold; and when the second target access point is determined to be successfully established with the network connection from the candidate access point set within the second time threshold, determining the access point for data transmission from the first target access point and the second target access point.
The second duration threshold may be a preset fixed value, for example, the second duration threshold is configured to be 30 milliseconds; or a dynamic value obtained according to the current operating condition of the server, for example, a mapping relationship between the time delay and the time duration threshold is established in advance. And searching the mapping relation to obtain a time length threshold value corresponding to the current time delay, and taking the threshold value as a second time length threshold value.
Specifically, when there are multiple access points under the transmission protocol in a group of preconfigured access points, in the related art, in each connection racing stage, access points may be sequentially selected from the access points corresponding to each transmission protocol, so that the access points under each transmission protocol have the same opportunity to establish a connection. For example, where there are two transport protocols, TCP and QUIC, then the access points may be selected in the order of QUIC-1, TCP-1, QUIC-2, TCP-2, … QUIC-n, TCP-n, thereby ensuring that each connection race phase, the access points under each transport protocol have an opportunity to participate in the connection race. However, since the starting time of establishing the connection by each access point is in turn, the access points under each transmission protocol cannot participate in connection competition fairly by the method in the sampling related technology, and thus, the access points with better performance cannot be obtained.
In view of the above problem, in this embodiment, after the client acquires the first target access point and successfully establishes the connection, the first target access point may not be immediately used for data transmission. And the client continuously enables other access points except the first target access point in the candidate access point set to conduct connection racing. And if the second target access point is acquired within a second time threshold from the first target access point is determined, so that the client and the server are successfully connected, selecting one of the first target access point and the second target access point as the access point for finally performing data transmission according to a preset access point determination mode. Wherein, the number of the second target access points can be one or more. The preset access point determination mode can be random selection, selection of an access point with better performance and the like.
Further, if the second target access point is not acquired within a second time threshold from the first target access point being determined, so that the client and the server are successfully connected, the client uses the first target access point as the access point for finally performing data transmission.
In this embodiment, after the access points successfully connected are obtained for the first time, more access points successfully connected are obtained by using the access point determination strategy based on the delay determination, and one access point is selected from all the access points successfully connected as the access point for subsequent data transmission, so that the race fairness among the access points can be improved.
In an exemplary embodiment, determining an access point for data transmission from a first target access point and a second target access point includes: acquiring a first time delay of a first target access point and a second time delay of a second target access point; when the first time delay is larger than the second time delay, a second target access point is adopted for data transmission; and when the second time delay is greater than or equal to the first time delay, the first target access point is adopted for data transmission.
The delay can be characterized by using RTT (Round-Trip Time). Round-trip delay represents the total delay experienced from the time the sender (client) sends data to the time the sender receives an acknowledgement from the receiver (server).
Specifically, after determining that the second target access point is obtained within the second duration threshold, the client may obtain a first time delay corresponding to the first target access point and a second time delay corresponding to the second target access point. The client compares the first time delay with the second time delay. And when the first time delay is larger than the second time delay, a second target access point is adopted to establish a communication channel between the client and the server, so that the client and the server carry out data transmission through the second target access point. And when the first time delay is smaller than the second time delay, a communication channel is established between the client and the server by adopting the first target access point, so that the client and the server carry out data transmission through the first target access point. When the first time delay is equal to the second time delay, one of the first target access point and the second target access point may be randomly selected for data transmission.
In this embodiment, after the access points successfully connected are obtained for the first time, more access points successfully connected are obtained by adopting the delay judgment and the access point determination strategy based on the time delay, and one access point with smaller time delay is selected from all the access points successfully connected as the access point for the subsequent data transmission, so that the access point with better performance can be obtained from the access points, thereby being beneficial to optimizing the process of the subsequent data transmission.
In an exemplary embodiment, obtaining the second duration threshold includes: acquiring a first time delay of a first target access point; and determining a second duration threshold according to the first time delay and a preset adjusting parameter value.
The adjusting parameter value refers to a value for adjusting the first time delay. The adjustment parameter value may be a pre-configured fixed value; or a dynamically changing value determined according to the current server operating condition, for example, if the current server operating condition is better, an adjustment parameter value may be set, so that the second duration threshold is larger; if the current server is operating normally, an adjustment parameter value may be set such that the second duration threshold is smaller.
Specifically, the second duration threshold may be obtained based on the first delay of the first target node. And the client acquires the first time delay after acquiring the second time length threshold. And processing the first time delay and the adjusting parameter value based on a preset operation mode to obtain a second time length threshold value. For example, if the tuning parameter value is a fixed percentage, then the product of the first time delay and the percentage may be obtained as the second time duration threshold. If the adjustment parameter value is a fixed value, the ratio of the first time delay to the adjustment parameter value can be obtained as the second time duration threshold. If the adjusting parameter value is an adjusting time delay value determined according to the current operation condition of the server, the difference between the first time delay and the adjusting time delay value can be obtained and used as a second time length threshold value.
In the embodiment, the time length threshold value of the client for continuously waiting is determined based on the time delay of the access point which is successfully connected for the first time, so that the waiting time length of the client is more consistent with the time delay characteristic of the access point, and more reasonable waiting time length can be provided.
Fig. 3 is a flowchart illustrating a connection establishment method according to an exemplary embodiment, where the connection establishment method is applied to a terminal and includes the following steps.
In step S302, when the client needs to establish a long connection with the server, a preset number of access points are obtained from a group of access points configured in advance, and the preset number of access points are added to the candidate access point set.
The access points with the preset number can be determined according to the connection establishment times under the current network. For example, if a connection is first established in the current network, multiple access points may be acquired from a group of access points in a random or interspersed order according to the transmission protocol as mentioned in the above embodiments. If the connection is not established for the first time under the current network, the last access point finally used at the current time can be obtained.
In step S304, in the process of establishing connection by the access point, the process of acquiring the access point takes time. The processing time can be characterized by any one of the connection establishment time and the handshake time.
In step S306, when the processing time consumption for the first access point existing in the candidate access point set reaches the first time length threshold, the number of access points currently existing in the candidate access point set is obtained. Wherein the first duration threshold may be determined using a P95 percentile value (e.g., 1 second).
In step S308, when the number of access points does not reach the number threshold, a new access point is randomly acquired from the alternative access point list. Adding the new access point to the set of candidate access points. Wherein, the number threshold may be 10. Correspondingly, when the number of the access points reaches the number threshold, the acquisition of a new access point is stopped, and the access points in the current candidate access point set are continuously used for connection establishment.
Further, for the first access point, the first access point may continue to perform connection racing until the processing time corresponding to the first access point reaches the automatic timeout limit value, and the first access point is removed from the candidate access point set.
Further, for the non-first-time connection establishment of the current network, when the processing time consumption of the access point which is successfully connected last time reaches the first time threshold value, a new access point can be immediately supplemented. However, for the subsequent connection racing process, when the processing time of each access point reaches the automatic timeout limit value, a new access point can be supplemented, and the access point reaching the automatic connection limit value can be removed from the candidate access point set. In this way, fewer access points can be used for non-first-time connection establishment procedures, so that the pressure of long connection establishment on the server is reduced as a whole.
In step S310, it is determined whether a first target access point exists currently so that the client and the server are successfully connected, and if so, step S312 is continued; otherwise, repeating the steps S304-S310.
In step S312, a ratio of the first time delay of the first target access point and a preset adjustment parameter value is obtained as a second time duration threshold. The tuning parameter value may be 4.
In step S314, when the distance from the first target access point to the candidate access point set is within the second time threshold, the second target access point is determined from the candidate access point set, so that the client and the server successfully establish a connection, and then the second time delay of the second access point is obtained.
In step S316, an access point for data transmission is determined from the first target access point and the second target access point according to the first delay and the second delay. The specific determination may be made with reference to the above-described embodiments, and is not specifically described herein.
Fig. 4a and 4b are schematic diagrams illustrating comparison between determining the first target access point in the manner of the related art and in the manner of steps S302 to S310. Assuming that the connection is not a first connection, the processing time of the access points SP1-SP6 reaches the automatic timeout limit (e.g., 15 seconds) until the access point SP7 is successfully connected.
Fig. 4a is a schematic diagram illustrating the acquisition of the first target access point by the method in the related art, and as can be seen from fig. 4a, the acquisition of the SP7 takes 30 th second and the connection is completed takes 31 st second.
Fig. 4b shows a schematic diagram of obtaining the first target access point by the method in this embodiment, and as can be seen from fig. 4b, the SP7 can be obtained by waiting for the 6 th second and the connection can be completed by waiting for the 7 th second by adopting the method in this embodiment.
Fig. 5a and 5b are schematic diagrams showing two comparison methods of determining an access point to be finally used in the manner of steps S310 to S316 in the related art.
Fig. 5a shows a schematic comparison of different transmission protocols with the same start time. As shown in fig. 5a, the QUIC1 is the first target access point. In the manner of the related art, the QUIC1 is used for data transmission. However, in the present embodiment, the second preset time period is 40 milliseconds. While the QUIC1 completes the handshake first, the TCP access point also completes the handshake within the second duration threshold, i.e., at 180 milliseconds. And the handshake RTT (90ms) of the TCP access point is obviously smaller than the handshake RTT (160ms) of the QUIC1, and the TCP access point is finally adopted for data transmission.
Fig. 5b shows a schematic comparison of different start times for the same transmission protocol. As shown in fig. 5b, the QUIC1 is the first target access point. In the manner of the related art, the QUIC1 is used for data transmission. However, in the present embodiment, the second preset time period is 40 milliseconds. While the QUIC1 completed the handshake first, the QUIC2 also completed the handshake within the second duration threshold, i.e., at 180 milliseconds. And the handshake RTT (100ms) of the QUIC2 is significantly smaller than the handshake RTT (160ms) of the QUIC1, so that the QUIC2 will be used for data transmission finally.
It should be understood that, although the steps in the above-described flowcharts are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a part of the steps in the above-mentioned flowcharts may include a plurality of steps or a plurality of stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of performing the steps or the stages is not necessarily performed in sequence, but may be performed alternately or alternately with other steps or at least a part of the steps or the stages in other steps. It is understood that the same/similar parts between the embodiments of the method described above in this specification can be referred to each other, and each embodiment focuses on the differences from the other embodiments, and it is sufficient that the relevant points are referred to the descriptions of the other method embodiments.
Fig. 6 is a block diagram illustrating a connection establishment apparatus 600 according to an example embodiment. Referring to fig. 6, the apparatus includes a request sending module 602, a time-consuming acquiring module 604, an access point acquiring module 606, and a connection establishing module 608.
A request sending module 602 configured to perform determining a candidate access point set, the candidate access point set including at least one access point; a time consumption obtaining module 604, configured to obtain a processing time consumption of the access point in a process of establishing a connection with the access point; an access point obtaining module 606 configured to obtain a new access point when the processing time consumption of the first access point in the candidate access point set reaches a first time threshold, where the first time threshold is smaller than the automatic timeout limit value; a connection establishment module 608 configured to perform adding the new access point to the candidate set of access points until a first target access point is determined from the candidate set of access points, the first target access point being used to successfully establish a connection with the server.
In an exemplary embodiment, the access point obtaining module 606 includes: a number acquisition unit configured to acquire the number of access points existing in the candidate access point set when the processing time consumption for the first access point existing in the candidate access point set reaches a first time threshold; an access point acquisition unit configured to perform acquisition of a new access point when the number of access points does not reach a number threshold.
In an exemplary embodiment, the apparatus 600 further comprises: and the access point removing module is configured to remove the first access point from the candidate access point set when the processing time consumption corresponding to the first access point reaches an automatic timeout limit value.
In an exemplary embodiment, the processing time is any one of connection establishment time and handshake time.
In an exemplary embodiment, the apparatus 600 further comprises: a threshold acquisition module configured to perform acquisition of a second duration threshold; and the access point selection module is configured to determine an access point for data transmission from the first target access point and the second target access point when the second target access point is determined to be successfully connected from the candidate access point set within the second time length threshold.
In an exemplary embodiment, the access point selection module includes: a delay obtaining unit configured to perform obtaining a first delay of a first target access point and a second delay of a second target access point; the access point selection unit is configured to perform data transmission by adopting a second target access point when the first time delay is greater than the second time delay; and when the second time delay is greater than or equal to the first time delay, the first target access point is adopted for data transmission.
In an exemplary embodiment, the threshold acquisition module is configured to perform a first time delay for acquiring the first target access point; and determining a second duration threshold according to the first time delay and a preset adjusting parameter value.
In an exemplary embodiment, the threshold obtaining module is configured to obtain a ratio of the first time delay to a preset adjustment parameter value as the second time duration threshold.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Fig. 7 is a block diagram illustrating an electronic device Z00 for connection establishment, according to an example embodiment. For example, electronic device Z00 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, an exercise device, a personal digital assistant, and so forth.
Referring to fig. 7, electronic device Z00 may include one or more of the following components: a processing component Z02, a memory Z04, a power component Z06, a multimedia component Z08, an audio component Z10, an interface for input/output (I/O) Z12, a sensor component Z14 and a communication component Z16.
The processing component Z02 generally controls the overall operation of the electronic device Z00, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing component Z02 may include one or more processors Z20 to execute instructions to perform all or part of the steps of the method described above. Further, the processing component Z02 may include one or more modules that facilitate interaction between the processing component Z02 and other components. For example, the processing component Z02 may include a multimedia module to facilitate interaction between the multimedia component Z08 and the processing component Z02.
The memory Z04 is configured to store various types of data to support operations at the electronic device Z00. Examples of such data include instructions for any application or method operating on electronic device Z00, contact data, phonebook data, messages, pictures, videos, and the like. The memory Z04 may be implemented by any type or combination of volatile or non-volatile storage devices, such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk, optical disk, or graphene memory.
The power supply component Z06 provides power to the various components of the electronic device Z00. The power component Z06 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the electronic device Z00.
The multimedia component Z08 comprises a screen providing an output interface between the electronic device Z00 and the user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component Z08 includes a front facing camera and/or a rear facing camera. When the electronic device Z00 is in an operating mode, such as a shooting mode or a video mode, the front camera and/or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
The audio component Z10 is configured to output and/or input an audio signal. For example, the audio component Z10 includes a Microphone (MIC) configured to receive external audio signals when the electronic device Z00 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal may further be stored in the memory Z04 or transmitted via the communication component Z16. In some embodiments, the audio component Z10 also includes a speaker for outputting audio signals.
The I/O interface Z12 provides an interface between the processing component Z02 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor assembly Z14 includes one or more sensors for providing status assessment of various aspects to the electronic device Z00. For example, the sensor assembly Z14 may detect the open/closed state of the electronic device Z00, the relative positioning of the components, such as the display and keypad of the electronic device Z00, the sensor assembly Z14 may also detect a change in the position of the electronic device Z00 or electronic device Z00 components, the presence or absence of user contact with the electronic device Z00, the orientation or acceleration/deceleration of the device Z00, and a change in the temperature of the electronic device Z00. The sensor assembly Z14 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly Z14 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly Z14 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component Z16 is configured to facilitate wired or wireless communication between the electronic device Z00 and other devices. The electronic device Z00 may have access to a wireless network based on a communication standard, such as WiFi, a carrier network (such as 2G, 3G, 4G, or 5G), or a combination thereof. In an exemplary embodiment, the communication component Z16 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component Z16 further includes a Near Field Communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the electronic device Z00 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors, or other electronic components for performing the above-described methods.
In an exemplary embodiment, a computer readable storage medium is also provided, for example the memory Z04, comprising instructions executable by the processor Z20 of the electronic device Z00 to perform the above method. For example, the computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
In an exemplary embodiment, a computer program product is also provided, which comprises instructions executable by the processor Z20 of the electronic device Z00 to perform the above method.
In an exemplary embodiment, a computer program product is also provided, which comprises instructions executable by a processor of the electronic device Z00 to perform the above method.
It should be noted that the descriptions of the above-mentioned apparatus, the electronic device, the computer-readable storage medium, the computer program product, and the like according to the method embodiments may also include other embodiments, and specific implementations may refer to the descriptions of the related method embodiments, which are not described in detail herein.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (10)

1. A method for establishing a connection, comprising:
determining a candidate access point set, wherein the candidate access point set comprises at least one access point;
acquiring the processing time consumption of the access point in the process of establishing the connection of the access point;
when the processing time consumption of a first access point in the candidate access point set reaches a first time length threshold value, acquiring a new access point, wherein the first time length threshold value is smaller than an automatic overtime limit value;
and adding the new access point to the candidate access point set until a first target access point is determined from the candidate access point set, wherein the first target access point is used for successfully establishing connection with a server.
2. The method according to claim 1, wherein the acquiring a new access point when the processing time consumption of the first access point in the candidate access point set reaches a first time threshold comprises:
when the processing time consumption of a first access point in the candidate access point set reaches the first time length threshold value, acquiring the number of access points in the candidate access point set;
and acquiring a new access point when the number of the access points does not reach a number threshold value.
3. The connection establishment method according to claim 1, wherein the method further comprises:
removing the first access point from the set of candidate access points when the processing elapsed time corresponding to the first access point reaches the automatic timeout limit value.
4. The connection establishing method according to any one of claims 1 to 3, wherein the processing time is any one of connection establishing time and handshake time.
5. The connection establishment method according to any one of claims 1 to 3, further comprising, after the determining the first target access point from the set of candidate access points:
acquiring a second duration threshold;
and when determining that the second target access point successfully establishes the connection from the candidate access point set within the second time length threshold, determining an access point for data transmission from the first target access point and the second target access point.
6. The method according to claim 5, wherein the determining the access point for data transmission from the first target access point and the second target access point comprises:
acquiring a first time delay of the first target access point and a second time delay of the second target access point;
when the first time delay is larger than the second time delay, the second target access point is adopted for data transmission;
and when the second time delay is greater than or equal to the first time delay, the first target access point is adopted for data transmission.
7. A connection establishment apparatus, comprising:
a request sending module configured to perform determining a candidate access point set, the candidate access point set including at least one access point;
the time consumption acquisition module is configured to acquire the processing time consumption of the access point in the process of establishing the connection of the access point;
an access point acquisition module configured to acquire a new access point when the processing time consumption of a first access point in the candidate access point set reaches a first time threshold, wherein the first time threshold is smaller than an automatic timeout limit value;
a connection establishment module configured to perform adding the new access point to the set of candidate access points until a first target access point is determined from the set of candidate access points, the first target access point being used to successfully establish a connection with a server.
8. 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 connection establishment method of any one of claims 1 to 6.
9. A computer-readable storage medium, wherein instructions in the computer-readable storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the connection establishment method of any one of claims 1-6.
10. A computer program product comprising instructions which, when executed by a processor of an electronic device, enable the electronic device to perform the connection establishment method of any one of claims 1 to 6.
CN202110919622.4A 2021-08-11 2021-08-11 Connection establishment method, device, electronic equipment and storage medium Active CN113613348B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110919622.4A CN113613348B (en) 2021-08-11 2021-08-11 Connection establishment method, device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110919622.4A CN113613348B (en) 2021-08-11 2021-08-11 Connection establishment method, device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113613348A true CN113613348A (en) 2021-11-05
CN113613348B CN113613348B (en) 2023-08-29

Family

ID=78308220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110919622.4A Active CN113613348B (en) 2021-08-11 2021-08-11 Connection establishment method, device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113613348B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013097401A1 (en) * 2011-12-30 2013-07-04 华为技术有限公司 Method, gateway and communication system for browser client directly communicating with back-end server
CN108200140A (en) * 2017-12-26 2018-06-22 广东欧珀移动通信有限公司 The method for building up and relevant device of dedicated bearer
CN109040958A (en) * 2018-08-16 2018-12-18 Oppo广东移动通信有限公司 Method for connecting network, device, electronic equipment and computer readable storage medium
CN109088799A (en) * 2018-09-28 2018-12-25 腾讯科技(深圳)有限公司 A kind of user end inserting method, device, terminal and storage medium
CN109660411A (en) * 2019-02-25 2019-04-19 北京云中融信网络科技有限公司 A kind of method and device of optimization instant messaging network link connection
CN112040564A (en) * 2020-08-25 2020-12-04 北京大米科技有限公司 Information transmission method, readable storage medium and electronic device
CN112202927A (en) * 2020-11-13 2021-01-08 深圳市和讯华谷信息技术有限公司 Long connection establishing method and device, computer equipment and storage medium
CN112954069A (en) * 2021-03-15 2021-06-11 观脉科技(北京)有限公司 Method, device and system for accessing mobile equipment to SD-WAN (secure digital-Wide area network)

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013097401A1 (en) * 2011-12-30 2013-07-04 华为技术有限公司 Method, gateway and communication system for browser client directly communicating with back-end server
CN108200140A (en) * 2017-12-26 2018-06-22 广东欧珀移动通信有限公司 The method for building up and relevant device of dedicated bearer
CN109040958A (en) * 2018-08-16 2018-12-18 Oppo广东移动通信有限公司 Method for connecting network, device, electronic equipment and computer readable storage medium
CN109088799A (en) * 2018-09-28 2018-12-25 腾讯科技(深圳)有限公司 A kind of user end inserting method, device, terminal and storage medium
CN109660411A (en) * 2019-02-25 2019-04-19 北京云中融信网络科技有限公司 A kind of method and device of optimization instant messaging network link connection
CN112040564A (en) * 2020-08-25 2020-12-04 北京大米科技有限公司 Information transmission method, readable storage medium and electronic device
CN112202927A (en) * 2020-11-13 2021-01-08 深圳市和讯华谷信息技术有限公司 Long connection establishing method and device, computer equipment and storage medium
CN112954069A (en) * 2021-03-15 2021-06-11 观脉科技(北京)有限公司 Method, device and system for accessing mobile equipment to SD-WAN (secure digital-Wide area network)

Also Published As

Publication number Publication date
CN113613348B (en) 2023-08-29

Similar Documents

Publication Publication Date Title
US10098166B2 (en) Method and device for wireless connection establishment
CN106210797B (en) Network live broadcast method and device
CN106534953B (en) Video rebroadcasting method in live broadcast application and control terminal
CN109521918B (en) Information sharing method and device, electronic equipment and storage medium
WO2020097845A1 (en) Method and device for using network slice
CN109698794B (en) Congestion control method and device, electronic equipment and storage medium
EP4102798A1 (en) Communication processing method and device, terminal, server, and storage medium
JP2021150944A (en) Data transmission method and device based on mobile network, and storage medium
CN111294881A (en) Network link switching method and device, client and computer readable storage medium
US11483263B2 (en) Method and terminal for facilitating chat between users of two terminals
CN111010721A (en) Wireless network distribution method, wireless network distribution device and computer readable storage medium
CN110933773B (en) Link monitoring method and device
CN111246401B (en) Frequency changing method and device
CN112256380A (en) Interactive page display method and device, electronic equipment and storage medium
CN106792880B (en) Method and device for transmitting downlink data
CN110913276B (en) Data processing method, device, server, terminal and storage medium
CN113613348B (en) Connection establishment method, device, electronic equipment and storage medium
CN114286425A (en) Long connection establishing system, method and device, electronic equipment and storage medium
CN108401529B (en) System message acquisition method and device, and system message transmission method and device
CN110719598B (en) Data transmission method and device, electronic equipment and storage medium
CN108551459B (en) Method and device for communication between devices and readable storage medium
CN109792319B (en) Uplink transmission method and device
CN112769677A (en) Data synchronization method, data synchronization device, electronic equipment, storage medium and program product
CN114430370A (en) Method, device and equipment for determining network slice and storage medium
CN112449409B (en) Power control method of mobile terminal and power control device of mobile terminal

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