stringtranslate.com

Estructura del paquete SCTP

El protocolo de transmisión de control de flujo (SCTP) tiene una estructura de paquetes básica más simple que la del protocolo TCP . Cada uno consta de dos secciones básicas:

  1. El encabezado común , que ocupa los primeros 12 bytes. En el diagrama adyacente, este encabezado está resaltado en azul.
  2. Los fragmentos de datos , que forman la parte restante del paquete. En el diagrama, el primer fragmento está resaltado en verde y el último de los N fragmentos (fragmento  N ) está resaltado en rojo. Hay varios tipos, incluidos los datos de carga útil y diferentes mensajes de control.

Encabezado común

Todos los paquetes SCTP requieren la sección de encabezado común (que se muestra con un fondo azul).

Puerto de origen
Este campo identifica el puerto de envío.
Puerto de destino
Este campo identifica el puerto de recepción que utilizan los hosts para enrutar el paquete al punto final/aplicación apropiado.
Etiqueta de verificación
Un valor aleatorio de 32 bits creado durante la inicialización para distinguir los paquetes obsoletos de una conexión anterior.
Suma de comprobación
El diseño original de SCTP tenía en cuenta el algoritmo Adler-32 , pero el RFC 3309 cambió el protocolo para utilizar el algoritmo CRC32c . [1] [2]

Trozos

Cada paquete SCTP consta, además del encabezado común, de fragmentos . Cada fragmento tiene un formato común, pero el contenido puede variar. Los bytes verdes en el diagrama anterior representan un fragmento.

Tipo de trozo
Un valor de 8 bits predefinido por la IETF para identificar el contenido del campo de valor del fragmento.
Banderas de trozos
Ocho bits de bandera cuya definición varía según el tipo de fragmento. El valor predeterminado es cero.
Longitud del trozo
Un valor sin signo de 16 bits que especifica la longitud total del fragmento en bytes (excluye cualquier relleno) que incluye el tipo de fragmento, indicadores, longitud y campos de valor.
Datos de fragmentos
Campo de datos de propósito general cuya definición varía según el tipo de fragmento.

Si la longitud del fragmento no equivale a un múltiplo de 4 bytes, entonces el protocolo rellena implícitamente el fragmento con ceros finales.

Además, cada tipo de fragmento puede definir un conjunto de parámetros que incluye dentro del campo de valor del fragmento (y, en consecuencia, su longitud en la longitud del fragmento).

Existen dos tipos de parámetros:

En el caso de los parámetros opcionales o de longitud variable, los campos de tipo de parámetro, longitud de parámetro y valor de parámetro se comportan igual que sus contrapartes en fragmentos. El tamaño mínimo del parámetro es de 4 bytes, y esto ocurre cuando el campo de valor de parámetro está vacío y el parámetro consta únicamente de los campos de tipo y longitud.

Lista de tipos de fragmentos

La RFC 2960 define la siguiente lista de tipos de fragmentos. En las siguientes subsecciones se proporciona información más detallada sobre cada tipo.

A continuación de esta tabla se definen cada fragmento y sus parámetros. Tenga en cuenta el siguiente esquema de colores:

Fragmento de DATOS

Tipo de trozo
siempre 0 para datos de carga útil (DATOS)
Banderas de trozos
Actualmente solo se utilizan 4 banderas
  • I — El fragmento SACK debe ser devuelto sin demora.
  • U: si se configura, esto indica que estos datos son un fragmento desordenado y que el número de secuencia de transmisión no es válido. Si un fragmento desordenado está fragmentado, cada fragmento tiene esta bandera configurada.
  • B: si se configura, marca el fragmento inicial. Un fragmento no fragmentado tiene esta bandera configurada.
  • E: si se configura, marca el fragmento final. Un fragmento no fragmentado tiene esta bandera configurada.
