SlideShare une entreprise Scribd logo
Systèmes
d'exploitation
Réseau
Vint Cerf
• Américain
• Stanford
• UCLA
• Internet
• Google
2
Contenu
• Internet
• Réseau
• Pile OSI
– TCP/IP
– UDP/IP
• Socket API
3
Bibliographie pour aujourd'hui
• Linux Programming
– Chapitre 15
4
INTERNET
5
Internet
6
Numéro de dispisitifs
7
RÉSEAU
8
La réseau
• Stations / nœuds interconnectés
• Connexions physiques (filaire, sans fil) et
logique (connexion) entre les stations
• Les stations communiquent les unes avec les
autres et exécutent des applications réseau
• Les réseaux sont connectés à d'autres réseaux
• Internet: Tous les réseaux interconnectés de la
planète
9
Communication entre dispositifs
• Les appareils participants doivent recevoir des
noms
• Les appareils doivent être suffisamment
localisés – avoir une adresse
• Les participants doivent identifier les routes
par lesquels ils peuvent contacter
• Vous devez établir des règles simples de
communication-protocoles
10
Protocole réseau
• Un protocole = des règles qui déterminent
comment deux périphériques échangent des
informations
• Les entités participant à la communication
connaissent le protocole
– Formuler des séquences requête-réponse
(Request-Reply)
11
Adresse MAC
• Un nombre avec une longueur de 48 bits, qui
identifie de manière unique chaque interface de
réseau Ethernet;
– adresse non hiératique
• Il est entré de l’usine dans une mémoire ROM sur
la plaque
• Ne peut pas être changé de la plaque, mais peut
être changé de logiciel
00:00:0c:ab:cd:c1
12
ID du fabricant
Numéro de série de la plaque
Réseau local
• Composé de plusieurs stations connectées
– Stations: ordinateur, portable, téléphone mobile,
serveur, etc.
• Les stations de connexion réseau local sont
obtenues via l’équipement réseau appelé Switch
• Switch: transfère les informations entre les
ordinateurs du même réseau local à l’aide
d’interfaces réseau Ethernet basées sur l’adresse
MAC
13
14
Communication entre réseaux
• Afin d’accéder à d’autres réseaux ou à
Internet, un appareil doit également avoir une
connexion à un autre réseau/Internet
• Cet équipement peut être une station, un
serveur ou un équipement réseau dédié
nommé routeur
• Le transfert d’informations depuis le réseau
local vers Internet est basé sur l’adresse IP
15
PILE OSI
16
OSI
17
OSI
18
OSI vs TCP/IP
19
Transmission des données
20
Noyau
Utilisateur
Données sur Internet
21
INTERNET
22
Protocole IP
• Le protocole dominant qui fournit la
connectivité dans l’Internet
• L’adressage IP est hiératique
• Dernière version: IPv6
– Résout la crise de l’adresse IPv4
• L’adresse IPv6 est un nombre de bits 128
– Lenteur des progrès vers le rythme des
technologies actuelles
– Une infrastructure mondiale difficile à transformer
23
IPv4 vs IPv6
24
Adresse IPv4
• 32 bits écrites en 4 groupes de 8 bits
– Chaque groupe est écrit au format décimal
• Une adresse IP a deux composants:
– Première partie = adresse réseau qui inclut la station
– Deuxième partie = adresse de la station dans le
réseau.
• La délimitation entre l’adresse de la station et
l’adresse réseau est donnée par le masque de
réseau
25
Addresse IPv4
26
Masque de réseau
• Il a une longueur de 32 bits
• Formé en définissant le réseau et les bits de
station
– Bits réseau = 1
– Bits stations = 0
• Exemple: si nous avons 24-bit 1 consécutif, le
masque de réseau est/24 ou 255.255.255.0
27
Adresse de réseau et de diffusion
• Adresse de diffusion: adresse de diffusion, les
paquets sont reçus de toutes les stations du
réseau local
• Ils ne peuvent pas être utilisés comme adresses
de station
• Pour identifier l’adresse réseau, faites une et
logique (&) entre l’adresse IP et le masque de
réseau
• Pour identifier l’adresse de diffusion du réseau,
faites ou logique (|) entre l’adresse IP et le déni
du masque de réseau
28
Exemple
• Station avec adresse IP et masque de sous-réseau
255.255.0.0 (/16)
• Pour l’adresse du sous-réseau:
11000000 10101000 00000000 00000001 – 192.168.0.1
11111111 11111111 00000000 00000000 – 255.255.0.0
______________________________________________________
11000000 10101000 00000000 00000000 – 192.168.0.0
• Pour l’adresse de diffusion:
11000000 10101000 00000000 00000001 – 192.168.0.1
00000000 00000000 11111111 11111111 – 255.255.0.0
______________________________________________________
11000000 10101000 11111111 11111111 – 192.168.255.255
29
Données sur Internet
Mon ordinateur Google
Web Server
SSH Server
Web Client
Skype
1.2.3.45.6.7.8
30
TRNASPORT PROTOCOL
Bit 0 Bit 15 Bit 16 Bit 31
Destination IP
Source IP
TTL Header ChecksumProtocol
Identification Fragment OffsetFlags
IHLVersion TOS Total LengthECN
Packet IP
31
Données sur l’Internet
Mon ordinateur Google
Web Server
SSH Server
Web Client
Skype
1.2.3.45.6.7.8SRC: 5.6.7.8,
DST: 1.2.3.4
32
Données sur l’Internet
Mon ordinateur Google
Web Server
SSH Server
Web Client
Skype
1.2.3.45.6.7.8 SRC: 5.6.7.8,
DST: 1.2.3.4
33
Données sur l’Internet
Mon ordinateur Google
Web Server
SSH Server
Web Client
Skype
1.2.3.45.6.7.8 SRC: 5.6.7.8,
DST: 1.2.3.4
34
Comment démultiplexer les paquets?
Mon ordinateur Google
Web Server
SSH Server
Web Client
Skype
1.2.3.45.6.7.8 SRC: 5.6.7.8,
DST: 1.2.3.4
35
Comment démultiplexer les paquets?
Mon ordinateur Google
Web Server
SSH Server
Web Client
Skype
1.2.3.45.6.7.8 SRC: 5.6.7.8,
DST: 1.2.3.4
?
36
Ports
Mon ordinateur Google
Web Server:
PORT 80
SSH Server
PORT 22
Web Client
PORT 1102
Skype
1.2.3.45.6.7.8 SRC: 5.6.7.8,
DST: 1.2.3.4
37
TRANSPORT PROTOCOL
Bit
0
Bit
15
Bit
16
Bit
31
Destination IP
Source IP
TTL Header ChecksumProtocol
Identification Fragment OffsetFlags
IHLVersion TOS Total LengthECN
Source Port Destination Port
38
Ports
Mon oridinateur Google
Web Server:
PORT 80
SSH Server
PORT 22
Web Client
Skype
1.2.3.45.6.7.8
SRC: 5.6.7.8,DST: 1.2.3.4
SRC_PORT: 1102 DST_PORT: 80
39
TCP vs UDP
40
SOCKET API
41
Socket
• Descripteur de fichier spécial
– open – socket
• client: bind / connect
• server: listen / accept
– read – recv
– write – send
– close – shutdown et close
42
socket
int socket(int domain, int type, int protocol);
// domain
// PF_LOCAL Host-internal protocols, formerly called
PF_UNIX
// PF_INET Internet version 4 protocols,
// PF_ROUTE Internal Routing protocol,
// PF_INET6 Internet version 6 protocols,
// PF_NDRV Raw access to network device
// ...
// type
// SOCK_STREAM
// SOCK_DGRAM
// SOCK_RAW
43
shutdown
int shutdown(int socket, int how);
// how
// SHUT_RD further receives will be disallowed
// SHUT_WR further sends will be disallowed
// SHUT_RDWR further sends and receives will
be disallowed.
int close (int filedes);
44
client / server
int bind(int socket, const struct sockaddr
*address, socklen_t address_len);
// client
int connect(int socket, const struct sockaddr
*address, socklen_t address_len);
// server
int listen(int socket, int backlog);
int accept(int socket, struct sockaddr
*restrict address, socklen_t
*restrict address_len);
45
send et recv
// tcp
ssize_t send(int socket, const void *buffer, size_t
length, int flags);
ssize_t recv(int socket, void *buffer, size_t length, int
flags);
// udp
ssize_t sendto(int socket, const void *buffer,
size_t length, int flags, const struct sockaddr
*dest_addr, socklen_t dest_len);
ssize_t recvfrom(int socket, void *restrict buffer, size_t
length, int flags, struct sockaddr *restrict
address, socklen_t *restrict address_len);
46
Transmission/réception données TCP
Server
1. Créer un socket:
int ls = socket (AF_INET,
SOCK_STREAM, IPPROTO_TCP);
2. Réglez le port de socket:
bind(ls, &addr,
sizeof(addr));
3. Déclarer no. des clients:
listen(ls, 5);
4. En attente de connexion:
int s =
accept(ls,NULL,NULL);
Client
1. Créer un socket:
int s = socket
(AF_INET, SOCK_STREAM,
IPPROTO_TCP);
2. Connectez-vous au serveur:
connect(s, &addr,
sizeof(addr));
47
Réception des données
int bytes = 0;
while (bytes<len)
{
d = recv(s, &buf[bytes], len-bytes,0);
if (d<0) break;
bytes += d;
}
48
Transmission des données
int bytes = 0;
while (bytes<len)
{
d = send(s, &buf[bytes], len-bytes);
if (d<0) break;
bytes += d;
}
49
Fermer la connexion TCP
• Libérez les ressources associées à la connexion
• Informer l’autre extrémité de la fermeture de
la connexion
shutdown (s, SHUT_RDWR);
close (s);
50
Mot clés
• réseau
• Internet
• protocole
• OSI
• Niveau
• MAC
• IP
• mask
• TCP/IP
• UDP/IP
• port
• socket
• bind
• connect
• listen
• accept
• recv
• send
• shutdown
• packet
51
Questions
52

