jueves, 18 de agosto de 2011

Protocolo ip

Protocolo de Internet (IP - Internet Protocol). Protocolo de Internet (IP - Internet Protocol).
El Protocolo de Internet está diseñado como mecanismo de interconexión de redes de comunicación de ordenadores basadas en la conmutación de paquetes. El protocolo de Internet proporciona los medios necesarios para la transmisión de bloques de datos llamados paquetes desde el origen al destino, donde origen y destino son hosts identificados por direcciones de longitud fija.
IP está específicamente limitado para proporcionar las funciones mínimas necesarias para enviar un paquete desde su origen hasta su destino a través de un sistema de redes interconectadas que respeten su estándar. IP no implementa ningún mecanismo dirigido a ofrecer garantías de extemo-a-extremo (end-to-end). Por tanto, no incorpora ni control de flujo, ni garantías de secuenciamiento ni ninguna de las facilidades que se encuentran normalmente en los protocolos end-to-end como TCP. No obstante, IP puede aprovecharse de los servicios ofrecidos por los protocolos de nivel de enlace para proporcionar diferentes tipos de garantías y de calidades de servicio.
Funcionamiento
Este protocolo implementa dos funciones básicas: direccionamiento y fragmentación.
Los routers de Internet utilizan las direcciones que se encuentran en la cabecera de los paquetes IP para transmitirlos hacia su destino. La selección del camino más apropiado para un paquete dado se denomina encaminamiento. Los hosts implicados en una sesión pueden usar diferentes campos en la cabecera IP para fragmentar y reensamblar los paquetes IP cuando éstos deban atravesar redes que requieran un tamaño pequeño para las tramas del nivel de enlace.
El protocolo de Internet utiliza cuatro campos clave para prestar su servicio: el Tipo de Servicio (TOS - Type Of Service), el Tiempo de Vida (TTL - Time To Live), Opciones, y Suma de Control de Cabecera.
El Tipo de Servicio se utiliza para indicar la calidad del servicio deseado. El tipo de servicio es un conjunto abstracto o generalizado de parámetros que se utilizan para determinar de qué modo hay que tratar a cada uno de los paquetes. Así, por ejemplo, el Tipo de Servicio será usado en los routers para seleccionar parámetros de comunicación como, la tecnología de enlace que se utilizará para el siguiente salto, el camino a seguir por el paquete, su prioridad en las colas, etc.
El Tiempo de Vida es una indicación de un límite superior en el periodo de vida de un paquete IP. Es fijado por el remitente del mensaje a un valor inicial, que se reduce en una unidad en todos los routers por los que va atravesando. Si el tiempo de vida alcanza un valor de cero antes de que el paquete llegue a su destino, éste es destruido.
Las Opciones proporcionan funciones de control necesarias o útiles en algunas situaciones pero innecesarias para las comunicaciones más comunes. Las opciones incluyen recursos para marcas de tiempo, seguridad y encaminamiento especial, etc.
La Suma de Control de Cabecera proporciona una verificación de que la información contenida en el paquete ha sido transmitida correctamente. Los datos pueden sufrir alteraciones en la comunicación, por ese motivo se incluye cierta información redundante que contiene una suma de comprobación de los campos de cabecera. Si al recibir un nuevo paquete la suma de comprobación es inválidad, el paquete es descartado inmediatamente por la entidad que detecta el error.
Fiabilidad
El Protocolo de Interntet no proporciona ningún mecanismo de comunicación fiable. No existen acuses de recibo ni entre extremos ni entre saltos. No hay control de errores para los datos, sólo una Suma de Control que chequea exclusivamente la cabecera, además no hay retransmisiones ni existe control de flujo.
Formato de la cabecera IP
A continuación, veremos en la figura [*] un resumen del contenido de la cabecera de los paquetes IP.