Longitud del trozo
La longitud del fragmento tiene un valor mínimo de 17, ya que no se permiten datos de tamaño inferior a un byte.
Parámetros fijos:
Número de secuencia de transmisión (TSN)
El número de secuencia para todo el flujo de DATOS (utilizado en la fragmentación para el reensamblaje).
Identificador de flujo
Identificador de la secuencia a la que pertenece este fragmento de datos.
Número de secuencia de flujo
Identificador del número de secuencia del mensaje en este flujo. Si un mensaje está fragmentado, este valor se mantiene para todos los fragmentos.
Identificador de protocolo de carga útil
Identificador de protocolo específico de la aplicación. [4] SCTP no utiliza este identificador ni lo modifica. Sin embargo, los dispositivos a lo largo de la ruta o los puntos finales pueden usarlo. Un valor de 0 indica que no se especifica ningún protocolo de carga útil.
Datos
Datos específicos de la aplicación.
Parámetros opcionales: ninguno.

Fragmento INIT

Tipo de trozo
siempre 1 para iniciación (INIT).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento que tiene un valor mínimo de 20 cuando el valor del fragmento está vacío y no se utilizan parámetros opcionales.
Los parámetros fijos tienen un significado idéntico al de INIT ACK:
Etiqueta de inicio
Número de 32 bits sin signo que se utiliza en cada paquete SCTP en la etiqueta de verificación dentro del encabezado común.
Crédito de la ventana del receptor anunciado (a_rwnd)
Cantidad de espacio de buffer dedicado para esta asociación que nunca debe reducirse.
# de transmisiones salientes
Número de transmisiones salientes (del remitente del INIT) que desea utilizar para esta asociación. Cero es un valor no válido y el receptor debe ABORTAR la asociación al recibir un cero.
# de transmisiones entrantes
Idéntico al número de flujos salientes pero con el número de flujos entrantes. No se negocia el número establecido, sino que se debe utilizar el mínimo solicitado y ofrecido.
TSN inicial
Número de secuencia de transmisión inicial que se utilizará y puede ser cualquier valor.
Los parámetros opcionales aparecen con colores de fondo alternados de verde y azul:
Tipo de parámetro = 5
Este parámetro enumera todas las direcciones IPv4 utilizadas en el punto de envío. Si se trata de una conexión multiconector, se puede incluir la dirección IP de cada una de ellas.
Tipo de parámetro = 6
Este parámetro enumera todas las direcciones IPv6 utilizadas en el punto de envío. Si se trata de una conexión multiconector, se puede incluir la dirección IP de cada una de ellas.
Tipo de parámetro = 9
Este parámetro proporciona un incremento de vida útil sugerido que el receptor debe agregar a la vida útil predeterminada de su cookie (en milisegundos).
Tipo de parámetro = 11
Este parámetro es un nombre de host según se define en RFC 1123, sección 2.1. La resolución real de este nombre está fuera del alcance de SCTP. Además, se debe incluir un carácter de terminación nulo y debe incluirse en la longitud del parámetro.
Tipo de parámetro = 12
Este parámetro enumera los tipos de direcciones que admite el remitente (por ejemplo, IPv4 = 5, IPv6 = 6, nombre de host = 11).
Tipo de parámetro = 32768
Este parámetro está reservado para el soporte explícito de notificación de congestión.

Fragmento INIT ACK

El fragmento INIT ACK replica el fragmento INIT excepto que el tipo de fragmento siempre es 2.

Parámetros obligatorios, sólo en INIT ACK:
Tipo de parámetro = 7 (cookie de estado)
La cookie de estado contiene la información mínima para recrear el bloque de control de transmisión y está firmada con la clave privada del remitente. No se especifica el formato de la cookie.

Trozo de SACO

