Diferencia entre los protocolos TCP y SCTP

Protocolos TCP vs SCTP

Tanto TCP (Transmission Control Protocol) como SCTP (Stream Control Transmission Protocol) se encuentran en la capa de transporte y proporcionan funciones de transporte principalmente en aplicaciones de Internet. TCP proporciona una transferencia de datos confiable con un orden estricto de entrega de los paquetes, pero algunas aplicaciones necesitan una transferencia confiable pero no el 100% de la secuencia de entrega de paquetes. En estos casos, TCP puede causar un retraso innecesario en la segunda opción donde la confiabilidad es importante pero no el 100% de la entrega secuencial.

En el transporte de paquetes hay dos limitaciones principales, una es la confiabilidad y la otra es la latencia. La confiabilidad está garantizada en la entrega del paquete y la latencia es oportuna en la entrega del paquete. Ambos no pueden alcanzarse al máximo al mismo tiempo, pero podrían optimizarse.

SCTP está desarrollado básicamente para transportar señalización PSTN a través de redes IP. (SIGTRAN). Pero en estos días otras aplicaciones también encuentran que SCTP es una buena combinación para sus requisitos.

TCP:

Definido en RFC 793

TCP es un protocolo confiable de extremo a extremo de conexión para admitir la transmisión de datos garantizada. Desde el establecimiento de la conexión en sí TCP garantiza la fiabilidad. Algunas de las características principales de TCP son el protocolo de enlace de 3 vías (SYN, SYN-ACK, ACK), detección de errores, inicio lento, control de flujo, control de congestión.

TCP es un mecanismo de transporte confiable, por lo que se usará donde la entrega de paquetes sea una necesidad incluso en congestiones. Ejemplo típico para aplicaciones TCP y números de puerto son datos de FTP (20), Control de FTP (21), SSH (222), Telnet (23), Correo (25), DNS (53), HTTP (80), POP3 (110) , SNMP (161) y HTTPS (443). Estas son aplicaciones TCP muy conocidas..

SCTP:

Definido en RFC4960

SCTP (Stream Control Transmission Protocol) es un protocolo de transporte IP como TCP y UDP. SCTP es un protocolo de unidifusión y la entrega de datos de extremo a extremo compatible en exactamente dos puntos finales. Pero los puntos finales pueden tener más de una dirección IP.

SCTP es un protocolo de transmisión dúplex completo con características como retransmisión, control de flujo y mantenimiento de secuencias.

Además de TCP, SCTP tiene más funciones y algunas se enumeran a continuación

  • Función de transmisión múltiple de SCTP

SCTP permite que los datos se dividan en múltiples flujos y cada flujo tiene su propia secuencia de entrega. Considere el caso de la señalización de telefonía, es necesario mantener la secuencia de paquetes que afecta a la misma sesión o recurso. (Por ejemplo: la misma llamada o la misma troncal). Por lo tanto, el seguimiento de secuencias basado en la transmisión es suficiente y dará como resultado un mejor rendimiento que una transmisión completa.

  • SCTP multi homing

Esta característica admite que un único punto final de SCTP tenga varias direcciones IP. La razón principal de esto es mantener la disponibilidad del punto final a través de varias rutas de enrutamiento redundantes.

  • Selección de camino

Se mantiene un contador para realizar un seguimiento de los acuses de recibo de transmisión no exitosos a un destino en particular. Hay un umbral definido y si supera la dirección de destino se declara inactivo y SCTP comienza a enviar a una dirección alternativa.

Resumen:

(1) TCP y SCTP soportan servicios de transporte confiables.
(2) TCP admite un flujo único de entrega de datos, mientras que SCTP admite flujos múltiples de entrega de datos.
(3) TCP admite un único punto final de TCP para tener una dirección IP, mientras que SCTP admite un único punto final de SCTP puede tener múltiples direcciones IP principalmente para fines de redundancia.
(4) En lugar de TCP, SCTP es más seguro.
(5) Los procesos de inicio y cierre de SCTP son diferentes de TCP.