Figura: Ejemplo de Cabecera de un paquete IP.
\includegraphics[width= 14cm]{img/ipheader.eps}
Versión (4 bits): El campo Versión describe el formato de la cabecera. La versión más utilizada en la actualidad es la 4.
IHL (4 bits): Longitud de la Cabecera Internet (Internet Header Length), es la longitud de la cabecera en palabras de 32 bits y, por tanto, apunta al comienzo de los datos. El valor mínimo para una cabecera correcta es 5.
Tipo de Servicio (8 bits): El Tipo de Servicio proporciona una indicación de los parámetros abstractos de la calidad de servicio deseada. Estos parámetros se usarán para guiar la selección de los parámetros de servicio reales al transmitir un paquete a través de una red en particular.
Longitud Total (16 bits): La Longitud Total es la longitud del paquete, medida en octetos, incluyendo la cabecera y los datos. Todos los hosts deben estar preparados para aceptar datagramas de hasta 576 octetos (tanto si llegan completos como en fragmentos). Los datagramas de mayor tamaño solamente deben ser enviados si el emisor está seguro de que el receptor es capaz de tratar con este tamaño.
Identificación (16 bits): Es un valor de identificación asignado por el remitente como ayuda en el ensamblaje de fragmentos de un paquete.
Flags (3 bits): Son diversos indicadores de control.
Posición del Fragmento (13 bits): Este campo indica a qué parte del paquete pertenece este fragmento. La posición del fragmento se mide en unidades de 8 octetos (64 bits). El primer fragmento tiene posición 0.
Tiempo de Vida (8 bits): Este campo indica el tiempo máximo que el paquete tiene permitido permanecer en la red. Si este campo contiene el valor cero, entonces el paquete debe ser destruido. Este campo es modificado durante el procesamiento de la cabecera. El tiempo es medido en segundos, pero todo router que procese un paquete debe decrementar el TTL (Time To Live: Tiempo de Vida) al menos en una unidad, incluso si procesa el paquete en menos de un segundo. Por tanto, se debe pensar en el TTL sólo como un límite superior del tiempo durante el cual un paquete puede existir. La intención es hacer que los paquetes que, por algún motivo, no puedan ser entregados sean descartados silenciosamente.
Protocolo (8 bits): Este campo indica el protocolo de nivel de transporte usado en la parte de datos del paquete IP.
Suma de Control de Cabecera (16 bits): Dado que algunos campos de la cabecera cambian (p. ej. el tiempo de vida), esta suma es recalculada y verificada en todo lugar donde la cabecera sea procesada.
Dirección de Origen (32 bits): Incluye la dirección IP de origen.
Dirección de Destino (32 bits): Incluye la dirección IP de destino.
Opciones (longitud variable): Las opciones pueden o no aparecer en los paquetes. Deben ser implementadas por todos los módulos IP (host y routers) aunque es su tratamiento es opcional. Contiene las opciones solicitadas por el usuario que envía los datos y se diseñó para que las versiones posteriores del protocolo pudieran incluir información no considerada originalmente, para que los investigadores pudieran probar nuevos conceptos y para que aquella información que es utilizada en raras ocasiones no tuviera asignada unos bits determinados en la cabecera. Cada una de las opciones empieza con 1 byte que identifica la opción. Algunas de las opciones vienen seguidas de un campo de 1 byte para indicar la longitud de la opción y a continuación uno o mas bytes de datos. Hay seis opciones (Seguridad, Encaminamiento Estricto Desde el Origen, Encaminamiento Libre Desde el Origen, Registrar la Ruta, Identificación de Secuencia, Marca de Tiempo) definidas actualmente, pero no todas son reconocidas por todos los dispositivos de encaminamiento:
  • Seguridad: Permite añadir una etiqueta para indicar lo secreta que es la información que contiene el paquete.
  • Encaminamiento estricto desde el origen: Es una secuencia de direcciones IP que sirve para indicar la trayectoria completa que debe seguir el paquete desde el origen hasta el destino.
  • Encaminamiento libre desde el origen: Es una secuencia de direcciones IP que sirve para indicar que el paquete debe pasar obligatoriamente por esos dispositivos de encaminamiento y en ese orden, aunque también pueda atravesar por otros dispositivos de encaminamiento.
  • Registrar la ruta: Sirve para indicar que los dispositivos de encaminamiento agreguen su dirección IP al campo de opción y de esta manera tener conocimiento de la ruta seguida por el paquete.
  • Identificación de secuencia. Se utiliza cuando hay recursos reservados para un servicio, por ejemplo voz.
  • Sello de tiempo: En este caso, además de registrar las direcciones de los dispositivos de encaminamiento como se hacia en la opción registrar la ruta, se utilizan 32 bits para guardar una marca de tiempo expresada en milisegundos. Esta marca es usada en el presente proyecto.
