Protocolos de Red Actuales

Santiago Balaguer García

valiss@nisu.org
 
 

Resumen

En este documento se intentará explicar la problemática existente con el actual protocolo de Internet, IPv4. Se describirán sus campos y examinaremos sus características más importantes.

Como solución posible, se analizará el protocolo de Internet IPv6 que representa la solución a aplicar.

Índice

Introduccion_a_la_capa_de_red

Protocolo_IP

Cabecera_del_IPv4

Direcciones_IP

Protocolo_de_Internet_IPv6 Necesidad_de_un_nuevo_protocolo

Nacimiento_del_nuevo_IPv6

Cabecera_básica del_IPv6

Cabeceras_de_extensión

cabecera_de_autentificacion

cabecera_de_encapsulación

Espacio_direcciones_del_IPv6

Consideraciones_de_seguridad

Autentificacion

Encriptación

Comparación_de_IPv4_y_IPv6
Resultados

Conclusión

Referencias

Bibliografia

Algunas_páginas_visitadas


Introducción a la Capa de Red en Internet

En la capa de red, Internet puede verse como un conjunto de subredes, o sistemas autónomos interconectados. No hay una estructura real, pero existen varios backbones (columnas vertebrales) principales. Éstos se constituyen a partir de líneas de alto ancho de banda y enrutadores rápidos, lo que permite un mayor flujo de información por la red que se equipararían a autopistas. Conectadas a los backbone hay redes regionales, y conectadas a éstas están las L.A.N. (Local Area Network, redes de área local) de muchas universidades, compañías y proveedores de servicio Internet.

El pegamento que mantiene unida Internet es el protocolo de red, IP (Internet Protocol, protocolo de Internet) versión 4. A diferencia de la mayoría de protocolos de la capa de red anteriores, éste se diseñó desde el principio con la interconexión de redes en mente, Una buena manera de visualizar la capa de red es ver que su trabajo es proporcionar un medio de mejor esfuerzo para el transporte de paquetes desde el origen al destino (figura 1), sin importar si estas máquinas están en la misma red, o si hay otras redes entre ellas.

Host A
Host B
Capa de Aplicación
Capa de Aplicación
Capa de Transporte
Capa de Transporte
Capa de Red
Capa de Red
Capa de Enlace de Datos
Capa de Enlace de Datos
Capa Física
Capa Física
Figura 1. Pila de Protocolos

La comunicación en Internet funciona de la siguiente manera: la capa de transporte toma corrientes de datos y las divide en paquetes. En teoría, los paquetes pueden ser de hasta 64 kilobytes cada uno, pero en la práctica por lo general son de unos 1500 bytes. Cada datagrama se transmite a través de Internet, posiblemente fragmentándose en unidades más pequeñas en el camino de destino, son reensambladas por la capa de red, dejando el datagrama original. Este paquete entonces es entregado a la capa de transporte, que lo introduce en la corriente de entrada del proceso receptor.


 
 

- El protocolo IP -

Cabecera del IPv4

Un lugar adecuado para comenzar nuestro estudio de la capa de red de Internet es el formato de los paquetes que, desde ahora, llamaremos datagramas de IP. Un datagrama IP consiste en una parte de cabecera y una parte de texto. La cabecera tiene una parte fija de 20 bytes y una parte opcional de longitud variable. El formato de la cabecera se muestra en la figura 2. Se retransmite en orden big endian, o sea, de izquierda a derecha, comenzando por el bit de orden mayor del campo versión. Si las máquinas siguiesen únicamente little endian, se requeriría una conversión por software tanto para la transmisión como para la recepción.

Versión
IHL Tipo de servicio Longitud total
Identificación
DF MF Desplazamiento del Fragmento
Tiempo de vida
Protocolo Suma de comprobación de la cabecera
Dirección de origen
Dirección de destino
Opciones (0 o más palabras)
Figura 2. La cabecera de IP.

 Ahora describiremos los diferentes campos de los que consta la cabecera de IP:

Hemos nombrado los primeros 32 bits de cabecera, los que hacen referencia a la funcionalidad de IP. Como se ha podido ver este protocolo puede ocupar hasta 65.535 bytes, este puede ser un tamaño excesivo para algunas redes (puede haber redes que sólo tengan un ancho de banda de 100 bytes/seg.). En estos casos en que no quepan en la red, se ha optado por la solución de fragmentar los datagramas en segmentos más pequeños. Este será el uso de los próximos 32 bits: Seguridad: indica cómo de secreta es la información. Normalmente es usada por enrutadores militares para hacer que el datagrama no pase por enrutadores enemigos, sin embargo, la mayoría de enrutadores ignoran esta opción y ayuda a los espías a conseguir información importante con mayor facilidad.

