209
TM/THL/ASM Frédéric GODFRYD & Edouard DOS SANTOS document.doc, 16/01/22 ____________________________________________________________________ ______________ Support de cours TCP-IP document.doc, fait le dimanche 16 janvier 2022 par Frédéric GODFRYD &Edouard DOS SANTOS GEFI SA 85/87, Avenue du Gl de GAULLE, 94000 CRETEIL – Tél : 01 42 07 14 83

Tcp-ip Support de Cours

  • Upload
    birkzo

  • View
    48

  • Download
    16

Embed Size (px)

DESCRIPTION

Tcp-ip

Citation preview

Page 1: Tcp-ip Support de Cours

TM/THL/ASM Frédéric GODFRYD & Edouard DOS SANTOS document.doc, 27/04/23__________________________________________________________________________________

Support de cours

TCP-IPdocument.doc, fait le jeudi 27 avril 2023 par Frédéric GODFRYD &Edouard DOS SANTOS

GEFI SA 85/87, Avenue du Gl de GAULLE, 94000 CRETEIL – Tél : 01 42 07 14 83

Page 2: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Table des matières

1. INTRODUCTION À TCP/IP 1

2. LES COUCHES MISES EN JEU DANS LA TRANSMISSION 6

2.1 COUCHE D'APPLICATIONS 62.2 COUCHE TRANSPORT 62.3 COUCHE IP (INTERNET PROTOCOL) 62.4 COUCHE RÉSEAU PHYSIQUE 6

3. RÉSEAUX PHYSIQUES 7

4. MODÈLE ADOPTÉ PAR LA SUITE 8

5. L'ADRESSAGE IP 9

5.1 A QUOI S'APPLIQUE UNE ADRESSE IP ? 95.2 FORME D'UNE ADRESSE IP 95.3 NOTATION DÉCIMALE POINTÉE 105.4 ADRESSES RÉSEAUX RÉSERVÉES 115.5 QUI ATTRIBUE LES ADRESSES IP ? 125.6 CRITÈRES D'ATTRIBUTION D'UNE ADRESSE RÉSEAU 145.7 SYSTÈME AUTONOME 145.8 EXEMPLE 14

6. LE SUBNETTING (LE SOUS ADRESSAGE) 15

6.1 PRINCIPE GÉNÉRAL DU SUBNETTING 156.2 SUBNET MASK 186.2.1 LE SUBNET MASK PAR DÉFAUT 186.2.2 DÉFINITION DU SUBNETMASK 206.2.3 APPLICATION 236.3 INCONVÉNIENT DU SUBNETTING 24

7. ARP (ADDRESS RESOLUTION PROTOCOL) 26

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page i

Page 3: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________7.1 FORMAT D'UN MESSAGE ARP 277.2 EXEMPLE D'ETHERNET 28

8. RARP (REVERSE ADDRESS RESOLUTION PROTOCOL) 31

9. IP (INTERNET PROTOCOL) 33

9.1 RÔLE DU PROTOCOLE IP 339.2 FORMAT D'UN DATAGRAMME IPV4 33

10. FORMAT D'UN DATAGRAMME IPV6 39

IPV6 QUELQUES CARACTÉRISTIQUES : 39

11. L'ADRESSAGE MULTICAST 43

11.1 BROADCAST ET MULTICAST PHYSIQUES 4311.2 MULTICAST IP 45

12. LE ROUTAGE DES DATAGRAMMES IP 50

12.1 CONCEPTS GÉNÉRAUX DU ROUTAGE 5012.2 ACTION D'UN ROUTEUR SUR LES DATAGRAMMES REÇUS 5212.3 LES TABLES DE ROUTAGE 52C:\>ROUTE PRINT 5412.4 L'UTILISATION D'UNE TABLE DE ROUTAGE 5512.5 EXEMPLE DE TABLES DE ROUTAGE 5512.6 LE ROUTAGE DIRECT ET INDIRECT 5612.6.1 ROUTAGE DIRECT 5712.6.2 ROUTAGE INDIRECT 5812.7 REMARQUE IMPORTANTE 5812.8 CONSTITUTION DES TABLES DE ROUTAGE 5912.9 ROUTES PAR DÉFAUT 6012.10 ROUTAGE SPÉCIFIQUE POUR CERTAINS HOSTS 6112.11 L'ALGORITHME DE ROUTAGE IP 61

13. ICMP ( INTERNET CONTROL MESSAGE PROTOCOL ) 62

13.1 PRÉSENTATION 6213.2 LES DIFFÉRENTS MESSAGES ICMP : 6213.3 FORMAT DU MESSAGE ICMP 63

14. ARCHITECTURE ET ROUTAGE 66

15. EGP (EXTERIOR GATEWAY PROTOCOL) 67

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page ii

Page 4: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________16. IGP (INTERIOR GATEWAY PROTOCOL) 68

16.1 LE SYSTÈME MANUEL 6816.2 INTERIOR GATEWAY PROTOCOLS (IGP) 6816.3 LES ALGORITHMES DE TYPE "DISTANCE VECTOR" 6916.3.1 RIP 6916.3.2 HELLO 7416.3.3 IGRP 7416.3.4 ALGORITHME V-D : INCONVÉNIENTS 7416.4 LES ALGORITHMES DE TYPE "LINK STATUS" 7416.4.1 OSPF 7616.4.2 IS-IS 77

17. UDP (USER DATAGRAM PROTOCOL) 78

17.1 LA NOTION DE PORT 7817.2 LA GESTION DES NUMÉROS DE PORTS 7917.3 EXEMPLES D'APPLICATIONS UTILISANT UDP 79LE PROTOCOLE UDP 8017.4 FORMAT D'UN MESSAGE UDP 8017.5 ENCAPSULATIONS SUCCESSIVES 81

18. TCP (TRANSMISSION CONTROL PROTOCOL) 82

18.1 TCP 8218.2 LES NOTIONS DE CONNEXION ET DE ENDPOINTS 8218.3 FORMAT D’UN SEGMENT TCP 8518.4 ENCAPSULATIONS SUCCESSIVES 8918.5 EXEMPLES D'APPLICATIONS UTILISANT TCP 89

19. LE MODÈLE CLIENT-SERVEUR 91

20. LE PROTOCOLE BOOTP (BOOTSTRAP PROTOCOL) 91

21. LE SYSTÈME DOMAIN NAME (DNS) 91

21.1 LA HIÉRARCHIE DANS L'ADRESSAGE SYMBOLIQUE 9121.2 DNS 9221.3 LA HIÉRARCHIE INTERNET 9321.4 L’OBTENTION D’UN NOM DE SECOND NIVEAU 9421.5 LA CORRESPONDANCE ENTRE ADRESSES 94

DHCP 97

22. L’INTERFACE ENTRE TCP/IP ET LES APPLICATIONS 99

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page iii

Page 5: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________23. LES PROGRAMMES D’APPLICATIONS 99

24. LE MANAGEMENT DE RÉSEAU 100

24.1 ARCHITECTURE DES PROTOCOLES DE MANAGEMENT 10024.2 LES RÉFÉRENCES 10124.3 LA MIB 10124.4 SMI 102

25. LES FIREWALLS OU COUPE-FEU 104

25.1 PRÉSENTATION 10425.2 FONCTIONNEMENT 10425.3 LES PROXY 10525.3.1 DÉFINITION 10525.3.2 FONCTIONNEMENT 105

26. ANNEXES 106

26.1 INTERACTIONS DES PROTOCOLES TCP/IP ENTRE EUX 10626.2 LA HIÉRARCHIE DESMIB 10726.3 LES TRAMES ETHERNET 10826.3.1 ETHERNET V2.0 DE XEROX, DEC, ET INTEL 10826.3.2 IEEE 802.3/IS 8802.3 DE L’ISO 10826.3.3 LE CHAMP TYPE 10926.3.4 LE CHAMP ADRESSE CONSTRUCTEUR 10926.4 LE FORMAT DES PAQUETS 11026.4.1 LE DATAGRAMME IP V4 11026.4.2 LE DATAGRAMME IP V6 11226.4.3 LE DATAGRAMME ARP 11326.4.4 LE PAQUET TCP 11426.4.5 LE DATAGRAMME UDP 11526.5 LE MTU 11626.6 ANALYSE DE TRAMES 11726.6.1 LES TRAMES ARP 11826.6.2 LES TRAMES ICMP 12026.6.3 LES TRAMES PING 122

27. BIBLIOGRAPHIE 125

28. GLOSSAIRE 126

29. Table d’index 129

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page iv

Page 6: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

1. Introduction à TCP/IP

Internet historique en quelques mots   : Recherche du DARPA

-Defense Advanced projects Research AgencyARPANET

-fut le premier réseau à commutation de paquet au millieu des années 70-protocole sous leur forme actuelle 1978 – 1979-réseau de liaison point à point-exploration des liaisons radios et satellites

La mise en œuvre de TCPIP en 1980 sur le réseau de recherche DARPA est le début de l’InternetLa transistion est complète quand DARPA exige que toutes les machines d’ARPANET utilisent TCPIPTCPIP intégré à l’unix BSD

-entrée dans le monde universitaire-développements d’applications réseaux avec le sockets

NSFnet en 1986, 12 réseaux nationnaux

Internet (ISOC, IAB, IETF)   : ISOC

-Internet society : Internet Society. Organisme chargé de promovoir le développement du réseau Internet. L'ISOC gère également l'évolution de protocoles Internet par l'intermédiaire de l'IAB, del'IETF et de l'IRTF

« ISOC France »-Pilote l’IAB,et l’ IETF

Internet Architecture Board -organisation autonome, Organe central de l'ISOC dirigeant les évolution de l'Internet via

l'IANA, l'IEFT et l'IRTF-10 « task forces »-plusieurs rencontres annuelles-le chairman de l’IAB est l’architecture de l’Internet

Internet Engineering Task Force-organisé en groupe de travail, coordonne les développements techniques de l'Internet-rapports techniques : drafts, RFCs« request for comments »

Les RFC sont disponibles notamment par courrier électronique auprès du NIC ( Network Information Center ). Ce sont des standarts qui décrivent les protocoles IP.

-Ex : RFC 793 décrit TCP-Ne sont pas (ou plus) uniquement des « Request for Comments »

Certains sont uniquement informatifs :FYI-RFC 1026 : Answers to Commonly asked “new Intenet User” Questions

BCP : (Best Current Practice)Tout le monde peut proposer un RFC, l’IAB gère le processus d’acceptation des RFCs .Ils passent par les étapes draft…standard avec des sauts : elective, recommended, required..

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 1

Page 7: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Gestion des adresses IP et des noms de domaine :

Le NIC France : la gestion des noms de domaines du "top-level domain" .fr, par l'association AFNIC. (Association Française pour le Nommage Internet en Coopération). En particulier, son serveur HarmoNIC permet de faire des recherches multi-critères concernant les noms de domaines.

RIPE : l'organisme qui attribue et gère les adresses IP pour l'Europe.

Dans le reste du monde : les adresses IP sont gérées par l'ARIN pour l'Amérique et par l'APNIC pour la zone Asie - Pacifique.

ICANN , l'organisme qui coordonne au niveau mondial les adresses IP, les noms de domaine, les assignations de paramètres des protocoles (par exemple les numéros de ports) et le bon fonctionnement des serveurs de noms de domaines

Voir liste et modalités d'obtention de ces documents dans “Internetworking with TCP/IP”, pages 441 et 475

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 2

Page 8: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Architecture de l’Internet   : L’Intenet est un réseau virtuel construit en interconnectant des réseaux physiques par des passerelles, des routeurs.L’Intenet supporte un service de communication universel.

Architecture de l’Internet : Vue utilisateur

Architecture de l’Internet : La réalité

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 3

Page 9: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le protocole de communication TCP/IP tire son nom des deux principaux protocoles qu'il contient : TCP ( Transmission Control Protocol ) et IP ( Internet Protocol ).

TCP/IP propose une méthode d'interconnexion logique des réseaux physiques et définit un ensemble de conventions permettant des échanges de données entre des ordinateurs situés sur des réseaux physiques différents. Il a été développé par la DARPA (Defense Advanced Research Projects Agency).

Il est notamment opérationnel sur le réseau Internet qui est un réseau de taille mondiale fédérant les réseaux d'universités, d'institutions de recherche, de laboratoires de recherche américains et de nombreuses entreprises.

TCP/IP est un terme générique qui renvoie à une vaste famille de protocoles et de services que l'on peut regrouper en trois grandes catégories :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 4

Page 10: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Les utilisateurs invoquent des applications sana avoir besoin de connaître la technologie de l’Internet ni son architecture.

q des programmes d'applications :le courrier électronique (smtp)le transfert de fichiers (ftp, tftp)l’accès à l’information distante (WWW (http))l’accès à des machines distantes (telnet)les forums (News)

q les protocoles assurant un transport de bout en bout ( tcp et udp )q les protocoles acheminant les données dans le réseau ( ip )

Le tableau ci-dessous donne le nom des principaux protocoles ou services de TCP/IP, avec l'indication de la couche correspondante dans le modèle OSI de l'ISO.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 5

Page 11: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 6

Page 12: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

2. Les couches mises en jeu dans la transmission

Nous donnons dans ce chapitre un aperçu des fonctions réalisées par les 4 couches principales de l'environnement TCP/IP.

2.1 Couche d'applications

Les applications interagissent avec les protocoles de la couche transport pour envoyer ou recevoir des données. Chaque programme d'application choisit le type de service de transport souhaité et transmet ses données au niveau transport pour acheminement.

2.2 Couche Transport

La couche transport est chargée de fournir un moyen de communication de bout en bout entre deux programmes d'application. La couche transport peut agir soit en mode connecté et ainsi réguler le flux des informations et fournir un service fiable, soit en mode non connecté (sans acquittements).

La couche transport divise le flux de données venant des applications en paquets, transmis avec l'adresse de destination IP au niveau IP. Inversement, le niveau transport délivre aux applications les paquets venant du niveau IP.

2.3 Couche IP (Internet Protocol)

La couche IP encapsule les paquets reçus du niveau transport dans des unités appelées datagrammes IP.

Les couches IP des différentes machines ont pour mission de coopérer à l'acheminement des datagrammes dans le réseau suivant un mode non connecté et non fiable (connectionless and unreliable). Pour ce faire, des algorithmes de routage sont mis en oeuvre dans les différentes machines.

La couche IP traite également les datagrammes reçus du niveau Réseau Physique. Si une machine recevant un datagramme en cours d'acheminement s'aperçoit qu'elle est destinataire finale du datagramme IP, le niveau IP de cette machine transmet le datagramme au niveau transport. Sinon il retransmet ce datagramme sur un autre réseau physique en fonction de l'algorithme de routage.

2.4 Couche Réseau Physique

Cette couche est en contact direct avec le matériel. Elle assure la transmission d'un datagramme venant du niveau IP en l'encapsulant dans une trame physique et en transmettant cette dernière sur un réseau physique. De plus, quand une trame physique sur le réseau lui est destinée, elle remonte le datagramme qu'elle contient au niveau IP. Elle est implantée sous la forme d'un device driver.__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 7

Page 13: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

3. Réseaux physiquesLes protocoles de la famille TCP/IP supportent différents réseaux physiques. Citons par

exemple :

q Ethernet ou IEEE 802.3q Token Ring ou IEEE 802.5q Réseau par satelliteq Réseau hertzien mobile à transmission par paquetsq Réseau public x25, utilisé comme réseau de transportq ISDN/RNISq SLIP ou PPP

L'unité de transfert d'un réseau physique est une trame.

Cette trame contient un en-tête, des données, et un champ de contrôle. L'en-tête inclut différents renseignements dont les adresses physiques de la source et du destinataire.

Frame Header Frame Data AREA Trailer

C'est dans la partie frame data area que viennent s'intégrer ( encapsulation ) les différentes informations de service des protocoles des couches supérieures ainsi que les données utilisateur.

Ex : format d’une trame Ethernet 802.3 (rappel)

Ex : Adresse IEEE802.3 ou Ethernet (rappel)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 8

Page 14: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 9

Page 15: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

4. Modèle adopté par la suiteA partir de maintenant nous ne nous intéresserons plus à la topologie physique des réseaux.

Nous considérerons un inter-réseau, c'est à dire un ensemble de réseaux utilisant des règles communes de communication, ici l'ensemble des protocoles de communication TCP/IP.

Notons qu'un ensemble de segments Ethernet interconnectés par des ponts ne sera vu au niveau supérieur (niveau IP) que comme un unique réseau physique.

Ces réseaux sont reliés entre eux par des ordinateurs appelés routeurs IP. Ces routeurs sont chargés d'aiguiller les différents datagrammes en transit dans l'inter-réseau.

Même si TCP/IP fournit une vue logique des communications entre ordinateurs, il ne faut pas toutefois perdre de vue que les transmissions effectives de données ne peuvent se faire qu'entre deux machines connectées au même réseau physique.

Le mécanisme d'adressage logique induit par TCP/IP est complètement indépendant des mécanismes d'adressage physique utilisés par les différents réseaux physiques.

TCP/IP fournit des outils permettant d'associer une adresse physique à une adresse logique avant transmission d'information sur le réseau physique.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 10

Page 16: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

5. L'adressage IPCe chapitre traite de l'adressage logique, c'est à dire du moyen essentiel qu'utilise TCP/IP pour

masquer les réseaux physiques et pour donner au réseau un aspect uniforme.

5.1 A quoi s'applique une adresse IP ?

Dans la terminologie TCP/IP, le terme hôte (host en anglais) s'applique à tout le système informatique qui possède une interface réseau et qui utilise un logiciel de communication implantant TCP/IP pour transmettre ou recevoir des informations. Il peut s'agir, par exemple, de PC ou de stations UNIX. Les routeurs sont des hôtes particuliers chargés d'interconnecter des réseaux.

Une adresse IP se compose de deux parties. La première partie identifie le réseau physique sur lequel est rattaché l'hôte. La seconde partie identifie l'interface réseau de l'hôte sur ce réseau.

Chaque interface réseau d'un hôte possède donc une adresse IP. Un hôte connecté à n réseaux (un routeur par exemple) aura donc n adresses IP distinctes, une pour chaque interface réseau. Notons la différence avec une adresse DECnet qui identifie de façon unique un hôte quel que soit le nombre d'interfaces réseau.

La plupart des hôtes ne possèdent généralement qu'une interface réseau. Aussi existe-t-il un certain abus de langage qui consiste à parler de l'adresse IP d'un hôte, plutôt que de l'adresse IP de l'interface réseau de l'hôte.

5.2 Forme d'une adresse IP

Les adresses IP ont une longueur de 32 bits soit 4 octets. Chaque adresse IP est une paire de champs (‘ID Réseau’, ‘ID Machine’) où :

q ‘ID Réseau’ identifie un réseauq ‘ID Machine’ identifie une interface sur ce réseau

Il existe cinq classes différentes d'adresses (A, B, C, D et E). Les longueurs respectives des champs ‘ID Réseau’ et ‘ID Machine’ sont indiquées à la page suivante.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 11

Page 17: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Ces classes peuvent être distinguées en comparant les premiers bits du premier octect :

0 pour une adresse de classe A10 pour une adresse de classe B110 pour une adresse de classe C1110 pour une adresse de classe D11110 pour une adresse de classe E

0 7 15 23 31Octet 1

b7 b0Octet 2

b7 b0Octet 3

b7 b0Octet 4

b7 b0

Classe A 0 ID Réseau ID Machine

Classe B 1 0 ID Réseau ID Machine

Classe C 1 1 0 ID Réseau ID Machine

Classe D 1 1 1 0 Adresse de diffusion GROUPE ( Multicast )

Classe E 1 1 1 1 0 Réservé pour une utilisation future

-Attention : les premiers bits, qui désignent la classe, sont inclus dans le champ «  ID Réseau ». C’est à dire que le champ « ID Réseau » fait 8 bits en classe A, 16 bits en classe B et 24 bits en classe C.

5.3 Notation décimale pointée

Pour plus de clarté, les adresses IP sont écrites comme une suite de quatre décimaux séparés par des points. Chaque décimale représentant un octect de l'adresse.

1000 0000 . 0000 1010 . 0000 0010 . 0001 1110 <=> 128.10.2.30notation binaire notation pointée

Ce format est appelé notation décimale pointée (dotted-decimal notation).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 12

Page 18: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

5.4 Adresses réseaux réservées

Voici une manière de représentation de l’adresse réservée : {netid ; hostid}(RFC 1918)

Adresse de boucle locale : {127 ; quelconque} l'adresse réseau 127.0.0.0 est réservée pour la désignation de la machine locale, c'est à dire la communication intra-machine. Une adresse réseau 127 ne doit, en conséquence, jamais être véhiculée sur un réseau et un routeur ne doit jamais router un datagramme pour le réseau 127 Cela permet aussi de tester la pile TCP/IP de sa machine (attention pour les machines Microsoft l’adresse de Loopback est : 127.0.0.1)Adresse de diffusion limitée : {-1 ; -1} netid ne contient que des 1 (255.255.255.255) : l'adresse constituée concerne uniquement le réseau physique associé (local), par défaut ne passe pas les routeursL'adresse de diffusion dirigée :{netid ; -1} netid est une adresse réseau spécifique => la diffusion concerne toutes les machines situées sur le réseau spécifié : 192.20.255.255 désigne toutes les machines du réseau 192.20.Adresse avec tous les bits à 0 : {0 ; 0} Signifie "celui-ci". C'est à dire "cette machine" si la parite ID hôte est à zéro, ou "ce réseau" si la partie ID réseau est à zéro. Ainsi, si une machine veut connaître son identificateur réseau, elle n'a qu'à envoyer un paquet dont l'ID réseau vaut zéro. Elle recevra en réponse un paquet dont l'ID réseau sera celui du réseau local.

Résumé :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 13

désigne la machinecourante

machine Host-idsur le réseau courant

diffusion limitée surle réseau courant

diffusion dirigée surle réseau Net-id

boucle locale

Page 19: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Allocation des réseaux privés réservés

Reserved Private Network AllocationNetwork

ClassDefault Netmask Plages d’adresses réservés

A 255.0.0.0 10.0.0.0 - 10.255.255.255

B 255.255.0.0 172.16.0.0 - 172.31.255.255C 255.255.255.0 192.168.0.0 - 192.168.255.255

