par Dan Darnell
Cet article donne un aperçu de la programmation des sockets TCP/IP en explorant
la façon de construire une application de suivi Clients (Customer Tracking) qui
parle à l'AS/400. De telles applications illustrent les avantages du modèle client/serveur.
Un avantage de ce modèle d'application consiste dans le fait qu'il place son accès
à la base de données sur l'AS/400, où se trouve un driver JDBC optimisé Outre
les gains de performance potentiels, le fait de transférer la partie accès aux
données des applications sur le serveur peut améliorer leur sécurité.
Un serveur de sockets propriétaire et personnalisé limite les actions potentiellement
dangereuses de la part d'une application client. Une application client utilisant
le driver JDBC de l'AS/400 Toolbox for Java peut accéder à , et mettre à jour,
pratiquement n'importe quel fichier du système (en fonctions des sécurités propres
de l'AS/400). A l'inverse, une application cliente communiquant avec un serveur
de sockets ne peut toucher des fichiers qu'en utilisant le protocole que l'application
serveur définit.
Un exemple de serveur de sockets Java
" title="Un exemple de serveur de sockets Java">
Les sockets TCP/IP permettent de connecter un client à un serveur pour qu’ils
s’échangent des données. Pour programmer en utilisant des sockets, on crée un
serveur chargé d’écouter et de traiter les requêtes d’un ou plusieurs clients.
Pour se connecter au serveur, le client doit connaître l’adresse IP de la plate-forme
serveur et le port sur lequel l’application serveur est à l’écoute. Un port est
tout simplement un entier entre 1 à 65535 que l’on choisit ; sur un port, l’application
serveur peut être à l’écoute de ses clients, en les distinguant des autres types
d’activité.
Les applications Telnet, par exemple, se connectent toujours au serveur en utilisant
le port 25, le navigateur Web sait que le service HTTP a toujours lieu sur le
port 80. Mon exemple d’application Customer Tracking (dont je parlerai dans un
moment) utilise 8500, que j’ai choisi arbitrairement comme numéro de port. Le
seul inconvénient du choix d’un port est que les nombres de 1 à 1023 sont réservés
à des standards notoires comme Telnet et HTTP. Normalement, les applications peuvent
utiliser en toute sécurité tout numéro de port compris entre 1024 et 65535.
Une connexion par sockets fournit des flux d’entrée et de sortie permettant de
lire et d’écrire facilement des données entre systèmes, tout comme on lit et écrit
des données en utilisant des fichiers stream (c’est-à -dire, des fichiers dans
l’IFS). Allons un peu plus loin : en utilisant la fonction de sérialisation de
Java, on peut utiliser des flux socket pour échanger des objets entiers entre
systèmes.
Un serveur doit être capable de recouvrir des threads multiples, au moins
un thread par client, afin que des communications puissent se dérouler simultanément.
En Java, il est facile de créer une application serveur de sockets capable de
servir un client unique. Malheureusement, pour aller au-delà d’un seul client,
il faut une programmation bien plus élaborée. Pour pouvoir traiter des clients
multiples, un serveur doit être capable de recouvrir des threads multiples, au
moins un thread par client, afin que des communications puissent se dérouler simultanément.
La figure 1 présente un serveur de sockets écrit de telle sorte que des clients
multiples puissent se connecter en même temps. Un seul serveur écoute sur un port
unique les clients qui se connectent, mais un objet de communication sockets threaded
distinct est déployé pour traiter chaque client.
Téléchargez cette ressource
SIEM & PME : Comment construire la boîte noire de votre SI ?
Passez à la cybersécurité proactive, transformez la collecte et l’analyse des logs en un bouclier dynamique contre les cybermenaces. Découvrez comment mettre en place une approche SIEM modulaire, évolutive et accessible, pour anticiper, détecter et réagir efficacement aux attaques.
Les articles les plus consultés
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Afficher les icônes cachées dans la barre de notification
- Activer la mise en veille prolongée dans Windows 10
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Chiffrements symétrique vs asymétrique
Les plus consultés sur iTPro.fr
- La connectivité, nouvelle colonne vertébrale de l’expérience en magasin
- Assises de la Sécurité 2026 : osons remettre l’humain au centre et reprendre les commandes
- Réforme de la facturation électronique 2026 : de la contrainte réglementaire à un véritable enjeu différenciant
- IA : la sécurité se prépare aux accès agentiques
Articles les + lus
Continuer avec Exchange Server : quelles conséquences ?
Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
Sécurité : une approche dans la durée avant tout
À la une de la chaîne Tech
- Continuer avec Exchange Server : quelles conséquences ?
- Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
- Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
- Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
- Sécurité : une approche dans la durée avant tout
