internet par satellite, protocoles et performance
Transcription
internet par satellite, protocoles et performance
Texte de la 250e conférence de l'Université de tous les savoirs donnée le 6 septembre 2000. INTERNET PAR SATELLITE, PROTOCOLES ET PERFORMANCE par Walid DABBOUS La recherche dans le domaine des réseaux a connu pendant la dernière décennie une grande évolution qui a accompagné le formidable déploiement de l'Internet. IP a gagné son pari d'assurer l'interopérabilité des différentes technologies de réseaux. De très nombreux travaux de recherche ont été menés au niveau des protocoles et des applications réseaux. Les services fournis par l'Internet sont en cours d'évolution. Ces évolutions ont porté entre autre, sur le support du routage multipoint inter domaine ainsi que sur le support du contrôle de congestion dans le réseau. Parallèlement à cela, les besoins des utilisateurs et les progrès technologiques amènent de plus en plus d'hétérogénéité dans l'infrastructure du réseau et des machines. Nous allons nous concentrer sur l'hétérogénéité du réseau. En effet, l'Internet est caractérisé par une grande hétérogénéité des liens et sous-réseaux le constituant. On retrouve ainsi des liaisons ATM, satellite, des réseaux locaux haut débit (avec ou sans fil), le câble, des liaisons téléphoniques, GSM, etc. Ces différents « sous-réseaux » utilisent différentes technologies et fournissent des services de niveau liaison très différents en terme de qualité de service, coût et disponibilité. Cette hétérogénéité est motivée par des raisons techniques mais également par des raisons économiques et politiques. Un petit nombre de principes fondamentaux sont à la base de l'architecture de l'Internet et ont guidé son évolution malgré l'hétérogénéité de ses composants. Parmi ces principes on cite le principe « de bout-en-bout » et « IP par-dessus tout ». Le principe de bout en bout décrit la répartition des tâches entre le réseau et ses extrémités (c'est à dire les ordinateurs connectés au réseau). Il stipule que le réseau doit être le plus simple possible et ne faire que son travail, qui est l'acheminement des messages (découpées en ce que l'on appelle des paquets ou datagrammes), et que toutes les autres procédures liées à la communication doivent être faites à l'extérieur du réseau. L'approche de bout en bout, qui implique qu'ajouter de l'intelligence dans les réseaux est inutile et qu'il est préférable de garder l'intelligence chez les utilisateurs, permet également une évolution plus simple des réseaux car il est plus simple de changer les procédures aux extrémités que dans le réseau (c'est-àdire changer un programme dans un ordinateur que changer un programme dans les routeurs ou commutateurs d'un réseau). Cette approche permet une meilleure tolérance aux pannes au niveau inter-réseau, de même que la simplification des routeurs IP permettant l'interconnexion de différentes technologies de réseaux (comme Ethernet, FDDI, X.25, ATM, etc.). D'ailleurs, le deuxième principe de l'architecture Internet stipule qu'il faut concaténer des réseaux de technologies variées en y surimposant un protocole unique. Ce principe de « IP par dessus tout » permet d'éviter la traduction de services (par exemple la mise en correspondance de services identiques dans les deux réseaux) par des passerelles. Au contraire, et plus simplement, le protocole Internet est superposé aux protocoles natifs des réseaux connectés. Contrôle de transmission dans un environnement hétérogène Parmi les protocoles de contrôle de bout-en-bout de l'Internet on trouve le protocole TCP permettant d'assurer la fiabilité de la transmission afin de supporter des applications diverses de transfert de fichier, accès au Web et de connexion à des machines distantes. TCP intègre en particulier un mécanisme de contrôle de congestion basé sur le démarrage lent de la phase de transfert de données afin de ne pas surcharger le réseau. En effet, l'émetteur commence par envoyer un seul paquet (fenêtre d'émission de 1 paquet), puis incrémente sa fenêtre à chaque accusé de réception. À la détection d'une perte, la fenêtre est réduite à 1 paquet et l'opération est recommencée. Quand la fenêtre dépasse un certain seuil on passe à un mode permettant d'éviter la congestion : l'augmentation de la fenêtre sera plus lente que la phase de démarrage lent (qui, en effet, est un démarrage rapide, mais moins rapide que l'envoi en rafale d'un grand nombre de paquets par l'émetteur). La fenêtre sera augmentée de 1 pour chaque groupe d'accusé de réception représentant un fenêtre complète et non plus pour chaque accusé de réception. L'optimisation du fonctionnement du protocole TCP dans un environnement très hétérogène est difficile. Certains mécanismes tels que le contrôle de congestion one été conçus en considérant qu'un perte de paquet est un signal de congestion. ce qui n'est pas les cas pour les liaisons sans fil et pour certaines liaisons satellitaires. La difficulté provient du fait que des mécanismes conçus pour résoudre un problème particulier dans un contexte donné peuvent dégrader les performances dans un autre contexte. En effet, même si les protocoles des couches réseau et transport de l'Internet ont été conçus en se basant sur ce principe afin de supporter une large plage de technologies ayant des caractéristiques très variées, certaines liaisons ont des caractéristiques spécifiques qui ont un impact très important sur les performances des protocoles de l'Internet. Parmi ces spécificités au niveau physique ou au niveau liaison on trouve : un taux d'erreur de transmission élevé (liaisons sans fil), un délai de transmission élevé (liaisons satellite GEO), un délai de propagation variable (liaisons satellite LEO), l'asymétrie ou l'unidirectionalité de la liaison (satellite ou câble), ainsi que le support de fonctionnalités redondantes avec les couches supérieures (GSM, ATM ou Frame Relay). L'application stricte du principe de bout en bout se heurte donc à l'existence de telles liaisons. Les problèmes qui en découlent sont multiples : • le non fonctionnement de certains protocoles (comme par exemple ARP, DVMRP et autres sur liaison unidirectionnelle) ; • la forte dégradation des performances de certains protocoles (tels que TCP et IGMP sur des liaisons à délai élevé ou variable, TCP sur HFC ou xDSL) ; • la difficulté de concevoir des mécanismes d'adaptation de bout en bout (à cause de la grande variabilité des caractérisitiques des liaisons) ; • l'interfonctionnement des mécanismes de contrôle de congestion au niveau liaison et transport (TCP sur ATM) ; • la mise en correspondance des mécanismes de support de la qualité de service au niveau IP et au niveau liaison (diff-serv sur ATM ou sur Frame Relay, IP sur satellite). Les travaux de recherche de axe se focalisent autour de l'étude de l'impact des nouveaux supports de transmission sur le fonctionnement et les performances des protocoles de l'Internet et en particulier sur le routage unicast et multicast, les protocoles de transport et les mécanismes de support de la qualité de service. Nous allons focaliser dans la suite de ce texte sur l'impact des liens satellite géostationnaires sur les performances du protocoles TCP. Spécificités des liaisons satellitaires Les liaisons satellite sont utilisés pour la transmission numérique de données. Ces liaisons fournissent un support « naturel » pour la diffusion vers des utilisateurs éventuellement mobiles, éloignés géographiquement les uns des autres et situés en dehors des grandes agglomérations. Cependant, ces liaisons ont des caractéristiques particulières en terme de délai et de bande passante qui pourraient dégrader les performances de TCP. En effet, le délai entre l'émission et la réception d'un paquet par des stations terrestres via le satellite est de 250 ms. Le produit bande-passante/délai représentant la nombre de paquets en transit sur la liaison est aussi important. D'autre part, le rapport signal sur bruit étant relativement faible à cause de la distance (36000 km pour les satellites géostationnaires), des mécanismes de codage avancés sont utlisés pour la correction d'erreurs. Ces systèmes très coûteux en bande passante permettent un fonctionnement quasiment sans erreur en bande Ku. Cependant, les systèmes futurs en bande Ka risquent de présenter un taux d'erreur de transmission non nul. Ces caractéristiques ont un impact sur les performances du protocoles TCP. Nous allons donner deux exemples de dégradation des performances dues au délai important sur la liaison satellite. Le premier exemple (voir figure ci-dessous) concerne l'impact de l'importance du produit bande passante/délai sur le débit moyen. Supposons que l'émetteur dispose d'une fenêtre de 4 paquets de 1 Koctet. Si son débit d'émission maximal est de 1 Mbit/s, l'émission des 4 paquets prendra en gros 4 ms. L'émetteur devrait alors attendre 246 ms avant de pouvoir émettre d'autres paquets même si aucun paquet n'est perdu et que le réseau n'est pas congestionné. Ceci réduit fortement le débit moyen du protocole. Emetteur Délai = 250 ms Paquets de données Fenêtre = 4 Récepteur temps Accusé de réception Le deuxième exemple (voir figure ci-dessous) concerne l'impact de l'importance du délai sur le temps de réponse à cause du mécanisme de démarrage lent. Considérons un réseau avec un lien satellite bi-directionnel entre l'émetteur et le récepteur. Comme il a été mentionné ci-dessus, la fenêtre est incrémentée à chaque accusé de réception, ce qui risque de ralentir fortement la transmission d'un fichier qui s'étend sur plusieurs paquets. Fenêtre 1 Temps Ces problèmes ainsi que d'autres ont été largement étudiés par la communauté scientifique et des propositions de solutions ont été avancées. D'abord une extension du protocole TCP permettant d'avoir des fenêtres de plus grandes (extension décrite dans le RFC1323). D'autre part, en ce qui concerne le démarrage lent, il a été proposé de démarrer avec un fenêtre initiale de plus qu'un paquet, ou bien d'incrémenter la fenêtre en se basant sur le nombre d'octet acquitté et non sur le nombre d'accusé de réception. Ces propositions permettent d'améliorer les performances de TCP sur le lien satellite, mais remettent en cause le fonctionnement optimal du protocole dans un réseau hétérogène. Pour cela, des solutions basées sur le partitionnement de la connexion TCP ont été proposées (voir figure ci-dessous). Ceci signifie que la connexion sera divisée en trois parties dont une au dessus du lien satellite, avec un réglage adéquat des paramètres et des mécanismes mis en œuvre. Source TCP TCP-sat TCP Conclusion Les travaux du groupe de tcp-over-satellite de l'IETF sont terminés depuis mars 1999 sans qu'il y ait de recommandation claire ni de version de TCP pour les satellites. Par crainte de démultiplication des versions du protocole de transport, les solutions étudiées ont été jugées non applicables dans tout l'Internet et des solutions transitoires basées sur l'utilisations de « proxy » transport ont été adoptées. Le groupe de travail pilc continue les travaux sur l'impact des spécificités des liens sur les performances protocoles de l'Internet. L'optimisation globale des performances de TCP sur un réseau hétérogène reste donc un problème ouvert. Références Barakat (Ch)., Altman (E.), et Dabbous (W.), "On TCP Performance in a Heterogeneous Network : A Survey", IEEE Communication Magazine, Vol. 38, No. 1, pp. 40-46, Janvier 2000. Bolot (J.) et Dabbous (W.), L’Internet : histoire et évolution. Quel avenir prévisible ? Administration, No 175, pp. 4451, avril-juin 1997. La page web du groupe de travail pilc de l’IETF : www.ietf.org/html.charters/pilc-charter.html