Diferencia entre revisiones de «Cabecera IP»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
imported>188-VIGO-X11.libre.retevision.es
mSin resumen de edición
 
TomBomba (discusión · contribs.)
Sin resumen de edición
Línea 1: Línea 1:
La siguiente tabla muestra el formato de las cabeceras IP, según la [[RFC 791]] y, a continuación, una breve descripción de cada campo:<br><br>
La siguiente tabla muestra el formato de las cabeceras IP, según la [[RFC 791]] y, a continuación, una breve descripción de cada campo:<br><br>


<table ALIGN="center" BORDER CELLSPACING=0 CELLPADDING=0 WIDTH="640" NOSAVE >
<table BORDER CELLSPACING=2 CELLPADDING=0>


<caption><b>Formato de la Cabecera IP (Versión 4)</b></caption>
<caption><b>Formato de la Cabecera IP (Versión 4)</b></caption>
Línea 7: Línea 7:
<tr>
<tr>


<td WIDTH="80"><center>0</center></td>
<td WIDTH="80">0</td>


<td WIDTH="80"><center>4</center></td>
<td WIDTH="80">4</td>


<td WIDTH="160"><center>8</center></td>
<td WIDTH="160">8</td>


<td WIDTH="60"><center>16</center></td>
<td WIDTH="60">16</td>


<td WIDTH="100"><center>19</center></td>
<td WIDTH="100">19</td>


<td><center>32</center></td>
<td>32</td>


</tr> <tr>
</tr> <tr>
Línea 37: Línea 37:
<td> <center>Indicadores</center> </td>
<td> <center>Indicadores</center> </td>


<td> <center>Núm. Fragmento</center> </td>
<td> <center>Posición de Fragmento</center> </td>


<td> </td>
<td> </td>
Línea 77: Línea 77:




* <b>Versión:</b> 4 bits.
<b>Versión:</b> 4 bits.


: Este campo describe el formato de la cabecera utilizada. En la tabla se describe la versión 4.<br>
: Este campo describe el formato de la cabecera utilizada. En la tabla se describe la versión 4.<br>


* <b>Tamaño Cabecera (IHL):</b> 4 bits.
<b>Tamaño Cabecera (IHL):</b> 4 bits.


:Longitud de la cabecera, en palabras de 32 bits. Su valor mínimo es de 5 para una cabecera correcta, y el máximo de 15.
:Longitud de la cabecera, en palabras de 32 bits. Su valor mínimo es de 5 para una cabecera correcta, y el máximo de 15.<br>


<b>Tipo de Servicio:</b> 8 bits.


* <b>Tipo de Servicio:</b> 8 bits.


:Indica una serie de parámetros sobre la calidad de servicio deseada durante el tránsito por una red. Algunas redes ofrecen prioridades de servicios, considerando determinado tipo de paquetes "más importantes" que otros (en particular, algunas redes pueden admitir sólo los paquetes con una prioridad alta en momentos de sobrecarga).
:Indica una serie de parámetros sobre la calidad de servicio deseada durante el tránsito por una red. Algunas redes ofrecen prioridades de servicios, considerando determinado tipo de paquetes "más importantes" que otros (en particular, algunas redes pueden admitir sólo los paquetes con una prioridad alta en momentos de sobrecarga).


:Estos 8 bits se agrupan de la siguiente manera:
:Estos 8 bits se agrupan de la siguiente manera:<br>


**bits '''0-2''': '''Prioridad:''' Valores altos para prioridades superiores.
::bits '''0-2''': '''Prioridad:''' Valores altos para prioridades superiores.


**bit '''3''': '''0''' = Retraso Normal, '''1''' = Bajo Retraso.
::bit '''3''': '''0''' = Retraso Normal, '''1''' = Bajo Retraso.


**bit '''4''': '''0''' = Tránsito Normal, '''1''' = Tránsito Rápido.
::bit '''4''': '''0''' = Tránsito Normal, '''1''' = Tránsito Rápido.


**bit '''5''': '''0''' = Fiabilidad Normal, '''1''' = Alta Fiabilidad.
::bit '''5''': '''0''' = Fiabilidad Normal, '''1''' = Alta Fiabilidad.


**bits '''6-7''': Reservados para futuros usos.
::bits '''6-7''': Reservados para futuros usos.<br>


<b>Longitud Total:</b> 16 bits.


* <b>Longitud Total:</b> 16 bits.


