Вы находитесь на странице: 1из 16

Les Rseaux DTN

Delay Tolerant Networks: Rseaux tolrants aux dlais

Introduction
Depuis son origine dans les annes 1960 avec le rseau ARPANET, Internet a connu un norme succs en interconnectant de nombreux quipements travers le monde. Ce succs fut possible grce l'utilisation de la couche de protocole TCP / IP. La connexion Internet repose principalement sur des liaisons cbles (ADSL, modem rtc, etc.) mais aussi sur les technologies sans fil tel les liaisons mobiles ou les satellites. Pour cela, ces liens sont connects en point point de manire permanente, avec un dlai de bout en bout faible entre l'metteur et le destinataire. Les communications autre que l'Internet (mobile, satellite, interplantaire) sont ralises sur des liaisons indpendantes, chacune ncessitant des caractristiques qui lui sont propres. De manire gnrale, elles ne sont pas compatibles avec Internet et ne sont pas compatibles entre elles. Ces rseaux sont adapts pour des zones particulires dans lesquelles les caractristiques des communications sont homognes. Les frontires entre rgions sont dfinies par des proprits telles que les dlais, le taux d'erreur, les mcanismes de fiabilisation et la qualit de service. Contrairement Internet, ces rseaux peuvent supporter des dlais plus importants et variables, des longues priodes de dconnexion, un taux d'erreur lev et l'asymtrie de transfert de donne. Chaque rseau rgional rpond donc des contraintes physiques bien particulires. Les rseaux rgionaux ne sont pas conu pour tre interconnect entre eux cependant par l'utilisation de passerelles spcifiques on peut crer un pont de communication entre deux rseaux. Un DTN est un rseau de rseaux rgionaux. C'est une couche au-dessus des rseaux rgionaux incluant l'Internet.

I - Les principes des rseaux tolrants aux dlais


DTN signifie Delay Tolerant Network, ce qui se traduit par rseaux tolrant aux dlais. Un DTN est un rseau interconnectant des rseaux rgionaux. Il se situe comme une nouvelle couche au dessus de l'ensemble des rseaux rgionaux, y compris Internet. Ce concept des DTN fut introduit par Kevin Fall en 2002. Il ciblait lorigine les rseaux interplantaires. En effet, dans un contexte interplantaire les dlais sont directement lis la distance qui spare l'metteur du rcepteur. Un rseau interplantaire doit donc supporter des dlais important comme on peut le voir sur le schma ci-dessous :

Quel que soit le type de liaison utilis la technologie Internet se base toujours sur les hypothses suivantes :

il existe une route de bout en bout entre la source et la destination pour toute la dure de la communication le lien entre la source et la destination est bidirectionnel le dlai aller-retour (Round Trip Time ou RTT) est faible : infrieur la seconde et souvent de l'ordre de plusieurs dizaines de millisecondes

la conversation est un bon moyen de corriger les erreurs de transmissions, comme par exemple le mcanisme d'acquittement dans TCP les pertes de bout en bout sont relativement faibles tous les routeurs et les stations connaissent IP des mcanismes de scurit (intgrit, authentification) l'mission et la rception sont suffisants, les nuds intermdiaires ne sont pas impliqus la commutation de paquets est le meilleur moyen d'obtenir interoprabilit et performance emprunter une seule route entre la source et la destination est suffisant en termes de fiabilit, car les mcanismes de rptition (ARQ) se chargent de la fiabilisation.

De manire gnral on dit que la technologie dinternet se base sur des protocoles dits conversationnel. C'est--dire quil y a communication rpt dans les deux sens de circulation entre lmetteur et le rcepteur afin de sassurer que le message a t correctement transmis. Cependant dans certain environnement ou dans certain contexte ces hypothses ne se vrifient pas. Deux situations en particulier rendent le principe dinternet inadapt :

Les dlais sont tellement lev quattendre un acquittement puis renvoyer le message sil na pas t reut peu prendre jusqu' des heures La connexion nest pas continue et si le message na pas pu tre transmis dans les temps il faut attendre la prochaine opportunit de transmission.

Par exemple dans le cas de communication spatial, le dlai aller retour est beaucoup trop long tant donn les distances pour permettre des ngociations permanentes, comme dans les mcanismes dacquittement TCP. Ainsi, si la latence de la liaison est suprieure la fentre temporelle dopportunit de transmission, aucun trafic ne sera transmis. Un relais ne peut donc se contenter de router les paquets. Il doit aussi pouvoir les stocker, et les transmettre seulement quand une opportunit de connexion apparat. C'est pourquoi les DTN fonctionnent sur une logique dites de Store and Forward similaire celle utilise par les services postaux : les donnes sont transmises d'une zone de stockage une autre. Et les donnes transmises sont un bloc complet de donne comprhensible isolment et non un fragment de message.