enrutamiento estricto desde el origen: mediante esta opción se da la trayectoria exacta que debe seguir un datagrama desde el origen al destino como secuencia de direcciones IP. Usado normalmente cuando las tablas de enrutamiento se han corrompido.

enrutamiento libre desde el origen: en esta opción, se indica también una lista de enrutadores por donde debe ir el paquete, aunque se permite que vaya por otros enrutadores en el camino.

registrar ruta: indica a los enrutadores a lo largo de la trayectoria que añadan su dirección IP al campo opción. Esto permite a los administradores del sistema buscar fallos en los algoritmos de encaminamiento.

marca de tiempo: similar la opción registrar ruta, excepto que además de la dirección IP también se almacena en el campo opción una marca de tiempo. Usado también para la búsqueda de fallas en los algoritmos de encaminamiento.

Direcciones IP

Cada host y enrutador de Internet tiene su propia y única dirección de IP, que codifica su número de red y su número de host. La combinación es única: no hay dos máquinas que tengan la misma dirección de IP. Todas las direcciones de IP son de 32 bits de longitud y se usan en los campos de dirección de origen y dirección de destino de los paquetes IP. Los formatos usados para las direcciones IP están agrupados en diferentes clases tal como se puede observar en la figura 3.
 
 

A
0
Red
Host
0 a 127.255.255.255
B
10
Red
Host
128.0.0.0 a 191.255.255.255
C
110
Red
Host
192.0.0.0 a 223.255.255.255
D
1110
Dirección de multitransmisión
224.0.0.0 a 239.255.255.255
E
11110 
Reservado para uso futuro
240.0.0.0 a 247.255.255.255
Figura 3. Formatos de dirección IP

A partir de aquí, se plantea la pregunta de qué diferencia existe entre los formatos. La diferencia está en los primeros bits de cada formato. Dependiendo del número de bits usados tendremos un formato u otro. Esto tiene mucho que ver en el número de redes y de estaciones que puede soportar cada uno.

De esta manera, el formato de clase A usará un bit para el formato, 7 para el número de red y 16 para el número de estación, lo que significa que permite hasta 126 redes con 16 millones de estaciones cada una.

Las de clase B usan 2 bits para formato de dirección IP, 14 para red y 16 para identificar host. Llegará a tener hasta 16.382 redes con 64 mil hosts.

Las de clase C dispondrán 3 bits de formato, 21 bits para red y 8 para host. Lo que da lugar a 2 millones de redes con 254 hosts cada una.

El formato clase D es el de multitransmisión, el cual dirige un datagrama a múltiples hosts.

El formato clase E, direcciones que comienzan por 11110 se reservan para el futuro.

Como hay decenas de miles de redes conectadas a Internet en el mundo, los números de red deben ser asignados correctamente para evitar conflictos. De esto se encarga el NIC (Network Information Centre) o centro de información de redes.

Las direcciones de red, que son numero de 32 bits, generalmente se escriben con notación decimal con puntos. En este formato, cada uno de los 4 bytes se escribe en decimal de 0 a 255, máximo valor representable con 8 bits. De esta manera, la dirección hexadecimal 96802864 correspondería a anubis que tiene como dirección IP 150.128.40.100. La dirección de IP menor es la 0.0.0.0 y la mayor 255.255.255.255.

Sin embargo, 2 existen direcciones con significado especial y, por lo tanto, no podrán identificar ninguna red u host específico. La dirección de IP 0.0.0.0 es usada por los hosts cuando están siendo arrancados, sirve para identificar a la propia red. Las direcciones de IP con 0 como número de red se refieren a la red actual. Estas direcciones permiten que las máquinas se refieran a su propia red sin tener que saber su número. La dirección que consiste en todo unos, es una dirección de broadcast permite la difusión de mensajes a todos los hosts de su L.A.N. y estas a su vez, si están activos, le contestaran. Las direcciones con un número de red y todo unos permiten que las maquinas envíen paquetes de broadcast a LAN distantes desde cualquier punto de Internet. Por último, todas las direcciones de la forma 127.xx.yy.zz se reservan para pruebas dentro de la propia máquina, los paquetes que se envíen a la red local sin que el emisor conozca su número.
 
 



 
 