Ces adresses IP ne sont pas routables sur Internet, les FAI ont positionnés des filtres sur leurs routeurs.Attention   : l’adresse 10.0.0.0 est une adresse Réseau, donc pas utilisable, l’adresse 10.255.255.255 est une adresse de broadcast dirigé, donc non utilisable aussi.Il est donc possible de bâtir un réseau d'entreprise en utilisant l'un des espaces d'adressage réservés aux réseaux privés coupés de l'Internet. Le réseau de classe A 10.0.0.0, les réseaux de classe B allant de 172.16.0.0 à 172.31.0.0, ainsi que ceux de classe C courant de 192.168.0.0 à 192.168.255.0 sont définis par la RFC (Request for Comment - publications de l'IETF) 1918 comme non attribués sur l'Internet et réservés au réseaux privés déconnectés. Il est alors possible de relier ces réseaux à l'Internet public en utilisant les routeurs comme des NAT, ou Network Address Translators, qui vont attribuer à la volée une adresse publique aux machines internes désireuses d'établir une connexion avec l'Internet public, et effectuer une traduction automatique des adresses IP dans l'en-tête des paquets.

5.5 Qui attribue les adresses IP ?

le NIC (Network Information Center) est un organisme dépendant du DoD (Département de la Défense US) qui attribue à toute société ou organisation qui le demande une adresse réseau.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 14

Page 20: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le NIC délègue sa responsabilité à la société ou à l'organisation demandeuse pour l'attribution des adresses hôtes (champs ‘ID Machine’).

Il n'est pas obligatoire pour une société ou une organisation de demander une adresse réseau auprès du NIC tant qu'elle ne connecte pas son réseau au réseau mondial Internet. Mais en prévision de l'avenir, c'est fortement recommandé.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 15

Page 21: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

5.6 Critères d'attribution d'une adresse réseau

La demande d'attribution d'adresses auprès du NIC est accompagnée d'un descriptif du réseau de la société indiquant le nombre de réseaux physiques et d'hôtes à adresser actuellement et dans cinq ans. En fonction de ces informations, le NIC attribue une adresse réseau de classe A, B ou C. La classe de l'adresse limite le nombre d'hôtes adressables....

à presque 17 millions d'hôtes (2 24 -2) pour une classe A, à 65534 hôtes (2 16 -2) pour une classe B, et à 254 hôtes (2 8 -2) pour une classe C.

Le choix de la classe d'adresse est important. Prenons l'exemple d'un réseau disposant d'une adresse réseau de classe C (pouvant donc adresser au maximum 254 hosts). Si le nombre d'hôtes sur ce réseau vient un jour à dépasser 254, il faudra alors passer à une adresse réseau de classe B avec tous les problèmes de changements d'adresses que cela implique.

Plan Adresse réseau Nombre de Nombre d’adresses Nombres d’adressesD’adressage Premiére Derrniére réseaux par réseaux machines par réseauClasse A 0.0.0.0 127.0.0.0 126 16.777.216 16.777.214Classe B 128.0.0.0 191.255.0.0 16.384 65536 65534Classe C 192.0.0 223.255.255.0 2.097.152 256 254Classe D 224.0.0.0 239.255.255.255 268.435.456Classe E 240.0.0.0 247.255.255.255

5.7 Système autonome

Chaque société qui obtient auprès du NIC une adresse réseau constitue un système autonome.

5.8 Exemple

Prenons l'exemple d'une société dont le réseau (un Token Ring ici) est relié au réseau mondial Internet par un routeur.

Le réseau de la société a pour adresse réseau 195.10.40.0. (adresse réseau de classe C). L'adresse de l'interface de chaque hôte commence donc par le préfixe 195.10.40. Le routeur a deux interfaces réseau. La première est du côté de la société (adresse 195.10.40.1), la seconde est du côté du réseau Internet et possède une adresse IP différente de la précédente.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 16

Réseau 195.10.40.0

195.10.40.2

195.10.40.3 195.10.40.5 195.10.40.7

195.10.40.4 195.10.40.6

195.10.40.1

W.X.Y.Z

Host A Host B Host C

Host D Host E Host F

Page 22: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 17

VersINTERNET

Page 23: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

6. Le subnetting (le sous adressage)Le réseau d'une société (ou d'une organisation) ne se limite pas, la plupart du temps, à un seul

réseau physique. Il est en fait constitué de multiples réseaux physiques interconnectés, appelés sous-réseaux.

Or, le NIC n'attribue à une même société qu'une seule adresse réseau. Grâce au subnetting, il est possible de créer dans le schéma d'adressage IP un niveau de hiérarchie supplémentaire pour identifier ces sous-réseaux.

Le sous-adressage est une extension du plan d’adressage initialDevant la croissance du nombre de réseaux de l’Internet, il a été introduit afin de limiter la consommation d’adresses IP qui permet également de diminuer :

la gestion administrative des adresses IP, la taille des tables de routage des passerelles, la taille des informations de routage, le traitement effectué au niveau des passerelles.

6.1 Principe général du subnetting

Principes :A l’intérieur d’une entité associée à une adresse IP de classe A, B ou C, plusieurs réseaux physiques partagent cette adresse IP. On dit alors que ces réseaux physiques sont des sous-réseaux (subnet) du réseau d’adresse IP.

Supposons qu'une société ait obtenu auprès du NIC une adresse réseau de classe B (159.95.0.0 par exemple).

1 ier Octet 2 iéme Octet 3 iéme et 4 iéme Octets159 95 champ ‘ID Machine’

Format des adresses IP des machines de la sociétésans utilisation du subnetting

Si le manager du réseau de la société désire créer un niveau de hiérarchie supplémentaire dans le schéma d'adressage IP pour identifier ses sous-réseaux, il devra réserver à cet effet quelques uns des premiers bits du champ ‘ID Machine’.

Ces bits constituent le subnet field. C'est ce subnet field qui identifiera de façon unique les différents sous-réseaux.

Le choix de la longueur du subnet field est de la seule responsabilité du manager du réseau de la société. Il dépend du nombre de sous-réseaux et du nombre d'hôtes.

Les sous-réseaux 128.10.1.0 et 128.10.2.0 sont notés seulement avec le NetId, les machines seulement avec le Hostid ; exemple IP(F) = 128.10.2.9

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 18

Page 24: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Un site avec deux réseaux physiques utilisant le sous-adressage de manière à ce que ses deux sous-réseaux soient couverts par une seule adresse IP de classe B. La passerelle P accepte tout le trafic destiné au réseau 128.10.0.0 et sélectionne le sous-réseau en fonction du troisième octet de l’adresse destination. Le site utilise une seule adresse pour les deux réseaux physiques. A l’exception de P, toute passerelle de l’internet route comme s’il n’existait qu’un seul réseau. La passerelle doit router vers l’un ou l’autre des sous-réseaux ; le découpage du site en sous-réseaux a été effectué sur la base du troisième octet de l’adresse :les adresses des machines du premier sous-réseau sont de la forme 128.10.1.X,les adresses des machines du second sous-réseau sont de la forme 128.10.2.X.Pour sélectionner l’un ou l’autre des sous-réseaux, P examine le troisième octet de l’adresse destination : si la valeur est 1, le datagramme est routé vers réseau 128.10.1.0, si la valeur est 2, il est routé vers le réseau 128.10.2.0.Conceptuellement, la partie locale dans le plan d’adressage initial est subdivisée en “partie réseau physique” + “identification de machine (hostid) sur ce sous-réseau” :

