12 ECNE R´eserv´e pour utilisation dans
Explicit Congestion Notification
13 CWR R´eserv´e pour utilisation dans
Explicit Congestion Notification
14 SHUTDOWN Acquittement de la portion
COMPLETE SHUTDOWN ACK
15-62 Non attribu´es dans RFC2960
63 Extension r´eserv´ee par l’IETF
64-126 Non attribu´es dans RFC2960
127 Extension r´eserv´ee par l’IETF
128-190 Non attribu´es dans RFC2960
128 ASCONF-ACK Acquittement de la portion
ASCONF
191 Extension r´eserv´ee par l’IETF
192-254 Non attribu´es dans RFC2960
192 FORWARD TSN Gestion avanc´ee des acquittements
193 ASCONF Configuration des adresses
255 Extension r´eserv´ee par l’IETF
Tab. 5.1: Les types des portions de SCTP
Les portions de donn´ees peuvent ˆetre mises dans un message avec des portions de
contrˆole. Il y a pourtant certaines contraintes :
– les portions du type INIT, INIT ACK et SHUTDOWN COMPLETE doivent ˆetre
seules dans un paquet,
– la portion ABORT ne peut pas ˆetre mise dans le mˆeme message que les portions des
donn´ees (du type DATA),
– la taille totale du message ne peut pas exc´eder le MTU (la taille maximale de trame
- Maximal Transmission Unit).
La figure 5.1 pr´esent le format g´en´eral d’un message SCTP qui montre l’en-tˆete
commune et plusieurs portions diff´erentes.
5.2 Initialisation s´ecuris´ee
Un des points faibles de TCP est la possibilit´e d’effectuer une attaque de d´eni du service
de typeSYN-flood. Il s’agit d’une attaque o`u un attaquant commence plusieures connexions
avec de fausses adresses source. Comme ces adresses sont fausses, voire n’existent pas, le
serveur TCP ne peut pas r´epondre et donc ´etablir la connexion compl`ete. Dans cette
situation, le serveur consomme des ressources (m´emoire) pour maintenir les connexions
semi-ouvertes. Cela provoque un ´epuisement de la m´emoire et finalement un blocage du
serveur.
Fig. 5.1 – Format g´en´eral d’un message SCTP
Pour se prot´eger contre ce type d’attaques, le protocole SCTP pr´evoit un m´ecanisme
d’initialisation s´ecuris´ee bas´e sur un COOKIE. C’est une valeur calcul´ee par le serveur pour
v´erifier le client qui a demand´e l’initialisation d’une association. Le sch´ema d’initialisation
avec un COOKIE est pr´esent´e dans la figure 5.2, suivi d’une explication d´etaill´ee du
m´ecanisme.
INIT
Le client qui veut ´etablir une association envoie vers le serveur un message INIT qui
contient obligatoirement les informations suivantes :
– Initiate Tag- la valeur qui sera utilis´ee par le client comme ´etiquette de v´erification
(Verification Tag) dans tous les messages ´emis pendant l’association.
5.2. INITIALISATION S ´ECURIS ´EE 27
Fig. 5.2 – Initialisation de l’association SCTP
– Advertised Receiver Window Credit - le nombre d’octets que le client peut
recevoir du serveur.
– Number of Outbound Streams- le nombre de flots sortants propos´es par le client
pour cette association.
– Number of Inbound Streams - le nombre de flots entrants propos´es par le client
pour cette association.
– Initial TSN - la valeur initiale du TSN pour le client. La valeur du Initiate Tag
peut ˆetre utilis´ee comme le TSN initial.
Dans le message INIT le client peut aussi mettre optionnellement :
– IPv4/IPv6 Address Parameter - si le client veut utiliser plusieurs adresses
pendant une association, il peut inclure des adresses suppl´ementaires IPv4 ou/et
IPv6. Les deux types d’adresses peuvent ˆetre utilis´es en mˆeme temps dans une
association.
– Host Name Address - le client peut mettre son nom au lieu de son adresse IP.
L’autre extr´emit´e doit convertir ce nom en adresse IP pour ´etablir une association.
On peut utiliser cette option pour ´etablir une association en pr´esence d’un serveur
NAT (Network Address Translation).
– Supported Address Types- le client peut sp´ecifier les types d’adresse support´es :
IPv4, IPv6 ou Hostname.
– Cookie Preservative- la dur´ee de validit´e des COOKIES. Par d´efaut un COOKIE
est valable pendant 60 secondes.
INIT-ACK
Un serveur qui re¸coit un message INIT ne cr´ee aucune structure de donn´ees dans
sa m´emoire et ne stocke aucune information concernant cette association. En se basant
sur les donn´ees re¸cues dans le message INIT, il calcule un COOKIE. La longueur et la
m´ethode de la calcul du COOKIE ne sont pas pr´ecis´ees dans la sp´ecification et elles peuvent
ˆ
etre diff´erentes pour chaque impl´ementation de SCTP. En fait, le COOKIE est important
seulement pour le serveur, car c’est lui qui doit le reconnaˆıtre dans l’´etape suivante. Le
client ne traite pas de COOKIE, mais le renvoie simplement au serveur. Cela ne d´epend
pas du format de COOKIE.
Dans le message INIT-ACK le serveur met aussi obligatoirement les informations
suivantes :
– Initiate Tag- la valeur qui sera utilis´ee par le serveur comme ´etiquette de v´erification
(Verification Tag) dans tous les messages ´emis pendant l’association.
– Advertised Receiver Window Credit - le nombre d’octets que le client peut
recevoir du serveur.
– Number of Outbound Streams - le nombre de flots sortants propos´es par le
serveur pour cette association.
– Number of Inbound Streams- le nombre de flots entrants propos´es par le serveur
pour cette association.
– Initial TSN - la valeur initiale du TSN pour le serveur. La valeur du Initiate Tag
peut ˆetre utilis´ee comme le TSN initial.
Le serveur peut ajouter des param`etres optionnels :
– IPv4/IPv6 Address Parameter - si le serveur veut utiliser plusieurs adresses
pendant une association, il peut inclure dles adresses suppl´ementaires IPv4 ou/et
IPv6 comme un param`etre optionnel.
– Host Name Address - le serveur peut mettre son nom au lieu d’adresses IP. Le
client doit convertir ce nom en adresse IP pour terminer l’initialisation.
– Error - si le serveur n’a pas reconnu un des param`etres dans le message INIT, il
envoie un message d’erreur.
COOKIE-ECHO
En troisi`eme phase d’initialisation le client renvoie au serveur le COOKIE trouv´e dans
le message INIT-ACK. Ce message ne contient rien de plus, mais le client peut mettre une
portion des donn´ees (DATAchunk) dans le mˆeme paquet avec le message COOKIE-ECHO.
Apr`es la r´eception du message COOKIE-ECHO, le serveur calcule encore une fois le
COOKIE de la mˆeme fa¸con qu’apr`es la r´eception du message INIT. Si le COOKIE calcul´e
est identique avec le COOKIE re¸cu dans le message COOKIE-ECHO, le serveur peut ˆetre
Dans le document
Transports nouvelle génération dans les réseaux à très haut débit
(Page 38-42)