Vous êtes sur la page 1sur 94

Table des matières

Besoins en réseaux .................................................................................................................................. 5


Besoin des utilisateurs............................................................................................................................. 5
La commutation ...................................................................................................................................... 5
Commutation de Circuits......................................................................................................................... 5
Commutation de paquets........................................................................................................................ 5
Commutation de Paquets : routage ........................................................................................................ 6
Compatibilité ........................................................................................................................................... 6
Comment atteindre l'interopérabilité ? .................................................................................................. 6
Rôle des standards .................................................................................................................................. 6
Types de réseaux ..................................................................................................................................... 7
Topologie ................................................................................................................................................. 7
Composants des réseaux ......................................................................................................................... 7
Modèle OSI .............................................................................................................................................. 7
Protocole ................................................................................................................................................. 7
Services .................................................................................................................................................... 8
Les 7 couches du modèle OSI .................................................................................................................. 8
Opérations d'une couche ........................................................................................................................ 8
Cheminement dans les couches .............................................................................................................. 8
Modèle OSI .............................................................................................................................................. 9
La couche Physique (1) ............................................................................................................................ 9
La couche Liaison de données (2)............................................................................................................ 9
La couche Réseau (3) ............................................................................................................................... 9
La couche Transport (4) ........................................................................................................................... 9
La couche Session (5) .............................................................................................................................. 9
La couche Présentation (6) .................................................................................................................... 10
La couche Application (7) ...................................................................................................................... 10
Résultat.................................................................................................................................................. 10
Terminologie des couches ..................................................................................................................... 10
Mise en forme des paquets ................................................................................................................... 10
PDU ........................................................................................................................................................ 11
Les équipements ................................................................................................................................... 11
Modèle Internet .................................................................................................................................... 11
Rôle de la couche physique ................................................................................................................... 12
Type de transmission............................................................................................................................. 12
RS32 ....................................................................................................................................................... 16
Niveaux de tension ................................................................................................................................ 17
Contrôle du flux ..................................................................................................................................... 18
Protocole Xmodem ................................................................................................................................ 19
Protocole Zmodem ................................................................................................................................ 19
Protocole Kermit ................................................................................................................................... 20
Codage de l'information ........................................................................................................................ 20
NRZ (Non Return to Zero)...................................................................................................................... 20
NRZI (Non Return to Zero Inverted) ...................................................................................................... 21
MLT3 ...................................................................................................................................................... 21
2B1Q ...................................................................................................................................................... 22
4B/5B 8B/10B ........................................................................................................................................ 22
Manchester ........................................................................................................................................... 23
Manchester différentiel ........................................................................................................................ 23
Bipolaire ................................................................................................................................................ 24
LAN ........................................................................................................................................................ 24
Ethernet ................................................................................................................................................. 24
Adresses Ethernet ................................................................................................................................. 25
Ethernet ................................................................................................................................................. 26
Unicast, multicast et broadcast ............................................................................................................. 26
Répéteur ................................................................................................................................................ 27
Pont (bridge).......................................................................................................................................... 27
Commutateur (switch) .......................................................................................................................... 28
Passerelle (Routeur) .............................................................................................................................. 29
Résumé Equipements / composants ..................................................................................................... 30
Fonctionnement d'un commutateur (switch) ....................................................................................... 30
Spanning tree (STP) ............................................................................................................................... 31
Protocole IP ........................................................................................................................................... 32
Datagramme IP .................................................................................................................................. 32
Fragmentation IP ............................................................................................................................... 35
Protocole ARP ........................................................................................................................................ 36
Protocole RARP...................................................................................................................................... 38
Protocole ICMP ...................................................................................................................................... 38
Routage IP ............................................................................................................................................. 40
Table de routage ................................................................................................................................... 41
Algorithme de routage .......................................................................................................................... 42
Routage dynamique .............................................................................................................................. 42
Interface loopback................................................................................................................................. 44
Conclusion sur IP (v4) ............................................................................................................................ 46
Identification de la destination ............................................................................................................. 47
Description de l'en-tête ..................................................................................................................... 47
Ports réservés / disponibles .............................................................................................................. 49
TCP ......................................................................................................................................................... 49
En-tête ............................................................................................................................................... 51
Etablissement d'une connexion ........................................................................................................ 53
Clôture d'une connexion ................................................................................................................... 54
Clôture canonique ......................................................................................................................... 54
Clôture abrupte ............................................................................................................................. 55
Contrôle du transport.................................................................................................................... 55
Besoins en sécurité................................................................................................................................ 57
Installation de la carte réseau ............................................................................................................... 59
Les protocoles ....................................................................................................................................... 60
IPX/SPX .............................................................................................................................................. 60
NetBIOS ............................................................................................................................................. 60
TCP/IP ................................................................................................................................................ 61
Adressage Internet ................................................................................................................................ 61
Broadcast ............................................................................................................................................... 63
Masque de réseau ou de sous-réseau................................................................................................... 64
Sous-réseaux ..................................................................................................................................... 64
DHCP ...................................................................................................................................................... 66
Fonctionnement DHCP ...................................................................................................................... 67
Identités Linux ....................................................................................................................................... 69
/etc/passwd ....................................................................................................................................... 69
Recherche d'utilisateurs .................................................................................................................... 70
Commandes d'identification ............................................................................................................. 70
Changement de groupe actif ............................................................................................................. 70
Changement des informations personnelles .................................................................................... 70
Changement de shell ......................................................................................................................... 70
Consoles multiples............................................................................................................................. 71
Changement d’identité...................................................................................................................... 71
Les droits ............................................................................................................................................... 71
Attributs d'un fichier ......................................................................................................................... 71
Changement de propriétaire ............................................................................................................. 71
Les droits ........................................................................................................................................... 71
Affichage des droits ........................................................................................................................... 72
Modification ...................................................................................................................................... 72
Cas spéciaux ...................................................................................................................................... 72
Groupement ...................................................................................................................................... 73
La notation Octale ............................................................................................................................. 73
Interprétation - Fichiers..................................................................................................................... 73
Changement de propriétaire ............................................................................................................. 74
Changement de groupe ..................................................................................................................... 74
Droits par défaut ............................................................................................................................... 74
Les droits d'endossement.................................................................................................................. 75
SUID-bit ............................................................................................................................................. 75
SGID-bit.............................................................................................................................................. 75
Sticky-bit ............................................................................................................................................ 75
FTP - TFTP .............................................................................................................................................. 76
FTP ..................................................................................................................................................... 76
Les commandes ................................................................................................................................. 79
Les réponses ...................................................................................................................................... 79
TFTP ....................................................................................................................................................... 81
Notions Générales ............................................................................................................................. 83
Notions Générales Pair - à - Pair Partage de fichiers......................................................................... 84
Partage Unix / Unix............................................................................................................................ 84
/etc/exports....................................................................................................................................... 86
NFS et Windows ?.............................................................................................................................. 86
Partage Windows / Windows ................................................................................................................ 86
Création de dossiers partagés ........................................................................................................... 87
Gestion des conflits pour un utilisateur ............................................................................................ 88
Gestion des autorisations Type Moléculaire ..................................................................................... 90
Gestion des conflits ....................................................................................................................... 91
Audit .............................................................................................................................................. 93
Partages cachés ............................................................................................................................. 93
Partages communs ........................................................................................................................ 93
Net use .......................................................................................................................................... 94
Besoins en réseaux
Applications mobiles
Centralisation des données (NAS)
Parfois : re-centralisation des applications (thin client)
Fusion télécom/-informatique (voix-sur-IP et applications, gestion)
Fusion avec les réseaux stockage (SAN), de calcul (grid) et d'information (clouds)

Besoin des utilisateurs


Données transportées
Voix
Images fixes ou mobiles
Transactionnel (« téléinformatique »)
Stockage de données
Qualité de service (QoS) désirée
Délai, taux de perte, débit, …
Avec ou sans phase de connexion

La commutation
Type de commutation
De circuits (téléphonie, ISDN X.75) : réservation d'un circuit physique.
De paquets (TCP/IP)

Commutation de Circuits
Réservation de ressources de bout-en-bout pour chaque « appel »
Bande passante du lien = capacité du lien
Ressources dédiées, donc sans partage
Performances garanties (débit)
Nécessite l’établissement de la connexion
1 connexion = 1 circuit
Les routeurs maintiennent un état de la connexion
Temps de transmission indépendant du nombre de liens

Commutation de paquets
Réseaux à commutation de paquets
Les messages longs sont divisés en paquets plus petits
Les paquets traversent les liens de communication et les routeurs
Congestion
Les paquets s ’amoncellent dans des files d’attentes et attendent l’accès aux ressources
Store and forward : Les paquets se déplacent étape par étape
Transmission sur un lien
Attente du service
Intérêt pour les flots irréguliers (bursty)
Partage de ressources
Sans mise en place d’appel
Congestion excessive :
Délai et pertes de paquets
Protocoles nécessaires pour le transfert fiable de données, contrôle de congestion

Commutation de Paquets : routage


Objectif : déplacer les paquets de la source à la destination
Réseau datagramme :
L’adresse de destination détermine à chaque pas le routage
Les routes peuvent changer durant la session.
Réseau à circuit virtuel
Chaque paquet contient un tag (ou label) définissant le chemin à suivre,
La route est fixée au début de la connexion
Chaque routeur doit garder une table d’état pour chaque appel

Compatibilité
Interopérabilité :
Des systèmes de fournisseurs et de génération différents peuvent communiquer et
collaborer
Portabilité :
Des applications peuvent fonctionner sans modification dans des environnements différents

Comment atteindre l'interopérabilité ?


Convertisseurs
Complexes
Perte de fonctionnalité
Problème du N carré
Normes (standards)

Rôle des standards


Qualité d'un standard
Ouvert, disponible, reconnu
Groupes de standardisation
IETF, ISO, IEEE, ECMA, etc.
Standards « industriels » (p.ex. Ethernet ou SCSI, au départ)
Nécessaire pour l'interopérabilité

Types de réseaux
LAN (Local Area Network) : réseau local
MAN (Metropolitan Area Network) : une centaine de km
WAN (Wide Area Network) : toute la terre

Topologie
Principalement : bus, étoile, anneau
Média partagé ou non
Présence de collisions et de résolution ?
Méthode d'accès
Topologies virtuelles (construites)
Tableaux de brassage
Concentrateurs, commutateurs
VLAN
VPN

Composants des réseaux


Terminaux (DTE, PC, station de travail, serveur (host), ordinateur, imprimante, ...)
Nœuds (hub/répéteur/pont, switch/commutateur, routeur, PBX, ...)
Lignes (fils, bus, coax, câbles, paire symétrique, fibre, faisceau hertzien, ...)

Modèle OSI
« Diviser pour régner » : 7 couches
Permet de décrire une architecture de
Est un modèle, un but idéal
Pouvoir remplacer chaque couche sans détruire l'édifice
Assurer l'interopérabilité

Protocole
Règles de collaboration entre instances d'une couche
Format des messages échangés
Déroulement des échanges
Fonctions accomplies selon les états
Un protocole peut être décrit par
Un automate (machine à état)
État interne
Entrées (message, événements)
Sorties (messages, nouvel état interne)

Services
Fonction offerte par une couche n à la couche n+1
Établir une connexion, transporter des données, etc
Les fonctions sont réalisées par la couche elle-même à l'aide des services de la couche inférieure n-1

Les 7 couches du modèle OSI


Numéro Anglais Français
7 Application Application
6 Presentation Présentation
5 Session Session
4 Transport Transport
3 Network Réseau
2 Data link Liaison de données
1 Physical Liaison physique

Opérations d'une couche


Multiplexage/démultiplexage
Segmentation ou fragmentation, réassemblage
Découpage en unités de données

Cheminement dans les couches


Seule la couche 1 (physique) interconnecte les équipements
La portée (quelles couches sont utilisées et entre quels équipements) dépend de la structure
Exemples
Un réseau couche 3 interconnecte de nombreuses couches 2, éventuellement de
types (technologies) différentes
Un routeur ne s'occupe pas des couches au-dessus de la couche 3
Modèle OSI
Couches de communication (1, 2, 3)
: transmission effective dans le réseau, de machines voisines en machines voisines
Couches ‘charnières’ (4)
Couches de traitement (5, 6, 7)
Chaque couche estime parler directement à son homologue

La couche Physique (1)


Détails électroniques, électriques et mécaniques d’une liaison physique
Transmission « brute » des bits sur un canal de communication (support physique)
Représentation « électrique » des bits 1 et 0

La couche Liaison de données (2)


Transformer transmission « brute » en transmission « sans erreurs »
Trames de données (marqueurs début et fin)
Acquittements
Codes correcteurs d’erreurs
Contrôle de flux

La couche Réseau (3)


Routage et acheminement des paquets à travers un ou plusieurs réseaux /sous-réseaux
Paquets acheminés d’une source vers une destination
Gestion engorgement et congestion

La couche Transport (4)


Contrôle bout en bout du transport de l’information entre 2 systèmes distants
Transport fiable

La couche Session (5)


Organisation et structuration du dialogue inter-host. Gère la synchronisation des échanges et les «
transactions », permet l'ouverture et la fermeture de session. La couche Présentation (6)
Syntaxe et sémantique de l’information
Codage, cryptage, compression
Chargée de la conversion entre données manipulées au niveau effectivement transmises. Applicatif et
chaînes d'octets

La couche Présentation (6)


Syntaxe et sémantique de l’information
Codage, cryptage, compression
Chargée de la conversion entre données manipulées au niveau applicatif et chaînes d’octets
effectivement transmises.

La couche Application (7)


Comporte de nombreux protocoles Point d’accès aux services réseaux fréquemment utilisés.
Résultats : 7 couches

Résultat

Terminologie des couches

Mise en forme des paquets


Les données fournies par l'utilisateur ne peuvent être envoyées telles quelles
PDU (Protocol Data Unit) : le format des messages à chaque couche :
Entête (header)
Données de la couche supérieure (utiles ; data
« Post-tête » (trailer) -- parfois payload)

PDU
Afin de pouvoir réaliser les services
de la couche pour le message
transmis, les instances doivent
ajouter au message des
informations destinées à leur
instance partenaire (ex : checksum)
Ces informations sont insérées
devant (et de la couche supérieure.
Éventuellement derrière) le
message reçu
Les données fournies à une
primitive de service sont appelées
(N)-SDU (« Service Data Unit ») où N
est l'indication de la couche, son
numéro dans la norme, parfois une
lettre tirée du nom de la couche.
Les messages d'un protocole sont appelés PDU

Les équipements
Les équipements réellement disponibles sont rarement limités à une seule couche.
Cependant, pour placer les équipements réseaux dans le modèle, on considère des équipements
idéaux
Hub = cas particulier d'un répéteur à plusieurs interfaces.
Bridge ou pont = un switch limité à deux interfaces.
En réalité, un routeur cumulera souvent
NAT, firewall, interface Web de configuration, … plusieurs fonctions

Modèle Internet
TCP / IP développé avant OSI
Simplification du modèle
Fusion des couches 5,6 et 7
Modèle plus simple
Rôle de la couche physique
La couche physique assure exclusivement le transport de flots de bits sur le support entre station
source et station destinataire.
Ses principales préoccupations sont
Codage du signal
Rapidité de modulation
Compatibilité mécanique et électrique des interfaces.

