Ir al contenido

Stream Control Transmission Protocol

De Wikipedia, la enciclopedia libre

Esta es una versión antigua de esta página, editada a las 03:47 13 jun 2014 por Jean.c18 (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.

Stream Control Transmission Protocol
(SCTP)
Familia Familia de protocolos de Internet
Función Protocolo de transporte confiable, con secuenciación con control de congestión, orientado a mensajes.
Puertos 132
Ubicación en la pila de protocolos
Aplicación protocolos de streaming
Transporte SCTP
Red IP (IPv4, IPv6)
Enlace Ethernet, Token Ring,
FDDI, ...
Estándares
RFC 2960 (2000)
RFC 4960 (2007)

Stream Control Transmission Protocol (SCTP) es un protocolo de comunicación de capa de transporte que fue definido por el grupo SIGTRAN de IETF en el año 2000. El protocolo está especificado en la RFC 2960, y la RFC 3286 brinda una introducción al mismo.

SCTP es una alternativa a los protocolos de transporte TCP y UDP pues provee confiabilidad, control de flujo y secuenciación como TCP. Sin embargo, SCTP opcionalmente permite el envío de mensajes fuera de orden y a diferencia de TCP, SCTP es un protocolo orientado al mensaje (similar al envío de datagramas UDP).

Las ventajas de SCTP son:

  • Capacidad de Multihoming, en la cual uno (o dos) de los extremos de una asociación (conexión) pueden tener más de una dirección IP. Esto permite reaccionar en forma transparente ante fallos en la red.
  • Entrega de los datos en trozos que forman parte de flujos independientes y paralelos —eliminando así el problema de head of the line blocking que sufre TCP.
  • Es capaz de seleccionar y monitorizar caminos, seleccionando un camino "primario" y verificando constantemente la conectividad de cada uno de los caminos alternativos.
  • Mecanismos de validación y asentimiento como protección ante ataques por inundación, proveyendo notificación de trozos de datos duplicados o perdidos.

SCTP fue diseñado inicialmente por el grupo Sigtran para transportar señalización telefónica SS7 sobre IP. La intención fue la de proveer en IP de algunas de las características de confiabilidad de SS7. Por su versatilidad luego se ha propuesto utilizarlo en otras áreas, como por ejemplo para transportar mensajes de los protocolos DIAMETER o SIP.

Caracteristicas

SCTP es una alternativa a los protocolos de transporte TCP y UDP pues provee confiabilidad, control de flujo y secuenciación como TCP. Sin embargo, SCTP opcionalmente permite el envío de mensajes fuera de orden y a diferencia de TCP, SCTP es un protocolo orientado al mensaje (similar al envío de datagramas UDP).

Soporte de multihoming Soporte de multistreaming Orientado a la coneccion Delimitadores de mensajes Provee servicio de mensaje no ordenados y confiables (Ordering) Mecanismos de validación y asentimiento como protección ante ataques por inundación, proveyendo notificación de trozos de datos duplicados o perdidos. Entrega de los datos en trozos que forman parte de flujos independientes y paralelos —eliminando así el problema de head of the line blocking que sufre TCP.

== Estructura de paquete SCTP ==

SCTP tiene un paquete similar a la estructura de TCP, esta cuenta con 2 secciones, una cabecera común y una pila de bloques llamado Chunks. A su vez cada Chunk posee su propios campos de información, estos están limitados al MTU de la red.

data

Figura: Estructura de datos SCTP La cabecera común o SCTP Common Header está compuesta por los siguientes campos:

Source Port: Indica el puerto fuente de la asociación. Destination Port: Indica el puerto destino de la asociación. Verification Tag: Valor aleatorio escogido por el cliente y el servidor de forma independiente uno de otro. Su utilidad es discriminar entre una asociación y otra, como también otros temas de seguridad. Checksum CRC: Chequeo de datos CRC. Este chequeo se realiza al paquete completo (SCTP Common Header y los chunks). Ademáss, cada chunk posee los siguientes campos:

Chunk Type: Indica el tipo de chunk que se va a enviar. Los tipos de chunks según su type se muestran más adelante. Chunk Flags: Indica el flag que posee cada chunk. Este valor depende del chunk type debido a que cada tipo posee sus propios flags. En caso por ejemplo de un chunk de Data, sus flags indican si es que es el primer segmento del mensaje, el último o si es que los datos deben ser enviados en orden. Chunk Length: Largo del Chunk completo en bytes. Chunk Data: Data que se enviará por el chunk.


Implementaciones

SCTP está implementado en los siguientes sistemas operativos:

SCTP está implementado en:

RFCs

  • RFC 4460 Stream Control Transmission Protocol (SCTP) Specification Errata and Issues
  • RFC 3873 Stream Control Transmission Protocol (SCTP) Management Information Base (MIB)
  • RFC 3758 Stream Control Transmission Protocol (SCTP) Partial Reliability Extension
  • RFC 3554 On the Use of Stream Control Transmission Protocol (SCTP) with IPsec
  • RFC 3436 Transport Layer Security over Stream Control Transmission Protocol
  • RFC 3309 Stream Control Transmission Protocol (SCTP) Checksum Change
  • RFC 3286 An Introduction to the Stream Control Transmission Protocol
  • RFC 3257 Stream Control Transmission Protocol Applicability Statement
  • RFC 2960 Stream Control Transmission Protocol

Enlaces externos