Résumé

  • La RFC 9808 donne au CDN aval un moyen de publier, pour une empreinte donnée, des limites à ne pas dépasser et une source de télémétrie correspondante. Ces informations éclairent la décision du CDN amont ; elles ne garantissent, ne promettent et ne réservent aucune capacité.
  • Un opérateur doit conserver l’ensemble des contraintes applicables, les maximums souple et dur, l’empreinte, la durée de validité, l’identité et la sémantique de la mesure, son retard et son agrégation. La délégation locale, l’admission, la livraison, la qualité et l’obligation contractuelle appartiennent à des reçus ultérieurs.

Deux phrases peuvent porter le même nombre tout en créant des réalités différentes. « Le CDN aval annonce un maximum de 80 » est une donnée de routage. « Le fournisseur réserve 80 au client jusqu’à minuit, avec priorité et indemnisation » est un engagement commercial. La première peut être signée, fraîche et conforme à un schéma sans jamais devenir la seconde.

C’est la précaution structurante de la RFC 9808. Le document qualifie expressément l’information de capacité de consultative : elle n’est ni une garantie, ni un engagement, ni une réservation. Aucun élément du dossier ne démontre qu’un CDN nommé aurait mis en œuvre l’extension, publié une valeur, accepté un trafic ou livré un contenu. Les exemples servent uniquement à examiner l’autorité du protocole.

Publiée sur la voie des normes en juillet 2025, la RFC 9808 étend l’interface Footprint & Capabilities Advertisement de la RFC 8008. Elle ajoute deux objets : FCI.CapacityLimits, qui décrit une enveloppe de capacité, et FCI.Telemetry, qui identifie les observations utilisables pour mesurer l’occupation de cette enveloppe. La notice RFC Editor et le dossier IETF Datatracker attribuent le texte à Andrew Ryan, Ben Rosenblum et Nir B. Sopher. Le registre IANA des paramètres CDNI stabilise les noms communs.

Cette normalisation est utile précisément parce que les réseaux restent indépendants. Sans vocabulaire partagé, « disponible » ne dit pas si l’on parle de bits par seconde, de requêtes, de sessions, d’octets stockés, d’objets ou de cache. Il ne dit pas non plus où la valeur s’applique, pendant combien de temps, selon quelle fenêtre ni à partir de quel compteur. Un objet structuré rend ces dimensions comparables par une machine et permet de motiver une décision de routage.

La RFC enregistre six types de limites : débit sortant, requêtes, taille de stockage, nombre d’objets stockés, sessions et taille de cache. Chaque limite comporte un maximum-hard, c’est-à-dire le maximum disponible à l’usage dans son contexte. Elle peut aussi comporter un maximum-soft, inférieur au maximum dur, à partir duquel le CDN amont devrait réduire le trafic. À défaut, les deux valeurs sont égales.

Ces limites forment un système conjonctif. Toutes celles qui s’appliquent doivent être examinées avec un ET logique. Une marge sur le débit ne neutralise pas une saturation du nombre de sessions. Des octets de stockage libres ne corrigent pas une limite d’objets. Choisir l’indicateur le plus favorable reviendrait à transformer une capacité multidimensionnelle en argument commercial, alors que le protocole fournit justement les moyens de résister à cette simplification.

Le maximum souple mérite une attention particulière. Il matérialise le temps nécessaire au contrôle pour réagir. Une mesure arrive avec retard ; le routeur décide par cycles ; du trafic est déjà en vol. Si la réduction ne commence qu’au maximum dur, la réponse peut parvenir après le franchissement. L’écart entre les deux niveaux est donc un budget de risque qui doit refléter la volatilité, la latence d’observation, la vitesse du contrôleur et le coût d’un refus.

Le nombre ne vaut jamais sans son empreinte. La RFC 8008 permet de décrire des empreintes par adresses, ASN, pays et autres types enregistrés. Plusieurs contraintes peuvent réduire cumulativement l’éligibilité. Une limite de dix mille requêtes par seconde peut concerner un pays, une plage d’adresses ou l’intersection de plusieurs conditions. Elle n’autorise aucune extrapolation vers une requête extérieure à cette portée.

La durée de vie fait également partie de la preuve. Les limites héritent du TTL offert par le transport, par exemple Cache-Control en HTTP. Si le transport n’en fournit pas, les parties doivent convenir d’une durée hors bande. La spécification vise un plafond raisonnable et relativement durable. L’utilisation courante varie plus vite. Une annonce non expirée prouve que l’enveloppe est encore publiable ; elle ne prouve pas que l’espace sous le plafond est toujours libre.

