Différence entre les protocoles TCP et SCTP

Protocoles TCP vs SCTP

Les protocoles TCP (Transmission Control Protocol) et SCTP (Stream Control Transmission Protocol) se situent dans la couche de transport et fournissent des fonctions de transport principalement dans les applications Internet. TCP fournit un transfert de données fiable avec un ordre de livraison des paquets strict, mais certaines applications nécessitent un transfert fiable, mais pas une séquence de livraison des paquets à 100%. Dans ces cas, TCP peut provoquer un retard inutile dans la deuxième option où la fiabilité est importante mais pas la livraison séquentielle à 100%..

Pour le transport de paquets, il existe deux contraintes majeures: la fiabilité et la latence. La fiabilité est garantie par la livraison du paquet et la latence est livrée dans les délais. Les deux ne peuvent pas être atteints en même temps mais pourraient être optimisés.

Le protocole SCTP est essentiellement conçu pour transporter la signalisation PSTN sur des réseaux IP. (SIGTRAN). Mais ces jours-ci, d’autres applications trouvent également que SCTP correspond bien à leurs besoins..

TCP:

Défini dans RFC 793

TCP est un protocole fiable orienté connexion qui prend en charge la transmission de données garantie. Depuis l'établissement de la connexion elle-même, TCP assure la fiabilité. Parmi les principales caractéristiques de TCP, on trouve la négociation à 3 voies (SYN, SYN-ACK, ACK), la détection d'erreur, le démarrage lent, le contrôle de flux, le contrôle de congestion..

TCP est un mécanisme de transport fiable, il sera donc utilisé dans les cas où la livraison de paquets est indispensable, même dans les embouteillages. Des exemples typiques d’applications et de numéros de port TCP sont les données FTP (20), Contrôle FTP (21), SSH (222), Telnet (23), Mail (25), DNS (53), HTTP (80), POP3 (110). , SNMP (161) et HTTPS (443). Ce sont des applications TCP bien connues.

SCTP:

Défini dans RFC4960

SCTP (Stream Control Transmission Protocol) est un protocole de transport IP tel que TCP et UDP. SCTP est un protocole de monodiffusion qui prend en charge la transmission de données de bout en bout sur exactement deux points d'extrémité. Mais les ordinateurs d'extrémité peuvent avoir plusieurs adresses IP..

SCTP est un protocole de transmission en duplex intégral avec des fonctionnalités telles que la retransmission, le contrôle de flux et la maintenance de séquence..

En plus de TCP, SCTP a plus de fonctionnalités et certaines sont énumérées ci-dessous

  • Fonction de multi-streaming SCTP

SCTP permet de diviser les données en plusieurs flux et chaque flux a sa propre séquence de livraison. Prenons le cas de la signalisation téléphonique, il est nécessaire de conserver la séquence de paquets qui affecte la même session ou la même ressource. (Ex: Même appel ou même réseau). Donc, le suivi de séquence basé sur le flux est suffisant et donnera de meilleures performances qu'un streaming complet.

  • SCTP multi-hébergement

Cette fonctionnalité prend en charge le fait qu'un seul point de terminaison SCTP ait plusieurs adresses IP. La raison principale en est de maintenir la disponibilité du terminal via plusieurs chemins de routage redondants..

  • Sélection de chemin

Un compteur est mis à jour pour garder une trace des accusés de réception de transmission ayant échoué vers une destination particulière. Un seuil est défini et si celui-ci dépasse l'adresse de destination, il est déclaré inactif et SCTP commence à envoyer à une autre adresse..

Résumé:

(1) TCP et SCTP prennent tous deux en charge des services de transport fiables.
(2) TCP prend en charge un flux unique de transmission de données, tandis que SCTP prend en charge plusieurs flux de transmission de données..
(3) TCP prend en charge un seul point de terminaison TCP avec une adresse IP unique, alors que SCTP prend en charge un seul point de terminaison SCTP peut avoir plusieurs adresses IP principalement à des fins de redondance..
(4) Plutôt que TCP, SCTP est plus sécurisé.
(5) Les processus d'initiation et d'arrêt SCTP sont différents de TCP.