Déclassement de l’ancienne couche réseau

Pour gérer la communication entre le client 4D et le serveur 4D, 4D propose trois couches réseau différentes :

  • Legacy,
  • ServerNet,
  • et QUIC.

La couche réseau Legacy a été introduite il y a 30 ans dans 4D v3. Elle a été développée à l’origine pour AppleTalk, améliorée pour ISDN, puis ont été ajoutés IPX et enfin TCP/IP.

Elle a été créée pour une utilisation client/serveur très différente de celle de 4D aujourd’hui : elle est monotâche, optimisée pour les réseaux lents sans cryptage et disponible pour de nombreux protocoles réseau différents. En tant que tel, elle n’est pas du tout optimisée pour les réseaux modernes et ne prend en charge qu’un nombre très limité de fonctionnalités.

C’est pourquoi, avec 4D 20 R5, nous avons décidé de rendre la couche réseau Legacy obsolète et prévoyons de la supprimer prochainement. Nous vous encourageons à passer à ServerNet dès maintenant si vous l’utilisez encore. Permettez-moi de vous expliquer les avantages que vous tirerez de ce changement.

Il y a environ 10 ans, 4D a commencé à développer ServerNet, un nouveau protocole optimisé pour du matériel et des réseaux modernes visant à remplacer la couche réseau Legacy. ServerNet est plus rapide, plus fiable et plus riche en fonctionnalités. Aujourd’hui, nos plus gros clients utilisent ServerNet quotidiennement pour héberger plus d’un millier de connexions simultanées.

Avantages de ServerNet

ServerNet est préemptif : Pour chaque processus préemptif du client, nous exécutons un thread préemptif sur le serveur. Vous ne pouvez pas utiliser le réseau Legacy pour exécuter des threads préemptifs sur le client. Si vous avez des centaines, voire des milliers de processus, ServerNet est obligatoire.

Mode veille: Lorsqu’un ordinateur client passe en mode veille, la couche Legacy ferme la connexion réseau, ce qui oblige le client à quitter l’application. ServerNet, en revanche, maintient la connexion jusqu’à ce que l’utilisateur réveille sa machine.

SSO (Single Sign On via Active Directory) : L’authentification unique sur Windows vous permet d’authentifier automatiquement vos utilisateurs sans dialogue de connexion en utilisant leur identifiants Active Directory. Elle n’est disponible que sur Windows et pas pour la couche Legacy.

Un petit mot sur QUIC

Avec 4D 20, nous avons annoncé que nous travaillions sur une nouvelle couche réseau. La couche réseau QUIC  utilise le protocole QUIC (qui est utilisé par HTTP/3, par exemple) et vise à améliorer la stabilité de la connexion Client/Serveur sur des réseaux peu fiables comme le Wi-Fi et la 5G.

QUIC présente un immense potentiel pour les applications futures nécessitant de meilleures performances sur ces types de réseaux. Nous travaillons activement à l’amélioration de sa stabilité, et nous vous encourageons à rester à l’écoute des développements futurs.

En attendant, ServerNet reste notre choix recommandé pour la plupart des applications en raison de sa stabilité éprouvée et de son ensemble de fonctionnalités.

Comme d’habitude, vos questions et vos commentaires sur ce changement sont les bienvenus sur le forum 4D. Partagez vos expériences et discutons de la manière dont ces avancées peuvent bénéficier à vos applications !

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 !).