2.7 Realització de transferències entre dos o més servidors
2.7.1 Autoritari, no autoritari i informació de base de dades de zona
Cada zona de l’espai dels noms de domini és gestionada per un o més servidors autoritaris per a la zona. Significa que són els servidors que manen, que tenen l’última paraula respecte de la zona. De fet significa que són els servidors que administren la zona. Aquests servidors es configurem com a autoritaris de la zona. Les respostes que emeten a consultes referents a la seva zona porten un segell indicant que són autoritàries, que provenen de la font de la informació de la base de dades distribuïda de l’espai de noms de domini.
Els servidors de noms guarden en un emmagatzematge cache les respostes que reben d’altres servidors. Aquesta informació també és utilitzada per elaborar respostes a consultes de dominis fora de la zona de la qual són autoritaris. És a dir, quan un servidor rep d’un altre la llista de servidors autoritaris (en una consulta interactiva) per una zona, aquesta llista s’emmagatzema al cache. Quan un servidor rep una resposta a una consulta també es guarda. Quan es rep una resposta negativa, indicant que el domini de la consulta o el tipus de dada sol·licitat no existeix, també es guarda. S’anomena negative caching.
Un servidor respon utilitzant la informació de la base de dades de la seva zona, però també respon a altres consultes utilitzant la informació existent en el seu
cache. Quan es repeteix una consulta efectuada abans, s’utilitza la resposta del cache. També s’utilitza del cache la llista de servidors autoritaris per una zona
més propera al domini que es busca, per tal de no preguntar als servidors arrel. Quan un servidor de noms respon utilitzant la informació del cache, la resposta és no autoritativa. No prové del servidor autoritari de la zona sinó que s’utilitza una informació prèviament obtinguda (i que pot estar desfasada).
Per exemple, primerament s’ha fet una consulta per al domini adm.ioc.cat, i en el procés de resolució recursiu el servidor ha obtingut la llista de servidors autoritaris per als dominis .cat i ioc.cat. Si ara es demana al mateix servidor pel domini inf.ioc.cat primerament provarà de resoldre aquest domini, però com que és desconegut el següent domini més pròxim és ioc.cat i aquest sí que el coneix, perquè el té emmagatzemat al cache de la resposta anterior. S’utilitzarà la llista de servidors autoritaris del domini ioc.cat per obtenir una resposta o per continuar descendint per l’arbre de l’espai de noms.
Emmagatzemar informació de les respostes d’altres servidors en la cache propor- ciona dos grans avantatges:
1. Incrementa la velocitat de resposta. Ja no cal anar a trobar la resposta a la font de dades de la zona, sinó que s’utilitza la informació d’una resposta anterior.
2. Evita la sobrecàrrega dels servidors arrel.
No cal anar per a cada consulta al node arrel un cop es disposa al cache d’informació més propera al domini a cercar. La utilització del cache té, però, un inconvenient que cal mesurar bé, les dades que s’utilitzen no necessàriament són actualitzades ni reflecteixen l’estat actual de la xarxa. DNS es basa en una base de dades jeràrquica i distribuïda on la informació es troba en els fitxers gestionats per cada servidor de zona. Una dada emmagatzemada en el cache pot no reflectir la dada real que ha estat modificada en el servidor autoritari de zona, però que encara no s’ha propagat perquè la dada es manté en el cache fins a caducar el TTL (temps de vida de la dada).
Són servidors autoritaris els que administren una zona (tant el servidor primari com els secundaris). Tenen accés a la informació de la base de dades de zona.
Són respostes no autoritàries les que provenen de la informació desada en la memòria cache.
Fixeu-vos que si la informació del cache es desa indefinidament, els canvis que es fessin en els servidors autoritaris no es propagarien als altres servidors (perquè segurament ja disposarien d’una resposta en el cache anterior). Cal un mecanisme perquè la informació del cache caduqui transcorregut un cert interval de temps. Anomenem TTL time to live (temps de vida) l’interval de temps que les dades han de perdurar en el cache; un cop transcorregut, les dades s’eliminen. Si fa falta una dada, per obtenir-la caldrà fer una consulta de nou. Si el TTL és un interval de temps petit es facilita la propagació de les actualitzacions (millor consistència de la informació), però es penalitza el rendiment, ja que caldrà fer consultes més sovint (tornar a les fonts de dades). Si el TTL és un interval de temps gran el rendiment millora (més consultes són contestades directament del cache en lloc de consultar la font de dades), però fa que la propagació dels canvis sigui més lenta. Això provoca menys consistència de la base de dades distribuïda de noms i incrementa la possibilitat de proporcionar informació errònia.
El temps del TTL l’estableix l’administrador de sistemes. Ha de saber buscar un compromís entre el rendiment (TTL més gran implica menys trànsit de consultes i consultes més ràpides) i la consistència de la informació (TTL més petit significa propagació més fàcil).
L’ús de l’emmagatzematge de respostes en memòria cache no és exclusiu del servidor de noms. Sovint el resolver també implementa una petitacache per proporcionar més rendiment i velocitat de resposta a les aplicacions. Fins i tot
algunes aplicacions (per exemple el navegador web Firefox) implementen la seva pròpia cache per millorar el rendiment.