Tipo de trozo
Siempre 3 para reconocimiento selectivo (SACK).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento, que tiene un valor mínimo de 16 cuando no se envían espacios ni duplicados.
Parámetros fijos:
TSN ACK acumulativo
Reconoce todos los números de secuencia hasta este número inclusive. Los fragmentos con TSN superiores a este número aún no se han recibido, excepto aquellos incluidos en los bloques ACK de espacio opcionales (ver a continuación).
Crédito de la ventana del receptor anunciado
Cantidad de espacio de buffer dedicado para esta asociación que nunca debe reducirse.
Número de bloques ACK de espacio
Indica la cantidad de bloques ACK de espacio (es decir, pares de TSN de inicio y fin) incluidos en este fragmento.
Número de TSN duplicados
Indica la cantidad de TSN duplicados informados en este fragmento.
Los parámetros opcionales aparecen con colores de fondo alternados de verde y azul:
Bloque ACK de brecha # N inicio
Indica un desplazamiento positivo (con referencia al valor TSN ACK acumulativo) al primer TSN de un bloque adicional de TSN que se reconocen.
Bloque ACK de espacio N extremo
Indica un desplazamiento positivo (con referencia al valor TSN ACK acumulativo) al último TSN de un bloque adicional de TSN que se reconocen.
TSN duplicado # X
Un TSN que se recibió más de una vez. Un TSN aparecerá en esta lista cada vez que se reciba después de la primera vez.

Fragmento de LATIDO DEL CORAZÓN

Tipo de trozo
Para el latido del corazón (HEARTBEAT), este valor siempre es 4.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento que tiene un valor mínimo de 8 sin ningún valor de parámetro agregado.
Parámetros fijos: Ninguno
Los parámetros opcionales se muestran con colores de fondo alternos de verde y azul:
Tipo de parámetro = 1
Este parámetro contiene información de latidos específica del remitente

Fragmento de ACK de LATIDO

Tipo de trozo
Para el reconocimiento de latido (HEARTBEAT ACK), este valor siempre es 5.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento, que tiene un valor mínimo de 8 sin ningún valor de parámetro agregado.
Parámetros fijos: Ninguno
Los parámetros opcionales se muestran con colores de fondo alternos de verde y azul:
Tipo de parámetro = 1
Este parámetro contiene la información de latido específica del remitente recibida en la solicitud.

Fragmento ABORT

Tipo de trozo
siempre 6 para abortar (ABORT).
Banderas de trozos
Actualmente sólo se utiliza una bandera:
yo
Establezca si el remitente envió su propia etiqueta de verificación (que el receptor debería verificar); no establezca si el remitente envió la etiqueta de verificación de su par (que debería verificarse de todos modos).
Longitud del trozo
Esta es la longitud del fragmento, que tiene un valor mínimo de 4 sin causas de error indicadas.
Los parámetros opcionales (las causas del error) se definen en el fragmento ERROR.

Fragmento de APAGADO

Tipo de trozo
Para el apagado (SHUTDOWN), este valor siempre es 7.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento, que tiene una longitud fija de 8.
Parámetros fijos:
TSN ACK acumulativo
Contiene el último TSN recibido en secuencia por el remitente.

Fragmento de APAGADO ACK

Tipo de trozo
Para el reconocimiento de apagado (SHUTDOWN ACK), este valor siempre es 8.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento, que tiene una longitud fija de 4.

Fragmento de error

Tipo de trozo
Para error (ERROR), este valor siempre es 9.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento, que tiene un valor mínimo de 8 cuando solo se envía un error sin valor de parámetro. El tamaño es de 4 bytes más el tamaño de todas las causas de error.
Parámetros fijos: Ninguno.
Los parámetros opcionales se muestran con colores de fondo alternos de verde y azul:
Tipo de parámetro = 1
Este parámetro identifica que el remitente recibió un identificador de flujo no válido.
Tipo de parámetro = 2
Este parámetro indica que el remitente recibió un fragmento INIT o INIT ACK con parámetros obligatorios faltantes.
Tipo de parámetro = 3
Este parámetro indica la recepción de una cookie de estado válida pero que estaba desactualizada por una determinada cantidad de microsegundos.
Tipo de parámetro = 4
Este parámetro indica que el remitente no tiene recursos; esto generalmente acompaña a un fragmento ABORT.
Tipo de parámetro = 5
Este parámetro identifica una dirección que el remitente no pudo resolver (posiblemente porque no admite el tipo de dirección); esto generalmente acompaña a un fragmento ABORT.
Tipo de parámetro = 6
Este parámetro identifica un fragmento no reconocido cuando los bits más significativos del tipo de fragmento son 01 o 11.
Tipo de parámetro = 7
Este parámetro identifica que un parámetro obligatorio en un fragmento INIT o INIT ACK tiene un valor no válido.
Tipo de parámetro = 8
Este parámetro se dirige al originador de un fragmento INIT ACK que contenía un parámetro no reconocido.
Tipo de parámetro = 9
Este parámetro indica que un fragmento de DATOS no contenía datos de usuario; esto generalmente acompaña a un fragmento de ABORT.
Tipo de parámetro = 10
Este parámetro indica que el remitente recibió un COOKIE ECHO mientras el punto final estaba en un estado SHUTDOWN-ACK-SENT.

