Skip to content

Protocoles

SDH (OSI niv1)

  • = Synchronous Digital Hierarchy
    • Hiérarchie numérique synchrone en français
  • Ensemble de protocoles pour la transmission de données numériques à haut débit principalement sur fibre optique
  • OSI / niveau 1
  • Pincipalement utilisés par les opérateurs de télécommunication pour leur réseau
  • Interêt:
    • richesse des fonctions de gestion
    • de surveillance
    • d'alarmes
    • de résilience aux pannes (autocicatrisation)
  • Constitue la troisième génération de la hiérarchie de multiplexage des infrastructures des opérateurs
  • Pour les liaisons très courtes (moins de 1000 m), la SDH est concurrencée par Ethernet

Ethernet (OSI niv2)

  • Définition:
    • Protocole de réseau local à commutation de paquets
    • N'offre pas de garantie de bonne livraison des données
      • Est laissé aux couches protocolaires supérieures
  • Fonctionnement:
    • Conçu à l'origine pour une topologie physique et logique en bus
      • tous les signaux émis sont reçus par l'ensemble des machines connectées
    • Chaque équipement est identifié par une clé globalement unique: adresse MAC
    • Collisions:
      • Fonctionne comme une discussion ordinaire:
        • Les gens utilisent tous un médium commun pour parler à quelqu'un d'autre
        • Avant de parler, chaque personne attend poliment que plus personne ne parle.
        • Si deux personnes commencent à parler en même temps, les deux s'arrêtent et attendent un court temps aléatoire.
        • Il y a de bonnes chances que les deux personnes attendent un délai différent, évitant donc une autre collision.
        • Des temps d'attente en progression exponentielle sont utilisés lorsque plusieurs collisions surviennent à la suite.
      • Toutes les communications sont émises sur un médium partagé:
        • Toute information envoyée par un poste est reçue par tous les autres
        • même si cette information était destinée à une seule personne.
        • Les ordinateurs connectés sur l'Ethernet doivent donc filtrer ce qui leur est destiné
        • les chances de collision sont proportionnelles au nombre de transmetteurs et aux données envoyées
          • Le réseau devient extrêmement congestionné au-delà de 50 % de sa capacité
    • Topologie:
      • De base, en bus
      • Adapté pour des topologies physiques en étoile:
        • sur câbles à paires torsadées
        • les pairs étant raccordés à des concentrateurs (hubs)
          • ce qui ne change toutefois rien à la nature d'Ethernet
        • La topologie logique reste le bus
        • le médium reste partagé
        • tout le monde reçoit toutes les trames
        • il n'y a toujours qu'un seul segment
        • tout le monde voit les collisions
    • Ethernet commuté:
      • la topologie physique n'est plus en bus mais en étoile (comme avec les hubs);
      • la topologie logique n'est plus celle d'un bus (médium partagé), mais est également en étoile :
        • les communications entre deux pairs donnés sont isolées (contrairement aux hubs et aux bus coaxiaux Ethernet)
        • augmente clairement les capacités de transmission globales du réseau.
        • Chaque paire hôte1/hôte2 communique ensemble par une sorte de lien Point à Point virtuel établi par le commutateur ;
        • les communications peuvent se faire en full-duplex (émission et réception simultanées) et il n'y a plus de collision.
          • Pour ce faire CSMA/CD est désactivé
    • VLAN:
      • permet de faire circuler des réseaux virtuels au sein du réseau Ethernet physiques
      • distingue les trames de chaque VLAN (Virtual LAN) par un identifiant sur 12 bits de 1 à 4095

MacSec (OSI niv2)

  • = IEEE 802.1AE
  • Définition:
    • Standard de sécurisation de la couche MAC de l'IEEE
    • Conçu pour le chiffrement de la couche 2 de la suite de protocole Ethernet

