Présentation de l'OSI

Lorsque le réseau ARPA venait juste d'être développé, nous voulions vraiment le rendre aussi intelligent que possible. Mais plus le réseau est complexe, plus il est difficile à développer et à maintenir. Comme solution, il a été proposé de diviser toutes les fonctions du réseau en couches logiques.

Le modèle d'exploitation du réseau est appelé modèle de réseau du modèle de référence de base ISO/OSI pour l'interconnexion des systèmes ouverts. En bref - le modèle OSI (Open Systems Interconnection).

Modèle OSI

Au total, il y a 7 niveaux dans ce modèle. L'interaction des niveaux est strictement normalisée et minimisée. Le niveau inférieur n'a aucune idée de la présence des niveaux supérieurs et de leur structure.

La couche la plus basse peut simplement envoyer des bits . Même pas transmettre, à savoir envoyer. Il n'a aucune idée s'ils le feront ou non. Envoyé et oublié.

Un niveau supérieur fonctionne déjà avec des groupes de bits - trames et connaît un peu le périphérique physique du réseau, comprend les adresses MAC, etc.

Le niveau suivant est le lot. Il est encore plus intelligent et sait opérer avec les adresses IP du réseau. Et ainsi de suite.

Pourquoi tout cela est-il nécessaire ? Pour maximiser la flexibilité.

Imaginez que chaque couche soit une interface Java et qu'elle puisse avoir plusieurs implémentations différentes. Donc ici aussi. Au niveau physique, vous pouvez envoyer des bits sur le fil, envoyer par voie hertzienne (Wi-Fi), envoyer par satellite, et tous les autres niveaux n'en sauront même rien. Et tout fonctionnera comme prévu.

Pile de protocoles OSI

Vous pouvez étudier la pile de protocoles plus en détail dans l'image ci-dessous :

Mais si vous n'êtes pas un administrateur système, vous n'avez pas besoin de tels détails sur les protocoles. Plus intéressante peut être l'étude de la pile protocolaire TCP (Transmission Control Protocol) / IP (Internet Protocol).

Les trois couches supérieures du modèle OSI, c'est-à-dire la couche application, la couche présentation et la couche session, ne sont pas distinguées séparément dans le modèle TCP/IP, qui n'a qu'une couche application au-dessus de la couche transport :

Répartition des protocoles par couches du modèle OSI

TCP/IP OSI
Appliqué Appliqué HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP
Représentation XDR, AFP, TLS, SSL
session ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP
Transport Transport TCP, UDP, SCTP, SPX, ATP, DCCP, GRE
réseau réseau IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP
canalisé canalisé Ethernet, anneau à jeton, HDLC, PPP, X.25, relais de trame, RNIS, ATM, SPB, MPLS, ARP/td>
Physique fils électriques, communication radio, fils de fibre optique, rayonnement infrarouge

Pile de protocoles TCP/IP

La pile de protocoles TCP/IP comprend quatre couches :

  • Couche d'application
  • Couche Transport
  • Couche Internet (Couche réseau) (Couche Internet)
  • Couche de liaison (couche d'accès au réseau)

Les protocoles de ces couches implémentent pleinement toutes les fonctionnalités du modèle OSI. Toutes les interactions des utilisateurs dans les réseaux IP reposent sur la pile de protocoles TCP/IP.

La pile de protocoles TCP/IP est indépendante du matériel physique, ce qui, entre autres, garantit une interaction totalement transparente entre les réseaux filaires et sans fil.

La couche Application est l'endroit où s'exécutent la plupart des applications réseau.

Couche d'application

Pour l'interaction des programmes, il existe des protocoles de haut niveau pour l'échange d'informations. Par exemple, les navigateurs fonctionnent en utilisant le protocole HTTP, le courrier est envoyé en utilisant le protocole SMTP, Telegram fonctionne en utilisant son propre protocole crypté.

Mais nous ne sommes pas très intéressés par les protocoles privés. Le plus souvent, vous rencontrerez des protocoles de masse tels qu'un client ftp pour FTP (transfert de fichiers), SSH (connexion sécurisée à une machine distante), DNS (traduction de caractères en adresses IP) et bien d'autres.

Presque tous ces protocoles fonctionnent sur TCP, bien que certains fonctionnent sur UDP (User Datagram Protocol) pour accélérer les choses. Mais surtout, ces protocoles ont des ports par défaut. Exemple:

  • 20 FTP vers port TCP 20 (pour le transfert de données) et 21 (pour les commandes de contrôle)
  • 22-SSH
  • 23 - Telnet
  • 53 - Requêtes DNS
  • 80-HTTP
  • 443 - HTTPS

Ces ports sont définis par la Naming Assignment and Unique Parameters Agency (IANA).

Il existe plusieurs autres protocoles de couche application populaires : Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

couche de transport

Les protocoles de la couche transport sont conçus pour résoudre le problème de la livraison garantie des messages.

Un message (paquet de données) peut être envoyé et perdu quelque part sur le réseau. Dans ce cas, il appartient à la couche transport de surveiller ces situations et de renvoyer le message si nécessaire.

Une autre tâche importante du protocole de la couche transport est de contrôler l'ordre dans lequel les messages arrivent. Il arrive souvent que des messages soient envoyés dans un ordre et arrivent dans un autre. Et si vous assemblez un grand message à partir de telles pièces, vous obtenez un non-sens.

Pour éviter que cela ne se produise, la couche transport énumère les messages ou n'en envoie pas de nouveau tant qu'elle n'a pas reçu la confirmation de réception du précédent. Les protocoles de routage automatique qui sont logiquement présents à cette couche (car ils s'exécutent au-dessus d'IP) font en fait partie des protocoles de la couche réseau.

Le protocole TCP est un mécanisme de transport préétabli à connexion «garantie» qui fournit à une application un flux de données fiable, garantit que les données reçues sont sans erreur, redemande des données en cas de perte et élimine la duplication des données.

TCP vous permet de réguler la charge sur le réseau, ainsi que de réduire le temps d'attente des données lorsqu'elles sont transmises sur de longues distances. De plus, TCP garantit que les données reçues ont été envoyées exactement dans le même ordre. C'est sa principale différence avec UDP.

UDP est un protocole de datagramme sans connexion. On parle aussi de protocole de transfert « non fiable », au sens de l'impossibilité de vérifier la remise d'un message au destinataire, ainsi que l'éventuel mélange de paquets. Les applications nécessitant une transmission de données garantie utilisent le protocole TCP.

UDP est généralement utilisé dans des applications telles que le streaming vidéo et les jeux où la perte de paquets est tolérée et où les nouvelles tentatives sont difficiles ou injustifiées, ou dans les applications de défi-réponse (telles que les requêtes DNS) où l'établissement d'une connexion nécessite plus de ressources que le renvoi.

TCP et UDP utilisent tous deux un numéro appelé port pour définir le protocole de couche supérieure.