English French
This is an unpolished draft of the third edition of this e-book. If you find any error or have suggestions to improve the text, please create an issue via https://github.com/CNP3/ebook/issues?milestone=3 or help us by providing pull requests to close the existing issues. Ceci est une ébauche non révisée de la troisième édition de cet e-book. Si vous trouvez une quelconque erreur ou avez des suggestions pour améliorer ce texte, n'hésitez pas à envoyer une issue via https://github.com/CNP3/ebook/issues?milestone=3 ou aidez-nous en fournissant une pull request afin de clore les issues existantes.
The reference models Les modèles de référence
Given the growing complexity of computer networks, during the 1970s network researchers proposed various reference models to facilitate the description of network protocols and services. Of these, the Open Systems Interconnection (OSI) model [Zimmermann80]_ was probably the most influential. It served as the basis for the standardization work performed within the :term:`ISO` to develop global computer network standards. The reference model that we use in this book can be considered as a simplified version of the OSI reference model [#fiso-tcp]_. Compte tenu de la complexité croissante des réseaux informatiques, les chercheurs en réseaux ont proposé, au cours des années 1970, divers modèles de référence pour faciliter la description des protocoles et des services de réseau. Parmi ceux-ci, le modèle OSI (Open Systems Interconnection) [Zimmermann80]_ a probablement été le plus influent. Il a servi de base au travail de normalisation effectué au sein de l':term:`ISO` pour développer des normes mondiales pour les réseaux informatiques. Le modèle de référence que nous utilisons dans cet ouvrage peut être considéré comme une version simplifiée du modèle de référence OSI [#fiso-tcp]_.
The five layers reference model Le modèle de référence à cinq couches
Our reference model is divided into five layers, as shown in the figure below. Notre modèle de référence est divisé en cinq couches, comme le montre la figure ci-dessous.
The Physical layer La couche physique
Starting from the bottom, the first layer is the Physical layer. Two communicating devices are linked through a physical medium. This physical medium is used to transfer an electrical or optical signal between two directly connected devices. En commençant par le bas, la première couche est la couche physique. Deux appareils communicants sont reliés par un support physique. Ce support physique est utilisé pour transférer un signal électrique ou optique entre deux appareils directement connectés.
the Physical layer may change, e.g. due to electromagnetic interference, the value of a bit being transmitted la couche physique peut modifier, par exemple en raison d'une interférence électromagnétique, la valeur d'un bit transmis
the Physical layer may deliver `more` bits to the receiver than the bits sent by the sender la couche physique peut délivrer `plus` de bits au récepteur que les bits envoyés par l'expéditeur
the Physical layer may deliver `fewer` bits to the receiver than the bits sent by the sender la couche physique peut fournir au récepteur moins de bits que ceux envoyés par l'expéditeur
The Datalink layer La couche Datalink
The `Datalink layer` builds on the service provided by the underlying physical layer. The `Datalink layer` allows two hosts that are directly connected through the physical layer to exchange information. The unit of information exchanged between two entities in the `Datalink layer` is a frame. A frame is a finite sequence of bits. Some `Datalink layers` use variable-length frames while others only use fixed-length frames. Some `Datalink layers` provide a connection-oriented service while others provide a connectionless service. Some `Datalink layers` provide reliable delivery while others do not guarantee the correct delivery of the information. La couche `Datalink` s'appuie sur le service fourni par la couche physique sous-jacente. La couche `Datalink` permet à deux hôtes qui sont directement connectés par la couche physique d'échanger des informations. L'unité d'information échangée entre deux entités dans la couche `Datalink` est une trame. Une trame est une séquence finie de bits. Certaines couches `Datalink` utilisent des trames de longueur variable tandis que d'autres n'utilisent que des trames de longueur fixe. Certaines couches `Datalink` fournissent un service orienté connexion alors que d'autres fournissent un service sans connexion. Certaines couches `Datalink` fournissent une livraison fiable tandis que d'autres ne garantissent pas la livraison correcte de l'information.
An important point to note about the `Datalink layer` is that although the figure below indicates that two entities of the `Datalink layer` exchange frames directly, in reality this is slightly different. When the `Datalink layer` entity on the left needs to transmit a frame, it issues as many `Data.request` primitives to the underlying `physical layer` as there are bits in the frame. The physical layer will then convert the sequence of bits in an electromagnetic or optical signal that will be sent over the physical medium. The `physical layer` on the right hand side of the figure will decode the received signal, recover the bits and issue the corresponding `Data.indication` primitives to its `Datalink layer` entity. If there are no transmission errors, this entity will receive the frame sent earlier. Un point important à noter à propos de la `Couche de Liaison` est que bien que la figure ci-dessous indique que deux entités de la `Couche de Liaison` échangent des trames directement, en réalité c'est légèrement différent. Lorsque l'entité de la `couche liaison` de gauche doit transmettre une trame, elle émet autant de primitives `Data.request` à la `couche physique` sous-jacente qu'il y a de bits dans la trame. La couche physique convertit alors la séquence de bits en un signal électromagnétique ou optique qui sera envoyé sur le support physique. La couche physique, à droite de la figure, décodera le signal reçu, récupérera les bits et émettra les primitives "Data.indication" correspondantes à son entité "couche de liaison". S'il n'y a pas d'erreur de transmission, cette entité recevra la trame envoyée précédemment.
The Network layer La couche réseau
The `Datalink layer` allows directly connected hosts to exchange information, but it is often necessary to exchange information between hosts that are not attached to the same physical medium. This is the task of the `network layer`. The `network layer` is built above the `datalink layer`. Network layer entities exchange `packets`. A `packet` is a finite sequence of bytes that is transported by the datalink layer inside one or more frames. A packet usually contains information about its origin and its destination, and usually passes through several intermediate devices called routers on its way from its origin to its destination. La couche `Datalink` permet aux hôtes directement connectés d'échanger des informations, mais il est souvent nécessaire d'échanger des informations entre des hôtes qui ne sont pas attachés au même support physique. C'est la tâche de la "couche réseau". La couche réseau est construite au-dessus de la couche liaison de données. Les entités de la couche réseau échangent des `packets`. Un `paquet` est une séquence finie d'octets qui est transportée par la couche liaison de données à l'intérieur d'une ou plusieurs trames. Un paquet contient généralement des informations sur son origine et sa destination, et passe généralement par plusieurs dispositifs intermédiaires appelés routeurs sur son chemin de son origine à sa destination.
The Transport layer La couche Transport
The Application layer La couche Application
The upper layer of our architecture is the `Application layer`. This layer includes all the mechanisms and data structures that are necessary for the applications. We will use Application Data Unit (ADU) or the generic Service Data Unit (SDU) term to indicate the data exchanged between two entities of the Application layer. La couche supérieure de notre architecture est la `couche application`. Cette couche comprend tous les mécanismes et les structures de données qui sont nécessaires aux applications. Nous utiliserons le terme Application Data Unit (ADU) ou le terme générique Service Data Unit (SDU) pour indiquer les données échangées entre deux entités de la couche Application.
In the remaining chapters of this text, we will often refer to the information exchanged between entities located in different layers. To avoid any confusion, we will stick to the terminology defined earlier, i.e. : Dans les autres chapitres de ce texte, nous ferons souvent référence aux informations échangées entre des entités situées dans des couches différentes. Pour éviter toute confusion, nous nous en tiendrons à la terminologie définie précédemment, c'est-à-dire :
physical layer entities exchange bits les entités de la couche physique échange des bits