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