«Partie Internet» correspond au NetId (plan d’adressage initial)«Partie locale» correspond au hostid (plan d’adressage initial)les champs «Réseau physique» et «identifieur Machine» sont de taille variable; la longueur des 2 champs étant toujours égale à la longueur de la «Partie locale». Le choix du découpage dépend des perspectives d’évolution du site: Exemple Classe B : 8 bits pour les parties réseau et machine donnent un potentiel de 256 sous-réseaux et 254 machines par sous-réseau, tandis que 3 bits pour la partie réseau et 13 bits pour le champ machine permettent 8 réseaux de 8190 machines chacun.Exemple Classe C : 4 bits pour la partie réseau et 4 bits pour le champ machine permettent 16 réseaux de 14 machines chacun.Lorsque le sous-adressage est ainsi défini, toutes les machines du réseau doivent s’y conformer sous peine de dysfonctionnement du routage ==> configuration rigoureuse.Les notations suivantes sont utilisées :décimale pointée; exemple : 255.255.255.0triplet : { <ident. réseau>, <ident. sous-réseau> <ident. machine> } ; cette notation renseigne les valeurs mais pas les champs de bits; exemple { -1, -1, 0 } , { 128.10, 27, -1 }.adresse réseau/masque : 193.49.60.0/27 (27=# bits contigüs du masque)

Diffusion sur les sous-réseaux   :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 19

Page 25: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Elle est plus complexe que dans le plan d’adressage initial.Dans le plan d’adressage Internet initial, Hostid = 11..1, ==> diffusion vers toutes les machines du réseau.D'un point de vue extérieur à un site doté de sous-réseaux, la diffusion n’a de sens que si la passerelle qui connaît les sous-réseaux propage la diffusion à tous ses réseaux physiques : { réseau, -1, -1 }.Depuis un ensemble de sous-réseau, il est possible d’émettre une diffusion sur un sous-réseau particulier : { réseau, sous-réseau, -1 }.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 20

Page 26: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

6.2 Subnet mask

Le Subnet mask permet d'obtenir, l'adresse du sous-réseau d'un hôte dont on connaît l'adresse IP. Reprenons l'exemple d'un format d'adressage de classe B avec un subnet d'un octet. Le masque 255.255.255.0 appliqué à l'adresse IP 130.10.140.25 donnera par addition logique bit à bit l'adresse 130.10.140.0 qui est l'adresse du sous-réseau de cette machine.

6.2.1 Le Subnet mask par défaut

La procédure AND est appliquée aux masques de sous-réseau de l'hôte local et de destination

1 AND 1 = 1Autres combinaisons = 0Si les résultats de AND des hôtes source et de destination correspondent, la destination est locale

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 21

Page 27: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Prenons par exemple l'adresse IP 175.147.247.163En binaire : 10101111 10010011 11110111 10100011

Appliquons à cette adresse le masque de classe B 255.255.0.0En binaire : 11111111 11111111 00000000 00000000

La superposition sépare le partie netID de la partie hostID :

IP : 175.147.247.163 = 10101111 10010011 11110111 10100011Masque : 255.255.0.0 = 11111111 11111111 00000000 00000000--------------------------------------------------------------------netID : 175.147.0.0 = 10101111 10010011 00000000 00000000hostID : 247.163 = 00000000 00000000 11110111 10100011

Le netID est donc 175.147.0.0 et le hostID 247.163

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 22

Page 28: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

6.2.2 Définition du Subnetmask

Que sont les bits du masque de sous-réseau ?

Définition d'un masque de sous-réseau

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 23

Page 29: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Adressage de sous-réseaux utilisant plus d'un octet

Définition des identificateurs de sous-réseau

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 24

Page 30: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Méthode rapide de définition des identificateurs de sous-réseau

Définition des identificateurs d'hôte pour un sous-réseau

Chaque identificateur de sous-réseau indique la première valeur d'une plageLa dernière valeur de chaque plage est égale à l'identificateur de sous-réseau suivant moins 1

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 25

Page 31: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

6.2.3 Application

votre réseau posséde l’adresse réseau 192.168.1.0 et vous décidez de créer cinq sous réseaux.

(Adresse de broadcast dirigé)

N ID First Add Sub. Net. Last Add Sub. Net. First Add Host Last Add Host1 0002 0013 0104 0115 1006 1017 1108 111

Exemple de problème avec une adresse IP de classe C utilisant un masque 255.255.255.224. :

IP : 205.101.55.91 = 11001101 01100101 00110111 01011011Masque : 255.255.255.224 = 11111111 11111111 11111111 11100000--------------------------------------------------------------------netID : 205.101.55.64 = 11001101 01100101 00110111 01000000hostID : 27 = 00000000 00000000 00000000 00011011Ici, le netID est donc 205.101.55.64 et le hostID 27. Allons plus loin et regardons les différentes possibilités qu'offre un tel masque de sous-réseau.Les 3 bits verts peuvent, en principe, prendre toutes les combinaisons de 0 ou de 1 comprises entre 000 et 111. Les 5 bits rouges peuvent, de la même façon, prendre toutes les combinaisons comprises entre 00000 et 11111.

Je m'interromps deux minutes pour préciser qu'une RFC (Request For Comments) déclare que ni un hostID ni la partie sous-réseau d'un netID ne peuvent comporter que des 0 ou que des 1. Cette limitation théorique ne trouve pas souvent écho...

Corrigeons donc : les 3 bits verts peuvent prendre des valeurs de 001 à 110 (car 000 et 111 ne sont pas autorisés selon la RFC) :-> 001, 010, 100, 011, 110, 101, ce qui fait 6 sous-réseaux

Les 5 bits rouges montrent des hostID pouvant prendre des valeurs de 00001 à 11110 (car 00000 et 11111 ne sont pas autorisés), ce qui donne des adresses décimales de 1 à 30 (0 et 31 ont été exclus par la RFC), donc 30 adresses par sous-réseau.

De cette façon, la classe C peut être sous-divisée en 6 sous-réseaux :

205.101.55.033 - 062205.101.55.065 - 094205.101.55.097 - 126205.101.55.129 - 158205.101.55.161 - 190205.101.55.193 - 222

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 26

Page 32: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Vous constatez qu'il "manque" toujours deux adresses à chaque sous-réseau. La première, issue du hostID 00000 définit tout le sous-réseau, par exemple 205.101.55.32; la deuxième, issue du hostID 11111 donne l'adresse de diffusion du sous-réseau, par exemple 205.101.55.63.

Une petite polémique vient de ce que, sans la RFC, des adresses 205.101.55.1 - 30 (provenant du sous-réseau 000) et des adresses 205.101.55.225 - 254 (provenant du sous-réseau 111) seraient possibles.De telles adresses sont d'ailleurs utilisées sans problèmes sur les réseaux Microsoft. De cette manière un masque de sous-réseau 255.255.255.224 segmente une classe C non pas en 6, mais en 8 sous-réseaux de 30 adresses chacuns.

6.3 Inconvénient du subnetting

Le déplacement d'un hôte à l'intérieur d'une société d'un sous-réseau vers un autre sous-réseau constitue un inconvénient du subnetting. Il implique nécessairement un changement d'adresse IP (voir DNS pour éviter ce probléme). En effet, comme nous l'avons dit précédemment, l'utilisation du subnetting réserve une partie de l'adresse IP pour identifier le sous-réseau auquel est rattaché l'hôte.

6.4 Le sous-adressage variable (VLSM)(RFC 1009) : un réseau IP peut posséder plusieurs masques différents; ==> réseau de type VLSM (Variable Length Subnet Masks) Evite la rigidité du masque fixe qui impose :

le nombre de sous-réseaux le nombre de machines par sous-réseau Exemple : 130.5.0.0/22 ==> 64 sous-reseaux et 1022 machines / sous-réseau uinadapté pour des petits sous-réseaux de quelques machines; exemple 30 machines sur un

sous-réseau ==> 992 adresses IP perdues

Permet l’adaptation de l’adressage IP a la taille des sous-réseauxExemple précédent : cohabitation de grands et petits sous-réseaux 130.5.0.0/22 (64 sous-reseaux et 1022 machines / sous-réseau)130.5.0.0/26 (1024 sous-réseaux de 62 machines / sous-réseau)Division d’un espace IP en sous-réseaux successifsPermet de masquer les informations de routage entre groupes de sous-reseaux

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 27

Page 33: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

6.5 .3 CIDR (RFC 1518/1519)

Solution au problème de pénurie progressive des adresses IP est de tenter de mieux utiliser les adresses existantes, et notamment celles encore non attribuées. Une des grandes difficultés réside dans le fait que beaucoup de société ont besoin de plus de 256 adresses (aussi une classe C se révèle-t-elle insuffisante), même si elles sont loin de pouvoir utiliser l'intégralité des adresses d'une Classe B. Deux choix sont alors possibles : attribuer un bloc de plusieurs classes C, mais ceci nécessite de découper le réseau d'entreprise en sous-réseaux de 255 machines reliées par des routeurs. Ou bien allouer une partie seulement d'une classe B en créant artificiellement un masque de sous-réseau découpant le bloc de 65000 adresses en des espaces d'adressages plus petit. Grâce au classless inter-domain routing ou CIDR, il est désormais possible pour les prestataires d'accès de découper à loisir les espaces d'adresses qui leurs sont alloués d'un seul bloc et de ne faire figurer dans les principaux routeurs de l'Internet qu'une unique adresse et un préfixe de sous-réseau permettant de router automatiquement vers le prestataire l'ensemble des paquets adressés à l'une quelconque des adresses contenu dans ce bloc. On s'affranchit ainsi du découpage arbitraire et peu flexible en classes : l'allocation des ressources est plus fine et les tables de routages sont allégées au cœur du réseau.

En ce sens, le subneting et CIDR ne sont pas de véritables solutions au problème de la rareté des adresses IP, mais en permettant une allocation plus fine des ressources, elles repoussent d'autant les conséquences de la raréfaction accélérée des adresses IP

Les protocoles de routage substituant des espaces C à un espace B obéissent au classless interdomain routing ou CIDR. Un réseau pourrait donc se voir allouer 8 espaces C, prenant les 2048 adresses 201.10.0.0 à 201.10.7.255, au lieu d'un espace B de 65 536 adresses. Puisque l'administrateur de réseau se voit allouer 8 réseaux C, il lui reste 21 bits d'adresse de réseau. L'adresse et le préfixe décrivant le réseau sont dès lors 201.10.0.0 et 21, qu'on écrit sous la forme 201.10.0.0/21 (fig. 3.5).

(cette méthode permettant donc de diminuer la taille des tables de routages)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 28

Page 34: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

7. ARP (Address Resolution Protocol)Le problème qui se pose ici est d'obtenir l'adresse physique (niveau 2 OSI) d'une machine,

connaissant son adresse IP (niveau 3 OSI). En effet, pour envoyer un message sur un réseau, c'est l'adresse physique qui est prise en compte pour l'acheminement des trames physiques (trames Ethernet, Token Ring....).

Les adresses physiques de certains types de réseaux physiques peuvent être configurées par l'administrateur du réseau. En conséquence, une correspondance simple peut parfois être définie entre les adresses physiques et IP. La connaissance de l'une impliquant directement la connaissance de l'autre.

Mais ce n'est pas le cas général et d'Ethernet en particulier. Les adresses physiques mises en jeu sur un segment Ethernet sont celles des cartes Ethernet. Ces adresses, d'une longueur de 6 octets, sont fixées à la construction et sont donc immuables. La correspondance doit être alors établie dynamiquement. La solution : ARPMise en place dans TCP/IP d’un protocole de bas niveau appelé Adress Resolution Protocol (ARP)Rôle de ARP :

fournir à une machine donnée l'adresse physique (MAC) d'une autre machine située sur le même réseau à partir de l'adresse IP de la machine destinatrice

Le protocole ARP (Address Resolution Protocol) réalise une telle résolution d'adresses dynamique pour des réseaux Ethernet, Token Ring, FDDI....

LA technique :Diffusion d'adresse sur le réseau physique La machine d'adresse IP émet un message contenant son adresse physiqueLes machines non concernées ne répondent pasGestion cache pour ne pas effectuer de requête ARP à chaque émission

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 29

Page 35: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

7.1 Format d'un message ARP

Un message ARP est encapsulé dans une trame physique pour transmission sur le réseau.

Message ARP

Frame Header Frame Data AREA Trailer

Hardware Type / Type de réseau ; 1 Ethernet

Protocol Type / Type de protocole ; 0x0800 IP

Hard Add Size ; longueur en octets de l’adresse physique

Lg adresse protocole ; longueur enoctets de l’adresse IP

Opération ;1 Request ARP2 Reply ARP3 Request RARP4 Reply RARP

Sender’s Hardware Address ; adresse physique de l’émetteur de la trame

Sender’s IP Address ; adresse IP de l’émetteur de la trame

Target’s Hardware Address ; adresse physique du destinataire de la trame

Target’s IP Address ; adresse IP du destinataire de la trame

b0 b4 b8 b16 b24 b31Hardware Type Protocol Type

Hard Add Size Protocol Add Size OperationSender’s Hardware Address (byte 0 to 3)

Sender’s Hardware Address (byte 4 to 5) Sender’s IP Address (byte 0 to 1)Sender’s IP Address (byte 2 to 3) Target’s Hardware Address (byte 0 to 1)

Target’s Hardware Address (byte 2 to 5)Target’s IP Address (byte 0 to 3)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 30

Page 36: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Deux RFC documentent ARP ; la RFC 826 décrit ARP et la RFC 1166 définit les valeurs Type permettant l’identification des trames transmises.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 31

Page 37: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

7.2 Exemple d'Ethernet

Considérons le segment Ethernet ci-dessous sur lequel sont connectées quatre machines W, X, Y et Z. Supposons que Y veuille communiquer avec Z dont il ne connaît que son adresse IP : IPZ.

Y W X Z

Pour communiquer avec Z qui est situé sur le même réseau physique que lui, Y a besoin de connaître physique Ethernet de Z PhZ.

Pour la trouver, il envoie par le mécanisme de broadcast physique, un message ARP à toutes les machines situées sur le segment Ethernet. On appelle adresse broadcast l'adresse physique Ethernet ‘FF:FF:FF:FF:FF:FF’ Une trame envoyée à cette adresse sera reçue par toutes les machines du segment Ethernet. Notons qu'une information située dans l'en-tête de la trame Ethernet permet aux machines qui reçoivent ce broadcast de savoir qu'il s'agit d'un message ARP (ARP Request).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 32

Page 38: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Parmi toutes les machines qui vont recevoir cette trame, (X, Y et Z dans l'exemple), seule Z va reconnaître son adresse IP, IPZ, et remplie la partie restée vide du message ARP avec son adresse physique PhZ puis renvoit le message ARP à Y (ARP Reply).

Quand Y reçoit la réponse et pour éviter d'avoir à refaire une requête ARP un peu plus tard, il place la correspondance des deux adresses dans une table appelée cache. De même, les machines W, X et Z (qui ont toutes trois lu le message ARP) placent dans leur cache la correspondance entre l'adresse IP de Y et l'adresse physique de Y. Notons que chaque entrée du cache a une durée de vie limitée pour tenir compte des éventuels changements de cartes Ethernet.

Voici un exemple de capture de trame ARP (retrouver les différents champs ?).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 33

Page 39: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Adresse IP Adresse Physique Ethernet

135.12.23.65 AA:00:15:2F:3b:84135.12.56.89 00:0C:00:4C:79:48135.12.56.90 A4:C5:45:78:56:E3

Exemple de cache ARP

Exemple :

//gefisa # arp -a27 routeur1 (128.1.1.10) at 2:60:8c:23:49:68 (0)36 adp1 (128.1.1.2) at 0:20:af:29:b2:35 (0)//gefisa #

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 34

Page 40: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

8. RARP (Reverse Address Resolution Protocol)Une station sans disque reliée à un réseau ne peut garder son adresse IP. En effet, le code situé

en ROM, qui doit rester suffisamment général, n'inclut pas l'adresse IP de la machine.

Lors du boot, la station contacte en broadcast par le protocole RARP (Reverse Address Resolution Protocol) un serveur RARP. Ce serveur, en consultant ses tables, informe la station de l'adresse IP qui lui est affecté.

Le protocole RARP utilise un message RARP dont les champs sont identiques à ceux du message ARP. La station effectuant la requête RARP place dans le champ adresse physique destination son adresse physique et laisse vide le champ adresse logique de destination. Ce champ sera complété par les serveurs RARP.

Les requêtes RARP sont propagées vers le ou les serveur(s) RARP par mécanisme de diffusion. Le(s) serveur(s) RARP réponde(nt) par un message de type RARP.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 35

Page 41: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 36

Page 42: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Voici un exemple de capture de trame RARP (retrouver les différents champs ?).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 37

Page 43: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

9. IP (Internet Protocol)ce chapitre décrit le protocole IP (Internet Protocol), assimilable à un protocole de couche 3

dans le modèle OSI. TCP/IP fournit une vision logique des échanges de données entre deux hôtes. Au niveau IP, les données des utilisateurs ou des applications sont encapsulées à l'intérieur d'unités de transfert appelées datagrammes IP.

9.1 Rôle du protocole IP

Le protocole IP fournit un service d'acheminement des datagrammes IP sans connexion et non fiable (connectionless and unreliable).

Le terme, sans connexion, indique que les datagrammes seront acheminés de l'hôte émetteur vers l'hôte destinataire indépendamment les uns des autres. De plus des datagrammes venant d'un même programme d'application peuvent ne pas arriver dans l'ordre à leur destinataire.

Le terme non fiable indique que cet acheminement n'est pas garanti. Un datagramme peut se perdre dans l'inter-réseau ou bien être dupliqué. C'est aux niveaux supérieurs de résoudre ces différents problèmes.

Le protocole IP définit : l'unité de donnée transférée dans les interconnexions (datagramme), la fonction de routage,(niveau 3 du modèle OSI et niveau 2 modèle IP) les règles qui mettent en oeuvre la remise de paquets en mode non connecté

9.2 Format d'un datagramme IPv4

Un datagramme se compose d'un en-tête et de données. Avant transmission sur un réseau physique, le datagramme IP est encapsulé dans une trame physique.

IP Header IP Data AREA

Frame Header Frame IP Trailer

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 38

Page 44: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________L'en-tête IP contient principalement :

Le datagramme IP   : L'unité de transfert de base dans un réseau internet est le datagramme qui est constituée d'un en-tête et d'un champ de données:

Signification des champs du datagramme IP :VERSION : numéro de version de protocole IP, actuellement version 4,(valeur = 4)Longueur de l’entête (HLEN) : longueur de l'en-tête en mots de 32 bits, généralement égal à 5 (pas d'option),Type de service : indique comment le datagramme doit être géré : (par défaut = 0)

PRECEDENCE (3 bits) : définit la priorité du datagramme; en général ignoré par les machines et passerelles (pb de congestion).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 39

Page 45: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Bits D, T, R : indiquent le type d'acheminement désiré du datagramme, permettant à une passerelle de choisir entre plusieurs routes (si elles existent) :

D signifie délai court (Delay) T signifie débit élevé (Throughput) R signifie grande fiabilité.( Reliab)

Longueur totale du paquet : longueur totale du datagramme (en-tête + données)

Identification du paquet   : id du paquet (type aléatoire)

Fanion (FLAGS)   : (valeur par défaut = 0)Contient un bit appelé "do not fragment" (01X)un autre bit appelé "More fragments" (FLAGS = 001 signifie d'autres fragments à suivre) permet au destinataire final de reconstituer le datagramme initial en identifiant les différents fragments (milieu ou fin du datagramme initial).Les passerelles doivent accepter des datagrammes dont la taille maximale correspond à celle du MTU le plus grand, des réseaux auxquels elle est connectée.Les passerelles doivent accepter sans les fragmenter, les datagrammes de longueur 576 octets.

Reserved 0 #1bit; réservé (mettre 0)DontFrag 0 #1bit; 0=May Fragment, 1=Don't FragmentMoreFrag 0 #1bit; 0=Last Fragment, 1=More Fragments

Les champs de la fragmentation. :Sur toute machine ou passerelle mettant en oeuvre TCP/IP une unité maximale de transfert (Maximum Transfert Unit ou MTU) définit la taille maximale d'un datagramme véhiculé sur le réseau physique correspondant.

Lorsque le datagramme est routé vers un réseau physique dont le MTU est plus petit que le MTU courant, la passerelle fragmente le datagramme en un certain nombre de fragments, véhiculés par

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 40

Page 46: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________autant de trames sur le réseau physique correspondant, lorsque le datagramme est routé vers un réseau physique dont le MTU est supérieur au MTU courant, la passerelle route les fragments tels quels (rappel : les datagrammes peuvent emprunter des chemins différents).Le destinataire final reconstitue le datagramme initial à partir de l'ensemble des fragments reçus; la taille de ces fragments correspond au plus petit MTU emprunté sur le réseau. Si un seul des fragments est perdu, le datagramme initial est considéré comme perdu : la probabilité de perte d'un datagramme augmente avec la fragmentation.Position Relative (FRAGMENT OFFSET) : Indique le déplacement des données contenues dans le fragment par rapport au datagramme initial. C'est un multiple de 8 octets; la taille du fragment est donc également un multiple de 8 octets.Chaque fragment a une structure identique à celle du datagramme initial, seul les champs FLAGS et FRAGMENT OFFSET sont spécifiques.

Durée de vie (TTL)   : (par défaut = 64)Ce champ indique en secondes, la durée maximale de transit du datagramme sur l'internet. La machine qui émet le datagramme définit sa durée de vie.Les passerelles qui traitent le datagramme doivent décrémenter sa durée de vie du nombre de secondes (1 au minimum) que le datagramme a passé pendant son séjour dans la passerelle; lorsque celle-ci expire le datagramme est détruit et un message d'erreur est renvoyé à l'émetteur.ProtocoleCe champ identifie le protocole de niveau supérieur dont le message est véhiculé dans le champ données du datagramme :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 41

Page 47: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Somme de contrôle de l’en-tête   : Ce champ permet de détecter les erreurs survenant dans l'en-tête du datagramme, et par conséquent l'intégrité du datagramme.Le total de contrôle d'IP porte sur l'en-tête du datagramme et non sur les données véhiculées. Lors du calcul, le champ HEADER CHECKSUM est supposé contenir la valeur 0 :OPTIONS :Le champ OPTIONS est facultatif et de longueur variable. Les options concernent essentiellement des fonctionnalités de mise au point. Une option est définie par un champ octet :

copie (C) indique que l'option doit être recopiée dans tous les fragments (c=1) ou bien uniquement dans le premier fragment (c=0).Les bits classe d'option et numéro d'option indiquent le type de l'option et une option particulière de ce type :Enregistrement de route (classe = 0, option = 7) : permet à la source de créer une liste d'adresse IP vide et de demander à chaque passerelle d'ajouter son adresse dans la liste.

Routage strict prédéfini par l'émetteur (classe = 0, option = 9): prédéfinit le routage qui doit être utilisé dans l'interconnexion en indiquant la suite des adresses IP dans l'option :

Le chemin spécifié ne tolère aucun autre intermédiaire; une erreur est retournée à l'émetteur si une passerelle ne peut appliquer le routage spécifié.Les passerelles enregistrent successivement leur adresse à l'emplacement indiqué par le champ pointeur.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 42

Page 48: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Routage lâche prédéfini par l'émetteur (classe = 0, option = 3): Cette option autorise, entre deux passages obligés, le transit par d'autres intermédiaires :

Horodatage (classe = 2, option = 4) : cette option permet d'obtenir les temps de passage (timestamp) des datagrammes dans les passerelles. Exprimé en heure et date universelle.

Une liste de couples (adresse IP - horodatage) est réservée par l'émetteur; les passerelles ont à charge de remplir un champ lors du passage du datagramme.Le champ dépassement de capacité (dep.) comptabilise les passerelles qui n'ont pu fournir les informations requises ( liste initiale était trop petite).Le champ FLAGS indique si les passerelles doivent renseigner uniquement l'horodatage (FLAGS = 0), ou bien l'horodatage et l'adresse IP (FLAGS=1). Si les adresses IP sont prédéfinies par l'émetteur (FLAGS=3), les passerelles n'indiquent l'horodatage que si l'adresse IP pointée par le champ pointeur est identique à leur adresse IP.Les horodatages, bien qu'exprimés en temps universel, ne constituent qu'une estimation sur le temps de passage car les horloges des machines situées sur les réseaux ne sont pas synchronisées.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 43

Page 49: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

10. Format d'un datagramme IPv6IPv6 Quelques Caractéristiques :• Adresse plus longue : 128 bits (16 octets)– adressage de 340 x 10 e36 équipements– adressage hiérarchique– une partie peut-être l'adresse MAC (IEEE802) =>autoconfiguration• 3 types d'adresses :–Unicast– Multicast–Anycastplus d’adresse de broadcast

• En-tête simplifié– nombre de champs réduit de moitié- augmente l'efficacité de commutation des équipements de routage

• Extension de l'en-tête pour les options– Les options IPv6 sont placées dans des en-têtes séparés,intercalés entre l'en-tête IPv6 et l'en-tête de la couche transport=> introduction aisée de nouvelles fonctionnalités– la longueur des options n'est plus limitée à 40 octets

IPv6 Nouvelles fonctionnalités :• Autoconfiguration : "plug and play"– Gestion de la mobilité– Renumérotation facile si changement de prestataire– Serveurs d'adresses (DHCP : Dynamic Host Configuration Protocol)et SAA : Stateless Address Autoconfiguration (RFC 1971)

• Multipoint (Multicast) inclus de base– pour les routeurs et les clients– "scope" = meilleur routage des paquets multicast- plus besoin de Mbone ni de mrouted

• "Marquage" des flux particuliers : (Flow Label)– applications temps réel, Qualité de Service (QoS)- Priorité du trafic de contrôle

• Sécurité :– authentification et intégrité des données- en option : confidentialité

• Routage à partir de la source– Source Demand Routing Protocol

IPv4 -> IPv6 :changements de l'en-tête• Header Length (IHL) : supprimé

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 44

Page 50: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________• ToS --> Flow Label• Total Length (TL) --> Payload Length• ID, Flags et Fragment Offset (FO) : supprimés• TTL --> Hop Limit• Protocol --> Next header (mêmes valeurs que dans IPv4)• Header CS : supprimé• Adresses : 32 --> 128 bits (4 --> 16 octets)• Alignement 32 --> 64 bits

Version (4) version du protocole : 6Priorité (4) 0 : pas de priorité particulière

1 : trafic de base (news)2 : transfert de données sans contraintes temporelles (email)3 : réservé4 : transfert de données avec attente du récepteur (ftp)5 : réservé6 : trafic interactif (login)7 : trafic de contrôle (routage)

Flow Label (24) permet d'identifier un trafic. Ce n'est pas encore entièrement défini dans la RFC.Payload Length (16) taille, en octets, de tout ce qui suit cet entêteNext Header (8) indique quel est le type de données suivant cet entête.

Par exemple : 6=tcp, 17=udp, 0=Hop-by-Hop_Options, 43=routing, 44=fragment, 60=destination_options, 59=rien_ne_suit, etc.

Hop Limit (8) entier décrémenté à chaque traversée de machine. Lorsque ce paramètre vaut zéro, le paquet doit être jeté.

Source Address (128) adresse de la machine sourceDest. Address (128) adresse de la machine destination, sauf si le source routing est employé

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 45

Page 51: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Représentation des adresses

Une adresse IPv6 est représentée sous la forme : aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhhaaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh/nb_de_bits_du_masque

Lorsque de nombreux zéros se suivent, ils sont remplacés par "::" (cela ne peut être fait qu'une fois).

Les bits de poids fort indiquent quel est le type d'adresse :

0000 0000 adresse loopbackadresse IPv6 avec une fin en IPv4

0000 001 adresse NSAP0000 010 adresse IPX001 adresse unicast Aggregatable1111 1110 10 adresse unicast de liaison locale (adresse privée non routable)1111 1110 11 adresse unicast de site local (adresse privée non routable)1111 1111 adresse multicast

RFC 1884 RFC 1884• Format de Base (16 octets):

– Adresse IPv6 Globale :• FEDC:BA98:7654:3210:FEDC:BA98:7654:3210

• Format compressé :• FF01:0:0:0:0:0:0:43 => FF01::43

– Adresse Link Local :• FE80::IID IID=@ IEEE-802

– Adresse compatible IPv4 :• 0:0:0:0:0:0:0:134.157.4.16 => ::134.157.4.16- Les adresses de machines non compatibles IPv6 sont représentées sous la forme :0000:0000:0000:0000:0000:FFFF:ww.xx.yy.zz

IPv6 : Adresses particulières• Adresse de Loopback :

– 0:0:0:0:0:0:0:1 => ::1

• Adresse non specifiée :– 0:0:0:0:0:0:0:0 => ::Ne peut jamais être adresse destination

IPv6 : Préfixes• Notion issue de CIDR• On les note sous la forme :Adresse IPv6 / longueur du préfixe– Exemples :5F00::/8__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 46

Page 52: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________5F06:B500::/32• On peut indiquer qu’une adresse fait partie d’un réseau dont le préfixe est de longueur déterminée (netmask)5F06:B500:8158:1A00::1/80

Les extensions du paquet Ipv6 :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 47

Page 53: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

11. L'adressage multicastCe chapitre présente le multicasting IP, une extension récente du schéma d'adressage IP, qui

permet d'acheminer un même datagramme IP à plusieurs destinataires.

11.1 Broadcast et multicast physiques

Le broadcast physique consiste à acheminer une même trame physique à toutes les machines connectées au réseau physique concerné (un segment Ethernet par exemple). Sur Ethernet, le broadcast est réalisé en envoyant la trame à l'adresse Ethernet de broadcast (0xFF:FF:FF:FF:FF:FF). Le driver contrôlant la carte Ethernet est configuré pour reconnaître l'adresse broadcast.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 48

Page 54: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le multicasting physique consiste à acheminer une même trame physique vers certaines machines appartenant à un même groupe multicast physique. Notons que l'implémentation de cette notion n'existe pas forcément suivant la nature du réseau physique. Sur Ethernet, une adresse multicast est caractérisée par le dernier bit du premier octet de l'adresse Ethernet positionné à 1 (à= adresse unicast). Le driver contrôlant la carte Ethernet est configuré pour reconnaître l'adresse multicast choisie par l'hôte.

Comment s’effectue la correspondance entre une adresse Ethernet et une adresse IP?

Le paquet IP est encapsulé dans une trame Ethernet. Les cartes Ethernet ne capturent (filtrent) que les trames qui leur sont destinées. Une première possibilité est d'utiliser l'adresse de diffusion d'Ethernet pour envoyer des datagrammes multicast. Ce cas est valable si des cartes ne sont pas capables de reconnaître des adresses de groupes Ethernet. L'inconvénient est que le filtrage sera effectué au niveau IP surchargeant la CPU.

Une autre possibilité est d'effectuer une correspondance entre une adresse de groupe IP et une adresse de groupe Ethernet. Le IANA posséde un ensemble d'adresses Ethernet: 00:00:5E:XX:XX:XX - La moitié de ces valeurs (utilisation de 23 bits) est réservée pour le multicast. Ainsi, pour les adresses multicast les valeurs 01:00:5E:00.00.00 à 01:00:5E:7F:FF:FF sont disponibles. Le fait de limiter à

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 49

Page 55: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________23 bits la correspondance permet de conserver un nombre de bits au niveau d’Ethernet non utilisés dans la correspondance pour d’autres protocoles.

Pour mettre en correspondance les adresses de diffusion au niveau IP avec les adresses de diffusion Ethernet, placer les 23 bits de poids faible des adresses de diffusion au niveau IP dans les 23 bits de l’adresse de diffusion de groupe au niveau Ethernet.

On remarquera que plusieurs adresses de groupe IP pourraient avoir les même 23 bits de poids faible. Cela oblige le logiciel IP de vérifier le champ adresse destinataire IP pour filtrer tous les paquets qui ne lui sont pas destinés.Exemple :

L’adresse multicast 224.192.16.1 devient 01-00-5E-40-10-01. Utiliser les 23 bits de poids faibles, le premier octet n’est pas utilisé, et seulement les 7 derniers bits du second octet sont utilisés. Le troisième et quatrième octets octets sont directement convertis en nombre Héxadécimal. Le second octet, 192 devient en binaire 11000000. Si vous ne tenez pas compte du dernier bit, cela devient 1000000 ou 64 (en decimal), ou 0x40 (en hexadecimal). Pour l’octet suivant, 16 en hexadecimal devient 0x10. Pour le dernier octet, 1 en hexadecimal devient 0x01. Ainsi, l’adresse MAC correspondant à 224.192.16.1 devient 01-00-5E-40-10-01.Token Ring utilise la même méthode au niveau de la couche MAC-pour l’adressage multicast. Toutefois, plusieurs adaptateurs réseaux de type Token-Ring ne le supporte pas. Reste que l’adresse fonctionnelle sera 0xC0-00-00-04-00-00 pour tout traffic multicast IP envoyé vers un réseau Token Ring. Voir RFC 1469.

Par défaut, le coupleur Ethernet d’une station écoute son adresse Ethernet (fixée en PROM) et l’adresse de broadcast (FF….FF)Les autres adresses Ethernet doivent être explicitement programmées dans le driver du coupleurPour le multicast, il faut écouter au minimum :

Equvalent Ethernet de 224.0.0.1 (tous les hôtes Xcast du LAN) Equivalent Ethernet du répertoire des sessions du Mbone annonçant la liste des groupes

multicast actifs.

11.2 Multicast IPUn groupe peut contenir des hôtes se trouvant sur le même réseau ou sur plusieurs réseaux. Dans ce dernier cas, des routeurs spéciaux Multicast Routers (mrouters ou MR) acheminent les datagrammes de diffusion de groupe.

C'est en 1988 que les premières expériences furent menées. Comme tous les routeurs ne supportent pas les fonctionnalités d'un MR, un réseau virtuel formé de tunnels (liaisons virtuelles point à point) regroupant les MR fut déployé: le MBone (Multicast BackBone). Le MBone va permettre que le multicast soit une réalité au delà du LAN. Un tunnel fonctionne de la manière suivante: à partir d'une extrémité (MR) un paquet multicast est encapsulé dans un paquet UDP unicast (avec une adresse IP individuelle) et envoyé sur l'Internet; Arrivé à l'autre extrémité, le paquet est désencapsulé. Des

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 50

Page 56: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________extensions au protocoles existants sont nécessaires: d'une part sur l'hôte et d'autre part sur certains routeurs qui seront des MR.

Le multicasting IP est une abstraction du multicasting physique. Il permet l'acheminement d'un même datagramme IP à un ensemble d'hôtes formant un même groupe multicast. La transmission réelle utilise le multicast physique (si disponible) pour réaliser ce multicast IP. Les membres d'un même groupe n'appartiennent pas forcément au même réseau physique.

Chaque groupe multicast a une unique adresse de classe D, attribuée par le NIC.Permet à un hote de s’abonner (désabonner) à un groupe, et dire aux routeurs « envoie moi une copie des paquets recus par cette adresse de groupe ».

Diffusion de 1 vers plusieurs (1 vers n) : Pas d’interaction des destinataires Téléséminaire Diffusion des tables de routages RIPv2 Bootstrapsur le réseau Decouverte automatique de ressources sur le réseau …..

Diffusion de plusieurs vers plusieurs (n vers m) : Chaque membre du groupe peut être source du flux multicast Téléconférence Jeux interactifs (Star war…)

Meilleur utilisation de la bande passante : Les mêmes données ne circulent qu’une seule fois sur le même lien

Les emetteurs (source) et les receveurs (membres) sont distinctsLes hôtes disent aux routeurs de quels groupes ils sont membres :

Ne recoivent que les datagrammes de ces groupes Ne disent rien sur les groupes multicast auxquels ils envoient des informations

Les routeurs doivent écouter toutes les adresses multicast Pour être capable de transmettre les datagrammes multicast

Les routeurs utilisent des protocoles de routage multicast pour administrer les groupes multicast.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 51

Page 57: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

32 01 1 1 0 adresse multicast

format d’une adresse de classe D

Comment limiter la propagation des datagrammes ?

Les datagrammes sont munis d’un champ durée de vie (TTL: Time To Live) qui permet de limiter leurs propagation. En effet, les routeurs ont la responsabilité selon la valeur du TTL de retransmettre ou non le paquet. Cette faculté n'est pas assurée par les ponts (niveau 2). Lorsque TTL=1, la portée du datagramme est le réseau local.

Classe D : 224.0.0.0 à 239.255.255.255

Réservation de plages d’adresses spécifiques : Les adresses 244.0.0.0 – 224.0.0.255 239.*.*.* : « administratively scoped addresses » (adresses réservées pour usage privés ). Toutes les autres adresses de 244.0.1.0 à 239.255.255.255 sont attribuées de facon permanente

à différents applications et sont réservées pour une allocation dynamique via SDR ou autre méthodes.

L'appartenance à un groupe multicast IP est dynamique. Un hôte peut rejoindre ou quitter un groupe à tout moment. Notons qu'un hôte n'a pas besoin de faire partie d'une groupe pour lui envoyer un datagramme en multicasting.

L'implantation du multicast IP est réalisée par le protocole IGMP (Internet Group Management Protocol).Ce protocole utilise le protocole IP pour envoyer ses messages.Il existe deux versions, IGMPv1, IGMPv2, la version 3 est en cours d’élaboration (IETF / IDMR).

Version 1 (RFC 112) Version 2 (RFC 2236) Version 3 (draft)

IGMP, comme ICMP, fait partie de la couche IP et utilise des datagrammes IP.

Le module IP identifie IGMP par la valeur 2 du champ protocole.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 52

Page 58: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le message IGMP contient les champs suivants:

version = 1; type = 1 (requête du routeur multicast) ou 2 (rapport de l'hôte)adresse de groupe = 0 dans une requête.

Une adresse multicast ne peut être que destinataire : C’est l’adresse d’un groupe de machines abonnées à une session multicast

Les sources (emetteurs) ont toujours une adresse unicastLe niveau Liaison de données n’utilise pas ARP :

Mécanisme de correspondance (pour les @ IEEE-802) @IP Xcast -> @Ethernet Xcast

Etre membre d’un groupe est indépendant d’envoyer à ce groupe Une source n’est pas obligatoirement membre du groupe auquel elles envoie un flux multicast

IGMP : un seul routeur sur le LANLe routeur envoie toutes les 60 (120) secondes une sollicitation aveugle à l’@224.0.0.& (query) avec un TTL=1, « à quel(s) groupe(s) voulez vous vous abonner ? » et attend les réponses.Le(s) hôte(s) renvoient un « IGMP report » qui indique l’adresse du ou des groupes qui l’’es) intéressent.Sile routeur ne reçoit aucune réponse pour un groupe donné, il arrête le réémission des paquets multicast de ce groupe, le groupe est réputé sans abonné local.Quand l’hôte reçoit l’invitation query, il fixe un delai avant de répondre (pour éviter que toutes les réponses arrivent au même moment).Quand un hôte à répondu, les autres n’ont pls besoin de répondre => une réponse par groupe multicast et par LAN.Le routeur arme une temporisation sur les abonnements aux groupes multicast avant de solliciter à nouveau touts les hôtes (sollicitation périodique).

IGMP : plusieurs routeurs sur le LANUnrouteur est élu entre tous les routeurs, c’est le Dominant Router (DR) ou Designated Router :

Il est seul à émettre les IGMP Queries En v1, le mécanisme d’élection est fonction du routage Xcast et n’appartient pas à IGMP En v2, le DR est le routeur dont l’@IP est la plus petite

Le DR n’est pas forcément le routeur qui transmet les paquets Xcast.Pour IGMP v2 :__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 53

Page 59: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Election du DR => @IP la plus petiteTimers programmablesNouveaux type de paquets envoyés par l’hôte => de désabonnement (leave) => au reçu d’un leave, le routeur envoie un query directionnel aux hôtes qui ont été abonnés à ce groupe, réduction du temps de latence pour arrêter la diffusion d’un groupe qui n’a plus d’abonnéIGMP v2, doit obligatoirement supporter la version 1.IGMP permet la distrubution des datagrammmes Xcast sur le LAN.

Dans la famille des protocoles de routage Multicast :On distingue deux familles de protocoles en fonction du mode de diffusion des paquets multicast utilisé :Mode dense : inondation et elagage, DVMRP ; PIM-DIM ; MOSPF (suppose que les abonnés aux groupes Xcast sont nombreux).

Mode épars : greffe et élagage, PIM-SM ; CBT (faible population abonnée).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 54

Page 60: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

12. Le routage des datagrammes IP

Ce chapitre explique comment est réalisé l'acheminement d'un datagramme IP depuis son hôte émetteur jusqu'à son destinataire final.

La technologie TCP-IP est de type «bout en bout» en opposition aux technologies «point à point» (Cf X25), l’acheminement des paquets est réalisé par routage plutôt que par commutation :

IP est dit «sans états»Les éléments de l’interconnexion ne doivent fournir qu’un service minimum: router du mieux qu’ils peuvent (best efford);IP over everything.Les services nécessaires à la communication (Contrôle de flux, gestion des d’erreurs, congestion, etc.) sont réalisés de bout en bout à un autre niveau (Cf TCP).

12.1 Concepts généraux du routage

Le routage est le processus permettant d'acheminer un datagramme IP de son hôte émetteur jusqu'à son hôte destinataire. Rappelons que chaque datagramme IP est routé indépendamment des autres.

Deux types d'équipements pratiquent un routage :

q Les gateways (appelés aussi routeurs IP)

Les routeurs IP sont des équipements d'interconnexion de réseaux physiques agissant au niveau IP. Chaque routeur possède des interfaces réseau sur au moins deux réseaux physiques.

Les hôtes s'adressent aux routeurs IP pour assurer le bon acheminement de leurs datagrammes. Les routeurs IP ont toutes les informations leur permettant d'atteindre soit directement, soit via une série de routeurs, l'hôte destinataire.

q Les machines hôtes (host)

Un hôte participe uniquement à l'acheminement (au routage) des datagrammes émis par ses programmes d'applications.

Si un hôte émetteur est situé sur le même réseau physique que l'hôte destinataire, il peut lui envoyer directement un datagramme : il encapsule le datagramme dans une trame physique et envoie

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 55

Page 61: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________directement la trame sur le réseau physique concerné. Le datagramme pour être acheminé n'est passé par aucun routeur. On parle de routage direct.

Si le destinataire d'un datagramme n'est pas situé sur le même réseau physique que l'hôte émetteur, ce dernier détermine le premier routeur IP dans la direction de l'hôte destinataire, qui lui transmet le datagramme. Ce datagramme est transmis de routeur en routeur jusqu'à ce qu'il atteigne une passerelle qui puisse le délivrer directement à son destinataire. On parle de routage indirect.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 56

Page 62: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

12.2 Action d'un routeur sur les datagrammes reçus

Lorsqu'un routeur IP reçoit sur l'une de ses interfaces une trame physique, il en extrait le datagramme qu’elle contient. Puis il met en oeuvre un algorithme de routage utilisant une table de routage pour déterminer dans quelle direction propager le datagramme.

En fonction de l'adresse de destination IP contenue dans l'en-tête du datagramme, il détermine vers quel réseau physique (parmi ceux auxquels il est connecté) doit être routé le datagramme. Il encapsule alors ce datagramme dans une nouvelle trame physique, puis émet cette dernière sur ce réseau physique.

Il est important de bien comprendre qu'un routeur qui reçoit sur l'une de ses interfaces une trame physique n'y voit à l'intérieur qu'un datagramme IP. Les informations contenues dans la partie data du datagramme lui sont complètement transparentes.

12.3 Les tables de routage

Nous avons dit que toute décision de routage était prise en fonction de l'adresse IP de destination du datagramme. en fait, c'est plus exactement en fonction de l'adresse du réseau (ou du sous-réseau) de destination du datagramme. Cela ne change pas grand chose en fait, mais permet d'avoir des tables de routage moins longues, donc plus simples à mettre à jour.

Il serait en effet difficile de gérer des tables de routage contenant toutes les adresses IP des machines de l'inter-réseau (il suffit d'imaginer ce qu'il se passerait si une nouvelle machine était installée sur un réseau : il faudrait modifier les tables de routage de toutes les autresmachines ....).

Les tables de routage ne contiennent donc que des adresses réseau (ou des adresses de sous-réseau).

Chaque routeur ou hôte possède une table de routage qui lui est propre.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 57

Page 63: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Une entrée d'une table de routage contient cinq champs :

Network address, Subnet Mask, IP address. Metric, TTl

q Le champ Network address contient l'adresse IP d'un réseau ou d'un sous-réseau.

q Le champ Subnet Mask (Netmask) contient le subnet mask associé à Network address.

q Le champ IP address(gataway address) contient : soit l’adresse IP du prochain routeur dans la direction du réseau à atteindre. soit la mention ‘Deliver Directly’, alors la machine est connectée sur le même

réseau physique que la machine destination.

q Le champ Interface

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 58

Page 64: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Affichage de la table de routage de votre ordinateur :

C:\>route print

Ajouter une nouvelle route static :

route add 199.199.41.0 mask 255.255.255.0 199.199.40.1 metric 2

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 59

Page 65: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

12.4 L'utilisation d'une table de routage

Supposons qu'un routeur doive router un datagramme à destination de l'adresse IP : IPDESTINATION .

Le routeur lit tour à tour chaque ligne de la table de routage et applique le « Subnet Mask » qu'il y trouve à IPDESTINATION.

Si le résultat correspond à Network Address, alors il lit le troisième champ IP address. Ce champ lui indique alors :

q soit une adresse IP : l'adresse IP du prochain routeur dans la direction de l'hôte destinataire. Le routeur recherche alors dans ses tables ou par ARP l'adresse physique correspondant à cette adresse IP, puis encapsule le datagramme dans une trame physique à destination du routeur en question.

q soit la mention « Deliver Directly » qui lui indique que l'hôte destinataire est sur un réseau qui lui est directement connecté.

12.5 Exemple de tables de routage

Nous donnons à la page suivante les différentes tables de routage des équipements présents dans l'inter-réseau figuré ci-dessous. Cet inter-réseau se compose de :

- Deux routeurs : Routeur_1 et Routeur_2- Trois hôtes : Hôte_A, Hôte_B et Hôte_C- Trois réseaux d’adresses : 195.10.40.0, 195.10.50.0 et 195.10.60.0

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 60

Hôte_A

Hôte_C

Hôte_B

Routeur_1

Routeur_2

Réseau 195.10.40.0

Réseau 195.10.60.0

Réseau195.10.50.0

195.10.40.15195.10.40.200

195.10.50.201

195.10.50.202

195.10.50.18

195.10.60.13195.10.60.200

Page 66: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 61

Page 67: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Détaillons la table de routage du Routeur_1.

Les deux premières lignes de la table indiquent que tout datagramme à destination d'un hôte situé sur 195.10.40.0 ou sur 195.10.50.0 peut être acheminé à cet hôte destinataire. En effet, le Routeur_1 est directement connecté à ces deux réseaux et peut donc envoyer une trame physique directement à tout hôte de ces réseaux.

La troisième ligne indique que tout datagramme à destination de 195.10.60.0 doit être envoyé au Routeur_2, d'adresse IP 195.10.50.202.

Table deroutage

Networkaddress

Subnet Maskassocié

IPAddress

195.10.40.0 255.255.255.0 Deliver Directlydu Routeur_1 195.10.50.0 255.255.255.0 Deliver Directly

195.10.60.0 255.255.255.0 195.10.50.202195.10.40.0 255.255.255.0 195.10.50.201

du Routeur_2 195.10.50.0 255.255.255.0 Deliver Directly195.10.60.0 255.255.255.0 Deliver Directly195.10.40.0 255.255.255.0 Deliver Directly

de l’Hôte_A 195.10.50.0 255.255.255.0 195.10.40.200195.10.60.0 255.255.255.0 195.10.40.200195.10.40.0 255.255.255.0 195.10.50.201

de l’Hôte_B 195.10.50.0 255.255.255.0 Deliver Directly195.10.60.0 255.255.255.0 195.10.50.202195.10.40.0 255.255.255.0 195.10.60.200

de l’Hôte_C 195.10.50.0 255.255.255.0 195.10.60.200195.10.60.0 255.255.255.0 Deliver Directly

12.6 Le routage direct et indirect

Pour expliquer plus précisément le routage d'un datagramme, partons de la source et supposons qu'un hôte appelé Hôte A souhaite envoyer un datagramme IP à un hôte distant appelé Hôte B.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 62

Page 68: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Nous allons distinguer deux cas suivant que Hôte_A et Hôte_B sont connectés ou non au même réseau physique, c'est-à-dire suivant qu'ils sont ou non séparés par un routeur IP.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 63

Page 69: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

12.6.1 ROUTAGE DIRECT

Les deux hôtes, Hôte_A et Hôte_B, sont situés sur le même réseau physique (un même segment Ethernet par exemple). Ils ne sont pas séparés par un routeur IP.

La transmission d'un datagramme IP entre Hôte_A et Hôte_B ne nécessite pas le passage par un routeur IP. En effet, Hôte A peut envoyer directement une trame physique Ethernet à Hôte_B puisqu'ils sont situés sur le même réseau physique.

Pour envoyer son datagramme IP, Hôte_A recherche à partir de l'adresse IP de Hôte_B l'adresse physique correspondante (dans ses tables ou par ARP). Puis il encapsule le datagramme dans une trame physique et envoie cette trame sur le réseau physique.

Il est facile pour l'Hôte_A de savoir si l'Hôte_B est situé sur le même réseau physique que lui ou non :

q Hôte_A a pour adresse IP : 128.10.2.1q Hôte_B a pour adresse IP : 128.10.3.4q L'adresse du réseau sur lequel se trouve Hôte_A est 128.10.0.0. Le subnet mask associé à

ce réseau est donc 255.255.0.0.q Hôte_A applique ce mask à l'adresse IP de Hôte_B. Il obtient 128.10.000 : il en déduit que

Hôte_B est situé sur le même réseau physique que lui et qu'il peut donc directement lui envoyer tout datagramme encapsulé dans un trame physique.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 64

Routeur_1 Routeur_2

Hôte_A Hôte_B

Réseau 128.10.0.0

128.10.2.1 128.10.3.4

Page 70: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

12.6.2 ROUTAGE INDIRECT

Les deux hôtes, Hôte_A et Hôte_C, sont situés sur deux réseaux physiques différents. Ils sont séparés, dans l'exemple ci-dessous, par deux routeurs IP.

Le routage indirect est plus complexe car l’Hôte_A doit déterminer à quel routeur IP le datagramme doit être envoyé (en l'occurrence le Routeur_1). Le datagramme IP est alors encapsulé dans une trame physique et envoyé sur le réseau physique de l'Hôte_A jusqu'au Routeur_1. Puis le Routeur_1, voyant que l’Hôte_C ne lui est pas directement connecté, consulte sa table de routage et envoie sur le réseau physique le datagramme IP encapsulé dans une trame physique à destination de Routeur_2. Routeur_2, s'apercevant que l’Hôte_C lui est directement relié, envoie une trame physique à destination de l’Hôte_C.

12.7 Remarque importante

L'en-tête d'un datagramme en transit dans l'inter-réseau a toujours comme adresse IP source celle de l'hôte émetteur du datagramme et comme adresse IP destination celle de l'hôte destinataire.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 65

Hôte_A

Hôte_C

Hôte_B

Routeur_1

Routeur_2

Réseau 195.10.40.0

Réseau 195.10.60.0

Réseau195.10.50.0

195.10.40.15195.10.40.200

195.10.50.15

195.10.50.202

195.10.50.18

195.10.60.13195.10.60.200

Page 71: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

C'est au niveau de la trame physique (trame Ethernet par exemple) que les adresses physiques source et destination changent à chaque passage par un routeur.

Nous détaillons ci-après les différentes adresses mises en jeu dans le routage indirect de l'exemple précédent.

entre l’Hôte_A et le Routeur_1En-tête trame physique En-tête datagramme

Adressephysiquesource

Adressephysique

destination

AdresseIP

source

AdresseIP

destination

Hôte_Ainterface duRouteur_1

côté Hôte_AHôte_A Hôte_C

entre le Routeur_1 et le Routeur_2En-tête trame physique En-tête datagramme

Adressephysiquesource

Adressephysique

destination

AdresseIP

source

AdresseIP

destinationinterface duRouteur_1

côté Routeur_2

interface duRouteur_2

côté Routeur_1Hôte_A Hôte_C

entre le Routeur_2 et le Hôte_CEn-tête trame physique En-tête datagramme

Adressephysiquesource

Adressephysique

destination

AdresseIP

source

AdresseIP

destinationinterface du

Routeur2côté Hôte_C

Hôte_C Hôte_A Hôte_C

12.8 Constitution des tables de routage

Les tables de routage peuvent être configurées manuellement par l'administrateur du réseau. C'est souvent le cas des tables de routage des hôtes (stations de travail ou serveurs). Pour les routeurs une meilleure solution consiste à confier ce travail fastidieux à un protocole particulier appelé protocole de routage.

Grâce à ces protocoles de routage, les différents routeurs vont s'échanger des informations de service. Les informations de service permettent une mise à jour dynamique des tables de routage (en tenant compte des liaisons qui ne fonctionnent plus, des réseaux surchargés,....).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 66

Page 72: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Ces échanges d'informations de services s'effectuent :

q entre les routeurs de systèmes autonomes différents. Ces routeurs portent le nom d'Exterior Gateways (routeurs externes). Le protocole de routage entre routeurs de systèmes autonomes différents s'appelle EGP (Exterior Gateways Protocol). En cas de connexion au réseau Internet, une société devra utiliser ce protocole sur le routeur qui établit la liaison avec l'extérieur pour échanger des informations de routage avec les autres systèmes autonomes. (voir chapitre 14).

q entre routeurs d'un même système autonome. Ces routeurs portent le nom d'Interior Gateways (routeurs internes). Un IGP (Interior Gateways Protocol) est installé sur chaque routeur de la société. Les protocoles IGP seront décrits au chapitre 15.

Ci-dessous nous avons représenté deux systèmes autonomes, c'est-à-dire le réseau de chacune des deux société ayant obtenu une adresse réseau auprès du NIC.

12.9 Routes par défaut

Chaque réseau de l'inter-réseau ne figure pas toujours dans toutes les tables de routage d'un hôte ou d'un routeur IP. en effet, il n'est pas souhaitable que les différentes tables de routage soient trop longues, ne serait ce que pour éviter des erreurs ou pour diminuer le nombre de changements à effectuer en cas de modification de l'adresse d'un réseau.

On utilise alors la notion de route par défaut. Une ligne dans la table de routage indique l'adresse IP d'un routeur par défaut (default gateway). Tout datagramme pour lequel il n'y a pas d'information de routage particulière sera envoyé vers ce routeur. L'utilisation de routeurs par défaut déplace en fait le problème du routage vers un routeur distant.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 67

Page 73: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

12.10 routage spécifique pour certains hosts

Notons qu'il est possible d'inclure dans les tables de routages des adresses IP de stations. Cela permet par exemple d'aiguiller les datagrammes IP à destination d'une machine bien précise sur un autre chemin que celui qu'ils auraient pris sinon. C'est intéressant dans une optique de sécurité.

12.11 L'algorithme de routage IP

Résumons tout ce qui précède par un algorithme :

ROUTER_UN_DATAGRAMME_IP (datagramme, table_de_routage)

1) Extraire du datagramme l'adresse IP de destination : IPD

2) Pour chaque entrée de la table de routage, appliquer le champ Subnet Mask à IPD

a) Si le résultat correspond au contenu du champ Network Address, lire alors le contenu du champ IP Address.

Si ce champ contient la mention Deliver Directly : envoyer le datagramme à sa destination sur ce réseau (implique de trouver l'adresse physique de l'hôte destinataire, d'encapsuler le datagramme IP dans une trame physique et d'envoyer cette trame sur le réseau physique).

Si ce champ contient l'adresse IP d'un routeur : envoyer le datagramme au routeur spécifié (implique de trouver l'adresse physique du routeur spécifié, d'encapsuler le datagramme IP dans une trame physique et d'envoyer cette trame sur le réseau physique).

b) Sinon, si IPD apparaît directement dans la table de routage (route spécifique vers un hôte), envoyer le datagramme au routeur spécifié (implique de trouver l'adresse physique du routeur spécifié, d'encapsuler le datagramme IP dans une trame physique et d'envoyer cette trame sur le réseau physique).

c) Sinon, si une route par défaut a été spécifiée, envoyer le datagramme au routeur par défaut (implique de trouver l'adresse physique de ce routeur, d'encapsuler le datagramme IP dans une trame physique et d'envoyer cette trame sur le réseau physique).

d) sinon, déclarer une erreur.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 68

Page 74: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

13. ICMP ( Internet Control Message Protocol )

13.1 présentation

Le protocole ICMP (Internet Control Message Protocol) permet d’envoyer des messages de contrôle ou d’erreur vers d’autres machines ou passerelles. ), permet aux routeurs IP d'envoyer des messages d'erreurs ou de contrôle à des hôtes ou à d'autres routeurs IP . ICMP établit en fait une communication entre deux softs IP situés sur deux machines différentes.

