+

WO2006037865A1 - Procede et systeme de resolution dns distribuee - Google Patents

Procede et systeme de resolution dns distribuee Download PDF

Info

Publication number
WO2006037865A1
WO2006037865A1 PCT/FR2005/002144 FR2005002144W WO2006037865A1 WO 2006037865 A1 WO2006037865 A1 WO 2006037865A1 FR 2005002144 W FR2005002144 W FR 2005002144W WO 2006037865 A1 WO2006037865 A1 WO 2006037865A1
Authority
WO
WIPO (PCT)
Prior art keywords
dns
extended
server
resolution
distributed
Prior art date
Application number
PCT/FR2005/002144
Other languages
English (en)
Inventor
Cédric Goutard
Karel Mittig
Original Assignee
France Telecom
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 France Telecom filed Critical France Telecom
Priority to US11/664,694 priority Critical patent/US20080288470A1/en
Priority to EP05798592A priority patent/EP1797696A1/fr
Publication of WO2006037865A1 publication Critical patent/WO2006037865A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming

Definitions

  • a method and system for intelligent delegation of domain name system (DNS) resolution for domain name system, or distributed DNS resolution Access to a server on the INTERNET (web server, video server, mail server or other) from a client computer is generally performed after a process known as DNS resolution of the name or mnemonic address of the latter, for example «Www.wanadoo.fr.
  • DNS resolution of the name or mnemonic address of the latter, for example «Www.wanadoo.fr.
  • IP address In an IP address (INTERNET address), generally consisting of four bytes "193.152.122.103" identifying the machine incorporating this server on the network
  • INTERNET in order to allow the physical connection of the client station to this server.
  • This DNS resolution process is implemented using the eponymous protocol (DNS protocol) and uses a recursion mechanism of the DNS resolution process.
  • DNS protocol eponymous protocol
  • the requesting client sends its request for resolution
  • DNS to the DNS server of its INTERNET provider or company. If this server is not able to return an IP address corresponding to the server name to be resolved, it will in turn contact a parent DNS server (according to simple and well-known configuration rules) to ask this one to make the resolution and return the answer.
  • the DNS resolution process conventionally makes it possible to return to the requesting client station and intermediate DNS servers either one or more response IP addresses, or an error message.
  • the DNS servers having authority for a domain name, for which they ensure the resolution or final translation into an IP address are configured:
  • IP address of the client station or subnet
  • load servers for example.
  • IP address of the client station or subnet
  • These DNS systems are qualified as intelligent DNS systems, as they are able to return a response based on complex parameters and conditions, and not a single entry in a lookup table.
  • the purpose of the DNS model is to define a consistent namespace for INTERNET resources to map a name to an IP address at a given time.
  • This model is based on a tree system, capable of supporting high load growth and allowing each organization to manage its address space.
  • each node is a domain and each domain is also a subdomain, except the root server.
  • the servers managing the aforementioned model are classified according to three functional roles:
  • - servers responsible for managing domains these servers are said to be iterative because they only answer questions about the areas they manage; - intermediate servers; still referred to as DNS caches, these optional servers are intended to store the most requested requests in order to speed up DNS resolution times;
  • FIG. 1b The architecture of such a functional subdivision is shown in FIG. 1b.
  • DNS queries present the data structure shown in Figure 1c.
  • the OPCODE field is used by the client to indicate the nature of its request (name resolution, authentication), the RCODE field is used by the server to indicate if the client request was successful, and if not, the reason for failure.
  • the data in the "referenced data" field corresponds to the name requested by a client or the name given by a server. This data is, in most cases, of the FQDN type for FuIIy Qualified Domain Name, ie a mnemonic address, www.francetelecom.fr for example.
  • TTL parameter indicates the lifetime of the information. This data or parameter is used in particular by the DNS servers hidden to temporarily store the information.
  • the data "class of registration" indicates the network in which the resource must be searched.
  • the data "type of registration" allows to know the nature of the registration requested by the client or returned by the server.
  • HINFO Home Information
  • TXT for Text
  • this type allowing a client or a DNS server to provide a free description, in the form of an ASCII character string.
  • EDNSO a mechanism for extending DNS queries called EDNSO is defined by RFC 2671.
  • This mechanism aims to remove some limitations of the DNS standard by creating new messages.
  • the aforementioned extension mechanism is today mainly used to increase the maximum size of DNS queries and is essentially based on a modification of the OPCODE field and the use of a new type of resource called OPT.
  • Bind the server developed by the Internet Software Consortium, whose members are behind several DNS extension protocols;
  • Microsoft DNS server This server developed by Microsoft Corporation, became operational with the version supplied with the Windows 2000 ® operating system. This server easily integrating into a network local Microsoft is increasingly used in a corporate network context but remains less developed in the context INTERNET;
  • this server is a royalty-free DNS server developed by NLnet Labs.
  • NSD is a purely iterative server that has the particularity of compiling its zone files into automata. This compilation process allows him to respond immediately to a query, since all possible questions have been calculated and pre-established beforehand and all the answers have been pre-recorded.
  • NSD is now more and more widespread and is used, in particular, as authoritative DNS for the management of high-level domains, Top Level Domains in English, that is to say domains roots whose extension is relative to a large area, country or group, such as ".fr”, “.ni” or other.
  • the above-mentioned intelligent solutions enable the use of probes to measure different physical or network operating parameters ensuring the connection between a client and distributed server sites. Such as latency of the network, load of the sites servers proximity. Using these parameters, the aforementioned solutions evaluate, based on comparison criteria, in a group of responses, the one that appears most suitable for a given client and only return this response to the latter.
  • CDN Content Delivery Networks in English
  • the main players in this type of service being Akama ⁇ and Mirror Imager, for example;
  • the main players being the companies F5 3-DNS server and CISCO for example.
  • Intelligent servers able to find one or more IP addresses to solve a FQDN based on more or less complex algorithms, have the advantage of being able to respond to a client in an optimized and reliable manner but introduce the considerable disadvantage of managing from a centralized structure all the requests of the customers, and, therefore, to require a computation power proportional to both the transmission rate to ensure, the complexity of the resolution algorithm implemented and the parameters of resolutions involved, such as client IP address, server loads for example.
  • Intermediate DNS servers also known as proxies, caches or relays, play only a role of resolution accelerator through Temporary storage mechanisms and execution of resolutions according to rules defined by RFC 1034 and 1035.
  • the present invention relates to the implementation of an intelligent distributed DNS resolution method, at any extended intermediate relay server, with the aim of implementing the distributed DNS resolution method, and no longer only a process of distributing IP addresses between a relevant, authoritative parent server for a given domain name, and conventional DNS relay servers typically used between the client terminal and the relevant parent server.
  • Another object of the present invention is, in addition to the implementation of the aforementioned method, the implementation of an extended intermediate relay server allowing, from a relevant parent server, the implementation of the distributed DNS resolution method. object of the invention, both the method and the aforementioned relevant parent server remaining fully compatible with the current standards in force and can advantageously complement them.
  • Another object of the present invention is, finally, through the implementation of the method of the invention and a plurality of extended intermediary relay servers connected to an IP network, an INTERNET network or an enterprise network, to ensure a distribution of the computing power required for complex DNS resolutions on all or part of the deployed DNS server and relay relay tree, in order to make the data exchange traffic on the aforementioned tree structure more fluid.
  • the distributed DNS resolution method of a DNS query comprising a domain name, transmitted between a client terminal and a relevant parent server, authoritative for the DNS resolution of this DNS request, object of the invention is remarkable in that it consists in transmitting from this client terminal to an extended intermediary relay server this DNS request for the DNS resolution of this request via this relevant parent server.
  • this extended intermediate relay server in the absence of an earlier DNS resolution solution compatible with the domain name stored at this extended intermediate relay server, it consists of in addition to inserting in this DNS query a distribution extension variable of this DNS resolution to generate an extended DNS query and to transmit, from this extended intermediate relay server to this relevant parent server, the extended DNS request.
  • the method of the invention is to search and / or establish a distributed DNS resolution agent and generate and transmit to this server intermediate relay extended an extended DNS response including at least this distributed DNS resolver.
  • this extended intermediate relay server it finally consists in memorizing and executing this distributed DNS resolution agent to generate a DNS response comprising at least the IP address associated with this domain name and to transmit this DNS response to the client terminal.
  • the extended intermediate relay server enabling the implementation of the distributed DNS resolution method of a DNS query comprising a domain name, object of the present invention, this DNS request being transmitted between a client terminal and a relevant parent server, is remarkable. in that it comprises at least one module for checking the presence of an earlier DNS resolution solution compatible with this domain name stored at this extended intermediate relay server, a storage and insertion module, in this DNS query, of a distribution extension variable of this DNS resolution making it possible to generate an extended DNS query, a transmission module of this extended DNS query to this relevant parent server, a storage and execution module of a distributed DNS resolver transmitted by this relevant parent server to this extended intermediate relay server, this execution allowing generating a DNS response comprising at least the IP address associated with this domain name, and a transmission module of this DNS response to this client terminal.
  • the method and the extended intermediary relay server, objects of the present invention find application to the configuration of the architecture of the tree of servers and DNS relays deployed in the context of corporate networks or the INTERNET network. They will be better understood by reading the description and by observing the following drawings in which, in addition to FIGS. 1a to 1d relating to the prior art:
  • FIG. 2 represents, by way of illustration, a general flowchart of the essential steps for implementing the distributed DNS resolution method, object of the present invention
  • FIG. 3a represents, for purely illustrative purposes, a particular flow diagram of the steps for implementing the distributed DNS resolution method, object of the invention, in the case of a first situation where the DNS request is transmitted to the parent server. relevant via a relay server or conventional middle frame.
  • FIG. 3b represents, for purely illustrative purposes, a particular flow diagram of the implementation steps of the distributed DNS resolution method that is the subject of the invention, in the case of a second situation where a prior solution of DNS resolution, compatible with the DNS request and in particular the domain name contained therein, is stored in a second higher level intermediate relay server higher than a first extended intermediary relay server in the tree of the relevant parent server in question;
  • FIG. 3b represents, for purely illustrative purposes, a particular flow diagram of the implementation steps of the distributed DNS resolution method that is the subject of the invention, in the case of a second situation where a prior solution of DNS resolution, compatible with the DNS request and in particular the domain name contained therein, is stored in a second higher level intermediate relay server higher than a first extended intermediary relay server in the tree of the relevant parent server in question;
  • FIG. 3b represents, for purely illustrative purposes, a particular flow diagram of the implementation steps of the distributed DNS resolution method that is the subject of the invention, in the case of
  • 4a represents, by way of illustration, a particular flow chart for implementing the distributed DNS resolution method that is the subject of the invention, in the case where a first and then a second client terminal issue a DNS query relating to the same name of domain or to separate domain names that may however use known distributed sites and the distributed DNS resolution method object of the invention being implemented, for both situations, on a shared intermediate relay server and distributed distributed until at the lowest resolution level of extended intermediate relay servers vis-à-vis the relevant parent server;
  • FIG. 4b represents, for purely illustrative purposes, a particular flow chart for implementing the distributed DNS resolution method that is the subject of the present invention, from a DNS Bind server specially adapted for implementing the aforementioned method; last to ensure maximum compatibility with existing traditional DNS servers;
  • FIG. 5a represents by way of illustration a block diagram of an extended intermediate server, in accordance with the object of the present invention,
  • FIG. 5b represents, for purely illustrative purposes, a functional flowchart representative of the operating mode of the extended intermediate server represented in FIG. 5a
  • FIG. 5c represents, for purely illustrative purposes, a flowchart of the functional distribution steps of a distributed resolution agent A_R_D according to the subject of the present invention.
  • - r_DNS a classic DNS request issued by the client from the aforementioned terminal T;
  • SRE an extended intermediary relay server for implementing the method object of the present invention.
  • an extended intermediate relay server SRE is a server having two new functionalities, namely a DNS resolution implementation signaling function distributed to any higher level intermediate relay server SRE, and than any relevant parent server SPP to perform the distributed DNS resolution, and a runtime function of a distributed resolution agent A_R_D established through the relevant parent server SPP mentioned above and under the conditions set by the latter, as well as it will be described later in the description.
  • a DNS resolution implementation signaling function distributed to any higher level intermediate relay server SRE
  • any relevant parent server SPP to perform the distributed DNS resolution
  • a runtime function of a distributed resolution agent A_R_D established through the relevant parent server SPP mentioned above and under the conditions set by the latter, as well as it will be described later in the description.
  • the method which is the subject of the invention concerns a request r_DNS comprising a domain name, that is to say a mnemonic designation of a machine still designated FQDN in English, this request being transmitted between the aforementioned terminal T, client terminal and of course, a relevant parent server SPP authoritative for the DNS resolution of the aforementioned request.
  • step A of transmitting from the client terminal T to an extended intermediate relay server SRE the request r_DNS with a view to the DNS resolution of it through the relevant parent server SPP.
  • step B When at the level of the intermediate intermediate relay server SRE there is no prior solution of DNS resolution compatible with the domain name contained in the request, internal solution stored at the level of the intermediate relay relay extended SRE, then, the method object of the It is particularly advantageous in a step B to insert in the request r_DNS a distribution extension variable, denoted EV, of this DNS resolution to generate an extended DNS request, which is denoted er_DNS.
  • a distribution extension variable, denoted EV of this DNS resolution to generate an extended DNS request, which is denoted er_DNS.
  • the insertion operation is represented by the relation r - DNS VE er DNS
  • Operation B is then followed, at the SRE Extended Intermediate Relay Server, with a step C of transmitting the extended DNS query er_DNS from the SRE server to the relevant parent server SPP.
  • the method which is the subject of the invention consists in executing a step D making it possible to evaluate the value of the extension variable VE of DNS resolution distribution at the true value.
  • Step D itself then comprises an operation consisting of searching for and / or establishing a distributed DNS resolution agent, this agent being denoted by definition A_R_D.
  • This agent advantageously consists of a software agent, as will be described later in the description.
  • Step D is then followed by a step E executed at the server
  • EA_DNS (A_R_D) and having at least the distributed DNS resolver, A_R_D.
  • the method that is the subject of the invention then consists of a step F to be memorized and executed at the level of the aforementioned extended intermediary relay server.
  • A_R_D resolution to generate a DNS response with at least the IP address designated @ IP associated with the previously mentioned domain name.
  • the aforementioned DNS response is designated A_DNS (@IP).
  • the method which is the subject of the invention then consists in a step G in transmitting the DNS response, A_DNS response (@IP) of the extended intermediate relay server SRE to the client terminal T.
  • the terminal can then execute the connection requested by the client to the aforementioned address. This allows the execution of DNS resolution to be distributed at the extended relay server
  • the distributed DNS resolution method which is the subject of the invention, is thus implemented by virtue of the definition of an extension of the conventional DNS protocol, this extension allowing the relays and DNS servers of indicate the support of the technology implemented, according to the method of the invention.
  • the aforementioned extension is achieved by means of the distribution extension variable VE, this extension being able for example, without limitation, to reuse an existing type of resource, to take the form of a new OPT type DNS resource conforming to RFC 2671 or use a specific identifier in the OPCODE field of the request.
  • the implementation of the aforementioned extension allows the relevant authoritative parent server SPP for a given FQDN to return a distributed resolution agent A_R_D, which may, by way of example nonlimiting, be realized in the form of a function written in Perl language to an intermediate intermediate relay server SRE which by definition allows the implementation of the method object of the invention.
  • Each SRE extended intermediate relay server then makes it possible to implement the distributed DNS resolution by executing the distributed resolution agent A_R_D with each DNS request and in particular with each FQDN domain name associated with it being associated with a DNS agent.
  • the main parent server SPP authoritative for the domain FQDN considered and implementing the method object of the invention executes a configuration method for defining which distributed resolution agent A_R_D must be returned to a DNS query, r_DNS, from a client to an SRE Extended Intermediate Relay Server.
  • the functional diagram or situation presents the principle of implementation of the method that is the subject of the invention when none of the intermediate intermediate relay servers SRE has previously performed a DNS resolution, or when the resolution solution or A_R_D Resolver Resolved Lifetime has expired.
  • FIG. 3a corresponds to a transmission situation of the DNS request r_DNS or, if appropriate, of an extended DNS request er_DNS via a conventional relay server designated for this reason SR, this type of server corresponding to a bin server for example.
  • the method of the invention is to store and transmit the DNS query or the extended DNS request to the relevant parent server FPP. This makes it possible, of course, to ensure complete compatibility of the implementation of the method that is the subject of the present invention with the existing networks, the method that is the subject of the invention mentioned above being capable of being implemented independently of the number of relay servers.
  • FIG. 3b shows a similar example in the case of a different client A 'using a first intermediate intermediate relay SRE1 and transmitting its DNS request after the client A in the case of Figure 3a to the intermediate intermediary relay server SR substituted by the intermediate server SREi mentioned above, the extended intermediate relay server SRE 2 of Figure 3b then playing the specific role of the SER server relay server extended intermediate of Figure 3a but in a different situation in which there is a priori resolution solution prior to the transmission of the request by the client A '.
  • FIGS. 4a and 4b Various technical results obtained and a detailed description of a specific mode of implementation of the method of the invention will now be given in connection with FIGS. 4a and 4b.
  • the method which is the subject of the invention makes it possible to propagate not only conventional DNS resolutions, ie one or more IP addresses, but, on the contrary, distributed resolution agents A_R_D .
  • the aforementioned resolving agents are software agents written in a common programming language, grammar and rules, and respecting the RFC 1034 and 1035 documents in the construction of the DNS responses, in particular as regards the duration life of the resolutions.
  • Distributed resolution agent propagation thus reduces the load on intelligent central DNS servers by offloading the computational load required for resolution to lower-level DNS servers and / or relays.
  • distributed resolutions agents A_R_D also makes it possible to offer a fine-resolution intelligence that makes it possible to take into account the IP address of the client when the distributed resolution agent A_R_D can be propagated to the first level of the network.
  • DNS resolution that is to say the DNS relay of the ISP, for example, that no current DNS resolution solution is able to allow.
  • a principle of recursion can be implemented in the distributed distributed resolution agents A_R_D, allowing them to deliver in their turn no only one or more IP addresses but also all or part of themselves, as shown in Figure 4a above. Referring to Figure 4a, we consider the situation of two customers
  • DNS A 'A each transmitting a request by transactions V respectively 1".
  • Each client A 'and A is assumed for the purposes of the disclosure and in a nonlimiting manner, to implement the method which is the subject of the invention, in accordance with the situation of FIG. 3b, that is to say with from a first intermediate intermediate relay server SRE-i, separate for each of the clients A 'and A "and a second intermediate intermediate relay server SRE 2 , playing substantially the same role as in the case of Figure 3b.
  • steps 1, 3b, 3c are replaced by transactions 1 ', 3'b, 3'c, an additional transaction 3'd intervening between the intermediate relay server SRE 2 and the main parent server SPP for distributed execution of transactions 4a and 4b.
  • the latter can then be adapted according to the characteristics of the domain name required by the client A" and specificity of the terminal of the latter, for then execute the aforementioned ARD distributed resolution agent at the intermediary relay server SREi involved in the transaction requested by the client A ".
  • the method which is the subject of the invention can be implemented in a nonlimiting manner by means of a DNS Bind server.
  • An SRE extended intermediary relay server implemented from a bind DNS server enables the implementation of the method that is the subject of the invention with the aid of the modifications or adaptations hereafter: 1.
  • This type of recording integrates two coded parameters in the form of character strings and is advantageously used for the implementation of the method that is the subject of the invention.
  • reception by an SRE server or by the server
  • this agent means a compiled version of the latter, for example: implementation of a DNS request processing function making it possible to detect the presence of the variable VE in the HINFO record containing the value VE ⁇ "DNSLET" and thus to differentiate the extended DNS queries with respect to the DNS queries and respond to it either by a classical DNS response or by an extended DNS response, that is to say containing a distributed resolution agent A_R_D.
  • a request processing function is implemented, which allows the call of a program (for example a program written in the TXT text language) upon receipt of a DNS request when such a program has been associated to the FQDN domain name to resolve.
  • a program for example a program written in the TXT text language
  • Table 4 below shows the correspondence between the steps in Figure 2 and the transactions implemented in this situation.
  • the step of transmitting from the relevant parent server to the extended intermediate relay server SRE at least the distributed DNS resolution agent also consists in transmitting a variable representative of the lifetime of this distributed DNS resolver, in order to ensure sound management of computing resources and memory space of any SRE extended intermediate relay server implemented in accordance with the object of the present invention.
  • the relevant parent server SPP may be constituted by a conventional server, known to those skilled in the art, and for this reason, will not be described in detail.
  • an SRE server can be implemented from a relay server Bind. Consequently, the server SRE comprises, as represented in FIG. 5a, all the conventional elements of a aforementioned server and in particular a SCPU server central unit connected to an input I / O output unit which, of course, allows the interconnection of the server. server with any external machine, a RAM RAM and of course a mass storage unit, permanent memory unit such as hard disk or other.
  • the latter advantageously comprises a programmable memory nonvolatile protected write / read, designated P_MEM and a base of correspondence between a plurality of names domain and at least one distributed DNS resolution agent, correspondence base denoted B2, and a correspondence base B1 between a plurality of domain names and at least one IP address.
  • P_MEM programmable memory nonvolatile protected write / read
  • B2 correspondence base
  • B1 correspondence base between a plurality of domain names and at least one IP address.
  • the permanent hard disk-type memory comprises software modules, which make it possible to implement all the functionalities of the SRE server both with regard to the process of inserting the variable VE c that is, the HINFO resource indicating the extended DNS distribution and more particularly the declaration of availability for implementation of the distributed DNS resolution method at the aforementioned SRE extended intermediate relay server when the variable VE is at the true value .
  • the above-mentioned software modules also make it possible to implement the process of constructing an extended query er_DNS or an extended response EA_DNS under the conditions that have been explained in the description above.
  • the intermediate intermediate relay server SRE object of the invention may advantageously include a module for checking the presence of a prior DNS resolution solution compatible with the domain name and stored at the extended intermediate relay server, a module of storing and inserting in the DNS query of the DNS resolution distribution extension variable EV to generate an extended DNS request, query er_DNS, a transmission module of the extended DNS request to the relevant parent server, a module for storing and executing a distributed DNS resolver transmitted by the relevant parent server SPP to the intermediate relay relay server SRE as shown in FIGS. 5a and 5b.
  • This makes it possible to generate the DNS response including at least the IP address associated with the aforementioned domain name FQDN.
  • a module for transmitting the DNS response to the client terminal T is also provided.
  • the aforementioned modules are software modules, from which the central computing unit SCPU and the input-output unit I / O make it possible to transmit the corresponding messages in the format as described above in the description for example.
  • modules for checking the presence of an earlier DNS resolution solution modules for storing and inserting the DNS query of a distribution extension variable VE
  • these modules also relate to modules specific software stored in the aforementioned permanent memory, which are executed by the central computing unit SCPU.
  • agent A_R_D via the computing resources of the server SRE namely, the working memory RAM and the central computing unit
  • A_R_D or any piece of information to compile the latter.
  • a test 102 is provided to verify the existence of a previous stored resolution.
  • a test 102a is called, consisting in building the answer A_DNS for transmission to the terminal T.
  • a step 104 is called, which consists in constructing an extended request er_DNS, this step consisting, for example, in a step 105 of insertion of the resource HINFO indicating the extended DNS distribution, c that is, the insertion of the variable VE.
  • the operating mode of the server SRE is then considered in the case where a DNS request to another server / DNS relay is received in step 106 and then receiving an extended response containing of course an algorithm, that is to say that is, a distributed resolution agent A_R_D.
  • a test 108 is provided to verify that the aforementioned extended response contains an algorithm.
  • the process of the operating mode is returned to the test of the step 102.
  • the step 104 of construction of a request makes use of the correspondence base B1 allowing the setting in correspondence with the FQDN domain name and at least one IP address compatible with the latter.
  • test 109 On a positive response to the test 108, as well as on a positive response to the aforementioned test 101, that is to say in the presence of at least one algorithm that is a distributed resolution agent A_R_D, a test 109 is called, consisting in checking the presence of the extension variable VE.
  • a step 110 is called the execution of the algorithm after compilation of the latter, that is to say the distributed resolution agent A_R_D, this step 110 being followed by a step 111 of constructing the response.
  • A_DNS that is to say communication in fact the IP address @IP compatible with the FQDN domain name and constituting the desired DNS resolution.
  • step 111 the construction of the response involves the communication of either an algorithm or an algorithm and an IP @ IP address.
  • the DNS response 1 A_DNS can then be transmitted at step 112 to the terminal T.
  • a step 113 is called, which may consist of executing the distributed resolution agent A_R_D without transmission. This step 113 is then followed by the call to step 102 for the construction of the response.
  • This last mode of operation can correspond to that described previously in the description, in connection with FIG. 4a in which the execution of the distributed resolution agent A_R_D 'makes it possible to distribute portions of algorithm or distributed resolution agent.
  • the distribution process of the distributed DNS resolver A_R_D it may advantageously be constituted by a program module executable by a computer comprising, for example, as represented in FIG. extract from a DNS query or an extended DNS query parameters or conditions related to the initiator of the request, the client user, or environmental such as time of issue of the request, existence at the true value of the resolution distribution extension variable, client IP address @ 1P_C for example.
  • the executable program module allowing the distribution of the distributed resolution agent A_R_D comprises a test 201 of support for implementing the method which is the subject of the invention, which can for example, to verify the true value of the DNS resolution distribution extension VE variable.
  • a step 202 is called to return the distributed resolution agent A_R_D to the extended intermediate relay server SRE, author and user of the extended DNS request.
  • a process of diversification of the DNS response from environmental parameters can advantageously be implemented.
  • a first test 203 may consist of discriminating the value of the client address associated with the FQDN domain name in a specific range of values, the values 0.0.0.0 and 192.0.0.0 for example.
  • the domain name associated with the Internet address is a first diversified value @IPi for example.
  • a new test 204 is provided, which makes it possible to discriminate the time of transmission of the DNS query with respect to at least one hour threshold value, 12h00 in the example given.
  • the domain name associated with the Internet address in step 206 is a second diversified value @IP 2 for example.
  • the domain name associated with the Internet address in step 205 is a third diversified value @IP 3 for example. It is conceivable that the diversification of the domain name transmitted to the client user in the DNS response advantageously makes it possible to take account of the usual access conditions of the customer to distinct domain names according to the aforementioned environmental parameters.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

