Objectifs du cours
A l’issue de cette unité d’enseignement, l’étudiant-e sera capable:
- expliquer les principes de la réalisation de protocoles de réseau dans un système d’exploitation ;
- intégrer une fonction de traitement simple de paquets dans un OS (Linux) ;
- réaliser des fonctions de traitement de paquets de manière efficace (mémorisation de paquets,
- filtrage d’adresses MAC, fragmentation et réassemblage, classification de paquets, recherche dans les tables de routage) ;
- choisir et utiliser les outils pour réaliser les fonctions de pontage, routage, firewall et NAT sous Linux ;
- tenir compte des licences Open Source lors du développement d’un système embarqué.
A l’issue des travaux pratiques en laboratoire, principalement destinés à l’assimilation des connaissanceset à l’acquisition d’expérience, l’étudiant-e sera en outre capable de :
- déployer un système d’exploitation sur une plateforme matérielle
- réaliser une fonction de traitement simple de paquets dans un OS (Linux) ;
- réaliser un dispositif de réseau tel qu’un routeur, firewall, NAT sous Linux
Cours
- Systèmes d’exploitation pour dispositifs de réseau : Linux, WinCE, VxWorks, licenses Open Source
- Sous-système réseau d’un OS : Architecture, structures de données, système Netfilter de Linux
- Algorithmes de traitement de paquets : mémorisation de paquets, filtrage d?adresses MAC, fragmentation et réassemblage, classification de paquets, recherche dans les tables de routage
- Dispositifs de réseau et leur réalisation logicielle sous Linux : fonctions LAN, routage, firewall, NAT.
Slides
- Chapitre 0: Préface
- Chapitre 1: Introduction
- Chapitre 2: Développement
- Chapitre 3: Linux embarqué
- Chapitre 4: Dispositif de réseau
- Chapitre 5: LAN
Exercices
Laboratoires
Laboratoire 1: Linux avancé
Laboratoire 2: Noyan Linux
Laboratoire 3: Système de fichiers
Laboratoire 4: Snapgear
Laboratoire 5: Projet à choix sur Rasberry Pi
Liens
- Linux Documentation Project: Guides détaillés, FAQs, pages de manuels
- Linux kernel archives. Site pour télécharger les sourcs du noyau Linux
- Linux from scratch: Instructions et outils pour construire sa propre distribution Linux
- Snapgear Linux: Distribution Linux embarquée complète et libre. Gérée par la société CyberGuard
- Embedded Debian. Distribution Linux embarquée, basée sur Debian
- MontaVista Linux: Distribution Linux embarquée commerciale. Supporte les processeurs IXP4xx
- Red Hat Linux. Outils de développement commerciaux pour la distribution Red Hat sur des systèmes embarqués
- Crosstool-ng. Construction de toolchains.
- uClibc. Remplacement de GLIBC pour les systèmes embarqués
- HOWTO du routage avancé et du contrôle de trafic sous Linux
- http://www.netfilter.org/documentation/HOWTO/fr/packet-filtering-HOWTO-7.html
- HOWTO du routage avancé et du contrôle de trafic sous Linux, section 9.
- Traffic control HOWTO ; Section « Annotated Traffic Control Links »
- «HOWTO-Index : Networking»
- « The Linux Networking Overview HOWTO »