Type de transmission
Parallèle
Les symboles binaires sont transmis
simultanément sur plusieurs voies
Voies physiques indépendantes (lignes
téléphoniques) ou solidaires (lignes interne
d'un bus).
Attention au prix
Généralement prévu pour des courtes distances

Série
Transforme les octets ou mots en une suite rythmée
de bits permettant de générer un signal électrique
alterné.

Asynchrone
Trains d'impulsions ou d'informations séparées
par des intervalles de temps quelconques
Nécessite des délimiteurs

Synchrone
Horloge de synchronisation
Transmission en continu, pas besoin de délimiteurs
Isochrone
Données formatées de manière asynchrone et transmises de
manière synchrone.

Intermittente
Echange d'informations entre ordinateurs
Longues périodes possibles sans données
Commutation de paquets

Permanente
Audio / Vidéo, …
Commutation de circuit

Bande de base
Pas de transposition du signal

Bande porteuse :
Une onde porteuse est une forme d'onde (généralement sinusoïdale) qui est modulée par un
signal d'entrée dans le but de transporter des informations.
La porteuse a généralement une fréquence beaucoup plus élevée que le signal d'entrée.
L'intérêt de la porteuse est le plus souvent soit de transmettre une information à travers
l'espace sous forme d'onde électromagnétique (comme pour la radio), soit de permettre à
plusieurs porteuses de fréquences différentes de partager un même support physique par
multiplexage fréquentiel (comme dans le cas de la télévision par câble).
Signal modulé : amplitude fréquence

Phase
Large bande
Signal modulé sur des canaux différents
Multiplexé / Transmis / Démultiplexé

Large bande optique


Large bande en fréquences

Multiplexage numérique

Numérique
Données représentées par des
symboles en nombre fini.
Représenté par une suite de
niveaux discrets de durée fixe.

Unidirectionnelle
Sens unique
Bidirectionnelle (les deux sens)
Half duplex (un sens à la fois)
Full duplex (les deux sens à la fois)

RS32
La liaison série ou RS-232 permet l'envoi de données via une chaîne de niveaux logiques envoyés en
série.
Elle permet de faire dialoguer deux systèmes (et seulement deux) entre eux.
Les données sont envoyées par trames de 5, 6, 7 ou 8 bits
Liaison de type asynchrone.
N'envoie pas de signal d'horloge pour synchroniser les deux intervenants de la liaison
Obligation de configurer les ports de manière identique.
Au repos la ligne de transmission est au niveau logique 1.
Lorsque l'un des systèmes veut commencer à communiquer, il prévient le système à l'autre bout de la
liaison par une mise de la ligne au niveau 0, c'est le bit de Start.
Viennent ensuite les bits de données. Ils sont soit au niveau 1 soit au niveau 0 en fonction des données.
Les bits constituant le mot binaire à transmettre sont ensuite envoyés un par un en commençant par
le bit de poids le plus faible.
L'octet 01011001 est envoyé dans l'ordre :
10011010.

Temps de bit
Ce temps est lié au débit binaire en bits par seconde (bit/s) de la transmission.
Débit binaire = 1 / T.
Par exemple, si T = 1 ms, la transmission se fait à 1000 kbit/s.
Les débits binaires usuels des transmissions sérielles asynchrones sont, en bit/s : 50, 75, 150, 300, 600,
1200, 2400, 4800, 9600, 19 200, 38 400 et 56 kbit/s, etc…
Un dernier bit de parité peut être ajouté.
Bit de parité : Pour tenter de repérer à l'arrivée la survenue d'une erreur lors de la transmission, le
transmetteur peut générer un bit de parité. Le bit de parité peut être défini de deux manières
Convention dite de "parité paire"
On compte les bits à "1" en comprenant le bit de parité.
Leur nombre doit être pair. Par exemple, l'octet 01011001 compte 4 bits à "1", le bit de parité doit être
à "0" dans cette convention.
Convention dite de "parité impaire"
On compte les bits à "1" en comprenant le bit de parité. Leur nombre doit être impair. Par exemple,
l'octet 01011001 compte 4 bits à "1", le bit de parité doit être à "1" dans cette convention.
En résumé, il existe trois possibilités de convention.
PARITE PAIRE : "EVEN PARITY" en anglais.
PARITE IMPAIRE : "ODD PARITY" en anglais.
PAS DE BIT DE PARITE : "NO PARITY" en anglais

Après ce bit de parité viennent un ou deux bits de Stop qui signalent au receveur que la trame est
terminée.
Le transmetteur et le récepteur doivent accorder les caractéristiques de leur liaison pour un
fonctionnement correct.

Niveaux de tension
Toutes les lignes de la RS-232 sont numériques. Elles transmettent donc des signaux électriques
représentant symboliquement un '0' et un '1'.
Ces signaux sont des tensions continues, dont la valeur est fixée par la norme.
Cette norme est différente du côté émetteur et du côté récepteur en raison de la chute de tension
pouvant avoir lieu dans un câble de RS- 232.
LIAISON RS 232 SIMPLIFIEE
Dans de nombreux cas, il faudra croiser certaines connexions, les 2 et 3 pour le moins. En effet
l'émission des données (2) doit correspondre à la réception (3) à l'autre bout. Soit le croisement est
possible sur l'un des deux équipements, soit, il est nécessaire d'effectuer ces croisements sur le câble.
Liaison maitre-esclave

Liaison maître-maître

LIAISON RS 232 COMPLETE


"Flow control" hardware pour transmettre en parallèle des canaux
d'informations

Contrôle du flux
Xon / Xoff (software handshake)
Ne nécessite qu'une liaison sur 3 fils.
La négociation entre l'émetteur et le récepteur pour échanger des données se fait par logiciel.
Basé sur les caractères XON (ASCI 11H) et XOFF (ASCI 13H).
Le récepteur gère un buffer. Lorsque son buffer est plein à 80 % le récepteur envoie le caractère XOFF.
L'émetteur lorsqu'il reçoit le caractère XOFF doit immédiatement suspendre son émission.
Lorsque l'émetteur a vidé sont buffer à 50% il envoie un caractère XON à l'émetteur.
A la réception de XON l'émetteur peut reprendre son émission.
Il est possible que l'émetteur ne reçoive pas ou perde les caractères XON/ XOFF. Pour pallier ces
problèmes, lorsque l'émetteur n'a pas reçu de caractères depuis un certain temps, ce dernier peut
reprendre de sa propre initiative le transfert. Si le récepteur n'est pas d'accord, ce dernier pourra
toujours réémettre un XOFF.
CTS / DTR: (hardware handshake) Clear to send / data terminal ready
Avant d'émettre un caractère, l'émetteur surveille sa broche 5 (CTS) qui est reliée à la broche 20 (DTR)
du récepteur.
Si le récepteur est prêt à recevoir le caractère, il met sa ligne DTR à l'état actif
L’émetteur envoie alors un caractère sur sa ligne TD qui est reliée à la broche RD du récepteur
Avant d'envoyer le caractère suivant, il surveille l'état de sa broche CTS, c'est à dire de la sortie DTR du
récepteur
Si le récepteur n'est pas prêt à recevoir les données, sa broche DTR c'est à dire CTS de l'émetteur est à
l'état inactif, ce qui bloque l'émission.

Protocole Xmodem
Créé en 1977 par Ward Christiansen
Premier protocole avec une procédure de correction d'erreur, il est, par la même, le plus répandu.
Transfère des trames de 128 octets comprenant des fanions de début et de fin, un numéro de trame,
et un caractère checksum.
L'expéditeur se met alors en position d'attente. Coté destinataire le checksum est de nouveau calculé.
En cas d'égalité, un accusé de réception positif est envoyé, négatif dans le cas contraire.
Xmodem permet de transférer aussi bien des fichiers ASCII, que des fichiers binaires. Il est facile à
installer et de plus gratuit.
Représentation sur 8 bits (ASCII PC), ce qui le rend incompatible avec des ordinateurs qui ne supportent
que l'alphabet ASCII du CCITT n°5, sur 7 bits.
Ne permet l'envoi que d'un seul fichier, sans aucun attribut. La taille du fichier est-elle même arrondie,
à la dernière trame de 128 octets.
Enfin, la petite taille de ses trames et son mode de correction en font un outil mal adapté au transfert
de fichiers volumineux.
Xmodem CRC, utilise un contrôle CRC sur deux caractères au lieu du checksum.
Xmodem auto combine les deux types de contrôle.
Telink, une variante de Xmodem, conserve les attributs des fichiers lors du transfert.
"Relaxed Xmodem" offre un "timeout" dix fois supérieur à la temporisation d'origine.

Protocole Zmodem
Créé en 1986 par Chuck Forsberg
Protocole d'envoi en flux continu avec correction d'erreur.
Insère des codes de contrôle par intervalles et marque une pause, pour attendre un accusé de
réception uniquement en fin de fichier.
Seules les trames erronées seront exigées à nouveau.
En cas d'erreurs répétées, la taille des trames est réduite à 64 octets, c'est le mode échelonné.
Premier protocole, à introduire une procédure de reprise en cas de coupure de la liaison.
Le transfert reprendra exactement à l'endroit où il avait cessé.
Garanti une efficacité proche de 98 %.
Protocole Kermit
Développé en 1981 à l'université de Columbia, de New-York, dans un but non lucratif, pour promouvoir
les
Comme pour Xmodem, le protocole consiste à établir une session entre deux usagers, qui se réduit
pour chaque fonction par un échange de trames.
Chaque trame est numérotée séquentiellement, en commençant par 0 pour la trame d'initialisation.
La trame d'accusé de réception hérite du même numéro, que celle à acquitter.
Lorsqu'un accusé est positif, le numéro de trame suivant est augmenté de 1, modulo 64.
Les trames sont constituées de caractères affichables, avec une représentation ASCII sur 7 bit comprise
entre 0x20 et 0x7E.
Les caractères de contrôle, de même que les octets des fichiers binaires, sont préfixés par un caractère
spécial, puis transformés en caractères affichables.
Permet l'envoi de plusieurs fichiers par lot, avec leurs attributs, ainsi que leurs tailles exactes.
Contrôle d'erreur plus élaboré que celui de Xmodem.
La force de Kermit réside dans sa disponibilité sur l'ensemble des minis et mainframes du marché.
Kermit est plus lent que Xmodem. Cela s'explique par la plus petite taille de ces trames, de 10 à 96
octets qui multiplie le nombre d'acquittements.
Kermit encapsule les caractères ASCII non affichables avec d'autres caractères.

Codage de l'information
Codage
Optimiser l’utilisation du support
Minimisation de l’atténuation
Maximisation du débit
Liaisons asynchrone (RS-232, Ethernet, …)
Horloge pas transmise
Doit permettre à l’émetteur et au récepteur de faciliter leur synchronisation.
Soit le message à transmettre :
11110100001
Il sera transmis dans l’ordre suivant :

NRZ (Non Return to Zero)


Proche du binaire de base
1 = +V 0 = -V
Si on décide de ne pas fixer de valeur à la tension, on peut jouer avec en fonction de la distance On
peut électroniquement détecter si le câble est branché (en fonction de la tension)
Il faut qu'il y ait un changement d'état de temps en temps pour conserver la synchronisation, si on
transmet une grande quantité de 0 ou de 1 à la suite, on peut perdre la synchro

Augmentation de la différence d’amplitude = Minimise l’atténuation


Permet de détecter la présence d’un câble en forçant une tension au repos (RS232).
Pas utilisable dans le cas d’Ethernet
Longues séries de bits identiques (0 ou 1) provoquent un signal sans transition pendant une longue
période
Perte de synchronisation.

NRZI (Non Return to Zero Inverted)


1 = transition du signal
0 = pas de transition
On change d'état pour 1, on conserve l'état pour 0

MLT3
Fast Ethernet, ATM
1 = changement d'état. Successivement codé sur 3 états +V, 0, -V
0 = conserve la valeur précédente
Longues séquences de 0 = perte de l'horloge
2B1Q
RNIS / ISDN, HDSL
Un créneau de tension = groupe de deux éléments
Symbole quaternaire

4B/5B 8B/10B
4B/5B: Fast Ethernet; 8B/10B :Gigabit Ethernet
Utilise une table de transcodage pour coder 4 bits en 5 bits (8 en 10)
Assurer que le message à transmettre ne contiendra pas plus de 2 zéro consécutifs et pas plus de 4 un
consécutifs.
Résout les problèmes de perte de synchro, peut être envoyé en NRZ, NRZI, MLT3, etc.
Manchester
Ethernet 10Base5, 10Base2, 10BaseT, 10BaseFL
Provoque une transition pour chaque bit transmis.
1 = transition de +V à –V
0 = transition de –V à +V

Problème : quand on envoie plusieurs fois un 1 ou plusieurs fois un 0, je dois à chaque fois changer
d'état... Donc l'émetteur doit travailler 2x plus vite que la ligne
Synchronisation assurée
Très peu sensible aux erreurs, un parasite peut endommager le signal, mais difficilement transformer
un 0 en 1 ou inversement.

Manchester différentiel
Token ring
1 = absence de transition au début du signal
0 = transition au début
Bipolaire
Lignes DS1/T1
0 = potentiels nuls
1 = +V et –V en alternance.

LAN
Cohabitation de plusieurs protocoles.
Un même média (même câble par exemple) qui raccorde de multiples machines.
Une bande passante élevée, partagée par tous les hôtes.
La capacité de faire du “broadcasting” et du “multicasting”.
Une extension géographique limitée.
Un nombre de machines raccordées limité.
Des relations entre les machines placées sur un mode d’égalité, (et non par exemple sur un mode
Maître/Esclave comme dans un réseau dont la topologie serait en étoile).
Une mise en œuvre qui reste du domaine privé, c’est à dire qui ne dépend pas d’un opérateur officiel
de télécommunications.

Ethernet
Support de transmission = segment.
Pas de topologie particulière.
Equipement raccordé sur un câble par un transceiver (transmitter + receiver).
Adresse unique.
Les trames circulent sur les câbles.
Une trame émise est reçue par toutes les stations.
Contient l’adresse de l’émetteur et du destinataire.
Un coupleur doit être à l’écoute des trames qui circulent sur le câble.
Un coupleur connait sa propre adresse, si une trame lui est destinée il la prend, sinon il n’en fait rien.
Une station qui veut émettre attend que toutes les autres stations se taisent.
Si le câble est libre elle envoie sa trame, sinon elle attend.
Si deux stations émettent en même temps il y a collision.
Les deux trames sont alors inexploitables, les stations détectent ce fait et réémettent leur paquet
ultérieurement
Réseau à caractère probabiliste.
Pas de chef d’orchestre pour synchroniser les émissions.
Réseau égalitaire, une sorte de réunion sans animateur entre personnes polies.
Simplicité et faible coût.
Pas de priorité.
Pas de contrôle sur l’attitude des voisins.
Débit d’au moins 10Mb/s (jusqu’à 1000Mb/s et plus).
Performances peu dépendantes de la charge, sauf en cas de collisions trop importantes.

Synchronisation = Préambule + SFD


Préambule
7 octets qui permettent de synchroniser l'envoi.
7 * 10101010
SFD (Starting Frame delimiter)
1 octet qui indique à la carte réceptrice que le début de la trame va commencer.
10101011.

Adresses Ethernet
Adresses d’origine = machine émettrice
Adresse destination = machine destinatrice
Il faut connaître l’adresse de son correspondant pour pouvoir lui envoyer un paquet !
A ce stade on ne sait pas encore comment faire quand on ignore cette information.
Codée sur 6 octets soit 48 bits.
MAC (Medium Access Code)
Adresse physique (“ hardware adress ”) par opposition à adresse logique.
Divisée en deux parties égales :
Les trois premiers octets désignent le constructeur
Standardisé par IEEE
Les trois derniers désignent le numéro de carte
Laissé à l’initiative du constructeur
L’IEEE assure ainsi l’unicité de l’attribution des numéros de constructeurs, par tranches de 224 cartes.
Chaque constructeur assure l’unicité du numéro de chaque carte fabriquée.
Il y a au maximum 224 cartes par classe d’adresses.
Unicité est primordiale.
Fonctionnement d’un LAN requiert que toutes les stations aient une adresse physique différente.
Dans le cas contraire comportement imprévisible.

Ethernet
Une trame a une longueur minimale (72) et une longueur maximale (1526).
Si les données ne sont pas assez longues (46 octets) des caractères de remplissage sont ajoutés
(“padding ”).
Les octets circulent du premier octet du préambule au dernier octet du CRC.
A l’intérieur de chaque octet le premier bit envoyé est celui de poids faible.

Unicast, multicast et broadcast


Toutes les stations peuvent écouter toutes les trames qui leur parviennent.
Beaucoup d’entre elles ne leur sont pas destinées -> perte de temps.
Filtrage des paquets (paramétrable).
Ce paramétrage peut changer d’une station à une autre.
Possibilité de ne pas filtrer, (analyseurs de trames comme TCPDUMP).
La carte fonctionne alors en mode dit “promiscuous”, qui n’est donc pas son mode de fonctionnement
standard.
Filtrage Unicast
L’adresse MAC est constituée de la combinaison de 48 bits qui la rend unique. Ce mode
d’adressage est typique d’échanges entre deux stations uniquement. C’est l’essentiel du
trafic sur un LAN.
Le filtrage peut s’effectuer en ne retenant que les trames qui ont l’adresse MAC de la station
locale et donc écarter les autres trames de type unicast.
Filtrage broadcast
Tous les bits de l’adresse MAC est à 1.
Toutes les stations d’un réseau sont destinatrices de tels paquets -> perte de temps.
Utiliser ce mode d’adressage uniquement quand il n’est pas possible de faire autrement.
Par exemple pour obtenir une information que seule une station inconnue sur le LAN
possède. (ARP et RARP).
Broadcast intensif -> gêne.
Filtrage multicast
Préfixe particulier 01:00:5E, non dédié à un constructeur.
Réservé le plus généralement à la découverte passive ou à la recherche de voisins de LAN ayant des
propriétés particulières.
Mode de fonctionnement assez économe des ressources du réseau.
Une seule station émet une information qui est traitée par toutes celles qui sont intéressées, et elles
seules.

Répéteur
Agit uniquement au niveau de la couche 1 ISO, c’est un amplificateur de ligne
Inconvénient :
Transmet le bruit sans discernement : il n’y a aucun filtrage sur le contenu.
Avantages :
Relie deux brins d’une même technologie en un seul LAN car les trames sont reproduites
intégralement.
En 10Base5, l’usage d’un répéteur fait passer la limite des 500 mètres à 1000 mètres...
Aucune administration particulière
Elément “ bon marché ”.

Pont (bridge)
La technologie CSMA/CD atteint vite ses limites quand le réseau est encombré.
Pont : amélioration possible quand on ne peut pas changer de technologie
Utiliser un ou plusieurs ponts (“ bridges ”) pour regrouper des machines qui ont entre-elles un dialogue
privilégié.

De moins en moins utilisé


Le principe de son fonctionnement se retrouve, dans les commutateurs et dans les points d’accès sans
fil (“wireless”).
Les échanges locaux à chaque branche du pont s’effectuent au mieux des possibilités de la bande
passante
Le pont a donc multiplié par deux la capacité globale du trafic réseau vis à vis de certains échanges.
Agit au niveau de la couche 2 ISO (trame physique)
Action physique + logique
Lecture et interprétation des octets véhiculés.
Isole le trafic sur certains tronçons
Ponts intelligents ou “ ponts transparents ” en cas d’apprentissage automatique !
Réduit le taux de collisions en réduisant le trafic inutile (améliore bande passante.
Dialogue A-B ne perturba pas C D E
Dialogue A - E le pont ne sert à rien
Moins cher qu’un routeur et plus rapide (services rendus moins complets).
Relie deux segments (ou plus) en un seul LAN, les trames transmises sont reproduites.
Un pont contient un cpu, il est en général administrable à distance
On peut agir sur la table de filtrages (ajout, contraintes de filtrages, etc.…).
Dans ce cas un pont a une adresse Ethernet.
Interdisent que les réseaux aient des boucles,
Protocole nommé STP (“ Spanning Tree Protocol ”) désactive automatiquement le ou les ponts qui
occasionne(nt) un bouclage des trames.
Il existe des ponts entre Ethernet et Token-ring, on parle alors de “ ponts à translations ”.
Ne s’occupe que des adresses de type unicast, il ne filtre pas les types broadcast et multicast.

Commutateur (switch)
Etape 1 :
Aligner des stations sur un même réseau local
Simple et de faible coût
Inconvénients
Le nombre de collisions croît très vite avec le trafic,
Baisse de la rapidité des échanges due au gaspillage de la bande passante.
Solution 1
Utilisation de ponts
Pas totalement satisfaisante dans tous les cas de figure
Solution 2
Nouvelle technologie nommée : Intelligent Switching Hub (ISH) commutateur intelligent
Utilise le concept de commutation parallèle et qui a révolutionné l’organisation des réseaux
locaux.
Aspect extérieur : idem hub
En interne : cpu suffisamment puissant et un bus interne de données suffisamment rapide
pour mettre en œuvre une logique de commutation raffinée
Lorsqu’une trame se présente sur l’un des ports du commutateur elle est (ou n’est pas)
redirigée vers un autre port en fonction de l’adresse physique du destinataire.
Différences entre un pont et un commutateur
Un commutateur peut mettre simultanément plusieurs ports en relation, sans que le débit
de chacun en souffre.
Par exemple un commutateur de 8 ports en 100BaseT peut supporter quatre connexions port
source/port destination simultanées `a 100Mbit/s chacune, ce qui donne un débit global de
400 Mbit/s qui doit pouvoir être supporté par le bus interne ou “ fond de panier ”.
Théorique : Un commutateur à N ports à 100 Mbit/s chacun a un débit maximum de N ×
100/2 = 50 × N Mbit/s.
Si une trame est à destination d’un port déjà occupé, il la mémorise pour la délivrer sitôt le port
disponible.
Fonctionne comme un pont pour établir sa carte des adresses
Peut aussi travailler à partir d’une table préconfigurée.
Un commutateur peut fonctionner par port (une seule station Ethernet par port) ou par segment
(plusieurs stations Ethernet par port).
Le trafic réseau entre le “ client 1 ” et le
serveur “ S2 ” ne perturbe pas le trafic entre le
“ client 2 ” et le serveur “ S1 ”.
Le trafic entre le “ client 1 ” et le “ serveur local
” n’est pas vu du “ client 2 ”.
Les commutateurs étiquettent les trames avec
un identificateur du VLAN auquel elles
appartiennent. Cette étiquette se résume par
deux octets ajoutés dans la trame, selon les
recommandations du comité 802 (norme
802.1Q).

Passerelle (Routeur)
Pour raccorder deux LANs non forcément contigus il faut faire appel à ce une passerelle (gateway).
Son rôle : prendre une décision sur la
route à suivre et de convertir le format
des données pour être compatible
avec le réseau à atteindre (en fonction
de la route).
Souvent, et c’est le cas avec TCP/IP, la
fonction de conversion n’est pas
utilisée, la fonction de routage donne
alors son nom à l’appareil en question
qui devient un “ routeur ” (“ router ”).
Un routeur :
Agit au niveau de la couche 3.
Prend des décisions de destination.
Possède au moins deux interfaces réseau (pas forcément identiques).
Contient un cpu et un programme très évolué
Est administrable à distance.
Remplit également les fonctions d’un pont (B-routeur).
Les brins ainsi reliés ne forment en général plus un LAN car les adresses physiques contenues
dans les trames ne servent plus à identifier le destinataire.
Possibilités de simuler un même LAN bien que les trames traversent un routeur.

Résumé Equipements / composants


Couche 1 : hub (répéteur-concentrateur électrique)
Couche 2 : switch (pont-commutateur de trames traitant les adresses MAC)
Couche 3 : routeur (routage des datagrammes IP, concept d'adresses)
Il existe des variantes (switch couche 4 : avec qualité de service suivant le protocole, etc)
Répéteur (hub, concentrateur)
Couche 1 OSI
Aucune « intelligence », seulement amplification du signal
Contrainte physique du média, distance maximale câble
Pas de filtrage (tout est retransmis partout)
Les segments reliés ont le même protocole couche 2 MAC
Concentrateur : émule un bus sur une topologie physique en étoile
Commutateur (switch, pont, bridge)
Couche 2 OSI : traite les adresses MAC
Évite les collisions (si bien dimensionné)
Contrôle de flux
Véritable étoile
Meilleur débit total
Pas de bus commun
Les stations ne se gênent plus
Conversion de protocoles de couche 1/2

Fonctionnement d'un commutateur (switch)


Une trame (non-broadcast) n'est envoyée que sur le port où se situe la station destinataire
Si connu ! sinon envoyé sur tous les ports
Mémorisation de (adresse MAC source, port provenance) dans une table (avec délai d'expiration)
Optimisation de « routage couche 2 » / commutation)
Mode cut-through (envoi direct dès l'adresse destination MAC connue)
Mode fast-forward (stockage, vérification du CRC, puis envoi : moins performant)
Le débit maximum total dépend de l'organisation interne du switch

Spanning tree (STP)


But : construire une topologie en arbre à partir d'un « réseau »
On installe un « réseau » couche 2 Ethernet avec des liaisons redondantes
L’exploitation telle quelle est impossible en raison des boucles créées (pas de TTL en couche 2 !)
Un arbre recouvrant doit être défini (en désactivant certains segments ou ports)
Principe :
Chaque switch a un numéro unique ; une racine est définie (numéro le plus petit) : root
Les switches échangent des messages et reconfigurent leurs ports et liaisons.
Ces échanges sont réguliers et peuvent amener à une certaine haute fiabilité en cas de
panne d'un switch, d'un port ou d'une liaison
Algorithme :
Chaque switch détermine lequel de ses ports à le chemin le plus court jusqu'à la racine : root
port
Pour chaque segment Ethernet, on détermine quel port de quel switch permet d'atteindre la
racine le plus rapidement : designated port
Attention au designated cost (coût de la liaison)
En cas d'égalité, on choisit le numéro de switch et / ou de port le plus petit
Un port ne peut cumuler les fonctions root port et designated port
Un port ni root ni designated est désactivé
Protocole IP
Datagramme IP

Support de travail des protocoles de la couche de transport TCP, UDP, …


Ne donne aucune garantie quant au bon acheminement des données qu’il envoie.
N’entretient aucun dialogue avec une autre couche IP distante.
Délivre les datagramme “ au mieux ”.
Chaque datagramme est géré indépendamment des autres datagrammes
Au sein du transfert des octets d’un même fichier les datagrammes peuvent être mélangés, dupliqués,
perdus ou altérés !
Description de l’en-tête
VERS
4 bits qui spécifient la version du.
Vérification que l’´émetteur et le destinataire des datagrammes sont en phases avec la même
version.
Actuellement : version 4
Futur immédiat : version 6
HLEN
4bits : longueur de l’en-tête en mots de 4 octets.
Taille standard : 5 mots
Taille maximale : (2 3 + 22 + 21 + 20) × 4 = 60 octets
TOTAL LENGTH
Donne la taille du datagramme, en-tête + données.
Si fragmentation il s’agit également de la taille du fragment
La taille des données est donc à calculer par soustraction de la taille de l’en-tête.
16 bits autorisent la valeur 65535
La limitation vient le plus souvent du support physique (MTU)
TYPE OF SERVICE
La RFC 1349 définit 4 bits utiles sur les huit (3 à 6).
Ceux-ci indiquent au routeur l’attitude à avoir vis à vis du datagramme.
Exemple, des datagrammes d’un transfert de fichier (ftp) peuvent avoir à laisser passer un
datagramme repéré comme contenant des caractères frappés au clavier (session telnet).

0x00 Service normal Transfert banal


0x10 Bit 3,D Minimiser le délai (Session telnet)
0x08 Bit 4,T Maximiser le débit (Transfert ftp)
0x04 Bit 5,R Maximiser la qualité (ICMP)
0x02 Bit 6,C Minimiser le coût (news nntp)
L’usage de ces bits est mutuellement exclusif.
IDENTIFICATION, FLAGS et FRAGMENT OFFSET
Ces mots sont prévus pour contrôler la fragmentation des datagrammes.
Les données sont fragmentées car les datagrammes peuvent avoir à traverser des réseaux
avec des MTU plus petits que celui du premier support physique employé.
TTL Time To Live
8 bits, 255 secondes maximum de temps de vie pour un datagramme sur le net. Prévu à
l’origine pour décompter un temps, ce champ n’est qu’un compteur décrémenté d’une unité
à chaque passage dans un routeur.
Couramment la valeur de départ est 32 ou 64.
Evite la présence de paquets fantômes circulant indéfiniment. . .
Si un routeur passe le compteur à zéro avant délivrance du datagramme, un message
d’erreur est envoyé à l’émetteur avec l’indication du routeur.
Le paquet en lui-même est perdu.
PROTOCOL
8 bits pour identifier le format et le contenu des données, un peu comme le champ “ type ”
d’une trame Ethernet.
Permet à IP d’adresser les données extraites à l’une ou l’autre des couches de transport.
HEADER CHECKSUM
16 bits pour s’assurer de l’intégrité de l’entête.
Lors du calcul de ce “ checksum ” ce champ est à 0.
A la réception de chaque paquet, la couche calcule cette valeur, si elle ne correspond pas à
celle trouvée dans l’en-tête le datagramme est oublié (“ discard ”) sans message d’erreur.
SOURCE ADDRESS
Adresse IP de l’´émetteur, à l’origine du datagramme.
DESTINATION ADDRESS
Adresse IP du destinataire du datagramme.
IP OPTIONS
24 bits pour préciser des options de comportement des couches IP traversées et
destinatrices.
Les options les plus courantes concernent :
Des problèmes de sécurité
Des enregistrements de routes
Des enregistrements d’heure
Des spécifications de route à suivre
PADDING
Remplissage pour aligner sur 32 bits. . .
En conclusion : Travail de la couche IP ?
Router les datagrammes " au mieux ”
Fragmenter les données de taille supérieure au MTU du support physique à employer.
Fragmentation IP
Taille maximale d’un datagramme IP : 65536 octets
La couche de liaison (Couche 2 “ Link ”) impose une taille limite, le “ Maximum Transfer Unit (MTU) qui
est généralement inférieur
Exemple :
Trames Ethernet : 1500 octets
Datagrammes IP encapsulés dans des trames Ethernet ne peuvent pas dépasser 1500 octets
S la couche IP doit transmettre un bloc de données de taille supérieure au MTU à employer, il y a
fragmentation !
Exemple
Un bloc de 1481 octets sur Ethernet
Un datagramme de 1480 (1480 + 20 = 1500)
Un datagramme de 1 octet !
Exception : présence active du bit “ Don’t Fragment ” du champ FLAGS de l’en-tête IP.
Ce bit interdit la fragmentation du datagramme par la couche IP.
Situation de blocage, la couche émettrice est tenue au courant par un message ICMP
Fragmentation needed but don’t fragment bit set
Et bien sûr le datagramme n’est pas transmis plus loin.
Quand un datagramme est fragmenté, il n’est réassemblé que par la couche IP destinatrice finale.
Remarques :
La taille des datagrammes reçus par le destinataire final est directement dépendante du plus
petit MTU rencontré.
Les fragments deviennent des datagrammes à part entière.
Rien ne s’oppose à ce qu’un fragment soit à nouveau fragmenté.
Opération transparente pour les couches de transport qui utilisent IP.
Quand un datagramme est fragmenté, chaque fragment comporte la même valeur de champ
IDENTIFICATION que le datagramme initial.
S’il y a encore des fragments, un des bits du champ FLAGS est positionné à 1 pour indiquer “ More
fragment ” !
FRAGMENT OFFSET contient l’offset du fragment, relativement au datagramme initial.
Pour tous les fragments :
Les données doivent faire un multiple de 8 octets
Le champ TOTAL LENGTH change.
Chaque fragment est un datagramme indépendant, susceptible d’être à son tour fragmenté.
Pour le dernier fragment :
FLAGS est remis à zéro.
Les données ont une taille quelconque.
Réassemblage
Tous les datagrammes issus d’une fragmentation deviennent des datagrammes IP comme
(presque) les autres.
Ils arrivent à destination, peut-être dans le désordre, dupliqués.
IP doit faire le tri.
Il y a suffisamment d’information dans l’en-tête pour réassembler les fragments épars.
Si un fragment manque, la totalité du datagramme est perdu car aucun mécanisme de
contrôle n’est implémenté
IDENTIFICATION est le même pour tous
FLAG est 0 pour le dernier datagramme
OFFSET croît de la taille du fragment, ici N.
TOTAL LENGTH est généralement différent pour le dernier fragment, sauf cas particulier.
HEADER CHECKSUM change à chaque fois car l’OFFSET change (rappel : il ne tient pas compte des
données).

Protocole ARP
Address Resolution Protocol (RFC 826)
Il faut avoir un moyen d’établir un lien entre ces deux constituants.
La norme Ethernet (vs IEEE) suppose l’identification unique de chaque carte construite et vendue.
Deux machines peuvent communiquer ⇐⇒ elles connaissent leurs adresses physiques respectives.
On suppose qu’une machine connait sa propre adresse physique.
Lors du premier échange entre 2 machines d’un même LAN, si les adresses physiques ne sont pas déjà
connues il est nécessaire de passer par l’usage du protocole ARP.
ARP est complètement transparent pour l’utilisateur.

La station Ethernet A (IA, PA) a besoin de connaître l’adresse physique de la station Ethernet B (IB, PB)
Elle envoie un datagramme de format spécial ARP, qui lui permet de poser la question (“ Arp question
”) à l’ensemble des machines actives.
L’adresse de la machine qui doit répondre étant l’objet de la question, son adresse (champ
destinataire) est donc remplacée par une adresse de “broadcast” (48 bits à 1).
Toutes les machines du LAN écoutent cet échange et peuvent mettre à jour leur table de conversion
(adresse IP adresse Ethernet) pour la machine A.
Le “ broadcast ”, coûteux en bande passante, est ainsi utilisé au maximum de ses possibilités.
La réponse de B est du type “ unicast ”.

Quand une station Ethernet ne répond plus, il y a suppression de l’association adresse IP - adresse
MAC.
Si la station B ne répond pas, la station continuera à poser la question à intervalles réguliers pendant
un temps infini. . .
Pas besoin d’utiliser ARP préalablement à chaque échange, car le résultat est mémorisé.
En règle générale la durée de vie d’une adresse en mémoire est de l’ordre de 20 minutes et chaque
utilisation remet à jour ce compteur.
HARDWARE TYPE
Type d’adresse physique dans les champs SENDER
HA et TARGET HA (1 pour Ethernet)
PROTOCOL TYPE
Type d’adresse logique dans les champs SENDER
ADR et TARGET ADR, c’est 0x0800 pour des
adresses IP.
HLEN 1
Longueur de l’adresse physique (6 octets pour
Ethernet).
HLEN 2
Longueur de l’adresse logique (4 octets pour IP).
OPERATION
Type de l’opération
Question Réponse
ARP 1 2
RARP 3 4
Sender HA
Adresse physique de l’émetteur
SENDER ADR
Adresse logique de l’émetteur
TARGET HA
Adresse physique du destinataire
TARGET ADR
Adresse logique du destinataire

Protocole RARP
Reverse Address Resolution Protocol (RFC 903)
BOOTP et DHCP en sont des alternatives avec plus de possibilités
Normalement une machine qui démarre obtient son adresse IP par lecture d’un fichier sur son disque
dur (ou depuis sa configuration figée dans une mémoire non volatile).
Pour certains équipements cette opération n’est pas possible voire non souhaitée par l’administrateur
du réseau :
Terminaux X Windows, Stations de travail “ diskless ”, Imprimante en réseau, PC en réseau
Pour communiquer en TCP/IP une machine a besoin d’au moins une adresse IP.
L’idée de ce protocole est de la demander au réseau.
RARP est adapté de ARP :
L’émetteur envoie une requête RARP spécifiant son adresse physique dans un datagramme
de même format que celui de ARP et avec une adresse de “broadcast” physique.
Le champ OPERATION contient le code de “ RARP question ”
Toutes les stations en activité reçoivent la requête.
Celles qui sont habilitées à répondre (serveurs RARP) complètent le datagramme et le renvoient
directement (“ unicast ”) à l’´émetteur de la requête puisqu’elle connaissent son adresse physique.

Protocole ICMP
Internet Control Message Protocol (RFC 950)
IP ne vérifie pas si les paquets émis sont arrivés à leur destinataire dans de bonnes conditions.
Les paquets circulent d’une passerelle vers un autre jusqu’à en trouver une qui puisse les délivrer
directement à un hôte.
Si une passerelle ne peut router ou délivrer directement un paquet ou si un événement anormal arrive
sur le réseau (trafic trop important ou machine indisponible), il faut pouvoir en informer l’hôte qui a
émis le paquet.
Celui-ci pourra alors réagir en fonction du type de problème rencontré.
ICMP est un mécanisme de contrôle des erreurs au niveau IP.
Chaque passerelle et chaque hôte opère de manière autonome, route et délivre les datagrammes qui
arrivent sans coordination avec l’émetteur.
En cas de rupture de lignes de communication, des machines peuvent être à l’arrêt, en pannes,
déconnectées du réseau ou incapables de router les paquets.
Des paquets IP peuvent alors ne pas être délivrés à leur destinataire
IP ne contient rien qui puisse permettre de détecter cet échec de transmission.
Ajout systématique d’un mécanisme de gestion des erreurs connu sous le doux nom de ICMP.
Initialement prévu pour permettre aux passerelles d’informer les hôtes sur des erreurs de
transmission, ICMP n’est pas restreint aux échanges passerelles-hôtes, des échanges entres hôtes sont
tout à fait possibles.
Format des messages ICMP
Chaque message ICMP traverse le réseau dans la partie DATA d’un datagramme IP

Les messages ICMP sont routés comme les autres paquets IP au travers le réseau.
Exception : il peut arriver qu’un paquet d’erreur rencontre lui-même un problème de transmission,
dans ce cas on ne génère pas d’erreur sur l’erreur !
Puisque les messages ICMP sont encapsulés dans un datagramme IP, ICMP n’est pas considéré comme
un protocole de niveau plus élevé.
La raison de l’utilisation d’IP pour délivrer de telles informations, est que les messages peuvent avoir
à traverser plusieurs réseaux avant d’arriver à leur destination finale. Il n’´était donc pas possible de
rester au niveau physique du réseau (à l’inverse de ARP ou RARP).

Chaque message ICMP a un type particulier qui caractérise le problème qu’il signale.
Un en-tête de 32 bits est composé comme suit :
TYPE contient le code d’erreur.
CODE complète l’information du champ précédent.
CHECKSUM vérification pour l’en-tête des datagrammes IP
En-tête IP et les 64 premiers bits du datagramme qui est à l’origine du problème, pour permettre au
destinataire du message d’identifier quel paquet est à l’origine du problème.
Exemple de messages ICMP
“ Echo Request (8), Echo reply (0) ”
Une machine envoie un message ICMP “ echo request ” pour tester si son destinataire est
accessible.
N’importe quelle machine qui reçoit une telle requête doit formuler un message ICMP “ echo
reply ” en retour
Commande ping
“ Destination Unreachable (3) ”
Quand une passerelle ne peut pas délivrer un datagramme IP, elle envoie un message ICMP “
destination unreachable ” à l’´emetteur.
Dans ce cas le champ CODE complète le message d’erreur avec :
0 “ Network unreachable ”
1 “ Host unreachable ”
2 “ Protocol unreachable ”
3 “ Port unreachable ”
4 “ Fragmentation needed and DF set ”
5 “ Source route failed ”
“ Source Quench (4) ”
Quand un datagramme IP arrive trop vite pour une passerelle ou un hôte, il est rejeté.
“ Redirect (5) ”
Informations lors de changement de tables de routage
“ Router solicitation (10) Router advertisement (9) ”
Il s’agit d’obtenir ou d’annoncer des routes
“ Time exceeded (11) ”
Chaque datagramme contient un champ TTL dit “ TIME TO LIVE ” appelé aussi “hop count”.
Afin de prévenir le cas où un paquet circulerait à l’infini d’une passerelle à une autre, chaque
passerelle décrémente ce compteur et rejette le paquet quand le compteur arrive à zéro et
envoie un message ICMP à l’´emetteur pour le tenir au courant.

Routage IP
Un routeur est capable de transmettre un datagramme d’un interface à un autre.
Opération délicate si les machines qui doivent dialoguer sont connectées à de multiples réseaux
physiques.
D’un point de vue idéal, établir une route pour des datagrammes devrait tenir compte d’éléments
comme la charge du réseau, la taille des datagrammes, le type de service demandé, les délais de
propagation, l’´état des liaisons, le trajet le plus court. . .
La pratique est plus rudimentaire !
Il s’agit de transporter des datagrammes aux travers de multiples réseaux physiques, donc aux travers
de multiples passerelles.
Le routage direct
Il s’agit de délivrer un datagramme à une machine raccordée au même LAN.
L’émetteur trouve l’adresse physique du correspondant (ARP), encapsule le datagramme
dans une trame et l’envoie.
Le routage indirect
Le destinataire n’est pas sur le même LAN
Il est absolument nécessaire de franchir une passerelle connue d’avance ou d’employer un
chemin par défaut.
Toutes les machines à atteindre ne sont pas forcément sur le même réseau physique.
Il faut sélectionner une passerelle.
Le routage s’appuie sur cette partie de l’adresse IP du destinataire.
La couche IP détermine celle-ci en examinant les bits de poids fort qui conditionnent la classe
d’adresse et donc la segmentation “ network. host ”.
Le masque de sous réseau est employé.
Muni de ce numéro de réseau, la couche IP examine les informations contenues dans sa table
de routage et émet le datagramme sur l’interface concernée

Table de routage
Sous Unix toutes les opérations de routage se font grâce à une table, dite “table de routage", qui se
trouve dans le noyau lui-même.
Cette table est très fréquemment utilisée par IP :
Sur un serveur plusieurs centaines de fois par secondes.
Création :
Au démarrage avec la commande route, invoquée dans les scripts de lancement du système
En fonctionnement, au coup par coup avec la commande route, à partir du shell
(administrateur système uniquement).
Dynamiquement avec les démons de routage “routed” ou “gated”
Par des messages “ ICMP redirect ”.
La commande netstat -rn permet de la visualiser au niveau de l’interface utilisateur (“ Application
layer ”)
Cette table est essentiellement composée d’une colonne origine, d’une colonne destination.
Chaque route qui désigne une passerelle (ici la route par défaut) doit s’accompagner d’un nombre de
sauts (“ hop ”), ou encore métrique, qui permet le choix d’une route plutôt qu’une autre en fonction
de cette valeur.
Chaque franchissement d’un routeur compte pour un saut.
Les routes statiques sont celles crées au démarrage de la machine ou ajoutées manuellement par
l’administrateur système, en cours de fonctionnement.
Le nombre de machines possibles à atteindre potentiellement sur l’Internet est beaucoup trop élevé
pour que chaque machine puisse espérer en conserver l’adresse.
Même si cela était concevable, cette information ne serait jamais à jour

Algorithme de routage
Cet algorithme simplifié résume les opérations de la couche IP pour choisir une destination, en fonction
de sa table de routage.
Cette opération est essentiellement basée sur le numéro de réseau, (IN), extrait de l’adresse IP, (ID).
M désigne la machine sur laquelle s’effectue le routage.
Si IN est un numéro de réseau auquel M est directement reliée :
Obtenir l’adresse physique de la machine destinatrice
Encapsuler le datagramme dans une trame physique et l’envoyer directement.
Si ID apparait comme une machine à laquelle une route spéciale est attribuée, router le datagramme
en fonction.
Si IN apparait dans la table de routage, router le datagramme en fonction.
S’il existe une route par défaut router le datagramme vers la passerelle ainsi désignée.
Sinon déclarer une erreur de routage (ICMP).

Routage dynamique
Si la topologie d’un réseau offre la possibilité de plusieurs routes pour atteindre une même destination,
s’il est vaste et complexe, sujet à des changements fréquents de configuration.
Routage dynamique pour entretenir les tables de routages de manière automatique.
Il existe de nombreux protocoles de routage dynamique dont certains sont aussi anciens que l’Internet.
Schématiquement on peut imaginer l’Internet comme une hiérarchie de routeurs.
Les routeurs principaux (“core gateways”) de cette architecture utilisent entre-deux des protocoles
comme GGP (“ Gateway to Gateway Protocol ”), l’ensemble de ces routeurs forment ce que l’on
nomme l’“Internet Core”.
En bordure de ces routeurs principaux se situent les routeurs qui marquent la frontière avec ce que
l’on nomme les “Autonomous systems”, c’est à dire des systèmes de routeurs et de réseaux qui
possèdent leurs mécanismes propres de propagation des routes.
Le protocole utilisé par ces routeurs limitrophes est souvent EGP (“ Exterior Gateway Protocol ”) ou
BGP (“ Border Gateway Protocol ”).
Au sein d’un système autonome on utilise un IGP (“ Interior Gateway Protocol ”) "protocole de
gateways intérieurs ”.
Les protocoles les plus couramment employés sont
RIP (“ Routing Information Protocol ”) qui est simple à comprendre et à utiliser
OSPF (“ Open Shortest Path First ”) plus récent, plus capable mais aussi beaucoup plus
complexe à comprendre dans son mode de fonctionnement, ou encore IS-IS de la couche ISO
de l’OSI.
Utilise le concept de “ vecteur de distance ”, qui s’appuie sur un algorithme de calcul du chemin le plus
court dans un graphe.
Le graphe est celui des routeurs, la longueur du chemin est établie en nombre de sauts (“ hop ”), ou
métrique, entre la source et la destination, en comptant toutes les liaisons.
Cette distance est exprimée comme un nombre entier variant entre 1 et 15.
La valeur 16 est considérée comme l’infini et indique une mise à l’écart de la route.
Chaque routeur émet dans un datagramme portant une adresse IP de broadcast, à fréquence fixe
(environ 30 secondes), le contenu de sa table de routage et écoute celle des autres routeurs pour
compléter sa propre table.
Ainsi se propagent les tables de routes d’un bout à l’autre du réseau.
Pour éviter une “ tempêtes de mises à jour ”, le délais de 30 secondes est augmenté d’une valeur
aléatoire comprise entre 1 et 5 secondes.
Si une route n’est pas annoncée au moins une fois en trois minutes, la distance devient “ infinie ”, et
la route sera retirée un peu plus tard de la table.
L’adresse IP utilisée est une adresse de multipoint (“ multicast ”)
Depuis la définition de RIPv2 les routes peuvent être accompagnées du masque de sous réseau qui les
caractérise.
OSPF — “ Open Shortest Path First ”
N'utilise pas de vecteur de distances mais base ses décisions de routage sur le concept d’état des
liaisons.
Celui-ci permet un usage beaucoup plus fin des performances réelles des réseaux traversés, parce que
cette métrique est changeante au cours du temps.
Si on ajoute à cela une méthode de propagation très rapide des routes par inondation, sans boucle et
la possibilité de chemin multiples, OSPF, bien que beaucoup plus complexe que RIP, a toutes les
qualités pour le remplacer, même sur les tous petits réseaux.
Découverte de routeur et propagation de routes
Au démarrage d’une station, plutôt que de configurer manuellement les routes statiques, il peut être
intéressant de faire de la “ découverte automatique de routeurs ” (RFC 1256).
A intervalles réguliers les routeurs diffusent des messages ICMP de type 9 (“router advertisement ”)
d’annonces de routes.
Ces messages ont l’adresse multicast 224.0.0.1, qui est à destination de tous les hôtes du LAN.
Toutes les stations capables de comprendre le multicast (et convenablement configurées pour ce faire)
écoutent ces messages et mettent à jour leur table.
Les stations qui démarrent peuvent solliciter les routeurs si l’attente est trop longue (environ 7
minutes) avec un autre message ICMP, de type 10 (“ router sollicitation ”) et avec l’adresse multicast
224.0.0.2 (à destination de tous les routeurs de ce LAN).
La réponse du ou des routeurs est du type “unicast”, sauf si le routeur s’apprêtait à émettre une
annonce
A chaque route est associé un niveau de préférence et une durée de validité, définis par
l’administrateur du réseau.
Une validité nulle indique un routeur qui s’arrête et donc une route qui doit être supprimée.
Si entre deux annonces une route change, le mécanisme de “ ICMP redirect ”, corrige l’erreur.
La découverte de routeur n’est pas un protocole de routage, son objectif est bien moins ambitieux :
obtenir une route par défaut.

Interface loopback
Toutes les implémentations d’IP supportent une
interface de type “loopback”.
L’objet de cette interface est de pouvoir utiliser les
outils du réseau en local, sans passer par un interface
réseau réelle (associée à une carte physique).
La valeur courante est 127.0.0.1, Dans toutes les
machines Unix modernes cette configuration est
déjà prévue d’emblée dans les scripts de démarrage.
Concrètement, tout dialogue entre outils clients et
serveurs sur une même machine est possible et
même souhaitable sur cet interface pour améliorer
les performances et parfois la sécurité.
Hypothèses :
1. Les caches “ arp ” des machines A, B et R sont vides
2. La machine A a connaissance d’une route vers le réseau 192.168.20 passant par
192.168.10.249 et réciproquement la machine B voit le réseau 192.168.10.0 via le
192.168.20.249
3. La machine A a connaissance de l’adresse IP de la machine B
La machine A envoie un datagramme à la machine B. Que se passe-t-il sur le réseau ?
Etape 1
La machine A s’aperçoit que la partie réseau de l’adresse de B n’est pas dans le même LAN
(192.168.10/24 et 192.168.20/20 différent).
L’hypothèse 2 entraine qu’une route existe pour atteindre ce réseau, passant par R.
L’adresse IP de R est dans le même LAN, A peut donc atteindre R par un routage direct.
La conséquence de l’hypothèse 1 implique que pour atteindre R directement il nous faut
d’abord déterminer son adresse physique.
Le protocole ARP doit être utilisé
A envoie une trame ARP comportant les éléments suivants :
SENDER HA 08:00:20:20:cf:af
SENDER ADR 192.168.10.109
TARGET HA ff: ff:ff:ff:ff:ff
TARGET ADR 192.168.10.249
Avec un champ OPERATION qui contient la valeur 1, comme “ question ARP ”
L’adresse IP destination est celle de R !
Etape2
R répond à la “ question ARP ” par une “ réponse ARP ” (OPERATION contient 2) et un champ
complété :
SENDER HA 00:06:5b:0f:5a:1f
SENDER ADR 192.168.10.249
TARGET HA 08:00:20:20:cf:af
TARGET ADR 192.168.10.109
Etape3
A est en mesure d’envoyer son datagramme à B en passant par R
Il s’agit de routage indirect puisque l’adresse de B n’est pas sur le même LAN.
Les adresses physiques et logiques se répartissent maintenant comme ceci :
IP SOURCE 192.168.10.109
IP TARGET 192.168.20.69
MAC SOURCE 08:00:20:20:cf:af
MAC TARGET 00:06:5b:0f:5a:1f
L’adresse IP destination est celle de B!
Etape4
R a reçu le datagramme depuis A et à destination de B.
Celle-ci est sur un LAN dans lequel R se trouve également, un routage direct est donc le
moyen de transférer le datagramme.
Pour la même raison qu’à l’´étape 1 R n’a pas l’adresse MAC de B et doit utiliser ARP pour
obtenir cette adresse.
Voici les éléments de cette “ question ARP ” :
SENDER HA 00:06:5b:0f:5a:20
SENDER ADR 192.168.20.249
TARGET HA ff:ff:ff:ff:ff:ff
TARGET ADR 192.168.20.69
Etape 5
Et la “réponse ARP ” :
SENDER HA 00:01:e6:a1:07:64
SENDER ADR 192.168.20.69
TARGET HA 00:06:5b:0f:5a:20
TARGET ADR 192.168.20.249

Etape 6
Enfin, dans cette dernière étape, R envoie le datagramme en provenance de A à B :
IP SOURCE 192.168.10.109
IP TARGET 192.168.20.69
MAC SOURCE 00:06:5b:0f:5a:20
MAC TARGET 00:01:e6:a1:07:64

Conclusion sur IP (v4)


Espace d’adressage trop limité
En-tête comporte deux problèmes,
La somme de contrôle (checksum) doit être calculée à chaque traitement de datagramme
Chaque routeur doit analyser le contenu du champ option.
Sa configuration nécessite au moins trois informations qui sont
L’adresse, le masque de sous réseau et la route par défaut.
Absence de sécurité. Issu d’un monde fermé où la sécurité n’´était pas un problème, le datagramme
de base n’offre aucun service de confidentialité, d’intégrité et d’authentification.
Son absence de qualité de service ne répond pas aux exigences des protocoles applicatifs modernes
(téléphonie, vidéo, jeux interactifs en réseau, . . .).
Le champ TOS n’est pas suffisant et surtout est interprété de manière inconsistante par les
équipements.
Identification de la destination
UDP ajoute un mécanisme qui permet l’identification du service (niveau Application).
Indispensable de faire un tri entre les divers applications (services).
Plusieurs programmes de plusieurs utilisateurs peuvent utiliser simultanément la même couche de
transport et il ne doit pas y avoir de confusion entre eux.
Idée :
Associer la destination à la fonction qu’elle remplit.
Cette identification se fait à l’aide d’un entier positif que l’on baptise port.
Le système d’exploitation local a à sa charge de définir le mécanisme qui permet à un processus
d’accéder à un port.
La plupart des systèmes d’exploitation fournissent le moyen d’un accès synchrone à un port.
Ce logiciel doit alors assurer la possibilité de gérer la file d’attente des paquets qui arrivent, jusqu’`à ce
qu’un processus (Application) les lise.
A l’inverse, l’OS bloque un processus qui tente de lire une donnée non encore disponible.
Pour communiquer avec un service distant il faut donc avoir connaissance de son numéro de port, en
plus de l’adresse IP de la machine.
On peut prévoir le numéro de port en fonction du service à atteindre,
La couche IP sépare les datagrammes TCP et UDP grâce au champ PROTO de son en-tête.
L’association du protocole de transport et du numéro de port identifie un service sans ambiguïté.
Rien ne s’oppose à ce qu’un même service (Numéro de port) soit attribué conjointement aux deux
protocoles.

Description de l'en-tête
Un paquet UDP est conçu pour être encapsulé dans un datagramme IP et permettre un échange de
données entre deux applications, sans échange préliminaire.
Si les données à transmettre n’obligent pas IP à fragmenter :
Un paquet UDP == un datagramme IP.
UDP apporte un mécanisme de gestion des ports, au-dessus de la couche Internet.
UDP est simplement une interface au-dessus d’IP.
L’émission des messages se fait sans garantie de bon acheminement.
Tous les défauts d’IP recensés sont applicables à UDP.
Les paquets à destination d’une application UDP sont conservés dans une pile de type FIFO.
Si l’application destinatrice ne les “consomme” pas assez rapidement, les plus anciens paquets
risquent d’être écrasés par les plus récents.
Risque supplémentaire de perte de données.
Il n’y a aucun retour d’information au niveau du protocole pour apporter un quelconque moyen de
contrôle sur le bon acheminement des données.
C’est au niveau applicatif qu’il convient de prendre en compte cette lacune.
UDP est désigné comme un mode de transport “non connecté” ou mode "datagramme"
Utilisations courantes :
Serveur de noms (DNS)
Tftp
Nfs
News
Streaming

UDP SOURCE PORT


Numéro de port de l’émetteur du paquet.
Ce champ est optionnel, quand il est spécifié il indique le numéro de port que le destinataire
doit employer pour sa réponse.
La valeur zéro (0) indique qu’il est inutilisé, le port 0 n’est donc pas celui d’un service valide.
UDP DESTINATION PORT
Le numéro de port du destinataire du paquet.
MESSAGE LENGTH
Longueur du paquet, comprenant l’en-tête et le message.
Longueur minimale : 8
Longueur maximale est 65 535 - H(IP).
Dans le cas courant (IP sans option) cette taille maximale est donc de 65 515.
CHECKSUM
Le checksum est optionnel et toutes les implémentations ne l’utilisent pas.
S’il est employé, il porte sur un pseudo entête décrit ci-après :
Ce pseudo en-tête est prévu initialement pour apporter une protection en cas de
datagrammes mal routés !
Ports réservés / disponibles
Le numéro de port est un entier 16 bits non signé
Les bornes sont donc [0, 65535]
Le port 0 n’est pas exploitable en tant que désignation de service valide.
Donc le segment réellement exploitable est [1, 65535].
Ports réservés / disponibles
Toute machine qui utilise la pile TCP/IP se doit de connaître un certain nombre de services bien connus,
repérés par une série de ports bien connus ou “well known port numbers”, pour pouvoir dialoguer
avec les autres machines de l’Internet (vs Intranet).
Sur une machine Unix, cette liste de services est placée dans le fichier /etc/services et lisible par tous
les utilisateurs et toutes les applications.
Un service (programme applicatif) qui démarre son activité réseau (rôle de serveur) s’attribue le (les)
numéro(s) de port qui lui revient (reviennent) conformément à cette table.

TCP
TCP est l’acronyme de “ Transport Control Protocol ” (RFC 793)

TCP est bien plus compliqué qu’UDP


Apporte en contrepartie des services beaucoup plus élaborés.
Cinq points principaux caractérisent ce protocole :
1. TCP contient un mécanisme pour assurer le bon acheminement des données.
Indispensable dès lors que les applications doivent transmettre de gros volumes de données
et de façon fiable.
Les paquets de données sont acquittés de bout en bout et non de point en point.
Le réseau assure l’acheminement
Les extrémités assurent le contrôle
2. Le protocole TCP permet l’établissement d’un circuit virtuel entre les deux points qui échangent de
l’information. On dit aussi que TCP fonctionne en mode connecté (par opposition à UDP qui est en
mode non connecté ou encore mode datagramme).
Avant le transfert les 2 applications se mettent en relation avec leurs OS respectifs, les
informent de leurs désirs d’établir ou de recevoir une communication.
Pratiquement, l’une des deux applications doit effectuer un appel que l’autre doit accepter.
Les protocoles des deux OS communiquent alors en s’envoyant des messages au travers du réseau
pour vérifier que le transfert est possible (autorisé) et que les deux applications sont prêtes pour leurs
rôles.
Une fois ces préliminaires établis, les modules de protocole informent les applications respectives que
la connexion est établie et que le transfert peut débuter.
Durant le transfert, le dialogue entre les protocoles continue, pour vérifier le bon acheminement des
données.
Pour établir une connexion (circuit virtuel) il faut avoir réunis les éléments du quintet suivant :
1. Le protocole : TCP (autres transports possibles)
2. IP locale : Adresse de la machine qui émet.
3. Port local : Le numéro de port associé au processus. Il est imposé ou est déterminé
automatiquement.
4. IP distante : Adresse de la machine distante.
5. Port distant : Le numéro de port associé au service à atteindre. Il est obligatoire de le
connaître précisément.
Ces cinq éléments définissent un circuit virtuel unique.
Que l’un d’eux change et il s’agit d’une autre connexion !
3. TCP a la capacité de mémoriser des données :
Aux deux extrémités du circuit virtuel, les applications s’envoient des volumes de données
quelconques (de 0 octets à plusieurs centaines de Mo.
A la réception, le protocole délivre les octets exactement comme ils ont été envoyés.
Le protocole est libre de fragmenter le flux de données en paquets de tailles adaptées aux
réseaux traversés.
Il lui incombe cependant d’effectuer le réassemblage et donc de stocker temporairement les
fragments avant de les présenter dans le bon ordre à l’application.
4. TCP est indépendant vis à vis des données transportées, c’est un flux d’octets non structuré sur
lequel il n’agit pas.
5. TCP simule une connexion en “ full duplex ”.
Pour chacune des deux applications en connexion par un circuit virtuel, l’opération qui
consiste à lire des données peut s’effectuer indépendamment de celle qui consiste à en
écrire.
Le protocole autorise la clôture du flot dans une direction tandis que l’autre continue à être
active.
Le circuit virtuel est rompu quand les deux parties ont clos le flux.
En-tête

Sa taille normale est de 20 octets, à moins que des options soient présentes.
TCP SOURCE PORT
Numéro de port de l’application locale.
TCP DESTINATION PORT
Numéro de port de l’application distante.
SEQUENCE NUMBER
Nombre qui identifie la position des données à transmettre par rapport au segment original.
Au démarrage de chaque connexion, ce champ contient une valeur non nulle et non
facilement prévisible, c’est la séquence initiale ou ISN (Initial Sequence Number)
TCP numérote chaque octet transmis en incrémentant ce nombre de 32 bits non signé.
Il repasse à 0 après avoir atteint 232 - 1 (4 294 967 295).
Pour le premier octet des données transmis ce nombre est incrémenté d’un, et ainsi de suite.
ACKNOWLEDGEMENT NUMBER
Numéro qui identifie la position du dernier octet reçu dans le flux entrant.
Doit s’accompagner du drapeau ACK (voir plus loin).
OFF pour OFFSET
Déplacement qui permet d’atteindre les données quand il y a des options.
Codé sur 4 bits, il s’agit du nombre de mots de 4 octets qui composent l’en-tête.
Le déplacement maximum est donc de 60 octets (24 - 1 × 4 octets).
Dans le cas d’un en-tête sans option, ce champ porte la valeur 5.
10 mots de 4 octets sont donc possibles pour les options.
CODE
Six bits pour influer sur le comportement de TCP en caractérisant l’usage du segment :
URG
Le champ “ URGENT POINTER ” doit être exploité.
ACK
Le champ “ ACNOWLEDGMENT NUMBER ” doit être exploité.
PSH
Notification de l’´emetteur au récepteur, pour lui indiquer que toutes les données collectées
doivent être transmises à l’application sans attendre les éventuelles données qui suivent.
RST
Re - initialisation de la connexion
SYN
Le champ “ SEQUENCE NUMBER ” contient la valeur de début de connexion.
FIN
L’émetteur du segment a fini d’émettre.
En fonctionnement normal un seul bit est activé à la fois mais ce n’est pas une obligation.
La RFC 1024 décrit l’existence de paquets tcp dénommés “ Christmas tree ” ou “ paquet kamikaze ”
comprenant les bits SYN+URG+PSH+FIN!
WINDOW
Le flux TCP est contrôlé de part et d’autre pour les octets compris dans une zone bien
délimitée et nommée “ fenêtre ”.
La taille de celle-ci est définie par un entier non signé de 16 bits, qui en limite donc
théoriquement la taille à 65 535 octets (ce n’est pas complètement exact, voir plus loin
l’option wscale)
Chaque partie annonce ainsi la taille de son buffer de réception. Par construction, l’´emetteur
n’envoie pas plus de données que le récepteur ne peut en accepter.
Cette valeur varie en fonction de la nature du réseau et surtout de la bande passante devinée
à l’aide de statistiques sur la valeur du RTT. (Round Trip Time)
CHECKSUM
Un calcul qui porte sur la totalité du segment, en-tête et données.
URGENT POINTER
Ce champ n’est valide que si le drapeau URG est armé.
Ce pointeur contient alors un offset à ajouter à la valeur de SEQUENCE NUMBER du segment
en cours pour délimiter la zone des données urgentes à transmettre à l’application.
Le mécanisme de transmission à l’application dépend du système d’exploitation.
OPTIONS
Paramétrage de TCP. Sa présence est détectée dès lors qu’OFFSET est supérieur à 5.
Les options utilisées :
mss
La taille maximale du segment des données applicatives que l’émetteur accepte de recevoir.
Au moment de l’´établissement d’une connexion (paquet comportant le flag SYN), chaque
partie annonce sa taille de MSS.
Ce n’est pas une négociation.
Pour Ethernet la valeur est 1460 (= MTU - 2 × 20).
timestamp
Pour calculer la durée d’un aller et retour (RTT ou “ round trip time ”).
wscale
Facteur d’échelle (“ shift ”) pour augmenter la taille de la fenêtre au-delà des 16 bits du
champ WINDOW (> 65535).
Quand cette valeur n’est pas nulle, la taille de la fenêtre est de 65535×2shift.
Par exemple si “ shift ” vaut 1 la taille de la fenêtre est de 131072 octets soit encore 128 ko.
nop
Les options utilisent un nombre quelconque d’octets cependant les paquet TCP sont toujours
alignés sur une taille de mot de quatre octets ; à cet effet une option “ No Operation ” ou
nop, codée sur 1 seul octet, est prévue pour compléter les mots.
PADDING
Remplissage pour se caler sur un mot de 32 bits.
DATAS
Les données transportées.
Cette partie est de longueur nulle à l’établissement de la connexion, elle peut également être
nulle par choix de l’application.
Etablissement d'une connexion
L’établissement d’une connexion TCP s’effectue en trois temps :
SYN
SYN / ACK
ACK

Etablissement d'une connexion


On suppose que l’émetteur du premier paquet avec le bit SYN a connaissance du couple (adresse IP du
récepteur, numéro de port du service souhaité).
L’émetteur du premier paquet est à l’origine de l’´établissement du circuit virtuel, c’est une attitude “
cliente ”.
Le client effectue une “ ouverture active ” (active open).
Le récepteur du premier paquet accepte l’établissement de la connexion, ce qui suppose qu’il était
prêt à le faire avant que la partie cliente en prenne l’initiative.
Attitude de “ serveur ”.
“ ouverture passive ” (passive open).
1. Le client envoie un segment comportant le drapeau SYN, avec sa séquence initiale (ISN = x).
2. Le serveur répond avec sa propre séquence (ISN = y), mais il doit également acquitter le paquet
précédent. ACK (seq = x + 1).
3. Le client doit acquitter le deuxième segment. ACK (seq = y + 1).
Une fois achevée cette phase nommée “ three-way handshake ” les deux applications sont en mesure
d’échanger les octets qui justifient l’´établissement de la connexion.
Clôture d'une connexion
Clôture canonique
Un échange de trois segments est nécessaire pour l’´établissement de la connexion.
Il en faut quatre pour qu’elle s’achève de manière canonique (“ orderly release ”).

Une connexion TCP est “ full-duplex ”


Les données circulent indépendamment dans un sens et dans l’autre.
Les deux directions doivent donc pouvoir être interrompues indépendamment l’une de l’autre.
L’application qui envoie un paquet avec le drapeau FIN indique à la couche TCP de la machine distante
qu’elle n’enverra plus de donnée.
La machine distante doit acquitter ce segment en incrémentant d’une unité le “sequence number”.
La connexion est véritablement terminée quand les deux applications ont effectué ce travail.
Il y a donc échange de 4 paquets pour terminer la connexion.
Au total, sans compter les échanges propres au transfert des données, les deux couches TCP doivent
gérer 7 paquets.
Sur la figure on constate que le serveur continue d’envoyer des données bien que le client ait terminé
ses envois.
Cette possibilité à son utilité, notamment dans le cas des traitements distants qui doivent s’accomplir
une fois toutes les données transmises, comme pour un tri.
Clôture abrupte
Au lieu d’un échange de quatre paquets, un mécanisme de reset est prévu pour terminer une
connexion au plus vite (abortive release).
Ce type d’arrêt est typiquement géré par la couche TCP elle-même quand l’application est brutalement
interrompue sans avoir effectué un appel à la primitive close (2)
Exemple :
Primitive abort (2),
Après avoir rencontré une exception non prise en compte
L’extrémité qui arrête brutalement la connexion émet un paquet assorti du bit RST, après avoir (ou
non) envoyé les derniers octets en attente.
Ce paquet clôt l’échange. Il ne reçoit aucun acquittement.
L’extrémité qui reçoit le paquet de reset (bit RST), transmet les
éventuelles dernières données à l’application et provoque une
sortie d’erreur du type “ Connection reset par peer ” pour la
primitive de lecture réseau.
Comme c’est le dernier échange, si des données restaient à
transmettre à l’application qui a envoyé le RST elles peuvent être
détruites.

Contrôle du transport
Le bon acheminement des données applicatives est assuré par un mécanisme d’acquittement des
paquets

Au départ du Paquet i une horloge se déclenche.


Si cette horloge dépasse une valeur limite avant réception de l’ACK le Paquet i est retransmis
Cette valeur limite est basée sur la constante MSL (Maximum Segment Lifetime) qui est un choix
d’implémentation, généralement de 30 secondes à 2 minutes. Le temps maximum d’attente est donc
de 2 ×MSL.
Le temps qui s’écoule entre l’émission d’un paquet et la réception de son acquittement est le RTT
(Round Trip Time)
Il doit donc être inférieur à 2×MSL.
Il est courant sur l’Internet actuel d’avoir un RTT de l’ordre de la seconde.
RTT est la somme des temps de transit entre chaque routeur et du temps passé dans les diverses files
d’attente sur les routeurs.
Si on considère des délais de transmission de l’ordre de 500 ms, un tel mécanisme est totalement
inadapté au transfert de flux de données.
Sous-emploi la bande passante du réseau.
Fenêtres glissantes
Cette attente de l’acquittement est pénalisante, sauf si on utilise un mécanisme de “ fenêtres glissantes
Bande passante du réseau est beaucoup mieux
employée.
Si l’un des paquets doit être réémis, la couche TCP du
destinataire aura toute l’information pour le replacer
dans le bon ordre.
A chaque paquet est associée une horloge
Le nombre de paquets à envoyer avant d’attendre le
premier acquittement est fonction de deux
paramètres :
La largeur de la fenêtre précisée dans le champ
WINDOW de l’en-tête.
La taille maximale des données, ou MSS

Le débit obtenu dépend de la taille de la fenêtre et de la bande passante disponible.


L'agrandissement de la taille de la fenêtre ne se conçoit que jusqu’à une limite optimale au-delà de
laquelle des paquets sont perdus parce qu’envoyés trop rapidement pour être reçus par le
destinataire.
Pour fonctionner de manière optimale, TCP se doit de limiter au maximum la perte de paquets et donc
leur réémission.
L’objectif premier des réseaux est la mise en commun de ressources, assurant notamment le partage
de l’information.
Un ensemble de services réseau apportent les fonctionnalités désirées. Ils sont bien souvent fédérés
par le système d’exploitation réseau qui fait remonter l’information vers des applications spécifiques
aux services gérés.
Services fichiers
Stockage / transfert / synchronisation / sauvegarde
Gestion électronique de documents
Bases de données
Impression
Messagerie
Applications
Déduplication (Fichier / Bloc / Octet)

Besoins en sécurité
Besoins en sécurité
L’authentification, permettant de s’assurer de l’identité pour connaître l’origine des
opérations.
La confidentialité, qui a pour but d’éviter toute divulgation d’informations.
L’intégrité, pour interdire ou connaître les modifications et se préserver des pertes
d’informations.
La disponibilité, qui permet d’assurer un service en toutes circonstances.
La non-répudiation qui a pour but de s’assurer, en toutes circonstances, de l’origine d’une
communication ou d’un transfert d’informations. Pour cela, elle reprend un concept familier
de notre vie quotidienne, la signature, ici sous forme électronique.
Il est devenu très rare que le réseau local de l’entreprise soit isolé.
Son interconnexion avec Internet, ou tout autre réseau, est devenue chose courante.
Il est donc nécessaire de protéger les entrées et sorties sur le réseau interne privé.
Différents équipements peuvent être mis en place pour réaliser cette sécurisation.
Routeur filtrant
L’examen des paquets entrants ou sortants porte ainsi, par exemple, sur l’en-tête IP, ce qui
permet des actions comme
Le blocage d’adresses IP (source et destination).
L’interdiction de transmission de protocoles de couche Réseau ou Transport utilisés
(UDP, TCP ou ICMP) ...
Translateur d’adresse (NAT)
Dans des entreprises de grande taille, différents réseaux interconnectés peuvent utiliser les
mêmes adresses IP.
Pour que la communication soit possible entre nœuds des deux côtés, il est nécessaire de
modifier les références de l’émetteur du paquet, afin qu’il n’y ait pas de conflit et que la
transmission soit fiable.
Des équipements de translation d’adresse (NAT - Network Address Translation) sont chargés
d’apporter cette fonctionnalité. Ils permettent le changement d’une adresse IP par une autre.
Pare-feu (Firewall)
Rend indépendant les différents réseaux
auxquels il est connecté.
Contrairement au routeur, il ne se
contente pas de transmettre la
demande.
Segmente les flux en prenant en charge
lui-même les demandes. Il établit pour
cela deux connexions et peut exercer une
action d’authentification.
Une telle segmentation permet également le changement de l’adresse du demandeur,
comme un mécanisme de translation d’adresse.
Proxy
Utilisé dans le cadre de trafics HTTP, voire FTP entre le réseau LAN et l’Internet.
Complète l’équipement pare-feu.
Interceptant une demande vers l’extérieur, le proxy la fait en son propre nom, puis stocke les
données renvoyées.
Ensuite, il les retransmet au demandeur initial.
Camoufle les adresses IP internes
Autorise des filtrages, par exemple pour interdire l’accès à certains sites web.
Capacité à gérer une mémoire cache.
Zone démilitarisée
L’interconnexion entre le réseau
public Internet et le LAN utilise très
souvent une zone publique
tampon, hébergée dans
l’entreprise.
Ce sas est nommé zone démilitarisé
ou DeMilitarized Zone (DMZ).
Elle héberge différents serveurs
accessibles depuis l’Internet
Le serveur proxy.
Le serveur web hébergeant le site de l’entreprise.
Le relais de messagerie, chargé de réaliser un tri des messages...
Des infrastructures de plus grande taille hébergent une DMZ protégée par deux pare-feu dos à dos.
Ils sont configurés dans ce cas de manière complémentaire et sont généralement de marques
différentes, pour ne pas présenter les mêmes failles.

Installation de la carte réseau


La mise en fonctionnement d’une carte réseau implique un paramétrage matériel du périphérique,
pris en charge par les capacités de Plug and Play, et l’installation du pilote (driver) de la carte.
La configuration dépend du système d’exploitation
Configuration matérielle
Sur les plus anciennes générations de cartes, il était nécessaire de configurer manuellement,
à l’aide d’interrupteurs ou de cavaliers, les paramètres. Depuis, ces réglages sont devenus
logiciels.
Désormais, les cartes sont Plug and Play et donc auto configurables. Les paramètres tels que
l’adresse de ligne d’interruption (IRQ - Interruption ReQuest) et la plage mémoire sont
adaptés automatiquement.
Configuration logicielle
À la mise sous tension de l’ordinateur, l’interface est détectée et le choix des valeurs à
utiliser, n’entrant pas en conflit avec les autres périphériques, est effectué.
La modification manuelle des ressources de la carte réseau est une affaire de spécialiste qui
est devenue, avec le temps, extrêmement rare.
La plupart des cartes réseau ne proposent plus l’accès à ces informations.
Le système d’exploitation choisit lui-même le débit en fonction des capacités de la carte et de la vitesse
maximale autorisée sur le réseau auquel elle est connectée.
Le mode de fonctionnement est également fixé en fonction des possibilités détectées.
Le mode intégral (full-duplex) autorise des émissions et réceptions simultanées.
L’adresse physique, ou Medium Access Control (MAC), remontée de la carte, est utilisée par défaut.
Les protocoles
IPX/SPX
Utilisé avec les réseaux Novell Netware jusqu’à la version 3.12.
TCP/IP était déjà disponible dans cette version, mais IPX/SPX était absolument nécessaire pour
assurer le bon fonctionnement du système d’exploitation, éventuellement en plus de TCP/IP.
Aujourd’hui, on ne l’utilise quasiment plus même s’il reste souvent préconfiguré sur les imprimantes
réseau.
NetBIOS
Network Basic Input/Output System a été introduit par IBM en 1985 et optimisé pour les petits
réseaux.
Mise en œuvre est simple, mais il n’est pas routable.
Il introduit des noms NetBIOS pour identifier les postes du réseau, sans gérer d’adresses logiques.
Il n’existe donc qu’une résolution de nom en adresses MAC.
De plus, cette résolution est souvent gérée par le poste lui-même, qui envoie une diffusion sur le
réseau.
Peu gourmand en ressources mémoire, aujourd’hui NetBIOS est encore très utilisé par les produits
Microsoft, IBM et Novell.
Les Application Programming Interface (API) NetBIOS se sont largement développées sur PC, pour
permettre une indépendance vis-à vis du protocole sous-jacent utilisé.
NetBIOS est disponible en natif, encapsulé dans des trames LLC (802.2) ou encapsulé dans IPX ou
TCP/IP.
Les produits Microsoft fonctionne encore beaucoup avec NetBIOS. Il est cependant possible d’utiliser
n’importe quel protocole de couches 3, 4 parmi TCP/IP, IPX/SPX ou NetBEUI.
NetBIOS est, aujourd’hui encore, omniprésent dans les systèmes d’exploitation Windows, à travers
NBT (NetBIOS over TCP/IP).
Il a fallu attendre Windows 2000 pour que les systèmes d’exploitation Microsoft n’exigent plus
d’utiliser NetBIOS, notamment pour son très populaire service de fichiers Server Message Block (SMB).
Sur des versions UNIX/Linux implémentant SaMBa (SMB réécrit par Andrew Tridgel), NetBIOS est
automatiquement installé sous la forme d’un démon.
Un poste de travail ou un serveur Windows peut être repéré par son nom NetBIOS, comportant 15
caractères, plus un 16ème d’identification de service.
Les noms NetBIOS sont résolus au moyen de diffusions, en utilisant un fichier local LM Hosts ou par
l’intermédiaire d’un serveur Windows Internet Name Service (WINS).
Sur un réseau NetBIOS, chaque ordinateur doit disposer d’un nom unique de 15 caractères ou moins.
Les noms NetBIOS peuvent contenir tous les caractères alphanumériques ainsi que les caractères
suivants : ! @ # $ % ˆ & () - _ ’ { } . ~
TCP/IP
La famille TCP/IP, comportant plusieurs dizaines de protocoles, définit un modèle en quatre couches
réseau.
Il s’agit des protocoles de communication et d’application les plus populaires pour connecter des
systèmes hétérogènes, indépendamment de la couche physique.
Transmission Control Protocol (TCP) est un protocole de transport qui assure un service fiable, orienté
connexion pour un flot d’octets.
Par opposition avec TCP, User Datagram Protocol (UDP) est le protocole de transport non orienté
connexion. Il est donc très rapide mais surtout peu fiable.
Internet Protocol (IP) fournit un système de livraison de paquets, sans connexion et non fiable. Il gère
des adresses logiques, qui décomposent l’identifiant de chaque nœud en un numéro de réseau logique
et un numéro de périphérique sur 4 octets (en IP version 4).
Le v6, ou IP Next Generation (NG), est désormais disponible dans les systèmes d’exploitation récents.
Une des clés du succès des protocoles Internet réside dans le fait que le modèle proposé est
indépendant de couches Physique et Liaison de données (couches 1 et 2 du modèle OSI).

Les qualités de la suite de protocoles TCP/IP, telles que la capacité de fonctionnement sur toutes tailles
de réseau, son efficacité et son évolutivité, ont séduit les entreprises. Elles ont, dans un premier temps,
interconnecté leurs réseaux par Internet, surtout pour des applications de messagerie et web.
Progressivement, elles ont également adopté ces protocoles, standard de fait, non liés à un
constructeur ou un éditeur, au sein même des réseaux locaux. Des Intranet ont commencé à voir le
jour. Utilisant les mêmes protocoles et principes qu’Internet, dans lequel l’anonymat prime, une
authentification en tant qu’employé de l’entreprise est nécessaire pour y accéder.

Adressage Internet
But :
Fournir un service de communication universel permettant à toute machine de communiquer avec
toute autre machine de l’interconnexion
Une machine doit être accessible aussi bien par des humains que par d'autres machines
Adressage Internet Une machine doit pouvoir être identifiée par :
Un nom (mnémotechnique pour les utilisateurs),
Une adresse qui doit être un identificateur universel de la machine,
Une route précisant comment la machine peut être atteinte.
Solution :
Adressage binaire compact assurant un routage efficace
Adressage "à plat" par opposition à un adressage hiérarchisé permettant la mise en œuvre de
l'interconnexion d'égal à égal
Utilisation de noms pour identifier des machines (réalisée à un autre niveau que les protocoles de
base)
Les adresses IP (version 4) sont standardisées sous forme d’un nombre de 32 bits qui permet à la fois
l’identification de chaque hôte et du réseau auquel il appartient.
Le choix des nombres composants une adresse IP n’est pas laissé au hasard, au contraire il fait l’objet
d’une attention particulière notamment pour faciliter les opérations de routage.
Chaque adresse IP contient donc deux informations basiques, une adresse de réseau et une adresse
d’hôte.
La combinaison des deux désigne de manière unique une machine et une seule sur l’Internet.
Notation décimale
L'interface utilisateur concernant les adresses IP consiste en la notation de quatre entiers décimaux
séparés par un point,
Chaque entier représentant un octet de l'adresse IP :

Deux types d’adresses IP.


Les adresses privées que tout administrateur de réseau peut s’attribuer librement pourvu qu’elles ne
soient pas routées sur l’Internet.
Les adresses publiques, délivrées par une structure mondiale qui en assure l’unicité. (Capital pour
assurer l’efficience du routage)
Les adresses à utiliser sur les réseaux privés sont décrites par la RFC 1918
10.0.0.0 - 10.255.255.255 (ancien Arpanet !)
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
Les classes d'adressage
Une adresse = 32 bits dite "internet address" ou "IP address" constituée d'une paire (netid, hostid) où
netid identifie un réseau et hostid identifie une machine sur ce réseau.
Cette paire est structurée de manière à définir cinq classes d'adresse
Classe A

Premier bit est 0


7 bits pour le réseau
127 réseaux différents
24 bits pour identifier l’hôte.
224 hôtes possibles (16 777 214) Classe A
Classe B

Deux premiers bits sont 10


14 bits pour identifier le réseau
214 = 16 384 réseaux (128.0 à 191.255)
16 bits pour les machines
216 = 65 534 machines
Classe C

Trois premiers bits sont 110


21 bits pour identifier le réseau et.
221 = 2 097 152 réseaux (de 192.0.0 à 223.255.255)
8 bits pour identifier la machine
28 Machines
Classe D

Quatre premiers bits sont 1110


“ multicast ”, ou multipoint.
Contrairement aux trois premières classes qui sont dédiées à l’unicast ou point à point.
Classe E

Les quatre premiers bits de l’adresse sont 1111


Classe expérimentale.
Réservées pour une utilisation future, mais laquelle … ???
Les adresses APIPA

L’adressage IP privé automatique ou Automatic Private IP Addressing (APIPA) est utilisé par Microsoft
pour fournir une adresse IP à un ordinateur qui ne parvient pas à trouver un serveur DHCP.
De cette manière, tous les ordinateurs qui sont dans la même situation vont quand même pouvoir
communiquer entre eux.
Cette plage d’adresses va de 169.254.0.0 à 169.254.255.255.
Les deux derniers octets de l’adresse sont générés, en prenant comme entrée l’adresse MAC, qui sert
à initialiser l’algorithme de génération aléatoire.
La RFC 3927 décrit les caractéristiques de l’APIPA : http://tools.ietf.org/html/rfc3927

Broadcast
Adresse de broadcast = forcément une adresse de destination, elle ne peut jamais apparaître comme
une adresse source dans un usage normal des réseaux.
Quatre formes possibles de broadcast :
“ Limited broadcast ” (255.255.255.255)
Une telle adresse ne peut servir que sur le brin local et ne devrait jamais franchir
un routeur.
Limitée à un hôte en phase d’initialisation, quand il ne connait rien du réseau sur
lequel il est connecté.
“ Net-directed broadcast ”
Tous les bits de la partie hôte sont à 1. Un routeur propage ce type de broadcast, sur option.
“ Subnet-directed broadcast ”
C’est le même cas que ci-dessus mais avec une adresses IP comportant des subnets.
“ All-subnets-directed broadcast ”
Cas où tous les bits des subnets et hôtes sont à 1.

Masque de réseau ou de sous-réseau


On utilise un masque de réseau ou de sous-réseau pour distinguer la partie de l’adresse IP
correspondant au réseau, de la partie identifiant la machine.
Si l’on écrit l’adresse IP en binaire, tout bit associé au numéro de réseau va être marqué d’un ’1’ dans
le masque, d’un ’0’ sinon.
Un octet dont la valeur binaire est 1111 1111 vaut 255 en décimal.
Comme l’adresse IP est repérée sur 4 octets (32 bits), des masques simples peuvent être :
255.0.0.0
255.255.0.0
255.255.255.0
255.255.255.128
255.255.255.192
….
Le numéro de réseau courant est parfois noté en mettant tous les bits de l’hôte à ’0’.
Par exemple, 132.148.0.0 est assimilé au numéro de réseau logique 132.148.
Un hôte du réseau courant est parfois identifié en remplaçant le numéro de réseau par des ’0’.
Par exemple, 0.0.67.2 correspond à l’hôte 132.148.67.2 sur le réseau 132.148.0.0.
Utilise les bits de poids fort de la partie hôte de l’adresse IP pour désigner un sous - réseau.
Le nombre de bits employés est laissé à l’initiative de l’administrateur.
Sous-réseaux
Imaginons que vous dépendiez d’une grande entreprise disposant de plusieurs sites, un siège et cinq
succursales.
Chaque succursale se connecte à Internet en passant par le siège au moyen d’une connexion dédiée.
Seul le siège dispose d’une connexion à Internet.
Vous êtes responsable de la mise en œuvre du plan d’adressage au niveau local. Par exemple,
l’architecte qui a défini le plan d’adressage national vous impose d’utiliser une seule plage d’adresses
privées (au sens de la RFC 1918), qui est 172.16.0.0 - 172.16.255.255.
Or, sur votre site, vous avez un grand nombre de postes en réseau et plusieurs routeurs.
Vous devrez donc nécessairement utiliser ce préfixe imposé pour effectuer une décomposition de
cette plage en plusieurs plages distinctes pour chacun de vos réseaux logiques.
Hypothèse de base
L’objectif est de trouver une décomposition qui optimise le nombre de sous-réseaux voulus.
Le sous-réseau sera : 172.16.0.0
Le nombre de réseaux logiques NbRL= 5.
Le nombre d’hôtes minimum par réseau logique : NbH = 200.
La question suivante se pose : combien de bits de la partie hôte initialement disponible sont
nécessaires pour coder NbRL réseaux logiques ?
Chacun de ces RL sera en fait un sous-réseau, dont le numéro sera composé de celui du réseau logique
et de l’identifiant de sous-réseau (IDSR).
Étape 1 :
Calcul du nombre de bits pour coder le nombre de réseaux logiques
Il faut que NbRL ≤ 2 NbBITS
Dans notre cas : 5 ≤ 2NbBITS
Donc NbBits = 3
Étape 2 :
Obtention du masque CIDR
Le masque s’obtient en ajoutant à la valeur initiale le nombre de bits trouvés.
Ainsi 16 + 3 = 19
Le masque sera donc 255.255.224.0

Masque de sous-réseau : 255.255.224.0


Lorsque deux machines sont dans le même réseau, la communication est directe.
Si les deux machines ne sont pas dans le même réseau, elles communiquent à travers un passerelle
(Gateway) ou un routeur.
Le masque de réseau (ou de sous-réseau) est utilisé pour déterminer si les deux machines désirant
communiquer sont dans le même réseau ou non.
Méthode :
Réseau = (Adresse IP) & (masque) (& = ET logique)

Pour configurer une interface réseau, il faut donc :


Une adresse IP
Un masque de réseau
Une adresse de passerelle (Gateway ou router) si le réseau est raccordé à d’autres réseaux.
Le routeur dispose d’une interface dans chaque réseau (avec son adresse …)

DHCP
Protocole réseau dont le rôle est d’assurer la configuration automatique des paramètres IP d’une
station :
Adresse IP
Masque de sous-réseau.
Passerelle par défaut,
Serveurs de noms DNS

La conception initiale d’IP supposait la pré- configuration de chaque ordinateur connecté au réseau
avec les paramètres TCP/IP adéquats (adressage statique, nommée également IP fixe).
Sur des réseaux de grandes dimensions ou étendues, où des modifications interviennent souvent,
l’adressage statique engendre une lourde charge de maintenance et des risques d’erreurs.
En outre, les adresses assignées ne peuvent être utilisées si l’ordinateur qui détient cette charge n’est
pas en service.
Un cas typique où ceci pose un
problème est celui des fournisseurs
d’accès à internet (FAI ou ISP en
anglais), qui ont en général plus de
clients que d’adresses IP à leur
disposition, mais dont les clients ne
sont jamais tous connectés en même
temps.
Solution DHCP :
Seuls les ordinateurs en service utilisent une adresse de l’espace d’adressage,
Toute modification des paramètres (adresse de la passerelle, des serveurs de noms) est
répercutée sur les stations lors du redémarrage,
La modification de ces paramètres est centralisée sur les serveurs DHCP.

Fonctionnement DHCP
L'obtention d'une adresse se fait en 4 phases :
Demande de bail IP par le client.
Offre de bail IP par un serveur.
Sélection d'une offre par le client.
Accusé de réception de bail IP par le serveur.
Phase 1 :
Demande de bail IP par le client
Initialisation du client avec une version limitée de TCP/IP
Le client diffuse une demande d'adresse IP (message DhcpDiscover) avec :
Source 0.0.0.0
Destination 255.255.255.255
Phase 2 :
Offre de bail par un serveur
Tous les serveurs reçoivent la demande. S'ils sont configurés pour répondre (message
DhcpOffer), ils diffusent une offre avec les informations suivantes :
L'adresse MAC du client
Une adresse IP
Un masque de sous-réseau
Une durée de bail
Son adresse IP (pour la phase 3)
Un client DHCP attend une offre pendant une seconde.
En cas de non-réponse il rediffuse sa demande quatre fois (à des intervalle de 9, 13 et 16 secondes
puis un intervalle aléatoire entre 0 et 1000 millisecondes).
Après ces quatre tentatives, il renouvelle sa demande toutes les 5 minutes
Phase 3 :
Sélection d'un bail par le client
Le client sélectionne une offre (en général la première)
Le client annonce par diffusion qu'il a accepté une offre (message DhcpRequest).
Son message comporte l'identification du serveur sélectionné. Ce dernier sait que son offre
a été retenue ; tous les autres retirent leur offre et l'adresse redevient disponible.
Phase 4 :
Accusé de réception par le serveur
Le serveur sélectionné accuse réception au client (message DhcpAck).
Son message contient éventuellement d'autres informations (serveur DNS, Passerelle, etc.)
L'affectation d'une adresse IP n'est pas permanente.
Elle est accordée pour une certaine durée nommée : le bail.
Le client doit donc renouveler ce bail.
1ère demande de renouvellement :
Elle est faite à la moitié du bail (message DhcpRequest) au serveur à l'origine du bail.
Si elle est accordée et le client continue avec un nouveau bail et éventuellement de nouveaux
paramètres (message DhcpAck).
2ème demande de renouvellement
Si à 50 % la demande a échoué, il y a demande de renouvellement à 87,5 % du bail.
Cette fois la demande est adressée à tous les serveurs (diffusion).
Un serveur peut répondre en proposant un nouveau bail (message DhcpAck) mais peut
également répondre avec un message DhcpNack qui oblige le client à se réinitialiser (reprise
de la procédure d'obtention d'un bail)
Si le bail expire (ou message DhcpNack) : Reprise de la procédure d'obtention d'un bail
Identités Linux
Les données des utilisateurs et des groupes sont stockées dans 4 fichiers qui sont :

/etc/passwd : Fichier contenant les informations des utilisateurs enregistrés sur la machine
1 user = 1 ligne
Format : Uname:Password:uid:gid:gecos:homedir:login Shell Exemple dupont:bcvY:532:345:Jacques
Dupont:/home/dupont:/bin/ksh

/etc/passwd

Problème : Fichier lisible par tout le monde


Logiciels de décryptage courants pour attaque par brute force
Remède : Shadow Password
'x' à la place du mot de passe dans le fichier /etc/passwd
Mot de passe crypté -> Fichier /etc/shadow lisible uniquement par root
Contient la liste des groupes et des membres
Format: Gname: Password:GID:Users, … Exemple : enseignants:x:560:tic,tac,lui,lautre Pour les mêmes
raisons de sécurité que pour le fichier passwd, le ‘x’ indique que le mot de passe crypté est déplacé
dans /etc/gshadow
Gname Nom du groupe
Password Mot de passe du groupe
Recherche d'utilisateurs
cat : affichage d'un fichier à l'écran
grep : filtre les lignes
| : enchaînement de commandes
cat /etc/passwd | grep dupont Recherche texte dupont dans le fichier
cat /etc/passwd | grep "^dupont:" Recherche user dupont

Commandes d'identification
id :Retourne les informations UID et GID de l’utilisateur courant
id username : Retourne les informations de l’utilisateur spécifié
Le premier groupe indiqué est le groupe actif
Changement de groupe actif
newgrp nouveau_groupe_actif
Le groupe actif est maintenant nouveau_groupe_actif jusqu'à la fin de la session ou jusqu’au prochain
changement
Liste des groupes
groups : Affiche la liste des groupes de l'utilisateur courant
groups username : Affiche la liste des groupes de l'utilisateur username
Quelques options de la commande passwd :
-d, --delete supprimer le mot de passe du compte
-l, --lock bloquer le compte indiqué
-u, --unlock déverrouiller le compte indiqué
Changement des informations personnelles
chfn : Permet de modifier ses propres informations personnelles
chfn username :Permet de modifier les propres informations personnelles du l’utilisateur username
Seul root peut le faire
Changement de shell
Modifie l'interpréteur de commande par défaut. Le changement sera effectif au prochain login
chsh
chsh username
chsh username shell
Le fichier /etc/shells contient la liste des shells disponibles
Consoles multiples
Le noyau Linux permet d’utiliser plusieurs consoles « virtuelles » simultanément.
La combinaison de touches
[CTRL]+[ALT]+[Fi] permet de commuter l’affichage entre les différentes consoles. 1 <= i <= 6 : consoles
textes i = 7 : console graphique
Changement d’identité
Il est possible de changer temporairement d’identité avec la commande su qui signifie : switch user id
su : Sans arguments la commande su remplace l’identité courante par root
su username
Remplace l’identité courante par username
Pour annuler le changement d’identité, il faut utiliser la commande exit
La commande sudo est un cas particulier qui change d’identité uniquement pour une commande

Les droits
L'accès au répertoire et aux fichiers des autres utilisateurs dépend
De l'identité de l'utilisateur qui y accède
Des droits que le propriétaire leur a attribués
Root => super-utilisateur qui a tous les droits
N'importe quel utilisateur possède les droits liés à son UID et à tous ses groupes
Attributs d'un fichier
UID de son propriétaire
GID de son groupe propriétaire
Droits d'accès des différentes catégories
La commande ls –l’affiche ces informations Initialement : propriétaire = créateur du fichier groupe
propriétaire = groupe actif au moment de la création Le fichier "hérite" des informations de son
créateur
Changement de propriétaire
Chown
Permet de changer le propriétaire d'un fichier
Chgrp
Permet de changer le groupe propriétaire d'un fichier
Les droits
3 catégories :
Propriétaire (user)
Membres du groupe propriétaire (group)
Les autres (other)
Droits
Lecture (read r)
Écriture (write w)
Exécution (execute x)
Interdiction (-)
Affichage
Les droits sont donnés dans l'ordre rwx pour chaque catégorie (user, group, other)
Exemple rwxr-x---
Affichage des droits
Fichier
Ls –l fichier

Répertoire
Ls –la (et regarder le répertoire.)
Ls –l
Ls –ld
Lien symbolique
Ls –l (lrwxrwxrwx normal)
Modification
Chmod -options modes fichiers
Options : -R = récursif
Modes
Modification apportée en notation symbolique ou octale
Fichier
Fichier(s) ou répertoire(s) à modifier
Exemples
Chmod g-r essai* : Enlève le droit r au groupe pour tous les fichiers dont le nom commence par essai
Chmod –R g-x Exercice : Enlève le droit x au groupe pour le répertoire Exercice et tout son contenu,
ainsi que sur les sous-répertoires
Chmod –R u+w essai* : Ajoute le droit w au propriétaire pour tous les fichiers et répertoires dont le
nom commence par essai. Commande récursive sur tous les sous-répertoires
Cas spéciaux
s SUID-bit ou SGID-bit
t Sticky-bit
X X majuscule.
Exécution autorisée pour une catégorie si (et seulement si) une autre catégorie possède déjà
ce droit avant la modification.
Exemple : u+X -> x attribué seulement si g ou o possède déjà ce droit
Groupement
Il est possible de grouper des modifications pour la même catégorie
Exemple : chmod go+r-x essai
Il est aussi possible d'effectuer plusieurs modifications successives en donnant une liste
Exemple : chmod g-w,o+r essai
Remarques
Le propriétaire du fichier et l'acompte administrateur root sont les seuls habilités à changer les droits
sur un fichier ou répertoire
Il n'y a aucun espace entre les différents éléments constituant l'argument "mode"

La notation Octale
Autre syntaxe qui permet de changer tous les
droits en une seule commande
Les droits sont précisés sous la forme d'un
nombre à 3 chiffres octaux
Chaque chiffre s'écrit comme un nombre de 3
bits respectant respectivement les droits r, w et
x.
0 = absence de droit
1 = présence de droit
L'ordre des droits : user group other
chmod u=rw,g=rx,o=r essai chmod 654 essai
Familles de droits
Permissifs 755 rwx r-x r-x
Confiance
Protecteur 750 rwx r-x ---
Confiance dans son groupe uniquement
Paranoïaque 700 rwx --- ---
Confiance en personne
Interprétation - Fichiers
Lecture r
Permet de lire le contenu d'un fichier et de le copier
Ecriture w
Permet de modifier le contenu d'un fichier
Exécution x
Permet d'exécuter un fichier contenant un code binaire ou un script
Le droit x suffit pour exécuter un fichier binaire
Les scripts nécessitent le droit rx, car ils sont lus par l'interpréteur de commandes (shell)

Changement de propriétaire
chown -options nouveau_proprietaire: nouveau_groupe fichier Exemple :
Seul root est autorisé
Changement de groupe
chgrp - options nouveau_groupe fichier
Commande identique à chown, mais change uniquement le groupe d'un fichier

Droits par défaut


umask - options mode
Filtre mis en place lors de la création de nouveaux fichiers ou répertoires
bit 0 -> laisse passer le droit
bit 1 -> bloque le droit

umask 027
Familles de masques
Permissif 022
Masque standard UNIX rwx r-x r-x
Protecteur 027
Confiance en son groupe rwx r-x ---
Paranoïaque 077
Confiance en personne
Les droits d'endossement
Changement d'identité pendant l'exécution d'un logiciel
Rendre le code non interruptible pour éviter des problèmes
Les droits sont retirés si le fichier est modifié
Obligation de les remettre à chaque fois
SUID-bit et GUID-bit
SUID-bit
Set User ID bit
L'utilisateur prend l'identité du propriétaire du fichier, mais ne change pas de groupe
Représenté par un s affecté à la catégorie user en notation symbolique ou 4000 en octal
Exemple : passwd

Mise en œuvre
chmod u+s prog
prog = programme exécutable (pas valable pour des scripts)
Droit x obligatoire au préalable
chmod a+x prog
s -> x présent
S -> x absent
SGID-bit
Set Group ID bit
Lettres dans le groupe ou 2000 en octal
L'utilisateur garde son identité, mais change de groupe pendant l'exécution du programme
Mise en œuvre
chmod g+s prog
Le droit x doit être présent pour pouvoir bénéficier de ce droit supplémentaire
Droit sur les répertoires
SGID-bit sur un répertoire
Les fichiers créés dans ce répertoire appartiennent au groupe d'appartenance du répertoire et non de
l'utilisateur
Sticky-bit
Lettre t en notation symbolique ou 1000 en octal
Affecté à un logiciel ou répertoire
Exécutable conservé en mémoire après la première exécution
Contrôle la destruction de fichiers dans un répertoire. Limite cette action au propriétaire du fichier
FTP - TFTP
Peut se faire :
De serveur à serveur,
De client à serveur,
De client à client
À l'aide d'un serveur intermédiaire
Se fait via un réseau informatique à l'aide d'applications adaptées.
Le cas le plus "classique"
Un client (utilisateur FTP) va se servir de ce protocole, pour faire du transfert de fichiers (upload ou
download) avec un serveur (serveur FTP). Client FTP Serveur FTP Upload Download

FTP
Protocole standard pour copier un fichier entre deux systèmes hétérogènes.
File Transfert Protocol (RFC 959)
Protocole de type command-response
Le transfert de fichiers semble simple, mais :
Les systèmes hétérogènes diffèrent par :
Le système d'exploitation
Le jeu de caractères autorisés
Les conventions de nommage
La structure des répertoires
La structure des données
Utilise les services TCP
Nécessite deux ports de connexions
Port 21 pour les commandes
Port 20 pour les données
Control connection
Le serveur ouvre une le port 21 en mode
passif et attend une connexion d'un client
Le client utilise un port aléatoire
"ephemeral" et se connecte sur le port 21 du
serveur. Cette connexion restera ouverte
durant toute la session.

Data connection
Le client ouvre en mode passif (attente) un
port aléatoire "ephemeral"
Le client envoie le numéro du port au serveur
(commande PORT)
Le serveur reçoit le numéro du port et effectue
une ouverture active depuis son numéro de port
20
Une connexion est effectuée pour chaque
transfert de fichier

Communication sur le canal de commande

Utilise NVT (Network Virtual terminal) (code ascii 7 bits envoyé sur 8 bits avec msb à 0)
Méthode Command-Response
Chaque ligne est terminée par <CR><LF>

Communication sur le canal des données


Le client choisit pour chaque transfert :
Le type de fichier (File type)
La structure des données (Data Structure)
Le mode de transfert (Transmission mode)

Type de fichier
ASCII
Utilisation du jeu de caractères NVT ASCII sur le client et sur le serveur. Chaque ligne est terminée par
<CR><LF>
EBCDIC
Jeu de caractères alternatif
Image (binary)
Flux continu de bits sans format
Local
Permet de transférer des fichiers dont la taille des mots (bytes) n'est pas identique (normalement byte
= 8 bits, mais pas forcément)
Structure des données
File (default)
Flux d'octets continu sans structure
Record
Suite d'enregistrements (ASCII ou EBCDIC)
Utilisée uniquement avec les fichiers texte
Page
Le fichier est découpé en pages avec un numéro et un en-tête.
Mode de transmission
Stream mode (default)
Le fichier est transmis comme un flux continu d'octets.
Si la structure est "File", la fin du fichier est signalée par l'émetteur qui termine la communication.
Pour la structure "Record", un caractère détermine la fin d'enregistrement et un autre la fin de fichier.
Block mode
Les données sont transmises sous forme de blocs avec un ou plusieurs octets d'en-tête
Compressed mode
Les données sont compressées avec l'algorithme RLE (Run Length Encoding : une suite identique
d'octets est remplacée par une occurrence et un facteur de répétition)
Remarque :
Il existe une foule de manières différentes de transférer un fichier avec le protocole FTP.
Dans la pratique on utilise souvent deux modes
ASCII (texte)
IMAGE (binaire)

Les commandes
Sont classées dans 6 catégories
Access, file management, data formatting, port defining, file transfert et miscellanous)
Passent par le canal de commande
Utilisent NVT ASCII + <CR><LF>
Sont composées de 3 à 4 caractères majuscules avec des paramètres optionnels
Les réponses
Sont composées de nombres à 3 chiffres et éventuellement d'un commentaire

