Cours D.Introduction Tcp-Ip.Pdf
Total Page:16
File Type:pdf, Size:1020Kb
Cours d’introduction `aTCP/IP Fran¸coisLaissus Version du 25 f´evrier2009 ii Copyright°c 1999 - 2009 — $Rev: 131 $ — Fran¸coisLaissus Avant propos Les sources de ce document sont d´evelopp´ees,g´er´eeset conserv´eesgrˆace aux services de FreeBSD1, remarquable syst`emed’exploitation OpenSource ! Les divers fichiers qui composent le source sont ´edit´es`al’aide de l’´editeur de texte vi ; l’historique des modifications est confi´eaux bons soins de l’outil subversion (gestionnaire de versions). L’ensemble du processus de fabrica- tion est pilot´epar une poign´eede fichiers Makefile (commande make). La mise en forme s’effectue grˆaceau logiciel LATEX. Les figures sont des- sin´eessous “ X Window Systems ”(X11) `al’aide du logiciel xfig et int´egr´ees directement dans le document final sous forme de PostScript encapsul´e.Les listings des exemples de code C ont ´et´efabriqu´es`al’aide du logiciel a2ps et inclus dans le document final ´egalement en PostScript encapsul´e. La sortie papier a ´et´eimprim´eeen PostScript sur une imprimante de type laser, avec dvips. La version pdf est une transformation du format PostScript `al’aide du logiciel dvipdfm, enfin la version HTML est traduite directement en HTML `apartir du format LATEX `al’aide du logiciel latex2html. Tous les outils ou formats utilis´essont en acc`esou usage libre, c’est `adire sans versement de droit `aleurs auteurs respectifs. Qu’ils en soient remerci´es pour leurs contributions inestimables au monde informatique libre et ouvert ! Je remercie ´egalement Jean-Jacques Dh´enin et les nombreux lecteurs que je ne connais qu’au travers de leur e-mails, d’avoir bien voulu prendre le temps de relire l’int´egralit´ede ce cours et de me faire part des innombrables erreurs et coquilles typographiques qu’il comporte, merci encore ! Ce support de cours est en consultation libre `acette url : HTML http://www.laissus.fr/cours/cours.html Ou `at´el´echarger au format PDF : HTTP http://www.laissus.fr/cours/cours.pdf FTP ftp://ftp.laissus.fr/pub/cours/cours.pdf D’autres formats (.ps,.dvi,. .) sont accessibles dans ce r´epertoire : HTTP http://www.laissus.fr/pub/cours/ FTP ftp://ftp.laissus.fr/pub/cours/ 1http://www.freebsd.org/ iii Copyright°c 1999 - 2009 — $Rev: 131 $ — Fran¸coisLaissus Historique des principaux changements A` ce jour(25/02/2009), ce document existe et est accessible sur l’Internet depuis le milieu des ann´ees90. De tr`esnombreux internautes l’ont t´el´echarg´e et m’ont renvoy´eleurs commentaires. Il ´etaitdonc plus que temps de garder une trace des principales modifications et restructurations afin que ces lec- teurs fid`elespuissent suivre les modifications et, peut ˆetre,t´el´echarger une nouvelle version en connaissance de cause ! Version du 25 F´evrier2009 Restructuration de l’ensemble en quatre parties princi- pales (A,B,C, D) et un index g´en´eral.Ajout d’une partie “ R´eseauxIP avanc´es”. Ajout d’un chapitre sur SNMP et d’un chapitre sur le routage dynamique. Ajout d’un changelog, cette page. Le .pdf est maintenant r´eactif,les urls, les renvois de pages, le sommaire, les listes de tableaux et figures. Nombreuses corrections et mises `ajour de tous les chapitres depuis la version du 14 octobre 2007. iv Table des mati`eres Pr´eface xxi A Introduction `ala pile ARPA 1 I R´eseauxlocaux 3 1 Pr´eambule ............................. 3 2 G´en´eralit´es- LANs ........................ 3 2.1 G´en´eralit´es ........................ 3 2.2 Mod`elede communication OSI ............. 4 3 R´eseauxlocaux .......................... 7 3.1 Qu’est-ce qu’un LAN ? .................. 7 3.2 WAN - MAN ....................... 8 3.3 Communications inter-r´eseaux .............. 8 4 Couche 2 - Liaison (Data Link) ................. 9 4.1 Caract´eristiquesd’Ethernet ............... 9 4.1.1 Quelques principes fondamentaux ....... 9 4.1.2 Format d’une “ Frame Ethernet ” ....... 10 4.1.3 Adresses IEEE 802.3 ou Ethernet ....... 11 4.1.4 Unicast, multicast et broadcast ........ 12 4.2 Diff´erencesEthernet - 802.2/802.3 ............ 13 5 Interconnexion - Technologie ´el´ementaire ............ 14 5.1 Raccordement ....................... 15 5.1.1 10Base5 ..................... 15 5.1.2 10Base2 ..................... 15 5.1.3 10BaseT ..................... 16 5.1.4 Fibre optique .................. 16 5.1.5 Conclusion ................... 17 5.2 R´ep´eteur .......................... 17 5.3 Concentrateur ....................... 18 5.4 Ponts ........................... 19 5.5 Commutateurs ...................... 20 5.6 Passerelles — Routeurs .................. 22 6 Bibliographie ........................... 23 II Introduction `aIP 25 vi TABLE DES MATIERES` 1 TCP/IP et l’Internet - Un peu d’histoire ............ 25 2 Caract´eristiquesde TCP/IP ................... 27 3 Comparaison TCP/IP — ISO .................. 28 3.1 Couche “ Application Layer ” .............. 29 3.2 Couche “ Transport Layer ” ............... 29 3.3 Couche “ Internet Layer ” ................ 30 3.4 Couche “ Network Access ” ............... 30 4 Encapsulation d’IP ........................ 30 5 Bibliographie ........................... 31 III Anatomie d’une adresse IP 33 1 Adressage IP .......................... 33 1.1 Unicit´ede l’adresse .................... 33 1.2 D´elivrancedes adresses IPv4 ............... 34 2 Anatomie d’une adresse IP .................... 35 2.1 D´ecomposition en classes ................. 35 2.2 Adresses particuli`eres ................... 37 2.3 Sous-r´eseaux ........................ 38 2.4 CIDR ........................... 40 2.5 Pr´ecisionssur le broadcast ................ 41 3 Adressage multicast ........................ 42 3.1 Adresse de groupe multicast ............... 42 3.2 Adresse multicast et adresse MAC ............ 43 4 Conclusion et bibliographie .................... 44 IV Protocole IP 47 1 Datagramme IP .......................... 47 1.1 Structure de l’en-tˆete ................... 47 1.2 Network Byte Order ................... 48 1.3 Description de l’en-tˆete .................. 49 1.4 Fragmentation IP - MTU ................ 52 1.4.1 Fragmentation ................. 52 1.4.2 R´eassemblage .................. 53 2 Protocole ARP .......................... 55 2.1 Fonctionnement ...................... 55 2.2 Format du datagramme ................. 57 2.3 Proxy ARP ........................ 58 3 Protocole RARP ......................... 58 4 Protocole ICMP .......................... 59 4.1 Le syst`emede messages d’erreur ............. 59 4.2 Format des messages ICMP ............... 60 4.3 Quelques types de messages ICMP ............ 61 5 Protocole IGMP .......................... 63 5.1 Description de l’en-tˆete .................. 63 5.2 Fonctionnement du protocole .............. 64 TABLE DES MATIERES` vii 5.3 Fonctionnement du Mbone ................ 65 6 Routage IP ............................ 66 6.1 Table de routage ..................... 67 6.2 Routage statique ..................... 69 6.2.1 Algorithme de routage ............. 70 6.3 Routage dynamique .................... 71 6.3.1 RIP — “ Routing Information Protocol ” .. 72 6.3.2 OSPF — “ Open Shortest Path First ” .... 73 6.4 D´ecouverte de routeur et propagation de routes .... 73 6.5 Message ICMP “ redirect ” ............... 74 6.6 Interface de “ loopback ” ................ 75 7 Finalement, comment ¸camarche ? ................ 76 8 Conclusion sur IP ......................... 78 9 Bibliographie ........................... 79 V Protocole UDP 81 1 UDP – User Datagram Protocol ................. 81 1.1 Identification de la destination .............. 81 1.2 Description de l’en-tˆete .................. 83 1.3 Ports r´eserv´es— ports disponibles ........... 85 1.3.1 Attribution des ports “ancienne m´ethode” .. 86 1.3.2 Attribution des ports “nouvelle m´ethode” .. 86 2 Bibliographie ........................... 87 VI Protocole TCP 89 1 TCP – Transmission Control Protocol .............. 89 1.1 Caract´eristiquesde TCP ................. 89 1.2 Description de l’en-tˆete .................. 91 2 D´ebutet clˆotured’une connexion ................ 94 2.1 Etablissement´ d’une connexion ............. 94 2.2 Clˆotured’une connexion ................. 95 2.2.1 Clˆoturecanonique ............... 95 2.2.2 Clˆotureabrupte ................. 96 3 Contrˆoledu transport ...................... 97 3.1 M´ecanismede l’acquittement .............. 97 3.2 Fenˆetresglissantes .................... 98 4 Compl´ements sur le fonctionnement de TCP ........... 100 4.1 Algorithme de Nagle ................... 100 4.2 D´epartlent ........................ 101 4.3 Evitement´ de congestion ................. 101 5 Paquets captur´es,comment´es .................. 102 6 Conclusion sur TCP ....................... 105 7 Bibliographie ........................... 105 viii TABLE DES MATIERES` B R´eseauxIP avanc´es 107 VII Routage dynamique d’IP 109 1 Introduction & rappels ...................... 109 1.1 IGP, EGP, Syst`emeautonome .............. 110 1.2 Vecteur de distances vs Etat´ de liens .......... 111 2 Routage avec RIP ......................... 113 2.1 En fonctionnement .................... 114 2.1.1 Horizon partag´eou Split horizon ....... 116 2.1.2 Mises `ajour d´eclench´eesou Triggered updates 117 2.2 Le protocole RIPv1 vs RIPv2 .............. 118 2.3 Algorithme Bellman-Ford ................ 120 2.3.1 M´etrique .................... 120 2.4 Conclusion ......................... 120 2.4.1 Points forts ................... 120 2.4.2 Points faibles .................. 120 3 Routage avec OSPF ....................... 121 3.1 Grandes lignes de fonctionnement ............ 121 3.2 RIP vs OSPF ....................... 122 3.3 Principe de propagation