Bien qu'ICMP soit un protocole de niveau 3 comme IP, les messages ICMP sont envoyés dans le réseau encapsulés dans les datagrammes IP.ICMP rapporte les messages d’erreur à l’émetteur initial. Beaucoup d’erreurs sont causées par l’émetteur, mais d’autres sont dûes à des problèmes d’interconnexions rencontrées sur l’Internet :

machine destination déconnectée, durée de vie du datagramme expirée, congestion de passerelles intermédiaires.

Si une passerelle détecte un problème sur un datagramme IP, elle le détruit et émet un message ICMP pour informer l’émetteur initial.Les messages ICMP sont véhiculés à l’intérieur de datagrammes IP et sont routés comme n’importe quel datagramme IP sur l’internet. Une erreur engendrée par un message ICMP ne peut donner naissance à un autre message ICMP (évite l’effet cummulatif).

13.2 les différents messages ICMP :

TYPE Message ICMP : 0 Echo Reply 3 Destination Unreachable 4 Source Quench 5 Redirect (change a route) 8 Echo Request11 Time Exceeded (TTL)12 Parameter Problem with a Datagram13 Timestamp Request14 Timestamp Reply15 Information Request (obsolete)16 Information Reply (obsolète)17 Address Mask Reques18 Address Mask Reply

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 69

Page 75: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

13.3 format du message ICMP

b0 b7 b16 b31Type code Somme de contrôle

Identificateur Numéro de séquence

Données optionnelles

q Type (8 bits)q Code (8 bits)q Somme de contrôle (16 bits)q Identificateur (16 bits)q Numéro de séquence (16 bits) : il commence à 0 et est incrémenté à chaque paquet

retourné, nous permettant de voir si des paquets sont manquant, réordonnés ou dupliqués.q Données optionnelles

IDENTIFICATEUR et NUMERO DE SEQUENCE sont utilisés par l’émetteur pour contrôler les réponses aux requêtes, (CODE = 0).

