CN114666303A - DNS (Domain name System) scheduling method and device and computer equipment - Google Patents

DNS (Domain name System) scheduling method and device and computer equipment Download PDF

Info

Publication number
CN114666303A
CN114666303A CN202210273246.0A CN202210273246A CN114666303A CN 114666303 A CN114666303 A CN 114666303A CN 202210273246 A CN202210273246 A CN 202210273246A CN 114666303 A CN114666303 A CN 114666303A
Authority
CN
China
Prior art keywords
user
address
domain name
address list
mobile app
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
CN202210273246.0A
Other languages
Chinese (zh)
Other versions
CN114666303B (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.)
Vipshop Guangzhou Software Co Ltd
Original Assignee
Vipshop Guangzhou Software 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 Vipshop Guangzhou Software Co Ltd filed Critical Vipshop Guangzhou Software Co Ltd
Priority to CN202210273246.0A priority Critical patent/CN114666303B/en
Publication of CN114666303A publication Critical patent/CN114666303A/en
Application granted granted Critical
Publication of CN114666303B publication Critical patent/CN114666303B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention discloses a DNS scheduling method, a DNS scheduling device and computer equipment, wherein the method comprises the following steps: receiving a query request sent by a mobile APP and a user input domain name, and reading a user IP address, wherein the query request comprises an A result query request or an AAAA result query request; acquiring an IP list corresponding to the domain name input by the user based on the query request, the domain name input by the user and the IP address of the user; reading the performance parameter of each IP in an IP list corresponding to the domain name input by the user from a database, and processing the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain a configured IP address list; feeding back the configuration IP list to the mobile APP and receiving the network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configuration IP list; processing the network access quality information to obtain real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters stored in the database according to the real-time performance parameters; the scheme effectively improves the network communication rate and improves the user experience of application.

Description

