• Aucun résultat trouvé

Cours de R´eseau et communication Unix n

N/A
N/A
Protected

Academic year: 2021

Partager "Cours de R´eseau et communication Unix n"

Copied!
30
0
0

Texte intégral

(1)

Cours de R´eseau et communication Unix n

°

6

Edouard THIEL

Facult´e des Sciences Universit´e d’Aix-Marseille (AMU)

Septembre 2016

Les transparents de ce cours sont t´el´echargeables ici :

http://pageperso.lif.univ-mrs.fr/~edouard.thiel/ens/rezo/

Lien court : http://j.mp/rezocom

(2)

Plan du cours n

°

6

1. Les r´eseaux informatiques 2. Le mod`ele de r´ef´erence OSI 3. Le concept Internet

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 2/30

(3)

1 - Les r´eseaux informatiques

R´eseaux pour interconnecter des machines avec des architectures diff´erentes.

(4)

Cat´egories de r´eseaux

R´eseau local filaire (LAN, Local Area Network) ethernet, token ring, ...

R´eseau sans fil

WiFi, bluetooth, ...

R´eseau longue distance (WAN, Wide Area Network) fibre optique, FAI

R´eseau courte distance

USB, bus I2C (SMBus), HDMI, ...

Bus deterrain Bus CAN

R´eseau Radioamateur

R´eseau Virtuel Priv´e (VPN)

etc

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 4/30

(5)

Topologies

Point `a point (relie 2 machines)

Multipoint :

en bus

en anneau

en ´etoile

en arbre

maill´e (plusieurs chemins)

(6)

Architecture en couches

Principe :

la communication se fait entre deux couches de mˆeme niveau ;

chaque couche offre des services `a la couche imm´ediatement sup´erieure ;

chaque couche s’appuie sur des services de la couche imm´ediatement inf´erieure.

N´ecessite un ensemble de r`egles pr´ecises : protocoles

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 6/30

(7)

Relations entre les couches

Machine A Machine B

couche i <--- protocole couche i ---> couche i

| ^ | ^

v | v |

couche i-1 couche i-1

| ^ | ^

.... ....

v | v |

couche 1 couche 1

| ^ | ^

v | v |

--- r´eseau physique ---

(8)

2 - Le mod`ele de r´ef´erence OSI

Mod`ele en couche OSI = Open Systems Interconnection propos´e par ISO= International Standard Organization

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 8/30

(9)

Les 7 couches OSI

couche 7 Application 6 Pr´esentation 5 Session

4 Transport segment

3 R´eseau paquet

2 Liaison trame

1 Physique bit

(10)

Couche 1 : Physique

Transmission de bits entre deux machines reli´ees directement Activation, maintien, d´esactivation de la connexion physique Prise en compte des caract´eristiques physiques :

codage des bits, tensions, fr´equences, brochage, etc.

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 10/30

(11)

Couche 2 : Liaison de donn´ees

Acheminement de donn´ees entre 2 cartes r´eseaux dans un LAN, avec adressage physique

Exemple : adresses MAC(Media Acces Control) Groupement de bits en trames, avec codes correcteurs Gestion conflits d’acc`es :

Ethernet : ´emission / d´etection collision / r´e-´emission

Token Ring : circulation d’un jeton = droit d’´emettre

USB : arbre `a jetons, max 127 p´eriph´eriques, 7 niveaux de hubs.

couche liaison du Wi-Fisous diff´erents modes : infrastructure (sur un point d’acc`es), ad-hoc(point `a point), ...

(12)

Couche 3 : R´eseau

Acheminement de paquets entre deux machines, sur r´eseaux diff´erents.

Adressage logique des machines – exemple : IP Niveau routage :

directions `a suivre `a travers des routeurs ou passerelles

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 12/30

(13)

Couche 4 : Transport

Acheminement de segments de donn´ees entre 2 processus.

Diff´erentes fiabilit´es de service

Mode connect´e (ex: TCP) ou non connect´e (ex: UDP)

(14)

Couche 5 : Session

Permet l’ouverture et la fermeture de sessions (ensemble de communications).