Demande d’écho et réponse Request, Echo Reply ) d’écho ( Echo Permettent à une machine ou passerelle de déterminer la validité d’un chemin sur le réseau.Le champ de données spécifiques est composé de données optionnelles de longueur variable émises par la requête d'écho et devant être renvoyées par le destinataire si présentes.Utilisé par les outils applicatifs tels ping et traceroute.

Synchronisation des Horloges et temps de transitLes horloges de deux machines qui diffèrent de manière importante peuvent poser des problèmes pour des logiciels distribués.

Une machine peut émettre une demande d’horodatage (timestamp request) à une autre machine susceptible de lui répondre (timestamp reply) en donnant l’heure d’arrivée de la demande et l’heure de départ de la réponse.

L’émetteur peut alors estimer le temps de transit ainsi que la différence entre les horloges locale et distante.

Le champ de données spécifiques comprend l’heure originale (originate timestamp) émis par le demandeur, l’heure de réception (receive timestamp) du destinataire, et l’heure de départ (transmit timestamp) de la réponse.

Demande et réponse d’information ( Information Request + Reply ) Ces messages étaient initialement utilisés pour permettre aux machines de connaître leur adresse IP au démarrage du système. Ces commandes sont aujourd’hui remplacées par les protocoles RARP et BOOTP.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 70

Page 76: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Obtention de masque de sous-réseauUne machine peut émettre une demande de masque de sous-réseau (Subnet Mask Request) vers une passerelle gérant le sous-réseau en question. La passerelle transmet par une “Subnet Mask Reply”, l’adresse de masque de sous-réseau (de longueur 32 bits) dans le champ de donnée spécifique.

CODE indique le codage de l’erreur rapportée et est spécifique à chaque type d’erreur,

SPECIFIQUE est un champ de données spécifique au type d’erreur,

IP HEADER + FIRST 64 bits contient l’en-tête IP + les premiers 64 bits de données du datagramme pour lequel le message est émis.Compte rendu de destination inaccessibleLorsqu’une passerelle émet un message ICMP de type destination inaccessible, le champ code décrit la nature de l’erreur :

0 Network Unreachable1 Host Unreachable2 Protocol Unreachable3 Port Unreachable4 Fragmentation Needed and DF set5 Source Route Failed6 Destination Network Unknown7 Destination Host Unknown8 Source Host Isolated9 Communication with desination network administratively prohibited10 Communication with desination host administratively prohibited11 Network Unreachable for type of Service

12 Host Unreachable for type of Servicecontrôle de congestion   :

Le protocole IP étant un protocole en mode non connecté : => les passerelles ne peuvent réserver à l’avance la quantité de mémoire nécessaire au routage des datagrammes. => des datagrammes sont alors détruits.Cette situation de congestion se produit :lorsqu’une passerelle est connectée à deux réseaux aux débits différents (elle ne peut écouler au rythme imposé par le réseau le plus rapide),lorsque de nombreuses machines émettent simultanément des datagrammes vers une passerelle.Pour palier ce problème, la machine peut émettre un message ICMP de limitation de débit de la source (Source Quench) vers l’émetteur.Il n’existe pas de message d’annulation de limitation de débit. La source diminue le débit, puis l’augmente progressivement tant qu’elle ne reçoit pas de nouvelle demande de limitation.

modification de route   : Un message ICMP de redirection de route peut être transmis par une passerelle vers une machine reliée au même réseau pour lui signaler que la route n’est pas optimale. Une fois la redirection effectuée, les datagrammes seront acheminés vers la passerelle appropriée.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 71

Page 77: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Dans le bloc de commande, le champ SPECIFIQUE indique l’adresse de la passerelle que la machine doit utiliser pour router le datagramme; CODE spécifie la redirection :

CODE SIGNIFICATION 0 Redirect datagrams for the Network 1 Redirect datagrams for the Host 2 Redirect datagrams for the Type of Service and Network

3 Redirect datagrams for the Type of Service and Host

Detection de routes circulaires ou excessivement longuesUne passerelle détruit les datagrammes dont le champ durée de vie est à zéro et émet un message ICMP de délai dépassé.

CODE SIGNIFICATION 0 time to live exceeded in transit 1 fragment reassembly time exceeded

Lorsqu’une passerelle ou une machine détecte un problème avec un datagramme (en-tête incorrecte) non couvert par les messages ICMP prédéfinis, elle émet un message “Parameter Problem on a Datagram” vers l’émetteur du datagramme. Le problème rencontré consiste soit en une option manquante (dans le datagramme), soit en une donnée erronée.Dans le bloc de commande, le champ CODE indique la nature du pb:

CODE SIGNIFICATION 0 erreonous data 1 missing option

Le champ spécifique comprend un pointeur (codé sur les 8 premiers bits, les 24 restants étant à 0) servant à identifier l’octet erroné dans le datagramme; il est non significatif lorsque CODE = 1.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 72

Page 78: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

14. Architecture et routageLes hôtes, contrairement aux routeurs IP connaissent peu la structure de l'inter-réseau auquel

ils sont connectés. Il n'est d'ailleurs pas souhaitable qu'ils la connaissent trop en détails, car le moindre changement topologique impliquerait la mise à jour de l'ensemble des tables de routage des hôtes de l'inter-réseau.

Un hôte utilise donc souvent dans sa table de routage un default gateway vers lequel il envoie tous les datagrammes pour lesquels il n'a pas d'information de routage spécifique. Il se fie en quelque sorte à "son" routeur.

Des routeurs IP peuvent également, sous certaines conditions, ne disposer que d'informations partielles de routage (c'est-à-dire utiliser eux-mêmes des default gateways). Le risque est cependant de se retrouver avec un routage inconsistant, c'est à dire avec des destinations inaccessibles. Il est donc nécessaire que l'architecture des routeurs IP s'y prête.

Le schéma qui suit, présente une architecture qui se prête bien aux inter-réseaux disposant d'un backbone unique. Au centre se trouve un noyau de routeurs (notés RC). Ces routeurs n'utilisent pas de default gateway et communiquent entre eux pour connaître les chemins à suivre pour pouvoir atteindre n'importe quelle destination à l'inter-réseau. Les routeurs périphériques ont chacun un default gateway faisant partie du noyau central.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 73

R1

R2

R3 R6

R5

R4

RC

RC

RC

RC

RC RC

Noyau central

Page 79: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

15. EGP (Exterior Gateway Protocol)EGP (Exterior Gateway Protocol): utilisé pour échanger les informations de routage relatives au systèmes autonomes.EGP: essentiel dans la connectivité Internet (Core, inter-provider , ...) EGP : RFC827EGP a trois fonctions principales :

support d’un mécanisme d’acquisition permettant à une passerelles de requérir, auprès d’une autre passerelles, qu’elles échangent leurs informations de routage,

test continu de l’accessibilité des passerelles EGP voisines, échange de messages d’information de routage avec les passerelles EGP voisines.

Une passerelle extérieure émet des requêtes de mise à jour d'information de routage (routing update),afin d'informer les passerelles voisines appartenant à d'autres systèmes autonomes. Les messages de mises à jour sont composés de deux types de listes:

une liste interne contenant tout ou une partie des passerelles du système autonome et les réseaux accessibles à travers elles,

une liste externe structurée de la même manière mais identifiant des destinations extérieures au sytème autonome. Seules les passerelles appartenant à l’interconnexion (Core, Provider, BB) peuvent propager ces informations.

EGP peut ne pas annoncer les routes auxquelles il est relié.

EGP annonce des métriques comprises entre 0 et 255 (inaccessible)Conçu pour un réseau hierachique de type BackBone (exemple Arpanet/Nsfnet -> Réseaux régionnaux ->campus).Ajourd’hui le réseau est maillé et des boucles apparaissentLes routes multiples ne sont pas prises en compteLa distance est utlisée uniquement comme évaluation d’accessibilité (car la métrique est propre à un AS vs mesure universelle)Taille des messages importante ==> fragmentation de datagrammesSuccesseur d’EGP : BGP développé fin des années 80 qui permet :

des mises à jour incrémentales ( vs tailles des messages), la conversion avec IGP’s des informations de routage (==>cohérence entre métriques de

routeurs interieurs et extérieurs)évite les boucles dans une topologie maillée

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 74

Page 80: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

16. IGP (Interior Gateway Protocol)Ce chapitre décrit l'échange d'informations de routage entre routeurs IP d'un même système

autonome.

16.1 Le système manuel

La première solution offerte au manager du réseau est d'établir et de modifier les tables de routage à la main. L'administrateur fait des mises à jour nécessaires dès qu'un nouveau sous-réseau est ajouté ou enlevé.

S'il n'existe par exemple qu'un seul chemin entre deux points, le manager peut configurer manuellement les routes des hôtes.

Un tel système ne s'adapte pas à une croissance rapide du nombre des réseaux ou à des fréquents changements. Il ne convient que pour de petits réseaux.

16.2 Interior Gateway Protocols (IGP)

On désigne sous le nom d'IGP tout algorithme qu'utilisent les routeurs IP d'un même système autonome pour s'échanger des informations sur le routage ou l'accessibilité de tel ou tel sous-réseaux.

Les protocoles de routage sont bâtis sur deux types d'algorithmes :

q distance vector : décompte du nombre de liaisons intermédiairesq link status : coût de la liaison en fonction de son débit.

Chacun utilise une unité de mesure (routing metric) de manière à disposer d'une base numérique de comparaison entre plusieurs chemins possibles. Cette unité quantifie une distance entre les différents points du réseau. Selon le type d'algorithme retenu, les paramètres permettant de mesurer cette distance vont varier.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 75

Page 81: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

16.3 Les algorithmes de type "distance vector"

Algorithme de Belman-Ford, calcul de routes distribué. Un routeur diffuse régulièrement à ses voisins les routes qu’il connaît. Une route est composée d’une adresse destination, d’une adresse de passerelle et d’une métrique indiquant le nombre de sauts nécessaires pour atteindre la destination. Une passerelle qui reçoit ces informations compare les routes reçues avec ses propres routes connues et met à jour sa propre table de routage :

si une route reçue comprend un plus court chemin (nombre de prochains sauts +1 inférieur), si une route reçue est inconnue.

RIP, HELLO ou IGRP (protocole propriétaire Cisco) implantent des algorithmes de ce type.

La distance est exprimée en nombre de sauts (hop count). Le hop count indique le nombre de routeurs IP par lequel doit passer un datagramme pour aller de l'émetteur jusqu'au destinataire.

A partir des routeurs voisins, chaque routeur construit un "embryon" de table de routage qu'il diffuse à travers le réseau. De même, il reçoit des autres routeurs des informations qui enrichissent sa propre table de routage. Il la rediffuse, mise à jour, à travers le réseau. A la fin, la table de routage représente l'ensemble des liaisons et des équipements connectés qui constituent le réseau.

Ce mécanisme d'apprentissage progressif n'est pas immédiat. Il n'aboutit à une description complète du réseau qu'après un temps appelé temps de convergence de l'algorithme. Pour un réseau moyen, l'apprentissage dure plusieurs minutes, pendant lesquelles les datagrammes peuvent boucler ou être détruits.

Le trafic induit par la constitution de ces tables charge notablement le réseau, les routeurs échangeant constamment leurs tables afin de prendre en compte les modifications topologiques du réseau (rupture de liaisons, panne ou rajout de routeurs....).

Un compromis est donc à trouver entre la fréquence de mise à jour (et la charge de trafic qu'elle représente) et la vitesse de prise en compte des modifications du réseau. Cette fréquence est par défaut de 30 secondes pour RIP et de 90 secondes pour IGRP.

16.3.1 RIP

Protocole intérieur (Cf AS), RFC 1058.Berkeley made (BSD/routed)Conçu à l’origine pour les réseaux locaux, étendu aux réseaux distantsPeu performant, mais le plus employé au mondeDe type Vector/DistanceDeux Version 1.0 et 2.0Fonctionne au dessus d’UDP/IP ; port 520 (Cf <1024)Mode Actif : Routeurs, Mode passif : machines (Historique : Espionnage d’hôtes passifs dans les réseaux locaux).Les informations de routage sont émises toutes les 30 secondes et indiquent pour un routeur donné, la liste des réseaux accessibles avec leur distance (next hop).Les routes diffusées sont les routes propres + les routes acquises

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 76

Page 82: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________16.3.1.1 Principe   : (RIP V1) Le Routing Information Protocol fut l'un des premiers protocoles de routage.Chaque routeur :garde en mémoire une table contenant :

l'adresse ip du réseau à atteindre, le gateway à contacter pour atteindre ce réseau, le métrique de ce gateway, la dernière fois que cette route à été mise à jour (sert pour le "timeout"), la durée durant laquelle garder cette entrée afin de pouvoir prévenir les routeurs

annexes que cette route n'est plus valide ("garbage-collection time", initialisé à 120 secondes dès la fin du timeout)

envoie des messages (toutes les 30 secondes) de mise à jour aux autres routeurs en indiquant quel est le contenu de sa base de données

reçoit les messages provenant des autres routeurs et intègre ces informations dans sa base. Lorsque durant 180 secondes (timeout), une route n'a pas été mise à jour, alors cette entrée est effacée de la base.

Ce protocole est limité à 15 sauts. En effet, une métrique de 16 signifie l'infini (cela peut paraître petit, mais cela permet de faire converger plus vite le graphe lorsqu'un routeur vient à tomber en panne : cela peut prendre nb_routeurs_impliqués_dans_la_boucle*16*30 secondes).

16.3.1.2 Requêtes de la machine adip1 :

adip1:520 255.255.255.255:520 tous les routeurs doivent répondre à la requête sauf ceux qui sont "silent"

adip1:520 adip2:520 le routeur adip2 doit répondre à la requête sauf si il est "silent"

adip1:xxx 255.255.255.255:520 tous les routeurs doivent répondre à la requête même ceux qui sont "silent"

adip1:xxx adip2:520 le routeur adip2 doit répondre à la requête même si il est "silent"

16.3.1.3 Réponses de la machine adip2 :

adip2:520 255.255.255.255:520 message de mise à jour (envoyé toutes les 30 secondes)adip2:520 adip1:520_ou_xxx réponse à une requête de adip1

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 77

Page 83: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

RIP est l'un des protocoles de routage les plus utilisés. Il est souvent implanté par un programme appelé routed.

Un routeur IP utilise RIP en mode actif, c'est à dire qu'il broadcast toutes les 30 secondes des informations venant de sa propre table de routage. On parle de message RIP.

Un hôte utilise RIP en mode passif, c'est à dire qu'il utilise les informations de routage qui lui parviennent des routeurs IP pour mettre à jour sa propre table de routage.

Chaque message RIP est une paire :(adresse réseau, distance jusqu'à ce réseau)

avec la convention que si un routeur a une connexion directe sur un réseau, ce réseau est dit à une distance de 1 du routeur. Tout passage nécessaire par un routeur augmente le "hop count" de 1.

16.3.1.4 Format des paquets :RIP V1

command 1 : requête2 : réponse

version 1address familly 2 pour indiquer que address contient une adresse IP

Dans le cas d'une requête, si address==0 et metric==16, on demande alors le contenu de toute la table si address!=0 on demande la métrique associée à cette adresse Dans le cas d'une réponse, si le routeur connait la métrique, il la met sinon, il met 16

Notons que pour prendre en compte les caractéristiques différentes des réseaux physiques (débit,...) certaines implémentations de RIP modulent le "hop count" en fonction de ces caractéristiques.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 78

Page 84: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le routeur A envoie un broadcast (1,1) pour indiquer qu'il peut atteindre le réseau 1 avec un coût 1. Le routeur B recevant ce message va indiquer qu'il peut atteindre le réseau 1 avec un coût 2 via le routeur A. De même pour le routeur C, qui recevant un message (1,2) du routeur B va écrire dans sa table de routage qu'il peut atteindre le réseau 1 via le routeur B avec un coût 3.

RIP ne permet pas de partager le trafic vers une même destination entre deux chemins de même coût. Pour qu'un chemin remplace un autre, il faut que son coût soit strictement inférieur.

Un chemin n'est maintenu qu'un certain temps dans les tables. Si au bout d'une certaine période, l'existence d'un chemin n'est pas confirmé par les autres routeurs, ce chemin disparaît de la table de routage. Cela évite d'envoyer des datagrammes vers des chemins devenus indisponibles.

16.3.1.5 Inconvénients de RIP v1 :

RIP-v1 a été conçu pour être compatible avec toutes les implémentations existantes. Entre autres, on peut lui citer les défauts suivants :

pas d'interaction prévue avec les EGP pas de masque de sous réseau (une adresse IP ne suffit pas, il faut lui adjoindre le

masque réseau) pas d'authentification

16.3.1.6 RIP : les contraintesinconvénients des techniques Vector-Distance :taille des informations de routage (proportionnelle au nombre de routeurs) Métrique difficilement utilisable, limitée à 16, pas de cohérence entre domaine de routage (pas d’universalité entre AS), Bouclage, éventuellement à l’infini,Pas de chemins multiplesAmélioration apportée par RIP Version 2Gestion de sous-réseaux et super-réseaux (Cf CIDR)utilisation de Multicast IP (224.0.0.9) au lieu de Broadcast IP

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 79

Routeur A

Routeur B

Routeur DRouteur C

Réseau 1

Réseau 2

Réseau 3

Réseau 4 Réseau 5

Page 85: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Suppression de pics de transmission de messages : supprimer les synchronisations involontaires des émissions de messages : introduction de gestion aléatoire du déclenchement des émissions (14 à 45 secondes).Problèmes residuels importantsBoucles,Métriques non appropriées aux réseaux modernes (Cf commerciaux )Pas de chemins multiples

RIP V2

Voici un exemple de capture de trame RIP (retrouver les différents champs ?).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 80

Page 86: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

16.3.2 HELLO

HELLO implante également un algorithme de type "distance vector". HELLO est différent de RIP dans le sens où les informations inter-routeurs portent sur des temps et non plus sur des nombres de sauts.

16.3.3 IGRP

IGRP (Interior Gateway Routing Protocol) est un protocole de routage propriétaire de ‘CISCO Systems’. Il est également de type "distance vector". Il utilise une unité de distance qui caractérise une route à partir :

q de sa bande passante minimale,q de son débit,q de sa fiabilité,q de sa charge....

16.3.4 Algorithme V-D : InconvénientsLa taille des informations de routage est proportionnelle au nombre de routeurs du domaine,Métrique difficilement utilisable :

Lenteur de convergence, Bouclage, éventuellement à l’infini, Pas de chemins multiples Coût des routes externes arbitraire.

16.4 Les algorithmes de type "link status"

Basés sur la technique Shortest Path First (SPF) : les passerelles maintiennent une carte complète du réseau et calculent les meilleurs chemins

localement en utilisant cette topologie. les passerelles ne communiquent pas la liste de toutes les destinations connues (cf Vector-

Distance), une passerelle basée sur l’algorithme SPF, teste périodiquement l’état des liens qui la relient à

ses routeurs voisins, puis diffuse périodiquement ces états (Link-State) à toutes les autres passerelles du domaine.

Les messages diffusés ne spécifient pas des routes mais simplement l’état (up, down) entre deux passerelles.

Lorsque un message parvient à une passerelle, celle-ci met à jour la carte de liens et recalcule localement pour chaque lien modifié, la nouvelle route selon l’algorithme de Dijkstra shortest path algorithm qui détermine le plus court chemin pour toutes les destinations à partir d’une même source.

Les algorithmes de ce type permettent aux routeurs de construire leurs tables de routage de manière plus rapide et plus économique : chaque routeur n'envoie à ses voisins que la description des liaisons qu'il possède avec ceux-ci.

Cette information locale est transmise de proche en proche et permet à chaque routeur de construire la topologie du réseau telle qu'il la voit, se plaçant lui-même comme racine de __________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 81

Page 87: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________l'arborescence ainsi créée. Chaque liaison est définie par un poids, fixé par l'administrateur, permettant à l'algorithme d'identifier le chemin le plus court entre deux points du réseau.

Cohérence des bases les copies de chaque noeud doivent être identiques aux périodes de transition près. on améliore le processus en protégeant les bases contre les erreurs : procédure d’inondation avec acquittement, transmission des paquets sécurisés, enregistrements de la base protégés par cheksum, enregistrements de la base soumis à temporisation et supprimés si non rafraîchis à temps. messages pouvant être authentifiés.

Métriques multiples plus haut débit, plus bas délai, plus bas coût, meilleure fiabilité.

La puissance et la souplesse de ces algorithmes résident dans leur définition. Ils peuvent représenter des paramètres tels que le débit de la liaison, le coût PTT, le temps de transit (dans le cas de liaison satellite par exemple)...

La détermination du poids permet, de plus, de favoriser l'utilisation de certaines liaisons pour des trafics prioritaires ou sensibles. Plus sophistiqué que son homologue "distance vector", cet algorithme impose aux constructeurs une programmation délicate, mais offre une grande possibilité de paramètrage, un temps de convergence bien plus court et une charge de trafic beaucoup plus faible.

Toute modification du réseau est immédiatement répercutée, sans attendre un temps prédéfini, puisque le volume de l'information correspondant à cette mise à jour est très faible, et ne risque donc pas de saturer le réseau. Seule la description de cette modification est transmise, par opposition au cas précédent où toute la table de routage est diffusée.

Avantage des algorithmes Link State : convergence rapide sans boucle, possibilités de chemins multiples, métriques précises et couvrant plusieurs besoins, traitement séparé des routes externes. chaque passerelle calcule ses routes indépendamment des autres. Les messages diffusés sont inchangés d’une passerelle à l’autre et permettent un contrôle

(debug) aisé en cas de dysfonctionnement. les messages ne concernent que les liens directs entre passerelles et ne sont donc pas

proportionnels au nombre de réseaux dans le domaine (VS V-D).En conclusion, les algorithmes SPF sont mieux adaptés au facteur d’échelle que les algorithmes Vector-Distance.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 82

Page 88: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

16.4.1 OSPF

Protocole link state (RFC 1247) destiné à remplacer les protocoles intérieurs propriétaires et RIP.OSPF utilise la fonctionnalité “type de service” offerte par IP Permet d’installer plusieurs routes pour une même destination, selon des critères différents (ex : délai court, débit important). Si plusieurs routes vers une même destination sont de coût équivalents, OSPF répartit la charge équitablement parmi ces routes.OSPF supporte l’adressage en sous-réseaux (subnets); Découpe d’un système autonome en aréas Isolement des informations de routage à l’intérieur de ces aréas ==> limitation des informations de routage dans le système autonome .Des liens virtuels peuvent être établis dans la topologie de l’AS afin de cacher les connexions physiques d’une partie du réseau.Les liens extérieurs avec d’autres systèmes autonomes (via EGP par exemple) sont pris en compte.Echanges entre routeurs authentifiés ==> l’intégrité des messages.

OSPF est le premier protocole de routage normalisé utilisant un algorithme de type "ling status". Il a été conçu pour de très grands réseaux s'appuyant sur de nombreux routeurs, des liaisons WAN multiples et des backbones à haut débit comme FDDI.

Citons ci-dessous quelques particularités de ce protocole :

q OSPF est un des premiers protocoles de routage à prendre en compte dans le routage le champ type of service présent dans l'en-tête du datagramme IP à router. A une même destination peut correspondre plusieurs chemins différents, une pour chaque type de service (low delay, high trouhgput,....). Quand un routeur sous OSPF route des datagrammes, il prend en compte l'adresse destination et le type de service spécifié dans l'en-tête IP.

q OSPF utilise le load balancing. S'il existe plusieurs chemins vers une même direction ayant le même coût, OSPF distribue le trafic également sur chaque chemin. Les protocoles comme RIP ne calculent vers une destination donnée qu'une seule route.

Le problème : dans les sytèmes de routage, si le réseau est trop grandoverhead du traffic dans le réseau, calculs trop longs, dimensionnement mémoire trop grandLa solution : routage hiérachiquedécoupage du réseau en parties indépendantes (Areas), reliées par un BackBone (Area BackBone)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 83

Page 89: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

La fonctionnalité chaque area constitue un réseau indépendant la table des liaisons ne contient de les liaisons de l’Area, le protocole d’inondation s’arrête aux frontières de l’Area, les routeurs ne calculent que des routes internes à l’Area certains routeurs (area border routers) appartiennent à plusieurs Areas (en général une Area

inférieure et une Area BB) et transmettent les informations récapitulatives des Areas qu’ils relient.

Chaque routeur du système autonome où d’une area construit sa propre base d’information décrivant la topologie de l’AS complet ou bien de l’area.Au départ les routeurs utilisent des message "Hello" pour découvrir leurs voisins; une "adjacence" est formée lorsque deux routeurs communiquent pour échanger des informations de routage. L’information élémentaire échangée entre routeurs décrit l’état (link state) des adjacences; cette information est fournie par un routeur donné puis propagée dans l'area ou l’AS.A partir de sa base d’information (collection d’états des routeurs), chaque routeur construit un arbre du plus court chemin (SPF tree) dont il est la racine. Cet arbre indique toutes les routes pour toutes les destinations du système autonome, plus les destinations extérieures.La base d’information topologique d’un système autonome décrit un graphe orienté. Les noeuds du graphe sont des routeurs ou bien des réseaux tandis que les liens représentent les connexions physiques. Les réseaux sont dits de transit si plusieurs routeurs y sont connectés ou terminaux dans le cas contraire. A chaque réseau est associé une adresse IP et un masque réseau.Une machine seule (host) est considérée comme un réseau terminal avec un masque égal à 0xFFFFFFFF.