L'invention concerne la résolution DNS distribuée d'une requête DNS comportant un nom de domaine FQDN entre terminal (T) et serveur parent pertinent (SPP). On transmet (A) une requête DNS (r_DNS) vers un serveur relais intermédiaire étendu (SRE), et, en l'absence de solution de résolution DNS antérieure mémorisée, on insère (B) dans la requête (r_DNS) une variable (VE) d'extension de résolution DNS pour engendrer une requête DNS étendue (er DNS), on transmet (C) la requête étendue (er_DNS) vers le serveur (SPP). Sur vérification de la variable (VE) on recherche (D) un agent de résolution DNS distribuée (A_R_D), on transmet (E) une réponse DNS étendue EA DNS (A_R_D) contenant l'agent (A_R_D) vers le serveur (SRE), on exécute (F) l'agent (A_R_D) pour engendrer une réponse DNS (A_DNS@IP) comportant au moins l'adresse IP de (FQDN) et on transmet (G) la réponse A DNS(≅IP) au terminal (T). Application à la résolution DNS sur réseau IP d'entreprise ou INTERNET.

Description

Procédé et système de résolution DNS distribuée.
L'invention concerne un procédé et un système de délégation intelligente de résolution d'un système de nom de domaine, DNS en anglais pour Domain Name System, ou résolution DNS distribuée. L'accès à un serveur sur INTERNET (serveur WEB, serveur vidéo, serveur de messagerie ou autre) à partir d'un poste client, est généralement effectué après un processus dit de résolution DNS du nom ou adresse mnémotechnique de ce dernier, par exemple « www.wanadoo.fr. » en une adresse IP (adresse INTERNET), formée en général sur quatre octets « 193.152.122.103 » identifiant la machine incorporant ce serveur sur le réseau
INTERNET, afin de permettre la connexion physique du poste client à ce serveur.
Ce processus de résolution DNS est mis en œuvre à l'aide du protocole éponyme (protocole DNS) et fait appel à un mécanisme de récursivité du processus de résolution DNS. Par principe, le poste client demandeur envoie sa requête de résolution
DNS au serveur DNS de son fournisseur d'accès à INTERNET ou de son entreprise. Si ce serveur n'est pas en mesure de retourner une adresse IP correspondant au nom de serveur à résoudre, ce dernier contacte à son tour un serveur DNS parent (selon des règles simples et bien connues de configuration) afin de demander à celui-ci d'effectuer la résolution et de retourner la réponse.
Le même mécanisme s'applique alors pour ce serveur parent, et, par récursivité, la requête aboutit finalement à un serveur DNS pertinent, faisant autorité pour la résolution DNS initiale, lequel retourne, selon le formalisme défini dans les documents RFC 1034 et 1035, (pour Request For Comment en anglais), une ou plusieurs adresses IP correspondant au nom de serveur à résoudre.
Cette réponse s'accompagne en outre d'une information de durée de vie indiquant aux différents serveurs DNS ayant pris part au processus de résolution de conserver la réponse en mémoire, sur disque ou RAM, à des fins de résolution ultérieure plus rapide. Enfin, à l'heure actuelle, le processus de résolution DNS permet, classiquement, de retourner au poste client demandeur et aux serveurs DNS intermédiaires soit une ou plusieurs adresses IP de réponse, soit un message d'erreur. Afin de pouvoir réaliser ce processus de résolution DNS1 les serveurs DNS ayant autorité pour un nom de domaine, dont ils assurent la résolution ou traduction finale en adresse IP, sont configurés :
- soit à l'aide d'entrées « simples » associant une adresse IP à un nom de machine, désigné FQDN pour FuIIy Qualified Domain Name en anglais ;
- soit à l'aide d'entrées « multiples », associant plusieurs adresses IP à un nom de machine, le serveur, dans ce cas, retournant cette liste comme réponse ;
- ou encore à l'aide de processus ou algorithmes de résolution plus ou moins complexes, permettant de retourner une ou plusieurs adresses en fonction de paramètres plus ou moins évolués, tels que : adresse IP du poste client (ou sous réseau), localisation géographique du poste client, charge des serveurs, par exemple. Ces systèmes DNS sont qualifiés de systèmes DNS intelligents, dans la mesure où ces derniers sont capables de retourner une réponse en fonction de paramètres et conditions complexes, et non d'une entrée simple dans un tableau de correspondance.
Un rappel du mode opératoire du modèle et du protocole DNS connus de l'état de la technique sera tout d'abord exposé en référence aux figures 1a à
1d ci-après. L'objectif du modèle DNS est de définir un espace de nommage cohérent des ressources INTERNET permettant d'établir une correspondance entre un nom et une adresse IP à un instant donné.
Ce modèle repose sur un système arborescent, capable de supporter une forte croissance de charge et permettant à chaque organisation de gérer son espace d'adressage.
Dans ce système arborescent, tel que représenté à titre d'exemple en figure 1a, chaque nœud est un domaine et chaque domaine est également un sous-domaine, excepté le serveur racine.
Les serveurs gérant le modèle précité sont classés selon trois rôles fonctionnels :
- serveurs chargés de gérer les domaines : ces serveurs sont dits itératifs car ils ne répondent qu'aux questions portant sur les zones qu'ils gèrent ; - serveurs intermédiaires ; encore désignés caches DNS, ces serveurs, optionnels, ont pour objet de stocker les requêtes les plus demandées, afin d'accélérer les temps de résolution DNS ;
- serveurs locaux : prenant en charge les requêtes des utilisateurs, ces serveurs sont dits récursifs car ils sont capables d'interroger l'ensemble de l'arborescence DNS, afin de résoudre une requête d'un client.
L'architecture d'une telle subdivision fonctionnelle est représentée en figure 1b.
Le modèle DNS étant exploité à l'aide du protocole éponyme, les requêtes DNS présentent la structure de données représentée en figure 1c.
Dans le champ Entête de la requête, le champ OPCODE sert au client à indiquer la nature de sa demande (résolution de nom, authentification), le champ RCODE sert au serveur pour indiquer si la demande du client a réussi, et, sinon, la raison de l'échec. Les informations contenues dans les champs « QUESTION »,
« ANSWER », « AUTHORITY » et « ADDITIONAL » correspondent à des enregistrements, encore désignés RR pour Resource Record, se présentant sous la forme globale telle que représentée en figure 1 d.
La donnée du champ « donnée référencée » correspond au nom demandé par un client ou au nom renseigné par un serveur. Cette donnée est, le plus souvent, de type FQDN pour FuIIy Qualified Domain Name, soit une adresse mnémotechnique, www.francetelecom.fr par exemple.
La donnée « paramètre TTL » indique la durée de vie de l'information. Cette donnée ou paramètre est utilisée notamment par les serveurs DNS caches pour stocker temporairement l'information.
La donnée « classe d'enregistrement » indique le réseau dans lequel la ressource doit être recherchée.
Aujourd'hui, seul le réseau INTERNET, valeur de donnée IN, est effectivement utilisé. La donnée « valeur » correspond à la réponse qui est renvoyée par le serveur autoritaire au client. La syntaxe de la réponse précitée varie en fonction du type d'enregistrement.
Enfin, la donnée « type d'enregistrement » permet de connaître la nature de l'enregistrement demandé par le client ou renvoyé par le serveur. II existe actuellement 21 types d'enregistrements standards et une vingtaine de types expérimentaux. Le type le plus fréquemment utilisé est A pour adresse, lequel indique qu'un client demande une adresse IP en réponse à un nom de serveur. Deux autres types de standards, peu usités, peuvent toutefois être exploités :
- le type HINFO (Host Information) permet à un serveur DNS de fournir des informations sur son unité centrale de traitement CPU et son système d'exploitation, ces informations étant présentées chacune sous forme d'une chaîne de caractère ASCII ;
- le type TXT pour Texte, ce type permettant à un client ou un serveur DNS de fournir une description libre, sous forme d'une chaîne de caractères ASCII.
Enfin, un mécanisme d'extension des requêtes DNS appelé EDNSO est défini par la spécification RFC 2671. Ce mécanisme vise à lever certaines limitations du standard DNS par la création de nouveaux messages. Le mécanisme d'extension précité est aujourd'hui principalement utilisé pour augmenter la taille maximale des requêtes DNS et est essentiellement basé sur une modification du champ OPCODE et l'utilisation d'un nouveau type de ressource appelé OPT.
En ce qui concerne les serveurs DNS classiques et leur architecture, on indique que ceux-ci reposent sur le principe simple selon lequel une table de correspondance est établie entre, d'une part, les ressources gérées, et, d'autre part, les réponses associées. Lorsqu'un serveur DNS classique reçoit une requête d'un client, il se contente de récupérer la ou les réponses associées à la question et renvoie celle(s)-ci au client.
Parmi les serveurs DNS actuellement mis en œuvre, on peut citer à titre d'exemple :
Bind : le serveur développé par l'Internet Software Consortium, dont les membres sont à l'origine de plusieurs protocoles d'extension DNS ;
Microsoft DNS server : ce serveur développé par la société Microsoft Corporation, devenu opérationnel avec la version fournie avec le système d'exploitation Windows 2000 ®. Ce serveur s'intégrant facilement dans un réseau local Microsoft est de plus en plus utilisé dans un contexte de réseau d'entreprise mais reste moins développé dans le contexte INTERNET ;
NSD (Name Server Daemon) :
Apparu récemment en première version en juin 2003, ce serveur est un serveur DNS libre de droits, développé par NLnet Labs. NSD est un serveur uniquement itératif qui présente la particularité de compiler ses fichiers de zone en automates. Ce processus de compilation lui permet de répondre immédiatement à une requête, car toutes les questions possibles ont été calculées et préétablies au préalable et toutes les réponses ont été préenregistrées.
Bien que d'apparition récente, NSD est aujourd'hui de plus en plus répandu et est utilisé, notamment, comme DNS autoritaire pour la gestion des domaines de haut niveau, Top Level Domains en anglais, c'est-à-dire des domaines racines dont l'extension est relative à un espace important, pays ou groupement, tel que « .fr », « .ni » ou autre.
L'absence de mode opératoire récursif ne permet toutefois pas d'utiliser ce serveur DNS pour résoudre les requêtes clients ;
Power DNS :
Développé par la société Power DNS BV, ce serveur se différencie des solutions précédentes en ce qu'il s'appuie sur des bases de données pour gérer les enregistrements DNS. Les fonctionnalités associées à cette mise en œuvre rendent Power DNS intéressant pour gérer des domaines dynamiques. En revanche, il s'avère mal adapté à une utilisation en serveur DNS récursif.
Consécutivement à l'apparition, récente, des solutions d'hébergement distribué des serveurs, le système de résolution DNS standard est devenu insuffisant.
En effet, ce dernier ne permet pas de sélectionner, dans un ensemble de réponses, celle qui serait la plus adaptée pour un client donné.
A partir de ce constat, des solutions de résolutions dites intelligentes ont été proposées.
Les solutions intelligentes précitées, basées sur le protocole DNS, permettent à l'aide de sondes de mesurer différents paramètres physiques ou d'exploitation du réseau assurant la connexion entre un client et des sites serveurs distribués.tels que latence du réseau, charge des sites serveurs proximité. A l'aide de ces paramètres, les solutions précitées évaluent, sur critère de comparaisons, dans un groupe de réponses, celle qui apparaît la mieux adaptée à un client donné et ne renvoient que cette réponse à ce dernier.
Les solutions de résolution DNS intelligente sont commercialisées aujourd'hui sous deux formes :
- Réseaux de distribution de contenus, CDN pour Content Delivery Networks en anglais, les principaux acteurs de ce type de services étant les sociétés Akamaï et Mirror Imager par exemple ;
- Serveurs DNS, les principaux acteurs étant les sociétés F5 3-DNS server et CISCO par exemple.
Les techniques de l'art antérieur précitées présentent les inconvénients ci-après.
Les serveurs classiques, capables uniquement de retrouver une ou plusieurs adresses IP pour résoudre un FQDN, adresse mnémotechnique, après consultation d'une table de correspondances, présentent l'avantage d'être simples et performants. Ils ne permettent toutefois pas de mettre en œuvre une résolution DNS optimisée et fiable, permettant de retrouver une adresse IP associée à un nom de serveur autorisant un accès garanti et rapide pour le client final. Les serveurs « intelligents », capables de retrouver une ou plusieurs adresses IP pour résoudre un FQDN en fonction d'algorithmes plus ou moins complexes, présentent l'avantage de pouvoir répondre à un client de manière optimisée et fiable mais introduisent le désavantage considérable de gérer à partir d'une structure centralisée l'ensemble des requêtes des clients, et, donc, de nécessiter une puissance de calcul proportionnelle à la fois au débit de transmission à assurer, à la complexité de l'algorithme de résolution mis en œuvre et aux paramètres de résolutions mis en cause, tels que adresse IP du client, charges des serveurs par exemple.
Par ailleurs, dans le schéma actuel de résolution DNS, seul le serveur DNS autoritaire pour un FQDN résout effectivement le nom de domaine, car il est la seule puissance de calcul effectivement mise en œuvre.
Les serveurs DNS intermédiaires, encore appelés proxies, caches ou relais, jouent uniquement un rôle d'accélérateur de résolution par le biais de mécanismes de stockage temporaire et exécution des résolutions selon des règles définies par les spécifications RFC 1034 et 1035.
Il n'existe donc à ce jour aucune résolution DNS à la fois intelligente et distribuée. La présente invention a pour objet la mise en œuvre d'un procédé de résolution DNS distribuée intelligente, au niveau de tout serveur relais intermédiaire étendu, dans le but de mettre en œuvre le procédé de résolution DNS distribuée, et non plus uniquement un processus de distribution d'adresses IP entre un serveur parent pertinent, faisant autorité pour un nom de domaine donné, et les serveurs relais DNS classiques utilisés habituellement entre le terminal client et le serveur parent pertinent.
Un autre objet de la présente invention est, outre la mise en œuvre du procédé précité, la mise en œuvre d'un serveur relais intermédiaire étendu permettant, à partir d'un serveur parent pertinent, la mise en œuvre du procédé de résolution DNS distribuée objet de l'invention, tant le procédé que le serveur parent pertinent précités demeurant totalement compatibles avec les normes actuelles en vigueur et pouvant avantageusement compléter ces dernières.
Un autre objet de la présente invention est, enfin, grâce à la mise en œuvre du procédé objet de l'invention et d'une pluralité de serveurs relais intermédiaires étendus connectés en réseau IP, réseau INTERNET ou réseau d'entreprise, d'assurer une répartition de la puissance de calcul nécessaire aux résolutions DNS complexes sur tout ou partie de l'arborescence de serveurs et relais DNS déployés, afin de fluidifier le trafic d'échange de données sur l'arborescence précitée. Le procédé de résolution DNS distribuée d'une requête DNS, comportant un nom de domaine, transmise entre un terminal client et un serveur parent pertinent, faisant autorité pour la résolution DNS de cette requête DNS, objet de l'invention est remarquable en ce qu'il consiste à transmettre de ce terminal client vers un serveur relais intermédiaire étendu cette requête DNS en vue de la résolution DNS de cette requête par l'intermédiaire de ce serveur parent pertinent.
Au niveau de ce serveur relais intermédiaire étendu, en l'absence de solution antérieure de résolution DNS compatible avec le nom de domaine mémorisé au niveau de ce serveur relais intermédiaire étendu, il consiste en outre à insérer dans cette requête DNS une variable d'extension de distribution de cette résolution DNS pour engendrer une requête DNS étendue et à transmettre, de ce serveur relais intermédiaire étendu vers ce serveur parent pertinent, la requête DNS étendue. Au niveau du serveur parent pertinent, sur vérification à la valeur vraie de la variable d'extension de distribution, le procédé objet de l'invention consiste à rechercher et/ou établir un agent de résolution DNS distribuée et à engendrer et transmettre vers ce serveur relais intermédiaire étendu une réponse DNS étendue comportant au moins cet agent de résolution DNS distribuée. Au niveau de ce serveur relais intermédiaire étendu, il consiste enfin à mémoriser et exécuter cet agent de résolution DNS distribuée pour engendrer une réponse DNS comportant au moins l'adresse IP associée à ce nom de domaine et à transmettre cette réponse DNS vers le terminal client.
Ceci permet de distribuer l'exécution de cette résolution DNS au niveau de ce serveur relais intermédiaire étendu.
Le serveur relais intermédiaire étendu permettant la mise en œuvre du procédé de résolution DNS distribuée d'une requête DNS comportant un nom de domaine, objet de la présente invention, cette requête DNS étant transmise entre un terminal client et un serveur parent pertinent, est remarquable en ce qu'il comporte au moins un module de vérification de la présence d'une solution antérieure de résolution DNS compatible avec ce nom de domaine mémorisée au niveau de ce serveur relais intermédiaire étendu, un module de mémorisation et d'insertion, dans cette requête DNS, d'une variable d'extension de distribution de cette résolution DNS permettant d'engendrer une requête DNS étendue, un module de transmission de cette requête DNS étendue vers ce serveur parent pertinent, un module de mémorisation et d'exécution d'un agent de résolution DNS distribuée transmis par ce serveur parent pertinent à ce serveur relais intermédiaire étendu, cette exécution permettant d'engendrer une réponse DNS comportant au moins l'adresse IP associée à ce nom de domaine, et un module de transmission de cette réponse DNS vers ce terminal client.
Le procédé et le serveur relais intermédiaire étendu, objets de la présente invention, trouvent application à la configuration de l'architecture de l'arborescence de serveurs et relais DNS déployés dans le cadre de réseaux d'entreprise ou du réseau INTERNET. Ils seront mieux compris à la lecture de la description et à l'observation des dessins ci-après dans lesquels, outre les figures 1a à 1d relatives à l'art antérieur :
- la figure 2 représente, à titre illustratif, un organigramme général des étapes essentielles de mise en œuvre du procédé de résolution DNS distribuée, objet de la présente invention ;
- la figure 3a représente, à titre purement illustratif, un organigramme particulier des étapes de mise en oeuvre du procédé de résolution DNS distribuée, objet de l'invention, dans le cas d'une première situation où la requête DNS est transmise au serveur parent pertinent par l'intermédiaire d'un serveur relais ou cadre intermédiaire classique.
- la figure 3b représente, à titre purement illustratif, un organigramme particulier des étapes de mise en œuvre du procédé de résolution DNS distribuée objet de l'invention, dans le cas d'une deuxième situation où une solution antérieure de résolution DNS, compatible avec la requête DNS et en particulier le nom de domaine contenu dans celle-ci, est mémorisée dans un deuxième serveur relais intermédiaire étendu de niveau supérieur à un premier serveur relais intermédiaire étendu dans l'arborescence du serveur parent pertinent considéré ; - la figure 4a représente, à titre illustratif, un organigramme particulier de mise en œuvre du procédé de résolution DNS distribuée objet de l'invention, dans le cas où un premier puis un deuxième terminal client émettent une requête DNS relative à un même nom de domaine ou à des noms de domaine distincts pouvant toutefois faire appel à des sites distribués connus et le procédé de résolution DNS distribuée objet de l'invention étant mis en œuvre, pour les deux situations, sur un serveur relais intermédiaire étendu commun et distribué jusqu'au niveau de résolution le plus bas de serveurs relais intermédiaires étendus vis-à-vis du serveur parent pertinent ;
- la figure 4b représente, à titre purement illustratif, un organigramme particulier de mise en œuvre du procédé de résolution DNS distribuée objet de la présente invention, à partir d'un serveur DNS Bind spécialement adapté pour la mise en œuvre du procédé précité, ce dernier permettant de garantir une compatibilité maximale avec les serveurs DNS classiques existants ; - la figure 5a représente à titre illustratif un schéma synoptique d'un serveur intermédiaire étendu, conforme à l'objet de la présente invention,
- la figure 5b représente, à titre purement illustratif, un organigramme fonctionnel représentatif du mode opératoire du serveur intermédiaire étendu représenté en figure 5a,
- la figure 5c représente, à titre purement illustratif, un organigramme des étapes fonctionnelles de distribution d'un agent de résolution distribuée A_R_D conformément à l'objet de la présente invention.
Une description plus détaillée du procédé de résolution DNS distribuée, conforme à l'objet de la présente invention sera maintenant décrit en liaison avec la figure 2 et les figures suivantes.
Préalablement à la description proprement dite du procédé précité, différentes indications seront données ci-après relativement à la notation utilisée et l'utilisation des signes de référence correspondants, pour désigner les éléments techniques et/ou fonctionnels permettant la mise en œuvre du procédé objet de l'invention.
D'une manière générale, en référence à la figure 2, on désigne par :
- T le poste ou terminal client auteur d'une requête DNS ;
- r_DNS : une requête DNS de type classique émise par le client à partir du terminal T précité ;
- SPP un serveur parent pertinent faisant autorité pour exécuter la résolution DNS et susceptible . de mettre en œuvre le procédé objet de la présente invention ;
- SRE un serveur relais intermédiaire étendu permettant la mise en œuvre du procédé objet de la présente invention.
D'une manière plus spécifique, on indique qu'un serveur relais intermédiaire étendu SRE est un serveur présentant deux fonctionnalités nouvelles, à savoir une fonction de signalisation de mise en œuvre de résolution DNS distribuée à tout serveur relais intermédiaire SRE de niveau supérieur, ainsi qu'à tout serveur parent pertinent SPP pour exécuter la résolution DNS distribuée, et une fonction d'exécution d'un agent de résolution distribuée A_R_D établie par l'intermédiaire du serveur parent pertinent SPP précité et dans les conditions fixées par ce dernier, ainsi qu'il sera décrit ultérieurement dans la description. En référence à la figure 2, on indique que le procédé objet de l'invention concerne une requête r_DNS comportant un nom de domaine, c'est-à- dire, une désignation mnémotechnique d'une machine encore désignée FQDN en anglais, cette requête étant transmise entre le terminal T précité, terminal client et bien entendu, un serveur parent pertinent SPP faisant autorité pour la résolution DNS de la requête précitée.
Conformément à un aspect remarquable du procédé de l'invention, en référence à la figure 2, celui-ci consiste au moins, en une étape A, à transmettre du terminal client T vers un serveur relais intermédiaire étendu SRE la requête r_DNS en vue de la résolution DNS de celle-ci par l'intermédiaire du serveur parent pertinent SPP.
Lorsqu'au niveau du serveur relais intermédiaire étendu SRE il n'existe aucune solution antérieure de résolution DNS compatible avec le nom de domaine contenu dans la requête, solution intérieure mémorisée au niveau du serveur relais intermédiaire étendu SRE, alors, le procédé objet de l'invention consiste de manière particulièrement avantageuse, dans une étape B à insérer dans la requête r_DNS une variable d'extension de distribution, variable notée VE, de cette résolution DNS pour engendrer une requête DNS étendue, laquelle est notée er_DNS. Sur la figure 2, à l'étape B de celle-ci, l'opération d'insertion est représentée par la relation r - DNS VE er DNS
L'opération B est alors suivie, au niveau du serveur relais intermédiaire étendu SRE, d'une étape C consistant à transmettre du serveur SRE vers le serveur parent pertinent SPP la requête DNS étendue er_DNS.
Suite à la réception au niveau du serveur parent pertinent SPP de la requête er_DNS, le procédé objet de l'invention consiste à exécuter une étape D permettant d'évaluer à la valeur vraie la variable d'extension VE de distribution de résolution DNS. Cette opération est représentée à l'étape D précitée par la relation :VE = vraie
L'étape D proprement dite comporte alors une opération consistant à rechercher et/ou établir un agent de résolution DNS distribué, cet agent étant noté par définition A_R_D. Cet agent consiste avantageusement en un agent logiciel, ainsi qu'il sera décrit ultérieurement dans la description. L'étape D est alors suivie d'une étape E exécutée au niveau du serveur
SPP consistant à engendrer et transmettre du serveur parent pertinent SPP vers le serveur relais intermédiaire étendu SRE une réponse DNS étendue notée
EA_DNS (A_R_D) et comportant au moins l'agent de résolution DNS distribuée, A_R_D.
Suite à la réception de la réponse DNS étendue EA_DNS (A_R_D) par le serveur relais intermédiaire étendu SRE, le procédé objet de l'invention consiste alors en une étape F à mémoriser et exécuter au niveau du serveur relais intermédiaire étendu précité l'agent de résolution A_R_D pour engendrer une réponse DNS comportant au moins l'adresse IP désignée @ IP associée au nom de domaine précédemment mentionné. Sur la figure 2, à l'étape F exécutée au niveau du serveur SRE, la réponse DNS précitée est désignée A_DNS (@IP).
Le procédé objet de l'invention consiste ensuite en une étape G à transmettre la réponse DNS, réponse A_DNS (@IP) du serveur relais intermédiaire étendu SRE vers le terminal client T.
Disposant de l'adresse IP @IP précitée, le terminal peut alors exécuter la connexion demandée par le client à l'adresse précitée. Ceci permet de distribuer l'exécution de la résolution DNS au niveau du serveur relais étendu
SRE en lieu et place d'une exécution classique au niveau du serveur parent pertinent SPP.
D'une manière générale, on indique que le procédé de résolution DNS distribuée, objet de l'invention, est ainsi mis en œuvre grâce à la définition d'une extension du protocole DNS classique, cette extension permettant aux relais et serveurs DNS d'indiquer le support de la technologie mise en œuvre, conformément au procédé objet de l'invention.
D'une manière plus particulière, on indique que l'extension précitée est réalisée par l'intermédiaire de la variable d'extension de distribution VE, cette extension pouvant par exemple, à titre non limitatif, réutiliser un type de ressource existant, prendre la forme d'une nouvelle ressource DNS de type OPT conforme à la recommandation RFC 2671 ou encore utiliser un identifiant spécifique dans le champ OPCODE de la requête.
En outre, la mise en œuvre de l'extension précitée permet au serveur parent pertinent SPP faisant autorité pour un nom de domaine FQDN donné de retourner un agent de résolution distribuée A_R_D, lequel peut, à titre d'exemple non limitatif, être réalisé sous la forme d'une fonction écrite en langage Perl vers un serveur relais intermédiaire étendu SRE lequel par définition permet la mise en œuvre du procédé objet de l'invention.
Chaque serveur relais intermédiaire étendu SRE permet alors la mise en œuvre de la résolution DNS distribuée par exécution de l'agent de résolution distribuée A_R_D à chaque requête DNS et en particulier à chaque nom de domaine FQDN associé à celle-ci étant associé un agent de résolution distribuée
A_R_D et non pas une ou plusieurs adresses IP.
Par ailleurs, le serveur parent principal SPP faisant autorité pour le nom de domaine FQDN considéré et mettant en œuvre le procédé objet de l'invention exécute une méthode de configuration permettant de définir quel agent de résolution distribuée A_R_D doit être retourné à une requête DNS, r_DNS, d'un client vers un serveur relais intermédiaire étendu SRE.
Différents schémas de mise en œuvre du procédé objet de la présente invention seront maintenant décrits en liaison avec les figures 3a et 3b.
Dans le cas de la figure 3a, et à titre d'exemple non limitatif, le schéma ou situation fonctionnelle présente le principe de mise en œuvre du procédé objet de l'invention lorsque aucun des serveurs relais intermédiaires étendus SRE n'a auparavant effectué une résolution DNS ou lorsque la durée de vie de solution de résolution ou d'agent de résolution A_R_D mémorisée est expirée.
La figure 3a correspond à une situation de transmission de la requête DNS r_DNS ou, le cas échéant, d'une requête DNS étendue er_DNS via un serveur relais classique désigné pour cette raison SR, ce type de serveur correspondant à un serveur bin par exemple. Dans cette situation, on comprend que le procédé objet de l'invention consiste à mémoriser et à transmettre la requête DNS ou la requête DNS étendue vers le serveur parent pertinent FPP. Ceci permet bien entendu, d'assurer une compatibilité totale de la mise en œuvre du procédé objet de la présente invention avec les réseaux existants, le procédé objet de l'invention précitée étant susceptible d'être mis en œuvre indépendamment du nombre de serveurs relais classiques SR intervenant dans la transmission de toute requête DNS respectivement de toute requête DNS étendue vers le serveur parent principal SPP. De manière plus particulière, dans le cadre des figures 3a et 3b, la mise en œuvre de la procédure objet de la présente invention est décrite sous forme de transactions entre le terminal T, via un serveur relais intermédiaire classique SR ou un serveur relais intermédiaire étendu SRE et le serveur parent principal SPP et la correspondance entre les étapes représentées en figure 2 et les transactions précitées est représentée au tableau 1 ci-après et reportée sur la figure 3a.
Les transactions sont les suivantes :
1. transmission de la requête R-DNS,
2. transmission de la requête r_DNS entre le serveur SR et le serveur SRE,
3b. insertion de la variable d'extension VE,
3c. transmission de la requête DNS étendue er_DNS,
4a. vérification de la variable d'extension VE à la valeur vraie, VE = vraie,
4b. recherche et/ou construction de l'agent de résolution distribuée
A_R_D,
5. génération/transmission de la réponse DNS étendue EA_DNS
(A_R_D),
6. stockage temporaire de A_R_D,
7. exécution de A_R_D pour engendrer la réponse DNS A_DNS
(@IP).
8. transmission de la réponse A_DNS (@IP),
9. stockage temporaire de A_DNS (@IP),
10. transmission de A_DNS (@IP).
Figure imgf000016_0001
La figure 3b reprend un exemple semblable dans le cas d'un client A' différent utilisant un premier relais intermédiaire étendu SRE1 et transmettant sa requête DNS après le client A dans le cas de la figure 3a au serveur relais intermédiaire classique SR substitué par le serveur intermédiaire étendu SREi précédemment cité, le serveur relais intermédiaire étendu SRE2 de la figure 3b jouant alors le rôle spécifique du serveur SER serveur relais intermédiaire étendu de la figure 3a mais dans une situation différente dans laquelle il existe a priori une solution de résolution antérieure à la transmission de la requête par le client A'.
Les transactions mises en œuvre dans le cas de la figure 3b sont partiellement identiques à celles mises en œuvre dans le cadre de la figure 3a mais les transactions 2, 9 et 10 sont alors supprimées alors que les transactions ou étapes entre le serveur relais intermédiaire étendu SRE2 et le serveur parent pertinent SPP sont elles-mêmes court-circuitées du fait du stockage temporaire de la réponse au niveau intermédiaire, c'est-à-dire au niveau du serveur relais intermédiaire étendu SRE2. On comprend, en particulier, que du fait du stockage temporaire précité, les transactions 4a et 4b réalisées préalablement dans le cadre de la figure 3a au niveau du serveur parent pertinent SPP sont maintenant mises en œuvre au niveau serveur relais intermédiaire étendu SRE indice 2, alors que les transactions 3b, 6, 7 d'insertion de la variable d'extension de distribution VE1 de stockage temporaire de l'agent de résolution distribuée, A_R_D et l'exécution de cet agent sont maintenant mises en œuvre au niveau du serveur relais intermédiaire SREi qui joue donc bien le rôle du serveur relais intermédiaire étendu SRE de la figure 3a. Cette étape de mémorisation évite tout un jeu de requêtes/réponses avec le serveur SPP et aussi, d'une part, améliore sensiblement le temps de réponse pour le client et, d'autre part, soulage le serveur SPP.
La correspondance entre les étapes de la figure 2 et les différentes transactions est donnée dans le tableau 2 ci-après : Tableau 2
Figure imgf000017_0001
Figure imgf000018_0001
Différents résultats techniques obtenus et une description détaillée d'un mode de mise en œuvre spécifique de mise en oeuvre du procédé objet de l'invention sera maintenant donnée en liaison avec des figures 4a et 4b. D'une manière générale, on indique que le procédé objet de l'invention permet de propager non plus uniquement des résolutions DNS classiques, c'est- à-dire une ou plusieurs adresses IP, mais au contraire, des agents de résolutions distribuées A_R_D.
Dans une mise en œuvre préférée, les agents de résolution précités sont des agents logiciels écrits en un langage de programmation commun, grammaire et règles, et respectant les documents RFC 1034 et 1035 dans la construction des réponses DNS, notamment en ce qui concerne la durée de vie des résolutions.
La propagation d'agents de résolutions distribuées permet ainsi de réduire la charge des serveurs DNS centraux intelligents en déportant la charge de calcul nécessaire à la résolution vers des serveurs et/ou relais DNS de plus bas niveau.
L'utilisation d'agents de résolutions distribuées A_R_D permet en outre d'offrir une intelligence de résolution fine permettant notamment de tenir compte de l'adresse IP du client lorsque l'agent de résolution distribuée A_R_D peut être propagé jusqu'au premier niveau de résolution DNS, c'est-à-dire du relais DNS du fournisseur d'accès Internet par exemple, ce qu'aucune solution de résolution DNS actuelle n'est en mesure d'autoriser.
Selon un aspect particulièrement remarquable du procédé objet de la présente invention, tel que représenté en figure 4a, un principe de récursivité peut être mis en œuvre dans les agents de résolutions distribuées A_R_D propagées, en permettant à ceux-ci de délivrer à leur tour non seulement une ou plusieurs adresses IP mais aussi tout ou partie d'eux-mêmes, ainsi que représenté sur la figure 4a précitée. En référence à la figure 4a, on considère la situation de deux clients
DNS A' A" transmettant chacun une requête par des transactions V respectivement 1 ". Chaque client A' et A" est supposé pour les besoins de l'exposé et de manière non limitative, mettre en oeuvre le procédé objet de l'invention, conformément à la situation de la figure 3b, c'est-à-dire à partir d'un premier serveur relais intermédiaire étendu SRE-i, distinct pour chacun des clients A' et A" et d'un deuxième serveur relais intermédiaire étendu SRE2, jouant sensiblement le même rôle que dans le cas de la figure 3b.
En supposant que le client A' transmet sa requête en premier, et reçoit bien entendu une réponse DNS, A_DNS(@IP), conformément au mode opératoire de la figure 3b, les transactions 4a et 4b sont toutefois réparties entre le deuxième serveur relais intermédiaire SRE2 et le serveur parent principal SPP dans le cas de la figure 4a, en l'absence de suppression ou court-circuit des étapes par stockage temporaire de la réponse au niveau intermédiaire SRE2.
Dans ces conditions, on comprend que les étapes 1 , 3b, 3c sont remplacées par des transactions 1 ', 3'b, 3'c, une transaction supplémentaire 3'd intervenant entre le serveur relais intermédiaire SRE2 et le serveur parent principal SPP pour l'exécution répartie des transactions 4a et 4b.
Il en est de même pour le cas du client A" relativement aux transactions 1", 3"b et 3"c.
Dans ces conditions, on comprend que l'opération de répartition des transactions 4a et 4b concernant la recherche et/ou la reconstruction de l'agent de résolution distribuée A_R_D', puis le stockage temporaire de cet agent de distribution distribuée et d'exécution de ce dernier au niveau du deuxième serveur relais intermédiaire SRE2 permettant d'une part, l'exécution d'une résolution DNS à adresse IP multiple, et, d'autre part, la subdivision de l'agent de résolution distribuée ARD' au niveau du serveur SRE2 en parties fonctionnelles de ce dernier et en particulier en une partie fonctionnelle A_R_D". Cette dernière peut alors être adaptée en fonction des caractéristiques du nom de domaine requis par le client A" et de spécificité du terminal de ce dernier, pour exécuter ensuite l'agent de résolution distribuée ARD" précité au niveau du serveur relais intermédiaire SREi intervenant dans la transaction demandée par le client A".
La correspondance entre les étapes de la figure 2 et les transactions représentées à la figure 4a) est donnée au tableau 3 ci-après. Tableau 3 :
Figure imgf000020_0001
Le procédé objet de l'invention peut être mis en œuvre de manière préférentielle non limitative au moyen d'un serveur DNS Bind.
Un tel mode de mise en oeuvre sera maintenant décrit en liaison avec la figure 4b, grâce à l'utilisation des types de ressources HINFO et TXT du protocole bind, ces types de ressources permettant de garantir une compatibilité maximale avec les serveurs DNS existants.
Un serveur relais intermédiaire étendu SRE mis en œuvre à partir d'un serveur DNS bind permet la mise en œuvre du procédé objet de l'invention à l'aide des modifications ou adaptations ci-après : 1. L'émission dans le champ additionnel des requêtes DNS d'un enregistrement HINFO. Ce type d'enregistrement intègre deux paramètres codifiés sous forme de chaînes de caractères et est avantageusement utilisé pour la mise en œuvre du procédé objet de l'invention. Ainsi, la chaîne de caractères CPU peut être utilisée conformément à l'objet de la présente invention pour indiquer que le serveur SRE supporte la mise en œuvre du procédé objet de l'invention en prenant par exemple pour valeur de la variable VE = « DNSLET » tandis que la chaîne de caractères OS peut être utilisée pour indiquer une version éventuelle du protocole associée à l'invention, version « 1.0 par exemple ». 2. Dans le cas d'une réception par un serveur SRE ou par le serveur
SPP d'une requête DNS étendue contenant donc un enregistrement HINFO de valeur VE = « DNSLET », les réponses DNS étendues sont obtenues par l'insertion dans le champ additionnel d'un enregistrement HINFO précité associé à un enregistrement dans le champ TXT. Ce type d'enregistrement dans le champ TXT est alors utilisé pour transmettre l'agent de résolution distribuée A_R_D sous forme de chaîne de caractères. On comprend bien entendu que l'exécution ultérieure de cet agent s'entend d'une version compilée de ce dernier, par exemple : - mise en œuvre d'une fonction de traitement des requêtes DNS permettant de détecter la présence de la variable VE dans l'enregistrement HINFO contenant la valeur VE ≈ « DNSLET » et ainsi différencier les requêtes DNS étendues vis-à-vis des requêtes DNS classiques et y répondre soit par une réponse DNS classique, soit par une réponse DNS étendue, c'est-à-dire contenant un agent de résolution distribuée A_R_D.
- une fonction de traitement des requêtes est mise en œuvre, laquelle permet l'appel d'un programme (par exemple un programme écrit en langage perle au format texte TXT) sur réception d'une requête DNS lorsqu'un tel programme a été associé au nom de domaine FQDN à résoudre.
- mise en œuvre d'une fonction de traitement des réponses issues de serveurs DNS de plus haut niveau permettant de stocker un agent de résolution distribuée A_R__D associé au nom de domaine FQDN1 en plus des règles de stockage classique définies sur le serveur Bind. - mise en œuvre d'une interface de configuration permettant de spécifier l'agent de résolution distribuée à appliquer ou transférer sur réception d'une requête DNS lorsque le serveur DNS fait autorité pour le nom de domaine FQDN.
La mise en œuvre du procédé objet de l'invention par utilisation des enregistrements HINFO et TXT du protocole Bind présente un avantage particulièrement intéressant vis-à-vis des autres possibilités mises en œuvre, car ces deux champs standardisés sont supportés par tous les serveurs DNS existants. D'autre part, ces enregistrements étant stockés dans la partie additionnelle d'une requête et d'une réponse DNS, ils permettent de renvoyer simultanément une réponse classique, c'est-à-dire, une adresse @IP associée à une réponse liée à la mise en œuwe du procédé objet de l'invention, c'est-à-dire à la transmission d'un agent de résolution distribuée A_R_D.
On comprend que l'utilisation des champs précités permet la mise en œuvre du procédé objet de la présente invention, même lorsque des serveurs DNS de type classique, c'est-à-dire, qui ne sont pas en mesure de mettre en œuvre le procédé objet de la présente invention, se trouvent placés entre un ou plusieurs serveurs SRE. On comprend aussi, ainsi que décrit précédemment dans la description, que les serveurs relais intermédiaires de type classique n'analysent en fait que la réponse classique mais conservent des enregistrements HINFO et TXT afin de transmettre ces derniers dans un sens ou dans l'autre.
La mise en œuvre du procédé objet de la présente invention, dans le cas d'un système de serveur DNS bind modifié, c'est-à-dire un serveur SRE, est illustrée et décrite en liaison avec la figure 4b.
Sur cette figure on a représenté une situation intermédiaire mentionnée précédemment dans la description dans laquelle le serveur relais intermédiaire étendu SRE est interconnecté au serveur parent principal SPP par l'intermédiaire d'un serveur relais de type classique SR.
Le tableau 4 ci-après établit la correspondance entre les étapes de la figure 2 et les transactions mises en œuvre dans cette situation.
Figure imgf000022_0001
En particulier, en raison de la souplesse de mise en œuvre du procédé objet de la présente invention, on comprend qu'en présence antérieure de résolution DNS compatible avec le nom de domaine et mémorisée au niveau du serveur relais intermédiaire étendu, celui-ci peut consister au moins soit à transmettre une réponse DNS comportant au moins l'adresse IP associée au nom de domaine contenu dans la requête DNS étendue lorsque la solution antérieure de résolution DNS est une solution explicite comportant l'adresse IP, soit à exécuter l'agent de résolution DNS distribuée pour engendrer une réponse DNS comportant l'adresse IP lorsque la solution antérieure est une solution implicite consistant en l'existence d'un agent de résolution DNS compatible avec le nom de domaine considéré. La transmission d'une solution explicite peut se justifier en particulier lorsque la distribution de la résolution DNS a été effectuée jusqu'au niveau le plus bas c'est-à-dire jusqu'au serveur relais du fournisseur d'accès par exemple. Dans cette situation, il est bien entendu avantageux de conserver les solutions explicites de résolutions DNS afin d'éviter la mise en œuvre de temps de calcul inutile. Enfin, selon un aspect particulièrement avantageux du procédé objet de la présente invention, on indique que l'étape consistant à transmettre du serveur parent pertinent vers le serveur relais intermédiaire étendu SRE au moins l'agent de résolution DNS distribuée consiste également à transmettre une variable représentative de la durée de vie de cet agent de résolution DNS distribuée, afin d'assurer une saine gestion des ressources de calcul et des espaces mémoire de tout serveur relais intermédiaire étendu SRE mis en œuvre conformément à l'objet de la présente invention. Le serveur parent pertinent SPP peut être constitué par un serveur classique, connu de l'homme du métier, et pour cette raison, ne sera pas décrit en détail.
Une description plus détaillée d'un serveur relais intermédiaire étendu SRE permettant la mise en œuvre du procédé objet de la présente invention sera maintenant donnée en liaison avec la figure 5a et la figure 5b.
Ainsi que mentionné précédemment, un serveur SRE conforme à l'objet de la présente invention peut être mis en œuvre à partir d'un serveur relais Bind. En conséquence, le serveur SRE comprend, ainsi que représenté en figure 5a, tous les éléments classiques d'un serveur précité et en particulier une unité centrale serveur SCPU reliée à une unité d'entrée sortie I/O permettant bien entendu l'interconnexion du serveur avec toute machine extérieure, une mémoire vive RAM et bien sûr une unité de mémoire de masse, unité de mémoire permanente telle que disque dur ou autre.
Ces éléments ne seront pas décrits en détail car ils correspondent à des éléments de l'état de la technique dont le fonctionnement est parfaitement connu. En outre, et selon un aspect remarquable du serveur relais intermédiaire étendu SRE objet de la présente invention, ce dernier comporte avantageusement une mémoire programmable non volatile, protégée en écriture/lecture, désignée P_MEM ainsi qu'une base de correspondance entre une pluralité de noms de domaine et au moins un agent de résolution DNS distribuée, base de correspondance notée B2, et une base de correspondance B1 entre une pluralité de noms de domaines et au moins une adresse IP. Les bases de données B1 et B2 précitées peuvent être regroupées en une base de données unique. D'une manière générale, on indique que la mémoire permanente de type disque dur comporte des modules logiciels, lesquels permettent de mettre en œuvre l'ensemble des fonctionnalités du serveur SRE tant en ce qui concerne le processus d'insertion de la variable VE c'est-à-dire de la ressource HINFO indiquant la distribution DNS étendue et plus particulièrement la déclaration de disponibilité de mise en œuvre du procédé de résolution DNS distribuée au niveau du serveur relais intermédiaire étendu SRE précité lorsque la variable VE est à la valeur vraie. Les modulés logiciels précités permettent en outre la mise en œuvre du processus de construction d'une requête étendue er_DNS ou d'une réponse étendue EA_DNS dans les conditions qui ont été explicitées dans la description précédemment
Sur la figure 5a, les modules logiciels correspondants sont désignés par 101 à 112 figure 5b, les références 101 à 112 désignant des références fonctionnelles représentées sur la figure 5b. Ainsi, le serveur relais intermédiaire étendu SRE objet de l'invention peut comprendre avantageusement un module de vérification de la présence d'une solution antérieure de résolution DNS compatible avec le nom de domaine et mémorisé au niveau du serveur relais intermédiaire étendu, un module de mémorisation et d'insertion dans la requête DNS de la variable d'extension VE de distribution de la résolution DNS permettant d'engendrer une requête DNS étendue, requête er_DNS, un module de transmission de la requête DNS étendue vers le serveur parent pertinent, un module de mémorisation et d'exécution d'un agent de résolution DNS distribuée transmis par le serveur parent pertinent SPP au module serveur relais intermédiaire étendu SRE tel que représenté en figures 5a et 5b. Ceci permet d'engendrer la réponse DNS comportant au moins l'adresse IP associée au nom de domaine précité FQDN. Enfin, un module de transmission de la réponse DNS vers le terminal client T est également prévu.
En ce qui concerne les modules de transmission de la requête DNS étendue vers le serveur parent pertinent SPP et le module de transmission de la réponse DNS vers le terminal client T, on comprend bien entendu que les modules précités sont des modules logiciels, desquels par l'intermédiaire de l'unité centrale de calcul SCPU et de l'unité d'entrée sortie I/O permettent de transmettre les messages correspondants selon le format tel que décrit précédemment dans la description par exemple.
En ce qui concerne les modules de vérification de la présence d'une solution antérieure de résolution DNS, des modules de mémorisation et d'insertion de la requête DNS d'une variable d'extension de distribution VE, ceux-ci concernent également des modules logiciels spécifiques mémorisés dans la mémoire permanente précitée, lesquels sont exécutés par l'unité centrale de calcul SCPU.
Il en va de même pour le module d'exécution de l'agent de résolution DNS distribuée, agent A_R_D par l'intermédiaire des ressources de calcul du serveur SRE à savoir, la mémoire de travail RAM et l'unité centrale de calcul
SCPU.
En référence à la figure 5b, sur réception d'une requête DNS comportant un nom de domaine FQDN, les différentes opérations fonctionnelles au niveau du serveur SRE peuvent être mises en œuvre :
Dans le cadre de la vérification de la présence d'une solution antérieure de résolution DNS compatible avec le nom de domaine, solution mémorisée au niveau du serveur relais intermédiaire étendu un test de vérification de l'algorithme est prévu. On indique que la notion d'algorithme recouvre simplement la version en bas de texte, c'est-à-dire non compilée, de l'agent de résolution distribuée
A_R_D ou de tout élément d'information permettant de compiler ce dernier.
Sur réponse négative au test 101 , un test 102 est prévu de vérification de l'existence d'une résolution antérieure stockée. Sur réponse positive au test 102, lorsque par exemple il existe une solution antérieure explicite, c'est-à-dire une adresse IP @IP compatible avec le nom de domaine FQDN précédemment cité, une étape 102a est appelée, consistant à construire la réponse A_DNS pour transmission vers le terminal T.
La réponse est transmisse à l'étape 103 de la figure 5b. Au contraire, sur réponse négative au test 102, une étape 104 est appelée, laquelle consiste à construire une requête étendue er_DNS, cette étape consistant, par exemple, en une étape 105 d'insertion de la ressource HINFO indiquant la distribution DNS étendue, c'est-à-dire l'insertion de la variable VE. Le mode opératoire du serveur SRE est alors considéré dans le cas où une requête DNS vers un autre serveur/relais DNS est reçu à l'étape 106 puis de la réception d'une réponse étendue contenant bien entendu un algorithme, c'est- à-dire, un agent de résolution distribuée A_R_D. Cette opération étant réalisée à l'étape 107 de figure 5b, un test 108 est prévu pour vérifier que la réponse étendue précitée contient un algorithme.
Sur réponse négative à l'étape de test 108, le processus du mode opératoire est renvoyé au test de l'étape 102. Bien entendu, l'étape 104 de construction d'une requête fait appel à la base de correspondance B1 permettant la mise en correspondance du nom de domaine FQDN et d'au moins une adresse IP compatible avec ce dernier.
Sur réponse positive au test 108, ainsi que sur réponse positive au test 101 précité, c'est-à-dire en présence d'au moins un algorithme soit un agent de résolution distribuée A_R_D, un test 109 est appelé, consistant à vérifier la présence de la variable d'extension VE.
Sur réponse positive au test 109, une étape 110 est appelée d'exécution de l'algorithme après compilation de ce dernier, soit de l'agent de résolution distribuée A_R_D, cette étape 110 étant suivie d'une étape 111 de construction de la réponse A_DNS, c'est-à-dire de communication en fait de l'adresse IP @IP compatible avec le nom de domaine FQDN et constitutive de la résolution DNS recherchée.
On comprend, ainsi que mentionné précédemment dans la description, que à l'étape 111 , la construction de la réponse implique la communication soit d'un algorithme, soit d'un algorithme et d'une adresse IP@IP. La réponse DNS1 A_DNS peut alors être transmise à l'étape 112 au terminal T.
Au contraire, sur réponse négative au test 109, une étape 113 est appelée, laquelle peut consister à exécuter l'agent de résolution distribuée A_R_D sans transmission. Cette étape 113 est alors suivie de l'appel de l'étape 102a pour la construction de la réponse. Ce dernier mode opératoire peut correspondre à celui décrit précédemment dans la description, en liaison avec la figure 4a dans laquelle l'exécution de l'agent de résolution distribuée A_R_D' permet de distribuer des parties d'algorithme ou d'agent de résolution distribuée. En ce qui concerne le processus de distribution de l'agent de résolution DNS distribuée A_R_D, celui-ci peut avantageusement être constitué par un module de programme exécutable par un ordinateur comportant par exemple, ainsi que représenté en figure 5c, une étape 200 permettant d'extraire d'une requête DNS ou d'une requête DNS étendue des paramètres ou conditions liées à l'initiateur de la requête, l'utilisateur client, ou environnementaux tels que heure d'émission de la requête, existence à la valeur vraie de la variable d'extension de distribution de résolution, adresse IP client @1P_C par exemple.
A titre d'exemple non limitatif, le module de programme exécutable permettant la distribution de l'agent de résolution distribuée A_R_D, tel que représenté en figure 5c comporte un test 201 de support de mise en œuvre du procédé objet de l'invention, pouvant par exemple porter sur la vérification à la valeur vraie de la variable VE d'extension de distribution de résolution DNS. Sur réponse positive au test 201 , une étape 202 est appelée consistant à retourner l'agent de résolution distribuée A_R_D vers le serveur relais intermédiaire étendu SRE, auteur et utilisateur de la requête DNS étendue. Au contraire, sur réponse négative au test 201 , un processus de diversification de la réponse DNS à partir de paramètres environnementaux, peut avantageusement être mis en œuvre.
A titre d'exemple non limitatif, un premier test 203 peut consister à discriminer la valeur de l'adresse client associée au nom de domaine FQDN dans une plage de valeurs spécifique, les valeurs 0.0.0.0 et 192.0.0.0 par exemple. Sur réponse positive au test 203 le nom de domaine associé à l'adresse Internet est une première valeur diversifiée @IPi par exemple.
Sur réponse négative au test 203, un nouveau test 204 est prévu, lequel permet de discriminer l'heure d'émission de la requête DNS vis-à-vis d'au moins une valeur de seuil horaire, 12h00 dans l'exemple donné. Sur réponse positive au test 204 le nom de domaine associé à l'adresse Internet à l'étape 206 est une deuxième valeur diversifiée @IP2 par exemple. Au contraire, sur réponse négative au test 204 le nom de domaine associé à l'adresse Internet à l'étape 205 est une troisième valeur diversifiée @IP3 par exemple. On conçoit que la diversification du nom de domaine transmis à l'utilisateur client dans la réponse DNS permet avantageusement de tenir compte des conditions d'accès habituelles du client à des noms de domaines distincts en fonction des paramètres environnementaux précités.