FCI.Telemetry répond à ce décalage. L’objet annonce des sources de données agrégées, proches du temps réel et propres à la relation de délégation entre CDN amont et aval. L’identifiant d’une source doit être unique dans l’annonce et rester stable tant qu’il désigne la même référence. Le nom d’une métrique obéit à la même discipline. Une limite liée à une source et à une métrique peut ainsi être comparée au compteur prévu, et non à un homonyme commode.

La sémantique temporelle ne doit pas disparaître dans un cadran. time-granularity indique l’intervalle représenté. data-percentile désigne un percentile ; lorsqu’il manque, la valeur est la moyenne de l’intervalle. latency indique le retard sur le temps réel. Une moyenne d’une minute livrée dix secondes plus tard et un 95e percentile sur cinq minutes livré deux minutes plus tard peuvent être exacts ensemble, mais ils ne commandent ni la même marge ni le même rythme de délégation.

Le type générique de source laisse sa configuration précise hors bande. Ce choix ne rend pas l’objet vide. Il normalise l’identité et l’intention de comparaison sans imposer un transport, une méthode d’authentification ou un modèle de coût universels. Les parties qui supportent le risque opérationnel conservent la maîtrise de l’accès.

La mesure doit aussi suivre la chaîne de délégation. Lorsqu’un trafic passe par plusieurs CDN et que l’amont doit rendre compte de l’utilisation totale, il doit agréger les consommations aval. Sinon, le trafic redélégué disparaît de sa vue : le premier nœud semble disposer d’une marge alors que l’ensemble de la chaîne approche de la limite. La comptabilité pertinente épouse le graphe, pas seulement la première relation.

La RFC prévoit un champ current en ligne pour les cas simples, mais déconseille de placer une utilisation très changeante dans une annonce de capacité mise en cache. La séparation entre enveloppe relativement stable et télémétrie plus fréquemment interrogée est une décision d’architecture. Elle expose aussi les cas difficiles : que fait le routeur si la limite est fraîche mais la mesure ancienne, inaccessible, renommée ou publiée avec une autre granularité ?

Réutiliser silencieusement la dernière valeur favorable n’est pas une politique. L’amont peut dégrader l’enveloppe, arrêter les nouvelles délégations, revenir à une allocation statique convenue ou ne maintenir que des flux à faible conséquence. Le bon comportement dépend du modèle de panne et doit être écrit dans le code effectivement exécuté. Le protocole rend le choix exprimable ; il ne choisit pas.

L’architecture générale du CDNI confirme cette répartition. La RFC 6707 distingue le fournisseur de service de contenu, le CDN faisant autorité ou amont, et le CDN aval, tout en laissant les arrangements commerciaux hors de la spécification. La RFC 7336 maintient la décision de routage dans le domaine local de l’amont. Une annonce améliore donc une entrée de décision sans acquérir le pouvoir de déléguer elle-même.

Après la délégation, plusieurs frontières restent à franchir. Le CDN aval doit admettre la requête selon ses files, ses contenus et sa politique en vigueur. Il peut devoir obtenir des métadonnées ou du contenu selon les mécanismes auxquels participe la RFC 8006. Ensuite seulement apparaissent les octets livrés, les sessions maintenues, la latence, l’achèvement et la qualité. Le plafond initial ne contient aucun de ces résultats.

La RFC 8007, avec son interface distincte de déclenchement et de statut, illustre la même discipline : recevoir une commande, la traiter et constater son effet sont des étapes différentes. Une exploitation saine tient donc séparés les états « annoncé », « mesuré », « délégué », « admis », « livré », « vécu » et « réparé ». Un voyant vert unique ne peut pas rendre cette chaîne auditable.

Le journal utile commence par le document FCI exact, son heure de collecte, son empreinte, son TTL et toutes les limites applicables. Il garde les valeurs souples et dures, la source, la métrique, l’horodatage, la granularité, la moyenne ou le percentile, le retard et la méthode d’agrégation. Il ajoute ensuite la version du routeur, sa marge, sa prévision, le volume délégué et sa justification. L’admission, la livraison, la qualité et la clause contractuelle viennent dans des reçus séparés.

La Spécification initiale minimale de Heng Lu explique l’intérêt de ce dessin : partager juste assez de vocabulaire pour coordonner, puis laisser les décisions futures à l’acteur qui en supporte les conséquences. Les couches de réalité empêchent de gonfler un symbole enregistré en état technique, action et résultat. La primauté du code en fonctionnement exige enfin la preuve que le contrôleur réel a récupéré, vieilli, comparé et appliqué ces objets, puis que le système de livraison a produit un effet observable.

La RFC 9808 ne vend pas de capacité. Elle rend une conversation sur la capacité plus précise. Sa bonne lecture conserve sept verbes et sept niveaux de preuve : annoncer, mesurer, déléguer, admettre, livrer, faire vivre et réparer. Les deux nouveaux objets ne gouvernent que les deux premiers.

Sources