16.4.2 IS-IS

OSPF n'est pas le seul protocole de sa génération. Il doit compter avec IS-IS (Intermediate System to Intermediate System). Ce protocole est défini par l'ISO. Il est de type link status et présente des caractéristiques similaires à OSPF. Dans sa première version, il supporte le protocole de l'OSI. Dans une version plus récente (Integrated IS-IS ou Dual IS-IS), plusieurs protocoles de réseau peuvent être gérés simultanément, comme IP et OSI, grâce à un champ type de protocole.

Cette possibilité est à comparer à la solution de type SIN offerte par OSPF. Un protocole de type DIN (Ships In the Night) ne sait gérer qu'un seul protocole de réseau, mais peut coexister avec d'autres protocoles de routage. Dans le cas d'un réseau IP et XNS, OSPF sait coexister avec RIP-XNS. Les messages de routage des deux protocoles se croisent sur les mêmes liaisons sans se voir, comme des bateaux dans la nuit (Ships in the night).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 84

Page 90: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

17. UDP (User Datagram Protocol)UDP : protocole de transport sans connexion de service applicatif : émission de messages applicatifs : sans établissement de connexion au préalable, l'arrivée des messages ainsi que l’ordonnancement ne sont pas garantis.

Identification du service : les portsLes adresses IP désignent les machines entre lesquelles les communications sont établies. Lorsqu'un processus désire entrer en communication avec un autre processus, il doit adresser le processus s'exécutant cette machine. L'adressage de ce processus est effectué selon un concept abstrait indépendant du système d'exploitation des machines car :

– les processus sont créés et détruits dynamiquement sur les machines,– il faut pouvoir remplacer un processus par un autre (exemple reboot) sans que l'application

distante ne s'en aperçoive,– il faut identifier les destinations selon les services offerts, sans connaître les processus qui les

mettent en oeuvre,– un processus doit pouvoir assurer plusieurs services.

17.1 La notion de port

La couche IP assure la transmission des datagrammes IP de la machine source jusqu'à la machine destination. Mais, en fait, ce sont les programmes d'applications (appelés également processus) qui sont les destinataires finaux des différents messages en transit dans l'inter-réseau. Il est donc indispensable d'identifier quel processus est le destinataire parmi tous ceux qui s'exécutent sur une machine.

Chaque machine contient un ensemble de points de destination abstraits appelés protocol ports, identifiés par un entier positif codé sur deux octets. Une application qui souhaite communiquer sur le réseau avec une autre application doit se raccorder à un port, comme le montre le schéma ci-dessous.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 85

Application 1 Application 2 Application 3

Port 1 Port 2 Port 3

udp

ip

Page 91: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Une application est donc identifiée dans un réseau par :

q l'adresse IP de la machine sur laquelle elle se trouveq le protocol port number auquel elle s'est raccordée

17.2 la gestion des numéros de ports

Tous le échanges entre le software UDP et les processus d'applications ont lieu via les ports. Avant de pouvoir transmettre un message sur le réseau, chaque processus d'application doit négocier avec le système d'application pour obtenir un port et un numéro de port associé.

Un port UDP peut être considéré comme une file d'attente. Dans la plupart des implémentations, quand un port est affecté à un programme d'application par le système d'exploitation, une file d'attente est créée sur ce port. Cette file d'attente recevra les messages venant du réseau et à destination de ce port.

TCP/IP fixe certains numéros de ports UDP pour les types d'applications les plus courants. Les autres numéros sont disponibles. Si une application ne connaît pas le numéro de port d'une application distance à laquelle elle veut s'adresser, elle peut obtenir ce numéro par un mécanisme de requête / réponse.

17.3 Exemples d'applications utilisant UDP

Une des principales applications utilisant UDP est SNMP (Simple Network Management Protocol).

Nous donnons ci-dessous une liste non exhaustive des ports UDP fixés. Notons que si des services identiques sont offerts sous TCP, les numéros de ports seront alors les mêmes.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 86

Page 92: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le protocole UDP

UDP (User Datagram Protocol) est donc un protocole du niveau transport qui permet à un processus d'une machine d'envoyer un datagramme à un processus d'une autre machine. Dans ce but, il utilise directement le protocole IP, protocole non-fiable et sans connexion. UDP fournit donc un service de transport :

