Eveliux.com Cursos Redes y telecomunicaciones

Licencia

Creative Commons License
El contenido de la web está bajo licencia Creative Commons. Eres libre de copiar, distribuir y comunicar públicamente la obra. No puedes utilizar esta obra para fines comerciales. Si alteras, transformas o creas una obra a partir de esta obra, solo podrás distribuir la obra resultante bajo una licencia igual a ésta. Debes reconocer la autoría de la obra en los términos especificados por el propio autor o licenciante mediante un enlace a este Sitio

Book - Convergence

Libro Digitalización y Convergencia Global

Google Friend Connect

twitter

IPv6: El protocolo del Internet de la nueva generación Imprimir Correo electrónico
Valoración de los usuarios: / 15
PobreEl mejor 
Escrito por Evelio Martínez   
Sábado 31 de Enero de 2004 16:00
Índice de artículos
IPv6: El protocolo del Internet de la nueva generación
IPv6 parte 2
IPv6 parte 3
Todas las páginas


Por: Evelio Martínez Martínez
publicado en la Revista REDRevista RED, Febrero 2004

Introducción

La comunicación en las redes de información no fuera posible sin los protocolos de red. Un protocolo es un paquete de bits con una cierta estructura que permite que uno o más dispositivos se puedan comunicar entre sí. Los protocolos son la parte de software más importante en las telecomunicaciones para que las aplicaciones instaladas en los dispositivos puedan comunicarse con otras a través de una red.

Para que el navegador de Internet (e.g Explorer, Netscape, Opera...) pueda cargar las páginas web, existe detrás un protocolo de comunicación conocido como HTTP; este protocolo se encarga de establecer comunicación entre tu computadora (cliente) y en donde están depositadas las páginas web (servidor). Las aplicaciones de mensajería instantánea, correo electrónico, necesitan estrictamente de protocolos para comunicar clientes con servidores.  

Los protocolos, además son los encargados del establecimiento y la liberación de una comunicación, así mismo el de establecer el flujo de la información entre dos o más nodos. Una parte muy importante de los protocolos es la verificación y control de error de los paquetes que transitan en la red. Esta característica de los protocolos permite que la información que se envía a través de la red llegue sin errores, en caso de suceder esto, la información es reenviada nuevamente por el transmisor, hasta que ésta llegue a su destino libre de error. Los cables y los enlaces son importantes (la parte física), pero sin los protocolos las redes como el Internet, simplemente no funcionarían.

En el mundo de Internet, el protocolo más utilizado es el TCP/IP (Transfer Control Protocol/Internet Protocol). TCP/IP es una pila de protocolos que establecen la comunicación de dispositivos a través de la Internet. TCP/IP hizo posible que computadoras de diferentes arquitecturas se puedan comunicar entre sí (e.g. Macs con PCs, ). El protocolo más conocido de la pila TCP/IP es el IP (Internet Protocol).

Breve historia de TCP/IP
TCP/IP fue diseñado inicialmente para cubrir las necesidades del Departamento de Defensa (DoD) de los EUA. A finales de los 60s la ARPA del DoD empezó a hacer acuerdos con Universidades de los EUA y la comunidad de investigación para diseñar estándares y protocolos abiertos para su red conocida como ARPANET. La inicial ARPANET, la primera red de conmutación de paquetes, empezó su operación en 1969 conectando 4 universidades, 3 en el estado de California y la otra en el estado de Utah. Estos primeros 4 nodos se enlazaron vía circuitos de 56 kbps utilizando el protocolo NCP (el predecesor de TCP/IP). El experimento fue todo un éxito permitiendo a la ARPANET continuar con la generación de proyectos de investigación de interés militar.

Uno de esos primeros proyectos fue la demanda de una aplicación de transferencia de archivos, acceso remoto y correo electrónico. En 1973 se inició un proyecto donde se desarrollarían protocolos de capas inferiores debido a que las capas existentes se volvieron inadecuadas. En 1974, el diseño para un nuevo conjunto de protocolos, para la ARPANET, fue propuesto por Vinton G. Cerf como Robert E. Kahn. El nombre oficial para ese conjunto de protocolos fue TCP/IP, el cual fue tomado de los nombres del protocolo de capa de red (Internet Protocol [IP]) y de unos de los protocolos de la capa de transporte (Transmisión Control Protocol [TCP]). Los protocolos propuestos deberían cumplir con las siguientes especificaciones:

* Independencia subyacente de los mecanismos de la red y de la arquitectura del host
* Conectividad universal a través de la red
* Reconocimientos extremo a extremo
* Protocolos estandarizados

Así nace el protocolo TCP/IP, un conjunto de protocolos que especifican los detalles de cómo las computadoras se comunican, así también las como las convenciones de interconexión de redes y enrutamiento del tráfico. La inicial especificación se fue desarrollando hasta llegar a varias versiones, culminando en la versión 4 en 1979, la cual fue finalmente estandarizada en 1981. El éxito del protocolo TCP/IP en el mundo UNIX fue gracias al hecho de que la Universidad de California en Berkeley emprendió la implementación de TCP/IP en la versión 4.2 de su sistema operativo UNIX BSD en 1983 y de la publicación del código fuente como un software de dominio público. Correcciones y optimizaciones fueron hechas en las versiones posteriores de BSD (BSD 4.3 en 1986 y BSD/Tahoe en 1998).

La versión de IP comúnmente usada es la versión 4 (IPv4), la cual no ha sido substancialmente modificada desde que el RFC 791 fue publicado en 1981. Los RFCs son propuestas que son enviadas a un organismo como el IETF para que éstas sean criticadas, se envíen comentarios o retroalimentación al autor de la propuesta para mejorlas. Desde ese tiempo, IPv4 ha probado ser robusta, fácil de implementar e interoperable, la prueba más real es la red Internet de la actualidad.

