Résumé
- L’algorithme de réception proposé par RTP plaçait tout SSRC inconnu en probation : un paquet plausible ne suffisait pas, tandis qu’une courte suite de numéros consécutifs constituait une preuve faible de continuité.
- Devant un saut immense, le récepteur refusait le premier numéro, mémorisait son successeur et ne se resynchronisait que si celui-ci arrivait ; cette règle protégeait la comptabilité sans authentifier l’émetteur.
La syntaxe n’accordait pas encore l’existence
Un récepteur voit pour la première fois le SSRC 0x4A17, avec le numéro 41 900. Le paquet annonce RTP version 2, emploie un type de charge prévu par la session et possède un bourrage compatible avec sa longueur. Ce faisceau élimine certaines interprétations impossibles. Il ne dit pas si le paquet vient de la bonne conférence, s’il a été déchiffré dans le bon contexte ou s’il inaugure vraiment une source.
Le RFC 1889, première norme RTP publiée en 1996, formulait déjà cette pauvreté de la preuve. Le RFC 3550, qui le remplaça en 2003, conserva le mécanisme. Pour un SSRC jamais vu, les contrôles de version, de type, de longueur, d’extension et de bourrage sont expressément qualifiés de faibles.
Le récepteur ajoute donc une dimension absente du premier paquet : le temps. Le nouveau SSRC entre en probation. Dans l’exemple de l’annexe A.1, il ne devient valide qu’après MIN_SEQUENTIAL numéros consécutifs. Avec la valeur typique de deux, 41 900 reste une candidature ; 41 901 crée la première continuité observable.
Ce n’est pas une identité. Deux numéros bien ordonnés ne nomment ni un appareil ni une personne, et ne promettent aucun décodage heureux. Ils autorisent seulement une hypothèse de travail : ces datagrammes se comportent comme une source qui entretient une séquence.
La prudence se payait en début de média
RTP permet de jeter les paquets de probation ou de les retenir jusqu’à validation si le délai demeure acceptable. Plus la série exigée est longue, moins un hasard passe facilement ; mais davantage de son ou d’image reste bloqué. Sur un chemin très déficient, la source légitime peut ne jamais produire la série demandée.
Voilà pourquoi les nombres de l’annexe sont des paramètres illustratifs. Un paquet RTCP valide reçu auparavant renforce le contexte. Un format de charge dont les horodatages suivent un pas prévisible ajoute un autre contrôle. Une conversation téléphonique et un flux enregistré n’achètent pas la même sûreté au même prix de démarrage.
La probation est ainsi une décision locale du destinataire. La baptiser « authentification » ferait croire que l’émetteur a fourni une preuve qu’il ne possède pas.
Seize bits imposaient une histoire circulaire
Après l’admission, les numéros ne sont toujours pas de simples entiers. Le champ RTP fait seize bits : après 65 535 vient zéro. Le récepteur conserve donc le maximum observé et un compteur de cycles. Leur combinaison produit un numéro étendu dont RTCP peut tirer les paquets attendus malgré les tours du compteur.
Le réseau ajoute le désordre. Un numéro légèrement inférieur au maximum peut être tardif ou dupliqué ; un numéro raisonnablement supérieur peut révéler une lacune. L’exemple du RFC 3550 dessine un voisinage admissible avec MAX_MISORDER égal à 100 et MAX_DROPOUT égal à 3 000.
Les hypothèses accompagnant ces valeurs en sont la véritable unité : cinquante paquets par seconde, deux secondes de désordre maximal et une minute d’interruption. À un autre débit, les mêmes nombres décrivent une autre durée. Ils ne sont pas des constantes universelles de la vidéo ou de la voix.
Le saut extravagant dut être répété
Supposons une source arrivée à 12 000, puis un paquet numéroté 50 000. Compter immédiatement tout l’intervalle comme perdu donnerait une précision fictive. Décider immédiatement que l’émetteur a redémarré inventerait également une biographie à partir d’une seule anomalie.
L’algorithme refuse d’abord le saut et conserve « le mauvais numéro plus un » dans bad_seq. Si 50 001 arrive ensuite, les deux valeurs forment un nouveau début consécutif. Le récepteur réinitialise alors l’état de séquence et traite ce second paquet comme la première observation admise d’une nouvelle époque.
Le premier numéro anormal suspend le jugement ; son successeur rend plausible une interruption prolongée ou un redémarrage non annoncé. La logique ressemble à la probation initiale, mais la question diffère. La première décide si un SSRC inconnu mérite un état durable. La seconde décide si l’ancienne histoire d’un SSRC connu explique encore les paquets présents.
Remettre le compteur à zéro refusait de fabriquer des pertes
La resynchronisation réinitialise les statistiques de perte. Cette rupture ne nie pas les pertes antérieures. Elle reconnaît que plusieurs tours complets de 16 bits ont pu s’écouler sans observation, ou que l’émetteur a pu choisir un nouveau point aléatoire après redémarrage. Aucun calcul ne peut relier honnêtement les deux époques sans pont observé.
Le compte RTP n’est déjà pas une simple proportion. Le RFC 3550 définit la perte cumulée comme les paquets attendus moins les paquets reçus, en incluant parmi les reçus les retardataires et les doublons. Un excès de doublons peut rendre le résultat négatif. Le RFC 3611 ajouta des traces explicites de perte et de duplication, en privilégiant l’observation des événements sur leur interprétation précipitée.
La frontière d’époque décide donc du sens du dénominateur. Continuer le vieux compte après une renaissance invisible ne préserverait pas les preuves ; cela les inventerait.
Une annexe corrigée devint de l’infrastructure
Le RFC 3550 corrigea plusieurs détails hérités du RFC 1889 : base_seq devait commencer au numéro reçu, non à ce nombre moins un ; le texte devait mémoriser le mauvais numéro plus un ; l’initialisation complète fut distinguée de l’appel d’une seule fonction ; des mots perdus lors de la publication de 1996 furent restaurés.
Ces réparations paraissent modestes, mais une erreur de départ modifie les paquets attendus et une phrase ambiguë change le paquet qui confirme l’époque. Le pseudo-code d’une annexe circule souvent plus loin que ses avertissements.
L’invention durable ne réside donc pas dans 2, 100 ou 3 000. Elle réside dans des états nommés : candidat, séquence admise, retard acceptable, discontinuité suspecte, nouveau départ confirmé.
La continuité ne signait rien
Un faussaire capable d’émettre deux numéros consécutifs peut réussir ce contrôle ; une source réelle victime de pertes peut échouer. Le RFC 3711 définit ensuite SRTP pour apporter confidentialité, authentification de message et protection contre le rejeu avec une gestion de clés appropriée. Il s’agit d’une autre couche de preuve.
Même SRTP ne prouve pas qu’une personne a écouté ni que le média était intelligible. La probation RTP affirme moins encore. Elle enseigne qu’un champ n’acquiert de sens qu’au sein de l’état qui l’interprète : le premier numéro propose, le second établit une continuité ; un grand saut ferme l’ancien compte, son successeur peut en ouvrir un nouveau.
Sources
Briefing des membres
Contexte approfondi du profil
Connectez-vous avec le bon niveau d'adhésion pour débloquer le briefing complet et les notes de source.
Réservé à Strategic Circle
Strategic Circle
Ouvert à tous les lecteurs. Débloquez les briefings de profil après adhésion et connexion.
Rejoindre Strategic CircleRéservé aux membres de Leadership Alliance
Leadership Alliance
Réservé aux propriétaires et dirigeants qualifiés d'actifs IP ; connectez-vous pour débloquer les briefings Alliance.
Rejoindre Leadership Alliance