Contenu connexe

Similaire à SDE 10 - Reseau

Cours6-AdressageIPtgths2wjioy5gvi86tjk.pdf
Cours6-AdressageIPtgths2wjioy5gvi86tjk.pdfCours6-AdressageIPtgths2wjioy5gvi86tjk.pdf
Cours6-AdressageIPtgths2wjioy5gvi86tjk.pdf
bapapambaye4
 
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Chapitre 6  - Protocoles TCP/IP, UDP/IPChapitre 6  - Protocoles TCP/IP, UDP/IP
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Tarik Zakaria Benmerar
 
Adressage ip stl-cours
Adressage ip stl-coursAdressage ip stl-cours
Adressage ip stl-cours
saqrjareh
 
Cours couche reseau
Cours couche reseauCours couche reseau
Cours couche reseau
sarah Benmerzouk
 
Chapitre 5 - couche réseaux
Chapitre 5 - couche réseauxChapitre 5 - couche réseaux
Chapitre 5 - couche réseaux
Tarik Zakaria Benmerar
 
C4 Réseaux : Couche reseau
C4 Réseaux : Couche reseauC4 Réseaux : Couche reseau
C4 Réseaux : Couche reseau
PRONETIS
 
Ccna1
Ccna1Ccna1
chapr1_Addressage_Internet_protocol.pptx
chapr1_Addressage_Internet_protocol.pptxchapr1_Addressage_Internet_protocol.pptx
chapr1_Addressage_Internet_protocol.pptx
mkzbsponsoring
 
