Groupe de travail sur les réseaux	D. Rand
Requête pour Commentaires : 1663	Novell
Catégorie : Standard	juillet 1994
Traduction : Yves lescop	Lycée la croix-rouge - Brest

Transmission PPP Fiable

Statut de ce document

Ce document spécifie un protocole standard d'Internet pour la communauté Internet, et ne sera éprouvé qu'après plusieurs discussions et suggestions. Merci de vous référer à l'édition courante du " Internet Official Protocol Standards " (STD1) pour l'état de standardisation et le statut de ce protocole. La distribution de ce document est illimitée.

Résumé

Le Protocole Point à Point (PPP) [1] fournit une méthode standard pour transporter les datagrammes multiprotocoles au-dessus de liens point à point.

Ce document définit une méthode pour la négociation et l'usage du mode numéroté, comme défini par ISO 7776 [2], pour fournir un lien série fiable.

Ce document est le produit du groupe de travail du Protocole Point à Point du Internet Engineering Task Force (IETF). Des commentaires devraient être soumis à la liste de diffusion ietf-ppp@ucdavis.edu. 

Table des matières

1	Introduction	2
2	Exigences de la Couche Physique	3
3	La Couche liaison de données	3
3.1	Format de Trame	3
4	Format d'Option de Configuration	4
5	Fonctionnement en Mode Numéroté	5
5.1	Lien Simple	6
5.2	Multiplexage Inverse	6
5.3	Utilisation du Procédé Multi-Lien	6
5.4	Paramètres de LAPB par défauts	7
Considérations Sécuritaires	7
Références	8
Remerciements	8
Adresse du Comité	8
Adresse de l'auteur	8

1	Introduction

Par défaut, les paquets PPP sur des liens à trames HDLC se composent de datagrammes "non connectés". Si une transmission fiable au-dessus du lien HDLC est désirée, l'implémentation DOIT indiquer l'option de configuration de Mode Numéroté pendant la phase d'établissement du lien.

Généralement, la fiabilité d'un lien série n'est pas un sujet important. L'architecture des protocoles utilisés dans la gestion de réseau de datagramme présument la livraison non séquentielle et au mieux. Quand des erreurs sont détectées, des datagrammes sont jetés.

Cependant, dans certaines circonstances, il est recommandé de fournir un lien fiable, au moins pour un sous-ensemble des messages. Le cas le plus évident est quand le lien est comprimé. Puisque le dictionnaire est récupéré du flux de données comprimées et qu’un datagramme perdu altère le dictionnaire, des datagrammes ne doivent pas être perdus. Tous les types de compactage n'exigeront pas un flux de données fiable, puisque le coût pour détecter et remettre à l'état initial un dictionnaire altéré est faible.

Le LAPB ISO 7776 peut être utilisé pour garantir la livraison. Ceci est désigné dans ce document sous le nom de "mode numéroté" pour le distinguer de l'utilisation de "information non numérotée", qui est la pratique standard en matière de trame PPP.

Là où des liens parallèles multiples sont employés pour émuler un lien simple d'une vitesse plus élevée, le trafic ponté, le trafic routé par source, et le trafic soumis au compactage d'en-tête TCP/IP de Van Jacobson doivent être fournis à la couche plus élevée dans un certain ordre. Cependant, le fait que les liens soient relativement asynchrones rend l'ordonnancement du trafic incertain.

Le procédé de Multi-Lien ISO 7776 PEUT être employé pour restaurer l'ordre. L'implémentation du procédé de Multi-Lien ISO est désapprouvée. Il est recommandé que soit utilisé à la place le procédé de multi-lien PPP [4].

2	Exigences de la Couche Physique

La transmission PPP fiable impose les mêmes conditions que celles décrites dans "PPP dans un tramage similaire à HDLC" [3], avec les exceptions suivantes.

Signaux de Commande :
Tandis que PPP n'exige pas normalement l'utilisation des signaux de commande, l'implémentation du Mode Numéroté LAPB ou LAPD exige la fourniture de signaux de commande, qui indiquent quand le lien est devenu connecté ou déconnecté. Ceux-ci fournissent à leur tour les événements haut et bas à la machine d'état LCP.