Exemple d'une session FTP pour obtenir la liste des fichiers d'un répertoire
Anonymous FTP
Permet à un utilisateur de se connecter à un serveur sans informations d'identification.
En général :
Username = anonymous
Password = adresse e-mail de l'utilisateur
Limité au mode lecture
Active Mode
Le client se connecte depuis un port (> 1023) au serveur sur le port 21 et indique au serveur le port à
utiliser pour les données, puis se met en attente.
Le serveur se connecte depuis son port 20 sur le port du client.
Exemple avec les ports 1026 et 1027 chez le client Server Client 20 21 1026 1027 1 2 3 4

Ce genre de configuration est en général bloquée par les pare-feu modernes.


Solution 1
Configurer le pare-feu pour qu'il accepte ce genre de connexion
Perte de sécurité
Solution 2
FTP en mode passif
Passive mode
Le client se connecte depuis un port (> 1023) au serveur sur le port 21 et envoie au serveur la
commande PASV le serveur envoie alors le port à utiliser pour les datas
Le client se connecte au port fourni par le serveur et le serveur termine la connexion

TFTP
Dans certain cas, il faut juste pouvoir effectuer une copie d'un fichier d'un serveur à un client sans
nécessairement avoir besoin de toute les fonctionnalités du protocole FTP.
Exemple :
Démarrage d'une station sans disque Il faut "juste" obtenir les système d'exploitation et les fichiers de
configuration
TFTP : Trivial File Transfert Protocol
Utilise UDP (port 69)
Simple
Peu gourmand en ressources
Efficace
Pas de sécurité (login)
5 Formats de messages