Fragmento de COOKIE ECHO

Tipo de trozo
siempre 10 para eco de cookie (COOKIE ECHO).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del trozo.
Valor del fragmento
Contiene los datos de las cookies.

Fragmento de COOKIE ACK

Tipo de trozo
Para el reconocimiento de cookies (COOKIE ACK), este valor siempre es 11.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Esta es la longitud del fragmento y siempre es 4.

Fragmento de ECNE

Aún no definido

Fragmento de CWR

Aún no definido

Fragmento APAGADO COMPLETO

Tipo de trozo
Para el apagado completo (SHUTDOWN COMPLETE), este valor siempre es 14.
Banderas de trozos
Actualmente solo hay una bandera definida
yo
Se establece si el remitente no tenía un TCB; no se establece si el remitente tenía uno (que destruyó).
Longitud del trozo
Esta es la longitud del fragmento, que tiene una longitud fija de 4.

Fragmento de autenticación

Tipo de trozo
Para el fragmento de autenticación (AUTH), este valor siempre es 15.
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Longitud del HMAC + 8.
Parámetros fijos:
Identificador de clave compartida
Identifica la clave compartida que se utilizó.
Identificador HMAC
Identifica el tipo de HMAC utilizado. [5]
HMAC
Valor HMAC . Puede que no sea un múltiplo de 4 bytes. El protocolo SCTP se encarga de rellenar hasta un límite de 4 bytes. [6]
Parámetros opcionales: ninguno

Fragmento ASCONF-ACK

Tipo de trozo
siempre 128 para el fragmento de reconocimiento de reconfiguración de dirección (ASCONF-ACK).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Depende del número y la longitud de las respuestas del parámetro ASCONF incluidas.
Parámetros fijos:
Número de secuencia
El número de secuencia del paquete ASCONF que se está reconociendo.
Parámetros opcionales:
Respuesta del parámetro ASCONF 1.. N
Respuestas de parámetros de reconfiguración de direcciones (longitud variable).

Fragmento de RE-CONFIGURACIÓN

Tipo de trozo
siempre 130 para el fragmento de reconfiguración de transmisión (RE-CONFIG).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Depende del número y la longitud de los parámetros de reconfiguración.
Parámetros fijos:
Parámetro de reconfiguración 1
Primer parámetro de reconfiguración de flujo.
Parámetros opcionales:
Parámetro de reconfiguración 2
Segundo parámetro de reconfiguración de flujo.

En este fragmento pueden aparecer como máximo dos parámetros de reconfiguración de los mencionados a continuación. No todas las combinaciones son válidas; consulte RFC 6525 para obtener más detalles.

Parámetro de solicitud de restablecimiento de SSN saliente

El remitente utiliza este parámetro para informar al receptor que desea restablecer los números de secuencia (o identificadores de mensajes si se utiliza I-DATA) de sus flujos salientes.

Tipo de parámetro
siempre 13 para el parámetro de solicitud de restablecimiento de SSN saliente.
Longitud del parámetro
16 + 2 N .
Parámetros fijos:
Número de secuencia de solicitud de reconfiguración
Número de secuencia de esta solicitud de reconfiguración.
Número de secuencia de respuesta de reconfiguración
Número de secuencia de la última solicitud de reconfiguración recibida.
Último TSN asignado al remitente
Último TSN asignado por el remitente (en sentido estricto: uno menos que el siguiente TSN a asignar).
Parámetros opcionales:
Número de transmisión 1.. N
Números de transmisión para los que se debe restablecer el SSN o MID. Si no se especifica ninguno, se restablecerán todos los SSN y MID.