Relleno (variable): El campo de opciones se rellena para que su tamaño sea múltiplo de 32 bits (4 bytes).
El sello de tiempo
Como anteriormente indicábamos, una de las opciones de la cabecera IP es la transmisión de un sello de tiempo. Esta opción se utiliza indicando el tipo 68 (formato decimal) en el campo correspondiente de las opciones. En la figura [*] se puede apreciar la estructura de la opción de sello de tiempo en una cabecera IP.


Figura: Opción de sello de tiempo en una cabecera IP.
\includegraphics[width= 12cm]{img/ip_timestamp.eps}
La Longitud de opción es el número de octetos en la opción contando tipo, longitud, puntero y desbordamiento/indicadores (oflw/flg, overflow/flags).
El puntero es el número de octetos desde el principio de esta opción hasta el final de los sellos de tiempo mas uno (es decir, apunta al octeto de comienzo del espacio para el siguiente sello de tiempo). El valor legal mínimo es 5.
El Protocolo de Internet está diseñado como mecanismo de interconexión de redes de comunicación de ordenadores basadas en la conmutación de paquetes. El protocolo de Internet proporciona los medios necesarios para la transmisión de bloques de datos llamados paquetes desde el origen al destino, donde origen y destino son hosts identificados por direcciones de longitud fija.
IP está específicamente limitado para proporcionar las funciones mínimas necesarias para enviar un paquete desde su origen hasta su destino a través de un sistema de redes interconectadas que respeten su estándar. IP no implementa ningún mecanismo dirigido a ofrecer garantías de extemo-a-extremo (end-to-end). Por tanto, no incorpora ni control de flujo, ni garantías de secuenciamiento ni ninguna de las facilidades que se encuentran normalmente en los protocolos end-to-end como TCP. No obstante, IP puede aprovecharse de los servicios ofrecidos por los protocolos de nivel de enlace para proporcionar diferentes tipos de garantías y de calidades de servicio.
Funcionamiento
Este protocolo implementa dos funciones básicas: direccionamiento y fragmentación.
Los routers de Internet utilizan las direcciones que se encuentran en la cabecera de los paquetes IP para transmitirlos hacia su destino. La selección del camino más apropiado para un paquete dado se denomina encaminamiento. Los hosts implicados en una sesión pueden usar diferentes campos en la cabecera IP para fragmentar y reensamblar los paquetes IP cuando éstos deban atravesar redes que requieran un tamaño pequeño para las tramas del nivel de enlace.
El protocolo de Internet utiliza cuatro campos clave para prestar su servicio: el Tipo de Servicio (TOS - Type Of Service), el Tiempo de Vida (TTL - Time To Live), Opciones, y Suma de Control de Cabecera.
El Tipo de Servicio se utiliza para indicar la calidad del servicio deseado. El tipo de servicio es un conjunto abstracto o generalizado de parámetros que se utilizan para determinar de qué modo hay que tratar a cada uno de los paquetes. Así, por ejemplo, el Tipo de Servicio será usado en los routers para seleccionar parámetros de comunicación como, la tecnología de enlace que se utilizará para el siguiente salto, el camino a seguir por el paquete, su prioridad en las colas, etc.
El Tiempo de Vida es una indicación de un límite superior en el periodo de vida de un paquete IP. Es fijado por el remitente del mensaje a un valor inicial, que se reduce en una unidad en todos los routers por los que va atravesando. Si el tiempo de vida alcanza un valor de cero antes de que el paquete llegue a su destino, éste es destruido.
Las Opciones proporcionan funciones de control necesarias o útiles en algunas situaciones pero innecesarias para las comunicaciones más comunes. Las opciones incluyen recursos para marcas de tiempo, seguridad y encaminamiento especial, etc.
La Suma de Control de Cabecera proporciona una verificación de que la información contenida en el paquete ha sido transmitida correctamente. Los datos pueden sufrir alteraciones en la comunicación, por ese motivo se incluye cierta información redundante que contiene una suma de comprobación de los campos de cabecera. Si al recibir un nuevo paquete la suma de comprobación es inválidad, el paquete es descartado inmediatamente por la entidad que detecta el error.
Fiabilidad
El Protocolo de Interntet no proporciona ningún mecanismo de comunicación fiable. No existen acuses de recibo ni entre extremos ni entre saltos. No hay control de errores para los datos, sólo una Suma de Control que chequea exclusivamente la cabecera, además no hay retransmisiones ni existe control de flujo.
Formato de la cabecera IP
A continuación, veremos en la figura [*] un resumen del contenido de la cabecera de los paquetes IP.