- El protocolo de Internet IPv6 -

Necesidad de un nuevo protocolo de IP

Hasta hace poco, Internet había sido utilizada en gran medida únicamente por universidades, industrias de alta tecnología y el gobierno. Con la explosión del interés por la red que comenzó, principalmente, a mediados de los años 90, es muy posible que en este milenio sea utilizada por un grupo mucho más grande de gente. Por una parte, millones de personas con computadoras portátiles inalámbricas podrían mantenerse en contacto constante con otras personas o entidades como podrían ser servidores de bases de datos. Por otra, con la inminente convergencia de las industrias de la computación, las comunicaciones y el entretenimiento, tal vez no pase mucho tiempo antes de que todos los electrodomésticos de casa estén conectados a un nodo de Internet, lo que produciría millones de máquinas utilizándola. En estas circunstancias, se hizo evidente que el IP tenía que evolucionas y volverse más flexible.

Viendo tales perspectivas de borrasca, el IETF (Internet Engeneering Task Force, Fuerza de Trabajo de Ingeniería de Internet) comenzó a trabajar en 1990 en una versión nueva del IP, una que nunca se quedara sin direcciones, resolviera varios otros problemas y fuera mucho más flexible y eficiente a la vez. De esta manera se establecieron unas metas a cumplir:

  1. Manejar miles de millones de hosts, aún con asignación de espacio de direcciones ineficiente.
  2. Reducir el tamaño de las tablas de enrutamiento.
  3. Simplificar el protocolo, para permitir a los enrutadores el procesamiento más rápido de los paquetes.
  4. Proporcionar mayor seguridad (verificación de autenticidad y confidencialidad) que el IP actual.
  5. Prestar mayor atención de servicio, especialmente con datos en tiempo real.
  6. Ayudar a la multitransmisión permitiendo la especificación de alcances.
  7. Posibilitar que un host sea móvil son cambiar su dirección.
  8. Permitir que el protocolo evolucione.
  9. Permitir que el protocolo viejo y el nuevo coexistan por algunos años.

Nacimiento del nuevo IPv6

Para encontrar un protocolo que cumpliera con todos estos requisitos, la IETF hizo una convocatoria solicitando propuestas y estudios sobre protocolo anteriores. Se recibieron 21 propuestas, no todas propuestas completas. En diciembre de 1992 había siete propuestas serias sobre la mesa; iban desde hacer cambios menores al IP hasta desecharlo y reemplazarlo por un protocolo completamente diferente.

Tres de las mejores propuestas se publicaron en IEEE Network [Deering,1993; Francis,1993, y Katz y Ford,1993]. Tras muchos años de análisis, revisiones e intrigas, se seleccionó una versión modificada combinación de las propuestas de Deering y Francis, llamada ahora SIPP (Simple Internet Protocol Plus, protocolo simple de Internet mejorado), y se le designó como IPv6. Se desarrollaron características del IPv5 que estaba usándose con un protocolo experimental de flujos en tiempo real.

El IPv6 cumple los objetivos bastante bien: mantiene las buenas características del protocolo IP, descarta y reduce las malas, y agrega algunas nuevas. Realmente este protocolo no es compatible con el IPv4, pero si lo es con todos los demás protocolos de Internet, incluidos TCP, UDP, ICMP, OSPF y DNS, a veces requiriendo pequeñas modificaciones. Las características principales del IPv6 se analizarán a continuación.

Primero y principal, el IPv6 tiene direcciones más grandes que el IPv4; pasan de una longitud de 4 bytes a 16 bytes, lo que resuelve el problema propuesto: proporcionar una cantidad prácticamente ilimitada de direcciones Internet.

La segunda mejora principal es la simplificación de la cabecera, que contiene únicamente 7 campos, en contraposición del IPv4 que poseía 13. Este cambio permite a los enrutadores procesar con mayor rapidez los paquetes y mejorar el rendimiento.

La tercera mejora importante es el mejor apoyo del campo opciones. Este cambio fue esencial con la nueva cabecera, pues campos que antes eran obligatorios ahora son opcionales. Además, es diferente la manera de representar las opciones, haciendo más sencillo que los enrutadores hagan caso omiso de opciones no dirigidas a ellos. Esta característica mejora el tiempo de procesamiento de los paquetes.