ccna1-3.pdf
ccna1-3.pdfccna1-3.pdf
ccna1-3.pdf
bessem ellili
 
S4 réseaux et internet
S4 réseaux et internet S4 réseaux et internet
S4 réseaux et internet
mostafakhali
 
S4 réseaux et internet _
S4 réseaux et internet _S4 réseaux et internet _
S4 réseaux et internet _
mostafakhali
 
Routing in 6lowpan (in French)
Routing in 6lowpan (in French) Routing in 6lowpan (in French)
Routing in 6lowpan (in French)
Abed Zine-Eddine BENAMAR
 
186333.ppt
186333.ppt186333.ppt
186333.ppt
insygg43
 
Chapitre-4-Programmation-réseau-avec-les-sockets.pdf
Chapitre-4-Programmation-réseau-avec-les-sockets.pdfChapitre-4-Programmation-réseau-avec-les-sockets.pdf
Chapitre-4-Programmation-réseau-avec-les-sockets.pdf
YoussefJamma
 
Socket tcp ip client server on langace c
Socket tcp ip client server on langace c Socket tcp ip client server on langace c
Socket tcp ip client server on langace c
mouad Lousimi
 
Fonctionnement d'un reseau
Fonctionnement d'un reseauFonctionnement d'un reseau
Fonctionnement d'un reseau
zan
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
AlbertSmithTambwe
 