3	La Couche liaison de données

Le Mode Numéroté affecte seulement les champs d'adresse et de commande. Le reste de la trame se conforme au tramage en service pour PPP.

Le champ adresse de la trame DOIT prendre la valeur annoncée dans l'option de configuration du Mode Numéroté, et le champ commande PEUT prendre n'importe quelle valeur ISO 7776 valide.

Une fois que le lien entre dans le Mode Numéroté, le Mode Numéroté DOIT être utilisé sur toutes les trames, car quelques réalisations ne supportent pas l'utilisation du champ de commande de l'Information non numérotée ou l'utilisation de l'adresse "Toutes-Stations" entremêlée avec des trames de Mode Numéroté.

3.1	Format de Trame

Le format de trame suivant est valide sous le Mode Numéroté. Les champs sont transmis de gauche à droite.

Mode Numéroté
+----------+----------+----------+
| Drapeau  | Adresse  | Commande |
| 01111110 |1-2 octets|1-2 octets|
+----------+----------+----------+
+----------+-------------+-------------+
| Protocole| Information | Remplissage |
|1-2 octets|      *      |      *      |
+----------+-------------+-------------+
+----------+----------+------------------------
|   FCS    | Drapeau  | Remplissage Inter-trame
| 16 bits  | 01111110 | ou Adresse suivante
+----------+----------+------------------------

Les champs protocole, information et remplissage sont décrites dans l'encapsulation du Protocole Point à Point [1]. Les champs FCS et drapeau sont décrits dans "PPP dans un tramage similaire à HDLC" [3].

4	Format d'Option de Configuration

Description :

L'option de configuration de Mode Numéroté de LCP négocie l'utilisation du Mode Numéroté sur le lien. Par défaut ou désaccord final, le mode non numéroté est employé.

Un récapitulatif du format d'option de configuration de Mode Numéroté est montré ci-dessous. Les champs sont transmis de gauche à droite.

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Type      |     Longueur  |    Fenêtre    |   Adresse...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type :       11

Longueur :    >= 4

Fenêtre :

Une valeur entre 1 et 127. Celle-ci indique le nombre de trames que le récepteur mettra dans le tampon, c’est le nombre maximum de trames que l'expéditeur devrait envoyer sans recevoir un accusé de réception. Si la fenêtre est < 8, alors le séquencement modulo 8 est utilisé sur le lien. Autrement, le séquencement modulo 128 est utilisé.

Il est imaginable et légal que des valeurs différentes de fenêtres pourraient être annoncées. Cependant, il n'est pas autorisé qu'un système utilise le séquencement modulo 8 et l'autre le modulo 128. Par conséquent, la règle est : un "Configuration-NAK" peut réduire la fenêtre mais ne peut pas l'augmenter.

Adresse :

Une adresse HDLC comme indiqué dans ISO 3309. ISO 7776 indique quatre des valeurs possibles : 1 et 3 pour un fonctionnement en lien simple, 7 et 15 pour une procédure Multi-Liens. Les autres valeurs conformes à ISO 3309 sont considérées légales.

La mise en place du procédé de Multi-Lien est facultative ; Un "Configuration-NAK" peut donc forcer le changement du mode MLP ("Multi-Link Procedure") au mode lien simple, mais pas l'inverse.

Si l'adresse est zéro sur la réception, le récepteur DOIT "Configuration-NAK" avec une adresse appropriée. Si les deux pairs envoient l'adresse zéro, le système annonçant la fenêtre numériquement la plus petite choisira l'adresse la plus petite. Si les deux fenêtres sont de la même taille, un choix aléatoire DOIT être fait ; quand de bonnes sources de nombres aléatoires sont utilisées, le lien convergera dans un temps raisonnable.

Si des nombres magiques ont été négociés sur le lien, le système avec le nombre magique numériquement le plus petit DEVRAIT indiquer l'adresse la plus petite.