: Es el tamaño total, en octetos, del datagrama, incluyendo el tamaño de la cabecera y el de los datos. El tamaño máximo de los datagramas usados normalmente es de 576 octetos (64 de cabeceras y 512 de datos). Una máquina no debería envíar datagramas mayores a no ser que tenga la certeza de que van a ser aceptados por la máquina destino.<br>
: Es el tamaño total, en octetos, del datagrama, incluyendo el tamaño de la cabecera y el de los datos. El tamaño máximo de los datagramas usados normalmente es de 576 octetos (64 de cabeceras y 512 de datos). Una máquina no debería envíar datagramas mayores a no ser que tenga la certeza de que van a ser aceptados por la máquina destino.<br>


: En caso de fragmentación este campo contendrá el tamaño del fragmento, no el del datagrama original.
: En caso de fragmentación este campo contendrá el tamaño del fragmento, no el del datagrama original.<br>


* <b>Identificador:</b> 16 bits.
<b>Identificador:</b> 16 bits.


: Identificador único del datagrama. Se utilizará, en caso de que el datagrama deba ser fragmentado, para poder distinguir los fragmentos de un datagrama de los de otro. El originador del datagrama debe asegurar un valor único para la pareja origen-destino y el tipo de protocolo durante el tiempo que el datagrama pueda estar activo en la red.<br>
: Identificador único del datagrama. Se utilizará, en caso de que el datagrama deba ser fragmentado, para poder distinguir los fragmentos de un datagrama de los de otro. El originador del datagrama debe asegurar un valor único para la pareja origen-destino y el tipo de protocolo durante el tiempo que el datagrama pueda estar activo en la red.<br>


* <b>Indicadores:</b> 3 bits.
<b>Indicadores:</b> 3 bits.


: Actualmente para especificar valores relativos a la fragmentación de paquetes:<br>
: Actualmente utilizado sólo para especificar valores relativos a la fragmentación de paquetes:<br>


**bit '''0''': Reservado; debe ser 0
::bit '''0''': Reservado; debe ser 0


**bit '''1''': '''0''' = Divisible, '''1''' = No Divisible
::bit '''1''': '''0''' = Divisible, '''1''' = No Divisible


**bit '''2''': '''0''' = Último Fragmento, '''1''' = Fragmento Intermedio (le siguen más fragmentos)
::bit '''2''': '''0''' = Último Fragmento, '''1''' = Fragmento Intermedio (le siguen más fragmentos)


:La indicación de que un paquete es indivisible debe ser tenida en cuenta bajo cualquier circunstancia. Si el paquete necesitara ser fragmentado, no se enviará.
:La indicación de que un paquete es indivisible debe ser tenida en cuenta bajo cualquier circunstancia. Si el paquete necesitara ser fragmentado, no se enviará.<br>


* <b>Número de Fragmento:</b> 13 bits.
<b>Posición de Fragmento:</b> 13 bits.


:En paquetes fragmentados indica la posición, en unidades de 64 bits, que ocupa el paquete actual dentro del datagrama original. El primer paquete de una serie de fragmentos contendrá en este campo el valor 0.
:En paquetes fragmentados indica la posición, en unidades de 64 bits, que ocupa el paquete actual dentro del datagrama original. El primer paquete de una serie de fragmentos contendrá en este campo el valor 0.<br>


* <b>Tiempo de Vida:</b> 8 bits.
<b>Tiempo de Vida (TTL):</b> 8 bits.


:Indica el máximo número de segundos que un paquete puede estar circulando. Cada vez que algún nodo procesa este paquete disminuye su valor en, como mínimo, 1 segundo. Cuando llegue a ser 0, el paquete no será reenviado.
:Indica el máximo número de segundos que un paquete puede estar circulando. Cada vez que algún nodo procesa este paquete disminuye su valor en, como mínimo, 1 segundo. Cuando llegue a ser 0, el paquete no será reenviado.<br>


*<b>Protocolo:</b> 8 bits.<br>
<b>Protocolo:</b> 8 bits.<br>


:Indica el protocolo de siguiente nivel utilizado en la parte de datos del datagrama.<br>
:Indica el protocolo de siguiente nivel utilizado en la parte de datos del datagrama.<br>


*<b>Checksum Cabecera:</b> 16 bits.<br>
<b>Checksum Cabecera:</b> 16 bits.<br>

:Checksum de la cabecera. Se recalcula cada vez que algún nodo cambia alguno de sus campos (por ejemplo, el Tiempo de Vida). El método de cálculo (intencionadamente simple) consiste en sumar el complemento a 1 de cada palabra de 16 bits de la cabecera y hacer el complemento a 1 del valor resultante.<br>

<b>Dirección IP de Origen:</b> 32 bits.<br>

:<i>Ver</i> [[Direccion IP|Direcciones IP]].<br>

