Aller au contenu principal

Appendix B. Interaction with ICE-Lite (Interaction avec ICE-Lite)

Le comportement des agents ICE-lite capables de Trickle ICE ne nécessite aucune règle particulière autre que celles déjà définies dans cette spécification et [RFC8445]. Cette section est donc fournie uniquement à titre informatif.

Un agent ICE-lite génèrerait des informations de candidat conformément à [RFC8445] et indiquerait le support de Trickle ICE. Étant donné que les informations de candidat contiendront une génération complète de candidats, elles seraient également accompagnées d'une indication de fin des candidats.

Lors de l'exécution du trickle complet, une implémentation ICE complète pourrait transmettre la description ICE initiale ou la réponse à celle-ci sans candidats. Après avoir reçu une réponse qui identifie l'agent distant comme une implémentation ICE-lite, l'initiateur peut choisir de ne pas trickler de candidats supplémentaires. Il en va de même dans le cas où l'agent ICE-lite initie l'interaction et l'agent ICE complet est le répondeur. Dans ces cas, les vérifications de connectivité seraient suffisantes pour que l'implémentation ICE-lite découvre tous les candidats potentiellement utiles comme réflexifs de pair.

L'exemple suivant illustre une telle session ICE utilisant la syntaxe SDP :

Agent ICE-Lite                                          Bob
| Offer (a=ice-lite a=ice-options:trickle) |
|---------------------------------------------->|
| |no cand
| Answer (a=ice-options:trickle) |trickling
|<----------------------------------------------|
| Vérifications de connectivité |
|<--------------------------------------------->|
peer rflx| |
cand disco| |
|<========== CONNEXION ÉTABLIE ================>|

Figure 2 : Exemple

En plus de réduire le trafic de signalisation, cette approche supprime également la nécessité de découvrir les liaisons STUN ou de faire des allocations TURN, ce qui peut considérablement alléger le traitement ICE.