Summary

This document provides an overview of computer networks, including their history, structure, and protocols. It also covers topics like internet, network organization, and key concepts, suitable for a second-year computer science course at a university.

Full Transcript

L2 Informatique Réseau [email protected] Informations Générales Code Apogée : 4TIN310U / BCC Prog Responsable : [email protected] Public Étudiants : L2 Info Moodle : https://moodle.u-bordeaux.fr/course/view.php?id=16952 Or...

L2 Informatique Réseau [email protected] Informations Générales Code Apogée : 4TIN310U / BCC Prog Responsable : [email protected] Public Étudiants : L2 Info Moodle : https://moodle.u-bordeaux.fr/course/view.php?id=16952 Organisation : 12 CM + 12 séance de 2h40 (TD/TM ou TM/TM) Prérequis : conversion binaire/décimale/hexadécimal, terminal Unix / Python M3C : Contrôle Continu Intégral (6 ECTS) ○ pas de seconde session ! Evaluation (en général) ○ Rapports TPs : 10% (individuel) ○ Diverses Activités Moodle : 10% ○ Projet : 20% (binôme) ○ TP Noté : 30% ○ DST : 30% Organisation des Séances Sem. 12 CM (1h20) 12 séances de TD/TP (2h40) 36 CM01 - Introduction 37 CM02 - Introduction TD01 - Débit et Latence TP01 - Commandes de Base 38 CM03 - Couche Réseau TD02 - Réseau et Sous-Réseau TP02 - Configuration d’un LAN 39 CM04 - Couche Réseau TD03 - Analyse de Trames TP03 - Wireshark 40 CM05 - Couche Réseau TD04 - Contrôle d’Erreur TP04 - Scapy 41 CM06 - Couche Transport TP05a - Socket (client) 42 CM07 - Couche Application TP05b - Socket (serveur) 43 CM08 - Couche Application TP05c - Socket (chat) 44 Vacances 45 Semaine OP2 46 CM09 - Routage & Firewall TP06 - Routage & Firewall + TP Noté Rx (jeudi matin) 47 CM10 - Sécurité TP07 - Sécurité 48 CM11 - Couche Basse TP - Projet 49 CM12 - Couche Basse TP - Projet 50 FIN TP08 - Web Cours 1 Introduction Un peu d’Histoire... 1832 – télégraphe électrique de Morse 1876 – invention du téléphone par Graham Bell 1948 – invention du transistor 1955 – premier réseau commercial pour Americal Airline réalisé par IBM (1200 téléscripteurs, infrastructure centralisé) 1956 – premier câble téléphonique transocéanique American Airline. Source : Wikipedia Un peu d’Histoire... 1958 – premier Modem (transfert binaire sur ligne téléphonique) 1961 – théorie sur la commutation de paquet (L. Kleinrock, MIT) 1962 – satellite Telstar1 (première liaison de télévision transocéanique) 1969 – permier pas de l'homme sur la lune (en direct) 1979 – premier réseau mondial de transmission de données par paquets X.25 ouvert au public (réseau Transpac en France) 1981-2012 – Minitel en France, basé sur Transpac (modem 1200 bits/s) Minitel 1B. Source : Wikipedia Un peu d’Histoire... 1959-1968 – programme ARPA (DoD) 1969 – Arpanet, basé sur le protocole NCP 1971 – Cyclades, un Arpanet français à base de datagramme (Louis Pouzin) 1973 – première publication sur TCP/IP (Vinton Cerf & Bob Kahn) 1983 – naissance d’Internet sur la base Arpanet qui adopte TCP/IP ○ mail, newsgroup, telnet,... Arpanet map. Source : Wikipedia Arpanet en 1974. Source : Wikipedia Internet Internet : réseau informatique mondial, résultant de l'interconnexion d'une multitude de réseaux informatiques à travers la planète, unifiées grâce au protocole IP. Protocole réseau : un protocole définit de manière formelle et interopérable l'échange des informations entre ordinateurs. Internet 1990 – démocratisation d'Internet (invention du web) 1990-2000 – ouverture au grand public avec les FAI (ou ISP) 2005 – 1 milliard d’internautes 2010 – 2 milliard d’internautes 2020 – aujourd’hui, 4.8 milliard d'internautes !!! Source : https://www.internetlivestats.com Accès à Internet dans le Monde Internet users in 2015 as a percentage of a country's population. Source: International Telecommunications Union. Internet Interconnexion de multiples réseaux hétérogènes et distants… une structure hièrarchique shark attack ! Exemple de Renater Réseau universitaire français… La Gouvernance d’Internet Plusieurs organismes en charge de la gestion d'Internet : ICANN, IETF, ISOC élaboration des standards techniques, attribution des noms de domaines, attribution des blocs d’adresses IP, attribution des numéros de d’AS (Autonomous System). → Garantir la neutralité du réseau et la libre circulation de l’information. Pays restreignant l'accès à Internet d'après Reporters sans frontières (2006). Source : Wikipedia Web Web (ou la toile) : l'ensemble des hyperliens (ou liens hypertextes) qui relient les pages web entre elles. Ne pas confondre Internet et le Web, qui est un des nombreux services Internet ! Premier serveur Web, Tim Berners-Lee au CERN. Source : Wikipedia Web Serveur Web : ordinateur qui contient les ressources du Web (pages, media, …) et les met à disposition sur Internet. Ex. : www.google.com, fr.wikipedia.org, … Navigateur Web : logiciel (client du serveur Web) permettant de consulter les ressources du Web. Ex. : Internet Explorer, Edge, Firefox, Safari, Chrome, … Web HTTP (HyperText Transfert Protocol) : protocole de transfert des pages HTML permettant de naviguer sur le Web (HTTPS pour la version sécurisée). HTML (Hypertext Markup Language) : langage à balise pour représenter les pages Web (mise en forme, liens hypertextes, ressources multimédias, …). Moteur de Recherche Moteur de recherche : outil permettant de retrouver des pages Web à partir d'une requête Ex. : Google, Bing, Qwant, … Indexation automatique : les pages du Web sont parcourues automatiquement par un « robot » et analysées pour en extraire des mots-clés significatifs. Ordre des réponses : il dépend de l'adéquation des mot-clefs et de la popularité de la page web : nombre de liens vers la page (PageRank de Google) les clics des utilisateurs sur la page de réponse Messagerie Electronique Messagerie électronique : outil permettant d'échanger des messages (courriel ou mail) de manière asynchrone par l'intermédiaire d'une boîte à lettres électronique identifiée par une adresse électronique. Adresse életronique : [email protected] Client de messagerie local ou application webmail Ex. : Thunderbird, Outlook, … vs Gmail, Yahoo!,... Messagerie Electronique Principe d'acheminement d'un courriel Envoi : lorsqu'un expéditeur envoie un courriel, son ordinateur soumet une reqûete au serveur sortant (SMTP), qui l'achemine vers le serveur entrant du destinataire Réception : lorsqu'un destinataire relève ses courriels, ils sont téléchargés sur son ordinateur depuis le serveur entrant (POP3 ou IMAP) Notion de Protocole Protocole : Spécification de plusieurs règles pour communiquer sur une même couche d'abstraction entre deux machines. Modèle en Couche OSI (simplifié) Application → HTTP, FTP, DNS, … (data) Transport → TCP, UDP (segment) Network → Internet (IP) (packet) Data Link → Ethernet, Token Ring, ATM, … (frame) Physical → 10BASE-T (RJ45), WiFi, ADSL, V92 (modem RTC), … (bit) Modèle OSI vs TCP/IP Source : https://linux-note.com/modele-osi-et-tcpip/ Modèle en Couche OSI 1. Couche physique (physical layer) : transmission effective des signaux entre les interlocuteurs ; service typiquement limité à l'émission et la réception d'un bit ou d'un train de bit continu. 2. Couche liaison de données (datalink layer) : communications entre deux machines adjacentes, i.e. directement reliés entre elle par un support physique. 3. Couche réseaux (network layer) : communications de bout en bout, généralement entre machines (adressage logique et routage des paquets). 4. Couche transport (transport layer) : communications de bout en bout entre programmes (UDP, TCP). 5. Couche session (session layer) : synchronisation des échanges et transaction, permet l'ouverture et la fermeture de session. 6. Couche présentation : codage des données applicatives, et plus précisément conversion entre données manipulées au niveau applicatif et chaînes d'octets effectivement transmises 7. Couche application : point d'accès aux services réseaux ; non spécifiée. De la Théorie à la Réalité… Evolution du modèle TCP/IP, de patch en patch, 50 ans plus tard ! Source : Louis Pouzin Exemple du Protocole HTTP En pratique, plusieurs niveaux d’interactions... le niveau de l’application : le client clique sur un lien, le serveur renvoie une page web le niveau des messages : le client envoie un message contenant une URI, le serveur renvoie un message contenant un fichier HTML le niveau des paquets : le message du client est découpé en paquets, les différents routeurs du réseau les acheminent vers le serveur (idem pour le retour) le niveau de la transmission des bits : pour envoyer les paquets, chaque bit (0 ou 1) est transmis comme un signal électrique sur une ligne. Chaque niveau utilise les fonctions du niveau inférieur. Frame IP TCP HTTP Frame Data Header Header Header Header Trailer Exemple du Protocole HTTP Encapsulation des protocoles… Data Une page web (HTML) HTTP HTTP Couche Application (HTTP) Header Data TCP TCP Header Data Couche Transport (TCP) IP IP Couche Réseau (IP) Header Data Frame Frame Frame Couche Liaison (Ethernet) Header Data Trailer Débit et Latence Débit : nombre de bits que le réseau peut transporter par seconde… asymétrie : débit montant (upload) & débit descendant (download) Latence : nombre de secondes que met le premier bit pour aller de la source à la destination… Quelques exemples de débits (en bit/s) modem RTC 56K, ADSL (1M à 8M), FTTH (1G) Ethernet (10M, 100M, 1G, 10G), ATM (155M), FDDI (100M), … sans-fil : IEEE 802.11 (11M à 54M) GSM : 3G (144K-1,9M), EDGE (64k-384k), 3G+ (3,6M, 14,4M), 4G (100M-1G), 5G (10G) … Nota Bene : 1 octet = 8 bits ; 1Ko = 10³ octets et non 1024 = 2^10 ! Débit et Latence Débit et Latence Exercice : Sneakernet On souhaite transférer 4 Go de données entre deux villes distantes de 100 km. Plusieurs moyens de transfert sont envisagés : 1. Un pigeon voyageur portant un carte microSD, volant à une vitesse de 60 à 110 km/h selon la direction du vent ; 2. Le réseau Internet avec ligne ADSL2 ayant un débit descendant de 8Mbit/s et montant de 1 Mbit/s. Calculez le débit du pigeon ? Quel moyen de transfert est le plus performant ? Débit et Latence Correction Le pigeon va mettre au plus 100 km / (60 km/h / 3600 s/h) = 6000 s pour transporter 4 Go = 4 000 Mo = 32 000 Mbit, ce qui nous donne un débit de 32 000 Mbit / 6000 s = 5.33 Mbit/s... Le transfert en ADSL est limité par le débit montant qui est de 1 Mbit/s... Le pigeon voyageur est donc 5 fois plus rapide que l'ADSL2. Ceci a été réellement expérimenté ! https://en.wikipedia.org/wiki/Sneakernet Sneakers Configuration d’un Réseau Notions de base à découvrir & comprendre… carte réseau, interface, switch, Ethernet, réseau local (LAN) adresse physique (MAC), adresse IP (privé / public), masque (/24), … réseau local (LAN), passerelle (gateway), routage, … quelques services de base : LDAP, NFS, DNS, DHCP, SSH, … quelques commandes de base : ifconfig, ping, route, … Exemple d’un petit réseau local à la maison… Internet 193.50.110.254/24 (eth1) laptop modem ADSL ou FTTH Ethernet filaire (ou sans fil) 192.168.0.1/24 192.168.0.x/24 192.168.0.254/24 (eth0) (eth0) Les Commandes de Base (ping) ping : tester si machine est en vie (requête echo du protocole IP/ICMP) $ ping 10.0.204.4 PING 10.0.204.4 (10.0.204.4) 56(84) bytes of data. 64 bytes from 10.0.204.4: icmp_seq=1 ttl=63 time=0.202 ms 64 bytes from 10.0.204.4: icmp_seq=2 ttl=63 time=0.206 ms 64 bytes from 10.0.204.4: icmp_seq=3 ttl=63 time=0.200 ms 64 bytes from 10.0.204.4: icmp_seq=4 ttl=63 time=0.213 ms ^C --- 10.0.204.4 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 57ms rtt min/avg/max/mdev = 0.200/0.205/0.213/0.011 ms Le RTT (Round-Trip Time) mesure le temps d’aller-retour du paquet, qui est une approximation de la latence x 2. Les Commandes de Base (config IP) ifconfig : affichage des interfaces réseaux… auesnard@buffet:~$ /sbin/ifconfig eth0: flags=4163 mtu 9000 inet 10.0.204.4 netmask 255.255.255.0 broadcast 10.0.204.255 inet6 fe80::24e:1ff:fec4:7f4 prefixlen 64 scopeid 0x20 inet6 2001:660:6101:800:204::4 prefixlen 80 scopeid 0x0 ether 00:4e:01:c4:07:f4 txqueuelen 1000 (Ethernet) RX packets 3168136 bytes 11489530817 (10.7 GiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2066596 bytes 280233134 (267.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 20 memory 0x94300000-94320000 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Boucle locale) RX packets 127449 bytes 9066029 (8.6 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 127449 bytes 9066029 (8.6 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ip link / ip addr : une commande plus moderne… Les Commandes de Base (ipcalc) ipcalc : une calculatrice pour les réseaux IP $ ipcalc 192.168.10.1/24 Address: 192.168.10.1 11000000.10101000.00001010. 00000001 Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000 Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111 Network: 192.168.10.0/24 11000000.10101000.00001010. 00000000 HostMin: 192.168.10.1 11000000.10101000.00001010. 00000001 HostMax: 192.168.10.254 11000000.10101000.00001010. 11111110 Broadcast: 192.168.10.255 11000000.10101000.00001010. 11111111 Hosts/Net: 254 Class C, Private Internet Les Commandes de Base (DNS) nslookup & host : interroger le serveur DNS (Domain Name System) pour trouver l’adresse IP (IPv4 et/ou IPv6) associée à un nom de machine… $ nslookup www.google.com Server: 10.0.220.1 Host is up (0.0035s latency). Nmap scan report for 192.168.0.100 => Host is up (0.10s latency). Nmap scan report for 192.168.0.101 => Host is up (0.036s latency). Nmap scan report for 192.168.0.106 => Host is up (0.00026s latency). Nmap scan report for 192.168.0.10 => Host is up (0.0064s latency). Nmap scan report for 192.168.0.11 => Host is up (0.0026s latency). Nmap scan report for 192.168.0.50 => Host is up (0.013s latency). Nmap scan report for 192.168.0.254 => Host is up (0.0030s latency). Nmap done: 512 IP addresses (8 hosts up) scanned in 4.56 seconds Les Commandes de Base (scan d’une machine) # basic scan # syn scan (root privilege required) $ nmap 192.168.0.254 $ nmap -sS 192.168.0.100 -p 1-100 Nmap scan report for 192.168.0.254 Nmap scan report for 192.168.1.11 Host is up (0.0031s latency). Host is up (0.0045s latency). Not shown: 985 filtered ports Not shown: 96 closed ports PORT STATE SERVICE PORT STATE SERVICE 21/tcp closed ftp 21/tcp open ftp 53/tcp open domain 22/tcp open ssh 80/tcp open http 23/tcp open telnet 139/tcp open netbios-ssn 80/tcp open http 443/tcp open https 445/tcp open microsoft-ds 548/tcp closed afp 554/tcp open rtsp 1723/tcp closed pptp 5000/tcp open upnp 5001/tcp closed commplex-link 5678/tcp open rrac 6000/tcp closed X11 8090/tcp open opsmessaging 9091/tcp open xmltec-xmlmail Les Commandes de Base (routage) Configuration dans le réseau 192.168.10.0/24 de la machine D comme passerelle vers Internet... Internet 193.50.110.254 (eth1) A B C D 192.168.10.1.10.2.10.3.10.4 (eth0) Table de routage attendue pour les machines hôtes (A, B, C) du LAN : $ route -n DestAddr Gateway GenMask Flags Interface 192.168.10.0 * 255.255.255.0 U eth0 default 192.168.10.4 0.0.0.0 UG eth0 En bleu, route directe configurée implicitement par ifconfig eth0… En rouge, la route par défaut qu’il faut ajouter explicitement en indiquant l’adresse de la passerelle Les Commandes de Base (traceroute) traceroute : Outil qui permet de retrouver le chemin d’un paquet sur Internet. Exemple : route vers le serveur Web du LaBRI $ traceroute www.labri.fr traceroute to www.labri.fr (147.210.8.59), 30 hops max, 60 byte packets 1 _gateway (192.168.1.254) 0.931 ms 2 p25.socabim.isdnet.net (194.149.169.41) 35.552 ms 3 free-paris-por1.bb.ip-plus.net (193.5.122.58) 36.783 ms 4 193.51.187.208 (193.51.187.208) 34.955 ms 5 te2-2-lyon2-rtr-021.noc.renater.fr (193.51.177.43) 49.554 6 te0-0-0-5-lyon1-rtr-001.noc.renater.fr (193.51.177.216) 50.311 ms 7 te0-0-0-0-ren-nr-clermont-rtr-091.noc.renater.fr (193.51.177.227) 49.938 ms 8 te0-0-0-0-ren-nr-bordeaux-rtr-091.noc.renater.fr (193.51.177.84) 51.531 ms 9 reaumur-vl10-gi8-1-bordeaux-rtr-021.noc.renater.fr (193.51.183.37) 49.163 ms 10 147.210.246.205 (147.210.246.205) 48.959 ms 11 www3.labri.fr (147.210.8.59) 54.947 ms La route est parfois longue ! On part de Talence (chez moi), on monte à Paris avec le backbone de Free, avant de revenir pas le réseau Renater par Lyon, Clermont, puis retour sur Talence ! Les Commandes de Base Les outils de base sous Linux & Windows…

Use Quizgecko on...
Browser
Browser