Sockets
SocketsSockets
Sockets
Heithem Abbes
 

Similaire à SDE 10 - Reseau (20)

Cours6-AdressageIPtgths2wjioy5gvi86tjk.pdf
Cours6-AdressageIPtgths2wjioy5gvi86tjk.pdfCours6-AdressageIPtgths2wjioy5gvi86tjk.pdf
Cours6-AdressageIPtgths2wjioy5gvi86tjk.pdf
 
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Chapitre 6  - Protocoles TCP/IP, UDP/IPChapitre 6  - Protocoles TCP/IP, UDP/IP
Chapitre 6 - Protocoles TCP/IP, UDP/IP
 
Adressage ip stl-cours
Adressage ip stl-coursAdressage ip stl-cours
Adressage ip stl-cours
 
Cours couche reseau
Cours couche reseauCours couche reseau
Cours couche reseau
 
Chapitre 5 - couche réseaux
Chapitre 5 - couche réseauxChapitre 5 - couche réseaux
Chapitre 5 - couche réseaux
 
C4 Réseaux : Couche reseau
C4 Réseaux : Couche reseauC4 Réseaux : Couche reseau
C4 Réseaux : Couche reseau
 
Ccna1
Ccna1Ccna1
Ccna1
 
chapr1_Addressage_Internet_protocol.pptx
chapr1_Addressage_Internet_protocol.pptxchapr1_Addressage_Internet_protocol.pptx
chapr1_Addressage_Internet_protocol.pptx
 
ccna1-3.pdf
ccna1-3.pdfccna1-3.pdf
ccna1-3.pdf
 
S4 réseaux et internet
S4 réseaux et internet S4 réseaux et internet
S4 réseaux et internet
 
S4 réseaux et internet _
S4 réseaux et internet _S4 réseaux et internet _
S4 réseaux et internet _
 
Routing in 6lowpan (in French)
Routing in 6lowpan (in French) Routing in 6lowpan (in French)
Routing in 6lowpan (in French)
 
186333.ppt
186333.ppt186333.ppt
186333.ppt
 
Chapitre-4-Programmation-réseau-avec-les-sockets.pdf
Chapitre-4-Programmation-réseau-avec-les-sockets.pdfChapitre-4-Programmation-réseau-avec-les-sockets.pdf
Chapitre-4-Programmation-réseau-avec-les-sockets.pdf
 
Socket tcp ip client server on langace c
Socket tcp ip client server on langace c Socket tcp ip client server on langace c
Socket tcp ip client server on langace c
 
RIPng
RIPngRIPng
RIPng
 
M1.3.pdf
M1.3.pdfM1.3.pdf
M1.3.pdf
 
Fonctionnement d'un reseau
Fonctionnement d'un reseauFonctionnement d'un reseau
Fonctionnement d'un reseau
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
 
Sockets
SocketsSockets
Sockets
 

Plus de Alexandru Radovici

SdE2 - Pilot Tock
SdE2 - Pilot TockSdE2 - Pilot Tock
SdE2 - Pilot Tock
Alexandru Radovici
 
SdE2 - Systèmes embarquées
SdE2 - Systèmes embarquéesSdE2 - Systèmes embarquées
SdE2 - Systèmes embarquées
Alexandru Radovici
 
SdE2 - Planification, IPC
SdE2 - Planification, IPCSdE2 - Planification, IPC
SdE2 - Planification, IPC
Alexandru Radovici
 
ALF1 - Introduction
ALF1 - IntroductionALF1 - Introduction
ALF1 - Introduction
Alexandru Radovici
 