Claims

24REVENDICATIONS
1. Procédé de résolution DNS distribuée d'une requête DNS comportant un nom de domaine transmise entre un terminal client et un serveur parent pertinent, faisant autorité pour la résolution DNS de cette requête DNS, caractérisé en ce que celui-ci consiste au moins à :
(a) transmettre dudit terminal client vers un serveur relais intermédiaire étendu ladite requête DNS en vue de la résolution DNS de celle-ci par l'intermédiaire dudit serveur parent pertinent ; et, au niveau dudit serveur relais intermédiaire étendu, en l'absence de solution antérieure de résolution DNS compatible avec ledit nom de domaine mémorisée au niveau dudit serveur relais intermédiaire étendu,
(b) insérer dans ladite requête DNS une variable d'extension de distribution de cette résolution DNS pour engendrer une requête DNS étendue ;
(c) transmettre dudit serveur relais intermédiaire étendu vers ledit serveur parent pertinent ladite requête DNS étendue ; et, au niveau dudit serveur parent pertinent sur vérification à la valeur vraie de ladite variable d'extension de distribution,
(d) rechercher et/ou établir un agent de résolution DNS distribuée ;
(e) engendrer et transmettre dudit serveur parent pertinent vers ledit serveur relais intermédiaire étendu une réponse DNS étendue comportant au moins ledit agent de résolution DNS distribuée ;
(f) mémoriser et exécuter au niveau dudit serveur relais intermédiaire étendu ledit agent de résolution DNS distribuée, pour engendrer une réponse DNS comportant au moins l'adresse IP associée à ce nom de domaine ; (g) transmettre ladite réponse DNS dudit serveur relais intermédiaire étendu vers ledit terminal client, ce qui permet de distribuer l'exécution de ladite résolution DNS au niveau dudit serveur relais intermédiaire étendu.
2. Procédé selon la revendication 1 , caractérisé en ce que, sur transmission de ladite requête DNS respectivement de ladite requête DNS étendue via un serveur relais classique, ledit procédé consiste à mémoriser et à transmettre ladite requête DNS respectivement ladite requête DNS étendue vers ledit serveur parent pertinent.
3. Procédé selon l'une des revendications 1 ou 2, caractérisé en ce que en présence d'une solution antérieure de résolution DNS compatible avec 25
ledit nom de domaine mémorisée au niveau dudit serveur relais intermédiaire étendu, celui-ci consiste au moins :
- soit à transmettre une réponse DNS comportant au moins l'adresse IP associée au nom de domaine contenu dans ladite requête DNS étendue, lorsque ladite solution antérieure de résolution DNS est une solution explicite comportant ladite adresse IP ;
- soit à exécuter ledit agent de résolution DNS distribuée, pour engendrer une réponse DNS comportant ladite adresse IP, lorsque ladite solution antérieure est une solution implicite consistant en l'existence d'un agent de résolution DNS compatible avec ledit nom de domaine.
4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que ladite étape consistant à transmettre dudit serveur parent pertinent vers ledit serveur relais intermédiaire étendu au moins ledit agent de résolution DNS distribuée comporte en outre la transmission d'une variable représentative de la durée de vie dudit agent de résolution DNS distribuée.
5. Procédé selon les revendications 1 et 3, caractérisé en ce que en présence d'une solution antérieure de résolution DNS compatible avec ledit nom de domaine mémorisée au niveau dudit serveur relais intermédiaire étendu, les étapes consistant à insérer (b), transmettre (c), rechercher et/ou établir (d), engendrer et transmettre (e) sont supprimées.
6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce que pour une requête DNS de type classique comportant deux champs de type d'enregistrement HINFO et TXT vides lors de l'émission de ladite requête DNS par ledit terminal client, ladite étape (b) d'insertion dans ladite requête DNS pour engendrer une requête DNS étendue consiste à insérer dans l'un desdits champs vides une chaîne de caractères spécifiques dont la vérification à la valeur vraie désigne une requête de déclaration de disponibilité de mise en œuvre dudit procédé de résolution DNS distribuée au niveau dudit serveur relais intermédiaire étendu.
7. Procédé selon l'une des revendications 1 à 6, caractérisé en ce que pour une requête DNS étendue dont l'un des deux champs de type d'enregistrement HINFO et TXT comporte une variable d'extension de distribution de cette résolution DNS, ladite réponse DNS étendue transmise vers ledit 26
serveur parent pertinent et ledit serveur intermédiaire étendu comprend au moins :
- l'adresse IP associée audit nom de domaine ;
- l'agent de résolution DNS distribuée, inséré dans l'autre desdits deux champs ;
8. Serveur relais intermédiaire étendu pour l'exécution d'une résolution DNS distribuée d'une requête DNS comportant un nom de domaine, cette requête DNS étant transmise entre un poste client et un serveur parent pertinent, caractérisé en ce qu'il comporte au moins : - des moyens de vérification de la présence d'une solution antérieure de résolution DNS compatible avec ledit nom de domaine mémorisée au niveau dudit serveur relais intermédiaire étendu ;
- des moyens de mémorisation et d'insertion dans ladite requête DNS d'une variable d'extension de distribution de cette résolution DNS permettant d'engendrer une requête DNS étendue ;
- des moyens de transmission de ladite requête DNS étendue vers ledit serveur parent pertinent ;
- des moyens de mémorisation et d'exécution d'un agent de résolution DNS distribuée transmis par ledit serveur parent pertinent audit serveur relais intermédiaire étendu, pour engendrer une réponse DNS comportant au moins l'adresse IP associée à ce nom de domaine ;
- des moyens de transmission de ladite réponse DNS vers ledit terminal client.
9. Serveur relais intermédiaire étendu selon la revendication 8, caractérisé en ce que lesdits moyens de mémorisation et d'insertion dans la requête DNS d'une variable d'extension de distribution de cette résolution DNS comprennent au moins : un module d'inscription, dans l'un des deux champs de type d'enregistrement HINFO et TXT de cette requête DNS, d'une variable d'extension de distribution de résolution DNS, ladite variable étant formée par une chaîne de caractères spécifique dont la vérification à la valeur vraie désigne une requête de déclaration de disponibilité de mise en œuvre du procédé de résolution DNS distribuée au niveau du serveur relais intermédiaire étendu.
10. Serveur relais intermédiaire étendu selon l'une des revendications 8 ou 9, caractérisé en ce qu'il comporte au moins une base de correspondance 27
entre une pluralité de noms de domaines et au moins un agent de résolution DNS distribuée.
11. Produit programme d'ordinateur comprenant des instructions de code de programme enregistrées sur un support lisible par un ordinateur, pour mettre en œuvre les étapes du procédé de résolution DNS distribuées d'une requête DNS selon l'une des revendications 1 à 7 lorsque ledit programme fonctionne sur un ordinateur.
PCT/FR2005/002144 2004-10-06 2005-08-25 Procede et systeme de resolution dns distribuee WO2006037865A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/664,694 US20080288470A1 (en) 2004-10-06 2005-08-25 Method and System for Distributed Dns Resolution
EP05798592A EP1797696A1 (fr) 2004-10-06 2005-08-25 Procede et systeme de resolution dns distribuee

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0410544 2004-10-06
FR0410544 2004-10-06