Una cuarta mejora es que se tenía que prestar mayor atención al tipo de servicio. El IPv4, de hecho, tiene un campo de 8 bits dedicado a este asunto, pero con el crecimiento esperado del tráfico multimedia en el futuro, se requerirá mucho mas espacio.

Por último y más importante, el IPv6 representa un avance importante es la seguridad. Las verificaciones de autenticidad y confidencialidad son características clave del IP nuevo. IPv6 implementa DES (Data Encription Standart) que usa un algoritmo de suma de comprobación de primer nivel para una perfecta verificación de autenticidad. Y para mantener el secreto confidencial, codifica un algoritmo debilucho, pero el usuario puede reemplazarlo por el suyo propio.

Cabecera principal del IPv6

El paquete IPv6 (figura 4) es llevado a través de una trama de red local como el de IPv4. Sin embargo, la cabecera de IPv6 está formada por dos partes: la cabecera base de IPv6 más cabecera de extensión opcionales.

Cabecera base de IPv6
Cabeceras de extensión

(opcional)

Cabeceras UDP o TCP
Datos de aplicación
Figura 4. Paquete IPv6

 

La cabecera del IPv6 se muestra en la figura 5. Esta cabecera aparecerá obligatoriamente en todos los datagramas y poseerá un tamaño fijo de 40 bytes.

Versión
Prioridad
Etiqueta de flujo
Longitud de carga útil
Siguiente cabecera
Limite de saltos
Dirección de origen

(16 bytes)

Dirección de destino

(16 bytes)

Figura 5. Cabecera de IPv6

Como se ve tiene menos campos que la versión anterior. A continuación explicaremos el significado de cada campo:

Cabeceras de extensión

El diseño IPv6 simplifica la cabecera ya existente de IPv4 por cabeceras de extensión opcionales. Esto es así porque procesar paquetes normales no es complicado ni produce sobrecarga, mientras que en situaciones más complejas posiblemente si que la daría.

Nos centraremos especialmente en las cabeceras de extensión que tienen que relación directa con la seguridad de IPv6. Estas cabeceras pueden ser de dos tipos: la cabecera de autenticación definida en el RFC 2402 y la cabecera de encapsulación de seguridad de la carga útil definida en el RFC 2406. Se tratará de explicar ambas cabeceras pero sin llegar a las especificaciones completas en los vastos documentos RFC.

 
  1. Cabecera de Autenticación
Esta extensión provee integridad sin conexión y autenticación de datos desde el origen, además de protección contra paquetes replicados. La presencia de la cabecera de autenticación es detectada por el valor 51 en el campo de Siguiente Cabecera. Dicha cabecera posee seis campos mostrados en la figura 6.
Siguiente cabecera
Longitud de la carga 
Reservado
Indice de parámetros de seguridad (SPI)
Número de secuencia
Datos de autenticación

(longitud variable)

Figura 6. Formato de la cabecera de autenticación
Esta extensión tiene pocos campos para una mejor gestión y los explicaremos a continuación:
 
  1. Cabecera de Encapsulación de Seguridad de la Carga Útil
La propuesta de la extensión de encapsulación de la carga útil o ESP (Encapsulating Security Payload) es para dar atentificación del origen, integridad sin conexión, un servicio de no replicación de paquetes y una cierta confidencialidad en el flujo de paquetes. Estos servicios estarán también, como el caso anterior, dependerán de la asociación de seguridad y de su implementación. Dentro del campo siguiente cabecera esta extensión se identificará con el valor 50 de la cabecera precedente y su formato vendrá dado en la figura 7 y son palabras de 32 bits.
Indice de parámetros de seguridad
Número de secuencia
Carga útil (variable)
Relleno (0-255 bytes)
Longitud del relleno
Siguiente cabecera
Dados de autenticación

(variable)

Figura 7. Formato de la cabecera de encapsulación de seguridad de la carga útil

Esta cabecera contiene siete campos, algunos de los cuales son obligatorios y otros opcionales dependiendo de la SA.


 
 

El espacio de direccionamiento del IPv6 y algunas consideraciones

El espacio de direccionamiento del IPv6 se divide como se muestra en la figura 8.