Los diseñadores de Internet jamás se imaginaron el crecimiento explosivo del número de nodos conectados a la supercarretera de la información; así que decidieron que las direcciones IP contendrían 32 bits, permitiendo 4 mil millones de direcciones, parecerán muchas, pero no es ni siquiera la población total mundial. A principios de los noventas, con la apertura comercial del Internet, la revolución de las computadoras personales, las redes de área local (LANs), el World Wide Web (www) y aunado a la pésima repartición de las IPs demostraron claramente que los 4 mil millones de direcciones no serian suficientes. Hoy en día muchas personas quieren conectar toda clase de dispositivos a Internet (e.g. refrigeradores, hornos de microondas, dispositivos inalámbricos, etc.). Este crecimiento explosivo de dispositivos que requieren estar conectados a la red requerirá de un nuevo esquema de direccionamiento para mantenerlos en operación. Nadie se imaginó que una red que empezó con fines militares iba a tener tanto éxito en el mundo comercial.

El esquema de direccionamiento de IPv4
Las direcciones IP que conocemos tiene el esquema, 192.168.0.50, en formato decimal; el cual está separado en cuatro campos cada uno de 8 bits, es decir que este valor varía de entre 0 y 255 (28-1). Por lo que la dirección mínima es 0.0.0.0 y la máxima dirección bajo este formato es 255.255.255.255. Esta dirección IP de 32 bits está dividida en dos partes. Una parte le corresponde al identificador de la red y la otra, al identificador del host. Se utilizará con frecuencia el término host en este artículo, por no existir en español una palabra que denote el mismo significado del término en inglés. A menudo se utiliza la traducción al español de host como anfitrión, pero ésta no es muy adecuada; un término más utilizado para host es "nodo". Definiendo formalmente el término, un host se le conoce a cualquier dispositivo (e.g. una computadora, un enrutador, un teléfono celular, un refrigerador, etc.) al que se le puede asignar una dirección IP, ya sea ésta pública o privada. Este esquema de codificación de la dirección IP proporciona flexibilidad al asignar las direcciones y permite una mezcla de tamaños de red en un conjunto de redes.

En particular existen tres clases de direcciones que se pueden asociar a las siguientes condiciones [ver tabla 1 y figura 1]:

Clase A: Utiliza sólo el primer octeto para identificar la red, dejando los 3 octetos (24 bits) restantes para identificar los hosts. La clase A es utilizada por grandes corporaciones y carriers internacionales ya que provee 16,777,214 (224-2) direcciones IP para los hosts, pero está limitada a sólo 127 redes de clase A.

Clase B: utiliza los primeros dos octetos para identificar la red, dejando los 16 bits restantes (2 octetos) para el host. La clase B es utilizada por grandes compañías e instituciones que necesitan un gran número de nodos. Los 2 octetos le dan cabida a 16,384 redes supliendo todas ellas un total de 65,534 (216-2) direcciones IP para los hosts.

Clase C: Usa los primeros 3 octetos para el identificador de red, dejando los 8 bits restantes para el host. La clase C es utilizada por pequeñas redes empresariales, que suman un total de 2,097,152 redes con un máximo de 254 (28-2) hosts cada una.

Tabla 1. Clases de direcciones en IPv4
Clases Rango del 1er octeto Número de redes Número de hosts Ejemplo
A 1-126 127 16,777,214 10.15.121.5
B 128-191 16,384 65,534 130.13.44.52
C 192-223 2,097,152 254 200.15.23.8

La clase A es un esquema de pocas redes (127) y muchísimos hosts (16,777,214), lo que significa que sólo pocas compañías tienen el privilegio de poder asignar más de 16.7 millones de IPs a hosts. ¿Usted cree esto posible? Una corporación por más grande que sea no tiene esa cantidad de hosts, a menos que sea un carrier internacional y las distribuya entre sus clientes. Muchas de estas direcciones están sin uso y por ende desperdiciadas. Que injusta fue la repartición de direcciones IP. La clase B es un poco más justa, aunque tiene sus bemoles. Es un esquema de un número mediado de redes (16,384) con un número mediano de hosts (65,534). Muchas de las universidades por ejemplo, tienen clase B en sus redes. Una universidad por más grande que sea no tiene 65,534 hosts. Por ende, muchas direcciones están desperdiciadas y nadie las puede utilizar más que la entidad a la que fue asignada. La clase C es un esquema de muchísimas redes (2,097,152) y pocos hosts (254). ¿Imagine que Usted quiere instalar una red en su oficina y tiene una red de 10 computadoras y se le asigna una clase C?. Tendrá más de 240 direcciones IP sin usar. Aunque viéndolo por el lado amable, estas direcciones las podría utilizar para un crecimiento futuro de su red. Aún viéndola con ese enfoque, con este esquema se desperdician muchas direcciones IP. Para evitar el desperdicio de direcciones muchas de las corporaciones utilizan una mezcla de clases de direcciones. Otra técnica también muy utilizada para evitar desperdicio de IPs es el direccionamiento sin clases (CIDR). El CIDR permite particionar el número de hosts a valores más adecuados a las necesidades de nuestras redes locales. Además de las clases A, B y C, también existe la clase D y la clase E. La primera se utiliza para multidifusión (broadcast) y la clase E esta reservada para uso futuro. Es decir, no se utiliza por el momento, quedando desperdiciada.