Parámetro de solicitud de restablecimiento de SSN entrante

Un remitente utiliza este parámetro para solicitar que el receptor restablezca los números de secuencia (o identificadores de mensajes si se utiliza I-DATA) para sus flujos salientes.

Tipo de parámetro
siempre 14 para el parámetro de solicitud de restablecimiento de SSN entrante.
Longitud del parámetro
8 + 2 N .
Parámetros fijos:
Número de secuencia de solicitud de reconfiguración
Número de secuencia de esta solicitud de reconfiguración.
Parámetros opcionales:
Número de transmisión 1.. N
Números de transmisión para los que se debe restablecer el SSN o MID. Si no se especifica ninguno, se restablecerán todos los SSN y MID.

Parámetro de solicitud de restablecimiento de SSN/TSN

El remitente utiliza este parámetro para informar al receptor que desea restablecer todos los TSN y todos los SSN/MID de todas las transmisiones.

Tipo de parámetro
siempre 15 para el parámetro de solicitud de restablecimiento de SSN/TSN
Longitud del parámetro
8
Parámetros fijos:
Número de secuencia de solicitud de reconfiguración
Número de secuencia de esta solicitud de reconfiguración.
Parámetros opcionales: ninguno

Parámetro de respuesta de reconfiguración

Este parámetro se utiliza como respuesta a una solicitud de reconfiguración, excepto posiblemente para una solicitud de restablecimiento de SSN entrante, que genera un parámetro de solicitud de restablecimiento de SSN saliente si se concede.

Tipo de parámetro
Siempre 16 para el parámetro de respuesta de reconfiguración
Longitud del parámetro
12 o 20
Parámetros fijos:
Número de secuencia de respuesta de reconfiguración
Número de secuencia de la solicitud de reconfiguración correspondiente.
Resultado
Código de resultado
Parámetros opcionales: (deben estar presentes ambos o ninguno)
Próximo TSN del remitente
Próximo TSN que utilizará el remitente de la respuesta. Solo en respuesta a una solicitud de restablecimiento de SSN/TSN.
Próximo TSN del receptor
Próximo TSN que debe utilizar el receptor de la respuesta. Solo en respuesta a una solicitud de restablecimiento de SSN/TSN.

Agregar parámetro de solicitud de transmisiones salientes

El remitente utiliza este parámetro para solicitar que se agreguen transmisiones salientes adicionales a la asociación (es decir, transmisiones entrantes para el receptor).

Tipo de parámetro
Siempre 17 para el parámetro de solicitud de agregar flujos salientes
Longitud del parámetro
12
Parámetros fijos:
Número de secuencia de solicitud de reconfiguración
Número de secuencia de esta solicitud de reconfiguración.
Número de nuevos streams
Número de transmisiones salientes (de remitente a receptor) que se agregarán a la asociación.
Parámetros opcionales: ninguno

Agregar parámetro de solicitud de transmisiones entrantes

El remitente utiliza este parámetro para solicitar que se agreguen transmisiones entrantes adicionales a la asociación (es decir, transmisiones salientes para el receptor).

Tipo de parámetro
Siempre 18 para el parámetro de solicitud de agregar transmisiones entrantes
Longitud del parámetro
12
Parámetros fijos:
Número de secuencia de solicitud de reconfiguración
Número de secuencia de esta solicitud de reconfiguración.
Número de nuevos streams
Número de transmisiones entrantes (del receptor al remitente) que se agregarán a la asociación.
Parámetros opcionales: ninguno

Fragmento de PAD

El fragmento PAD se introdujo para facilitar el descubrimiento de la MTU de la ruta , [7] al permitir que un remitente aumente arbitrariamente el tamaño de un paquete SCTP.