Prefijo (binario)
Uso
Fracción
0000 0000 Reservado (incluye IPv4) 1/256
0000 0001 No asignado 1/256
0000 001 Direcciones OSI NSAP 1/128
0000 010 Direcciones IPX de Novell Netware 1/128
0000 011 No asignado 1/128
0000 1 No asignado 1/32
0001 No asignado 1/16
001 No asignado 1/8
010 Direcciones basadas en proveedor 1/8
011 No asignado 1/8
100 Direcciones basadas en geografía 1/8
101 No asignado 1/8
110 No asignado 1/8
1110 No asignado 1/16
1111 0 No asignado 1/32
1111 10 No asignado 1/64
1111 110 No asignado 1/128
1111 1110 0 No asignado 1/512
1111 1110 10 Direcciones de enlace de uso local 1/1024
1111 1110 11 Direcciones de instalación de uso local 1/1024
1111 1111 Multitransmisión 1/256
Figura 8. Direcciones IPv6

Las direcciones comienzan por 80 ceros se reservan para el antiguo IPv4. Se reconocen dos variantes, distinguidas por los siguientes 16 bits. Estas variantes se relaciona con la manera en que se enviarán por el túnel los paquetes IPv6 a través de la infraestructura IPv4 existente.

El uso de distintos prefijos para las direcciones basadas en el proveedor y las basadas en la geografía es una medida entre dos diferentes visiones del futuro de Internet. Las direcciones basadas en el proveedor tienen sentido si se piensa que en el futuro habrá algunas compañías que proporcionarán servicio Internet a sus clientes, lo que es parecido al servicio que prestan actualmente AT&T, Sprint, British Telecom y otras. Cada una de estas compañías tendrá una fracción del espacio de direcciones. Los primeros 5 bits que siguen al prefijo 010 sirven para indicar el registro donde se debe buscar al proveedor. Actualmente operan tras registros, para Norteamérica, Europa y Asia. Además, pueden agregarse 29 nuevos registros posteriormente.

Cada registro está en libertad de dividir los 15 bytes restantes como crea conveniente. Se permite que una compañía grande actúa como su propio proveedor. Otra posibilidad es el uso de 1 bytes para indicar proveedores nacionales y dejar efectuar asignaciones posteriores. De esta manera, se pueden introducirse niveles de jerarquía, si es necesario.

El modelo geográfico es el mismo que el actual de Internet, en el que los proveedores no desempeñan un papel importante. De esta manera, el IPv6 puede manejar ambos tipos de direcciones.

Las direcciones locales de enlace e instalación sólo tienen significado en la propia máquina; pueden reutilizarse dentro de la propia organización, pero no pueden propagarse fuera de los límites de la organización. Usado por algunas como muro de seguridad.

Las direcciones de multitransmisión usadas para propagar un mensaje a todos los hosts de una subred.

Además de manejar unitransmisión y multitransmisión, el IPv6 también posee un nuevo tipo de direccinamiento: transmisión a cualquiera. La transmisión a cualquiera (anycasting) es como la multitransmisión, en el sentido en que el destino es un grupo de direcciones, pero en lugar de tratar de entregar el paquete a todos, intenta entregarlo a uno solo. Por ejemplo, al ponerse en contacto con un grupo de servidores de archivos cooperativos, un cliente puede usar la transmisión a cualquiera para llegar al más cercano sin tener que saber quién es.

Se ha desarrollado una nueva notación para escribir direcciones de 16 bytes: se escriben como ocho grupos de cuatro dígitos hexadecimales, separados por dos puntos:

8000:0000:0000:0000:0123:4567:89AB:CDEF

Ya que muchas direcciones tendrán muchos ceros en ellas, se han autorizado tres optimizaciones. Primero, los ceros de la izquierda de un grupo pueden omitirse, por los tanto, 0123 puede escribirse como 123, y la dirección anterior se vuelve:

8000::0123:4567:89AB:CDEF
 
 

Consideraciones de seguridad

Como ya describimos antes, IPv6 posee en su implementación dos cabeceras de extensión especiales para la seguridad: la de autenticación (AH) y la de cifrado (ESP). Estas dos opciones forman parte del trabajo en desarrollo de la seguridad IP, también denominada con la abreviatura IPsec (IP secutiry), la cual proporciona direcciones a las aplicaciones tanto del IPv4 como del IPv6.