Mode
Octet :
Pour des fichiers binaires.
Pas de transcodage
Netascii :
Pour des fichiers de type texte
Les lignes se terminent par <CR><LF>
Transcodage netascii sur le client et le serveur
Notions Générales
Une machine généralement très puissante fournit des services : Le serveur
Exemple FTP, HTTP, DropBox, …
Ces services sont exploités par des programmes clients qui sont sur des machines distantes :
Les clients
Avantages :
Recommandé pour des réseaux nécessitant un grand niveau de fiabilité
Ressources centralisées
Administration unique au niveau serveur, les clients ayant peu d'importance dans ce modèle, ils ont
moins besoin d'être administrés
Un réseau évolutif : grâce à cette architecture il est possible de supprimer ou rajouter des clients sans
perturber le fonctionnement du réseau et sans modification majeure Partage de fichiers
Inconvénients
Coût élevé pour le serveur
Maillon faible du système. Si le serveur tombe en panne, les services ne sont plus disponibles Partage
de fichiers
Notions Générales Pair - à - Pair Partage de fichiers

Aucun serveur dédié, chaque poste peut jouer le rôle de client et/ou serveur.
Chaque poste est libre de partager les ressources qu’il désire et d’assurer la sécurité
Pas d’administrateur
Exemple : Partages Windows Partage de fichiers
Avantages :
Coût réduit
Simplicité de gestion pour chaque poste
Inconvénients :
Pas centralisé, donc plus difficile à coordonner et sécuriser. Partage de fichiers
Partage Unix / Unix
Partage de fichiers distants sous Unix : NFS
Network File System
Protocole développé par Sun Microsystems en 1984
Utilise le protocole RPC (Remote Procedure Call)
Système de fichiers réseau qui permet de partager des données entre deux machines distantes.
Partage de fichiers
NFS versions 1,2 et 3
Fonctionnent avec UDP
TCP possible pour NFS 3
Système sans état (stateless) qui ne permet pas la reprise sur incidents.
Sécurité triviale Partage de fichiers
NFS 4
Réécriture complète
Gestion de la sécurité
Négociation du niveau de sécurité entre le client et le serveur
Sécurisation simple, support de kerberos et des certificats
Chiffrement de la communication Partage de fichiers
Support de la montée en charge
Réduction du trafic par groupement de requêtes
Délégation (le client gère le fichier en local)
Systèmes de maintenances simplifiés :
Migration : le serveur NFS est migré de la machine A vers la machine B de manière
transparente pour le client
Réplication : le serveur A est répliqué sur la machine B Partage de fichiers
Reprise sur incidents
La gestion de la reprise sur incident est intégrée du côté client et du côté serveur.
Compatibilité
NFSv4 peut être utilisé sous Unix et sous MS-Windows.
Disponible sur Mac depuis Mac OS X Lion (10.7)5.
Support de plusieurs protocoles de transports (TCP, RDMA) Partage de fichiers
NFS 4.1 (Janvier 2010)
Transport de données abstrait et indépendant de TCP et d’IP
Apparition de la notion de session qui peut être interrompue et rétablie.
Parallélisation des accès aux fichiers (Striping).
Fonctionnement :
Une machine joue le rôle de serveur de fichiers. Elle est appelée serveur NFS, et on dit qu'elle exporte
tout (arborescence racine /) ou partie de son système de fichiers, en le partageant sur le réseau.
Une partie de l'arborescence d'une machine Linux "serveur", est exportée ce qui lui permet d'être
intégré dans le système de fichiers d'une machine Linux "cliente". Partage de fichiers
Comme toute ressource extérieure doit être intégrée dans le système de fichiers Linux, l’accès à ce
partage ne pourra être permis qu'à l'aide d'un processus de montage
L'utilisateur peut monter cette arborescence exportée par le serveur, sur un point de montage, de
façon tout à fait semblable au montage de systèmes de fichiers. Partage de fichiers
Le montage peut s'effectuer en cours de session de travail par la commande interactive mount
Mais dans un cadre de travail stable, où le serveur est dédié, il est souhaitable de monter la ressource
NFS au démarrage. Il suffit pour cela d'inclure la description du montage sur une ligne de /etc/fstab
Dès lors, pour l'utilisateur sur la machine cliente, la ressource est accessible comme si elle résidait sur
un périphérique local. Partage de fichiers
/etc/exports
Ce fichier contient la liste des exportations. Sur chaque ligne, on précise un répertoire du système de
fichiers, suivi par la liste des machines distantes clientes autorisées à les monter.
Si cette liste est vide, toutes les stations accessibles sont autorisées.
Options
ro : lecture
rw : lecture / écriture
secure port de connexion inférieur à 1024
insecure port de connexion quelconque
root_squash : UID/GUI root -> nobody
no_root_squash : pas de transformation
all_squash : tous les UID/GID -> nobody
squash_uids, squash_gids : Indique la liste des UID/GID à convertir en nobody
anonuid, anongid : Conversion spécifique de UID/GID root
La liste complète des options est disponible par la commande : man exports Partage Unix / Unix
Montage par autofs.
NFS intelligent.
Monte le système de fichier au premier accès
Démonte le système en cas d'inactivité
NFS et Windows ?
Un logiciel nommé SFU (services for Unix) permet d’installer le protocole NFS sur des machines
Windows.
A partir de Windows Serveur 2008, les composantes NFS sont fournies dans certaines distributions.
Il existe aussi des logiciels tiers qui permettent d’intégrer une machine Windows dans un réseau NFS
(freeNFS, …)

