Qu’est-ce qu’un serveur TURN ?
Un serveur TURN est un serveur réseau spécialisé qui permet la transmission de données entre deux appareils lorsque ceux-ci ne peuvent pas se connecter directement en raison de pare-feux ou de routeurs NAT. Il est principalement utilisé dans les applications de communication en temps réel.
- 1 Gbit/s de bande passante et trafic illimité
- Disponibilité de 99,99 % et certification ISO
- Assistance 24/7 primée pour sa qualité et conseiller personnel
Qu’est-ce qu’un serveur TURN ?
Un serveur TURN (Traversal Using Relays around NAT) est un service réseau qui agit comme relais et transmet les données entre deux participants.
Il devient nécessaire lorsque les connexions directes peer-to-peer échouent, par exemple en raison de pare-feux restrictifs ou de configurations NAT complexes. Dans ces cas, le serveur TURN relaie l’ensemble du trafic via lui-même et agit comme relais applicatif.
Le serveur TURN fournit à un client une adresse de relais publique et un port par lesquels les autres participants peuvent envoyer des données. Ces données sont ensuite retransmises vers la destination finale.
TURN s’appuie sur des protocoles existants comme UDP ou TCP et est étroitement lié à la communication en temps réel. Par rapport à des méthodes plus simples, TURN est plus gourmand en ressources, mais offre une meilleure fiabilité de connexion. Il est donc indispensable dans de nombreuses solutions de communication professionnelles.
Dans de nombreux scénarios, un serveur STUN est utilisé en amont d’un serveur TURN. Un serveur STUN aide les terminaux à déterminer leur adresse IP publique et l’affectation de leurs ports afin d’établir une connexion peer-to-peer directe. Si cette connexion échoue en raison de pare-feux restrictifs ou de types de NAT, le serveur TURN prend le relais en relayant l’intégralité du trafic.
Comment fonctionne un serveur TURN ?
Le fonctionnement d’un serveur TURN est fondamentalement simple : on peut le voir comme un intermédiaire qui met en relation deux interlocuteurs lorsque ceux-ci ne peuvent pas se connecter directement.
- Dans un premier temps, le client établit une connexion avec le serveur TURN et s’y authentifie, généralement à l’aide de données d’accès temporaires.
- Après une authentification réussie, le client demande une « allocation ». Le serveur TURN réserve alors une adresse de relais publique ainsi qu’un port, via lesquels le client devient accessible depuis l’extérieur. Le client communique ensuite cette adresse de relais à son interlocuteur.
- Au lieu de communiquer directement entre eux, les deux terminaux envoient leurs paquets de données au serveur TURN. Le serveur agit alors comme une station intermédiaire, reçoit les paquets entrants et les transmet à l’autre participant.
Ce mécanisme fonctionne aussi bien pour les connexions sortantes qu’entrantes et contourne efficacement les restrictions liées au NAT et aux pare-feux. TURN (spécifié dans la RFC 8656) prend en charge différents protocoles de transport comme UDP et TCP pour s’adapter à un maximum de conditions réseau.
Si nécessaire, les échanges avec le serveur TURN peuvent être sécurisés via TLS selon la configuration. C’est souvent le cas dans les réseaux d’entreprise fortement restreints, afin de garantir la confidentialité des données grâce au chiffrement.
Un serveur TURN gère les sessions, les allocations et les temporisations, et peut ainsi utiliser les ressources efficacement et prévenir les abus. La retransmission via le serveur entraîne certes une latence plus élevée et une consommation de bande passante supplémentaire, mais TURN favorise une communication plus stable et fiable, même dans des conditions réseau complexes.
Quels sont les domaines d’application d’un serveur TURN ?
Les serveurs TURN sont principalement utilisés dans les applications de communication en temps réel. Des exemples typiques incluent les systèmes de visioconférence, la téléphonie VoIP et les jeux en ligne. Les applications basées sur WebRTC utilisent également fréquemment TURN.
TURN devient pertinent dès que les utilisateurs se trouvent derrière des pare-feux ou des NAT. Sans serveur TURN, de nombreuses connexions seraient interrompues ou impossibles à établir. Cela est particulièrement courant dans les réseaux d’entreprise, où TURN garantit une accessibilité maximale. Les développeurs utilisent aussi TURN comme mécanisme de repli lorsque les connexions directes échouent.
Un exemple concret d’utilisation d’un serveur TURN est Nextcloud Talk. Les fonctions audio et vidéo de Nextcloud Talk reposent sur WebRTC et nécessitent des connexions fiables entre les participants. Lorsque les utilisateurs se trouvent derrière des pare-feux ou dans des réseaux différents, un serveur TURN est nécessaire pour permettre des communications stables.
De quel matériel a besoin un serveur TURN ?
Pour faire fonctionner un serveur TURN, aucun matériel spécialisé n’est requis. Toutefois, le dimensionnement des ressources serveur est essentiel. Les serveurs VPS (Virtual Private Server) sont privilégiés, car ils offrent un bon équilibre entre performance, coût et flexibilité.
Un VPS fournit des ressources dédiées comme des cœurs CPU, de la RAM et une bande passante garantie, ce qui est important pour un serveur TURN :
- Le processeur (CPU) gère le routage des paquets, les sessions et, si nécessaire, le chiffrement.
- Une quantité suffisante de RAM est nécessaire pour gérer un grand nombre de connexions simultanées de manière stable.
- L’interface réseau est critique, car tout le trafic média transite par le serveur TURN et peut atteindre des volumes élevés.
Une connexion rapide et stable avec une faible latence influence directement la qualité audio et vidéo. Les serveurs VPS sont souvent faciles à faire évoluer en ajoutant du CPU, de la mémoire ou de la bande passante selon la charge. Le libre choix du système d’exploitation est également un avantage, car les logiciels TURN sont généralement exécutés sous Linux, où ils fonctionnent de manière efficace. Enfin, le contrôle total des paramètres réseau (pare-feux, ports, NAT) permet une configuration fine. Par rapport à l’hébergement partagé, un VPS offre de meilleures performances, des ressources prévisibles et une fiabilité supérieure. Pour la plupart des cas d’usage, un VPS performant suffit donc largement.

