2.4 Fragmentación en IPv6

Al contrario que en IPv4, el fragmentado de un paquete sólo lo puede llevar a cabo el origen, con lo que se obvia el flag no fragmentable, de IPv4 (ver Fragmentación y Flags).

Para cada paquete que deba ser fragmentado, el origen le asigna un identificador (ver Cabecera de fragmento), este identificador debe ser diferente del de cualquier otro paquete enviado recientemente con la mismas direcciones origen y destino.

El paquete original se diferencia en dos partes, fragmentable y no fragmentable. La parte no fragmentable consiste en la cabecera IPv6 y las cabeceras extendidas que deban ser procesadas por los nodos intermedios en el camino del paquete. La parte fragmentable consta del resto de cabeceras extendidas, de la cabecera del nivel superior y de la carga.

El paquete original se descompone en fragmentos cuya longitud debe estar alineada a 8 octetos (excepto el último). La parte no fragmentable del paquete original se copia a todos sus fragmentos, cambiando el campo longitud de la carga a la longitud de cada fragmento y el campo siguiente cabecera a 44 (valor que identifica a una cabecera de fragmento).

Cada fragmento está compuesto por:

- La parte no fragmentable del paquete original.

- La cabecera de fragmento. Ver apartado Cabecera de fragmento

- El fragmento propiamente dicho.

En destino, el paquete original es contruido según las siguiente normas:

- Los fragmentos del paquete original deben contener los mismos valores en los campos Dirección origen, dirección destino y identificador de fragmento.

- El campo siguiente cabecera de la cabecera IPv6 se obtiene del campo siguiente cabecera de la cabecera de fragmento del primer fragmento.

- El campo tamaño de la carga del datagrama original se calcula en base al tamaño de la parte no fragmentable, y al tamaño y offset de fragmento del último fragmento.

En el proceso de reensamblado, pueden producirse los siguientes errores:

- Si se ha recibido un número de fragmentos insuficientes para recomponer el paquete original pasados 60 segundos desde el primer fragmento recibido, se abandona el proceso y se descartan todos los fragmentos recibidos. Si se recibió el primer fragmento (offset de fragmento = 0), se envía un mensaje ICMP de error al origen.

- Si la longitud de un fragmento en octetos no es múltiplo de 8 y no es el último fragmento, se descarta el fragmento y se envía un mensaje ICMP de error al origen.

- Si la longitud y el offset de fragmento de un fragmento determinan que la longitud de la carga del paquete original es mayor de 65535 octetos, se descarta el fragmento y se envía un mensaje ICMP de error al origen.


[INDICE | INDICE RESUMIDO | SIGUIENTE | ANTERIOR]