La autenticación y el cifrado funcionan por separado, así se puede dar que un paquete sólo este cifrado, sólo autenticado o ambas cosas. Las implementaciones realizadas contemplan todos estos casos y se las pueden proporcionar a la capa superior de aplicación. Por ejemplo, en algunos países, como hasta hace poco los putos yanquis, la encriptación estaba restringida por el gobierno, o algunas aplicaciones únicamente requieren que el usuario sea quien dice ser como en el caso de transferencias bancarias.

Arquitectura de seguridad IP

La meta de la seguridad IP (IPsec) es proporcionar interoperatividad, criptografía basada en la seguridad de IPv4 y de IPv6. Desde que estas funciones de seguridad se emplean en la capa de red, se da protección tanto a IP como a las capas superiores. De esta manera, IPsec proporciona un sistema para seleccionar los protocolos de seguridad requeridos, determinar los algoritmos que se usarán en cada servicio, e implementar cualquier sistema de llaves criptográficas que serán necesarias para satisfacer estos servicios. Para esto IPsec protege la comunicación entre dos hosts, entre dos gateways o entre un host y un gateway seguro.

Toda la arquitectura de seguridad de IPv6 está definida en el documento RFC 2401. Este largo documento se puede resumir en las siguientes definiciones:

Además de estas definiciones, tenemos que tratar con más profundidad el tema de las Asociaciones de Seguridad y sus dos modos de funcionar ya que ellas son un eslabón muy importante en la seguridad, y la manera en la que la encriptación y la autenticación está implementado dentro de ellas.
 
 

Asociaciones de Seguridad

Una asociación de seguridad es una conexión lógica en un único sentido que proporciona servicios seguros a todo el tráfico que va por esa conexión. Esos servicios pueden ser bien de autenticación, bien de encriptación, pero no ambos. Para obtener ambos es necesaria requerir el servicio de dos SAs.

Se definen dos tipos de SAs: modo transporte y modo túnel. Las SA de modo transporte se establecen entre dos hosts. Para funcionar en dicho modo, la cabecera de extensión de seguridad (AH o ESP) aparecerá después de la cabecera principal de IP junto con cualquier otras de extensión. Cuando AH es utilizado en modo transporte, la seguridad se da a los trozos del paquete que llevan la cabecera IP y a los protocolos de capas superiores. Pero cuando se usa ESP en este modo, la seguridad se da únicamente a los protocolos de capas superiores.

En modo túnel la asociación de seguridad es aplicada a un túnel, o sea, entre dos extremos de una red. Para llevar a cabo éste, una boca del túnel debe ser un gateway de seguridad, es más cuando un gateway de seguridad esta implicado solo se puede utilizar este tipo. Si ambos lados del túnel son hosts, ni el modo túnel ni el modo transporte pueden ser aplicados. Para el modo túnel, existe dos tipos de cabecera IP: una cabecera exterior que especifica el destino del proceso IPsec, una cabecera interna que identifica el destino último que lleva el paquete. Cuando AH es utilizado se asegura la conexión dentro de la cabecera IP además de todos los paquetes de dentro del túnel, Sin embargo, cuando ESP es empleado, la seguridad solo se concentra en los paquetes de dentro del túnel.
 
 

Autenticación

La cabecera de autenticación (AH) provee integridad sin conexión, atentificación de datos desde el origen, y un servicio opcional de paquetes replicados. La AH está definida en el RFC2402, y fue implementada de dos formas: en modo transporte cuando la comunicación se realiza entre hots y en modo túnel cuando se produce entre un host y gateways de seguridad o entre dos hosts. La AH es una protocolo apropiado a implementar cuando la confidencialidad no es requerida, o no permitida (según gobiernos).

Hay que decir que tanto el ESP como el AH proveen autenticación. La principal diferencia entre los servicios de autenticación proveídos por los dos protocolos es la extensión de su alcance. ESP no protege ninguna campo de IPv6 a menos que esos campos están encapsulados con ESP. Por el contrario, AH puede tener un mayor alcance.

En modo transporte, AH se considera un carga de extremo a extremo, y entonces debe ser recalculado después de cada salto en cada router por el que pase, enrutamiento realizado o fragmentación de sus paquetes. También tiene que volver a ser calculado el AH en algunas cabeceras de extensión con opciones de destino. Se puede apreciar cómo queda la cabecera Ipv6 básica después de aplicar la autenticación en modo transporte en la figura 9.