5	Fonctionnement en Mode Numéroté

En utilisant le Mode Numéroté, chaque lien est établi de la façon habituelle pour le type du lien. L'option de configuration du Mode Numéroté est négociée, l'option de configuration du Nombre Magique DOIT également être négociée, et l'option de configuration de compression des champs Adresse et Commande NE DOIT PAS être négociée.

Après la réussite de la négociation de l'option de configuration du Mode Numéroté pendant la phase d'établissement du lien LCP, le système avec le Nombre Magique numériquement le plus petit enverra un SABM ou un SABM(E), et l'autre répondra avec un UA. Au cas où le SABM ou le UA seraient perdus, cet échange peut être répété selon les mêmes paramètres que l'échange de configuration lui-même, en utilisant le temporisateur de relancement et les valeurs d'un compteur. L'authentification, la détermination de la qualité du lien, et la configuration de NCP suivent cette étape.

Une fois que le lien a été établi avec le Mode Numéroté, quand la renégociation de la configuration du lien se produit, la renégociation entière DOIT être conduite en Mode Numéroté. Si l'option de configuration du Mode Numéroté n'est pas renégociée avec succès, le lien retourne au fonctionnement "Information Non Numérotée" avant l'authentification, la détermination de la qualité du lien, et la configuration de NCP.

Quand une implantation qui est capable du Mode Numéroté, et n'est pas actuellement configurée pour fonctionner en Mode Numéroté, détecte une trame qui a une FCS correcte mais n'a pas un octet de commande d'UI, l'implémentation DOIT envoyer un message DM, immédiatement suivi d'un "demande-configuration" LCP.

Quand une implantation qui est actuellement configurée pour le fonctionnement en mode numéroté reçoit un message DM, elle DOIT retourner au fonctionnement "Information Non Numérotée", et envoyer immédiatement un "demande-configuration" LCP.

5.1	Lien Simple

Quand des paquets de couche Réseau sont envoyés au-dessus d'un lien simple, les paquets sont encapsulés dans l'ordre suivant :

+-------------+   +-------------+   +----------+
| Compression |   | Compression |   | En-tête  |
| d'en-tête   |-->| Des données |-->| Mode     |--> lien
|             |   |             |   | Numéroté |
+-------------+   +-------------+   +----------+

5.2	Multiplexage Inverse

Puisque envoyer plusieurs connexions au-dessus d'un lien simple est souvent appelé "multiplexage", envoyer des paquets à partir d'une simple connexion sur des liens parallèles multiples s'appelle parfois "multiplexage inverse". Par défaut, PPP n'exécute aucun traitement spécial pour de tels liens. Chaque lien est établi et terminé indépendamment, négocie ses propres options de configuration, et peut avoir différentes combinaisons de telles options comme ACCM, compression du champ protocole et adresse IP. Ceci facilite l'utilisation de liens simultanés sur des médias différents, tels que 56K synchrone avec sauvegarde asynchrone.

Chaque lien dans une seule machine DOIT avoir différents nombres magiques, et chaque fin de chaque lien entre deux pairs DEVRAIT avoir des nombres magiques qui sont uniques à ces pairs. Ceci protège contre des erreurs de panneau de correction en plus des liens rebouclés.

La distribution à chaque lien est contrôlée par des mécanismes de routage de niveau plus élevé. Quand des techniques spécifiques de compactage de Couche Réseau (telles que compression Van Jacobson) dépendent d'une livraison séquentielle, sans support de procédé de Multi-Lien un tel compactage DOIT être appliqué sur une base de lien par lien.

                  +-------------+   +-------------+   +----------+
                  | Compression |   | Compression |   | En-tête  |
             +--->| d'en-tête   |-->| Des données |-->| Mode     |--> lien 1
             |    |             |   |             |   | Numéroté |
