3. Arquitetura
     A arquitetura DTN trabalha baseada no conceito de redes Overlay. Redes Overlay são redes  lógicas  construídas sobre redes físicas
existentes. Temos como principal exemplo redes P2P.
     O objetivo da criação da arquitetura DTN reflete a melhor comunicação entre redes com  diferentes propósitos.  Quando duas redes 
distintas precisam se comunicar, essa ligação está sujeita a erros como alta atenuação, falta de  conectividade,  confiabilidade, grandes 
atrasos, etc. Isso ocorre porque redes diferentes foram desenvolvidas para se adaptar às  necessidades dos  variados tipos de ambientes
em  que elas atuam. Além das DTN's serem resistentes à falta de conectividade, grandes atrasos  e todos estes  outros problemas, ela
garante  uma arquitetura que faz o chaveamento  entre as camadas inferiores (camada de  transporte, de rede, de  enlace e física),
permitindo assim a  conexão de redes que executam diferentes protocolos. Daí surge a ideia de  uma rede lógica,  construída sobre redes
físicas.
     Dessa forma, as redes não conseguem se comunicar de maneira trivial, necessitando de um  intermediário  para garantir a conexão. 
Nesse ponto entra a arquitetura DTN. Segundo ela, criam-se  regiões intermediárias entre as duas  redes que farão  a comunicação por 
comutação de mensagens. A comutação de mensagens utilizada na arquitetura DTN é conhecida  por store-and- forward,  que significa que
a  mensagem é totalmente armazenada no nó que a recebe, para então ser enviada ao próximo  nó, seguindo esse  padrão por todo o
caminho,  conforme a figura abaixo.
graphic
     Os nós DTN precisam de uma boa capacidade de memória, pois as mensagens são  armazenadas e em  muitos casos elas demoram a
 ser enviadas. Nesse meio tempo, novas mensagens  podem chegar e serão anexadas ao  'storage', local onde  ficam armazenadas as 
mensagens a serem enviadas. Este tipo de armazenamento é dito persistente, pois estas redes  foram  arquitetadas  justamente para 
situações onde não há conectividade no momento ou quando ela é precária, diferentemente dos  roteadores da  Internet, onde os pacotes 
possuem um 'timeout', ou seja, ficam  armazenados no roteador por um período da ordem de  milisegundos.
     A arquitetura DTN consiste basicamente em uma camada de empacotamento, que opera sobre  as camadas  de rede, logo abaixo da 
aplicação, como mostra a figura abaixo. Uma mesma  camada de empacotamento pode operar  sobre diferentes  regiões que executam 
pilhas de protocolos adaptadas à cada ambiente. Esta é a camada responsável pelo  armazenamento persistente  e  pela descoberta de 
vizinhos. Quando um novo vizinho é descoberto, a camada de empacotamento encaminha os  pacotes destinados  a ele ou que podem ser 
roteados por ele. Esta camada  também é responsável por fazer a junção das partes de uma  mesma mensagem  que tenha sido enviada 
fragmentada.
graphic
     Como as redes DTN são aplicadas em abientes com grandes atrasos, é opcional a utilização  de mensagens  de reconhecimento (o
chamado 'ack'). Mas observe que esse reconhecimento é independente do reconhecimento das  camadas  inferiores, como no caso do 
TCP/IP, que exige um reconhecimento de mensagens idependente da camada de empacotamento  associada  exigir um  reconhecimento
ou  não.
     Um nó DTN pode ser definido como:
  • Host: Fonte de onde partem as mensagens ou destinatário de mensagens. Um nó puramente  host não faz o  encaminhamento de
      mensagens.
  • Roteador: Responsável pelo encaminhamento das mensagens em uma mesma região. Pode  ser também um  nó host.
  • Gateway: Responsável pelo encaminhamento das mensagens em duas regiões distintas.  Pode ser também  um nó host. Deve ter
      suporte para transferência de custódia.
     A transferência de custódia nada mais é do que quando um nó DTN, ao notar que não possui  conexão direta  com o destino, faz um 
pedido de transferência de custódia para um outro nó. Este, caso aceite, recebe o pacote a ser  enviado e torna-se  responsável pelo envio
 até o destino. O roteamento DTN está exemplificado através da figura abaixo.
graphic