Figura: Ejemplo de Cabecera de un paquete IP.
\includegraphics[width= 14cm]{img/ipheader.eps}
Versión (4 bits): El campo Versión describe el formato de la cabecera. La versión más utilizada en la actualidad es la 4.
IHL (4 bits): Longitud de la Cabecera Internet (Internet Header Length), es la longitud de la cabecera en palabras de 32 bits y, por tanto, apunta al comienzo de los datos. El valor mínimo para una cabecera correcta es 5.
Tipo de Servicio (8 bits): El Tipo de Servicio proporciona una indicación de los parámetros abstractos de la calidad de servicio deseada. Estos parámetros se usarán para guiar la selección de los parámetros de servicio reales al transmitir un paquete a través de una red en particular.
Longitud Total (16 bits): La Longitud Total es la longitud del paquete, medida en octetos, incluyendo la cabecera y los datos. Todos los hosts deben estar preparados para aceptar datagramas de hasta 576 octetos (tanto si llegan completos como en fragmentos). Los datagramas de mayor tamaño solamente deben ser enviados si el emisor está seguro de que el receptor es capaz de tratar con este tamaño.
Identificación (16 bits): Es un valor de identificación asignado por el remitente como ayuda en el ensamblaje de fragmentos de un paquete.
Flags (3 bits): Son diversos indicadores de control.
Posición del Fragmento (13 bits): Este campo indica a qué parte del paquete pertenece este fragmento. La posición del fragmento se mide en unidades de 8 octetos (64 bits). El primer fragmento tiene posición 0.
Tiempo de Vida (8 bits): Este campo indica el tiempo máximo que el paquete tiene permitido permanecer en la red. Si este campo contiene el valor cero, entonces el paquete debe ser destruido. Este campo es modificado durante el procesamiento de la cabecera. El tiempo es medido en segundos, pero todo router que procese un paquete debe decrementar el TTL (Time To Live: Tiempo de Vida) al menos en una unidad, incluso si procesa el paquete en menos de un segundo. Por tanto, se debe pensar en el TTL sólo como un límite superior del tiempo durante el cual un paquete puede existir. La intención es hacer que los paquetes que, por algún motivo, no puedan ser entregados sean descartados silenciosamente.
Protocolo (8 bits): Este campo indica el protocolo de nivel de transporte usado en la parte de datos del paquete IP.
Suma de Control de Cabecera (16 bits): Dado que algunos campos de la cabecera cambian (p. ej. el tiempo de vida), esta suma es recalculada y verificada en todo lugar donde la cabecera sea procesada.
Dirección de Origen (32 bits): Incluye la dirección IP de origen.
Dirección de Destino (32 bits): Incluye la dirección IP de destino.
Opciones (longitud variable): Las opciones pueden o no aparecer en los paquetes. Deben ser implementadas por todos los módulos IP (host y routers) aunque es su tratamiento es opcional. Contiene las opciones solicitadas por el usuario que envía los datos y se diseñó para que las versiones posteriores del protocolo pudieran incluir información no considerada originalmente, para que los investigadores pudieran probar nuevos conceptos y para que aquella información que es utilizada en raras ocasiones no tuviera asignada unos bits determinados en la cabecera. Cada una de las opciones empieza con 1 byte que identifica la opción. Algunas de las opciones vienen seguidas de un campo de 1 byte para indicar la longitud de la opción y a continuación uno o mas bytes de datos. Hay seis opciones (Seguridad, Encaminamiento Estricto Desde el Origen, Encaminamiento Libre Desde el Origen, Registrar la Ruta, Identificación de Secuencia, Marca de Tiempo) definidas actualmente, pero no todas son reconocidas por todos los dispositivos de encaminamiento:
  • Seguridad: Permite añadir una etiqueta para indicar lo secreta que es la información que contiene el paquete.
  • Encaminamiento estricto desde el origen: Es una secuencia de direcciones IP que sirve para indicar la trayectoria completa que debe seguir el paquete desde el origen hasta el destino.
  • Encaminamiento libre desde el origen: Es una secuencia de direcciones IP que sirve para indicar que el paquete debe pasar obligatoriamente por esos dispositivos de encaminamiento y en ese orden, aunque también pueda atravesar por otros dispositivos de encaminamiento.
  • Registrar la ruta: Sirve para indicar que los dispositivos de encaminamiento agreguen su dirección IP al campo de opción y de esta manera tener conocimiento de la ruta seguida por el paquete.
  • Identificación de secuencia. Se utiliza cuando hay recursos reservados para un servicio, por ejemplo voz.
  • Sello de tiempo: En este caso, además de registrar las direcciones de los dispositivos de encaminamiento como se hacia en la opción registrar la ruta, se utilizan 32 bits para guardar una marca de tiempo expresada en milisegundos. Esta marca es usada en el presente proyecto.
