Aluno: Mauro Lúcio Baioneta Nogueira
Disciplina: Redes de Computadores
Professora: Dra. Liane Tarouco
Domain Name System (DNS)
1. Introdução
Em sistemas distribuídos nomes
são utilizados para se referir a uma grande variedade de recursos
do sistema, como computadores, portas, serviços e outros objetos
do sistema. Tais nomes são necessários para a comunicação
entre componentes do sistema e para compartilhamento de recursos.
2. Conceitos
Serviços de nomes
- Permite a ligação de um nome a um conjunto de atributos
relacionados a este nome. A mais frequente operação
que é solicitada a um serviço de nomes é a resolução
de um nome, i.e., a procura dos atributos relacionados a um
determinado nome.
Espaço de nomes
- É uma coleção de nomes sintaticamente válidos
reconhecidos por um sistema de resolução de nomes.
Ex.: /usr/home/mlbn (p/ sistema de arquivos Unix)
Contextos
- A resolução de um determinado nome nem sempre se dá
de maneira direta, isto é, não solicitamos ao serviço
de nomes a simples resolução de um nome absoluto (plano).
Geralmente o nome é identificado dentro de um contexto.
Um contexto funcionaria de maneira análoga ao sistema
de diretório: um diretório definiria um contexto para para
a resolução dos nomes. Assim:
/home/poncho/arquivo1 (A) /home/espora/arquivo1
(B) O nome arquivo1, quando apresentado
ao serviço de resolução de nomes com o contexto
/home/poncho retornaria uma referência ao objeto do sistema
indicado por (A) que, não necessariamente, seria o
mesmo objeto que (B). Como podemos ver um mesmo nome pode
aparecer em contextos diferentes referenciando objetos diferentes.
- Um serviço de nomes que não permite a definição
de mais que um contexto para o seu espaço de nomes é
dito possuir um espaço de nomes flat. Para um
espaço de nomes flat existe somente um único contexto.
De volta a nossa analogia com o sistema de diretório, um sistema
flat seria um sistema de diretório que só
possuísse um único diretório: o raiz. Neste caso, todos
os nomes são resolvidos de maneira global, absoluta, sempre
em relação ao único contexto existente.
Domínio de Nomes
- É um espaço de nomes para o qual existe uma única
e geral autoridade administrativa. Esta autoridade determina quais
nomes podem ser inseridos/removidos dentro de seu espaço de
nomes.
Resolução de Nomes
- Em geral, a resolução de um nome é um processo
iterativo em que um nome é apresentado repetidas vezes a diferentes
conxtextos de nomes. Assim para resolvermos o nome /home/poncho/arquivo1,
teríamos os seguintes passos:
- Apresentamos o nome /home/poncho/arquivo1 ao sistema.
- O nome home é resolvido então no contexto
raiz, retornando um identificador válido, ou então uma
condição de erro.
- Caso o valor de retorno seja um identificador válido,
apresentamos o nome poncho ao contexto /home.
- Novamente, se o valor de retorno for um identificador válido,
prosseguimos com a resolução de nosso nome. Apresentamos
arquivo1 ao contexto /home/poncho e, finalmente,
nos é retornado um identificador (ou outro atributo) para
o nome /home/poncho/arquivo1.
3. DNS - Serviço de Nomes da Internet
- Divisão do espaço de nomes em contextos. Inicalmente,
o espaço de nomes da Internet era flat e admnistrado
por uma única entidade centralizadora, responsável pelo
único contexto então existente. Como o número
de nomes cresceu muito, ficou impossível para tal entidade administrar
um espaço de nomes gigantesco, bem como prestar serviços
a todos os demais usuários. Surgiu então o DNS, um sistema
de resolução de nomes distribuído, onde existiam
vários domínios: subespaços de nomes administrados localmente.
Assim, por exemplo, uma universidade americana era responsável
pelo seu domínio, podendo ela determinar a inclusão e
remoção de nomes de seu espaço de nomes, bem como
incumbida de ajudar na solução de nomes que referissem
a um dos contextos pertecentes a seu domínio.
- Todo domínio possui uma única autoridade sobre as
operações de pesquisa e atualização de
seu espaço de nomes.
- O sistema DNS comporta várias classes, sendo a mais utilizada
a classe Internet.
4. Resolução de Nomes no DNS
Sintaxe dos nomes
5. Protocolo utilizado pelo DNS
Outros protocolos ...