Publications (1)

Publication Number Publication Date
WO2006037865A1 true WO2006037865A1 (fr) 2006-04-13

Family

ID=34953507

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2005/002144 WO2006037865A1 (fr) 2004-10-06 2005-08-25 Procede et systeme de resolution dns distribuee

Country Status (3)

Country Link
US (1) US20080288470A1 (fr)
EP (1) EP1797696A1 (fr)
WO (1) WO2006037865A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101444072B (zh) * 2006-05-17 2013-03-20 法国电信公司 用于管理网络中的域名的服务器和方法

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8606926B2 (en) 2006-06-14 2013-12-10 Opendns, Inc. Recursive DNS nameserver
US8713188B2 (en) * 2007-12-13 2014-04-29 Opendns, Inc. Per-request control of DNS behavior
US7627683B2 (en) * 2006-12-27 2009-12-01 At&T Mobility Ii Llc System and method for dynamically refreshing an active home screen
US20090327487A1 (en) * 2008-06-30 2009-12-31 Eric Olson Method and system for discovering dns resolvers
US8676989B2 (en) 2009-04-23 2014-03-18 Opendns, Inc. Robust domain name resolution
WO2013116530A1 (fr) 2012-02-01 2013-08-08 Xerocole, Inc. Procédé de prévention des interruptions de service dns pour les serveurs dns récursifs
WO2013119516A1 (fr) * 2012-02-06 2013-08-15 Xerocole, Inc. Procédé de partage de données pour serveurs dns récursifs
US10715377B2 (en) 2012-12-21 2020-07-14 Comcast Cable Communications, Llc Domain name services servers management to share data efficiently
US10235726B2 (en) * 2013-09-24 2019-03-19 GeoFrenzy, Inc. Systems and methods for secure encryption of real estate titles and permissions
US20220044533A1 (en) * 2014-07-29 2022-02-10 GeoFrenzy, Inc. Systems and methods for geofence security
US12302191B2 (en) * 2014-07-29 2025-05-13 GeoFrenzy, Inc. Systems and methods for decoupling and delivering geofence geometries to maps
US10375514B2 (en) * 2014-07-29 2019-08-06 GeoFrenzy, Inc. Systems, methods and apparatus for geofence networks
US9986378B2 (en) * 2014-07-29 2018-05-29 GeoFrenzy, Inc. Systems and methods for defining and implementing rules for three dimensional geofences
US10237232B2 (en) * 2014-07-29 2019-03-19 GeoFrenzy, Inc. Geocoding with geofences
CN104539751B (zh) * 2014-12-29 2018-02-09 北京奇艺世纪科技有限公司 Dns解析系统、方法及装置
US10079800B2 (en) * 2015-10-14 2018-09-18 Nominum, Inc. Client subnet efficiency by equivalence class aggregation
US11032127B2 (en) * 2017-06-26 2021-06-08 Verisign, Inc. Resilient domain name service (DNS) resolution when an authoritative name server is unavailable
US11032163B2 (en) 2019-10-25 2021-06-08 Verizon Patent And Licensing Inc. Method and system for selection and orchestration of multi-access edge computing resources
CN112769976B (zh) 2021-01-13 2023-10-24 网宿科技股份有限公司 一种域名解析方法及系统
CN113556413B (zh) * 2021-08-13 2023-07-25 中国互联网络信息中心 一种报文处理方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002013057A1 (fr) * 2000-08-04 2002-02-14 Sharinga Networks Inc. Resolution d'adresses reseau
US20040194102A1 (en) * 2001-01-16 2004-09-30 Neerdaels Charles J Using virutal domain name service (dns) zones for enterprise content delivery

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098108A (en) * 1997-07-02 2000-08-01 Sitara Networks, Inc. Distributed directory for enhanced network communication
US6917612B2 (en) * 2000-09-01 2005-07-12 Telefonaktiebolaged L M Ericsson System and method for address resolution in internet protocol (IP)-based networks
US20030182447A1 (en) * 2001-05-31 2003-09-25 Schilling Frank T. Generic top-level domain re-routing system
JP3791464B2 (ja) * 2002-06-07 2006-06-28 ソニー株式会社 アクセス権限管理システム、中継サーバ、および方法、並びにコンピュータ・プログラム
US6989049B2 (en) * 2003-09-04 2006-01-24 Hewlett-Packard Development Company, L.P. Airborne conductive contaminant handler

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002013057A1 (fr) * 2000-08-04 2002-02-14 Sharinga Networks Inc. Resolution d'adresses reseau
US20040194102A1 (en) * 2001-01-16 2004-09-30 Neerdaels Charles J Using virutal domain name service (dns) zones for enterprise content delivery

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MOCKAPETRIS P: "RFC1035 - DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION", NETWORK WORKING GROUP REQUEST FOR COMMENTS, November 1987 (1987-11-01), pages 1 - 55, XP000864261 *
P. VIXIE, ISC: "Extension mechanisms for DNS (EDNSO)", RFC2671, August 1999 (1999-08-01), STANDARDS TRACK, pages 1 - 7, XP002328445 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101444072B (zh) * 2006-05-17 2013-03-20 法国电信公司 用于管理网络中的域名的服务器和方法