q non fiable (sans accusés de réception (= unreliable)q sans connexion (=Connectionless)

En conséquence des messages UDP peuvent :q se perdre dans l'inter-réseauq être dupliquésq ne pas arriver dans l'ordreq arriver trop vite pour être traités par le destinataire

Un programme d'application qui utilise UDP doit tenir compte de tous ces problèmes.

17.4 Format d'un message UDP

Chaque message UDP est appelé un datagramme utilisateur (user datagram). Il contient un en-tête (header) et une zone de données (data area).

Les ports source et destination contiennent les numéros de port utilisés par UDP pour démultiplexer les datagrammes destinés aux processus en attente de les recevoir. Le port source est facultatif (égal à zéro si non utilisé).

La longueur du message est exprimée en octets (8 au minimum) (en-tête + données), le champ de contrôle est optionnel (0 si non utilisé).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 87

Page 93: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Les messages UDP venant de la couche IP sont distribués aux différentes applications en fonction des numéros de port inclus dans les en-tête IP. Les messages en provenance des différentes applications de la machines sont transmis à la couche IP.

Lorsqu'il est utilisé, le champ de contrôle couvre plus d'informations que celles contenue dans le datagramme UDP; En effet, le checksum est calculé avec un pseudo-en-tête non transmis dans le datagramme:

Le champ PROTO indique l'identificateur de protocole pour IP (17= UDP) Le champ LONGUEUR UPD spécifie la longueur du datagramme UPD sans le pseudo-en-tête. UDP multiplexe et démultiplexe les datagrammes en sélectionnant les numéros de ports :

une application obtient un numéro de port de la machine locale; dès lors que l'application émet un message via ce port, le champ PORT SOURCE du datagramme UDP contient ce numéro de port,

une application connaît (ou obtient) un numéro de port distant afin de communiquer avec le service désiré.

Lorsque UDP reçoit un datagramme, il vérifie que celui-ci est un des ports actuellement actifs (associé à une application) et le délivre à l'application responsable (mise en queue) si ce n'est pas le cas, il émet un message ICMP port unreachable, et détruit le datagramme.

17.5 Encapsulations successives

UDP s'appuyant sur les couches inférieurs pour acheminer les messages UDP, des encapsulations successives ont lieu :

UDP Header UDP Data Area

IP Header IP Data Area

Frame Header Frame Data Area

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 88

Page 94: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

18. TCP (Transmission Control Protocol)Utiliser un service de transport non fiable et sans connexion comme UDP ne peut convenir

pour des programmes d'application transférant de grands volumes de données. Il faudrait implanter dans les applications des mécanismes de contrôle du bon acheminement des messages, de remise dans l'ordre des messages... Nous décrivons ici un autre protocole de transport plus performant : TCP.

18.1 TCP

TCP (Transmission Control Protocol) est un protocole du niveau transport qui permet à une application d'une machine d'envoyer un flux de données vers une application d'une autre machine.

TCP fournit un service :

q Fiable (fournit un canal sans erreurs)q avec contrôle de flux (permet de ne pas surcharger une machine qui n'est pas prête

temporairement à recevoir de nouvelles données.q Ordonné (les octets émis par l'application source sont reçus dans le même ordre chez le

destinataire.q En mode full duplex (permet un flux de données bidirectionnel entre les deux applications).q En mode connecté (La communication entre deux machines compte trois étapes :

établissement d'une connexion, utilisation du canal de communication, puis relâchement de la connexion.

18.2 Les notions de connexion et de endpoints

Une connexion de type circuit virtuel est établie avant que les données ne soient échangées : appel + négociation + transferts

Une connexion = une paire d'extrémités de connexion Une extrémité de connexion = couple (adresse IP, port)Exemple de connexion : ((124.32.12.1, 1034), (19.24.67.2, 21))Une extrémité de connexion peut être partagée par plusieurs autres extrémités de connexions (multi-instanciation)La mise en oeuvre de la connexion se fait en deux étapes :

une application (extrémité) effectue une ouverture passive en indiquant qu'elle accepte une connexion entrante,

une autre application (extrémité) effectue une ouverture active pour demander l'établissement de la connexion.

Tout comme UDP, TCP utilise la notion de port. Cependant un port TCP n'est pas utilisé comme l'était un port UDP. L'abstraction fondamentale utilisée par TCP est la connexion.

Une connexion est identifiée par une paire de endpoints (points terminaux).Un endpoint est une paire d'entiers (host, port) où :

q host est l'adresse IP d'une machineq port est un port TCP de cette machine

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 89

Page 95: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Segmentation, contrôle de flux   : Les données transmises à TCP constituent un flot d'octets de longueur variable. TCP divise ce flot de données en segments en utilisant un mécanisme de fenêtrage. Un segment est émis dans un datagramme IP.Acquittement de messages   : Contrairement à UDP, TCP garantit l'arrivée des messages, c'est à dire qu'en cas de perte, les deux extrémités sont prévenues.

Ce concept repose sur les techniques d’acquittement de message : lorsqu'une source A émet un message Mi vers une destination B, A attend un acquittement Ai de B avant d'émettre le message suivant Mi+1.Si l’acquittement Ai ne parvient pas à A, A considère au bout d'un certain temps que le message est perdu et reémet Mi :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 90

Page 96: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________La technique acquittement simple pénalise les performances puisqu'il faut attendre un acquittement avant d'émettre un nouveau message. Le fenêtrage améliore le rendement des réseaux.La technique du fenêtrage : une fenêtre de taille T, permet l'émission d'au plus T messages "non acquittés" avant de ne plus pouvoir émettre :

fenêtrage glissante permettant d'optimiser la bande passante permet également au destinatairede faire diminuer le débit de l'émetteur donc de gérer le contrôle de flux.Le mécanisme de fenêtrage mis en oeuvre dans TCP opère au niveau de l'octet et non pas au niveau du segment; il repose sur :

la numérotation séquentielle des octets de données, la gestion de trois pointeurs par fenêtrage :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 91

Page 97: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

18.3 Format d’un segment TCP

Un segment contient un en-tête (header) et une zone de données (data area).Segment : unité de transfert du protocole TCP échangés pour établir les connexions, transférer les données, émettre des acquittements, fermer les connexions;

TCP Header TCP Data AreaFormat d’un segment TCP

L'en-tête contient principalement :

Numéro de séquence : le numéro de séquence du premier octet (NSP) de ce segment. Généralement à la suite d’octets O1, O2, ..., On (données du message) est associée la suite de numéro de séquence NSP, NSP+1, ..., NSP+n. Il existe deux exceptions à cette règle :

lorsque le bit SYN (voir CODE BITS) est positionné, le NSP représente cette donnée de contrôle et par conséquent la suite NSP, NSP+1, NSP+2, ..., NSP+n+1, associe la suite de données SYN, O1, O2, ..., On.

lorsque le bit FIN (voir CODE BITS) est positionné, le NSP+n représente cette donnée de contrôle et par conséquent la suite NSP, NSP+1, NSP+2, ..., NSP+n, associe la suite de données O1, O2, ..., On, FIN.

Numéro d’acquittement : le prochain numéro de séquence NS attendu par l’émetteur de cet acquittement. Acquitte implicitement les octets NS-1, NS-2, etc.Fenêtre: la quantité de données que l’émetteur de ce segment est capable de recevoir; ceci est mentionné dans chaque segment (données ou acquittement).CODE BITS : indique la nature du segment :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 92

Page 98: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________URG : le pointeur de données urgentes est valide (exemple : interrupt en remote login), les données sont émises sans délai, les données reçues sont remises sans délai.SYN : utilisé à l’initialisation de la connexion pour indiquer où la numérotation séquentielle commence. Syn occupe lui-même un numéro de séquence bien que ne figurant pas dans le champ de données. Le Numéro de séquence inscrit dans le datagramme (correspondant à SYN) est alors un Initial Sequence Number (ISN) produit par un générateur garantissant l’unicité de l’ISN sur le réseau (indispensable pour identifier les duplications). FIN : utilisé lors de la libération de la connexion;PSH : fonction push. Normalement, en émission, TCP reçoit les données depuis l’applicatif , les transforme en segments à sa guise puis transfère les segments sur le réseau; un récepteur TCP décodant le bit PSH, transmet à l’application réceptrice, les données correspondantes sans attendre plus de données de l’émetteur. Exemple : émulation terminal, pour envoyer chaque caractère entré au clavier (mode caractère asynchrone).RST : utilisé par une extrémité pour indiquer à l’autre extrémité qu’elle doit réinitialiser la connexion. Ceci est utilisé lorsque les extrémités sont désynchronisées. Exemple : CHECKSUM : calcul du champ de contrôle : utilise un pseudo-en-tête et s'applique à la totalité du segment obtenu (PROTO =6) :

OPTIONS Permet de négocier la taille maximale des segments échangés. Cette option n'est présente que dans les segments d'initialisation de connexion ( avec bit SYN).TCP calcule une taille maximale de segment de manière à ce que le datagramme IP résultant corresponde au MTU du réseau. La recommandation est de 536 octets.La taille optimale du segment correspond au cas où le datagramme IP n’est pas fragmenté mais :il n’existe pas de mécanisme pour connaître le MTU, le routage peut entraîner des variations de MTU,la taille optimale dépend de la taille des en-têtes (options).Acquittements et retransmissionsLe mécanisme d’acquittement de TCP est cumulatif : il indique le numéro de séquence du prochain octet attendu : tous les octets précédents cumulés sont implicitement acquittésSi un segment a un numéro de séquence supérieur au numéro de séquence attendu (bien que dans la fenêtre), le segment est conservé mais l’acquittement référence toujours le numéro de séquence attendu(-->).Pour tout segment émis, TCP s’attend à recevoir un acquittementSi le segment n’est pas’acquitté, le segment est considéré comme perdu et TCP le retransmet. Or un réseau d’interconnexion offre des temps de transit variables nécessitant le réglage des temporisations; TCP gère des temporisations variables pour chaque connexion en utilisant un algorithme de retransmission adaptative

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 93

Page 99: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Algorithme de retransmission adaptativeEnregistre la date d’émission d’un segment, enregistre la date de réception de l’acquittement correspondant, calcule l’échantillon de temps de boucle A/R écoulé, détermine le temps de boucle moyen RTT (Round Trip Time) .Aujourd’hui de nouvelles techniques sont appliquées pour affiner la mesure du RTT : l’algorithme de Karn.L’algorithme de Karn repose sur les constatations suivantes :

en cas de retransmission d’un segment, l’émetteur ne peut savoir si l’acquittement s’adresse au segment initial ou retransmis (ambiguïté des acquittements), =>l’échantillon RTT ne peut donc être calculé correctement,

TCP ne doit pas mettre à jour le RTT pour les segments retransmis. L’algorithme de Karn combine les retransmissions avec l’augmentation des temporisations

associées (timer backoff): une valeur initiale de temporisation est calculée si une retransmission est effectuée, la

temporisation est augmentée (généralement le double de la précédente, jusqu’à une valeur plafond).

Cet algorithme fonctionne bien même avec des réseaux qui perdent des paquets.Gestion de la congestionTCP gère le contrôle de flux de bout en bout mais également les problèmes de congestion liés à l’interconnexion.La congestion correspond à la saturation de noeud(s) dans le réseau provoquant des délais d’acheminement de datagrammes jusqu‘a leur pertes éventuelles. Les extrémité ignorent tout de la congestion sauf les délais. Habituellement, les protocoles retransmettent les segments ce qui agrave encore le phénomène. Dans la technologie TCP/IP, les passerelles (niveau IP) utilisent la réduction du débit de la source mais TCP participe également à la gestion de la congestion en diminuant le débit lorsque les délais TCP maintient une fenêtre virtuelle de congestion TCP applique la fenêtre d’émission suivante:

fenêtre_autorisée = min (fenêtre_récepteur, fenêtre_congestion).Dans une situation de non congestion:

fenêtre_récepteur = fenêtre_congestion.En cas de congestion, TCP applique une diminution dichotomique :

à chaque segment perdu, la fenêtre de congestion est diminuée par 2 (minimum 1 segment)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 94

Page 100: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

la temporisation de retransmission est augmentée exponentiellement.Si la congestion disparaît, TCP définit une fenêtre de congestion égale à 1 segment et l’incrémente de 1 chaque fois qu’un acquittement est reçu; ce mécanisme permet un démarrage lent et progressif :

Fenêtre_congestion = 1,émission du 1er segment,attente acquittement,réception acquittement,Fenêtre_congestion = 2,émission des 2 segments,attente des acquittements,réception des 2 acquittements,Fenêtre_congestion = 4,émission des 4 segments, ...

Log2 N itérations pour envoyer N segments. Lorsque la fenêtre atteint une fois et demie sa taille initiale, l’incrément est limité à 1 pour tous les segments acquittés de la fenêtre.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 95

Page 101: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Une connexion TCP est établie en trois temps de manière à assurer la synchronisation nécessaire entre les extrémités : Ce schéma fonctionne lorsque les deux extrémités effectuent une demande d'établissement simultanément. TCP ignore toute demande de connexion, si cette connexion est déjà établie. Une connexion TCP est libérée en un processus dit "trois temps modifié":

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 96

Page 102: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

18.4 Encapsulations successives

TCP s'appuyant sur les couches inférieures pour acheminer les datagrammes utilisateurs, les encapsulations successives ont lieu :

TCP Header TCP Data Area

IP Header IP Data Area

Frame Header Frame Data Area

18.5 Exemples d'applications utilisant TCP

Beaucoup d'applications utilisent TCP. Citons :

FTP ( File Transfert Protocol )SMTP (Simple Mail Transport Protocol)Telnet ( TELetype NETwork )Les applications X400 (messagerie électronique)

Nous donnons ci-dessous une liste non exhaustive des ports TCP fixés. Notons que si des services identiques sont offerts sous TCP, les numéros de ports seront alors les mêmes. Rechercher sur votre OS le fichier : etc\services, celui-ci contient l’extrait du tableau ci-dessous

N° Keyword UNIX Keyword Description

0 Reserved1 TCPMUX - TCP Multiplexor5 RJE - Remote Job Entry7 ECHO echo Echo9 DISCARD discard Discard

11 USERS systat Active users13 DAYTIME daytime Daytime15 - netstat Netwok status program17 QUOTE qotd Quote of the day19 CHARGEN chargen Character generator20 FTP-DATA ftp-data File Transfert Protocol ( data )21 FTP ftp File Transfert Protocol23 TELNET telnet Terminal connexion25 SMTP smtp Simple Mail Transport Protocol37 TIME time Time42 NAMESERVER name Host name server43 NICNAME whois Who is

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 97

Page 103: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

TCP : L’automate

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 98

Page 104: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

19. Le modèle client-serveurLes processus qui utilisent le réseau de communication font souvent partie d'une conversation

client-serveur. Un serveur attend des requêtes en provenance de clients et réalise des actions en fonction de ces requêtes. Parfois il renvoie une réponse.

Si le serveur communique en UDP par exemple, il peut accepter et répondre à des requêtes en provenance de n'importe quelle machine de l'inter-réseau. Par contre s'il communique en utilisant des trames physiques, il est restreint au réseau physique auquel il est connecté.

20. Le protocole BOOTP (BOOTstrap Protocol)Le BOOTstrap Protocol (BOOTP) est une alternative au protocole RARP pour une station

sans disque qui souhaite déterminer son adresse IP. Bootp est plus général que RARP, parce-qu'il repose sur UDP.

21. Le système domain name (DNS)Jusqu'à présent, nous avons utilisé des adresses IP sur 4 octets pour identifier une machine.

Cependant les utilisateurs préfèrent parfois utiliser des noms prononçables pour désigner une machine. On parle alors de noms symboliques ou de noms de haut niveau. Nous allons voir dans ce chapitre en quoi consiste cet adressage symbolique et comment il peut être mis en oeuvre.

21.1 La hiérarchie dans l'adressage symbolique

Tant que le nombre de machines connectées à un inter-réseau demeure faible, la gestion des noms est simple. Une machine sera désignée par exemple sous le nom "palmier", une autre sous le nom "colchique", etc.... Mais dès lors que le nombre de machines connectées croît rapidement, cette gestion devient très lourde pour le manager du réseau. Et le risque de voir deux machines différentes porter le même nom symbolique n'est plus à exclure.

Pour remédier à ce problème, un système d'adressage hiérarchique a été crée. L'attribution des noms est faite en utilisant un mécanisme de délégation d'autorité.

Le découpage hiérarchique peut être basé sur la géographie, l'organisation interne de la société ou sur tout autre critère du moment qu'il est logique.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 99

Page 105: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Donnons un aperçu sommaire d’une hiérarchie possible :

Chaque rectangle couvre un “domain” dont il a la responsabilité et porte un “domain name”.

21.2 DNS

Le mécanisme qui implante l’adressage hiérarchique nominatif s’appelle DNS ( Domain Name System ) .

Un “Domain Name” est une suite de sous-noms, appelés labels, séparés par des points.

tm.form.gefi désigne par exemple le département TM de la FORM de GEFI. L’attribution de noms aux différents ordinateurs de la tm étant faite par le responsable du département TM. Tout hôte portera alors un nom respectant la syntaxe X.tm.form.gefi.

Précisons qu”un nom symbolique peut désigner :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 100

gefi

form admin pca

AS400tm

Shpe55

Page 106: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

un hôte : shpe55.tm.form.gefiun service : form.gefiune boîte aux lettres électronique  : edouard@ shpe55.tm.form.gefiun utilisateur...

L’adressage symbolique hiérarchique dépasse en fait le cadre de TCP/IP.

21.3 La hiérarchie Internet

Le réseau Internet propose aux réseaux connectés deux systèmes de hiérarchie :

- Le premier dit “Organisationnel”, est basé sur la nature de l’activité de la société qui a demandé une affectation d’adresse IP.

- Le second dit “géographique” est basé sur la géographie.

Le schéma organisationnel est souvent préféré car il induit des adresses symboliques plus courtes. Nous donnons ci-après la liste des “Domain names” situés au sommet de la hiérarchie Internet et qui constituent les points de raccord possibles pour les hiérarchies des sociétés ou organisations.

com Commercial (for example, microsoft.com for Microsoft Corporation)

edu Educational (for example, mit.edu for Massachusetts Institute of Technology)

gov Government (for example, whitehouse.gov for the Whitehouse in Washington D.C.)

int International organizations (for example, nato.int for NATO)

mil Military operations (for example, army.mil for the Army)

net Networking organizations (for example, nsf.net for NSFNET)

org Noncommercial organizations (for example, fidonet.org for FidoNet)

+ un code par pays ( et parfois par régions )

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 101

Page 107: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

gefi pourrait par exemple être identifié par ;gefi.com schéma organisationnel

ou gefi.fr schéma géographique ( fr pour la France )

En France les attributions des noms de domaine en « .fr » sont de la responsabilité de l’AFNIC ou de quelques fournisseurs d’accès Internet (ASI).

21.4 L’obtention d’un nom de second niveau

Par nom de second niveau, on entend un nom qui désigne l’institution demandant de faire partie du Domain Name System d’Internet. Dans l’exemple, gefisa est un nom de second niveau.

Tout comme pour les adresses IP, il n’est pas obligatoire de se déclarer au NIC tant que l’on ne souhaite pas être connecté sur l’extérieur. Toutefois en prévision de l’avenir, et s’il on souhaite adopter l’adressage symbolique, c’est souhaitable.

Voici la représentatin d’une zone d’autorité

21.5 La correspondance entre adresses

La correspondance entre un nom symbolique et une adresse IP est effectuée par un ensemble de serveurs de noms (dédiés ou non) qui coopèrent entre eux. Il y a en général un serveur de noms par entité différente de la hiérarchie. Chaque demande de correspondance est en priorité traitée par le serveur de noms local. Pour réduire le nombre de requêtes et de réponses, on implante généralement sur les hôtes un mécanisme de cache. Les serveurs de noms doivent être conformes aux standards édictés par Internet avant raccordement au réseau Internet.Résolution de NOMS :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 102

Page 108: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Mise en cache et TTL

Les serveurs DNS mettent en cache les requêtes itérativesChaque entrée mise en cache est affectée d’une durée de vie (TTL, Time to Live)Lorsque la durée de vie expire, l'entrée est supprimée du cacheLa durée de vie restante est envoyée au solveur dans la réponse récursive

Requêtes inverses

Permet de retrouver un nom d'hôte à partir de son adresse IP.

Il faut donc créer une zone inverse.

Soit un réseau 190.168.10.0

A 192.168.10.5 serveur1

A 192.168.10.10 serveur2

Zone inverse : 10.168.192.in-addr.arpa

Fichier de base de données

SOA Start Of Authority (Il en est le responsable)

Enregistrement SOA :

A pour définir un hôte (port TCP 80)

NS pour identifier un serveur de noms associé au domaine

MX pour définir une messagerie (port TCP 25)

CNAME pour faire des alias

Fichier de cache

Pour un serveur DNS Internet, il y a un fichier de cache par défaut. Il contient les @IP des 11 root-servers.

Si le serveur DNS n'est pas utilisé pour Internet, il faut supprimer ce fichier de cache.

Voici un exemple de Cache DNS; DNS CACHE FILE;; Initial cache data for root domain servers.;; YOU SHOULD CHANGE:; —Nothing if connected to the Internet. Edit this file only when; update root name server list is released.; OR; —If NOT connected to the Internet, remove these records and replace; with NS and A records for the DNS server authoritative for the

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 103

Page 109: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________; root domain at your site.; Internet root name server records:; last update: Sep 1, 1995; related version of root zone: 1995090100;; formerly NS.INTERNIC.NET. 3600000 IN NS A.ROOT-SERVERS.NET.A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4; formerly NS1.ISI.EDU. 3600000 NS B.ROOT-SERVERS.NET.B.ROOT-SERVERS.NET. 3600000 A 128.9.0.107; formerly C.PSI.NET. 3600000 NS C.ROOT-SERVERS.NET.C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12; formerly TERP.UMD.EDU. 3600000 NS D.ROOT-SERVERS.NET.D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90; formerly NS.NASA.GOV. 3600000 NS E.ROOT-SERVERS.NET.E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10; formerly NS.ISC.ORG. 3600000 NS F.ROOT-SERVERS.NET.F.ROOT-SERVERS.NET. 3600000 A 39.13.229.241; formerly NS.NIC.DDN.MIL. 3600000 NS G.ROOT-SERVERS.NET.G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4; formerly AOS.ARL.ARMY.MIL. 3600000 NS H.ROOT-SERVERS.NET.; End of File

Exemple de serveur du domaine Racine :

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 104

Page 110: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

DHCP

Qu'est-ce que DHCP ?

A chaque démarrage d'un client DHCP, ce dernier demande des informations d'adressage IP à un serveur DHCP, notamment : Adresse IP, masque de sous-réseau et passerelle. Permet d'attribuer aux clients une adresse IP et un masque. Le reste est sous forme d'options. (routeur par défaut, serveur DNS, ...).

Agent de relais DHCP : plage d'adresses IP disponibles pour un autre réseau au cas ou le serveur DHCP de cet autre réseau serait HS. Les @IP sont données au travers du routeur qui relie les 2 réseaux.

Cet agent répond aux broadcasts après avoir entendu 4 trames de broadcast successives d'un client qui émet des DHCP discover. Pour cela, il effectue un DHCP request dirigé au travers du routeur. Un serveur DHCP ne peut pas être un agent relais DHCP.

Configuration manuelle de TCP/IP. Configuration automatique grâce à DHCP

saisie manuelle adresse IP / masque / Passerelle/ etc

identification difficile de la source d'un problème- infos d'adressage IP fournies automatiquement

Élimination de nombreux pb de configuration

informations incohérentes

surcharge administrative

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 105

Page 111: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Fonctionnement de DHCP

La configuration s'effectue en 4 trames :

1 - DHCP Discover Sollicitation du client (diffusion)

2 - DHCP Offer Offre d'un serveur DHCP (diffusion) : @IP+mask+durée du bail

3 - DHCP Request Demande du client (trame dirigée)

4 - DHCP ACK Accusé de validation du serveur DHCP (trame dirigée) : @IP+mask+bail+options

Demande : - 1ere fois initialisation - Demande spécifique refusée - Client avait un bail dont il a mis fin

Demande de bail client : DHCP Discover. Tous les serveurs DHCP contactés ayant une adresse à proposer diffusent une proposition.

Proposition de bail: DHCP Offer. Le serveur DHCP réserve l'adresse. Si le client ne reçoit pas de proposition pendant 1 seconde, il diffuse trois autres requêtes à 9, 13 et 16 secondes auxquels s'ajoute une durée aléatoire comprise entre 0 et 1000 millisecondes. Après 4 tentatives, il essaie toutes les 5 minutes. Le client sélectionne la première proposition qui lui parvient.

Sélection de bail IP : DHCP Request. Informe tous les serveurs DHCP de son adhésion à un serveur. Cela permet aux serveurs DHCP non sélectionnés de libérer la réservation et au bon serveur de lui répondre.

Accusé de réception du bail IP (conclu) : DHCP ACK. Lorsque le client DHCP reçoit DHCP ACK, TCP/IP est complètement initialisé et est considéré comme un client DHCP lié

 

Message @src @dest Autre

DHCP Discover 0.0.0.0 255.255.255.255 @mac client Nom ordi client

DHCP Offer IP@srv 255.255.255.255 IP Proposé @mac client Masque Durée bail (3J) IPsrv

DHCP Request 0.0.0.0 255.255.255.255 @mac client Nom ordi client IP demandée IPsrv

DHCP ACK IP@srv 255.255.255.255 IP proposé @mac client Masque Durée bail (3J) IPsrv

Options DHCP : IP routeur / Wins / DNS / etc..

IPCONFIG /ALL affiche :–La configuration IP de Windows 3.x ; NT –La configuration IP de la carte réseau

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 106

Page 112: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________IPCONFIG /RENEW permet d'obtenir des options mises à jour et une durée de bailIPCONFIG /RELEASE libère un bail

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 107

Page 113: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

22. L’interface entre TCP/IP et les applicationsL’interface entre un programme d’application et les protocoles du groupe TCP/IP dépend des

détails du système d’exploitation. Rien n’est spécifié à ce propos dans les normes TCP/IP.

Un exemple d’interface utilisée est la socket ( Unix BSD ). Pour utiliser TCP/IP, un programme doit demander la création d’une socket, préciser les adresses IP source et destination ainsi que les ports applicatifs mis en jeu. Ensuite, le programme d’application communique avec TCP/IP par les primitives “read” et “write”.

23. Les programmes d’applicationsCe chapitre aborde brièvement les protocoles d’applications liés au groupe de protocoles

TCP/IP. Ces programmes d’applications permettent aux utilisateurs et aux programmes de communiquer avec des services sur des machines distantes.

Nous citons ci-dessous quelques uns des principaux programmes d’applications reposant sur les protocoles de couches 3 et 4 de TCP/IP.

telnet : terminal distant ou virtuelftp : protocole de transfert de fichierstftp : idem, mais en mode non connecténfs, rfs : accès partagé à des fichierssmtp : courrier électroniquesnmp : management de réseaux

Les chapitres 22 à 25 de Internetworking with TCP/IP détaillent ces différents outils.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 108

Page 114: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

24. Le management de réseau

Un administrateur de réseau a besoin de logiciels lui permettant par exemple de résoudre les différents problèmes qui surviennent sur le réseau, de contrôler le routage et d'effectuer des statistiques sur le trafic.

Dans un environnement TCP/IP, le management de l'inter-réseau est situé au niveau applicatif. Il s'appuie sur TCP/IP pour transmettre les différents messages qu'il induit.

24.1 Architecture des protocoles de management

Le groupe de protocoles TCP/IP n'a pas de protocole standard officiel pour la communication d'informations de management. Deux standards sont toutefois recommandés : SNMP et CMOT.

SNMP (Simple Network Management Protocol) est de loin le plus largement utilisé. CMOT (CMOP over TCP) précise l'utilisation sur une connexion TCP du standard ISO CMIP (Common Management Information Protocol).

Le protocole SNMP (Simple Network Management Protocol) a été développé pour permettre à l’administrateur du réseau d’interroger les éléments de son réseau sans se déplacer. Le principe de SNMP est très simple : sur chacune des machines, on installe un petit programme : l’agent SNMP. Cet agent enregistre en permanence des informations relatives à la machine. Il stocke ces informations dans une MIB (Management Information Base), une base de données. Ainsi, de son ordinateur, l’administrateur peut interroger chacune de ses machines et obtenir les informations qu’il souhaite, comme par exemple le nombre d’octets reçus et envoyés... Il peut aussi modifier certaines informations.

Le protocole SNMP fonctionne au niveau 7 du modèle OSI, mais se situe directement au-dessus d’UDP. Il fonctionne sur un modèle client-serveur, où il n’y a qu’un seul client, la station d’administration (NMS = Network Management Station) et beaucoup de serveur (chaque agent SNMP), le client interrogeant les serveurs pour récupérer les informations. Chaque agent est placé sur un nœud du réseau qui est dit administrable (MN : Managed Node). Ces nœuds peuvent être soit des hôtes (stations de travail ou serveurs), soit des éléments d’interconnexion (switchs, hubs, routeurs), soit des supports physiques (câbles).

Deux types de machines participent au processus de management :

q des agents contenant du soft "agent" et une base de données de gestion des objets et variables propres à la machine. Ils conservent des informations que le ou les managers ont la possibilité d consulter ou de modifier par des requêtes. Ces agents gardent, par exemple, des statistiques sur l'état des interfaces réseau, sur le trafic entrant et sortant, sur les messages d'erreurs générés.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 109

Page 115: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

q un manager (NMS : Network Management Station) à partir duquel est contrôlé et administré le réseau. Un soft de gestion centrale y réside ainsi qu'une base de données globale.

24.2 Les références

SNMP : RFC 1157 et 1155 SNMPv2 : RFC1441 et1452

24.3 La MIB

Référence : RFC 1213 pour la MIB II

Les deux groupes de travail qui ont proposé SNMP et CMOT ont coopéré initialement pour définir un standard concernant les données de management réseau. Ce standard est donc indépendant du protocole utilisé (SNMP ou CMIP).

Connu sous le nom de la MIB ( Management Information Base ), le standard spécifie les types de données qu'un hôte ou un routeur IP doit conserver et les opérations permises sur ces types de données.

La définition initiale de la MIB classe en huit catégories les informations de management (appelées variables MIB) :

q System The host or gateway operating systemq Interfaces Individual network interfacesq addr. trans. Address Translation (ex : ARP)q ip Internet Protocol Softwareq icmp Internet Control Message Protocol softwareq tcp Transmission Control Protocol softwareq udp User Datagram Protocol softwareq egp Exterior Gateway Protocol software

Toute variable MIB est identifiée par une suite de chiffres séparés par des points. Toute identification d'une variable MIB a comme préfixe 1.3.6.1.2.1. Le chiffre suivant compris entre 1 et 8 indique la catégorie à laquelle appartient la variable MIB (system, ip, ...). Le chiffre suivant enfin identifie la variable dans la catégorie.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 110

Page 116: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Par exemple, 1.3.6.1.2.1.4.3 correspondant à la variable ipInReceives

24.4 SMI

Un autre standard appelé SMI (Structure of Management Information) décrit un ensemble de règles utilisées pour définir et identifier les variables MIB..

Pour se retrouver dans la foule d’informations proposées par chaque agent, on a défini une structure particulière pour les informations appelée SMI. Chacune des informations de la MIB peut être retrouvée soit à partir de son nom de variable, soit à partir d’un arbre de classification. Cela revient à parcourir des sous-dossiers et dossiers d’un disque dur…

Supposons que vous souhaitiez consulter la variable System d’un hôte, vous pouvez soit lui demander la variable System directement, soit lui demander la variable ayant pour OID (Object IDentification) 1.3.6.1.2.1.1… correspondant à l’arborescence de la variable (ISO, Identified Organization, dod, Internet, Management, MIB2, System).

Ca parait très lourd à première vue, mais le nombre de variable étant important, on ne peut se souvenir de chaque nom. Par contre, il existe de nombreux logiciel permettant d’explorer la MIB de façon conviviale, en utilisant cette classification.  

SMI définit, par exemple, les types IpAddress (Chaîne de caractères de 4 octets) et Counter (entier entre 0 et 232 -1). C'est à partir de ces types que doivent être définies les variables MIB.

SMI impose également l'utilisation du standard ISO ASN.1 pour définir et référencer les variables MIB.

Au bout d’un moment, les variables choisies pour la MIB (puis la MIB2) se sont avérées insuffisantes pour plusieurs applications. On va donc trouver deux autres types de MIB que sont les Private MIB et les MIB R-MON (Remote network MONitoring).

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 111

Page 117: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________Les Private MIB, représentées en 1.3.6.1.4 dans la classification SMI, permettent aux entreprises de rajouter des variables pour une implémentation particulière des agents SNMP. Cela leur permet d’ajouter de nouvelles variables en fonctions des applications qu’elles veulent développer. Les MIB R-MON permettent par exemple de placer des agents SNMP sur des supports physiques. Sur un câbles, on peut connecter une sonde R-MON qui va enregistrer tout se passe et que le l’administrateur pourra interroger pour avoir des informations sur les collisions, les débits à un endroit précis.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 112

Page 118: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

25. Les Firewalls ou coupe-feu

25.1 Présentation

Le FIREWALL est destiné à garantir la sécurité des échanges entre deux réseaux Il agit sur la couche Application. Il faut absolument désactiver le FORWARDING IP (routage par la couche 3)

25.2 Fonctionnement

Le Firewall sépare physiquement et logiquement deux réseaux (le réseau de l’entreprise et Internet ou deux réseaux dans l’entreprise).

Il filtre les connexions afin d’interdire les intrusions

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 113

Application

Présentation

Session

Transport

Réseau

Liaison

Physique

Eth0Eth1

Application

Présentation

Session

Transport

Réseau

Liaison

Physique

Eth0Eth1

FirewallRouteur

Page 119: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

25.3 Les PROXY

25.3.1 Définition

le serveur PROXY, le FireWall simule l’application et permet de créer véritablement un mur entre le réseau à protéger et Internet.

25.3.2 Fonctionnement

lorsqu’un paquet est reçu, le FireWall l’examine et vérifie les adresses source et destination, l’utilisateur, le type d’application à laquelle il doit accéder et, éventuellementl’interface réseau utilisée. A la différence de ce qui se passe avec les autres techniques, le paquet IP n’est pas renvoyé tel quel. Le FireWall crée un nouveau paquet, mais seulement après que la session soit autorisée, et modifie l’adresse source pour y mettre la sienne, afin de cacher l’adresse de l’utilisateur.

une fois la session établie, le proxy surveille les paquets transmis contre d’éventuelles attaques applicatives connues (ping of death, déni de services, etc .)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 114

routeur

FireWall

FireWall

Intranet

DMZ : Zone Démilitarisée

Internet

ServeurDe

mail

Serveur

Web

Serveur

NFS

Page 120: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26. Annexes

26.1 Interactions des protocoles TCP/IP entre eux

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 115

ping telnet(23)

nfs / xdrrpc

ftp(21)

smtp(25)

trace-route

dns(53)

tftp(69)

ping

tcp(6)

udp(17)

ip(0800)

icmp(1)

igmp

arp(0806)

driver

rarp(0806)

Eth0

Page 121: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.2 La hiérarchie desMIB

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 116

CCITT(0)

org(3)

standard(0)

AutoritéD’enregistrement

(1)

ISO(1)

ISO-CCITT(2)

member(2)

dod(6)

Internet(1)

directory(1)

mgmt.(2)

experimental(3)

private(4)

security(5)

Snmp v2(6)

Mib(1)

system(1)

interfaces(2)

at(3)

ip(4)

icmp(5)

tcp(6)

udp(7)

egp(8)

transmission(10)

1.3.6.1

root

entreprises(1)

Page 122: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.3 Les trames Ethernet

calcul du FCS > 9.6 s

préambule adresse adresse type données CRC temps préambuledestination source longueur + padding inter-trame et SFD

64 bits 6 octets 6 octets 2 octets 46 à 1500 octets 4 octets 96 bits time 8 octets

64 à 1518 octets

type : pour les trames ETHERNET V2.0longueur : pour les trames IEEE 802.3

26.3.1 ETHERNET V2.0 de Xerox, DEC, et INTEL

Préambule/SFD (8 octets ) Destination adresse (6 octets )

Source adresse (6 octets ) Type (2 octets )

Données ( 46 à 1500 octets ) ...

FCS (4 octets )

26.3.2 IEEE 802.3/IS 8802.3 de l’ISO

Préambule/SFD (8 octets ) Destination adresse (6 octets )

Source adresse (6 octets ) Longueur (2 octets )

Données ( 46 à 1500 octets ) ...

FCS (4 octets )

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 117

Page 123: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.3.3 Le champ Type

Le champ Type / LongueurLongueur IEEE 802.3 0000-05DCXNS Internet 0600DoD IP v4 ( Internet Protocol ) 0x0800X25 niveau 3 0x0805Ethernet ARP ( Address Resolution Protocol ) 0x0806Ethernet RARP (Reverse ARP ) 0x8035AppleTalk 0x809BAppleTalk ARP 0x80F3NetWare IPX/SPX 0x8137, et 0x8138IP v6 0x08DD

26.3.4 Le champ adresse constructeur

00-00-0C CISCO 00-00-DD GOULD00-00-0F NeXT 00-00-DE UNIGRAPH00-00-1B NOVELL 00-00-F0 SAMSUNG00-00-6B MIPS 00-20-AF 3COM00-00-6E ARTISOFT 00-60-8C 3COM00-00-93 PROTEON 02-60-8C 3COM00-00-AA XEROX 00-AA-00 INTEL00-00-C0 Western Digital/SMC 08-00-07 APPLE00-00-D8 NOVELL 08-00-5A IBM

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 118

Page 124: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.4 Le format des paquets

26.4.1 Le datagramme IP v4

la taille minimale de l’entête fait 20 octets

b0 b4 b8 b16 b24 b31Version IHL TOS Total Length Field

Flags Fragment OffsetTTL Protocol Header Checksum

IP Source AddressIP Destination Address

Option

Data Field

q Version (4 bits)q IHL : IP Header Length/Longueur de l’entête IP (4 bits), en nombre de mots de 32 bits

avec le champ option (la longueur maximale est de 60 octets)q TOS : Type Of Service (8 bits)q Total Length Field/Longueur totale du datagramme, en nombre d’octets (16 bits)q TTL : Time TO Live (8 bits)q Protocol (8 bits)q Header Checksum (16 bits)q Source Address IP (32 bits)q Destination Addr IP (32 bits)q Option Fieldq Data Field, ce champ encapsule le protocole N+1

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 119

Page 125: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Le TOS : Type Of Servive

0 1 2 3 4 5 6 7Priority D T R Not used

Priority0 Priorité normale7 Supervision réseau

D Si D=1 délai courtT Si T=1 débit de transmission élevéR Si R=1 grande fiabilité

les FLAGS

- RéservéF Si F=1 Fragmentation interditeM More Si M=1 les datagrammes IP sont fragmentés

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 120

Page 126: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.4.2 Le datagramme IP v6

b0 b4 b8 b16 b24 b31Version Prioriy Flow Label

Payload Length Next Header Hop Limit

Source Address

Destination Address

q Version (4 bits)q Priority (4 bits)q Flow Label (24 bits)q Payload Length (16 bits)q Next Header (8 bits)q Hop Limit (8 bits)q Source Address (128 bits)q Destination Addr (128 bits)

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 121

Page 127: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.4.3 Le datagramme ARP

b0 b4 b8 b16 b24 b31Hardware Type Protocol Type

Hard Add Size Protocol Add Size OperationSender’s Hardware Address (byte 0 to 3)

Sender’s Hardware Address (byte 4 to 5) Sender’s IP Address (byte 0 to 1)Sender’s IP Address (byte 2 to 3) Target’s Hardware Address (byte 0 to 1)

Target’s Hardware Address (byte 2 to 5)Target’s IP Address (byte 0 to 3)

Hardware Type / Type de réseau ; 1 Ethernet

Protocol Type / Type de protocole ; 0x0800 IP

Hard Add Size ; longueur en octets de l’adresse physique

Lg adresse protocole ; longueur en octets de l’adresse IP

Opération :

1 Request ARP2.Reply ARP3 Request RARP4 Reply RARP

Sender’s Hardware Address ; adresse physique de l’émetteur de la trame

Sender’s IP Address ; adresse IP de l’émetteur de la trame

Target’s Hardware Address ; adresse physique du destinataire de la trame

Target’s IP Address ; adresse IP du destinataire de la trame

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 122

Page 128: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.4.4 Le paquet TCP

la taille minimale de l’entête fait 20 octets

b0 b4 b8 b16 b24 b31Numéro de port source Numéro de port destination

Numéro de séquenceNuméro d’acquittement

H.L. Reserved Flags Window sizeTCP Checksum Pointeur urgent

Option

Data Field

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 123

Page 129: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.4.5 Le datagramme UDP

la taille minimale de l’entête fait 8 octets

b0 b4 b8 b16 b24 b31Numéro de port source Numéro de port destination

UDP Length UDP Checksum

Option

Data Field

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 124

Page 130: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.5 Le MTU

MTU : Maximum Transmission Unit

Le MTU indique la limite supérieure d’une trame Si IP a un datagramme supérieure au MTU, IP emploie la fragmentation La commande netstat permet de visualiser le MTU des interfaces.

Valeurs représentative de MTU d’après la RFC 1191

Réseau MTU en octetsHyperchannelToken Ring à 16MbpsToken Ring à 4MbpsATMFDDIEthernetIEEE 802.2/802.3X25Point à point (faible retard) (*)

65535179144464

53435215001492576296

(*) SLIP ou PPP

Le MTU de chemin (PATH MTU) est le plus petit MTU d’une trame lorsque celle-ci traverse plusieurs réseaux physiques.

Le MTU est calculé en fonction du temps d’aller et retour (round-trip delay) que prend un paquet ‘interactif’ pour être envoyé et pour retourner quelque chose. Un temps de réponse entre 100 à 200 ms est perçu comme mauvais par un utilisateur.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 125

Page 131: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.6 Analyse de trames

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 126

Page 132: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.6.1 Les trames ARP

26.6.1.1 ARP Request

Frame Time Src MAC Addr Dst MAC Addr Protocol Description41 260.554 3COM 234819 *BROADCAST ARP_RARP ARP:Request

ETHERNET: ETYPE = 0x0806 : Protocol = ARP: Address Resolution Protocol ETHERNET: Destination address : FFFFFFFFFFFF ETHERNET: .......1 = Group address ETHERNET: ......1. = Locally administered address ETHERNET: Source address : 02608C234819 ETHERNET: .......0 = No routing information present ETHERNET: ......1. = Locally administered address ETHERNET: Frame Length : 60 (0x003C) ETHERNET: Ethernet Type : 0x0806 (ARP: Address Resolution Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 46 (0x002E)ARP_RARP: ARP: Request, Target IP: 128.1.1.10 ARP_RARP: Hardware Address Space = 1 (0x1) ARP_RARP: Protocol Address Space = 2048 (0x800) ARP_RARP: Hardware Address Length = 6 (0x6) ARP_RARP: Protocol Address Length = 4 (0x4) ARP_RARP: Opcode = 1 (0x1) ARP_RARP: Sender's Hardware Address = 02608C234819 ARP_RARP: Sender's Protocol Address = 128.1.1.1 ARP_RARP: Target's Hardware Address = 000000000000 ARP_RARP: Target's Protocol Address = 128.1.1.10 ARP_RARP: Frame Padding

00000: FF FF FF FF FF FF 02 60 8C 23 48 19 08 06 00 01 .......̀ .#H.....00010: 08 00 06 04 00 01 02 60 8C 23 48 19 80 01 01 01 .......̀ .#H.....00020: 00 00 00 00 00 00 80 01 01 0A 00 00 00 00 00 13 ................00030: 00 00 00 13 00 00 00 13 31 0A 0C 64 ........1..d

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 127

Page 133: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.6.1.2 ARP Reply

Frame Time Src MAC Addr Dst MAC Addr Protocol Description42 260.558 3COM 234968 3COM 234819 ARP_RARP ARP: Reply

ETHERNET: ETYPE = 0x0806 : Protocol = ARP: Address Resolution Protocol ETHERNET: Destination address : 02608C234819 ETHERNET: .......0 = Individual address ETHERNET: ......1. = Locally administered address ETHERNET: Source address : 02608C234968 ETHERNET: .......0 = No routing information present ETHERNET: ......1. = Locally administered address ETHERNET: Frame Length : 60 (0x003C) ETHERNET: Ethernet Type : 0x0806 (ARP: Address Resolution Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 46 (0x002E)ARP_RARP: ARP: Reply, Target IP: 128.1.1.1 Target Hdwr Addr: 02608C234819 ARP_RARP: Hardware Address Space = 1 (0x1) ARP_RARP: Protocol Address Space = 2048 (0x800) ARP_RARP: Hardware Address Length = 6 (0x6) ARP_RARP: Protocol Address Length = 4 (0x4) ARP_RARP: Opcode = 2 (0x2) ARP_RARP: Sender's Hardware Address = 02608C234968 ARP_RARP: Sender's Protocol Address = 128.1.1.10 ARP_RARP: Target's Hardware Address = 02608C234819 ARP_RARP: Target's Protocol Address = 128.1.1.1 ARP_RARP: Frame Padding

00000: 02 60 8C 23 48 19 02 60 8C 23 49 68 08 06 00 01 .`.#H..`.#Ih....00010: 08 00 06 04 00 02 02 60 8C 23 49 68 80 01 01 0A .......`.#Ih....00020: 02 60 8C 23 48 19 80 01 01 01 00 00 00 00 00 13 .`.#H...........00030: 00 00 00 13 00 00 00 13 31 0A 0C 64 ........1..d

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 128

Page 134: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.6.2 Les trames ICMP

Trace du moniteur réseau Thu 03/18/99 18:35:51 c:\temp\cicmpe.TXT

Trame Heure Adr src MAC Adr dst MAC Protocole Description1 1.925 ZDSN 00A0245A4BBC ICMP Echo

ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol ETHERNET: Destination address : 00A0245A4BBC ETHERNET: .......0 = Individual address ETHERNET: ......0. = Universally administered address ETHERNET: Source address : 00A0245375CF ETHERNET: .......0 = No routing information present ETHERNET: ......0. = Universally administered address ETHERNET: Frame Length : 74 (0x004A) ETHERNET: Ethernet Type : 0x0800 (IP: DOD Internet Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 60 (0x003C) IP: ID = 0x2506; Proto = ICMP; Len: 60 IP: Version = 4 (0x4) IP: Header Length = 20 (0x14) IP: Service Type = 0 (0x0) IP: Precedence = Routine IP: ...0.... = Normal Delay IP: ....0... = Normal Throughput IP: .....0.. = Normal Reliability IP: Total Length = 60 (0x3C) IP: Identification = 9478 (0x2506) IP: Flags Summary = 0 (0x0) IP: .......0 = Last fragment in datagram IP: ......0. = May fragment datagram if necessary IP: Fragment Offset = 0 (0x0) bytes IP: Time to Live = 32 (0x20) IP: Protocol = ICMP - Internet Control Message IP: CheckSum = 0xF1A1 IP: Source Address = 192.168.1.101 IP: Destination Address = 192.168.1.100 IP: Data: Number of data bytes remaining = 40 (0x0028) ICMP: Echo, From 192.168.01.101 To 192.168.01.100 ICMP: Packet Type = Echo ICMP: CheckSum = 0x2F5C ICMP: Identifier = 256 (0x100) ICMP: Sequence Number = 7424 (0x1D00) ICMP: Data: Number of data bytes remaining = 32 (0x0020)

00000: 00 A0 24 5A 4B BC 00 A0 24 53 75 CF 08 00 45 00 ..$ZK...$Su...E.00010: 00 3C 25 06 00 00 20 01 F1 A1 C0 A8 01 65 C0 A8 .<%... ......e..00020: 01 64 08 00 2F 5C 01 00 1D 00 61 62 63 64 65 66 .d../\....abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 129

Page 135: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

Trace du moniteur réseau Thu 03/18/99 18:35:51 c:\temp\cicmpe.TXT

Trame Heure Adr src MAC Adr dst MAC Protocole Description2 1.925 00A0245A4BBC ZDSN ICMP Reply

ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol ETHERNET: Destination address : 00A0245375CF ETHERNET: .......0 = Individual address ETHERNET: ......0. = Universally administered address ETHERNET: Source address : 00A0245A4BBC ETHERNET: .......0 = No routing information present ETHERNET: ......0. = Universally administered address ETHERNET: Frame Length : 74 (0x004A) ETHERNET: Ethernet Type : 0x0800 (IP: DOD Internet Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 60 (0x003C) IP: ID = 0x16AE; Proto = ICMP; Len: 60 IP: Version = 4 (0x4) IP: Header Length = 20 (0x14) IP: Service Type = 0 (0x0) IP: Precedence = Routine IP: ...0.... = Normal Delay IP: ....0... = Normal Throughput IP: .....0.. = Normal Reliability IP: Total Length = 60 (0x3C) IP: Identification = 5806 (0x16AE) IP: Flags Summary = 0 (0x0) IP: .......0 = Last fragment in datagram IP: ......0. = May fragment datagram if necessary IP: Fragment Offset = 0 (0x0) bytes IP: Time to Live = 64 (0x40) IP: Protocol = ICMP - Internet Control Message IP: CheckSum = 0xDFF9 IP: Source Address = 192.168.1.100 IP: Destination Address = 192.168.1.101 IP: Data: Number of data bytes remaining = 40 (0x0028) ICMP: Echo Reply, To 192.168.01.101 From 192.168.01.100 ICMP: Packet Type = Echo Reply ICMP: CheckSum = 0x375C ICMP: Identifier = 256 (0x100) ICMP: Sequence Number = 7424 (0x1D00) ICMP: Data: Number of data bytes remaining = 32 (0x0020)

00000: 00 A0 24 53 75 CF 00 A0 24 5A 4B BC 08 00 45 00 ..$Su...$ZK...E.00010: 00 3C 16 AE 00 00 40 01 DF F9 C0 A8 01 64 C0 A8 .<[email protected]: 01 65 00 00 37 5C 01 00 1D 00 61 62 63 64 65 66 .e..7\....abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 130

Page 136: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

26.6.3 Les trames PING

Trace du moniteur réseau Thu 03/18/99 19:11:34 c:\temp\Capture 9.TXT

****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr1 3.386 ZDSN *BROADCAST ARP_RARP ARP: Request, Target IP: 192.168.1.125

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0806 : Protocol = ARP: Address Resolution Protocol+ ARP_RARP: ARP: Request, Target IP: 192.168.1.125

00000: FF FF FF FF FF FF 00 A0 24 53 75 CF 08 06 00 01 ........$Su.....00010: 08 00 06 04 00 01 00 A0 24 53 75 CF C0 A8 01 65 ........$Su....e00020: 00 00 00 00 00 00 C0 A8 01 7D .........}

****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr2 3.387 00E0B06A43C0 ZDSN ARP_RARP ARP: Reply, Target IP: 192.168.1.101 Target Hdwr Addr: 00A0245375

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0806 : Protocol = ARP: Address Resolution Protocol+ ARP_RARP: ARP: Reply, Target IP: 192.168.1.101 Target Hdwr Addr: 00A0245375CF

00000: 00 A0 24 53 75 CF 00 E0 B0 6A 43 C0 08 06 00 01 ..$Su....jC.....00010: 08 00 06 04 00 02 00 E0 B0 6A 43 C0 C0 A8 01 7D .........jC....}00020: 00 A0 24 53 75 CF C0 A8 01 65 00 00 00 00 00 00 ..$Su....e......00030: 00 00 00 00 00 00 00 00 00 00 00 00 ............

*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr3 3.387 ZDSN 00E0B06A43C0 ICMP Echo, From 192.168.01.101 To 192.168.01.125 192.168.1.101 192.168.1.125 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0xE07; Proto = ICMP; Len: 60+ ICMP: Echo, From 192.168.01.101 To 192.168.01.125

00000: 00 E0 B0 6A 43 C0 00 A0 24 53 75 CF 08 00 45 00 ...jC...$Su...E.00010: 00 3C 0E 07 00 00 20 01 08 88 C0 A8 01 65 C0 A8 .<.... ......e..00020: 01 7D 08 00 2B 5C 01 00 21 00 61 62 63 64 65 66 .}..+\..!.abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr4 3.390 00E0B06A43C0 ZDSN ICMP Echo Reply, To 192.168.01.101 From 192.168.01.125 192.168.1.125 192.168.1.101 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0xE07; Proto = ICMP; Len: 60+ ICMP: Echo Reply, To 192.168.01.101 From 192.168.01.125

00000: 00 A0 24 53 75 CF 00 E0 B0 6A 43 C0 08 00 45 00 ..$Su....jC...E.00010: 00 3C 0E 07 00 00 FF 01 29 87 C0 A8 01 7D C0 A8 .<......)....}..00020: 01 65 00 00 33 5C 01 00 21 00 61 62 63 64 65 66 .e..3\..!.abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 131

Page 137: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr5 4.418 ZDSN 00E0B06A43C0 ICMP Echo, From 192.168.01.101 To 192.168.01.125 192.168.1.101 192.168.1.125 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0xF07; Proto = ICMP; Len: 60+ ICMP: Echo, From 192.168.01.101 To 192.168.01.125

00000: 00 E0 B0 6A 43 C0 00 A0 24 53 75 CF 08 00 45 00 ...jC...$Su...E.00010: 00 3C 0F 07 00 00 20 01 07 88 C0 A8 01 65 C0 A8 .<.... ......e..00020: 01 7D 08 00 2A 5C 01 00 22 00 61 62 63 64 65 66 .}..*\..".abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr6 4.420 00E0B06A43C0 ZDSN ICMP Echo Reply, To 192.168.01.101 From 192.168.01.125 192.168.1.125 192.168.1.101 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0xF07; Proto = ICMP; Len: 60+ ICMP: Echo Reply, To 192.168.01.101 From 192.168.01.125

00000: 00 A0 24 53 75 CF 00 E0 B0 6A 43 C0 08 00 45 00 ..$Su....jC...E.00010: 00 3C 0F 07 00 00 FF 01 28 87 C0 A8 01 7D C0 A8 .<......(....}..00020: 01 65 00 00 32 5C 01 00 22 00 61 62 63 64 65 66 .e..2\..".abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr7 5.419 ZDSN 00E0B06A43C0 ICMP Echo, From 192.168.01.101 To 192.168.01.125 192.168.1.101 192.168.1.125 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0x1007; Proto = ICMP; Len: 60+ ICMP: Echo, From 192.168.01.101 To 192.168.01.125

00000: 00 E0 B0 6A 43 C0 00 A0 24 53 75 CF 08 00 45 00 ...jC...$Su...E.00010: 00 3C 10 07 00 00 20 01 06 88 C0 A8 01 65 C0 A8 .<.... ......e..00020: 01 7D 08 00 29 5C 01 00 23 00 61 62 63 64 65 66 .}..)\..#.abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr8 5.421 00E0B06A43C0 ZDSN ICMP Echo Reply, To 192.168.01.101 From 192.168.01.125 192.168.1.125 192.168.1.101 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0x1007; Proto = ICMP; Len: 60+ ICMP: Echo Reply, To 192.168.01.101 From 192.168.01.125