DNS (Domain name System) scheduling method and device and computer equipment
Technical Field
The invention relates to the field of network domain name resolution, in particular to a DNS scheduling method, a DNS scheduling device and computer equipment.
Background
Large mobile internet companies have multiple-room service portals to provide fast internet services to users nearby. The nodes for dispatching the user to the nearest entry are generally authoritative GSLB DNS servers (hereinafter abbreviated as ADNS) of the Internet company, and the ADNS servers resolve the domain name of the Internet Service accessed by the user to the IP entry address with the fastest speed in theory according to different geographic locations and access ISPs (Internet Service providers).
However, such a network entry IP returned according to the configuration may have poor access quality for some users, or even be unreachable. The ADNS server may continue to return the same address to the user due to lack of effective feedback, which may result in that some users may not use the service. In addition, in the UDP-based DNS usage scenario, ADNS cannot sense the IP address of the end user, and the DNS request of UDP is easily hijacked.
Disclosure of Invention
The invention aims to: a DNS scheduling method, device and computer equipment are provided
The technical scheme of the invention is as follows: in a first aspect, the present invention provides a DNS scheduling method, where the method includes:
receiving a query request sent by a mobile APP and a domain name input by a user, and reading an IP address of the user, wherein the query request comprises an A result query request or an AAAA result query request;
acquiring an IP address list corresponding to the user input domain name based on the query request, the user input domain name and the user IP address;
reading the performance parameter of each IP address in the IP address list corresponding to the domain name input by the user from a database, and processing the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain a configured IP address list;
feeding back the configured IP address list to the mobile APP and receiving network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list;
and processing the network access quality information to obtain the real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters.
In a preferred embodiment, the obtaining an IP address list corresponding to the user input domain name based on the query request, the user input domain name, and the user IP address includes:
inquiring and acquiring user geographical position information and user ISP information based on the user IP address, wherein the user geographical position information comprises user country/province/city geographical position information;
and mapping an A result or an AAAA result according to the query request, the user input domain name, the user geographic position information, the user ISP information and the current scheduling strategy to obtain an IP address list corresponding to the user input domain name.
In a preferred embodiment, the mapping an a result or an AAAA result according to the query request, the user input domain name, the user geographic location information, the user ISP information, and the current scheduling policy to obtain the IP address list corresponding to the user input domain name includes:
mapping an A record list or an AAAA record list corresponding to the user input domain name according to the query request, the user input domain name, the user country/province/city geographical position information, the user ISP information and the current scheduling strategy;
and acquiring an IPv4 address list corresponding to the user input domain name according to the A record list corresponding to the user input domain name, or acquiring an IPv6 address list corresponding to the user input domain name according to the AAAA record list corresponding to the user input domain name.
In a preferred embodiment, the processing the IP address list corresponding to the user input domain name based on the performance parameter to obtain a configured IP address list includes:
sorting and filtering the IPv4 address list or the IPv6 address list based on the performance parameters to obtain a configured IP address list.
In a preferred embodiment, the performance parameters include an available state and a connection setup time; the reading of the performance parameter of each IP address in the IP address list corresponding to the domain name input by the user from the database, and the processing of the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain the configured IP address list comprises:
reading the user geographical location information and the user ISP information from a database to the available state and the connection establishing duration of each IP address in the IPv4 address list or the IPv6 address list, wherein the available state is available or unavailable;
filtering the IP addresses with unavailable availability states in the IPv4 address list or the IPv6 address list according to the availability states to obtain an available IP address list;
and sequencing the IP addresses in the available IP address list according to the connection establishing duration to obtain a configured IP address list.
In a preferred embodiment, the network access quality information includes a client IP address and a server IP address at the time of access, a DNS resolution duration, whether a connection is successful, a TCP connection setup duration, and a TLS negotiation duration.
In a preferred embodiment, the network access quality information sent by the mobile APP when the mobile APP accesses the internet service based on the configured IP address list includes: all error information and successfully accessed network quality information sampling information are sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list;
and the network access quality information is obtained by recording after the mobile APP obtains the client user agreement permission.
In a preferred embodiment, the processing the network access quality information to obtain a real-time performance parameter of an IP address currently used by the mobile APP, and updating the performance parameter of the IP address currently used by the mobile APP stored in the database with the real-time performance parameter includes:
triggering an offline task in real time or at regular time to process the network access quality information, and generating real-time performance parameters of the IP address currently used by the mobile APP according to the IP address of the client, wherein the real-time performance parameters comprise the geographic position of a user and the connection duration from the ISP to the IP address of the server;
judging whether the current performance parameter is the same as the performance parameter read from the database at the previous time
And if not, updating the corresponding performance parameters in the database for dynamically updating the configuration IP address list fed back to the mobile APP.
In a second aspect, the present invention further provides a DNS scheduling apparatus, including:
the receiving and reading module is used for receiving a query request sent by the mobile APP and a domain name input by a user, and reading an IP address of the user, wherein the query request comprises an A result query request or an AAAA result query request;
an obtaining module, configured to obtain, based on the query request, the user input domain name, and the user IP address, an IP address list corresponding to the user input domain name;
the reading processing module is used for reading the performance parameter of each IP address in the IP address list corresponding to the user input domain name from the database and processing the IP address list corresponding to the user input domain name based on the performance parameter to obtain a configured IP address list;
a feedback receiving module, configured to feed back the configured IP address list to the mobile APP and receive network access quality information sent by the mobile APP when the mobile APP accesses internet services based on the configured IP address list;
and the processing and updating module is used for processing the network access quality information to acquire the real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters. In a third aspect, the present invention also provides a computer device, comprising:
one or more processors; and
a memory associated with the one or more processors for storing program instructions that, when read and executed by the one or more processors, perform the method according to any of the first aspects.
The invention has the advantages that: a DNS scheduling method, a DNS scheduling device and computer equipment are provided, and the method comprises the following steps: receiving a query request sent by a mobile APP and a user input domain name, and reading a user IP address, wherein the query request comprises an A result query request or an AAAA result query request; acquiring an IP address list corresponding to the domain name input by the user based on the query request, the domain name input by the user and the IP address of the user; reading the performance parameter of each IP address in an IP address list corresponding to the domain name input by the user from a database, and processing the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain a configured IP address list; feeding back a configuration IP address list to the mobile APP and receiving network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configuration IP address list; processing the network access quality information to obtain real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters; the scheme adopts the HttpDNS, the GSLB technology and the big data technology, and the big data technology processes mass network quality data to drive the ADNS to return the best service network entry IP, so that the network communication rate of the mobile internet application can be effectively improved, and the user experience of the application is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a first flowchart of a DNS scheduling method according to an embodiment of the present invention;
fig. 2 is a second flowchart of a DNS scheduling method according to an embodiment of the present invention;
fig. 3 is a structural diagram of a DNS scheduling apparatus according to a second embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As described in the background art, the ADNS server resolves the domain name of the Internet Service accessed by the user to the IP entry address with the fastest theoretical speed according to different geographic locations and access ISPs (Internet Service providers), but the network entry IP returned according to the configuration mode may have poor access quality for some users, or even be unreachable, and the ADNS server may continuously return the same address to the user due to lack of effective feedback, so that the user with poor access quality or even unreachable may not use the Service all the time.
In order to solve the above problems, the present invention creatively provides a DNS scheduling method, device, and computer device, which process network access quality data of a client accessing a service according to a configured IP address, and update the configured IP address according to the network access quality data, so as to ensure that an IP address with good service quality is returned to a user, thereby improving the network connectivity rate of the client.
The DNS scheduling method, device and computer apparatus provided in the present invention will be further described with reference to specific embodiments.
The first embodiment is as follows: the present embodiment provides a DNS scheduling method, which is shown in fig. 1 and fig. 2, and includes:
s110, receiving an inquiry request sent by the mobile APP and a domain name input by a user, and reading an IP address of the user, wherein the inquiry request comprises an A result inquiry request or an AAAA result inquiry request.
Specifically, the mobile APP of the client attempts to query the a result or the AAAA result corresponding to the user input domain name using the http dns service of the IP-connected ADNS. And after receiving the query request of the mobile APP and the user input domain name carried by the query request, the ADNS reads the IP (Internet protocol) of the mobile APP, namely the user IP address, and records the IP as uIP.
The ADNS is an authoritative GSLB DNS server of an internet company, and the HttpDNS interacts with a DNS (Domain Name System) server by using an HTTP protocol, so that Domain Name resolution efficiency is improved. The DNS is a distributed database on the internet as a mapping between domain names and IP addresses, enabling users to access the internet more conveniently without remembering IP strings that can be read directly by machines. The process of finally obtaining the IP address corresponding to the host name through the host name is called domain name resolution (or host name resolution).
The result of (a), (address) is used to specify the IP address record corresponding to the domain name, and at the same time, the sub-domain name of the domain name can also be set, and the target address of the result of a can only use the IP address.
The AAAA result is a DNS record used to resolve a domain name to an IPv6 address, otherwise the same as the a result.
And S120, acquiring an IP address list corresponding to the domain name input by the user based on the query request, the domain name input by the user and the IP address of the user.
Preferably, the present step comprises:
s121, inquiring and acquiring user geographical position information and user ISP information based on the user IP address, wherein the user geographical position information comprises user country/province/city geographical position information.
And the ADNS maps the user IP address to the user geographical position information according to a preset database.
Specifically, ADNS uses a GeoIP database to map the user IP address to national/provincial/municipal geolocation information (denoted GeoInfo) and ISP information. GeoIP, or geocation IP, means the geographic location based on an IP query. ISP full name (Internet Service Provider), i.e. "Internet Service Provider".
Illustratively, the geographic location information and the ISP information of the corresponding user are "china/guangdong/guangzhou. china mobile" according to the user IP address and the user IP database.
And S122, mapping an A result or an AAAA result according to the query request, the user input domain name, the user geographic position information, the user ISP information and the current scheduling strategy to obtain an IP address list corresponding to the user input domain name.
Preferably, S122 includes:
preferably, the present step comprises:
s1221, mapping an A record list or an AAAA record list corresponding to the user input domain name according to the query request, the user input domain name, the user country/province/city geographical location information, the user ISP information and the current scheduling strategy.
S1222, according to the A record list corresponding to the domain name input by the user, obtaining the IPv4 address list corresponding to the domain name input by the user, or according to the AAAA record list corresponding to the domain name input by the user, obtaining the IPv6 address list corresponding to the domain name input by the user.
Since the a (address) record is used to specify an IP address record corresponding to a domain name, and a sub-domain name of the domain name may also be set, and the AAAA record is a DNS record used to resolve the domain name to an IPv6 address, it is necessary to process the a or AAAA record to obtain a corresponding IP address list.
Specifically, a domain name input by a user, GeoInfo and ISP information are input into an ADNS scheduling module, when an inquiry request comprises an A result inquiry request, the ADNS scheduling module reads an A record list corresponding to the domain name input by the user from a configuration database according to a current scheduling strategy, and then obtains a corresponding IPv4 address list according to the A record list; when the query request comprises an AAAA result query request, the ADNS scheduling module reads an AAAA record list corresponding to the domain name input by the user from the configuration database according to the current scheduling strategy, and then acquires a corresponding IPv6 address list according to the AAAA record list.
S130, reading the performance parameters of each IP address in the IP address list corresponding to the domain name input by the user from the database, and processing the IP address list corresponding to the domain name input by the user based on the performance parameters to obtain a configured IP address list.
Specifically, the performance parameter includes an available state and a connection establishment duration, specifically, an available state and a connection establishment duration from (user geographical location information, ISP information) to the server IP address, where the available state is available or unavailable.
Preferably, the processing the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain the configured IP address list includes:
and sorting and filtering the IPv4 address list or the IPv6 address list based on the performance parameters to obtain a configuration IP address list.
More preferably, the method specifically comprises the following steps:
s131, reading the user geographical location information and the user ISP information from the database to the available state and the connection establishing duration of each IP address in the IPv4 address list or the IPv6 address list, wherein the available state is available or unavailable.
Specifically, the available state and the connection establishment time of the server IP address in the IP address list corresponding to the user input domain name are read (user geographical location information and user ISP information) from a database (a network quality database for storing network access quality data).
S132, filtering the IP addresses with unavailable states in the IPv4 address list or the IPv6 address list according to the available states to obtain an available IP address list.
And filtering unavailable IP addresses in an IP address list corresponding to the domain name input by the user, ensuring that all the IP addresses in the configuration IP address list fed back to the mobile APP are available, and preventing the unavailable IP addresses fed back to the mobile APP from being unavailable so as to cause the condition that the mobile APP cannot normally access services by using the unavailable IP addresses.
S133, sequencing the IP addresses in the available IP address list according to the connection establishing duration to obtain a configured IP address list.
Specifically, the connection duration refers to the connection duration from (user geographical location information, ISP information) to the IP address of the server.
And sequencing the IP addresses in the available IP address list according to the connection duration, sequencing from short to long according to the connection duration to obtain a configuration IP list, and selecting the IP address with the shortest connection duration by the mobile APP in front of the short connection duration.
And if the unavailable IP address is filtered out and then the unavailable IP address does not exist, feeding back the IP address list of the default configuration to the mobile APP.
S140, feeding back the configured IP address list to the mobile APP and receiving the network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list.
Specifically, after obtaining the configuration IP list, the mobile APP selects an IP access service according to a preset rule, and illustratively, selects an IP address access service closest to the mobile APP in the configuration IP list, that is, an IP address with the shortest connection duration for access. And the mobile APP accesses the Internet service by using the IP address, and if the permission of the user agreement is obtained, the network access quality information is recorded and asynchronously uploaded to the data reporting service module. And the data reporting service module receives the network access quality information recorded by the mobile APP when the IP address is used for accessing the service.
Preferably, the network access quality information includes a client IP address and a server IP address during access, DNS resolution time, whether a connection is successful, TCP connection establishment time, and TLS negotiation time. The network access quality information is obtained by recording after the mobile APP obtains the client user agreement permission.
And the mobile APP asynchronously reports error information in a full quantity mode, and the successfully accessed network quality information is reported to the data reporting service module in a sampling mode, and the data reporting service module transmits the network access quality information to a real-time/offline data warehouse for storage. If the immediate reporting is unsuccessful, the uploading can be delayed. The time interval for delaying the uploading is preset.
S150, processing the network access quality information to obtain the real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters.
Specifically, the data processing module reads and processes network access quality information from the real-time/offline data warehouse, and generates actual connection duration from (user geographical location information, ISP information) to the server IP address according to the client IP address.
Preferably, the present step comprises:
s151, triggering off-line task processing network access quality information in real time or at regular time to obtain performance parameters, wherein the performance parameters comprise the geographic position of a user and the connection duration from an ISP (internet service provider) to a server IP (Internet protocol) address;
s152, judging whether the current performance parameters are the same as the performance parameters read from the database at the previous time, and if not, entering S153.
Specifically, it is determined whether the performance parameter of the server IP address currently used by the mobile APP is the same as the available state and connection setup time from the server IP address (user geographical location information, user ISP information) read from the network quality database for storing the network access quality data in S131.
S153, updating the corresponding performance parameters in the database for dynamically updating and feeding back the configuration IP address list of the mobile APP.
Specifically, the performance parameters stored in the database are updated with the current performance parameters.
For example, in S133, a list of configured IP addresses with connection duration from short to long is obtained: IP1, IP2, IP3, IP 4. The performance parameters corresponding to the IPs 1, IP2, IP3, and IP4 stored in the database are the quality information from (GeoInfo [ guan zhou city, guangdong province ], ISP [ china mobile ]) to the 4 IPs in the past 1 hour (available, average connection duration is 0.01s), (available, 0.02s), (available, 0.04s), (available, 0.05s), and these data are aggregated from the number of accesses per minute and average connection duration of each IP in the 1 hour. The mobile APP selects the first IP address IP1 to access the service after receiving the configured IP address list, and records and asynchronously reports the network access quality information of its access to the real-time/offline data warehouse after obtaining the user agreement permission.
The data processing module acquires a large number of access times and connection establishment duration data of IP1, IP2, IP3 and IP4 corresponding to 1 minute of past (GeoInfo, Guangzhou, Guangdong province, ISP, China Mobile) from a real-time/offline data warehouse. And then obsolete access data, and the average connection time of the past 1 hour is recalculated according to the data. After updating, the IP address performance parameters of the domain name corresponding to the user location (GeoInfo [ guangzhou, guangdong province ], ISP [ china mobile ]) stored in the database may become: IP1 (available, 0.05s), IP2 (available, 0.03s), IP3 (available, 0.02s), IP4 (available, 0.04 s). The ADNS scheduling module sorts and filters the configuration IP addresses which are obtained in the list according to the performance parameters, wherein the configuration IP addresses are IP3, IP2, IP4 and IP 5. The server IP address used by the mobile APP will be changed from IP1 to IP 3.
In the DNS scheduling method provided in this embodiment, after the filtered and sorted configuration IP address list is configured for the mobile APP, the network access quality data of the mobile APP according to the configured IP address access service is stored and processed, and the performance parameter corresponding to the configuration IP address list is continuously updated, so that the ADNS returns to the network entry IP address with the best service for the mobile APP, the network connectivity rate of the mobile internet application is effectively improved, and the user experience of the application is improved.
Example two: the present embodiment provides a DNS scheduling apparatus, and as shown in fig. 3, the apparatus includes:
a receiving and reading module 310, configured to receive an inquiry request sent by a mobile APP and a domain name input by a user, and read an IP address of the user, where the inquiry request includes an a result inquiry request or an AAAA result inquiry request;
an obtaining module 320, configured to obtain, based on the query request, the user input domain name, and the user IP address, an IP address list corresponding to the user input domain name;
a reading processing module 330, configured to read a performance parameter of each IP address in an IP address list corresponding to the user input domain name from a database, and process the IP address list corresponding to the user input domain name based on the performance parameter to obtain a configured IP address list;
a feedback receiving module 340, configured to feed back the configured IP address list to the mobile APP and receive network access quality information sent by the mobile APP when the mobile APP accesses internet services based on the configured IP address list;
and a processing and updating module 350, configured to process the network access quality information to obtain a real-time performance parameter of the IP address currently used by the mobile APP, and update the performance parameter of the IP address currently used by the mobile APP stored in the database with the real-time performance parameter.
Preferably, the obtaining module 320 includes:
a query unit 321, configured to query and acquire user geographic location information and user ISP information based on the user IP address, where the user geographic location information includes user country/province/city geographic location information;
a mapping unit 322, configured to map an a result or an AAAA result according to the query request, the user input domain name, the user geographic location information, the user ISP information, and the current scheduling policy to obtain an IP address list corresponding to the user input domain name.
More preferably, the mapping unit 322 includes:
a mapping subunit 3221, configured to map an a record list or an AAAA record list corresponding to the user input domain name according to the query request, the user input domain name, the user country/province/city geographical location information, the user ISP information, and the current scheduling policy;
an obtaining subunit 3222 is configured to obtain, according to the a record list corresponding to the user input domain name, an IPv4 address list corresponding to the user input domain name, or obtain, according to the AAAA record list corresponding to the user input domain name, an IPv6 address list corresponding to the user input domain name.
More preferably, the reading processing module 330 is specifically configured to sort and filter the IPv4 address list or the IPv6 address list based on the performance parameter to obtain a configured IP address list.
More preferably, the performance parameters include an available state and a connection establishment duration; the read processing module 330 includes:
a reading unit 331, configured to read, from a database, an available state and a connection establishment duration of each IP address from the user geographic location information and the user ISP information to the IPv4 address list or the IPv6 address list, where the available state is available or unavailable;
a filtering unit 332, configured to filter, according to the available status, an IP address in the IPv4 address list or the IPv6 address list that is available and whose available status is unavailable, to obtain an available IP address list;
a sorting unit 333, configured to sort the IP addresses in the available IP address list according to the connection duration to obtain a configured IP address list.
Preferably, the network access quality information includes a client IP address and a server IP address during access, DNS resolution time, whether a connection is successful, TCP connection establishment time, and TLS negotiation time.
The network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configuration IP address list comprises the following steps: all error information and successfully accessed network quality information sampling information are sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list;
and the network access quality information is obtained by recording after the mobile APP obtains the client user agreement permission.
More preferably, the process update module 350 includes:
the processing unit 351 is used for triggering an offline task to process the network access quality information in real time or at regular time, and generating real-time performance parameters of the IP address currently used by the mobile APP according to the IP address of the client, wherein the real-time performance parameters comprise the geographic position of a user and the connection duration from the ISP to the IP address of the server;
a determining unit 352, configured to determine whether the current performance parameter is the same as a performance parameter read from the database at the previous time;
an updating unit 353, configured to update the corresponding performance parameter in the database for dynamically updating the configured IP address list fed back to the mobile APP after the determining unit 352 determines that the current performance parameter is different from the performance parameter read from the database at the previous time.
The DNS scheduling apparatus provided in this embodiment is configured to execute the DNS scheduling method provided in the first embodiment, and the beneficial effect of the DNS scheduling apparatus is the same as that of the executed DNS scheduling method, which is not described herein again.
It should be noted that: in the DNS scheduling apparatus provided in the foregoing embodiment, when triggering the DNS scheduling service, only the division of the functional modules is illustrated, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the apparatus is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the DNS scheduling apparatus provided in the foregoing embodiment and the DNS scheduling method provided in the first embodiment belong to the same concept, that is, the apparatus is based on this method, and the specific implementation process thereof is described in detail in the method embodiment and is not described herein again.
Example three: corresponding to the first embodiment and the second embodiment, the following describes a computer device provided by the present application.
The present embodiment provides a computer device including a processor, a memory, and a network interface connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operating system and the computer program to run on the non-volatile storage medium. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a method of optimization of an execution plan.
It will be understood by those skilled in the art that the structure in this embodiment is only a part of the structure related to the aspect of the present invention, and does not constitute a limitation to the computer device to which the aspect of the present invention is applied, and a specific computer device may include more or less components, or combine some components, or have different arrangements of components.
As a preferred implementation manner, in an embodiment of the present invention, a computer device includes a memory and a processor, where the memory stores a computer program that is executable on the processor, and the processor implements the following steps when executing the computer program:
receiving a query request sent by a mobile APP and a domain name input by a user, and reading a user IP address, wherein the query request comprises an A result query request or an AAAA result query request;
acquiring an IP address list corresponding to the user input domain name based on the query request, the user input domain name and the user IP address;
reading the performance parameter of each IP address in the IP address list corresponding to the domain name input by the user from a database, and processing the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain a configured IP address list;
feeding back the configured IP address list to the mobile APP and receiving network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list;
and processing the network access quality information to obtain the real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
It should be understood that the above-mentioned embodiments are only illustrative of the technical concepts and features of the present invention, and are intended to enable those skilled in the art to understand the contents of the present invention and implement the present invention, and not to limit the scope of the present invention. All modifications made according to the spirit of the main technical scheme of the invention are covered in the protection scope of the invention.

