{"id":641,"date":"2017-05-07T18:19:18","date_gmt":"2017-05-07T16:19:18","guid":{"rendered":"http:\/\/www.gatoux.com\/?page_id=641"},"modified":"2017-05-07T21:08:20","modified_gmt":"2017-05-07T19:08:20","slug":"acquittements-et-echanges","status":"publish","type":"page","link":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/acquittements-et-echanges\/","title":{"rendered":"Acquittements et gestion"},"content":{"rendered":"<p>Ce chapitre pr\u00e9sente les 4 param\u00e8tres principaux d&rsquo;HDLC que vous pourriez \u00eatre amen\u00e9 \u00e0 d\u00e9finir. Il explique \u00e9galement leurs r\u00f4les de le processus de transfert de donn\u00e9es ainsi leurs impacts.<\/p>\n<h2>Param\u00e8tres T2, T1, K et N2 &#8230;<\/h2>\n<p>Etudions tout d&rsquo;abord ces 4 param\u00e8tres qui vous ont d\u00e9j\u00e0 \u00e9t\u00e9 l\u00e9g\u00e9rement pr\u00e9sent\u00e9s dans le chapitre pr\u00e9c\u00e9dent.<\/p>\n<h3>Calcul de T2 et T1<\/h3>\n<p style=\"padding-left: 30px;\">Nous avons pr\u00e9c\u00e9demment vu que ces deux timers \u00e9taient li\u00e9s mais n&rsquo;avait pas la m\u00eame fonction :<\/p>\n<ul>\n<li><strong>T2 est un temporisateur d&rsquo;attente de trame INFO pour acquittement<\/strong><\/li>\n<li><strong>T1 est un temporisateur d&rsquo;acquittement de trame INFO<\/strong><\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-666 alignleft\" src=\"http:\/\/racine.gatoux.com\/lmdr\/wp-content\/uploads\/2017\/05\/S5P5I2.gif\" alt=\"\" width=\"400\" height=\"258\" \/>Dans le sch\u00e9ma ci-contre R envoie une trame <strong>INFO<\/strong> \u00e0 U alors que celui-ci venait juste de commencer \u00e0 \u00e9mettre \u00e9galement une trame INFO (d\u00e9lai <strong>a<\/strong>). D\u00e8s que U a r\u00e9ceptionn\u00e9 toute la trame il enclenche un <strong>T2<\/strong>. Il devra acquitter cette trame avant expiration du timer.<\/p>\n<p>Il effectue un traitement de la trame (notamment v\u00e9rification du FCS), mais m\u00eame si son traitement est rapide (d\u00e9lai <strong>c<\/strong>) il ne peut pas \u00e9mettre d&rsquo;acquittement tant qu&rsquo;il n&rsquo;a pas fini d&rsquo;\u00e9mettre sa propre trame d&rsquo;INFO (d\u00e9lai <strong>b<\/strong>). Or ce d\u00e9lai d&rsquo;\u00e9mission est directement li\u00e9 \u00e0 la longueur de la trame (nombre de bits) et au d\u00e9bit binaire de la liaison.<\/p>\n<p style=\"padding-left: 30px;\">Si l&rsquo;on consid\u00e8re que les d\u00e9lais a et c sont n\u00e9gligeables (<em>ils sont de toutes fa\u00e7ons tr\u00e8s difficile \u00e0 estimer !<\/em>), on peut en d\u00e9duire que <strong>T2 doit \u00eatre \u00e9gal au minimum au temps n\u00e9cessaire pour \u00e9mettre la trame la plus longue possible sur le d\u00e9bit binaire<\/strong> donn\u00e9 de la liaison (<strong>T2 mini = Lmax Trame \/ D\u00e9bit de la liaison<\/strong>)<\/p>\n<p style=\"padding-left: 30px;\">Vous aurez remarqu\u00e9 que R a activ\u00e9 son T1 d\u00e8s l&rsquo;\u00e9mission de sa trame INFO. U doit acquitter cette trame avant expiration de ce T1. Le sch\u00e9ma illustre la configuration la plus d\u00e9favorable o\u00f9 U \u00e9met une trame INFO juste avant la fin de r\u00e9ception de la trame INFO de R. Il ne peut donc pas l&rsquo;acquitter avec cette trame \u00e9mise, il est oblig\u00e9 d&rsquo;attendre l&rsquo;expiration du T2 ou l&rsquo;arriv\u00e9e des couches sup\u00e9rieures de donn\u00e9es \u00e0 \u00e9mettre dans des trames INFO. Ici nous illustrons le cas o\u00f9 en effet U doit attendre la fin du T2. T1 cumule donc les d\u00e9lais (<strong>e<\/strong>) (\u00e9mission de la trame INFO de R), le d\u00e9lai T2 et le d\u00e9lai (<strong>d<\/strong>) correspondant au temps de transmission de la trame d&rsquo;acquittement (on n\u00e9glige ici le d\u00e9lai c). Cependant cette trame RR pourrait \u00eatre remplac\u00e9e par une trame INFO de longueur max qui s&rsquo;est pr\u00e9sent\u00e9e juste avant expiration du T2 ! Donc dans ce cas (d) = (b) = d\u00e9lai de transmission d&rsquo;une trame max. Au final on a donc T1 = (e) + T2 + (d) (en n\u00e9gligeant c) avec (e) = (d) = T2 = Lmax trame \/ D\u00e9bit, soit donc T1 = 3 x T2 ! Heu &#8230; Vous m&rsquo;avez suivi, j&rsquo;esp\u00e8re !<\/p>\n<p style=\"padding-left: 30px;\">Pour avoir un peu de marge on admet plut\u00f4t : <strong>T1 = 4 x T2<\/strong>. En effet, nous avons n\u00e9glig\u00e9 le d\u00e9lai de traitement (c) qui peut influencer le d\u00e9lai de r\u00e9ponse. Nous avons \u00e9galement n\u00e9glig\u00e9 un point important : L&rsquo;insertion des 0 suppl\u00e9mentaires dans les trames par la moulinette 7E pour garantir la transparence au code ! Ceci peut allonger la taille max de trame est donc influer sur le T1.<\/p>\n<p style=\"padding-left: 30px;\">Nous avons beaucoup parl\u00e9 de taille max de trame. Comment conna\u00eetre cette taille ? C&rsquo;est relativement simple :<\/p>\n<ul>\n<li>Il vous faut vous r\u00e9f\u00e9rer \u00e0 la taille max du paquet niveau 3 qui sera v\u00e9hicul\u00e9 dans le champ INOF de la trame. Pour cel\u00e0 consultez le param\u00e8trage du niveau 3 choisi (IP ou X25 ?).<\/li>\n<li>Ces paquets sont v\u00e9hicul\u00e9s dans le champ Data des trames INFO.<\/li>\n<li>Comme les trames pr\u00e9sentent \u00e9galement un champ Adresse de 1 octet (8 bits), un champ Commande de 1 octet et un champ FCS de 2 octets, il faut ajouter 4 octets (32 bits) \u00e0 la taille max du paquet pour obtenir la taille max de la trame. Donc <strong>Lmax trame = Lmax PQ + 32<\/strong>.<\/li>\n<\/ul>\n<h3 dir=\"ltr\">Facteur K : Fen\u00eatre d&rsquo;anticipation d&rsquo;acquittement<\/h3>\n<p style=\"padding-left: 30px;\"><strong>K = nombre de trames que l&rsquo;on peut \u00e9mettre sans acquittement<\/strong>.<\/p>\n<p style=\"padding-left: 30px;\">Nous avons \u00e9voqu\u00e9 ce param\u00e8tre dans le paragraphe pr\u00e9c\u00e9dent en parlant d&rsquo;\u00e9mission par anticipation d&rsquo;acquittement. Ce param\u00e8tre permet \u00e0 un \u00e9quipement LAP B d&rsquo;\u00e9mettre K trames INFO cons\u00e9cutives sans avoir \u00e0 attendre d&rsquo;acquittement. Par contre une fois K atteint l&rsquo;\u00e9quipement doit absolument attendre un acquittement qui va \u00ab\u00a0<strong>ouvrir la fen\u00eatre<\/strong>\u00a0\u00bb ou \u00ab\u00a0<strong>accorder un cr\u00e9dit<\/strong>\u00ab\u00a0. Ces deux expressions sont utilis\u00e9es pour d\u00e9crire ce mode de fonctionnement dit \u00ab\u00a0<strong>\u00e9mission par fen\u00eatre d&rsquo;anticipation<\/strong>\u00a0\u00bb ou \u00ab\u00a0<strong>\u00e9mission par cr\u00e9dit<\/strong>\u00ab\u00a0.<\/p>\n<p style=\"padding-left: 30px;\">L&rsquo;avantage de ce fonctionnement est qu&rsquo;il permet de rentabiliser l&rsquo;utilisation du support. Nous avons vu que l&rsquo;on pr\u00e9f\u00e9rait attendre T2 avant d&rsquo;acquitter avec une RR, en esp\u00e8rant avoir une trame INFO \u00e0 \u00e9mettre dans ce laps de temps (paragraphe Calcul de T2). Par contre, si l&rsquo;on n&rsquo;autorise pas l&rsquo;\u00e9metteur \u00e0 \u00e9mettre des trames sans avoir re\u00e7u un acquittement pour chacune d&rsquo;elles on oblige dans ce cas l&rsquo;\u00e9metteur \u00e0 attendre au minimum T2+d pour \u00e9mettre chaque trame. Je m&rsquo;explique (<em>et suivez sur le sch\u00e9ma pr\u00e9c\u00e9dent !<\/em>) :<\/p>\n<ul>\n<li><strong>R \u00e9met une trame INFO \u00e0 U<\/strong> (fl\u00e8che bleu). Il enclenche un T1 et U enclenche un T2 \u00e0 r\u00e9ception de la trame.<\/li>\n<li>Si R ne peut pas \u00e9mettre d&rsquo;autres trames tant qu&rsquo;il n&rsquo;a pas re\u00e7u d&rsquo;acquittement de U, et si U attend pendant T2 d&rsquo;avoir une trame INFO \u00e0 envoyer, R devra attendre au moins T2 !<\/li>\n<li>Si U n&rsquo;a pas de trames INFO \u00e0 \u00e9mettre, <strong>il envoie au bout de T2 une RR<\/strong>. Le d\u00e9lai de transmission de la RR est \u00e9gal \u00e0 d.<\/li>\n<li>Donc R devra attendre T2+d (<em>et encore je ne compte pas le temps de transmission de la trame INFO initiale !<\/em>) pour \u00e9mettre une seconde trame INFO !<\/li>\n<\/ul>\n<p style=\"padding-left: 30px;\"><em>Vous croyez qu&rsquo;il est pay\u00e9 \u00e0 rien faire R ? Non !<\/em> Donc en l&rsquo;autorisant \u00e0 \u00e9mettre K trames sans acquittement, il n&rsquo;est plus oblig\u00e9 d&rsquo;attendre T2+d ! <em>Toujours \u00e7a de gagn\u00e9 !<\/em><\/p>\n<p style=\"padding-left: 30px;\">Maintenant quelles valeurs donn\u00e9es \u00e0 K ? Au minimum on s&rsquo;en doute c&rsquo;est 0 ! Dans ce cas il n&rsquo;y a pas d&rsquo;anticipation d&rsquo;acquittement. Et au maximum ?&#8230; <em>Je vous laisse \u00ab\u00a0computer\u00a0\u00bb &#8230; Ouuuuiii<\/em>, j&rsquo;en vois un dans le fond qui l\u00e8ve son doigt ! Combien ? Oui ! 7 au maximum ! Et pourquoi ? &#8230;. On ne sait pas ? Coup de chance ? Amateur va &#8230; R\u00e9fl\u00e9chissons :<\/p>\n<ul>\n<li><strong>Comment acquittons nous les trames ?<\/strong> Par le compteur Nr, qui donne le num\u00e9ro de la prochaine trame attendu.<\/li>\n<li><strong>Comment est fix\u00e9 le num\u00e9ro d&rsquo;une trame ?<\/strong> Par son compteur Ns.<\/li>\n<li><strong>Combien a de bits un compteur Ns ?<\/strong> 3 bits.<\/li>\n<li><strong>Quelles valeurs peut donc prendre ce compteur Ns ?<\/strong> De 0 \u00e0 7 !<\/li>\n<\/ul>\n<p style=\"padding-left: 30px;\">Si l&rsquo;on vous envoie les trames 0, 1, 2, 3, 4, 5, 6, 7 (soit donc 8 trames), <strong>quelle sera la valeur du Nr \u00e0 donner pour acquitter ce bloc de trames ?<\/strong> Nr = 0 = num\u00e9ro de la prochaine trame attendue !<\/p>\n<p style=\"padding-left: 30px;\">Donc vous dites \u00e0 l&rsquo;\u00e9metteur de vous envoyer la trame 0, c&rsquo;est bien \u00e7a que \u00e7a veut dire Nr=0, non ? Mais il vient de vous l&rsquo;envoyer ! C&rsquo;est la premi\u00e8re trame du bloc de 8 trames ! Il ne va rien comprendre le pauvre ! Il va croire que vous n&rsquo;avez rien re\u00e7u, et au bout des timers T1 de chaque trame, il va vous les renvoyer !<\/p>\n<p style=\"padding-left: 30px;\">Donc <strong>on ne peut pas vous envoyer plus de 7 trames cons\u00e9cutives<\/strong>. Si vous recevez les trames 0,1,2,3,4,5,6 (7 trames) vous retournez un Nr=7 et l&rsquo;\u00e9metteur comprend que vous attendez la trame 7 et que donc vous validez les trames 0 \u00e0 6 !<\/p>\n<p style=\"padding-left: 30px;\">Maintenant <strong>pourquoi ne pas fixer d\u00e9finitivement le K \u00e0 7<\/strong> et on en parle plus ? Parce qu&rsquo;en imaginant que la trame 1 du bloc de 7 trames pr\u00e9c\u00e9dentes, arrive avec une erreur de transmission ! L&rsquo;\u00e9quipement va rejeter la trame et m\u00eame si les trames suivantes (2,3,4,5,6) sont bonnes il devra retourner un Nr = 1, qui indiquera \u00e0 l&rsquo;\u00e9metteur que le destinataire ne valide que la trame 0. Donc \u00e0 expiration des T1 des trames suivantes, il va toutes les r\u00e9\u00e9mettre ! Pour le coup, ce n&rsquo;est pas aussi rentable qu&rsquo;on l&rsquo;aurait souhait\u00e9 ! Vous r\u00e9\u00e9mettez 6 trames pour une trame fausse !<\/p>\n<p style=\"padding-left: 30px;\">Donc si vous avez un taux d&rsquo;erreur important sur la ligne, il est pr\u00e9f\u00e9rable d&rsquo;avoir un K plus faible ! Vous r\u00e9\u00e9mettrez moins de trames en cas d&rsquo;erreur ! <em>Et oui ! C&rsquo;est \u00e7a du \u00ab\u00a0tunning\u00a0\u00bb de r\u00e9seau !<\/em><\/p>\n<p style=\"padding-left: 30px;\">En r\u00e9sum\u00e9 :<\/p>\n<p style=\"padding-left: 60px;\"><strong>K : Fen\u00eatre d&rsquo;anticipation d&rsquo;acquittement. Il est compris entre 0 et 7. Un K \u00e0 4 est bien si votre ligne n&rsquo;est pas exceptionnellement bonne. Un K \u00e0 7 si vous avez un taux d&rsquo;erreur tr\u00e8s faible est mieux.<\/strong><\/p>\n<h3>Facteur N2 : Compteur de r\u00e9\u00e9mission<\/h3>\n<p style=\"padding-left: 30px;\">Nous allons ici \u00e9tudier ce qui justement arrive en cas d&rsquo;erreurs de transmissions. Dans les paragraphes pr\u00e9c\u00e9dent j&rsquo;ai dis plusieurs fois que l&rsquo;\u00e9metteur renvoie les trames \u00e0 expiration de leurs T1 respectifs s&rsquo;il n&rsquo;a pas re\u00e7u d&rsquo;acquittement dans ce d\u00e9lai.<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-667 alignleft\" src=\"http:\/\/racine.gatoux.com\/lmdr\/wp-content\/uploads\/2017\/05\/S5P5I4.gif\" alt=\"\" width=\"331\" height=\"422\" \/>Dans l&rsquo;exemple ci-contre la trame 0 \u00e9mise par U est soumise \u00e0 une erreur de transmission. R d\u00e9tecte l&rsquo;erreur en v\u00e9rifiant le FCS. Il jette donc la trame (<em>enfin, il l&rsquo;oublie plut\u00f4t ! Vous avez d\u00e9j\u00e0 vu des petits tas de trames \u00e0 cot\u00e9 des \u00e9quipements HDLC, vous ?<\/em>).<\/p>\n<p style=\"padding-left: 30px;\">A expiration du <strong>T1<\/strong> de la trame, U n&rsquo;ayant pas re\u00e7u d&rsquo;acquittement, r\u00e9\u00e9met la trame 0. Mais il place le bit <strong>P<\/strong> (puisque c&rsquo;est une trame de commande on dit bit P) du champ Commande \u00e0 1. Il indique ainsi au destinataire (R ici) que cette trame est une r\u00e9\u00e9mission et qu&rsquo;il veut un acquittement imm\u00e9diat de cette trame ! C&rsquo;est la r\u00e8gle :<\/p>\n<p style=\"padding-left: 30px;\"><strong>Toute trame non acquitt\u00e9e \u00e0 expiration de son timer (T1) doit \u00eatre r\u00e9\u00e9mise avec son bit P \u00e0 1.<\/strong><\/p>\n<p style=\"padding-left: 30px;\">R re\u00e7oit correctement la trame et acquitte par une RR. Cette RR doit avoir le bit F (puisque c&rsquo;est une trame de r\u00e9ponse on dit bit F) \u00e0 1 car elle acquitte une trame INFO ayant le bit P \u00e0 1. La r\u00e9gle est la suivante :<\/p>\n<p style=\"padding-left: 30px;\"><strong>Toute trame de commande \u00e9mise avec le bit P \u00e0 1 doit \u00eatre acquitt\u00e9e par une trame de r\u00e9ponse ayant le bit F \u00e0 1.<\/strong><\/p>\n<p style=\"padding-left: 30px;\">J&rsquo;ai bien dit \u00ab\u00a0par une trame de r\u00e9ponse\u00a0\u00bb. Donc R ne peut pas acquitter la trame INFO par une trame INFO (s&rsquo;il avait eu des donn\u00e9es \u00e0 \u00e9mettre) m\u00eame en pla\u00e7ant son bit P \u00e0 1. Car la trame INFO est une trame de commande, pas de r\u00e9ponse.<\/p>\n<p style=\"padding-left: 30px;\">Dans la deuxi\u00e8me partie du sch\u00e9ma, U \u00e9met une trame 1, qui est re\u00e7ue avec une erreur (perturbation sur la ligne) par R. A expiration de sont T1, U r\u00e9\u00e9met la trame en positionnant son bit P. Celle-ci subit \u00e9galement une erreur de transmission. Il la r\u00e9\u00e9met donc au bout de son T1, et ainsi de suite. <strong>U va r\u00e9\u00e9mettre la trame N2 fois<\/strong>. Au bout de N2 tentative U passera en mode d\u00e9connect\u00e9 (DM) car il supposera que R a disparu ! Il faudra r\u00e9initialiser toute la connexion niveau 2 pour r\u00e9\u00e9mettre du trafic.<\/p>\n<p style=\"padding-left: 30px;\">N2 permet d&rsquo;accorder une chance \u00e0 la connexion lorsque celle-ci est fortement perturb\u00e9e. Souvent on le positionne \u00e0 la valeur 9 (<em>Pourquoi ? J&rsquo;en sais rien !<\/em>).<\/p>\n<p style=\"padding-left: 30px;\"><strong>Petit subtilit\u00e9 :<\/strong> il y a un flou dans la norme HDLC \u00e0 propos de ce param\u00e8tre. Il n&rsquo;est pas clairement explicit\u00e9 si N2 inclus la premi\u00e8re trame \u00e9mise (avec le bit P \u00e0 0) ou s&rsquo;il ne comptabilise que les trames \u00e9mises avec P \u00e0 1. Dans le deuxi\u00e8me cas, cela suppose que la trame aura \u00e9t\u00e9 \u00e9mise en tout N2+1 fois. Mon sch\u00e9ma pr\u00e9sente le cas o\u00f9 la premi\u00e8re trame est comptabilis\u00e9. L&rsquo;impl\u00e9mentation varie selon les constructeurs de mat\u00e9riel ou leur version logicielle. Pour ma part je pense qu&rsquo;il est pr\u00e9f\u00e9rable d&rsquo;impl\u00e9menter la deuxi\u00e8me version qui est plus pr\u00e8s de la r\u00e9alit\u00e9 de la norme. Mais pour tout vous dire, tout le monde s&rsquo;en fiche, ce n&rsquo;est pas le param\u00e8tre le plus important !<\/p>\n<h2>R\u00e9sum\u00e9 des m\u00e9thodes d&rsquo;acquittement &#8230;<\/h2>\n<p>Dans le sch\u00e9ma ci-dessous, je r\u00e9sume trois cas d&rsquo;acquittements les plus courants.<\/p>\n<p><strong><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-668 alignleft\" src=\"http:\/\/racine.gatoux.com\/lmdr\/wp-content\/uploads\/2017\/05\/S5P5I5.gif\" alt=\"\" width=\"393\" height=\"538\" \/>Acquittement par RR \u00e0 expiration de T2 :<\/strong><br \/>\nIci R acquitte toutes les trames re\u00e7ues \u00e0 l&rsquo;expiration du T2 de la trame 3. Comme il a re\u00e7u pendant le laps de temps du T2 de la trame 3, les trames 4 et 5, il acquitte avec une RR (puisqu&rsquo;il n&rsquo;a pas d&rsquo;infos \u00e0 envoyer) avec Nr = 6. Vous remarquez que, bien s\u00fbr, les T2 et T1 des trames sont donc tous stopp\u00e9s par cet acquittement.<br \/>\n<strong>Acquittement par INFO avant expiration de T2 :<\/strong><br \/>\nIci R a des donn\u00e9es \u00e0 envoyer qui se pr\u00e9sentent apr\u00e8s la r\u00e9ception de la trame 4. Il envoie donc une trame INFO qui acquitte les trames 3 et 4 (Nr:5) mais pas la trame 5 qu&rsquo;il n&rsquo;a pas encore re\u00e7u. Les T1 de U pour les trames 3 et 4 sont donc stopp\u00e9s ainsi que les T2 correspondant chez R ! Par contre les T2 et T1 de la trame 5 continuent de courir.<br \/>\n<strong>Acquittement au fil de l&rsquo;eau par RR \u00e0 expiration de T2 :<\/strong><br \/>\nCe mode de fonctionnement est moins courant, mais existe. J&rsquo;ai du mal \u00e0 lui trouver une justification. On pr\u00e9f\u00e9rera utiliser le premier mode pr\u00e9sent\u00e9 ci-dessus. Ici R \u00e9met une RR \u00e0 chaque expiration d&rsquo;un T2. Par contre la RR, au lieu de cumuler les acquittements pour toutes les trames re\u00e7ues, n&rsquo;acquitte que la trame associ\u00e9e au T2 qui vient d&rsquo;expirer. Ici la premi\u00e8re RR aurait pu acquitter les trames 3, 4 et 5 par un Nr=6 comme dans le premier exemple. Mais non ! Son RR est plac\u00e9 \u00e0 4, donc elle n&rsquo;acquitte que la trame 3. Il faudra encore deux RR pour acquitter les trames suivantes ! Bonjour la rentabilit\u00e9 !<\/p>\n<h2><\/h2>\n<h2><\/h2>\n<h2><\/h2>\n<h2>Synth\u00e8se<\/h2>\n<p>Jusqu&rsquo;ici\u00a0nous avons donc \u00e9tudi\u00e9 un certain nombre de fonctions int\u00e9ressantes :<\/p>\n<ul>\n<li>format de la trame LAP B<\/li>\n<li>principe de transparence au code (7E)<\/li>\n<li>\u00e9tablissement des connexions (SABM\/UA)<\/li>\n<li>\u00e9change de donn\u00e9es et fonctionnement des compteurs (Nr, Ns)<\/li>\n<li>fonctionnement par anticipation d&rsquo;acquittement (K et T2)<\/li>\n<li>reprise sur erreur de transmission simple (T1, N2, bit P\/F)<\/li>\n<\/ul>\n<p>J&rsquo;attire ici votre attention sur deux points :<\/p>\n<ul>\n<li>Vous aurez bien remarqu\u00e9 que le fonctionnement en mode connect\u00e9 mobilise un certain nombre de ressources et oblige \u00e0 un certain nombre d&rsquo;\u00e9changes qui n&rsquo;avaient jamais \u00e9t\u00e9 pr\u00e9sent\u00e9s dans les cours IP. Par contre dans le mod\u00e8le OSI j&rsquo;avais bien attir\u00e9 votre attention sur ce point, l&rsquo;\u00e9tablissement d&rsquo;une connexion protocolaire n\u00e9cessite des moyens d&rsquo;\u00e9tablissement, gestion et lib\u00e9ration de la connexion ainsi que des ressources (essentiellement m\u00e9moires) sur les \u00e9quipements.<\/li>\n<li>Nous avions beaucoup \u00e9voqu\u00e9 les probl\u00e9matiques de maintien du s\u00e9quencement des infos et du contr\u00f4le d&rsquo;erreurs avec reprises sur erreurs lors du cours OSI, vous avez ici un exemple concret. Si vous avez lu les cours IP vous avez pu remarquer que nous n&rsquo;avions pas toutes ces pr\u00e9occupations.<\/li>\n<\/ul>\n<p>Nous allons maintenant dans les chapitres suivant, compl\u00e9ter l&rsquo;\u00e9tude du mode connect\u00e9 en \u00e9tudiant les modes de d\u00e9connexions et v\u00e9rifier la robustesse du protocoles en v\u00e9rifiant le fonctionnement sur des cas d&rsquo;erreurs un peu plus complexes.<\/p>\n<h5 align=\"center\"><a href=\"http:\/\/www.gatoux.com\/index.php\/connexions-et-echanges\/\">Page Pr\u00e9c\u00e9dente <\/a>| <a href=\"http:\/\/www.gatoux.com\/index.php\/deconnexions-et-erreurs\/\">Page suivante<\/a><\/h5>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ce chapitre pr\u00e9sente les 4 param\u00e8tres principaux d&rsquo;HDLC que vous pourriez \u00eatre amen\u00e9 \u00e0 d\u00e9finir. Il explique \u00e9galement leurs r\u00f4les de le processus de transfert de donn\u00e9es ainsi leurs impacts. Param\u00e8tres T2, T1, K et N2 &#8230; Etudions tout d&rsquo;abord ces 4 param\u00e8tres qui vous ont d\u00e9j\u00e0 \u00e9t\u00e9 l\u00e9g\u00e9rement pr\u00e9sent\u00e9s dans le chapitre pr\u00e9c\u00e9dent. Calcul\u2026 <span class=\"read-more\"><a href=\"https:\/\/racine.gatoux.com\/lmdr\/index.php\/acquittements-et-echanges\/\">Lire la suite &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":57,"comment_status":"closed","ping_status":"closed","template":"page-templates\/full-width.php","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"class_list":["post-641","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/pages\/641","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/comments?post=641"}],"version-history":[{"count":4,"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/pages\/641\/revisions"}],"predecessor-version":[{"id":684,"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/pages\/641\/revisions\/684"}],"wp:attachment":[{"href":"https:\/\/racine.gatoux.com\/lmdr\/index.php\/wp-json\/wp\/v2\/media?parent=641"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}