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).
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
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 :
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.
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.