Tipo de trozo
siempre 132 para el fragmento de relleno (PAD).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Depende del tamaño de los datos de relleno. La longitud mínima es de 4 bytes.
Parámetros fijos: ninguno
Parámetros opcionales:
Datos de relleno
Datos arbitrarios: serán ignorados y descartados sin contemplaciones por el receptor.

Fragmento de I-DATA

El fragmento I-DATA se introdujo para evitar que un mensaje grande en un flujo bloqueara la transmisión de mensajes en todos los demás flujos: SCTP utiliza principalmente el TSN para lograr confiabilidad. En algunos casos, el TSN también es necesario para distinguir diferentes fragmentos de DATOS. [8] Cuando se fragmenta un mensaje, el TSN de DATOS también funciona como un número de secuencia de fragmento. Esto significa que todos los fragmentos de un mensaje deben enviarse utilizando TSN consecutivos, lo que bloquea de manera efectiva todos los demás datos. El fragmento I-DATA desenreda los diferentes usos del TSN en los fragmentos de DATOS.

Como los fragmentos DATA e I-DATA no son compatibles, no es posible utilizarlos ambos en la misma asociación.

Tipo de trozo
siempre 64 para datos de carga útil que admiten intercalado (I-DATA).
Banderas de trozos
Actualmente solo se utilizan 4 banderas
  • I — El fragmento SACK debe ser devuelto sin demora.
  • U: si se configura, indica que estos datos son un fragmento desordenado. Si un fragmento desordenado está fragmentado, cada fragmento tiene esta bandera configurada.
  • B: si se configura, marca el fragmento inicial. Un fragmento no fragmentado tiene esta bandera configurada.
  • E: si se configura, marca el fragmento final. Un fragmento no fragmentado tiene esta bandera configurada.
Longitud del trozo
La longitud del fragmento tiene un valor mínimo de 21, ya que no se permiten datos de tamaño inferior a un byte.
Parámetros fijos:
Número de secuencia de transmisión (TSN)
El número de secuencia para todo el flujo de DATOS (utilizado para reconocimiento y retransmisión).
Identificador de flujo
Identificador de la secuencia a la que pertenece este fragmento de datos.
Identificador de mensaje (MID)
Identificador del mensaje en este flujo. Si un mensaje está fragmentado, se utiliza el mismo valor para todos los fragmentos. En el caso de los mensajes ordenados, el MID también especifica el orden en el que se deben enviar los mensajes a la capa superior. Los mensajes ordenados y desordenados en el mismo flujo utilizan secuencias MID independientes.
Identificador de protocolo de carga útil
Identificador de protocolo específico de la aplicación, [4] presente únicamente si se establece el indicador B. SCTP no lo utiliza ni lo modifica. Sin embargo, los dispositivos a lo largo de la ruta o los puntos finales pueden usarlo. Un valor de 0 indica que no se especifica ningún protocolo de carga útil.
Número de secuencia del fragmento
Número de fragmento para paquetes fragmentados. Solo está presente si no se establece el indicador B. Si se establece el indicador B, el número de secuencia del fragmento es implícitamente cero y el identificador del protocolo de carga útil ocupa el mismo espacio.
Datos
Datos específicos de la aplicación.
Parámetros opcionales: ninguno.

Fragmento TSN ADELANTE

El fragmento FORWARD-TSN se introdujo para soportar la falta de confiabilidad selectiva: permite al remitente decirle al receptor que no retransmitirá cierta cantidad de fragmentos y solicita que el receptor considere todos estos fragmentos como recibidos.

Tipo de trozo
siempre 192 para el fragmento TSN hacia adelante (FORWARD-TSN).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Depende de la cantidad de nuevos números de secuencia de transmisión incluidos.
Parámetros fijos:
Nuevo número de secuencia de transmisión acumulativa (TSN)
El siguiente TSN que el receptor debe esperar. Cualquier TSN anterior debe considerarse recibido.
Parámetros opcionales:
Identificador de flujo 1.. N
Identificadores de secuencias de secuencias que fueron omitidas por este fragmento.
Secuencia de flujo 1.. N
Nuevos números de secuencia de transmisión asociados con las transmisiones que se omitieron.