MPLS (OSI niv2/niv3)

  • = MultiProtocol Label Switching
  • Définition:
    • mécanisme de transport de données basé sur la commutation de labels
    • des « étiquettes » sont insérés à l'entrée du réseau MPLS et retirés à sa sortie
    • cette insertion s'opère entre la couche 2 et la couche 3
    • peut être utilisé pour transporter pratiquement tout type de trafic (IPv4, IPv6, ethernet...)
    • permet d'acheminer sur une unique infrastructure différents types de trafic tout en les isolant
    • défini dans la RFC 3031
  • Fonctionnement:
    • permet au routeur de départ, pour chaque paquet, de déterminer à la source le routeur de sortie du réseau, sans que les routeurs intermédiaires aient besoin de consulter une table de routage volumineuse lors de la transmission du paquet.
    • label switching:
      • Se base sur un label ou identifiant pour la commutation des paquets.
      • Ce label est attribué aux paquets par l'équipement PE (Provider Edge) lors de leur entrée dans l'infrastructure MPLS.
    • chemin:
      • Des chemins entre PE (Provider Edge) sont établis de façon manuelle ou automatique (via un protocole de signalisation comme LDP — Label Distribution Protocol — dans le plan de contrôle)
      • Ces chemins sont appelés des LSP (Label Switched Paths).
      • Les routeurs MPLS sont les LSR (Label Switch Router), et sont de type PE (Provider Edge) ou P (Provider)
      • Un chemin MPLS est toujours unidirectionnel
      • un protocole de signalisation est utilisé pour établir les LSP et distribuer les labels au sein du nuage MPLS entre les routeurs
      • On fait la différence en MPLS entre les routeurs:
        • d'entrée (PE ou iLSR — ingress Label Switch Router)
        • de transit (P-router pour Provider router)
        • de sortie (PE ou eLSR — egress Label Switch Router)
  • Avantages:
    • pas nécessaire d'extraire le paquet IP et de parcourir l'ensemble de la table de routage
      • De nos jours l'augmentation de la puissance des routeurs et l'avènement de nouvelles puces dédiées permettent largement de parcourir la table de routage IP à chaque nouveau paquet
      • Les services apportés par le protocole
  • Services:
    • VPN niveau 3:
      • L3VPN / VPRF
      • permet de créer des réseaux IPv421 et/ou IPv6 étanches entre-eux sur le même réseau MPLS
      • permet l'extension et la propagation de VRF (tables de routage virtuelles) sur l'ensemble du réseau MPLS
    • VPN niveau 2:
      • L2VPN
      • permet de fournir des liens privés virtuels point à point
    • Transport de paquets IPv6 à travers un nuage MPLS IPv4 (technologie 6PE)

BGP (OSI niv7)

  • = Border Gateway Protocol
  • Définition:
    • protocole d'échange de route externe
    • Permet d'échanger des informations de routage et d'accessibilité de réseaux (appelés préfixes) entre Autonomous Systems (AS)
  • OSI / niveau 7 (circule dans TCP)
  • Decrit dans la RFC 4271
  • Fonctionnement:
    • 2 modes de routage:
      • Interior BGP (iBGP): utilisé à l'intérieur d'un Autonomous System
      • Exterior BGP (eBGP): utilisé entre deux AS
    • Décisions de routage :
      • Sur les chemins parcourus
      • Les attributs des préfixes
        • un ensemble de règles de sélection définies par l'administrateur de l'AS
    • Connexion:
      • Connexions entre deux voisins BGP sont configurées explicitement entre deux routeurs
      • Ils communiquent entre eux via une session TCP sur le port 179
      • Ils s'échangent des informations sur les réseaux qu'ils connaissent et pour lesquels ils proposent du transit
        • Embarque aussi des attributs associés à ces réseaux qui vont permettre d'éviter des boucles (comme AS Path) et de choisir avec finesse la meilleure route.
      • Si la liaison physique est rompue:
        • La session eBGP l'est également
        • Tous les préfixes appris par celle-ci sont annoncés comme supprimés
        • Ils sont aussi retirés de la table de routage
    • Principaux attributs:
      • AS Path: Liste ordonnée des systèmes autonomes traversés
      • Community: Marquage de route
      • Next Hop: Adresse IP du voisin BGP
      • Multiple Exit Discriminator (MED): métrique pour choix de routes (sur 32 bits)
  • Problèmes connus:
    • Vitesse de convergence:
      • Protocole réputé "lent"
      • le hold time qui détermine après combien de temps une session inactive
      • le nombre de préfixes qui devront chacun faire l'objet de messages UPDATE
      • les performances du CPU pour le traitement des messages UPDATE
      • le paramètre Minimum Route Advertisement Interval (MRAI) définit l'intervalle de temps minimum entre deux annonces BGP pour le même ensemble de préfixes et vers le même voisin
      • l'utilisation de BGP Protocol Independent Convergence (PIC), qui permet un reroutage rapide et indépendent du nombre de préfixe à rerouter
    • Instabilité et damping:
      • sensible à l'oscillation rapide des routes
      • les annonces des routes inaccessibles doivent être propagées à tous les voisins BGP
      • oblige ceux-ci à recalculer leur table de routage
    • Préfixe avec origines multiples:
      • BGP Multiple AS Origin (MOAS)
      • Souvent le résultat d'une erreur de config et peut créer des incidents de type DoS
      • Si un routeur annonce un préfixe pour lequel il n'assure pas réellement le transit, ce dernier peut devenir inaccessible depuis tout ou une partie d'Internet
    • Croissance de la table de routage:
      • croissance de la table de routage des routeurs de la default-free zone
      • = ceux qui disposent d'une table de routage complète et n'utilisent pas de route par défaut
      • Avec le temps, les routeurs plus anciens n'ont plus les ressources mémoire ou CPU nécessaires au maintien d'une table complète
      • la taille de la table nuit à la vitesse de convergence, le CPU étant particulièrement sollicité lors de changements importants
  • Extensions:
    • permet d'utiliser BGP pour convoyer des informations de routage pour d'autres protocoles
    • ex: VPN MPLS