Cabecera IPv6
Cabeceras de extensión
Cabecera de Autenticación
Cabecera de opciones de destino
Cabecera de UDP o TCP
Datos
Figura 9. Cabecera IPv6 después de aplicar autenticación.

 

El modo túnel contiene dos tipos de paquetes, uno para circular por el interior del túnel y otro para su moverse por el exterior. En este modo, AH protege todo el paquete IP interior, lo que incluye a su cabecera. Tal como se muestra en la figura 10.

Nueva cabecea IP
Cabeceras de extensión
Cabecera de Autenticación
Cabecera IPv6 original
Cabecera de extensión
Cabecera de UDP o TCP
Datos
Figura 10. Cabecera IPv6 después de aplicar autenticación.

 

Como se detalla en el documento RFC 2405, los algoritmos de autenticación que son utilizados para la computación del valor del test de integridad (ICV), y que su implementación es obligatoria, son la HMAC con MD5 y la HMAC con SHA-1. Aunque se pueden soportar otros algoritmos en ciertas implementaciones.
 
 

Encriptación

El encapsulación de la carga útil (ESP) satisface la confidencialidad (mediante cifrado), autenticación de datos desde el origen, integridad sin conexión, servicio anti-replicados y una limitada confidencialidad del tráfico de información (protección contra el análisis del tráfico). Ambos AH y ESP pueden ser usados para el control de acceso, basándose en un distribución de la llaves y del tráfico actual de la red. Como ya se comentó antes, el alcance de protección que ofrece ESP no es tan amplio como el proporcionado por AH.

En modo transporte, ESP considera una carda de extremo a extremo, esto significa que el valor almacenado irá variando por cada salto realizado, enrutamiento ejecutado o fragmentación hecha. Así también lo hará con algunas otras cabeceras de extensión. Sin embargo, desde que ESP sólo protege aquellas extensiones que van detrás de la cabecera ESP, es más deseable que todas las extensiones del paquete IP se sitúen por detrás de la cabecera ESP (figura 11).

Cabecera IPv6
Cabeceras de extensión
Cabecera ESP
Cabecera de opciones de destino
Cabecera de UDP o TCP
Datos
Relleno ESP
Autenticación ESP
Figura 11. Cabecera Ipv6 después de aplicar encriptación

 

El modo túnel contiene dos tipos de paquetes, uno para circular por el interior del túnel y oro para su moverse por el exterior. En este modo se protege por completa la totalidad del paquete IP tal como se muestra en la figura 12. Como se ve se crea un nuevo paquete IP que contiene al paquete original que se quiere cifrar. Realmente, como se ve en la figura 12, lo que se cifra en este modo va desde la cabecera IPv6 original hasta el campo de relleno ESP. Aunque si también lo autenticáramos, se incluirían en la autenticación desde la cabecera ESP hasta el relleno ESP.

Nueva cabecera IPv6
Cabeceras de extensión
Cabecera ESP
Cabecera IPv6 original
Cabeceras de extensión originales
Cabecera de UDP o TCP
Datos
Relleno ESP
Autenticación ESP
Figura 12. Cabecera Ipv6 después de aplicar encriptación.

 

Comparación de IPv4 y IPv6

Tal vez no sea necesario ser tan explícitos, al respecto, pero hay muchas direcciones de 16 bytes. Específicamente, hay 2128 de ellas, lo que aproximadamente es 3x1028. Si la Tierra, incluido los océanos, estuviera cubierta de computadoras, el IPv6 permitiría 7x1023 direcciones de IP por metro cuadrado.

Es instructivo comparar la cabecera del IPv4 (figura 1) con la de IPv6 (figura 3) para ver lo que se ha dejado fuera del IPv6. El campo IHL se fue porque la cabecera de IPv6 tiene una longitud fija. El campo protocolo se retiró debido a que el campo de siguiente cabecera indica lo que sigue a la última cabecera de IP.

Se retiraron todos los campos relacionados con la fragmentación puesto que IPv6 tiene un enfoque distinto. Para empezar, todos los hosts y enrutadores que se ajustan a este nuevo protocolo reconocen paquetes de 576 bytes lo que hace menos posible que ocurra fragmentación. Además, cuando un host envía un paquete IPv6 demasiado grande, en lugar de fragmentarlo, el enrutador es incapaz de reenviarlo devuelve un paquete de error. Este mensaje indica al host emisor que divida todos los paquetes futuros a ese destino. Esto es mucho más eficiente que hacer que el host envíe paquetes de tamaño correcto desde el principio que hacer que los enrutadores los fragmenten sobre la marcha.