<b>Dirección IP de Destino:</b> 32 bits<br>

:<i>Ver</i> [[Direccion IP|Direcciones IP]].<br>

<b>Opciones:</b> Variable.<br>

:Aunque no es obligatoria la utilización de este campo, cualquier nodo debe ser capaz de interpretarlo.<br>

:Puede contener un número indeterminado de opciones, que tendrán dos posibles formatos:<br>

::Simple: Un sólo octeto indicando el "Tipo de Opción":<br>

:::El Tipo de Opción está dividido en 3 campos:<br>

::::Indicador de Copia: 1 bit. En caso de fragmentación, la Opción se copiará o no a cada nuevo fragmento según el valor de este campo:

:::::0=no se copia,

:::::1=se copia.<br>

::::Clase de Opción: 2 bits. Las posibles clases son:

:::::0=control,

:::::1=reservada,

:::::2=depuración y mediciones,

:::::3=reservada.<br>

::::Número de Opción: 5 bits. Identificador de la Opción.<br>

::Compuesto: Un octeto para "Tipo de Opción", otro para "Tamaño de Opción", y uno o más octetos conformando los "Datos de Opción".<br>

:::El Tamaño de Opción incluye el octeto de Tipo de Opción, el de Tamaño de Opción y la suma de los octetos de datos.<br><br>

:La siguiente tabla muestra las opciones actualmente definidas:

:<table BORDER=2 ALIGN="center">

<tr>

<td><b>Clase</b></td><td><b>Número</b></td><td><b>Tamaño</b></td><td><center><b>Descripción</b></center></td></tr>

<tr>

<td>0</td><td>0</td><td>-</td><td>Final de lista de opciones. Formato simple.</tr>

<tr>

<td>0</td><td>1</td><td>-</td><td>Ninguna operación (NOP). Formato simple.</tr>

<tr>

<td>0</td><td>2</td><td>11</td><td>Seguridad.</tr>

<tr>

<td>0</td><td>3</td><td>variable</td><td>Enrutado desde el Origen, abierto (Loose Source Routing).</tr>

<tr>

<td>0</td><td>9</td><td>variable</td><td>Enrutado desde el Origen, estricto (Strict Source Routing).</tr>

<tr>

<td>0</td><td>7</td><td>variable</td><td>Registro de Ruta (Record Route).</tr>

<tr>

<td>0</td><td>8</td><td>4</td><td>Identificador de flujo (Stream ID).</tr>

<tr>

<td>2</td><td>4</td><td>variable</td><td>Marca de tiempo (Internet Timestamping).</tr>

</table><br><br>

:Final de Lista de Opciones:<br>

::Se usa al final de la lista de opciones, si ésta no coincide con el final de la cabecera IP.<br><br>

:Ninguna Operación (NOP):<br>

::Se puede usar para forzar la alineación de las opciones en palabras de 32 bits.<br><br>

:Seguridad:<br>

::Especifica niveles de seguridad que van desde "No Clasificado" hasta "Máximo Secreto", definidos por la Agencia de Seguridad de la Defensa (de EE.UU.).<br><br>

:Enrutado desde el Origen (abierto) y Registro de Ruta (LSSR):<br>

::Esta opción provee el mecanismo para que el originador de un datagrama pueda indicar el itinerario que ha de seguir a través de la red y para registrar el camino seguido.<br>

::Los Datos de Opción consisten en un puntero (un octeto) y una lista de direcciones IP (4 octetos cada una) que se han de alcanzar ("procesar"):<br><br>

:::El puntero indica la posición de la siguiente dirección de la ruta, dentro de la Opción; así, su valor mínimo es de 4.<br>

:::Cuando un nodo de Internet procesa la dirección de la lista apuntada por el puntero (es decir, se alcanza esa dirección) incrementa el puntero en 4, y redirige el paquete a la siguiente direción. Si el puntero llega a ser mayor que el Tamaño de Opción significa que la información de ruta se ha procesado y registrado completamente y se redirigirá el paquete a su dirección de destino.

:::Si se alcanza la dirección de destino antes de haber procesado la lista de direcciones completa (el puntero es menor que el Tamaño de Opción) la siguiente dirección de la lista reemplaza a la dirección de destino del paquete y es a su vez reeemplazada por la dirección del nodo que está procesando el datagrama ("Ruta Registrada"), incrementando, además, el puntero en 4.

:::Utilizando este método de sustituir la dirección especificada en origen por la Ruta Registrada se asegura que el tamaño de la Opción (y de la cabecera IP) no varía durante su recorrido por la red. <br><br>