Claims (10)

1. A DNS scheduling method, the method comprising:
receiving a query request sent by a mobile APP and a domain name input by a user, and reading an IP address of the user, wherein the query request comprises an A result query request or an AAAA result query request;
acquiring an IP address list corresponding to the user input domain name based on the query request, the user input domain name and the user IP address;
reading the performance parameter of each IP address in the IP address list corresponding to the domain name input by the user from a database, and processing the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain a configured IP address list;
feeding back the configured IP address list to the mobile APP and receiving network access quality information sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list;
and processing the network access quality information to obtain the real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters.
2. The DNS scheduling method according to claim 1, wherein the obtaining the IP address list corresponding to the user input domain name based on the query request, the user input domain name, and the user IP address includes:
inquiring and acquiring user geographic position information and user ISP information based on the user IP address, wherein the user geographic position information comprises user country/province/city geographic position information;
and mapping an A result or an AAAA result according to the query request, the user input domain name, the user geographic position information, the user ISP information and the current scheduling strategy to obtain an IP address list corresponding to the user input domain name.
3. The DNS scheduling method according to claim 2, wherein the mapping an a result or an AAAA result according to the query request, the user input domain name, the user geographical location information, the user ISP information, and the current scheduling policy to obtain the IP address list corresponding to the user input domain name includes:
mapping an A record list or an AAAA record list corresponding to the user input domain name according to the query request, the user input domain name, the user country/province/city geographical location information, the user ISP information and the current scheduling strategy;
and acquiring an IPv4 address list corresponding to the user input domain name according to the A record list corresponding to the user input domain name, or acquiring an IPv6 address list corresponding to the user input domain name according to the AAAA record list corresponding to the user input domain name.
4. The DNS scheduling method of claim 3, wherein the processing the list of IP addresses corresponding to the user-input domain name based on the performance parameter to obtain a configured list of IP addresses comprises:
sorting and filtering the IPv4 address list or the IPv6 address list based on the performance parameters to obtain a configured IP address list.
5. The DNS scheduling method of claim 4, wherein the performance parameters include an availability status and a connection setup duration; the reading of the performance parameter of each IP address in the IP address list corresponding to the domain name input by the user from the database, and the processing of the IP address list corresponding to the domain name input by the user based on the performance parameter to obtain the configured IP address list comprises:
reading the user geographical location information and the user ISP information from a database to the available state and the connection establishing duration of each IP address in the IPv4 address list or the IPv6 address list, wherein the available state is available or unavailable;
filtering the IP addresses with unavailable availability states in the IPv4 address list or the IPv6 address list according to the availability states to obtain an available IP address list;
and sequencing the IP addresses in the available IP address list according to the connection establishing duration to obtain a configured IP address list.
6. The DNS scheduling method according to claim 1, wherein the network access quality information includes a client IP address and a server IP address at the time of access, a DNS resolution time, whether a connection is successful, a TCP connection setup time, and a TLS negotiation time.
7. The DNS scheduling method according to claim 6 wherein the network access quality information sent by the mobile APP when accessing internet services based on the configured IP address list comprises: all error information and successfully accessed network quality information sampling information are sent by the mobile APP when the mobile APP accesses the Internet service based on the configured IP address list;
and the network access quality information is obtained by recording after the mobile APP obtains the client user agreement permission.
8. The DNS scheduling method according to claim 6 or 7, wherein the processing the network access quality information to obtain a real-time performance parameter of an IP address currently used by the mobile APP, and updating the performance parameter of the IP address currently used by the mobile APP stored in the database with the real-time performance parameter includes:
triggering an offline task to process the network access quality information in real time or at regular time, and generating real-time performance parameters of an IP address currently used by the mobile APP according to the IP address of a client, wherein the real-time performance parameters comprise the geographic position of a user and the connection duration from an ISP (internet service provider) to the IP address of the server;
judging whether the current performance parameter is the same as the performance parameter read from the database at the previous time
And if not, updating the corresponding performance parameters in the database for dynamically updating the configuration IP address list fed back to the mobile APP.
9. An apparatus for DNS scheduling, the apparatus comprising:
the receiving and reading module is used for receiving a query request sent by the mobile APP and a domain name input by a user, and reading an IP address of the user, wherein the query request comprises an A result query request or an AAAA result query request;
an obtaining module, configured to obtain, based on the query request, the user input domain name, and the user IP address, an IP address list corresponding to the user input domain name;
the reading processing module is used for reading the performance parameter of each IP address in the IP address list corresponding to the user input domain name from the database and processing the IP address list corresponding to the user input domain name based on the performance parameter to obtain a configured IP address list;
a feedback receiving module, configured to feed back the configured IP address list to the mobile APP and receive network access quality information sent by the mobile APP when the mobile APP accesses internet services based on the configured IP address list;
and the processing and updating module is used for processing the network access quality information to acquire the real-time performance parameters of the IP address currently used by the mobile APP, and updating the performance parameters of the IP address currently used by the mobile APP stored in the database according to the real-time performance parameters.
10. A computer device, comprising:
one or more processors; and
a memory associated with the one or more processors for storing program instructions that, when read and executed by the one or more processors, perform the method of any of claims 1-8.
CN202210273246.0A 2022-03-18 2022-03-18 DNS scheduling method and device and computer equipment Active CN114666303B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210273246.0A CN114666303B (en) 2022-03-18 2022-03-18 DNS scheduling method and device and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210273246.0A CN114666303B (en) 2022-03-18 2022-03-18 DNS scheduling method and device and computer equipment