SdE2 - Introduction
SdE2 - IntroductionSdE2 - Introduction
SdE2 - Introduction
Alexandru Radovici
 
MDAD 6 - AIDL and Services
MDAD 6 - AIDL and ServicesMDAD 6 - AIDL and Services
MDAD 6 - AIDL and Services
Alexandru Radovici
 
MDAD 5 - Threads
MDAD 5 - ThreadsMDAD 5 - Threads
MDAD 5 - Threads
Alexandru Radovici
 
MDAD 4 - Lists, adapters and recycling
MDAD 4 - Lists, adapters and recyclingMDAD 4 - Lists, adapters and recycling
MDAD 4 - Lists, adapters and recycling
Alexandru Radovici
 
MDAD 3 - Basics of UI Applications
MDAD 3 - Basics of UI ApplicationsMDAD 3 - Basics of UI Applications
MDAD 3 - Basics of UI Applications
Alexandru Radovici
 
MDAD 2 - Introduction to the Android Framework
MDAD 2 - Introduction to the Android FrameworkMDAD 2 - Introduction to the Android Framework
MDAD 2 - Introduction to the Android Framework
Alexandru Radovici
 
MDAD 1 - Hardware
MDAD 1 - HardwareMDAD 1 - Hardware
MDAD 1 - Hardware
Alexandru Radovici
 
MDAD 0 - Introduction
MDAD 0 - IntroductionMDAD 0 - Introduction
MDAD 0 - Introduction
Alexandru Radovici
 
SdE 10 - Threads
SdE 10 - ThreadsSdE 10 - Threads
SdE 10 - Threads
Alexandru Radovici
 
SdE 8 - Synchronisation de execution
SdE 8 - Synchronisation de executionSdE 8 - Synchronisation de execution
SdE 8 - Synchronisation de execution
Alexandru Radovici
 
SdE 8 - Memoire Virtuelle
SdE 8 - Memoire VirtuelleSdE 8 - Memoire Virtuelle
SdE 8 - Memoire Virtuelle
Alexandru Radovici
 
SdE 7 - Gestion de la Mémoire
SdE 7 - Gestion de la MémoireSdE 7 - Gestion de la Mémoire
SdE 7 - Gestion de la Mémoire
Alexandru Radovici
 
SdE 6 - Planification
SdE 6 - PlanificationSdE 6 - Planification
SdE 6 - Planification
Alexandru Radovici
 
SdE 5 - Planification
SdE 5 - PlanificationSdE 5 - Planification
SdE 5 - Planification
Alexandru Radovici
 
ALF 6 - Parser
ALF 6 - ParserALF 6 - Parser
ALF 6 - Parser
Alexandru Radovici
 
ALF 5 - Parser
ALF 5 - ParserALF 5 - Parser
ALF 5 - Parser
Alexandru Radovici
 

Plus de Alexandru Radovici (20)

SdE2 - Pilot Tock
SdE2 - Pilot TockSdE2 - Pilot Tock
SdE2 - Pilot Tock
 
SdE2 - Systèmes embarquées
SdE2 - Systèmes embarquéesSdE2 - Systèmes embarquées
SdE2 - Systèmes embarquées
 
SdE2 - Planification, IPC
SdE2 - Planification, IPCSdE2 - Planification, IPC
SdE2 - Planification, IPC
 
ALF1 - Introduction
ALF1 - IntroductionALF1 - Introduction
ALF1 - Introduction
 
SdE2 - Introduction
SdE2 - IntroductionSdE2 - Introduction
SdE2 - Introduction
 
MDAD 6 - AIDL and Services
MDAD 6 - AIDL and ServicesMDAD 6 - AIDL and Services
MDAD 6 - AIDL and Services
 
MDAD 5 - Threads
MDAD 5 - ThreadsMDAD 5 - Threads
MDAD 5 - Threads
 
MDAD 4 - Lists, adapters and recycling
MDAD 4 - Lists, adapters and recyclingMDAD 4 - Lists, adapters and recycling
MDAD 4 - Lists, adapters and recycling
 