Fragmento de ASCONF

Tipo de trozo
siempre 193 para el fragmento de reconfiguración de dirección (ASCONF).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Depende del tipo de dirección IP y del número y longitud de los parámetros ASCONF incluidos.
Parámetros fijos:
Número de secuencia
El número de secuencia del paquete ASCONF.
Parámetro de dirección
tipo de parámetro: Tipo de dirección en el parámetro de dirección: 5 para IPv4, 6 para IPv6.
Parámetro de dirección
longitud del parámetro: Longitud del parámetro de dirección: 8 para IPv4, 20 para IPv6.
Parámetro de dirección
Dirección IP: 4 bytes para IPv4, 16 bytes para IPv6.
Parámetros opcionales:
Parámetro ASCONF 1..N
Parámetros de reconfiguración de direcciones (longitud variable).

Fragmento I-FORWARD-TSN

El fragmento I-FORWARD-TSN se introdujo para usarse en lugar de FORWARD-TSN cuando se usa I-DATA en lugar de DATA.

Tipo de trozo
siempre 194 para el fragmento TSN de avance con soporte para intercalado (I-FORWARD-TSN).
Banderas de trozos
Actualmente no hay banderas utilizadas.
Longitud del trozo
Depende de la cantidad de nuevos identificadores de mensajes de transmisión incluidos.
Parámetros fijos:
Nuevo número de secuencia de transmisión acumulativa (TSN)
El siguiente TSN que el receptor debe esperar. Cualquier TSN anterior debe considerarse recibido.
Parámetros opcionales:
Identificador de flujo 1.. N
Identificadores de secuencias de secuencias que fueron omitidas por este fragmento.
0 si el nuevo identificador de mensaje está asociado con los mensajes ordenados, 1 si está asociado con los mensajes desordenados en el flujo.
Identificador del mensaje 1.. N
Nuevos identificadores de mensajes asociados con las transmisiones que se omitieron.

Notas

  1. ^ Castagnoli, G.; S. Brauer; M. Herrmann (junio de 1993). "Optimización de códigos de comprobación de redundancia cíclica con 24 y 32 bits de paridad". IEEE Transactions on Communications . 41 (6): 883. doi :10.1109/26.231911.Trabajo de Castagnoli et al. sobre selección algorítmica de polinomios CRC
  2. ^ Koopman, P. (junio de 2002). "Códigos de redundancia cíclica de 32 bits para aplicaciones de Internet". Actas de la Conferencia internacional sobre sistemas y redes confiables . págs. 459–468. doi :10.1109/DSN.2002.1028931. ISBN. 0-7695-1597-5. Número de identificación del sujeto  14775606.. Verificación de los resultados de Castagnoli mediante una búsqueda exhaustiva y algunos nuevos polinomios buenos
  3. ^ ab Véase https://www.iana.org/assignments/sctp-parameters/sctp-parameters.xhtml; posiblemente utilizado en un borrador de Internet.
  4. ^ ab Consulte https://www.iana.org/assignments/sctp-parameters/sctp-parameters.xhtml#sctp-parameters-25 para obtener una lista de PPID asignados.
  5. ^ Consulte https://www.iana.org/assignments/sctp-parameters/sctp-parameters.xhtml#sctp-parameters-26 para obtener una lista de identificadores HMAC asignados.
  6. ^ Aunque el RFC 4895 menciona el relleno, estrictamente hablando, el relleno no es parte del fragmento AUTH: no está incluido en la longitud del fragmento, y su presencia ya está asegurada por el propio protocolo SCTP, ordenado por el RFC 4960 (sección 3.2).
  7. ^ RFC 4821 - Descubrimiento de MTU de ruta de la capa de paquetización
  8. ^ El orden de dos fragmentos ordenados puede depender de la combinación de TSN y SSN, y dos fragmentos desordenados idénticos solo se pueden distinguir por sus TSN.

Referencias