Relleno (variable): El campo de opciones se rellena para que su tamaño sea múltiplo de 32 bits (4 bytes).
El sello de tiempo
Como anteriormente indicábamos, una de las opciones de la cabecera IP es la transmisión de un sello de tiempo. Esta opción se utiliza indicando el tipo 68 (formato decimal) en el campo correspondiente de las opciones. En la figura [*] se puede apreciar la estructura de la opción de sello de tiempo en una cabecera IP.


Figura: Opción de sello de tiempo en una cabecera IP.
\includegraphics[width= 12cm]{img/ip_timestamp.eps}
La Longitud de opción es el número de octetos en la opción contando tipo, longitud, puntero y desbordamiento/indicadores (oflw/flg, overflow/flags).
El puntero es el número de octetos desde el principio de esta opción hasta el final de los sellos de tiempo mas uno (es decir, apunta al octeto de comienzo del espacio para el siguiente sello de tiempo). El valor legal mínimo es 5.

Clases de direcciones del protocolo de Internet (IP)

Las clases de direcciones del protocolo de Internet (IP) de uso común actualmente son tres: Clases A, B, C, y D y E. La clase de dirección determina cuántos sistemas principales pueden existir en una red. Puede utilizar el valor del primer octeto para determinar la clase de red. Los valores posibles para el primer octeto son:
  • Clase A (Rango de direcciones 0 - 127):
    • 127 redes con un máximo de 16.777.216 sistemas principales cada una.
    • Pensada para utilizarse con un número amplio de sistemas principales.
    • La máscara de red es 255.0.0.0.
  • Clase B (Rango de direcciones 128 - 191):
    • 16.384 redes con un máximo de 65.536 sistemas principales cada una.
    • Pensada para utilizarse con un número medio de sistemas principales.
    • La máscara de red es 255.255.0.0.
  • Clase C (Rango de direcciones 192 - 223):
    • 2.097.152 redes con un máximo de 254 sistemas principales cada una (0 y 255 están reservados).
    • Pensada para utilizarse con un número menor de sistemas principales.
    • La máscara de red es 255.255.255.0.
    • Es el tipo de dirección más corriente emitido por un suministrador de servicios de Internet (ISP).
  • Clases D y E (Rango de direcciones 224 - 255):
    • La Autoridad de Asignación de Números de Internet (IANA) ha reservado estas clases para uso futuro.

No hay comentarios:

Publicar un comentario