+--------------+  +-------------+   +-------------+   +----------+
| Distribution |
+--------------+  +-------------+   +-------------+   +----------+
             |    | Compression |   | Compression |   | En-tête  |
             +--->| d'en-tête   |-->| Des données |-->| Mode     |--> lien 2
                  |             |   |             |   | Numéroté |
                  +-------------+   +-------------+   +----------+

5.3	Utilisation du Procédé Multi-Lien

Ce document n'offre pas une norme pour le Multi-Lien ISO, mais offre une méthode pour être d'accord sur le système d'adressage utilisable avec le Multi-Lien. Un exemple d'implémentation est montrée ci-dessous. L'implémentation du Multi-Lien n'est pas exigée.

En utilisant le procédé de Multi-Lien ISO 7776, chaque lien est établi comme décrit ci-dessus. En outre, l'option de configuration de Mode Numéroté est négociée avec des adresses appropriées pour le procédé de Multi-Lien. La distribution à chaque lien est contrôlée par le procédé de Multi-Lien, de même que la reprise de l'ordre dans le système de réception.

                                                                +---> lien 1
+-------------+   +-------------+   +----------+                |
| Compression |   | Compression |   | En-tête  |   +--------------+
| d'en-tête   |-->| Des données |-->| Mode     |-->| Distribution |
|             |   |             |   | Numéroté |   +--------------+
+-------------+   +-------------+   +----------+                |
                                                                +---> lien 2

5.4	Paramètres de LAPB par défauts

Les directives suivantes indiquent les valeurs par défaut des paramètres configurables de LAPB.

Temporisateur T1 :
Le temporisateur T1 est le temps maximum autorisé avant qu'une retransmission soit commencée, en raison d'une absence de réponse à une trame I transmise. Cette valeur doit être plus grande que le temps requis pour une trame de taille maximum pour être reçu par l'autre côté du lien, et pour la génération d'une réponse à la trame. Ceci DEVRAIT être déterminé dynamiquement, basé sur la mesure du temps aller-retour du lien au niveau LAPB. Au cas où le système ne pourrait pas déterminer le temps aller-retour du lien, cette valeur DEVRAIT être placée à deux fois le débit binaire du lien, divisé par le nombre maximum de bits par trame, plus 100 millisecondes de temps machine. Par exemple, sur des liens 14.400 bit/s, avec une taille maximum de trame de 8000 bits (1000 octets), la valeur T1 serait positionnée à 3.7 secondes.

Temporisateur T3 :
Le temporisateur T3 donne une indication de l'état de veille du lien. Sa valeur doit être plus grande que la valeur T1.

Nombre maximum de tentatives pour terminer une transmission, N2
Le paramètre N2 donne le nombre maximum de tentatives de retransmission d'une trame donnée. Si cette valeur est dépassée, le lien DEVRAIT être terminé. La valeur par défaut pour le paramètre N2 DEVRAIT être 3.

Considérations Sécuritaires

Les problèmes de sécurité ne sont pas discutés dans ce document.

Références

[1] Simpson, W., Editor, "The Point-to-Point Protocol (PPP)", STD 51, RFC 1661, Daydreamer, July 1994.

[2] ISO 7776, Information Processing Systems - Data Communication - High Level Data Link Control Procedures - Description of the X.25 LAPB-Compatible DTE Data Link Procedures

[3] Simpson, W., Editor, "PPP in HDLC Framing", STD 51, RFC 1662, Daydreamer, July 1994.

[4] Sklower, K., "PPP MultiLink Procedure", Work in Progress.

Remerciements

Fred Baker était l'auteur initial de ce document.

Bill Simpson a contribué matériellement au document.

Adresse du Comité

Le groupe de travail peut être contacté par l'intermédiaire du siège actuel :

   Fred Baker
   Advanced Computer Communications
   315 Bollay Drive
   Santa Barbara, California  93117
   EMail: fbaker@acc.com

Adresse de l'auteur

Les questions sur ce document peuvent aussi être adressées à :

   Dave Rand
   2180 Fortune Drive
   San Jose, CA  95131
   Phone: +1 408 321-1259
   EMail: dave_rand@novell.com