Also Published As

Publication number Publication date
US20080288470A1 (en) 2008-11-20
EP1797696A1 (fr) 2007-06-20

Similar Documents

Publication Publication Date Title
WO2006037865A1 (fr) Procede et systeme de resolution dns distribuee
EP0599706B1 (fr) Dispositif de traitement de l'information permettant la gestion d'une ressource informatique par un système d'administration
FR2923969A1 (fr) Procede de gestion de trames dans un reseau global de communication, produit programme d'ordinateur, moyen de stockage et tete de tunnel correspondants
EP1974522B1 (fr) Serveur, client et procédé pour gérer des requetes DNSSEC
FR2917259A1 (fr) Utilisation d'un arbre de hachage a prefixes (pht) pour la localisation des services au sein d'un reseau de communication poste-a-poste
FR2858896A1 (fr) Procede de masquage des traitements applicatifs d'une requete d'acces a un serveur et systeme de masquage correspondant
FR2855691A1 (fr) Securisation de la distribution de documents numeriques dans un reseau pair a pair
EP2052526A2 (fr) Serveur et procede pour gerer les noms de domaines dans un reseau
FR2902954A1 (fr) Systeme et procede de stockage d'un inventaire des systemes et/ou services presents sur un reseau de communication
EP3560163A1 (fr) Validation de livraison de contenu et de verification d'une delegation de livraison d'un contenu
FR3023098A1 (fr) Procede et systeme de traitement d'une demande de resolution d'un nom d'un serveur, emise par une application cliente sur un reseau de communication.
WO2019063907A2 (fr) Procédé et dispositif de traitement d'une requête d'instanciation d'un service réseau
FR2854753A1 (fr) Procede de distribution de documents numeriques multi-resolutions
EP1520378B1 (fr) Systeme et procede de gestion sur un terminal de l architect ure dediee a un reseau de communication
EP3257234B1 (fr) Procede de resolution d'une adresse ip, serveur et programme d'ordinateur correspondants
EP1065828A1 (fr) Procédé d'interrogation à distance d'agents SNMP
EP3900305A1 (fr) Procédé d'acquisition d'une chaîne de délégation relative à la résolution d'un identifiant de nom de domaine dans un réseau de communication
WO2010076536A2 (fr) Procède de traitement de requêtes émises par un client
WO2002052439A1 (fr) Serveur d'annuaire reparti
WO2000042526A1 (fr) Interfonctionnement et systeme de caches cooperants et caches repartis
WO2023083772A1 (fr) Procédés de contrôle et de transmission, et entités configurées pour mettre en œuvre ces procédés
FR2788398A1 (fr) Interfonctionnement de caches cooperants et caches repartis
FR3019417A1 (fr) Procede de traitement d'un message dans un dispositif d'interconnexion
FR3108747A1 (fr) Procédé de gestion d’un fichier numérique de description d’un modèle de données, procédé d’utilisation d’un tel fichier par un équipement client, dispositifs, équipement serveur, équipement client, système et programmes d’ordinateur correspondants.
FR2860370A1 (fr) Module et procede de transmission de messages a un serveur de noms de domaine et architecture ayant le module

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2005798592

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11664694

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWP Wipo information: published in national office

Ref document number: 2005798592

Country of ref document: EP

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载