La couche réseau QUIC est prête pour la production !

Avec la version bêta de 4D 20, nous vous avons présenté notre nouvelle couche réseau : La couche réseau QUIC.

À l’époque, elle était encore en cours de développement et donc retirée de la version officielle. Aujourd’hui, nous sommes ravis d’annoncer que la couche réseau QUIC est sortie de la version bêta et qu’elle est officiellement prête pour la production !

Après des tests de charge rigoureux et de précieux commentaires de la part des premiers utilisateurs, la stabilité et les performances de QUIC ont été validées, surpassant même ServerNet dans des domaines clés. Maintenant que QUIC a atteint le niveau de fonctionnalités avec ServerNet dans 4D 20 R5, c’est le moment idéal pour envisager de passer à QUIC.

Mais d’abord, laissez-moi vous en dire plus sur cette excellente nouvelle.

Quand passer à QUIC ?

Pour les nouvelles applications, la réponse est simple : commencez à utiliser la couche réseau QUIC dès le premier jour. Comme les futures versions de 4D introduiront encore plus de fonctionnalités dans QUIC, l’adopter dès maintenant vous assure d’être prêt pour ce qui va venir. En choisissant QUIC, vous éviterez tout changement de couche réseau ultérieur.

 

Pour les applications existantes qui fonctionnent actuellement sur ServerNet, vérifiez vos paramètres de réseau comme décrit ci-dessous et faites le changement.

Bien que ServerNet reste entièrement supporté et qu’il va le rester encore un certain temps, QUIC offre une fiabilité et une stabilité supérieures. Il est important de noter que si QUIC ne résout pas les pannes de réseau, il excelle dans la gestion des pertes de paquets ou des retards occasionnels, là où ServerNet peut générer des erreurs de connexion. Avec les futures améliorations à venir, il vaut mieux penser à l’avenir et tout de suite planifier le changement.

Comme chaque infrastructure réseau est unique, nous vous conseillons de testez QUIC avant de faire le changement, pour vous assurer que tout fonctionne bien chez vous. Nous apprécions beaucoup vos commentaires durant cette phase, car ils nous aideront à affiner et à optimiser la couche réseau de QUIC.

Principales différences : QUIC vs. ServerNet

Une différence importante entre ServerNet et QUIC est que ServerNet utilise le protocole TCP alors que QUIC utilise UDP. TCP et UDP fonctionnent de la même manière sur la plupart des réseaux, mais de nombreux pare-feu et routeurs bloquent l’UDP car il est rarement utilisé par les applications. Par conséquent, si votre serveur 4D ne se trouve pas sur le même sous-réseau que vos client 4D (ce qui est fort probable), nous vous recommandons vivement de tester vos applications avec QUIC avant de planifier un changement complet. Si vous rencontrez des problèmes de connexion, assurez-vous que vos routeurs ou pare-feu ne bloquent pas le trafic UDP.

Remarque concernant les applications enginées

Une autre chose à garder à l’esprit : si vous utilisez des applications enginées, les anciens clients peuvent encore avoir besoin de ServerNet pour être mis à jour vers une version compatible avec QUIC. Laissez simplement vos ports TCP ouverts sur le serveur jusqu’à ce que tous les clients aient installé la version QUIC de votre application.

J’espère que vous êtes aussi enthousiastes que nous à propos de cette nouvelle fonctionnalité ! Restez à l’écoute quant aux mises à jour et améliorations à venir dans les prochaines versions. Comme toujours, si vous avez des questions ou besoin d’aide, le forum 4D est à portée de clic.

Nicolas Brachfogel
- Product Owner & Senior Developer - Nicolas Brachfogel a rejoint 4D en 2017 en tant que développeur senior (4D Server et networking) et en tant que Product Owner pour gérer la mise en production d'Apple Silicon. Il est chargé de rédiger les user stories et de les traduire en spécifications fonctionnelles, ainsi que de s'assurer que les implémentations des fonctionnalités répondent aux besoins des clients. Diplômé de l'Institut Supérieur d'Informatique Appliquée (INSIA), Nicolas a commencé sa carrière en tant que développeur de logiciels en 2001. Après plusieurs années de programmation en Java et C++, il s'est spécialisé dans le développement client-serveur pour des sociétés de jeux vidéo. En tant que développeur/architecte serveur, il a travaillé avec succès sur les architectures serveur de nombreux jeux (Dofus Arena, Drakerz, Trivial Pursuit Go !).