Publications (2)

Publication Number Publication Date
CN114666303A true CN114666303A (en) 2022-06-24
CN114666303B CN114666303B (en) 2024-01-30

Family

ID=82032264

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210273246.0A Active CN114666303B (en) 2022-03-18 2022-03-18 DNS scheduling method and device and computer equipment

Country Status (1)

Country Link
CN (1) CN114666303B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937499A (en) * 2006-10-13 2007-03-28 清华大学 Domainname-based unified identification mark and authentication method
US20090089438A1 (en) * 2007-09-27 2009-04-02 Microsoft Corporation Intelligent network address lookup service
WO2011113238A1 (en) * 2010-03-19 2011-09-22 中兴通讯股份有限公司 Network protocol address feedback method and domain name resolution server
CN103685611A (en) * 2013-12-31 2014-03-26 山石网科通信技术有限公司 Network access processing method and device
WO2015143789A1 (en) * 2014-03-25 2015-10-01 中兴通讯股份有限公司 Method and apparatus for processing configuration information and use performance parameter event
CN107277025A (en) * 2017-06-28 2017-10-20 维沃移动通信有限公司 A kind of Secure Network Assecc method, mobile terminal and computer-readable recording medium
CN110519401A (en) * 2019-07-05 2019-11-29 中国平安财产保险股份有限公司 Improve method, apparatus, equipment and the storage medium of network Access Success Rate

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937499A (en) * 2006-10-13 2007-03-28 清华大学 Domainname-based unified identification mark and authentication method
US20090089438A1 (en) * 2007-09-27 2009-04-02 Microsoft Corporation Intelligent network address lookup service
WO2011113238A1 (en) * 2010-03-19 2011-09-22 中兴通讯股份有限公司 Network protocol address feedback method and domain name resolution server
CN103685611A (en) * 2013-12-31 2014-03-26 山石网科通信技术有限公司 Network access processing method and device
WO2015143789A1 (en) * 2014-03-25 2015-10-01 中兴通讯股份有限公司 Method and apparatus for processing configuration information and use performance parameter event
CN107277025A (en) * 2017-06-28 2017-10-20 维沃移动通信有限公司 A kind of Secure Network Assecc method, mobile terminal and computer-readable recording medium
CN110519401A (en) * 2019-07-05 2019-11-29 中国平安财产保险股份有限公司 Improve method, apparatus, equipment and the storage medium of network Access Success Rate