Partage Windows / Windows


Dans le mode Windows il est possible de partager un dossier sur le réseau.
Partager un dossier signifie les rendre accessibles dans le cadre d'un réseau depuis d'autres
ordinateurs.
Autrement dit, lorsqu'un dossier est partagé, d'autres ordinateurs du réseau peuvent y accéder et
effectuer des opérations dans ce dossiers et sur tout ce qu'il contient en fonction des protections sur
les différents objets (dossiers et fichiers)
Le service Server gère le partage de fichiers et l'impression.
Le partage d'un dossier c'est :
Un pointeur virtuel qui permet aux clients d'accéder directement à un emplacement du serveur.
Une protection d'accès
Pratiquement aucun traitement du côté serveur qui se contente juste de transmettre les dossiers

Création de dossiers partagés


Condition :
Administrateur
Utilisateur avec pouvoir
Création depuis
L'explorateur (si on se trouve sur le serveur)
Console de gestion (à distance)
Depuis l'explorateur
Bouton droit de la souris sur le dossier à partager
Propriétés
Partage
Partage avancé

Nombre limite d'utilisateurs
Limite le nombre de connexions simultanées au partage
Permet une gestion simple des licences
En utilisant la console de gestion
Poste de travail
Gérer
Dossiers partagés
Partages

