{Le lien de téléchargement a expiré. Veuillez actualiser la page et réessayer.}

Communication - Maîtriser les échanges sur le réseau

Système d'exploitation PDF 97 pages 275.32 Ko 7,067
Communication - Maîtriser les échanges sur le réseau
PDF 97 p. 275.32 Ko
Télécharger

Lien sécurisé — 5 min

À propos de ce cours

Développement Système sous Linux/Unix

Table des matières

Chapitre 9 - Communiquer sur le réseau

  • 1 - Introduction
  • 2 - Domaines de sockets
  • 3 - Primitives générales de manipulation
  • 4 - Les fonctions de résolution et les fichiers administratifs
  • 5 - La communication par datagrammes
  • 6 - La communication en mode connecté
  • 7 - Compatibilité avec Microsoft Windows
  • 8 - Les obligations liées aux serveurs
  • 9 - Les évènements d’un démon
  • 10 - Socket au format brut (raw)

Programme du cours

Objectifs d'apprentissage

  • Comprendre les principes fondamentaux de la communication réseau sous Linux/Unix, y compris les sockets et leurs domaines.
  • Maîtriser les primitives de manipulation des sockets pour la configuration et la gestion des connexions.
  • Apprendre à utiliser les fonctions de résolution et les fichiers administratifs pour la gestion des adresses réseau.
  • Développer des compétences en communication par datagrammes (UDP) et en mode connecté (TCP).
  • Savoir implémenter des serveurs réseau robustes, y compris la gestion des démons et des événements.
  • Explorer les sockets bruts (raw) pour des applications avancées comme l'analyse de paquets.
  • Comprendre les enjeux de compatibilité entre Linux/Unix et Microsoft Windows en matière de communication réseau.

Public cible

Ce cours s'adresse aux administrateurs système, aux développeurs et aux étudiants en informatique ayant une connaissance de base des systèmes d'exploitation Linux/Unix. Il est particulièrement adapté pour ceux qui souhaitent approfondir leurs compétences en programmation réseau, en gestion des sockets et en configuration des services réseau. Une familiarité avec les commandes Unix et les concepts de programmation en C est recommandée pour tirer pleinement profit de ce module.

Contenu détaillé

Le chapitre "Communiquer sur le réseau" aborde les mécanismes essentiels pour établir et gérer des connexions réseau dans un environnement Linux/Unix. Il commence par une introduction aux concepts de base, tels que les sockets et leurs différents domaines (AF_INET, AF_UNIX, etc.). Les participants apprendront ensuite à manipuler ces sockets à l'aide de primitives générales, telles que bind(), listen(), accept(), et connect().

Une section importante est consacrée aux fonctions de résolution, comme gethostbyname() et getaddrinfo(), ainsi qu'à l'utilisation des fichiers administratifs (/etc/hosts, /etc/services). Le cours distingue clairement la communication par datagrammes (non connectée, via UDP) de la communication en mode connecté (TCP), en expliquant les avantages et les cas d'usage de chaque approche.

Les aspects pratiques incluent la configuration des serveurs, avec un focus sur les obligations spécifiques (gestion des ports, droits d'accès) et les bonnes pratiques pour les démons réseau. Le module explore également les sockets bruts, permettant un contrôle fin des paquets réseau pour des applications spécialisées. Enfin, des conseils sont fournis pour assurer la compatibilité avec les systèmes Windows, notamment via l'utilisation de WSL ou de bibliothèques multiplateformes.

Des exercices pratiques accompagnent chaque section, comme la création d'un client-serveur basique, la manipulation de sockets UDP/TCP, et l'analyse de trafic avec des outils comme tcpdump. Ce cours combine théorie et pratique pour offrir une compréhension complète des communications réseau en environnement Unix.