Concluimos que la jerarquización utilizada en el direccionamiento IPv4 ocasiona un gran desperdicio de IPs. Largos bloques de direcciones fueron asignados a grandes compañías y organizaciones para hacer el trabajo más fácil a los enrutadores. Posteriormente, cuando nuevas organizaciones solicitaron bloques grandes de direcciones, ya no había disponibles y se tuvieron que conformar con clases B y C. Muchas organizaciones no necesitaron de todas las direcciones en los bloques asignados, quedando direcciones sin utilizar y por lo tanto desperdiciadas.


Figura 1. Esquema de direccionamiento eb IPv4

Para garantizar direcciones únicas mundialmente, existe una autoridad central, la IANA (The Internet Assigned Numbers Authority, http://www.iana.org/), quien asigna números únicos de red a las organizaciones que lo solicitan. Una vez asignadas, los administradores de red de las corporaciones serán los encargados de asignar direcciones IP a los hosts.

El nacimiento de IPv6
El IETF (http://www.ietf.org/) es una organización que define estándares y la arquitectura del Internet. En 1990, el IETF empezó a estudiar el problema de expandir el número de direcciones de Internet. En 1994 liberó una recomendación oficial para el protocolo de Internet de la siguiente generación o IPng (Internet Protocol next generation). Un hecho destacado en el desarrollo, fue la publicación del RFC 1752 cuya publicación se realizó en enero de 1995. El RFC 1752 describe los requisitos de IPng, especifica el formato de la PDU y señala las técnicas de IPng en las áreas de direccionamiento, enrutamiento y seguridad. Siguiendo los procedimientos formales, la recomendación se convirtió en un borrador de estándar en 1998. El IETF creo un grupo de trabajo de IPv6 para crear los estándares que se requieran y permitir la transición de IPv4 a IPv6. Existen otros documentos que definen los detalles del protocolo, ahora llamado IPv6 (Internet Protocol version 6); éstos incluyen una especificación general de IPv6 (RFC 2460), un RFC que trata con la estructura de direccionamiento de IPv6 (RFC 2373) y una larga lista más.

¿Y que paso con IPv5?
Sabemos que la versión del protocolo IP que se usa actualmente es la 4 (IPv4) y que el IP de nueva generación es el IPv6. Lo que no es tan conocido es porqué se "saltaron" del IPv4 al IPv6 y omitieron el IPv5; de hecho se dice que el IPv5 no existe... Sin embargo, técnicamente el IPv5 si existe... Basta consultar el RFC 1819 [http://www.faqs.org/rfcs/rfc1819.html], el cual describe al protocolo ST2+ (Internet Stream Protocol Version 2) para darnos cuenta de lo siguiente: "ST2 and IP packets differ in the first four bits, which contain the internetwork protocol version number: number 5 is reserved for ST2 (IP itself has version number 4)". O sea, que el valor 5 para el campo "protocol version" lo tomaron para el ST2+, y luego, ya que iban a especificar una nueva versión del protocolo IP tomaron el siguiente número disponible, es decir el 6.


Direccionamiento y enrutamiento de IPv6
El esquema de direccionamiento en IPv6 resuelve muchos problemas críticos de IPv4. IPv6 permitirá a los diseñadores de la dorsal (backbone) de Internet crear una jerarquía de enrutamiento global muy flexible y abierta. Al nivel de la dorsal de Internet, donde la mayoría de las empresas y los ISP se juntan, es necesario mantener el sistema de direccionamiento jerárquico, así como lo hace el IPv4. Sin un direccionamiento jerárquico, los enrutadores de la dorsal forzarían a almacenar la tabla de información de enrutamiento de cada red en el mundo. Debido al número actual de subredes IP en el mundo y al crecimiento del Internet, esto no es factible. Con una jerarquía, los enrutadores pueden usar prefijos de direcciones IP para determinar cuanto tráfico deberá ser enrutado a través de la dorsal. IPv4 utiliza una técnica conocida como CIDR, el cual permite el uso flexible de prefijos de red de longitud variable. Con el uso flexible de prefijos, CIDR permite "agregación de enrutamiento" considerable a varios niveles de la jerarquía de Internet, lo que significa que los enrutadores de la dorsal pueden almacenar una tabla única de enrutamiento que provee alcance a muchas de redes a niveles más bajos. Pero la disponibilidad de enrutamiento CIDR no garantiza una jerarquía eficiente y escalable. En muchos casos, la asignación de direcciones IPv4 legadas que se originaron antes de CIDR no facilitan la agregación.

De hecho, mucho del espacio de direcciones IPv4 fue formado antes de que la jerarquía actual de acceso fuera desarrollada. La falta de uniformidad del sistema jerárquico de la actualidad aunado al racionamiento de las direcciones IPv4, da como resultado que el direccionamiento y enrutamiento en Internet sea inseguro con complicaciones en todos los niveles. Este hecho afecta el nivel de servicio de los proveedores y usuarios finales en todos los tipos de negocios.

El motivo principal que ha conducido la adopción de una nueva versión del protocolo de Internet es la limitación impuesta al campo de dirección de 32 bits en IPv4. IPv6 expande el número de direcciones de 32 bits a 128 bits. Una dirección de 32 bits permite 4 mil millones de direcciones únicas, mientras que 128 bits, permiten más de 340 sixtillones de direcciones (340,282,366,920,938,463,463,374,607,431,768,211,456) únicas en Internet. ¿Cuanto es esta cantidad? Pues imagínese que en el 2050 seamos 9 mil millones de personas en el mundo. Bueno, pues nos tocarían 37,809,151,880,104,273,718,152,734,159 direcciones por persona. ¿Son suficientes? desde luego.

Estructura de direccionamiento en IPv6
La estructura de direccionamiento de IPv6 difiere mucho de la estructura de las direcciones IP en la versión 4. En vez de representar las direcciones en cuatro octetos (de 0 a 255 cada uno) separados por puntos, las direcciones IPv6 son una serie de números hexadecimales (de 0 a FFFF cada uno) de 16 bits (palabras) separados por el caracter dos puntos entre ellos. Existe una notación abreviada "::" que representa cualquier número de "cero palabras".

A continuación se muestran algunos ejemplos: * IPv4: 192.168.16.31
* IPv6 (sin palabras en cero): 2001:470:104:20:202:B3FF:FEAD:42BA
* IPv6 (con palabras en cero): 2001:470:104:20:0:0:0:1
* IPv6 (abreviado): 2001:470:104:20::1 (del ejemplo anterior :0:0:0: = ::)
* La dirección IPv6 FE80:0000:0000:0000:02C0:4FFF:FE68:12CB puede ser también representada como fe80::2c0:4fff:fe68:12cb
* El tradicional 127.0.0.1 es en IPv6 0000:0000:0000:0000:0000:0000:0000:0001, o simplemente ::1.

Las direcciones IPv6 están bien estructuradas y pueden ser más sencillas de entender que las direcciones de IPv4. El espacio de direcciones de IPv6 es dividido, basado en el valor de los bits de más alto orden en la dirección. Los bits de mayor orden y sus valores fijos son conocidos como un prefijo de formato (FP, Format Prefix). La siguiente tabla muestra el alojamiento del espacio de direcciones IPv6 por FPs.




Tabla 2. Alojamiento de espacio de direcciones IPv6 por FPs
Alojación Prefijo de formato (FP) Fracción del espacio de direcciones
Reservada 0000 0000 (::) 1/256
Reservada para Alojación NSAP 0000 001 1/128
Direcciones unicast globales agregadas 001 1/8
Direcciones unicast del enlace local 1111 1110 10 (FE80::/10) 1/1024
Direcciones unicast del sitio local 1111 1110 11 (FEC0::/10) 1/1024
Direcciones multicast 1111 1111 (FF00::/8) 1/256
Direcciones normales (RFC 2450)    2001::/16
Túneles automáticos(RFC 3056) "6a4"    2002::/16
Direcciones de prueba (RFC 2471) "6Bone"    3FFE::/16

Así como en IPV4, los rangos de direcciones pueden ser descritos por el sufijo "/" seguido por el número fijo de bits (e.g. 192.168.50.0/24) en la dirección, así por ejemplo 3FFE::/16 significa un conjunto de direcciones que empiezan con 3FFE.

La transición de IPv4 hacia IPv6
Los diseñadores de IPv6 reconocieron que la transición de IPv4 a IPv6 tomaría muchos años y que habría organizaciones o hosts dentro de organizaciones que continuarían su uso para siempre. A pesar que la migración es a largo plazo, existen ciertas consideraciones que permitirán la coexistencia de ambos protocolos.

Los diseñadores de IPv6 en la especificación original (RFC 1752) definieron los siguientes criterios de transición.

* Los hosts existentes con IPv4 podrán ser actualizados en cualquier momento, independientemente de la actualización de los otros hosts o enrutadores.
* Los nuevos hosts, utilizando sólo IPv6, pueden ser agregados en cualquier momento, sin dependencias de otros hosts u infraestructura de enrutamiento.
* Los hosts existentes con IPv4, con IPv6 instalado, pueden continuar utilizando direcciones IPv4 sin necesitar direcciones adicionales.
* Se requiere de una pequeña preparación ya sea para actualizar de IPv4 a IPv6 o para implementar nuevos nodos IPv6.

La inherente falta de dependencia entre los hosts de IPv4 e IPv6 y la infraestructura de enrutamiento IPv4 e IPv6, requiere de mecanismos que permitirán la coexistencia de los dos protocolos de manera transparente.

Tipos de nodos
Aunado a los criterios de transición de IPv4 a IPv6, en el RFC 2893 se definen los siguientes tipos de nodos:

* Nodo IPv4 puro: Es un nodo con IPv4 y que tiene sólo direcciones IPv4. Este tipo de nodo no soporta IPv6. La mayoría de los hosts y enrutadores instalados hoy en día son IPv4 puros.
* Nodo IPV6 puro: Es un nodo con IPv6 y que tiene sólo direcciones IPv6. Este nodo sólo se puede comunicar con nodos y aplicaciones IPv6. Este tipo de nodo no es muy común hoy en día.
* Nodo IPv6/IPv4: Es un nodo que tiene implementado tanto IPv4 como IPv6. Este nodo permite IPv6 sólo si tiene configurado una Interface IPv6.
* Nodo IPv4: Es un nodo con IPv4, puede enviar y recibir paquetes IPv4. Un nodo IPv4 puede ser un nodo IPv4 puro o un nodo IPv6/IPv4.
* Nodo IPv6: Es un nodo con IPv6, puede enviar y recibir paquetes IPv6. Un nodo IPv6 puede ser un nodo IPv6 puro o un nodo IPv6/IPv6.

Para que ocurra la coexistencia, los nodos en mayor número (IPv4 o IPv6) pueden comunicarse utilizando infraestructura IPv4, una infraestructura IPv6 o una infraestructura que sea una combinación de IPv4 e IPv6. La verdadera migración es realizada cando todos los nodos IPv4 son convertidos a nodos IPv6 puros. Sin embargo, en el futuro, la migración práctica es realizada cuando más nodos IPv4 puros son convertidos a nodos IPv6/IPv4. Los nodos IPv4 puros pueden comunicarse con nodos IPv6 puros solamente utilizando un servidor proxy que haga la traslación IPv4 a IPv6.

La compatibilidad de direcciones
Las siguientes direcciones están definidas para ayudar en la coexistencia de nodos IPv4 e IPv6:
* Direcciones IPv4 compatibles: Las direcciones IPv4 compatibles 0:0:0:0:0:0:w.x.y.z o simplemente ::w.x.y.z (donde w.x.y.z es la representación decimal de una dirección pública IPv4), son utilizadas por nodos IPv6/IPv4 que se comunican con IPv6 sobre una infraestructura IPv4. Cuando la dirección IPv4 compatible es utilizada como un destino IPv6, el tráfico IPv6 es automáticamente encapsulado con un encabezado IPv4 y enviado al destino utilizando la infraestructura Ipv4.
* Direcciones IPv4 mapeadas: Las direcciones IPv4 mapeadas 0:0:0:0:0:FFFF:w.x.y.z o simplemente ::FFFF:w.x.y.z, son utilizadas para representar un nodo IPv4 puro a un nodo IPv6. Es utilizada sólo para representación interna. Las direcciones IPv4 mapeadas nunca son usadas como una dirección fuente o destino de un paquete IPv6.
* Direcciones 6sobre4: las direcciones 6sobre4 están compuestas de prefijos de direcciones unicast válidas de 64 bits y del identificador de la Interface ::WWXX:YYZZ (donde WWXX:YYZZ es la representación hexadecimal de w.x.y.z, una dirección IPv4 unicast asignadas a una Interface) . Un ejemplo de una dirección 6sobre4 de enlace local basada en direcciones IPv4; de 131.107.4.92 es FE80::836B:45C. las direcciones 6sobre4 son utilizadas para representar un host cuando se está usando el mecanismo de túnel automático definidos en el RFC 2529.
* Direcciones 6a4: Las direcciones 6a4 están basadas en el prefijo 2002:WWXX:YYZZ::/48 (donde WWXX:YYZZ es la representación hexadecimal de w.x.y.z, una dirección IPv4 pública asignada a una Interface). Las direcciones 6a4 son utilizadas para representar un sitio cuando es usado el mecanismo de túnel automático definido en el RFC 3056, también conocido como 6a4.
* Direcciones ISATAP: Estas direcciones están compuestas de prefijos de direcciones unicast de 64 bits válidas y un identificador de Interface ::0:5EFE:w.x.y.z (donde w.x.y.z es una dirección IPv4 unicast asignada a una interface). Un ejemplo de una dirección ISATAP de enlace local es FE80::5EFE:131.107.4.92. Las direcciones ISATAP son utilizadas para representar un host cuando es usado por el mecanismo de túnel automático definido en el borrador titulado "Intra-Site Automatic Tunnel Addressing Protocol (ISATAP)" (http://www.ietf.org/internet-drafts/draft-ietf-ngtrans-isatap-16.txt).

Mecanismos de coexistencia
Para coexistir con una infraestructura IPv4 y proveer migración eventual a una infraestructura IPv6 pura, los siguientes mecanismos son utilizados: * Pila dual IP
* Túnel IPv6 sobre IPv4
* Infraestructura DNS
Capa IP dual
La pila dual IP dual es una implementación de la pila de protocolos TCP/IP que incluyen ambas, una capa de Internet IPv4 y una capa de Internet IPv6. Este es un mecanismo utilizado por nodos IPv6/IPv4 para que nodos IPv4 se puedan comunicar con nodos IPv6. Una pila dual IP contiene una simple implementación de protocolos de capa host-a-host tales como TCP y UDP. Todos los protocolos de capas superiores en una implementación de pila dual IP pueden comunicarse sobre IPv4, IPv6 o IPv6 en túnel en IPv4.

Túnel IPv6 sobre IPV4
El túnel IPv6 sobre IPv4 es la encapsulación de paquetes IPv6 con un encabezado IPv4 para que los paquetes IPv6 puedan ser enviados sobre infraestructura IPv4. Dentro del encabezado IPv4:
* El campo de protocolo de IPv4 es puesto a 41 para indicar que es un paquete IPv6 encapsulado.
* Los campos origen y destino son asignados para direcciones IPv4 para los extremos del túnel. Los extremos del túnel son configurados manualmente como parte de la Interface del túnel o están automáticamente derivados desde la interface transmisora, la dirección del próximo salto de la ruta en cuestión o de las direcciones IPv6 fuente y destino en la cabecera IPv4.

Para el túnel IPv6 sobre IPv4, la unidad de transmisión máxima (MTU) de la trayectoria IPv6 para el destino es típicamente 20 bytes menos que el MTU de la trayectoria IPv4 del destinatario. Sin embargo, si el MTU de la ruta IPv4 no se almacena para cada túnel, existen instancias donde los paquetes IPv4 necesitan ser fragmentados en un enrutador intermedio IPv4. En este caso, el paquete IPv6 sobre IPv4 transmitido sobre el túnel debe ser enviado con la bandera de no fragmentación en la cabecera del encabezado IPv4, es decir esta bandera es puesta a 0.


Infraestructura DNS
Una infraestructura DNS será necesaria para la coexistencia exitosa de ambos protocolos, debido al prevaleciente uso de nombres en vez de números para referirse a los recursos de la red. Actualizar la infraestructura del DNS consiste en alimentar a los servidores DNS con registros para poder soportar resoluciones nombre a direcciones y direcciones a nombres IPv6. Después de que las direcciones son obtenidas a través de la consulta a un DNS, el nodo origen debe seleccionar que direcciones serán utilizadas para la comunicación.

El DNS es algo que los administradores deben considerar antes de implementar IPv6 o nodos de pilas duales. Los servidores de nombres de la actualidad de 32 bits no pueden manipular solicitudes de resolución de nombres para direcciones de 128 bits utilizados para dispositivos IPv6. En respuesta a esta necesidad los diseñadores del IETF definieron un estándar (RFC 1886, DNS Extensions to Support IP Version 6). Esta especificación crea un nuevo tipo de registro DNS nombrado "AAAA" (cuádruple A) que mapeará nombres de dominios a direcciones IPv6. Una vez que el DNS tiene capacidades IPv6, los nodos con pila dual pueden interactuar con otros nodos IPv6. Si un nodo con pilas duales consulta un DNS y recibe una dirección de 32 bits, el protocolo IPv4 será utilizado. Si es recibida una dirección de 128 bits entonces el protocolo IPv6 es utilizado. En sitios donde el DNS no ha sido actualizado a IPv6, los hosts deberán resolver mapeos de nombre a direcciones a través del uso de tablas locales de nombres configuradas manualmente. Las aplicaciones que no tienen acceso directo a la pila de la red no necesitarán ser modificadas para correr en un ambiente de pila dual. Las aplicaciones de red que interactúan directamente con IP y componentes relacionados requerirán actualización si estos utilizan el protocolo IPv6. Por ejemplo, aplicaciones que accedan el DNS deben estar aptas para requerir los nuevos registros de 128 bits. Aplicaciones que explotan la seguridad y la calidad de servicio de IPv6 y otras características necesitarán actualización extensiva.

La infraestructura DNS debe contener los siguientes registros de recursos (alimentados ya sea dinámica o manualmente) para una resolución exitosa de dominios de nombres a direcciones: * Un registro para IPv4 puro y nodos IPv6/IPv4
* Registros AAAA para IPv6 puro y nodos IPv6/IPv4

Beneficios de IPv6
Muchas son las mejoras que IPv6 con respecto a IPv4, algunas de las ventajas y beneficios se listan a continuación:
* Espacio de direcciones ampliado: IPv6 incrementa el espacio de direcciones de 128 bits, contra 32 bits de IPv4. Esto supone un incremento de espacio de direcciones en un factor de 296. Un incremento en las direcciones permitirá que más de 340 sixtillones de dispositivos tengan su propia dirección IP.
* Soporte mejorado para extensiones y opciones: Los cambios en la manera en que se codifican las opciones de la cabecera IP permiten un reenvío más eficiente, límites menos rigurosos y mayor flexibilidad para introducir nuevas opciones en el futuro. La implementación de extensiones de encabezado mejorarán la forma en que los enrutadores procesan los paquetes.
* Formato simplificado del encabezado: El nuevo formato simplificado mejorará la eficiencia en el enrutamiento al procesarse más rápido.
* Etiquetado del tráfico: paquetes relacionados pueden ser tratados como flujos de tráficos, para lo cual, el nodo origen solicita tratamiento especial, como la calidad de servicio (QoS) no estándar o el servicio en tiempo real.
* Autentificación y privacidad mejorada: Medidas de seguridad son implementadas dentro del protocolo IPv6. Se especifican extensiones para utilizar autentificación, integridad de los datos y confidencialidad de los datos. Con IPv4, el protocolo de seguridad IPSec es opcional. Con IPv6, IPSec es obligatorio. Por obligatorio se puede asumir que se puede asegurar la comunicación entre los dispositivos.
* Autoconfiguración "plug and play": Autoconfiguración sin necesidad de servidores y facilidades de reconfiguración. Los dispositivos pueden configurar sus propias direcciones IPv6 basándose en la información que reciban del enrutador más próximo.
* Mecanismos de movilidad más eficientes y robustos: IP móvil soporta dispositivos móviles que cambian dinámicamente sus puntos de acceso a la red. Concretamente IPv6 permite a un host IPv6 dejar su subred de origen mientras mantiene transparentemente todas sus conexiones presentes y sigue siendo alcanzable por el resto de la red. Dado el auge de las redes inalámbricas tanto de telefonía celular como redes inalámbricas de área local (WLAN), la movilidad IP será un punto muy importante.
* Aplicaciones en tiempo real: IPv4 define una red pura orientada a datagramas y, como tal, no existe el concepto de reserva de recursos. Cada datagrama debe competir con los demás y el tiempo de tránsito en la red es muy variable y sujeto a congestión. Por ello, se necesita una extensión que posibilite el envío de tráfico de tiempo real, y así poder hacer frente a las nuevas demandas en este campo.
* Tecnologías de ingeniería de tráfico: IPv6 fue diseñado para permitir soporte a ingeniería de tráfico como diffserv o intserv (RSVP). Aunque no se tenga un estándar de ingeniería de tráfico, la especificación base de IPv6 tiene reservado una campo de 24 bits en la cabecera para esas tecnologías emergentes.
* Multicast: Multicast es obligatorio en IPv6, el cual era opcional en IPv4. Las especificaciones base de IPv6 por si mismas usan extensivamente multicast.
* Mejor soporte para redes ad-hoc: El alcance de las direcciones permiten mejor soporte para rede ad-hoc (o "zeroconf", cero configuración). IPv6 soporta direcciones anycast, las cuales pueden contribuir a descubrimiento de servicios.

Retos de la migración a IPv6
En la actualidad Internet es básicamente una gran nube de IPv4. Cuando se empiece a implementar, existirán pequeñas islas de IPv6. Estas islas se comenzarán a hacer cada vez más grandes y la nube de IPv4 empezará a contraerse. Esto podría incrementar la migración o los problemas de coexistencia. Pero los desarrolladores están trabajando sobre este problema y han desarrollado aplicaciones que permitirán la coexistencia y entender automáticamente cuando se está utilizando IPv4 o IPv6. Las aplicaciones tendrán implementadas pilas duales de IPv4 e IPv6 en el misma pila. Un host que soporte ambos protocolos puede comunicarse con nodos IPv4 o IPv6. Con una pila dual, las aplicaciones IPv4 funcionarán transparentemente con IPv6. Por ejemplo, si un servidor de web con IPv4 falla y el servidor de respaldo que utiliza IPv6 se encuentra en otra localidad, no habrá interrupción en el servicio. La realidad es que las plataformas de administración de las redes de la actualidad no soportan IPv6. Los fabricantes de equipos podrán proveer funcionabilidad libre, en forma de una actualización, asegurando que las versiones posteriores del software de administración de la red soportarán el nuevo esquema. IPv6 está fuera de la fase de desarrollo y ha sido implementado exitosamente. Existen alrededor de 800 sitios mundo que corren IPv6 e interoperan con la nube de IPv4. La implementación comercial está empezando en Japón y la mayoría de los fabricantes de equipos han empezado a soportar el nuevo esquema. Esto es una buena señal para emigrar pronto.


Tendencias y conclusiones
Internet continúa creciendo explosivamente, son cada vez más los dispositivos que se conectan a la red. La revolución inalámbrica es un hecho, y muchos dispositivos móviles están al acecho de ser parte de la supercarretera de la información. Si un teléfono móvil estuviese enviando un correo electrónico y mientras está en movimiento se pierde la conexión, inmediatamente establece otra conexión para continuar enviando el mismo correo electrónico. El protocolo actual, el IPv4, no tiene la capacidad de lidiar con este tipo de movilidad. IPv6 tiene la capacidad de realizar esto transparentemente.

La red Internet está empezando a transportar tipos de datos que no fueron anticipados cuando fue diseñado en sus inicios. Hoy en día conocemos servicios como voz sobre IP, video en demanda, videoconferencia, juegos interactivos, datos en tiempo real, dispositivos controlados a control remoto y servicios de entretenimiento que jamás se hubiesen imaginado que se transportarán por la red. Algunos de estos servicios tales como los dispositivos controlados a control remoto, necesitan alta prioridad, asegurando que sus datos sean transmitidos sin retardo. Algunos de los servicios pueden soportar la pérdida de datos, mientras otros podrán requerir que cada bit llegue correctamente a su destino. Estos puntos son generalmente referidos como Calidad de Servicio (QoS).

El trabajo realizado en estándares y componentes relacionados a IPv6 tienen un gran avance y los fabricantes de equipos han acordado un número considerable de proyectos de prueba y desarrollo. La mayoría de los vendedores de equipos han condensado en agregar IPv6 a sus productos. Los fabricantes de equipos como DEC, Apple, Hewlett Packard, Novell, Microsoft, Compaq, 3Com, Cisco, Sun Microsystems, Nokia, Extreme Networks, entre muchos otros, están empezando a entregar computadoras, servidores, enrutadores y otros dispositivos con IPv6. Muchas organizaciones están trabajando en manejadores de dispositivos (drivers) para el sistema operativo UNIX BSD, Linux, y otros. El servidor Windows 2003 de Microsoft contempla aplicaciones y componentes bajo IPv6; un navegador de Internet, un cliente FTP y un cliente Telnet. Fabricantes de software de red (Trumpet, Interpeak, Mentat,...) han desarrollado una gran variedad de soporte para IPv6 en aplicaciones de red y software de comunicaciones (FTP, navegador Mozilla, Apache Web server, Sendmail). La red Abilene, la cual enlaza a más de 200 Universidades, han habilitado IPv6 en la mitad de sus conexiones de red; alrededor de 40 universidades ya están utilizando el protocolo. Rick Summerhil, director asociado de la dorsal de red para el consorcio Internet2, el cual opera Abilene, predice que la mayoría de las universidades que utilizan Abilene se actualizarán a IPv6 dentro de 3 años. Summerhil agrega que la actualización a IPv6 no será costosa ya que sucederá como una evolución natural de las redes universitarias.

Otro gran esfuerzo es un prototipo de prueba de IPv6 puesto en operación llamado 6Bone (http://www.6bone.net), el cual enlaza más de 60 países en Norteamérica, Europa, Oceanía y Asía, incluyendo México, Cuba, Paraguay, Argentina, Colombia, Chile y Brasil. Otro gran acontecimiento es el evento titulado ("Global IPv6 Service Launch, http://www.global-ipv6.net/") lanzamiento global del servicio IPv6 llevado a cabo en Bruselas, Bélgica. Este gran evento pretende lanzar mundialmente el servicio de IPv6, inicialmente a las comunidades de educación e investigación, para unir esfuerzos para la puesta en marcha del servicio y aplicaciones a gran escala.

Este evento proveerá la oportunidad única para los proveedores de tecnología, redes nacionales de educación e investigación, industrias y negocios para dar su punto de vista del impacto y puesta en operación de IPv6.

El autor es profesor de tiempo completo de la Facultad de Ciencias de la Universidad Autónoma de Baja California, es también consultor en telecomunicaciones y colaborador de la Revista Red. Se le puede contactar en evelio[at]eveliux.com

Tabla. 3 Ejemplos de algunos sistemas operativos con implementaciones IPv6
Sistema operativo Dirección de Internet
Sun Solaris
Compaq Tru64 UNIX
FreeBSD
NetBSD
OpenBSD
Windows 2003, 2000, XP
Novell
Linux Bieringer
Linux Debian
SCO UnixWare 7


Tabla 4. GLOSARIO DE TéRMINOS
Término Significado
ARPA
BSD
CIDR
DEC
DHCP
DNS
EUA
FTP
HTTP
IETF
IPv4
IPv6
ISATAP
ISP
MTU
NAT
NCP
NSAP
PDU
QoS
RFC
RSVP
ST2+
TCP
UDP
WLAN

Recursos sobre IPv6
IPv6 Forum
Kame project
IPv6 UNAM
6 Bone
Internet2 IPv6
Cudi México
IPv6 draft
IPv6 Launch event
Linux IPv6
IPv6 Web Page
IPv6 noticias


RECUADRO 1. Estructura del protocolo IPv4


Versión (4 bits): Indica el número de la versión del protocolo, para permitir la evolución del mismo; en este caso es la versión 4.

Longitud de la cabecera de Internet (IHL, Internet Header Length) (4 bits): longitud del encabezado en palabras de 32 bits. El valor mínimo es de cinco, correspondiente a una longitud mínima de la cabecera de 20 bytes.

Tipo de servicio (8 bits): Especifica los parámetros de seguridad, prioridad, retardo y rendimiento.

Longitud total (16 bits): Longitud total del datagrama en bytes

Identificador (16 bits): Un número de secuencia que junto a la dirección origen y destino y el protocolo usuario se utilizan para identificar de forma única un datagrama. Por lo tanto, el identificador debe ser único para la dirección origen del datagrama, la dirección destino y el protocolo usuario durante el tiempo en el que el datagrama permanece en el conjunto de redes.

Banderas o indicadores (3 bits): Solamente dos de los tres bits están definidos, el bit 0 está reservado. Los bits restantes son utilizados para indicar la segmentación y reensamblado de paquetes. El bit 1 específica si el paquete puede ser fragmentado. El siguiente bit especifica si el paquete es el último fragmento en una serie de paquetes fragmentados.

Desplazamiento del fragmento (13 bits): Indica el lugar donde se sitúa el fragmento dentro del datagrama original, medido en unidades de 64 bits. Esto indica que todos los fragmentos excepto el último contienen un campo de datos con una longitud múltiplo de 64 bits.

Tiempo de vida (8 bits): Especifica cuanto tiempo, en segundos, se le permite a un datagrama permanecer en la red. Cada dispositivo de encaminamiento que procesa el datagrama debe decrementar este campo al menos en una unidad, de forma que el tiempo de vida es de alguna manera similar a una cuenta de saltos.

Suma de comprobación del encabezado, checksum (16 bits): código de detección y corrección de errores aplicado solamente a la cabecera.

Dirección origen (32 bits): Contiene la dirección del nodo fuente u origen

Dirección destino (32 bits): Contiene la dirección del nodo destino

Opciones (variable): Contiene las opciones solicitadas por el usuario que envía los datos.

Relleno (variable): Se usa para asegurar que la cabecera del datagrama tenga una longitud múltiplo de 32.

Datos (variable): Es el campo de datos o carga útil, debe tener una longitud múltiplo de 8 bits. La máxima longitud del datagrama (datos más cabecera) es de 65535 bytes.



RECUADRO 2. Estructura del protocolo IPv6

Versión (4 bits): número de la versión del protocolo de Internet; el valor es 6.

Clase de tráfico (8 bits): Disponible para su uso por el nodo origen y/o los dispositivos de encaminamiento de reenvío para identificar y distinguir entre diferentes clases o prioridades de paquetes IPv6. El uso de este campo está todavía en estudio.

Etiqueta de flujo (20 bits): Se puede utilizar por un computador para etiquetar aquellos paquetes que requieren un tratamiento especial en los dispositivos dentro de la red.

Longitud de la carga útil (16 bits): Longitud del resto del paquete IPv6, excluida la cabecera, en bytes. En otras palabras representa la longitud total de todas las cabeceras de extensión más la PDU de la capa de transporte.

Cabecera siguiente (8 bits): Identifica el tipo de cabecera que sigue inmediatamente a la cabecera IPv6.

Límite de saltos (8 saltos): El número restante de saltos permitidos para este paquete. El límite de saltos se establece por la fuente a algún valor máximo deseado, y se decrementa en 1 en cada nodo que reenvía el paquete. El paquete se descarta si el límite de saltos se hace cero. Esto es una simplificación del procesamiento requerido por el campo tiempo de vida de IPv4. El consenso fue que el esfuerzo extra de contabilizar los intervalos de tiempo en IPv4 no incorporaba un valor significativo al protocolo.

Dirección origen (128 bits): La dirección de transmisor del paquete.

Dirección destino (128 bits): La dirección del receptor del paquete. Puede que éste no sea en realidad el último destino deseado si está presente la cabecera de encaminamiento.

Aunque la cabecera de IPv6 es más grande que la parte obligatoria de la cabecera de IPv4 (40 bytes frente 20 bytes), contiene menos campos (8 frente 12). Así, los dispositivos de encaminamiento tienen que hacer menos procesamiento por paquete, lo que agiliza el enrutamiento.



Otros Artículos relacionados:

El ABC de IPv4 (primera parte)
El ABC de IPv4 (segunda parte)

Comentarios
Buscar RSS
¡Sólo los usuarios registrados pueden escribir comentarios!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

LAST_UPDATED2