Autorisations de partage
Appliquées lors d'un accès par le réseau
Non appliquées en accès local
Autorisations NTFS
Appliquées tout le temps
Le système sélectionne automatiquement la méthode la plus restrictive
Autorisations de partage
Sélectionner le partage
Bouton de droite
Autorisations
Contrôle total
Le groupe affecté est autorisé à effectuer toutes les fonctions voulues sur les fichiers et
dossiers via le partage
Modification
Le groupe affecté peut lire, exécuter, modifier et supprimer les fichiers et dossiers via le
partage
Lecture
Le groupe affecté peut seulement lire et exécuter des fichiers et dossiers via le partage
Autoriser Refuser ?
Aucune autorisation = pas d'accès
Autoriser Activé
Peut utiliser l'autorisation
Refuser activer
Ne peut pas utiliser l'autorisation
Gestion des conflits pour un utilisateur
Recherche toutes les entrées (nom ou groupe) qui correspondent
Ignore toutes les entrées non cochées
Recherche tous les cas autorisés
Si aucun => pas d'accès
Recherche tous les cas refusés
Si un seul existe => accès refusé pour le cas spécifié

Types d'autorisation
Atomiques (13) fonctions de base
Moléculaires (6) groupes distincts
Interprétation différente si c'est un
dossier ou un fichier
Parcourir le dossier /
Exécuter le fichier
Si l'objet est un fichier exécutable
Autorisation d'exécuter le fichier
Si l'objet est un dossier
Permet d'ignorer tous les verrouillages de niveau supérieure et permet de traverser
le dossier
Liste du dossier /
Lecture des données
Fichier
Autorise la consultation du contenu du fichier
Dossier
Autorise la consultation des noms de fichiers et de sous-dossiers appartenant au
dossier
Composant central de l'option Lire
Attributs de lecture
Autorisation de consulter les attributs de base (propriétés) du fichier. (Lecture seule, Caché,
Système et Archive)
Lire les attributs étendus
Autorisation de consulter les attributs étendus qui sont gérés par des applications externes
(Word, Excel,) et qui varient d'un programme à l'autre
Création de fichiers /
Ecriture de données
Dossier
Permet d'ajouter de nouveaux fichiers dans un dossier
Interdit d'ajouter des dossiers
Fichier
Droit de remplacer des données dans un fichier
Interdit d'ajouter des données dans un fichier
Création de dossiers /
Ajout de données
Dossier
Autorisation de créer de nouveaux dossiers
Fichier
Autorisation d'ajouter des données à la fin d'un fichier, mais pas de modifier les
données présentes
Attributs d'écriture
Permet de modifier les attributs de base d'un fichier
Attributs d'écriture étendus
Permet de modifier les attributs étendus d'un fichier
Suppression de sous-dossiers et de fichiers
Permet de supprimer des sous-dossiers et des fichiers même sans avoir l'autorisation de
suppression sur le fichier ou les sous-fichiers.
Donne le contrôle sur l'effacement au niveau du dossier
Supprimer
Permet de supprimer un objet
Autorisation de lecture
Permet de consulter toutes les autorisations NTFS associées à un dossier ou un fichier.
Ne permet pas la modification
Modifier les autorisations
Permet de modifier les autorisations NTFS associées à un fichier ou à un répertoire.
Approbation
Permet de s'approprier un fichier. Le propriétaire bénéficie du droit de modifier les
autorisations.
Par défaut les administrateurs peuvent toujours s'approprier un fichier ou un dossier.
Gestion des autorisations Type Moléculaire
Lecture
Droit de base de l'utilisateur
Consulter le contenu, les autorisations et les attributs associés à un objet
Fichier
Consultation du contenu, exécuter si c'est un programme
Dossier
Consultation du contenu
Ecriture
Dossier
Création de fichiers et de sous-dossiers
Fichier
Modifications
Lecture et exécution
Idem Lecture mais avec le droit atomique de parcourir le dossier en plus
Modifier
Lecture + Exécuter + Ecriture.
Suppression de données
Contrôle total
Combinaison des groupes moléculaires Ecriture, Lecture, Lire et Exécuter et Modifier
Modification des autorisations
Appropriation
Suppression de sous-dossiers et fichiers
Afficher le contenu du dossier
Lecture + Exécution mais seulement sur des dossiers
Possibilité de vérifier l'existence de fichiers dans un dossier, mais sans aucun droit de lecture
de ceux-ci.
Autorisations spéciales
Groupement personnalisé de droits atomiques
Héritage
Un fichier / Dossier peut être paramétré pour hériter des autorisations de son dossier parent.
Si le parent hérite également d'autorisations, il suffit remonter la chaîne des répertoires
jusqu'au dossier auquel les droits véritables ont été attribués.
Permettre aux autorisations …
Autorise l'héritage des propriétés du dossier parent
Pour supprimer l'héritage, il suffit de décocher l'option
Copier = Copie les propriétés héritées
Supprimer = annule tout
Remplace les entrées …
Rétablit les propriétés des enfants pour qu'elles soient identiques à celles des parents.
Appliquer pour activer
La colonne « héritée de » permet de savoir l'origine de l'héritage
La colonne Appliquer permet de déterminer si les propriétés seront appliquées au reste de
l'arborescence ou non.
Gestion des conflits
Refuser est prioritaire sur Autoriser
Autorisation définie explicitement est prioritaire sur Refuser obtenue par héritage
En cas d'héritage multiple, la règle reçue du parent le plus proche de l'objet prime.
Affectation des autorisations au niveau des fichiers et des répertoires
Bouton de droite sur un dossier / fichier
Propriétés
Sécurité
Case grisée = Héritage
Autorisations spéciales grisés = des entrées d'autorisations supplémentaires sont disponibles dans
cette boîte de dialogue
Options supplémentaires
Paramètres avancés
Gestion des autorisations
Autorisations contradictoires
Partages
Les autorisations de partage sont prioritaires sur toutes les autres
Dossiers / Fichiers
Les autorisations de fichiers sont prioritaires sur les dossiers
Autorisations multiples
L'autorisation la moins restrictive est prioritaire (à conditions que les autorisations de partage
ne soient pas impliquées)
Autorisations réelles (effectives)
Permet de connaître le résultat final des autorisations accordée à un utilisateur ou à un
groupe.
Propriétés
Sécurité
Paramètres avancés
Autorisations réelles (effectives)
Limitations de l'outil
Limité aux groupes locaux et globaux
Ne tient pas compte des autorisations de partage
Ne tient pas compte de la plupart des SID des utilisateurs en fonction de leur mode de
connexion (réseau, Service de terminaux, …)
Concept d'appropriation
Chaque objet a un propriétaire
Le propriétaire bénéficie d'un privilège spécial : il peut affecter des autorisations
Si vous êtes propriétaire, vous pouvez changer les autorisations et obtenir l'accès.
Comment devenir propriétaire ?
Toute personne qui crée un objet en est le propriétaire
Si aucun propriétaire visible -> le groupe administrateurs est le propriétaire
Le groupe administrateurs peut s'approprier n'importe quel objet
Propriétés
Sécurité
Paramètres avancées
Propriétaire
Choisir un nouveau propriétaire
Appliquer
Audit
Surveillance du système de fichiers
Désactivé par défaut (nécessite des ressources)
A) Activation de l'audit
Outils d'administration
Stratégies de sécurité locale (sans AD )
Ou stratégies de domaines (avec AD)
Choix du type d'audit
B) Signaler au système les fichiers concernés
Bouton de droite sur un objet
Propriétés
Sécurité
Paramètres avancés
Audit
Choisir le type d'audit
Valider
Consulter le journal de sécurité
Partages cachés
Partage caché : Ajouter un $ à la fin du nom du partage
Le partage est présent et disponible, mais invisible dans la liste de navigation
Partages communs
Tous les lecteurs disposent d'un partage caché à la racine C$, D$, …
Partage administratif
Impossible d'en modifier les autorisations ou les propriétés
Partages utiles pour l'administration à distance des serveurs
Accessible uniquement aux administrateurs et opérateurs de sauvegarde
ADMIN$
Partage administratif qui pointe à la racine du système d'exploitation (en général
c:\windows)
IPC$
Section mémoire qui gère un canal de communication entre deux processus locaux ou
distants.
Net use
La commande net use permet de connecter un lecteur réseau depuis une ligne de commande
NET USE [nom de périph.|*] [\\Ordinateur\Partage[volume] [mot de passe | *]]
[/USER:[nom de domaine\]nom d'utilisateur]
[/USER:[nom de domaine avec points\]nom d'utilisateur]
[/USER:[nom d'utilisateur@nom de domaine avec points]
[[/DELETE] | [/PERSISTENT:{YES | NO}]]
NET USE [nom de périphérique | *] [mot de passe | *] [/HOME]
NET USE [/PERSISTENT:{YES | NO}]
Exemple :
Net use t: \\ruch\data * /user:toto\marcel

Vous aimerez peut-être aussi