Trama



La trama del protocolo SCTP se muestra en la figura.

Trama SCTP

En general, el paquete SCTP se conforma de su cabecera, seguida de una serie de bloques, llamados "chunks", limitados por el MTU. Un chunk puede contener información (datos) o datos de control.

Los campos utilizados en la cabecera de la trama son:
  • El puerto de origen se utiliza por el receptor para identificar la asociación a la que pertenece el paquete SCTP.
  • El puerto de destino es el puerto al cual el paquete esta destinado.
  • El campo 'Verification Tag' es un valor de 32 bits asignado por ambos extemos, negociado al inicio de la asociación.
  • El campo 'checksum' se utiliza para verificar la integridad del paquete SCTP. Utiliza el algoritmo Alder-32.


Los campos utilizados por cada chunk son:
  • 'Type' identifica el tipo de chunk que se transmite.
  • 'Flag' especifica que bits se utilizarán en la asociación, dependiendo del tipo de chunk transmitido.
  • 'Length' determina el tamaño en bytes del chunk.
  • 'Chunk data' incluye los datos que transporta el chunk.
Existen 13 tipos de chunks, definidos en RFC 2960, sin embargo, debido al formato del paqeute, se pueden tener hasta 256 tipos de chunk, los que serán definidos en el futuro por IETF:
 
		   ID Value    Chunk Type
		   -----       ----------
		   0          - Payload Data (DATA)
		   1          - Initiation (INIT)
		   2          - Initiation Acknowledgement (INIT ACK)
		   3          - Selective Acknowledgement (SACK)
		   4          - Heartbeat Request (HEARTBEAT)
		   5          - Heartbeat Acknowledgement (HEARTBEAT ACK)
		   6          - Abort (ABORT)
		   7          - Shutdown (SHUTDOWN)
		   8          - Shutdown Acknowledgement (SHUTDOWN ACK)
		   9          - Operation Error (ERROR)
		   10         - State Cookie (COOKIE ECHO)
		   11         - Cookie Acknowledgement (COOKIE ACK)
		   12         - Reserved for Explicit Congestion Notification Echo (ECNE)
		   13         - Reserved for Congestion Window Reduced (CWR)
		   14         - Shutdown Complete (SHUTDOWN COMPLETE)
		   15 to 62   - reserved by IETF
		   63         - IETF-defined Chunk Extensions
		   64 to 126  - reserved by IETF
		   127        - IETF-defined Chunk Extensions
		   128 to 190 - reserved by IETF
		   191        - IETF-defined Chunk Extensions
		   192 to 254 - reserved by IETF
		   255        - IETF-defined Chunk Extensions