Also Published As

Publication number Publication date
CN114666303B (en) 2024-01-30

Similar Documents

Publication Publication Date Title
US9525659B1 (en) Request routing utilizing point of presence load information
US7415536B2 (en) Address query response method, program, and apparatus, and address notification method, program, and apparatus
EP0959601B1 (en) A system and method for server selection for mirrored sites
JP4592184B2 (en) Method and apparatus for accessing device with static identifier and intermittently connected to network
US9985927B2 (en) Managing content delivery network service providers by a content broker
JP4684534B2 (en) Resource homology among cached resources in a peer-to-peer environment
US8626949B2 (en) Intelligent network address lookup service
US7496651B1 (en) Configurable geographic prefixes for global server load balancing
CN109347998B (en) Method and system for detecting IP address of DNS (Domain name Server) outlet server
US20070124487A1 (en) DNS server
US8423670B2 (en) Accessing distributed services in a network
EP4026301A1 (en) Techniques for steering network traffic to regions of a cloud computing system
US20030028623A1 (en) Method and apparatus for facilitating distributed delivery of content across a computer network
WO2016049432A1 (en) Dns-based load balancing
US20110271005A1 (en) Load balancing among voip server groups
WO2004072798A2 (en) Methods and systems for providing dynamic domain name system for inbound route control
CN103281409A (en) Domain name resolution method of mobile internet and DNS server based on TCP protocol
CN109729187B (en) Proxy communication method, system, device and storage medium
CN102868550B (en) Total network flow scheduler and method for querying domain name resolution record by using total network flow scheduler
US11570278B1 (en) Dynamic content delivery network selection using DNS
CN109067936A (en) A kind of method and device of domain name mapping
CN114666303A (en) DNS (Domain name System) scheduling method and device and computer equipment
US8972604B1 (en) Network address retention and assignment
US11297131B2 (en) Method and apparatus for multi-vendor GTM fabric
CN114422469B (en) IPv4/IPv6 flow intelligent scheduling method, device and scheduling system

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