MDAD 3 - Basics of UI Applications
MDAD 3 - Basics of UI ApplicationsMDAD 3 - Basics of UI Applications
MDAD 3 - Basics of UI Applications
 
MDAD 2 - Introduction to the Android Framework
MDAD 2 - Introduction to the Android FrameworkMDAD 2 - Introduction to the Android Framework
MDAD 2 - Introduction to the Android Framework
 
MDAD 1 - Hardware
MDAD 1 - HardwareMDAD 1 - Hardware
MDAD 1 - Hardware
 
MDAD 0 - Introduction
MDAD 0 - IntroductionMDAD 0 - Introduction
MDAD 0 - Introduction
 
SdE 10 - Threads
SdE 10 - ThreadsSdE 10 - Threads
SdE 10 - Threads
 
SdE 8 - Synchronisation de execution
SdE 8 - Synchronisation de executionSdE 8 - Synchronisation de execution
SdE 8 - Synchronisation de execution
 
SdE 8 - Memoire Virtuelle
SdE 8 - Memoire VirtuelleSdE 8 - Memoire Virtuelle
SdE 8 - Memoire Virtuelle
 
SdE 7 - Gestion de la Mémoire
SdE 7 - Gestion de la MémoireSdE 7 - Gestion de la Mémoire
SdE 7 - Gestion de la Mémoire
 
SdE 6 - Planification
SdE 6 - PlanificationSdE 6 - Planification
SdE 6 - Planification
 
SdE 5 - Planification
SdE 5 - PlanificationSdE 5 - Planification
SdE 5 - Planification
 
ALF 6 - Parser
ALF 6 - ParserALF 6 - Parser
ALF 6 - Parser
 
ALF 5 - Parser
ALF 5 - ParserALF 5 - Parser
ALF 5 - Parser
 

Dernier

Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
dokposeverin
 
Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024
Friends of African Village Libraries
 
Zineb Mekouar.pptx Écrivaine marocaine
Zineb Mekouar.pptx   Écrivaine  marocaineZineb Mekouar.pptx   Écrivaine  marocaine
Zineb Mekouar.pptx Écrivaine marocaine
Txaruka
 
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
Editions La Dondaine
 
A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)
lebaobabbleu
 
Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.
MahouwetinJacquesGBO
 
apprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdfapprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdf
kamouzou878
 
Formation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimismeFormation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimisme
M2i Formation
 
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptxMARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
Martin M Flynn
 
A2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiquesA2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiques
lebaobabbleu
 
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certificationMS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
OlivierLumeau1
 
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
mcevapi3
 
1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire
NadineHG
 

Dernier (13)

Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
 
Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024
 
Zineb Mekouar.pptx Écrivaine marocaine
Zineb Mekouar.pptx   Écrivaine  marocaineZineb Mekouar.pptx   Écrivaine  marocaine
Zineb Mekouar.pptx Écrivaine marocaine
 
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
 
A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)
 
Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.
 
apprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdfapprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdf
 
Formation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimismeFormation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimisme
 
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptxMARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
 
A2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiquesA2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiques
 
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certificationMS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
 
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
 
1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire
 