Por último, el campo suma de comprobación desaparece, porque su cálculo reduce en gran medida el desempeñó. Con las redes tan fiables de hoy en día, además del hecho de que la capa de enlace de datos y las capas de transporte ya realizan sumas de comprobación.

Al removerse estas características ha quedado un protocolo de capa de red más compacto y sólido. Por lo tanto, la meta del IPv6, de ser un protocolo rápido y flexible con bastantes direcciones, se ha cumplido con este diseño.
 
 


 
 

Resultados

Dado que se siguió un proceso de diseño abierto y las muchas opiniones que fueron tenidas en cuenta, no es de extrañar que muchas de las decisiones tomadas produjeran algunas controversias. Éstas las resumiremos a continuación:

  1. Tamaño de las direcciones

  2. Con las direcciones de 16 bytes de longitud fija se obtiene un espacio de direcciones cuasi-infinito.

  3. Limite de saltos

  4. Aunque algunos piensen que con un campo de 8 bits, que permite un rango entre 0 y 255, no seria suficiente dado que hoy son normal trayectorias de 32 saltos y en futuro podrían ser comunes trayectorias mucho más grandes. Tenemos que un campo de 16 bits sería demasiado porque podríamos tener paquetes vagando por la red durante demasiado tiempo. Sin embargo, al final se decidió mantener los 8 bits porque si se requieren mas de 125 saltos para llegar a un destino es que algo está mal con las backbones nacionales.

  5. Tamaño máximo del paquete

  6. Se fijo inicialmente un tamaño máximo de paquetes de 64 Kb, el problema se plantea con las supercomputadores que cuando empiezan a transferir datos no quiere que se le interrumpa cada 64 Kb. Aunque el problema en contra de los paquetes grandes es que cuando llegan a líneas de menos capacidad, estos paquetes producirían un retardo bastante notoria a los usuarios interactivos que comparten la línea. Finalmente se llegó a que se mantendrían paquetes como máximo de 64 Kb, pero se pueden usar las cabeceras de extensión para permitir paquetes mayores.

  7. Desaparición de la suma de comprobación

  8. Esto se debe a que cualquier aplicación a la que de verdad le importe la integridad de los datos, de todos modos debe tener una suma de comprobación en la capa de transporte. Por lo que tener otra en el nivel IP es excesivo. Además esta comprobación era un gasto importante.

  9. Incremento significativo de la seguridad
Probablemente uno de los puntos más importantes de todo el protocolo IPv6. Por un lado, se decidió ubicar la seguridad en la capa de red porque sirve de servicio estándar a todas las aplicaciones. Aunque las aplicaciones realmente seguras tienen el cifrado de terminal a terminal, en la que la aplicación de origen hace el cifrado y la destino lo deshace. La respuesta a este argumento es que las aplicaciones pueden abstenerse de usar estas características de IP, ya que implementaciones de este tipo hacen aplicaciones lentas y obstaculizadoras. Por otro lado, IPv6 tiene implementado DES, ningún criptógrafo cree que sea seguro ante ataques de grandes gobiernos, pero probablemente sea lo bastante bueno para frustrar el ataque de cualquier preadolescente precoz.


Conclusión

Dos importantes consecuencias se desprenden. Primero, el nuevo protocolo IPv6 sustituirá al viejo protocolo IP debido a que representa uno de los protocolos de Internet más fiable y seguro para las próximas décadas, ya que permite la interconexión de cualquier entidad del mundo que tenga necesidad de intercambiar información. Y segundo, este transito de pasar de uno al otro requerirá tiempo hasta que abarque todos los lugares.


Referencias

[Deering, 1993] "SIP: Simple Internet Protocol", IEEE Network Magazine, vol. 7, pp. 16-28, May/June 1993

[Francis,1993] "A Near-Term Architecture for Dopling Pip", IEEE Magazine, vol.7, pp. 30-37, May/June 1993

[Kazt y Ford, 1993] TUBA: Replacing IP with CLNP", IEEE Magazine, vol. 7,

pp. 38-47, May/June 1993
 
 
Bibiografía

Páginas visitadas