::Se considera que la ruta especificada por el originador es "abierta" porque cualquier nodo que procesa el paquete es libre de dirigirlo a la siguiente dirección siguiendo cualquier otra ruta intermedia.<br><br>

::Sólo puede usarse una vez en un datagrama, y, en caso de fragmentación, la opción se copiará a los paquetes resultantes.<br><br>

:Enrutado desde el Origen (estricto) y Registro de Ruta (SSRR):<br><br>

::Exactamente igual que LSSR, excepto en el tratamiento que los nodos harán de este datagrama. Al ser la ruta especificada "estricta", un nodo debe reenviar el paquete directamente a la siguiente dirección, es decir, no podrá redireccionarlo por otra red.<br><br>

:Registro de Ruta:<br><br>



<b>Relleno:</b> Variable.<br>

:Utilizado para asegurar que el tamaño, en bits, de la cabecera es un múltiplo de 32. El valor usado es el 0.





Revisión del 18:00 10 oct 2001

La siguiente tabla muestra el formato de las cabeceras IP, según la RFC 791 y, a continuación, una breve descripción de cada campo:

Formato de la Cabecera IP (Versión 4)
0 4 8 16 19 32
Versión
Tamaño Cabecera
Tipo de Servicio
Longitud Total
Identificador
Indicadores
Posición de Fragmento
Tiempo de Vida
Protocolo
Checksum Cabecera
Dirección IP de Origen
Dirección IP de Destino
Opciones
Relleno


Versión: 4 bits.

Este campo describe el formato de la cabecera utilizada. En la tabla se describe la versión 4.

Tamaño Cabecera (IHL): 4 bits.

Longitud de la cabecera, en palabras de 32 bits. Su valor mínimo es de 5 para una cabecera correcta, y el máximo de 15.

Tipo de Servicio: 8 bits.

Indica una serie de parámetros sobre la calidad de servicio deseada durante el tránsito por una red. Algunas redes ofrecen prioridades de servicios, considerando determinado tipo de paquetes "más importantes" que otros (en particular, algunas redes pueden admitir sólo los paquetes con una prioridad alta en momentos de sobrecarga).
Estos 8 bits se agrupan de la siguiente manera:
bits 0-2: Prioridad: Valores altos para prioridades superiores.
bit 3: 0 = Retraso Normal, 1 = Bajo Retraso.
bit 4: 0 = Tránsito Normal, 1 = Tránsito Rápido.
bit 5: 0 = Fiabilidad Normal, 1 = Alta Fiabilidad.
bits 6-7: Reservados para futuros usos.

Longitud Total: 16 bits.

Es el tamaño total, en octetos, del datagrama, incluyendo el tamaño de la cabecera y el de los datos. El tamaño máximo de los datagramas usados normalmente es de 576 octetos (64 de cabeceras y 512 de datos). Una máquina no debería envíar datagramas mayores a no ser que tenga la certeza de que van a ser aceptados por la máquina destino.
En caso de fragmentación este campo contendrá el tamaño del fragmento, no el del datagrama original.

Identificador: 16 bits.

Identificador único del datagrama. Se utilizará, en caso de que el datagrama deba ser fragmentado, para poder distinguir los fragmentos de un datagrama de los de otro. El originador del datagrama debe asegurar un valor único para la pareja origen-destino y el tipo de protocolo durante el tiempo que el datagrama pueda estar activo en la red.

Indicadores: 3 bits.

Actualmente utilizado sólo para especificar valores relativos a la fragmentación de paquetes:
bit 0: Reservado; debe ser 0
bit 1: 0 = Divisible, 1 = No Divisible
bit 2: 0 = Último Fragmento, 1 = Fragmento Intermedio (le siguen más fragmentos)
La indicación de que un paquete es indivisible debe ser tenida en cuenta bajo cualquier circunstancia. Si el paquete necesitara ser fragmentado, no se enviará.

Posición de Fragmento: 13 bits.

En paquetes fragmentados indica la posición, en unidades de 64 bits, que ocupa el paquete actual dentro del datagrama original. El primer paquete de una serie de fragmentos contendrá en este campo el valor 0.

Tiempo de Vida (TTL): 8 bits.

Indica el máximo número de segundos que un paquete puede estar circulando. Cada vez que algún nodo procesa este paquete disminuye su valor en, como mínimo, 1 segundo. Cuando llegue a ser 0, el paquete no será reenviado.

Protocolo: 8 bits.

Indica el protocolo de siguiente nivel utilizado en la parte de datos del datagrama.

Checksum Cabecera: 16 bits.