Ainsi, selon les caractristiques des tronons traverss, il est possible de transmettre plus de donnes qu'avec un systme de transmission de bout en bout, comme l'illustre la figure ci-dessous

Les environnements dans lesquelles les principes dinternet ne sappliquent pas sont varis et ncessite chacun un protocole adquat. C'est pourquoi DTN introduit une couche rseau bundle , qui peut s'utiliser au-dessus des protocoles d'accs (couche 2), de rseau (couche 3) voire mme de transport (couche 4) propres chaque environnement. Un rseau DTN est un rseau reposant sur plusieurs rseaux htrognes rgionaux. Les principes retenus pour les DTN sont les suivants :

Le systme transmet des messages (ventuellement trs longs) et non pas des paquets ou des flux, et le rseau se charge d'en organiser la transmission. Les mcanismes de scurit protgent l'infrastructure en refusant le trafic interdire le plus tt possible. Le transport s'effectue en mode store-and-forward sans reposer sur une fiabilit de bout en bout. Il existe plusieurs classes de service, en termes de priorit ainsi qu'en termes de fiabilit.

Une transmission de bout en bout doit pouvoir rserver des ressources (buffer de retransmission) pour la dure complte de la transaction (i.e. des jours ou des semaines). Les retransmissions sont ainsi effectues d'un relais DTN un autre plutt que de bout en bout.

II - A quoi servent les DTN ?


Lors de sa cration en 2002 le concept du DTN ciblait principalement les communications interplantaires. Il avait pour objectif de fournir un service similaire celui dInternet mais sur des distances interplantaires et en tenant compte des contraintes lies au mouvement des astres. Pour les proprits quils offrent, ces rseaux font galement lobjet dtude et de dploiement pour les rseaux dits difficiles (Challenged Internetworks) pour lesquels une connectivit permanente et de bout en bout ne peut tre garanti. Ainsi, DTN permet de faire face aux problmes de mobilit et dnergie limit des quipements de communication sans fils, par exemple. Les rseaux DTN supportent l'interoprabilit des diffrents rseaux rencontrs en s'accommodant des variations de dlai entre les diffrents rseaux et en traduisant les donnes originales pour tre compatible avec le rseau de destination. Les rseaux DTN sans fil peuvent tre de diffrentes technologies tel que les radios frquence mais aussi UWB (bande ultra large) ainsi que les technologies optiques et acoustiques. Les DTN ont particulirement montr leurs utilit dans ce dernier cas car les proprits physiques du son (vitesse de transmission relativement rduite, attnuation rapide sur la distance, etc.) font que des rseaux construit sur le modle dInternet ne sont pas adapt. De nombreux rseaux existants ou en dveloppement ne respectent pas le modle en couche utilis par Internet. Ces rseaux sont caractriss par:

Une connectivit "alatoire": Si aucun chemin ne peut tre trouv entre source et destination dans une communication bout en bout bas sur les protocoles TCP/IP, la communication ne peut tre tablie. Pour pallier ce problme, d'autres protocoles doivent tre utiliss. Dlai variable et/ou important: Au problme de connexion intermittente peut s'ajouter des temps de propagation important entre nuds du rseau et des dlais de traitement et de mise en file d'attente variable suivant les quipements rencontrs. Ceux-ci peuvent tre l'origine d'un mauvais fonctionnement de la

suite de protocole TCP/IP ainsi que des applications ncessitant un acquittement rapide des donnes. Taux d'erreur: Des erreurs d'envoi de donne sur le rseau ncessite un retraitement (ce qui monopolise de la ressource) ou la retransmission de la donne dans son intgralit, ce qui ncessite du trafic supplmentaire. Selon le taux d'erreur du lien, plusieurs retransmissions peuvent s'avrer ncessaire.