HTTP 2 (OSI niv7)

  • Contexte:
    • Groupe de travail httpbis à l'IETF formé en 2007
    • HTTP 2 créé à partir de SPDY/3 draft (= http 2 draft 00)
  • Principes:
    • Les paradigmes HTTP doivent être maintenus: http:// et https:// sont conservés
      • Le header HTTP 1.1 "Upgrade:" permet au client d'indiquer qu'il veut une transaction HTTP 2
      • Le serveur répond alors "101 Switching" et la liaison HTTP 2 démarre
    • pas de version mineure
    • TLS:
      • volontée forte de rendre obligatoire mais finalement ce n'est pas le cas
      • les 3 grands browser ne font pas de HTTP2 sans TLS
      • protocole de négo NPN (Next Proto Nego): vient de SPDY
        • Le serveur indique au client quels protocoles il supporte
        • Le client choisit le prodocole qui lui convient
      • protocole de négo ALPN (App Layer Proto Nego): est le standard HTTP 2
        • Le client indique au serveur sa liste de protocoles supportés
        • Le serveur choisit celui qui lui convient
  • Description:
    • C'est un protocole binaire
      • Améliore le "framing": découpage des trames sur le réseau
      • Description d'une trame HTTP 2 avec les propriétés: Length, Type, Flags, Stream Identifier puis Frame Payload
      • ~10 types de trame différents
    • C'est un protocole multiplexé
      • Plusieurs streams concurrents peuvent être ouverts au sein d'une même connection
      • Généralement 1 seule connection est utilisée alors qu'il en fallait environ 6 auparavant
      • Multi directionnel: client-serveur, serveur-client, les 2 en même temps
      • La propriété Stream Identifier permet de distinguer chaque stream d'une connection
    • Weight pour la gestion des priorités:
      • Attribue des poids au stream d'une connection via la propriété Weight
      • Permet aux peer de traiter les stream par priorité
      • Une trame de type PRIORITY peut aussi être utilisé
    • Compression des header:
      • HTTP est stateless et embarque le contexte utilisateur dans ses header
      • Compression via specification HPACK créée pour l'occasion
    • Support du Reset:
      • Permet d'arrêter l'envoie et traitement d'un stream (HTTP 1.1 nécéssite un TCP close!)
      • Trame de type RST_STREAM
    • Client cache:
      • AKA Server Push
      • Permet au serveur d'inclure du contenu non demandé par le client (via déduction qu'il va le demander par la suite)
      • Le client stocke alors ce contenu dans son cache, qui est donc dispo immédiatement
      • Le client doit explicitement autoriser le serveur à faire du Server Push
    • Flow Control:
      • Permet au client et serveur de se mettre d'accord sur la quantité de données échangées gérable
      • Evite ainsi les bottleneck
      • Cette possibilité est possible de chaque côté: client indique au serveur, serveur indique au client
      • Seule la trame de type DATA est concernée
    • Support d'extensions:
      • HTTP 2 peut être complété par des extensions
      • Elles ne sont pas inclues directement dans HTTP 2 mais sont documentés à part

HTTP 3 (OSI niv7)

  • Contexte:
  • Principes:
  • Description:

Références