SDE 10 - Reseau

  • 2. Vint Cerf • Américain • Stanford • UCLA • Internet • Google 2
  • 3. Contenu • Internet • Réseau • Pile OSI – TCP/IP – UDP/IP • Socket API 3
  • 4. Bibliographie pour aujourd'hui • Linux Programming – Chapitre 15 4
  • 9. La réseau • Stations / nœuds interconnectés • Connexions physiques (filaire, sans fil) et logique (connexion) entre les stations • Les stations communiquent les unes avec les autres et exécutent des applications réseau • Les réseaux sont connectés à d'autres réseaux • Internet: Tous les réseaux interconnectés de la planète 9
  • 10. Communication entre dispositifs • Les appareils participants doivent recevoir des noms • Les appareils doivent être suffisamment localisés – avoir une adresse • Les participants doivent identifier les routes par lesquels ils peuvent contacter • Vous devez établir des règles simples de communication-protocoles 10
  • 11. Protocole réseau • Un protocole = des règles qui déterminent comment deux périphériques échangent des informations • Les entités participant à la communication connaissent le protocole – Formuler des séquences requête-réponse (Request-Reply) 11
  • 12. Adresse MAC • Un nombre avec une longueur de 48 bits, qui identifie de manière unique chaque interface de réseau Ethernet; – adresse non hiératique • Il est entré de l’usine dans une mémoire ROM sur la plaque • Ne peut pas être changé de la plaque, mais peut être changé de logiciel 00:00:0c:ab:cd:c1 12 ID du fabricant Numéro de série de la plaque
  • 13. Réseau local • Composé de plusieurs stations connectées – Stations: ordinateur, portable, téléphone mobile, serveur, etc. • Les stations de connexion réseau local sont obtenues via l’équipement réseau appelé Switch • Switch: transfère les informations entre les ordinateurs du même réseau local à l’aide d’interfaces réseau Ethernet basées sur l’adresse MAC 13
  • 14. 14
  • 15. Communication entre réseaux • Afin d’accéder à d’autres réseaux ou à Internet, un appareil doit également avoir une connexion à un autre réseau/Internet • Cet équipement peut être une station, un serveur ou un équipement réseau dédié nommé routeur • Le transfert d’informations depuis le réseau local vers Internet est basé sur l’adresse IP 15
  • 23. Protocole IP • Le protocole dominant qui fournit la connectivité dans l’Internet • L’adressage IP est hiératique • Dernière version: IPv6 – Résout la crise de l’adresse IPv4 • L’adresse IPv6 est un nombre de bits 128 – Lenteur des progrès vers le rythme des technologies actuelles – Une infrastructure mondiale difficile à transformer 23
  • 25. Adresse IPv4 • 32 bits écrites en 4 groupes de 8 bits – Chaque groupe est écrit au format décimal • Une adresse IP a deux composants: – Première partie = adresse réseau qui inclut la station – Deuxième partie = adresse de la station dans le réseau. • La délimitation entre l’adresse de la station et l’adresse réseau est donnée par le masque de réseau 25
  • 27. Masque de réseau • Il a une longueur de 32 bits • Formé en définissant le réseau et les bits de station – Bits réseau = 1 – Bits stations = 0 • Exemple: si nous avons 24-bit 1 consécutif, le masque de réseau est/24 ou 255.255.255.0 27
  • 28. Adresse de réseau et de diffusion • Adresse de diffusion: adresse de diffusion, les paquets sont reçus de toutes les stations du réseau local • Ils ne peuvent pas être utilisés comme adresses de station • Pour identifier l’adresse réseau, faites une et logique (&) entre l’adresse IP et le masque de réseau • Pour identifier l’adresse de diffusion du réseau, faites ou logique (|) entre l’adresse IP et le déni du masque de réseau 28
  • 29. Exemple • Station avec adresse IP et masque de sous-réseau 255.255.0.0 (/16) • Pour l’adresse du sous-réseau: 11000000 10101000 00000000 00000001 – 192.168.0.1 11111111 11111111 00000000 00000000 – 255.255.0.0 ______________________________________________________ 11000000 10101000 00000000 00000000 – 192.168.0.0 • Pour l’adresse de diffusion: 11000000 10101000 00000000 00000001 – 192.168.0.1 00000000 00000000 11111111 11111111 – 255.255.0.0 ______________________________________________________ 11000000 10101000 11111111 11111111 – 192.168.255.255 29
  • 30. Données sur Internet Mon ordinateur Google Web Server SSH Server Web Client Skype 1.2.3.45.6.7.8 30
  • 31. TRNASPORT PROTOCOL Bit 0 Bit 15 Bit 16 Bit 31 Destination IP Source IP TTL Header ChecksumProtocol Identification Fragment OffsetFlags IHLVersion TOS Total LengthECN Packet IP 31
  • 32. Données sur l’Internet Mon ordinateur Google Web Server SSH Server Web Client Skype 1.2.3.45.6.7.8SRC: 5.6.7.8, DST: 1.2.3.4 32
  • 33. Données sur l’Internet Mon ordinateur Google Web Server SSH Server Web Client Skype 1.2.3.45.6.7.8 SRC: 5.6.7.8, DST: 1.2.3.4 33
  • 34. Données sur l’Internet Mon ordinateur Google Web Server SSH Server Web Client Skype 1.2.3.45.6.7.8 SRC: 5.6.7.8, DST: 1.2.3.4 34
  • 35. Comment démultiplexer les paquets? Mon ordinateur Google Web Server SSH Server Web Client Skype 1.2.3.45.6.7.8 SRC: 5.6.7.8, DST: 1.2.3.4 35
  • 36. Comment démultiplexer les paquets? Mon ordinateur Google Web Server SSH Server Web Client Skype 1.2.3.45.6.7.8 SRC: 5.6.7.8, DST: 1.2.3.4 ? 36
  • 37. Ports Mon ordinateur Google Web Server: PORT 80 SSH Server PORT 22 Web Client PORT 1102 Skype 1.2.3.45.6.7.8 SRC: 5.6.7.8, DST: 1.2.3.4 37
  • 38. TRANSPORT PROTOCOL Bit 0 Bit 15 Bit 16 Bit 31 Destination IP Source IP TTL Header ChecksumProtocol Identification Fragment OffsetFlags IHLVersion TOS Total LengthECN Source Port Destination Port 38
  • 39. Ports Mon oridinateur Google Web Server: PORT 80 SSH Server PORT 22 Web Client Skype 1.2.3.45.6.7.8 SRC: 5.6.7.8,DST: 1.2.3.4 SRC_PORT: 1102 DST_PORT: 80 39
  • 42. Socket • Descripteur de fichier spécial – open – socket • client: bind / connect • server: listen / accept – read – recv – write – send – close – shutdown et close 42
  • 43. socket int socket(int domain, int type, int protocol); // domain // PF_LOCAL Host-internal protocols, formerly called PF_UNIX // PF_INET Internet version 4 protocols, // PF_ROUTE Internal Routing protocol, // PF_INET6 Internet version 6 protocols, // PF_NDRV Raw access to network device // ... // type // SOCK_STREAM // SOCK_DGRAM // SOCK_RAW 43
  • 44. shutdown int shutdown(int socket, int how); // how // SHUT_RD further receives will be disallowed // SHUT_WR further sends will be disallowed // SHUT_RDWR further sends and receives will be disallowed. int close (int filedes); 44
  • 45. client / server int bind(int socket, const struct sockaddr *address, socklen_t address_len); // client int connect(int socket, const struct sockaddr *address, socklen_t address_len); // server int listen(int socket, int backlog); int accept(int socket, struct sockaddr *restrict address, socklen_t *restrict address_len); 45
  • 46. send et recv // tcp ssize_t send(int socket, const void *buffer, size_t length, int flags); ssize_t recv(int socket, void *buffer, size_t length, int flags); // udp ssize_t sendto(int socket, const void *buffer, size_t length, int flags, const struct sockaddr *dest_addr, socklen_t dest_len); ssize_t recvfrom(int socket, void *restrict buffer, size_t length, int flags, struct sockaddr *restrict address, socklen_t *restrict address_len); 46
  • 47. Transmission/réception données TCP Server 1. Créer un socket: int ls = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP); 2. Réglez le port de socket: bind(ls, &addr, sizeof(addr)); 3. Déclarer no. des clients: listen(ls, 5); 4. En attente de connexion: int s = accept(ls,NULL,NULL); Client 1. Créer un socket: int s = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP); 2. Connectez-vous au serveur: connect(s, &addr, sizeof(addr)); 47
  • 48. Réception des données int bytes = 0; while (bytes<len) { d = recv(s, &buf[bytes], len-bytes,0); if (d<0) break; bytes += d; } 48
  • 49. Transmission des données int bytes = 0; while (bytes<len) { d = send(s, &buf[bytes], len-bytes); if (d<0) break; bytes += d; } 49
  • 50. Fermer la connexion TCP • Libérez les ressources associées à la connexion • Informer l’autre extrémité de la fermeture de la connexion shutdown (s, SHUT_RDWR); close (s); 50
  • 51. Mot clés • réseau • Internet • protocole • OSI • Niveau • MAC • IP • mask • TCP/IP • UDP/IP • port • socket • bind • connect • listen • accept • recv • send • shutdown • packet 51