De plus, des problmes peuvent tre rencontrs sur les liaisons asymtriques (attente de la rponse SYN ACK au message SYN, attente d'acquittement des donnes mises, etc.) qui peuvent causer galement des dfaillances de la suite protocolaire TCP/IP. Les rseaux DTN permettent de couvrir l'ensemble de ces problmes en utilisant la technique du "store and forward" (stock et retransmet).

III - Fonctionnement d'un DTN


Les mthodes de store and forward sont utilises dans la vie de tous les jours. On peut citer par exemple l'acheminement d'un courrier, d'un e-mail, d'un message vocal, etc. Pour cela, lutilisation despace de stockage savre ncessaire.

Les espaces de stockage prsent sur les nuds rseaux conservent les donnes indfiniment. Ils sont dits stockage persistant, en opposition avec les mmoires court terme. Les routeurs utiliss sur Internet sont bass sur des mmoires court terme pour mettre en file d'attente les paquets entrants pendant la consultation de la table de routage et le transfert de ces donnes sur un port de sortie libre. A l'inverse, les rseaux DTN utilisent des espaces de stockage plus importants (disque dur). En effet, pour les raisons ci-dessous, l'utilisation de stockage persistant est indispensable: - Le lien de communication de la source vers la destination peut tre indisponible pour une dure indtermine - Un nud du rseau peut mettre ou recevoir des donnes plus rapidement ou de

manire plus fiable que les autres nuds du rseau. - Un message transmis doit tre retransmis en cas d'erreur sur le rseau ou si les informations ne sont pas acceptes pour tre transfrs. Tout ou partie des donnes (en provenance d'une application) sont dplacs d'un espace de stockage d'un nud du rseau vers l'espace de stockage du nud suivant tout au long d'un chemin qui permettra ventuellement de joindre le destinataire. Lors du transfert de donnes (ou d'une portion de ces donnes) depuis un nud du rseau vers le suivant, la taille du message est annonce de manire rserver l'espace de stockage ncessaire et la bande passante pour le transfert.

Bundle Layer
Les rseaux DTN mettent en uvre les techniques store and forward de commutation de donnes en superposant au protocole existant une nouvelle couche protocolaire appele couche bundle (bundle layer). La bundle layer permet de relier les spcificits des couches infrieures des diffrentes rgions, ainsi une application peut communiquer travers des rseaux de natures diffrentes. Le protocole Bundle se situe entre la couche applicative et les couches spcifiques chaque rgion. Dans le cas de TCP/IP, il se situe ainsi comme une couche suprieure la couche transport.

La couche Bundle permet de stocker puis de transfrer les messages (aussi appels Bundle) entre les nuds du rseau. Ainsi, un seul protocole est utilis travers lensemble du rseau qui constitue le DTN. Seuls les protocoles infrieurs sont alors spcifiques lenvironnement de communication de chaque rgion. Le bundle protocol a la particularit de pouvoir fonctionner d'ores et dj au dessus de plusieurs protocoles : des protocoles de transport comme UDP ou TCP, mais aussi de manire brute au-dessus d'Ethernet, ainsi que sur le protocole Bluetooth, ou encore directement par fichier interpos. D'autres couches de convergence seront dveloppes dans le futur, afin de fonctionner au-dessus de rseaux de capteurs, de rseaux trs longue distance ou encore de rseaux destins aux environnements tactiques . Ainsi la trs attendue couche LTP (Licklider Transmission Protocol) se place comme le remplaant de TCP ddi aux communications interplantaires. Cette varit permet d'utiliser la couche protocolaire sous-jacente la mieux adapte aux caractristiques de chacun des environnements de transmission, et surtout d'utiliser la couche bundle au-dessus de diffrents rseaux htrognes.

Les Bundles sont constitus de trois lments :


Les donnes de l'application source Des informations de contrle et de traitement fourni par lapplication source vers lapplication destinatrice

Un entte Bundle, insr par la couche Bundle. Cet entte peut tre de taille variable et arbitrairement long.

Ils tendent ainsi le principe dencapsulation utilis dans le protocole TCP/IP ou le modle OSI.

Nud Rseau
Dans un rseau DTN, un nud est une entit possdant une couche Bundle. Il peut sagir dhost, de routeur, de passerelle qui agissent en tant que source, destinataire ou dlment de retransmission des messages asynchrones (bundle). Lhost met ou reoit les bundles. Il en est soit la source, soit le destinataire mais ne transfert pas les bundles. Il ncessite une capacit de stockage afin de conserver les bundles dont il est la source jusqu ce quun lien de communication du rseau DTN soit accessible.

Le routeur transfert les bundles au sein dune seule rgion DTN. Il peut supporter de manire facultative le principe du custody transfer. La passerelle transfert les bundles entre plusieurs rgions DTN. Comme les hosts et les routeurs, ils disposent dun espace de stockage. Il supporte galement le concept du custody transfer. Enfin, les passerelles assurent la conversion des donnes des couches protocolaires infrieures. (source type TCP/IP, destination autre) Les nuds sont regroups en rgion en fonction de leur technologie. Les passerelles entre rgions fournissent des points de contrle, des ressources en capacit de stockage et de retransmission, de transcodage, etc.

Routage DTN
Le rseau DTN est un environnement de nature dconnect du fait de ses caractristiques. Diffrentes solutions permettent dassurer un routage correct au sein des rseaux DTN.

Persistance des liens : contact en permanence, contact la demande. Connections programmes, mise en place dune synchronisation temporelle sur lensemble du DTN Connections opportunistes, en fonction des lments prsents dans lenvironnement.

Afin de connatre le rseau, les nuds DTN utilisent des vecteurs sommaires. Ceux-ci contiennent des lments didentification du nud ainsi que leur localisation. Ils peuvent galement communiquer des informations permettant de programmer leur prochaine communication. Ce peut tre le cas par exemple pour des lments dont le dplacement est rgulier, tel les satellites. Ainsi, lors du passage suivant du satellite porte du nud, celui-ci pourra alors communiquer avec le satellite si besoin.

Custody Transfer
Les rseaux DTN supportent la retransmission de donnes perdues ou corrompues que ce soit au niveau transport ou au niveau de la couche bundle. Nanmoins, les protocoles de transport ne pouvant assurer le contrle de bout en bout travers le rseau DTN, la fiabilit de celui-ci est assur par la couche Bundle. Le protocole Bundle possde la capacit de retransmettre des donnes en utilisant ce que lon appelle le custody tranfer. Ces transferts sont convenus par les couches Bundles des diffrents nuds rseaux rencontrs travers le DTN. Lorsquun nud rseau doit transmettre un message un autre nud du rseau, celuici demande le transfert (custody transfer) afin denvoyer le message considr et met en place un dlai de retransmission des donnes bas sur lacquittement par le destinataire de ces donnes. Lorsque le nud DTN accepte le transfert, il envoie un acquittement lmetteur linformant que celui-ci a accept le transfert du bundle et la reu. Si aucun acquittement ne parvient la source avant la fin du dlai de retransmission, la source rmet le message en question. Le dlai de retransmission des donnes peut tre dtermin pour chaque routeur selon les informations de routage DTN ou dcid localement en fonction de lexprience que le nud source possde avec le nud destinataire.

Un nud du rseau doit conserver les donnes transmettre jusqu' ce que celles-ci soient acquitts, ce qui veut dire que le nud destinataire a accept le transfert, ou bien jusqu ce que le TTL arrive expiration, ce TTL tant suprieur au dlai de retransmission. Enfin, pour garantir la fiabilit de bout en bout, la source doit demander lors du transfert des donnes lacquittement du transfert ainsi quun accus de rception. Auquel cas, la source conserve les donnes jusqu ce quelle reoive cet accus.

Identifiant rgion, identifiant nud de rseau.


Un DTN est un rseau de rseaux dont chacun de ces rseaux est appel rgions. Au sein dune mme rgion, les spcificits sont homognes. Chacune de ces rgions possde un identifiant de rgion (region ID) qui est connu des autres rgions DTN. Cet identifiant de rgion est notamment utilis pour identifier un nud rseau. Les passerelles DTN ont des membres dans 2 rgions ou plus et sont les seules pouvoir communiquer dune rgion une autre. Le projet IPN a utilis ce principe pour identifier les diffrentes rgions de ce rseau inter plantaire. Lidentifiant se dduit par la lecture dune arborescence comme prsent dans lexemple ci-dessous.

Nous trouvons donc les identifiants rseaux jupiter.sol.int, venus.sol.int, etc. Une donne transmise depuis un lment du rseau jupiter.sol.int et dont la destination est localise dans le rseau earth.sol.int devra tre traite par deux passerelles. La premire afin de transcoder les donnes provenant de jupiter.sol.int vers le rseau backbone ipn.sol.int et la seconde afin dacheminer ces donnes depuis le rseau backbone vers le rseau earth.sol.int. Afin de pouvoir acheminer correctement les donnes, chaque nud rseau se voit attribuer un identifiant. Celui-ci est compos de lidentifiant rgion vu prcdemment et un identifiant dentit. Le routage travers diffrentes rgions DTN se base uniquement sur lidentifiant rgion. En revanche, le routage interne une rgion DTN utilise uniquement lidentifiant entit. Celui-ci correspond ladressage utilisable dans ce rseau. Par exemple, pour un rseau TCP/IP, lidentifiant entit aura pour valeur ladresse IP ou le nom auquel cette adresse correspond.

Supposons quun nud rseau se situant sur terre veuille communiquer avec un destinataire situ sur mars. Les identifiants tant par exemple : Source : (earth.sol.int, source.fr) Destinations : (mars.sol.int, jesuisunmartien.mar) Le champ identifiant rgion de la source et de la destination tant diffrent, cette communication devra transiter par le rseau backbone. Dans un premier temps, les donnes seront donc transmises dans la rgion earth.sol.int afin datteindre une passerelle vers ce backbone. La passerelle va identifier dans lidentifiant la rgion destinatrice, en loccurrence mars, et va sappuyer sur le rseau backbone (ipn.sol.int) afin de joindre la passerelle en bordure de la rgion mars. Celle-ci constatera alors que les donnes sont transmettre au sein de la rgion dont elle fait partie, elle utilisera donc la partie entit, ici dfinit arbitrairement comme tant jesuisunmartien.mar, afin de transmettre les donnes au bon destinataire. Cet exemple dmontre ainsi lutilisation des diffrentes parties de lidentifiant rseau lors dun envoi de donnes entre deux rgions diffrentes.

La vie dun Bundle : de la cration jusque la destination.

Afin dexpliquer le traitement subi par les donnes transmettre travers le rseau, nous utiliserons lexemple vu prcdemment entre la plante terre et mars. La premire tape consiste crer le message (ou Bundle) qui doit tre envoy. Lapplication source qui dsire transmettre des informations demandent la cration du Bundle. Il transmet un entte qui se compose de plusieurs parties. Les identifiants source (earth.sol.int, source.fr) et destination (mars.sol.int, jesuisunmartien.mar), des informations de qualit de service dsir, une signature qui permet de crypter les donnes et les donnes utilisateurs (comprenant les informations de traitement pour le destinataire). La couche Bundle de la machine source.fr vrifie la signature, cre ensuite le Bundle en ajoutant lentte correspondant en y ajoutant sa propre signature et stocke celui-ci dans lespace de stockage afin de lenvoyer sur le rseau. La source transmet alors ce message vers la passerelle permettant de joindre la rgion backbone. En effet, la source sappuie sur une table de routage qui lui indique que pour atteindre la rgion mars, il doit transfrer les donnes vers le nud (earth.sol.int, passrl1.com). Il connait galement le moyen de communiquer avec cette passerelle, par exemple TCP/IP. La source transmet alors une copie du message cette passerelle en sappuyant sur TCP/IP. Un compteur de dlai de retransmission est alors utilis, la source attend alors un acquittement des donnes par la passerelle. Lorsque la passerelle reoit les donnes, elle vrifie dans un premier temps les droits allous la source contenu dans la signature ajout par la couche bundle source. Si celle-ci possde les autorisations ncessaires, la couche Bundle de la passerelle remplace cette signature par sa propre signature et stocke le message dans son espace de stockage. La passerelle consulte alors sa table de routage interne et dtermine que pour atteindre la destination, il doit transmettre les donnes vers (mars.sol.int, passrl2.mar). Il vrifie si le TTL du message permettra datteindre cette passerelle. Auquel cas, la passerelle 1 autorise le transfert, met jour lentte Bundle et acquitte les donnes. La machine source recevant lacquittement dtruit alors les donnes correspondantes de son espace de stockage. La passerelle 1 envoi alors les donnes vers la passerelle 2 lorsque celle-ci est joignable en utilisant le type de protocole appropri. La passerelle 2 situe sur mars reoit ces donnes. Elle vrifie alors la signature de ce message. Il vrifie ainsi que le bundle transmis provient dune source autorise et remplace alors la signature de la passerelle 1 par la sienne. Il sauvegarde ensuite le bundle dans son espace de stockage. La passerelle consulte alors sa table de routage afin dacheminer les donnes vers le destinataire final. Il vrifie laccessibilit de celui-ci, le moyen de communiquer avec lui et sassure que le TTL soit assez lev pour parvenir joindre le destinataire final. Ces

vrifications effectues, la passerelle accepte le transfert, met jour le bundle et confirme lopration la passerelle 1 qui dtruit alors la copie quelle avait conserve. La passerelle 2 envoi le message au destinataire final (mars.sol.int, jesuisunmartien.mar) qui vrifie alors lauthenticit du message grce la signature insre par la passerelle 2. Auquel cas, celui-ci est stock dans sa mmoire persistante et en informe la passerelle 2 par un acquittement, cette passerelle dtruisant son tour la copie dans son espace de stockage. La couche Bundle du destinataire fait alors appel lapplication destinatrice grce aux champs renseigns dans lidentifiant entit. Selon la qualit de service demand, le destinataire peut ventuellement crer un nouveau bundle pour informer lmetteur de la rception et de lintgrit des donnes.