Informatique Générale Brève introduction à Internet
Transcription
Informatique Générale Brève introduction à Internet
Université de Nice – Sophia Antipolis Licence 1 Sciences & Technologies Informatique Générale Brève introduction à Internet Jacques Farré [email protected] http://deptinfo.unice.fr/~jf/InfoGene Jacques Farré 2012 Informatique générale 1/29 Qu'est-ce qu'Internet ? Un réseau de réseaux d'ordinateurs backbone = dorsale : réseau longue distance à très haut débit Jacques Farré 2012 Informatique générale 2/29 Qu'est-ce qu'Internet ? Pour connecter toutes ces machines et ces réseaux, il faut du matériel mettant les machines en contact : cartes réseaux, wifi, concentrateurs (hub), commutateurs (switches), routeurs ... transportant l'information : cables, fibre optique, ondes ... des applications pour échanger du courrier, des données, afficher des pages web, jouer en réseau ... le Web n'est donc qu'un sous-ensemble d'internet des protocoles pour que ces matériels dialoguent, dont : Ethernet pour les liaisons physiques, et une adresse MAC TCP/IP pour le transport de l'information, et une adresse IP (Transmission Control Protocol / Internet Protocol) Jacques Farré 2012 Informatique générale 3/29 Le matériel pour un réseau Concentrateur (hub) : concentre les transmissions Ethernet de, et vers, les appareils (par ex. des PC et une imprimante) d'un même réseau local (une sorte de multiprise) Commutateur (switch) : capable de savoir à qui envoyer l'information dans le réseau local basé sur les adresses mac l'adresse mac est un identifiant unique associé à la carte réseau de votre PC Routeur : capable de déterminer vers quel autre partie du réseau envoyer l'information basé sur les adresses IP (IPv4 essentiellement) l'adresse IP est aussi un identifiant, mais pas nécessairement liée à votre PC (peut changer d'une connexion à l'autre-DHCP) Jacques Farré 2012 Informatique générale 4/29 Le matériel pour un réseau Jacques Farré 2012 Informatique générale 5/29 Les concepts pour un réseaux Commutation de circuits bloque la ”ligne” du début à la fin d'un échange partage des ressources : soit par fréquence, soit par tranches de temps Commutation de paquets découpage des données à transférer en petits ”paquets” les paquets en provenance de et vers diverses machines peuvent se partager les ”lignes” chaque paquet porte sa destination pas d'établissement fixe de connexion : les routeurs essaient de le rapprocher de sa destination en utilisant les routes les moins encombrées Comment organiser les différents niveaux (liaisons, routages, applications...) ? Jacques Farré 2012 Informatique générale 6/29 Modèle OSI en 7 couches et TCP/IP couche 7 6 5 4 3 2 1 rôle Application Présentation Session Transport Réseau Liaison Physique exemple HTTP, SMTP, FTP, Telnet, NFS ... ASCII, Unicode, MIME ... ISO 8327 / CCITT X.225, RPC, ASP ... TCP, UDP, SCTP, SPX, ATP IP (IPv4 ou IPv6), ICMP, IGMP, X.25 ... Ethernet, Token Ring, Wi-Fi, Bluetooth ... lignes téléphoniques, radio ... couches OSI 5, 6, 7 confondues dans le protocole TCP/IP Jacques Farré 2012 Informatique générale 7/29 Modèle OSI et TCP/IP Les routeurs sont connectés à plusieurs réseaux • ils doivent savoir quelle(s) route(s) permettront d'envoyer l'information à destination • ils ne connaissent pas les machines mais les réseaux auxquels elle appartiennent Les messages passent d'abord par une passerelle qui fait la jonction entre le réseau local et l'Internet Jacques Farré 2012 source wikipedia Informatique générale 8/29 Fonctionnement des couches source Frédéric Suter (LORIA) Jacques Farré 2012 Informatique générale 9/29 Forme d'un paquet IP Un paquet (ou datagramme) est constitué d'un en-tête et des données du paquet L'entête fournit un certain nombre de méta-informations, comme la version (Ipv4, Ipv6, stream ...), le type de protocole utilisé (tcp, udp ...), l'adresse de destination ... Pour plus de détails voir par exemple http://www.commentcamarche.net/contents/internet/protip.php3#les-datagrammes Jacques Farré 2012 Informatique générale 10/29 L'adressage TCP/IP But : fournir un service de communication universel permettant à toute machine de communiquer avec toute autre machine du réseau Une machine doit être accessible aussi bien par des humains que par d'autres machines Une machine doit pouvoir être identifiée par : Jacques Farré 2012 un nom (mnémotechnique pour les utilisateurs), une adresse qui doit être un identificateur universel de la machine, une route (basé sur l’appartenance à un réseau) précisant comment la machine peut être atteinte. Informatique générale 11/29 L'adressage TCP/IP Solution : adressage binaire compact assurant un routage efficace Adressage "à plat" par opposition à un adressage hiérarchisé permet l'interconnexion d'égal à égal (pair à pair) Utilisation de noms pour identifier des machines (réalisée à un autre niveau que les protocoles de base : serveurs de noms - DNS) Les adressage IPv4 adresse sur 32 bits "adresse IP" constituée d'une paire (net-id, host-id) où net-id identifie un réseau et host-id identifie une machine sur ce réseau (IPv6 : 32 -> 128 bits) permet de définir cinq classes d'adresse Jacques Farré 2012 Informatique générale 12/29 Classes d'adresses TCP/IP source Philippe Renevier En fait, maintenant un peu plus compliqué avec la notion de sous-réseau Jacques Farré 2012 Informatique générale 13/29 Décodage des adresses TCP/IP Puisque les adresses (IPv4) sont codées sur 4 octets, on les écrit avec 4 chiffres entre 0 et 255 exemple : 134.59.2.13 en binaire : 10000110.00111011.00000010.00001101 donc début de l'adresse 10xxxxxx : réseau de classe B adresse de réseau : 000110.00111011 adresse machine : 00000010.00001101 obtenir l'adresse IP d'une machine : > host polymnie.unice.fr polymnie.unice.fr has address 134.59.2.13 adresses spéciales : le réseaux lui même quand host-id = 0 : 134.59.0.0 toutes les machines quand host-id tout à 1 : 134.59.255.255 machine du réseau local quand net-id = 0, 127.0.0.0 la machine elle même Jacques Farré 2012 Informatique générale 14/29 Décodage des adresses TCP/IP En fait, le modèle initial (net-id, host-id) a montré rapidement ses limites besoin d'introduire la notion de sous-réseaux par exemple, pour unice.fr, de classe B, le host-id autorise 216 machines, mais il serait préférable de différencier celles de Valrose, de Carlone, de Saint Jean d'Angely ... car elles sont administrées indépendamment et forment des sous-réseaux introduction du masque de sous-réseau dans l'adresse IP le masque est un nombre tel que les bits de l'adresse correspondant à réseaux+sous-réseau sont à 1, ceux identifiant l'hôte à 0 on fait un et logique entre masque et adresse pour déterminer le réseau, le sous-réseau, et le n° de la machine dans le sous-réseau Jacques Farré 2012 Informatique générale 15/29 Décodage des adresses TCP/IP Par exemple si le masque est 255.255.255.0, pour l'adresse 134.59.2.13 10000110.00111011.00000010.00001101 et 11111111.11111111.11111111.00000000 = 10000110.00111011.00000010.00000000 donc réseau 134.59, sous-réseau 2, machine 13 L'avantage du masque est qu'il ne fige pas la décomposition de l'adresse : il n'est pas obligé de respecter les frontières d'octets Par exemple si le masque est 255.255.255.240, pour l'adresse 134.59.2.13 10000110.00111011.00000010.00001101 et 11111111.11111111.11111111.11110000 = 10000110.00111011.00000010.00000000 donc réseau 134.59, sous-réseau 2.0 (donc 32), machine 13 Jacques Farré 2012 Informatique générale 16/29 Suivre une route La liaison entre 2 machines peut passer par un nombre importants de routeurs par exemple pour aller de mon PC vers wikipedia : traceroute wikipedia.org Hop 1 2 3 4 5 6 7 8 9 10 11 Jacques Farré 2012 Adresse IP jacques-MS-7309.home 86.193.248.1 10.125.32.78 193.253.86.114 193.252.103.242 81.253.184.46 193.251.254.22 89.149.183.238 173.241.131.218 208.80.154.214 208.80.152.201 Informatique générale 17/29 Adresse statique / adresse dynamique Adressage statique (ou IP fixe) adresse donnée lors de l'installation de la machine par l'administrateur du réseau intervention humaine : manipulations lourdes pour un gros réseau, risque d'erreur ... adresse toujours prise par la machine même si elle est n'est pas en fonctionnement ingérable avec l'extension de l'accès à Internet depuis son domicile Pour remédier à ces inconvénients, introduction de la notion d'adresse dynamique seules les machines en service occupent des adresses les modifications des paramètres du réseau sont répercutées automatiquement le tout est géré par un serveur DHCP (Dynamic Host Configuration Protocol) Jacques Farré 2012 Informatique générale 18/29 Serveur de nom de domaine (DNS) L'adressage IP utilise des numéros : 134.59.9.1 Les humains préfèrent utiliser des noms : deptinfo.unice.fr Comment faire la correspondance ? Une hiérarchie de machines de ”serveurs de noms” : le système est mis en œuvre par une base de données distribuée au niveau mondial Une même machine peut avoir plusieurs noms pour la même adresse IP Les noms sont gérés par un organisme mondial : l’interNIC et les organismes délégués : RIPE, NIC France, NIC Angleterre, etc. n'importe qui peut louer un nom de domaine Votre fournisseur d'accès à Internet (FAI) met à votre disposition un certain nombre d'adresses de serveurs DNS Jacques Farré 2012 Informatique générale 19/29 Protocole DHCP La machine (le client) qui veut se connecter (mais qui n'a pas d'adresse IP fixe) envoie un message vers un serveur (ou plus généralement vers tous les serveurs du réseau) Les serveurs proposent au client une adresse IP et un masque de sous-réseau ce message contient notamment l'adresse MAC du client chaque serveur lui donne aussi son adresse IP Le client retient une des offres (en général la première), et rediffuse vers le réseau son adresse IP et celle du serveur retenu (comme ça les autres peuvent l'oublier) Le serveur retenu confirme au client il lui indique la durée du ”bail” il lui donne aussi en général une adresse de passerelle par défaut et de serveur DNS Jacques Farré 2012 Informatique générale 20/29 Domain Name System (DNS) Le Domain Name System est organisé en hiérarchie : exemple pour de.wikipedia.org la racine Jacques Farré 2012 Informatique générale 21/29 Fonctionnement du DNS Le DNS est entièrement distribué au niveau planétaire Le mécanisme sous-jacent est la délégation de domaine à tout domaine est associé une responsabilité administrative (gérer les noms de domaines et les adresses associées par ex.) Une organisation responsable d’un domaine peut découper le domaine en sous-domaines déléguer les sous-domaines à d’autres organisations : qui deviennent à leur tour responsables du (des) sousdomaine(s) qui leurs sont délégué(s) et peuvent, à leur tour, déléguer la gestion de leurs sousdomaines Le domaine parent contient alors seulement un pointeur vers le sous-domaine délégué; exemple : Jacques Farré 2012 le domaine .fr est géré par un organisme (NIC France) unice.fr est délégué à l’UNS, qui gère donc les données propres à ce sous-domaine Informatique générale 22/29 Fonctionnement du DNS Serveur de nom primaire : maintient la base de données de la zone dont il a l’autorité administrative Serveur de nom secondaire : obtient les données de la zone via un autre serveur de nom qui a également l’autorité administrative interroge périodiquement le serveur de nom primaire et met à jour les données Il y a un serveur primaire et généralement plusieurs secondaires La redondance permet la défaillance éventuelle du primaire et du (des) secondaire(s) Un serveur de nom peut être primaire pour une (des) zone(s) et secondaire pour d’autre(s). Serveur racine (environ 13 au niveau mondial) : pour les noms de 1er niveau, n'appelle jamais d'autre serveur Jacques Farré 2012 Informatique générale 23/29 Résolution d'un nom Le logiciel client demande (via un resolveur) à un serveur de nom de lui donner l'adresse d'un certain nom symbolique comme par exemple > host www.enseignementsup-recherche.gouv.fr www.enseignementsup-recherche.gouv.fr is an alias for rprox.prod.webedu.mnsr.education.fr. rprox.prod.webedu.mnsr.education.fr has address 160.92.166.231 Le resolveur est un processus client qui contacte un serveur de nom dont l’adresse est configurée (ou donnée par DHCP) sur la machine exécutant ce resolveur interprète les réponses et retourne l’information au logiciel appelant gestion de cache éventuelle (dépend de la mise en œuvre) Le serveur de nom peut interroger d’autres serveurs de nom, lorsqu’il n’a pas Informatique autorité sur la zone requise Jacques Farré 2012 générale 24/29 Les principaux types d'application Essentiellement 2 façons de se faire parler 2 machines Client-serveur (on désigne ici autant les logiciels que les machines) le serveur est toujours actif en attente de requêtes, et a une adresse IP fixe (serveurs de pages Web, de courrier, de bases de données ...), et peut s'adresser à d'autres serveurs le client envoie des requêtes,peut avoir une adresse dynamique, ne connaît pas les autres clients Pair à pair (peer to peer, P2P) chaque machine joue à tour de rôle de client et de serveur (on parle de servent) et communiquent plus ou moins directement servent surtout à partager des fichiers Systèmes hybrides entre les 2 : ex. Napster, Skipe, chat ... Jacques Farré 2012 Informatique générale 25/29 Les principaux protocoles Telnet : le côté serveur est assuré par telnetd assez primitif, non sécurisé, donc laissé à des usages limités service à peu près identique rendu par putty sur Windows FTP (File Transfert Protocol) : côté serveur assuré par ftpd par exemple tester les autres protocoles, ou configurer des systèmes n'ayant pas d'interface Web permet d'échanger des fichiers entre 2 machines nombreuses versions graphiques (Cyberduck, FileZilla ...) SFTP forme sécurisée (avec cryptage des données) ssh (secure shell) : pour se connecter sur une autre machine (à condition d'y avoir un compte) à partir de sa machine actuelle ssh [email protected] -X les données sont cryptées Jacques Farré 2012 Informatique générale 26/29 Les principaux protocoles HTTP (Hypertext Transfert Protocol), protocole du Web notion d'URL (Uniform Resource Locator) pour l'identification des documents (pages web, mais aussi pdf, gif, wav ...) requêtes du client au serveur composées de (depuis HTTP.1) une ligne indiquant : méthode, URL, version du protocole GET /repertoire/page.html HTTP 1.1 des lignes d'entête facultatives Accept : text/html User-agent : Mozilla/4.0 Le corps de la requête, possiblement vide ce peut être par exemple les données entrées dans un formulaire le serveur renvoie (notamment) un code réponse dont le fameux 404 Not Found Jacques Farré 2012 Informatique générale 27/29 Les principaux protocoles SMTP (Simple Mail Transfer Protocol) POP (Post Office Protocol) et IMAP (Internet Message Access Protocol) permettent de lire les messages présents sur le serveur à partir d'un client de messagerie pour transférer un courrier vers un serveur de messagerie (de celui qui envoie le message) qui le fait suivre au serveur de messagerie de celui auquel le message est destiné SMTP ne permet pas de récupérer à distance les messages laissés sur la messagerie POP : rapatrie les messages sur la machine client de messagerie (lire de préférence ses courriers toujours sur la même machine) IMAP : permet de laisser les messages sur le serveur (donc nécessite une connection pour (re)lire ses courriers HTTP (webmail) : pas besoin de client de messagerie Jacques Farré 2012 Informatique générale 28/29 Ports des principaux protocoles Un port informatique est soit matériel : internes ou externes, pour brancher un périphérique logiciel : par lequel un certain logiciel est à l'écoute d'informations venant de l'extérieur (ou pour emettre desinformations) Ports des principaux protocoles IP DHCP : 67 FTP : 21 (20 en sortie) SSH : 22 SMTP : 25 DNS : 53 HTTP : 80 POP : 110 IMAP : 143 Jacques Farré 2012 Informatique générale 29/29