Gestion des ´echanges multipoint (synchronisation, qui r´epond `a quoi, ..)

Transactions, restauration d’un ´etat ant´erieur.

Exemples : protocoles AppleTalk, NetBIOS, RPC, ..

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 14/30

(15)

Couche 6 : Pr´esentation

Echange de donn´ees typ´ees, structur´ees.´

Encodages des caract`eres : ASCII, Latin-1, UTF-8, ...

Repr´esentation standard et traduction sur machines diff´erentes : s´erialisation et d´e-s´erialisation.

Transmission d’objets, de vid´eos, ..

Compression et cryptographie.

Exemple : repr´esentations XDR de Sun, XML, ...

(16)

Couche 7 : Application

D´efinition de services standard :

Protocoles de transfert de fichiers : FTP, TFTP, NFS, SMB/CIFS, ...

Protocoles de messagerie : SMTP, POP3, IMAP, NNTP, ...

Protocoles de session `a distance : telnet, rlogin, ssh, X11, ...

Protocoles d’envoi de pages web : HTTP

protocoles de gestion r´eseau : DNS, SNMP, ...

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 16/30

(17)

3 - Le concept Internet

Le r´eseau des r´eseaux.

(18)

Historique

A l’initiative` DARPA (agence militaire US, 1960s) :

interconnexion de r´eseaux h´et´erog`enes pour cr´eer un ”r´eseau logique” ;

r´esilience : r´esistance aux pannes, aux attaques.

Poursuivi dans monde universitaire (1970s, 1980s) :

Unix BSD (Berkeley),

puis autres Unix (propri´etaires) ;

av`enement du web (CERN 1990, Mosaic1993, Netscape, ...).

Enfin, `ere grand public, puis commerciale :

FAI, fournisseur d’acc`es internet ;

ADSL, fibre optique, WiFi ;

3G, smartphones, tablettes, ...

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 18/30

(19)

Mod`ele en couches d’Internet

Proche OSI, avec moins de couches :

Applications rlogin ftp X11 smtp http tftp dns dhcp rip

| | | | | | | | |

| | | | | | | | |

Protocoles de [::::::: TCP :::::::] [:::::: UDP :::::]

transport | |

ICMP | |

\ | |

Protocole r´eseau [::::::::::::::: IP ::::::::::::::::]

| |

| ARP |

Protocoles | / \ |

sous-r´eseau [: ethernet :] [: Token ring :]

(20)

Requests For Comments

Les sp´ecifications des protocoles d’internet sont publi´ees dans les RFC : documents textuels, num´erot´es, disponibles gratuitement sur internet :

http://www.ietf.org/rfc.html

http://www.faqs.org/rfcs/

Exemples :

UDP : RFC 768 (1980) IP : RFC 791 (1981) TCP : RFC 793 (1981) URI : RFC 1630 (1994) HTTP : RFC 1945 (1996)

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 20/30

(21)

Le protocole IP

Couche 3 OSI : acheminement de messages de taille limit´ee en mode non connect´e.

Objectif : interconnexion de r´eseaux, via des nœuds (passerelles ou routeurs).

M´ecanisme d’adressage unique, commun `a tous les r´eseaux : adresses IP.

M´ecanisme de routage : calcul de la liste des nœuds `a traverser.

(22)

Passerelle

Une passerelle (gateway) interconnecte plusieurs r´eseaux :

elle appartient `a chacun de ces r´eseaux (1 carte / r´eseau) ;

elle poss`ede une adresse MAC diff´erente pour chaque r´eseau.

Une passerelle est une sorte de routeur ; de plus elle

sait convertir un protocole en un autre ;

peut offrir d’autres services (NAT, proxy, firewall, ..) Une box est une sorte de passerelle.

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 22/30

(23)

Adresses IP

Deux familles d’adresses:

IPv4 : sur 32 bits (4 octets) – presque satur´e

IPv6 : sur 128 bits (16 octets) Notation des adresses :

IPv4 : a.b.c.d o`u a,b,c,d ∈[0..255] en base 10 IPv6 : a:b:c:d:e:f:g:h o`u a, ..,h∈[0..ffff] en base 16

(24)

Adresse r´eseau IPv4

Principe : adresse IP = {adresse de r´eseau } +

{adresse de machine sur ce r´eseau }

Adresse r´eseau de taille variable. Comment la d´eterminer ?

Classes de r´eseau

Notation CIDR avec masque de sous-r´eseau

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 24/30

(25)

Classes de r´eseau IPv4

8 bits 24 bits

Classe A 0...

| {z }

adr r´eseau

... ... ...

| {z }

adr machine

16 bits 16 bits

Classe B 10... ...

| {z }

adr r´eseau

... ...

| {z }

adr machine

24 bits 8 bits

Classe C 110... ... ...

| {z }

adr r´eseau

...

| {z }

adr machine

Classe D 1110.... multicast Classe E 1111.... r´eserv´e

(26)

Masque de sous-r´eseau : le netmask

Adresse IP =

32 bits

z }| {

abcdefghijklmnopqrstuvwxyzABCDEF

Netmask =

r bits

z }| {

11111111111111111111

32-r bits

z }| {

000000000000 Adresse de r´eseau = adresse IP&netmask

=

r bits

z }| {

abcdefghijklmnopqrst

32-r bits

z }| {

000000000000 Sous-adresse machine = adresse IP & ~netmask

=

r bits

z }| {

00000000000000000000

32-r bits

z }| {

uvwxyzABCDEF

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 26/30

(27)

Notation CIDR

Classless Inter-Domain Routing, 1993

Une adresse IP a.b.c.davec un netmask de taille r

r bits

z }| {

11111111111111111111

32-r bits

z }| {

000000000000 est not´ee : a.b.c.d/r

Exemple : une machine d’adresse IP 125.21.178.31/19

le netmask est 255.255.224.0

l’adresse du r´eseau est 125.21.160.0

la sous-adresse de la machine est 0.0.18.31

la plage du sous-r´eseau est125.21.160.1`a125.21.191.255

(28)

Utilisation du netmask

• Deux machines appartiennent au mˆeme r´eseau si elles ont la mˆeme adresse r´eseau (obtenue avec le netmask).

Exemple : 125.21.178.31/19et 125.21.205.63/19 appartiennent au mˆeme r´eseau ?

178 = 10110010, 205 = 11001101

AR(125.21.178.31/19) =125.21.160.0 AR(125.21.205.63/19) =125.21.192.0 R´eponse : non

• Tables de routages : m´emorisent uniquement les adresses de r´eseaux.

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 28/30

(29)

Adresse IPv6

32 bits → 128 bits

Notation : a:b:c:d:e:f:g:ho`u a, ..,h∈[0..ffff] en base 16 Exemple :

2001:0db8:0000:85a3:0000:0000:ac1f:8f01 peut s’abr´eger en enlevant les 0 non significatifs

2001:db8:0:85a3:0:0:ac1f:8f01

On peut remplacer :0:0:..:0: par :: (un seul par adresse) 2001:db8:0:85a3::ac1f:8f01

Voir RFC 5952 (2010)

(30)

Notation CIDR

Mˆeme principe que pour IPv4.

Exemple : 2001:db8:0:85a3::ac1f:8f01/62

netmask ffff:ffff:ffff:fffc::

adresse r´eseau 2001:db8:0:85a0::

sous-adresse machine ::3:0:0:ac1f:8f01

Edouard.Thiel@univ-amu.fr Cours de R´eseau et communication Unix n°6 CC BY-NC 30/30

Références

Documents relatifs

fd descripteur ouvert en ´ecriture buf adresse base zone m´emoire count nombre d’octets ` a ´ecrire Renvoie -1 : erreur. &gt; 0: nombre d’octets ´ecrits (6 count) 0 ssi count = 0

◮ Pour savoir si un descripteur est ´eligible, tester sa pr´esence dans la liste avec FD_ISSET. ◮ Si on boucle sur select, il faut chaque fois reconstruire

– protocole UDP pour SOCK_DGRAM – protocole TCP pour SOCK_STREAM Fermeture d’une socket : avec close.. Attachement ` a

Demande bloquante de connexion au serveur : connect Puis dialogue sur la socket avec le serveur : read et write.. Les primitives

On peut demander ` a bind un port libre par 0 : struct sockaddr_in adr;. adr.sin_port =

Principe : le client se connecte, envoie une requˆete ; le serveur envoie une r´eponse puis d´econnecte le client. 1.1 : possibilit´e de maintenir

int regexec (const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags);. preg expression compil´ee par regcomp string chaˆıne `

Cˆot´e client : ssh pour ouvrir un shell ou un tunnel sftp pour transf´erer des fichiers scp pour copier des fichiers Cˆot´e serveur : d´emon sshd. Installer sur