Checksum de la cabecera. Se recalcula cada vez que algún nodo cambia alguno de sus campos (por ejemplo, el Tiempo de Vida). El método de cálculo (intencionadamente simple) consiste en sumar el complemento a 1 de cada palabra de 16 bits de la cabecera y hacer el complemento a 1 del valor resultante.

Dirección IP de Origen: 32 bits.

Ver Direcciones IP.

Dirección IP de Destino: 32 bits

Ver Direcciones IP.

Opciones: Variable.

Aunque no es obligatoria la utilización de este campo, cualquier nodo debe ser capaz de interpretarlo.
Puede contener un número indeterminado de opciones, que tendrán dos posibles formatos:
Simple: Un sólo octeto indicando el "Tipo de Opción":
El Tipo de Opción está dividido en 3 campos:
Indicador de Copia: 1 bit. En caso de fragmentación, la Opción se copiará o no a cada nuevo fragmento según el valor de este campo:
0=no se copia,
1=se copia.
Clase de Opción: 2 bits. Las posibles clases son:
0=control,
1=reservada,
2=depuración y mediciones,
3=reservada.
Número de Opción: 5 bits. Identificador de la Opción.
Compuesto: Un octeto para "Tipo de Opción", otro para "Tamaño de Opción", y uno o más octetos conformando los "Datos de Opción".
El Tamaño de Opción incluye el octeto de Tipo de Opción, el de Tamaño de Opción y la suma de los octetos de datos.

La siguiente tabla muestra las opciones actualmente definidas:
ClaseNúmeroTamaño
Descripción
00-Final de lista de opciones. Formato simple.
01-Ninguna operación (NOP). Formato simple.
0211Seguridad.
03variableEnrutado desde el Origen, abierto (Loose Source Routing).
09variableEnrutado desde el Origen, estricto (Strict Source Routing).
07variableRegistro de Ruta (Record Route).
084Identificador de flujo (Stream ID).
24variableMarca de tiempo (Internet Timestamping).


Final de Lista de Opciones:
Se usa al final de la lista de opciones, si ésta no coincide con el final de la cabecera IP.

Ninguna Operación (NOP):
Se puede usar para forzar la alineación de las opciones en palabras de 32 bits.

Seguridad:
Especifica niveles de seguridad que van desde "No Clasificado" hasta "Máximo Secreto", definidos por la Agencia de Seguridad de la Defensa (de EE.UU.).

Enrutado desde el Origen (abierto) y Registro de Ruta (LSSR):
Esta opción provee el mecanismo para que el originador de un datagrama pueda indicar el itinerario que ha de seguir a través de la red y para registrar el camino seguido.
Los Datos de Opción consisten en un puntero (un octeto) y una lista de direcciones IP (4 octetos cada una) que se han de alcanzar ("procesar"):

El puntero indica la posición de la siguiente dirección de la ruta, dentro de la Opción; así, su valor mínimo es de 4.
Cuando un nodo de Internet procesa la dirección de la lista apuntada por el puntero (es decir, se alcanza esa dirección) incrementa el puntero en 4, y redirige el paquete a la siguiente direción. Si el puntero llega a ser mayor que el Tamaño de Opción significa que la información de ruta se ha procesado y registrado completamente y se redirigirá el paquete a su dirección de destino.
Si se alcanza la dirección de destino antes de haber procesado la lista de direcciones completa (el puntero es menor que el Tamaño de Opción) la siguiente dirección de la lista reemplaza a la dirección de destino del paquete y es a su vez reeemplazada por la dirección del nodo que está procesando el datagrama ("Ruta Registrada"), incrementando, además, el puntero en 4.
Utilizando este método de sustituir la dirección especificada en origen por la Ruta Registrada se asegura que el tamaño de la Opción (y de la cabecera IP) no varía durante su recorrido por la red.

Se considera que la ruta especificada por el originador es "abierta" porque cualquier nodo que procesa el paquete es libre de dirigirlo a la siguiente dirección siguiendo cualquier otra ruta intermedia.

Sólo puede usarse una vez en un datagrama, y, en caso de fragmentación, la opción se copiará a los paquetes resultantes.

Enrutado desde el Origen (estricto) y Registro de Ruta (SSRR):

Exactamente igual que LSSR, excepto en el tratamiento que los nodos harán de este datagrama. Al ser la ruta especificada "estricta", un nodo debe reenviar el paquete directamente a la siguiente dirección, es decir, no podrá redireccionarlo por otra red.

Registro de Ruta:


Relleno: Variable.

Utilizado para asegurar que el tamaño, en bits, de la cabecera es un múltiplo de 32. El valor usado es el 0.