115
pages
Français
Documents
Le téléchargement nécessite un accès à la bibliothèque YouScribe Tout savoir sur nos offres
115
pages
Français
Documents
Le téléchargement nécessite un accès à la bibliothèque YouScribe Tout savoir sur nos offres
Programmation IP
Cours de Reseaux
Tuy^et Tr^am DANG NGOC
<dntt@u-cergy.fr>
Universite de Cergy-Pontoise
2009{2010
Département des Sciences Informatiques
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 1 / 113Rappel
1 Rappel
2 API socket
3 Programmation TCP
4 UDP
5 Fonction utilitaires
6 Multiconnexion
7 Programmation Raw
8 IP en Java
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 2 / 113Rappel
Adresse IP
Une adresse IP reference de maniere logique et unique sur l’Internet,
l’interface d’une machine.
193.51.25.3
193.51.24.2193.51.25.254
193.51.24.30193.51.26.1
193.51.24.3
193.51.26.5 195.83.118.1
193.51.26.254
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 3 / 113Rappel
Protocoles
0 4 8 16 24 31
Longueur
Version d’en−tete Type de service Longueur totale
Identification Drapeau Décalage fragment
Durée de vie Protocole Somme de controle d’en−tete
Adresse IP Source
Application ... ...SMTP HTTP SSH FTP telnet RPC DNS DHCP SNMP NTP
Adresse IP destination
Transport TCP UDP ICMP IGMP
Options IP Remplissage
Internet IPv4 ARP Données
... . . .Interface Ethernet X25 RS232
Matériel Cablage fil (RJ45, coaxial, fibre optique) / sans−fil
En−tete En−tete En−tete0 8 16 24 31 Données Application
Ethernet IP TCP
Segment TCPADRESSE ETHERNET DESTINATION
Datagramme IP
Datagramme Ethernet
ADRESSE ETHERNET SOURCE
TYPE DATA
0 4 8 10 16 24 31
(46 − 1500 bytes) Port source TCP Port destination TCP
. . . Numéro de séquence
Numéro d’acquittement
FCS/CRC Checksum Longueur
en−tete Réservé Code Taille de la fenetre
Somme de controle Pointeur urgent
Options Remplissage
Données
Département des Sciences Informatiques
. . .
Tuy^et Tr^am DANG NGOC Programmation IP 4 / 113Rappel
Protocoles
0 4 8 16 24 31
Longueur
Version d’en−tete Type de service Longueur totale
Identification Drapeau Décalage fragment
Application ... ...SMTP HTTP SSH FTP telnet RPC DNS DHCP SNMP NTP
Durée de vie Protocole Somme de controle d’en−tete
ICMP IGMPTransport TCP UDP
Adresse IP Source
Internet IPv4 ARP Adresse IP destination
Interface Ethernet X25 RS232 ... Options IP Remplissage
Matériel Cablage fil (RJ45, coaxial, fibre optique) / sans−fil Données
. . .
0 8 16 24 31
ADRESSE ETHERNET DESTINATION
En−tete En−tete En−tete
Données Application
Ethernet IP UDP
Datagramme UDPADRESSE ETHERNET SOURCE
Datagramme IP
TYPE DATA Datagramme Ethernet
(46 − 1500 bytes)
. . . 0 4 8 10 16 24 31
Port source UDP Port destination UDP
FCS/CRC Checksum
Longueur du message Somme de controle
Données
. . .
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 4 / 113Rappel
Protocoles
0 4 8 16 24 31
Longueur
Version d’en−tete Type de service Longueur totale
Identification Drapeau Décalage fragment
Application SMTP HTTP SSH FTP telnet ... RPC DNS DHCP SNMP NTP ...
Durée de vie Protocole Somme de controle d’en−tete
ICMP IGMPTransport TCP UDP
Adresse IP Source
Internet IPv4 ARP Adresse IP destination
Interface Ethernet X25 RS232 ... Options IP Remplissage
Matériel Cablage fil (RJ45, coaxial, fibre optique) / sans−fil Données
. . .
0 8 16 24 31
ADRESSE ETHERNET DESTINATION
En−tete En−tete En−tete Données
Ethernet IP ICMP
Datagramme ICMPADRESSE ETHERNET SOURCE
Datagramme IP
TYPE DATA Datagramme Ethernet
(46 − 1500 bytes)
. . . 0 4 8 16 24 31
Type Code Somme de controle
FCS/CRC Checksum
En−tete IP + 64 premiers bits du datagramme IP ayant provoqué l’erreur
Données
. . .
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 4 / 113Rappel
Ports
Le mecanisme de port est utilise a n de pouvoir permettre de gerer
plusieurs services simultanes depuis une seule interface reseau.
Une connexion est identi ee par un couple de points appeles socket
permettant l’identi cation des deux extr^emites de la connexion.
Il y a 65535 ports TCP et 65535 ports UDP possibles. Certains etant dont
les services associes sont par convention universellement connus
(Well-Known Port Number).
(numéro )N Port ouvert N
echo 7/udp N Port en écoute (numéro N )N
ftp-data 20/tcp File Transfer (Default Data) Socket (connexion TCP)
Socket (connexion UDP)ftp 21/tcp File T (Control)
Interface d’adresse IP : 193.51.25.3
telnet 23/tcp
Interface d’adresse IP : 193.51.26.5Module TCP Module UDP
smtp 25/tcp Simple Mail Transfer
25 53 1347 7165 8521 69 13426 Module TCP Module UDP
domain 53/tcp Domain Name Server 1036 1347 7165 8521 69 9752 53/udp Name
tftp 69/udp Trivial File Transfer
nger 79/tcp
http 80/tcp World Wide Web HTTP
nfsd 2049/udp NFS server daemon
20 21 23 25 80 7 53 2049 7271 20 21 25 79 6523 41725 1822 2049 7271
Module TCP Module UDP Module TCP Module UDP
Interface d’adresse IP : 195.83.118.1Interface d’adresse IP : 216.136.204.21
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 5 / 113Rappel
TCP
TCP (Transport Control
Protocol) est un protocole base sur
IP qui :
Protocole able
0 4 8 10 16 24 31
Les applications utilisant TCP
Port source TCP Port destination TCP
Numéro de séquencene s’occupent que de l’aspect
Numéro d’acquittement
Longueur"dialogue" sans se preoccuper
en−tete Réservé Code Taille de la fenetre
Somme de controle Pointeur urgentde la abilite de la connexion.
Options Remplissage
) Programmation d’application Données
. . .tres simple.
Protocole Point a Point
Notion de ports
Lent
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 6 / 113Rappel
UDP
UDP (User Datagram Protocol) est
-tout comme TCP- un protocole base
sur IP qui :
Protocole non able
Les applications utilisant UDP
doivent savoir gerer les erreurs
0 4 8 10 16 24 31
Port source UDP Port destination UDPdurant les transmissions
Longueur du message Somme de controle
DonnéesProtocole non connecte.
. . .
Di usion possible.
Notion de ports
Rapide
) UDP = simplicite de IP accessible
par les applications.
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 7 / 113Rappel
Quand utiliser TCP ou UDP ?
Dans l’ecriture d’une application :
TCP :
Ecrire l’application simplement sans se preoccuper de la abilite de la
connexion.
UDP :
Sur une utilisation locale sans trop de risque d’erreurs et avec des
besoins en rapidite (NFS, TFTP)
Si un paquet perdu n’est pas vital et qu’il vaudrait mieux faire une
autre requ^ete (NTP)
En di usion (BOOTP, DHCP, RIP, SNMP, etc.)
Département des Sciences Informatiques
Tuy^et Tr^am DANG NGOC Programmation IP 8 / 113