UM ESTUDO SOBRE O SISTEMA E
PROTOCOLO: Domain Name System (Sistema de Nomes de Domínios)
INTRODUÇÃO:
A Internet ou qualquer rede
funciona através da atribuição de um endereço IP local ou global para todos os
dispositivos (hots, servidores, roteadores, e etc).
Mas, sem a capacidade de atribuir
um nome correspondente a cada recurso, cada vez que o usuário queira acessar um
recurso disponível na rede, como por exemplo, o site www.globo.com, seria
necessário saber o IP físico. Com centenas de hosts e mais de 200 milhões de
sites se torna uma tarefa impossível de se aplicar.
Para resolver este problema, foi
criado em meados dos anos 1970 o conceito de servidores de nomes no qual
permita que certos atributos/unidades de um recurso denominado, neste caso o
endereço IP de www.globo.com, a ser mantida
em um local de fácil consulta.
A ideia básica é que as pessoas
achem mais fácil lembrar o nome de algo, especialmente quando esse nome é
razoavelmente descritivo com função do
conteúdo ou propósito em vez do endereço numérico.
HISTÓRIA DOS SERVIDORES
DE NOMES
O problema da conversão de nomes
para endereços físicos é tão antiga quanto a redes de computadores. Mesmo há
muito tempo passado, os usuários achavam mais fácil de lembrar que eles estavam
usando um dispositivo de teletipo chamado “tty2” em vez da “porta 57 do MCCU”.
Administradores queriam a
flexibilidade para reconfigurar equipamentos, deixando transparente aos
usuários uma forma consistente de descrever o dispositivo que eles estavam
usando.
No exemplo anterior mesmo se o
dispositivo tiver sido reconfigurado para estar na porta 23 do MCCU isso se
tornava transparente ao usuário em configuração simples em arquivos eram
normalmente utilizada para realizar a tradução de endereços.
O problema torna-se agudo com a
evolução das redes a rede da IBM SNA, provavelmente a avô das redes, continha
em um mainframe rudimentar o banco de dados para tradução de nomes quando
originalmente publicado em 1974.
O entidade OSI definia serviços
de tradução de endereços de nomes na camada de transporte (camada 4) quando
publicado em 1978, NetBIOS quando definido originalmente NBNS quando foi
definido em 1984, que mais tarde se transformou em Microsoft Windows Internet
Naming Service (WINS).
A ARPANET no qual se tornou a
Internet o primeiro pedido RCF para padronizar a Internet, sobre o conceito de
nomes de domínios data a partir de 1981 (RFC 799), e as especificações para a
Internet Domain Name System como conhecemos hoje foram publicadas em 1987 (RFC 1034
e RFC 1035).
CONCEITOS BÁSICOS SERVIDORES DE
NOMES
Quando existe um servidor de
nomes em uma rede, qualquer máquina só precisa saber o endereço físico de um
servidor de nomes e o nome do recurso.
Como exemplo pode utilizar um
site que desejamos acessar. Usando essa informação, ele pode encontrar o
endereço (ou qualquer outro atributo armazenado ou propriedade) do recurso
interrogado, comumente referido como consultar o nome do servidor.
Podemos adicionar recursos,
movidos, alterados ou excluídos em um único local, o nome do servidor, e as
novas informações serão imediatamente disponíveis para cada host usando um
servidor de nomes.
O servidor de nomes é um banco de
dados especializado que traduz nomes de propriedades, normalmente endereços IP
e vice-versa. Servidores de nomes tentam simplificar o gerenciamento de rede e
tornar as redes mais dinâmicas e responder melhor as mudanças.
Soluções, no entanto, também
podem gerar problemas. Se o servidor de nomes não está disponível, então o
anfitrião não pode acessar qualquer recurso na rede.
A solução inicial para o problema
de disponibilidade do servidor de nomes foi a introdução de servidores de nomes
primários e secundário. Se o servidor de nomes principal não respondeu a uma
consulta, o anfitrião repete a consulta usando o nome do secundo servidor
secundário.
Como a rede cresce, começamos a
construir um grave problema de nomes em nosso servidor de nomes. Com isto dá-se
origem a três novos problemas:
Organização: Encontrar uma entrada no banco de dados de nomes
torna-se cada vez mais lento à medida que o poder através de muitos milhões de
nomes de olhar para o que nós queremos. Precisamos de um método para indexar ou
organizar os nomes.
Escalabilidade: Se cada host está acessando nossos servidores de
nome, a carga se torna muito alto. Precisamos de um método para distribuir a
carga por uma série de nomes de servidores.
Gestão: Com registros de nomes de muitos em nosso banco de dados, a
gestão problema torna-se cada vez mais difícil, como vários administradores
tentam atualizar registros ao mesmo tempo. Precisamos de um método para separar
(conhecido como delegar) a administração destes nomes (geralmente conhecido
como recurso) registros.
A necessidade de satisfazer estes
três requisitos, levou à criação e evolução da Internet Domain Name System
(DNS) que trataremos nos próximos artigos.
Muito Obrigado.