00000: 00 A0 24 53 75 CF 00 E0 B0 6A 43 C0 08 00 45 00 ..$Su....jC...E.00010: 00 3C 10 07 00 00 FF 01 27 87 C0 A8 01 7D C0 A8 .<......'....}..00020: 01 65 00 00 31 5C 01 00 23 00 61 62 63 64 65 66 .e..1\..#.abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 132

Page 138: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr9 6.422 ZDSN 00E0B06A43C0 ICMP Echo, From 192.168.01.101 To 192.168.01.125 192.168.1.101 192.168.1.125 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0x1107; Proto = ICMP; Len: 60+ ICMP: Echo, From 192.168.01.101 To 192.168.01.125

00000: 00 E0 B0 6A 43 C0 00 A0 24 53 75 CF 08 00 45 00 ...jC...$Su...E.00010: 00 3C 11 07 00 00 20 01 05 88 C0 A8 01 65 C0 A8 .<.... ......e..00020: 01 7D 08 00 28 5C 01 00 24 00 61 62 63 64 65 66 .}..(\..$.abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

*****************************************************************************************************************************************************Trame Heure Adr src MAC Adr dst MAC Protocole Description Autre adr src Autre adr dst Taper une autre adr10 6.424 00E0B06A43C0 ZDSN ICMP Echo Reply, To 192.168.01.101 From 192.168.01.125 192.168.1.125 192.168.1.101 IP

+ FRAME: Base frame properties+ ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol+ IP: ID = 0x1107; Proto = ICMP; Len: 60+ ICMP: Echo Reply, To 192.168.01.101 From 192.168.01.125

00000: 00 A0 24 53 75 CF 00 E0 B0 6A 43 C0 08 00 45 00 ..$Su....jC...E.00010: 00 3C 11 07 00 00 FF 01 26 87 C0 A8 01 7D C0 A8 .<......&....}..00020: 01 65 00 00 30 5C 01 00 24 00 61 62 63 64 65 66 .e..0\..$.abcdef00030: 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 ghijklmnopqrstuv00040: 77 61 62 63 64 65 66 67 68 69 wabcdefghi

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 133

Page 139: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

27. BibliographieRéseaux Locaux normes et protocoles de Pierre ROLIN HERMES

Les Réseaux de Guy PUJOLLE EYROLLESRéseaux de Andrew TANENBAUM Inter EditionsTélécoms de Claude SERVIN MASSONTélécoms et réseaux de Maxime MAIMAN MASSON

ETHERNET et ses évolutions d’Alexis FERRERO Addison-WesleyL’univers des réseaux Ethernet de Nicolas TURIN Inter EditionsPratique des réseaux ATM de Jean-Louis MELIN EYROLLES

Interconnexions Ponts et routeurs de Radia PERLMAN Addison-Wesley

TCP/IP administration de réseau par Craig HUNT Addison-WesleyTCP/IP illustré (Volume 1) par W. Richard STEVENS THONSON publishing

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 134

Page 140: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

28. GLOSSAIRE

A ________________________________________________________________________API Application Programming Interface : Interfaces de programmation d’application

Les API les plus connes sont les sockets de Berkeley (ou Berkeley Sockets) et TLI (Transport Layer Interface) d’ATT.

ARP Address Resolution ProtocolCe protocole détermine l’adresse MAC à partir d’une adresse IP.

ASP Application Service Providers

B ________________________________________________________________________BEEP Blocks Extended Exchange Protocol

Ce protocole serait un successeur à HTTP. Ce protocole se place au-dessus de TLS.

C ________________________________________________________________________CIDR Classless InterDomain Routing

D ________________________________________________________________________DNS Domain Name Server : serveur de nom de domaine

DNS est une base de données distribuée qui fournit la correspondance entre les adresses IP et les noms de machines.

E ________________________________________________________________________Extranet

C’est un réseau reprenant les protocoles Internet (TCP/IP) mais ouvert uniquement à un groupe d’utilisateurs.

F ________________________________________________________________________FTP File Transfert ProtocolFEC Forwarding Equivalence Classes (MPLS)

H ________________________________________________________________________HTTP Hyper Text Transfert Protocol

I ________________________________________________________________________IAB Internet Architecture Board :

L’IAB est l’organisme chargé de la supervision et de la coordination. Il est composé d’environ 15 volontaires internationaux issus de diverses disciplines, et prend en charge la qualité des standards Internet. Il dépend de l’ISOC.

ICMP Internet Control Message ProtocolIETF Internet Engineering Task Force :

L’IETF est le groupe de standardisation à court terme, divisé en 9 zones (applications, routage et adressage, sécurité, etc …). Il développe les spécifications qui deviennent les standards Internet.

IESG Internet Steering Group :C’est un groupe qui fut créé afin d’aider la direction de L’IETF.

IGMP Internet Group Management ProtocolIMAP Internet Messaging Access Protocol : serveur de messagerie

Ce protocole est la suite logique du concept de LAN Emulation (LANE), qui a permis à ATM de s’imposer comme réseau fédérateur (backbone) des réseaux locaux d’entreprise.

IntranetC’est un réseau reprenant les protocoles Internet (TCP/IP) mais ouvert uniquement à une entité

(société, institution, etc.).IP Internet Protocol

C’est un protocole de couche 3 de la pile TCP/IP.IRDP ICMP Router Discovery Protocol

La RFC 1256 mentionne un protocolede découverte de routeurs utilisant ICMP.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 135

Page 141: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________IRTF Internet Research Task Force :

L’IRTF poursuit des recherches sur des projets à long termes.ISP Internet Service ProviderISOC Internet Society :

L’ISOC est une société professionnelle destinée à faciliter, aider, et promouvoir l’évolution et la croissance d’Internet en tant que infrastructure globale de recherche dans le domaine des communications.

L ________________________________________________________________________LANE LAN Emulation :LAP Lightweight Directory Protocol : annuaireLER Label edge Routers (MPLS)LSP Label Switching Routers (MPLS)LSR Label Switched Paths (MPLS)

M _______________________________________________________________________MOSPF Multicast OSPFMPOA Multi Protocol Over ATM :

Ce protocole est la suite logique du concept de LAN Emulation (LANE), qui a permis à ATM de s’imposer comme réseau fédérateur (backbone) des réseaux locaux d’entreprise.

MPLS MultiProtocol Label SwitchingCe protocole gére le traffic réseau en classifiant un paquet en entrée du réseau et lui fait

traverser le nuage de l’opérateur selon un chemin spécifique. Dans chaque datagramme IP on rajoute une extension de 20 bits qui signale la prochaine

interface à atteindre. Une fois parvenue dans un routeur ou un commutateur l’étiquette est décodée puis une table indique sa prochaine destination.

MTU Maximum Transmission UnitCe paramètre indique la longueur maximum d’une trame.

N ________________________________________________________________________NAT Network Address resolutionNCP Network Control Protocol :

Il précéda TCP en tant que couche de protocole transport pour l’ARPANET

O ________________________________________________________________________OSPF Open Shortest Path First

P ________________________________________________________________________PING Packet Internet GroperPOP Post Office Protocol : serveur de messageriePOW Packet Over Wavelength

IP est directement transporté sur la fibre optique.PPP Point to Point ProtocolPPTP Point to Point Tunneling Protocol :

Q ________________________________________________________________________QoS Quality of Service

R ________________________________________________________________________RARP Reverse ARPRFC Request For Comments :

Ils sont la publication de la communauté Internet pour ses standards officiels et ses informations.

RIP Routing Information Protocol

S ________________________________________________________________________SLIP Serial Line IP

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 136

Page 142: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________SNAP Sub-Network Access ProtocolSNMP Simple Network Management ProtocolSMTP Simple Mail Tarnsfert ProtocolSS7 Signaling System 7 :

Protocole de signalisation hors bande (out of band) normalisé par l’UIT. Il décrit les procédures et les protocoles par lesquels les éléments du RTC s’échangent des informations pour établir des appels téléphoniques, les router, les contrôler.

T ________________________________________________________________________TCPTELNET TeleType Network ou Terminal NetworkTLI Transport Layer Interface : d’ATT.TLS Transport Layer Security

U ________________________________________________________________________UDP

V ________________________________________________________________________VPN Virtual Private Network

Ce protocole permet d’ouvrir un « tunnel » entre deux points d’un réseau

X ________________________________________________________________________XTI X/Open Transport Interface :

L’XTI est une extension de TLI, voir TLI et API.

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 137

Page 143: Tcp-ip Support de Cours

Chapitre Error! Use the Home tab to apply Titre 1 to the text that you want to appear here. Error! Use the Home tab to apply Titre 1 to the text that you want to appear here.__________________________________________________________________________________

29. Table d’index

__________________________________________________________________________________

Protocole de communication TCP/IP par F. GODFRYD & Edouard DOS SANTOS page 138