diff --git a/reseau/adressage_ip/README.md b/reseau/adressage_ip/README.md index 740fece..97e990c 100644 --- a/reseau/adressage_ip/README.md +++ b/reseau/adressage_ip/README.md @@ -165,8 +165,8 @@ Puisque 45 est compris entre **32** et **48**, notre réseau commence à 32. | CIDR | Masque | Nombre magique | Nombre d'hôtes | |------|--------|----------------|----------------| -| /8 | 255.0.0.0 | 256 (octet 2) | 16 777 214 | -| /16 | 255.255.0.0 | 256 (octet 3) | 65 534 | +| /8 | 255.0.0.0 | 256 (octets 2, 3 et 4 libres) | 16 777 214 | +| /16 | 255.255.0.0 | 256 (octets 3 et 4 libres) | 65 534 | | /24 | 255.255.255.0 | 256 (octet 4) | 254 | | /25 | 255.255.255.128 | 128 | 126 | | /26 | 255.255.255.192 | 64 | 62 | diff --git a/reseau/dns/README.md b/reseau/dns/README.md index eaf7322..3206b7e 100644 --- a/reseau/dns/README.md +++ b/reseau/dns/README.md @@ -42,7 +42,9 @@ C'est pour cela que le __protocole__ *Domain Name System* a été créé. ### Adresse symbolique -Le protocole DNS permet d'associer une adresse IP à une *__adresse symbolique__* aussi appelée __*URL*__: celle ci est simple à retenir, et très souvent en rapport avec son contenu : http://www.nice.fr/fr/ par exemple, est le site qui traite de la ville de ...Nice. +Le protocole DNS permet d'associer une adresse IP à un **nom de domaine** (aussi appelé *adresse symbolique*) : celui-ci est simple à retenir, et très souvent en rapport avec son contenu. Par exemple, `www.nice.fr` est le nom de domaine du site de la ville de Nice. + +> **Attention** : le nom de domaine (`www.nice.fr`) n'est pas la même chose qu'une URL (`http://www.nice.fr/fr/`). L'URL inclut en plus le protocole (`http`) et le chemin vers la ressource (`/fr/`). Le DNS ne résout que la partie **nom de domaine**. Toutes ces adresses vont être enregistrées auprès d'un organisme, *L'ICANN*. @@ -167,7 +169,7 @@ Que constatez vous ? - Le **DNS** est un ............... et signifie D.......... N.........S......... -- Le protocole DNS permet d'associer une ......................... à une .................... aussi appelée . . . +- Le protocole DNS permet d'associer une ......................... à un .................... (aussi appelé adresse symbolique). - Une **URL** est composée de 5 parties: - .............................. - ............................... diff --git a/reseau/filius/seance_4/README.md b/reseau/filius/seance_4/README.md index b8b5fa6..d0fde3d 100644 --- a/reseau/filius/seance_4/README.md +++ b/reseau/filius/seance_4/README.md @@ -2,7 +2,7 @@ -------------- -Cette partie vous proposera d'observer le fonctionnement d'un ou plusieurs échanges [peer-to-peer](../../p2p/README.md) à l'intérieur du réseau précédemment utilisé lors de [l'activité 3](../seance_3/README.md). +Cette partie vous proposera d'observer le fonctionnement d'un ou plusieurs échanges peer-to-peer à l'intérieur du réseau précédemment utilisé lors de [l'activité 3](../seance_3/README.md). Les objectifs : diff --git a/reseau/tcp/README.md b/reseau/tcp/README.md index fdaa8c2..fd501dd 100644 --- a/reseau/tcp/README.md +++ b/reseau/tcp/README.md @@ -1,6 +1,6 @@ # Le protocole TCP -> Parmi tous les [protocoles](../definition/PROTOCOLE.md) employés dans le domaine de l'informatique, on peut très souvent entendre l'un d'entre eux revenir en boucle : IP. Et il se trouve qu'IP a un grand ami, le protocole TCP, avec qui il est très proche. +> Parmi tous les protocoles employés dans le domaine de l'informatique, on peut très souvent entendre l'un d'entre eux revenir en boucle : IP. Et il se trouve qu'IP a un grand ami, le protocole TCP, avec qui il est très proche. TCP, ou *Transmission Control Protocol* est toujours associé à IP, sous la dénomination *__TCP/IP__*. Il s'agit d'un membre essentiel d'Internet : il permet de relier les machines entre elles, ainsi que d'assurer l'échange de données, en garantissant l'arrivée à destination de paquets. @@ -68,23 +68,53 @@ On suppose qu'Arobase souhaite envoyer des fichiers personnels sur son cloud Bob -## Mais au fait, comment se font ces échanges tcp ? +## Les ports : distinguer les services + +Une adresse IP identifie une machine sur le réseau, mais une même machine fait tourner plusieurs services en même temps (navigateur web, messagerie, streaming…). Pour les distinguer, on utilise les **ports**. + +Un **port** est un numéro compris entre 0 et 65 535 qui identifie un service particulier sur une machine. + +| Port | Service | +|------|---------| +| 80 | HTTP (pages web) | +| 443 | HTTPS (pages web sécurisées) | +| 22 | SSH (connexion distante) | +| 25 | SMTP (envoi d'e-mails) | +| 53 | DNS | + +L'association d'une adresse IP et d'un numéro de port s'appelle une **socket**. + +> **Exemple** : quand vous accédez à `https://www.google.fr`, votre machine contacte l'adresse IP de Google sur le port **443**. La socket de destination est donc `adresse_IP_google:443`. + +--------- + +## Mais au fait, comment se font ces échanges TCP ? + +Avant de transmettre des données, TCP établit une connexion en **3 étapes** — on parle de ***three-way handshake*** (poignée de main en trois temps) : + +1. **SYN** — le client envoie une demande de connexion au serveur +2. **SYN-ACK** — le serveur accepte et le confirme +3. **ACK** — le client confirme à son tour : la connexion est établie + +Ce n'est qu'après ces 3 échanges que les données commencent à transiter, découpées en **paquets numérotés**. + +--- Voilà comment se déroule un échange entre un client et un serveur TCP. -Tout d'abord, le client demande un canal TCP au serveur +Tout d'abord, le client envoie un **SYN** pour demander l'ouverture d'un canal : ![blague_1.png](assets/blague_1.png) -Puis le serveur se met en mode TCP et envoie les données découpées en paquets : +Le serveur répond **SYN-ACK**, puis envoie les données découpées en paquets. Chaque paquet reçu est **acquitté** (ACK) par le destinataire pour confirmer sa bonne réception : -![blague_1.png](assets/blague_2.png) +![blague_2.png](assets/blague_2.png) -Hélas on voit ici que le message était trop long, et que le canal s'est refermé après la durée choisie par défaut... +Si le canal se ferme avant que tous les paquets soient arrivés (timeout, coupure réseau…) : -![blague_1.png](assets/blague_3.png) +![blague_3.png](assets/blague_3.png) -Et que se passe-t-il dans ce cas ...? +…les paquets manquants sont **retransmis** automatiquement. C'est la garantie de fiabilité de TCP : ![blague_4.png](assets/blague_4.png)