IP VERSION 4 VS IP VERSION 6

IP (Internet Protocol) versión 4
El IP es un protocolo que pertenece al nivel de red, por lo tanto, es utilizado por los protocolos del nivel de transporte como TCP para encaminar los datos hacia su destino. IP tiene únicamente la misión de encaminar el datagrama, sin comprobar la integridad de la información que contiene. Para ello se utiliza una nueva cabecera que se antepone al datagrama que se está tratando. Suponiendo que el protocolo TCP ha sido el encargado de manejar el datagrama antes de pasarlo al IP, la estructura del mensaje una vez tratado quedaría así:Cabecera IP(20 byte) Cabecera TCP(20 byte) DatosLa cabecera IP tiene un tamaño de 160 bit y está formada por varios campos de distinto significado. Estos campos son:
Versión: Número de versión del protocolo IP utilizado. Tendrá que tener el valor 4. Tamaño: 4 bit.
Longitud de la cabecera: (Internet Header Length, IHL) Especifica la longitud de la cabecera expresada en el número de grupos de 32 bit que contiene. Tamaño: 4 bit.
Tipo de servicio: El tipo o calidad de servicio se utiliza para indicar la prioridad o importancia de los datos que se envían, lo que condicionará la forma en que éstos serán tratados durante la transmisión. Tamaño: 8 bit.
Longitud total: Es la longitud en bytes del datagrama completo, incluyendo la cabecera y los datos. Como este campo utiliza 16 bit, el tamaño máximo del datagrama no podrá superar los 65.535 bytes, aunque en la práctica este valor será mucho más pequeño. Tamaño: 16 bit.
Identificación: Valor de identificación que se utiliza para facilitar el ensamblaje de los fragmentos del datagrama. Tamaño: 16 bit.
Flags: Indicadores utilizados en la fragmentación. Tamaño: 3 bit.
Fragmentación: Contiene un valor (offset) para poder ensamblar los datagramas que se hayan fragmentado. Está expresado en número de grupos de 8 bytes (64 bit), comenzando con el valor cero para el primer fragmento. Tamaño: 16 bit.
Límite de existencia: Contiene un número que disminuye cada vez que el paquete pasa por un sistema. Si este número llega a cero, el paquete será descartado. Esto es necesario por razones de seguridad para evitar un bucle infinito, ya que aunque es bastante improbable que esto suceda en una red correctamente diseñada, no debe descuidarse esta posibilidad. Tamaño: 8 bit.
Protocolo: El número utilizado en este campo sirve para indicar a qué protocolo pertenece el datagrama que se encuentra a continuación de la cabecera IP, de manera que pueda ser tratado correctamente cuando llegue a su destino. Tamaño: 8 bit.
Comprobación: El campo de comprobación (checksum) es necesario para verificar que los datos contenidos en la cabecera IP son correctos. Por razones de eficiencia este campo no puede utilizarse para comprobar los datos incluidos a continuación, sino que estos datos de usuario se comprobarán posteriormente a partir del campo de comprobación de la cabecera siguiente, y que corresponde al nivel de transporte. Este campo debe calcularse de nuevo cuando cambia alguna opción de la cabecera, como puede ser el límite de existencia. Tamaño: 16 bit.
Dirección de origen: Contiene la dirección del host que envía el paquete. Tamaño: 32 bit.
Dirección de destino: Esta dirección es la del host que recibirá la información. Los routers o gateways intermedios deben conocerla para dirigir correctamente el paquete. Tamaño: 32 bit.
IP (Internet Protocol) versión 6
IPv6 o (IPv6) es la nueva versión del Protocolo Internet,diseñado como el sucesor para el IP versión 4 (IPv4) [RFC-791]. Los cambios del IPv4 al IPv6 recaen principalmente en las siguientes categorías:
Capacidades de Direccionamiento Extendida El IPv6 incrementa el tamaño de dirección IP de 32 bits a 128 bits, para dar soporte a más niveles de direccionamiento jerárquico, un número mucho mayor de nodos direccionables, y una autoconfiguración más simple de direcciones. La escalabilidad del enrutamiento multienvío se mejora agregando un campo "ámbito" a las direcciones multienvío. Y se define un nuevo tipo de dirección llamada "dirección envío a uno de", usado para enviar un paquete a cualquiera de un grupo de nodos.
Simplificación del Formato de Cabecera Algunos campos de la cabecera IPv4 se han sacado o se han hecho opcional, para reducir el costo del caso común de proceso de tratamiento de paquete y para limitar el costo del ancho de banda, de la cabecera IPv6.
Soporte Mejorado para las 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 en la longitud de opciones, y mayor flexibilidad para introducir nuevas opciones en el futuro.
Capacidad de Etiquetado de Flujo Una nueva capacidad se agrega para permitir el etiquetado de paquetes que pertenecen a "flujos" de tráfico particulares para lo cuál el remitente solicita tratamiento especial, como la calidad de servicio no estándar o el servicio en "tiempo real".
Capacidades de Autenticación y Privacidad
Extensiones para utilizar autenticación, integridad de los datos, y (opcional) confidencialidad de los datos, se especifican para el IPv6.
Diseñado por Steve Deering de Xerox PARC y Craig Mudge, IPv6 está destinado a sustituir al IPv4, cuyo límite en el número de direcciones de red admisibles está empezando a restringir el crecimiento de Internet y su uso, especialmente en China, India, y otros países asiáticos densamente poblados. Pero el nuevo estándar mejorará el servicio globalmente; por ejemplo, proporcionará a futuras celdas telefónicas y dispositivos móviles con sus direcciones propias y permanentes. Al día de hoy se calcula que las dos terceras partes de las direcciones que ofrece IPv4 ya están asignadas.
IPv4 soporta 4.294.967.296 (232) direcciones de red diferentes, un número inadecuado para dar una dirección a cada persona del planeta, y mucho menos para cada coche, teléfono, PDA, etcétera; mientras que IPv6 soporta 340.282.366.920.938.463.463.374.607.431.768.211.456 (2128 ó 340 sextillones) direcciones —cerca de 3,4 × 1020 (340 trillones) direcciones por cada pulgada cuadrada (6,7 × 1017 ó 670 mil billones direcciones/mm2) de la superficie de La Tierra.
Adoptado por el Internet Engineering Task Force en 1994 (cuando era llamado "IP Next Generation" o IPng), IPv6 cuenta con un pequeño porcentaje de las direcciones públicas de Internet, que todavía están dominadas por IPv4. La adopción de IPv6 ha sido frenada por la traducción de direcciones de red (NAT), que alivia parcialmente el problema de la falta de direcciones IP. Pero NAT hace difícil o imposible el uso de algunas aplicaciones P2P (aplicaciones para la transferencia de datos entre personas de forma casi directa), como son la voz sobre IP (VoIP) y juegos multiusuario. Además, NAT rompe con la idea originaria de Internet donde todos pueden conectarse con todos. Actualmente, el gran catalizador de IPv6 es la capacidad de ofrecer nuevos servicios, como la movilidad, Calidad de Servicio (QoS), privacidad, etc. El gobierno de los Estados Unidos ha ordenado el despliegue de IPv6 por todas sus agencias federales para el año 2008.
Se espera que IPv4 se siga soportando hasta por lo menos el 2011, dado que hay muchos dispositivos heredados que no se migrarán a IPv6 nunca y que seguirán siendo utilizados por mucho tiempo.
IPv6 es la segunda versión del Protocolo de Internet que se ha adoptado para uso general. También hubo un IPv5, pero no fue un sucesor de IPv4; mejor dicho, fue un protocolo experimental orientado al flujo de streaming que intentaba soportar voz, video y audio.
En un corto periodo de tiempo, se han conectado las PC a LAN, se han conectado las LAN entre sí y las WAN, todo ello, a menudo, se ha conectado con el mundo externo. El resultado es una Internet extraordinariamente diversa con millones de usuarios.
El diseño del sistema original de direcciones IP no era el apropiado para un entorno como éste. El espacio de números resultaba pequeño. Al contrario que con el sistema telefónico, que utiliza un código de país y de área, la numeración no era jerárquica. Los bloques de números se asignaban a las organizaciones de manera muy ineficiente, desperdiciandoce gran parte del espacio de números.
El resultado es que el espacio de números se ha agotado. Además como los números no se asignan jerárquicamente las tablas de enrutamiento crecen muy rápidamente. No se espera una reducción de la expansión de Internet. Hay un crecimiento continuo en la expansión de las computadoras personales y su conectividad a la red global. Además, aparecen nuevos desafíos:
La comunicación de las nuevas generaciones de computadoras personales móviles y los asistentes personales digitales.
La anticipación de la demanda de audio y vídeo en tiempo real, que pondrá la actual tecnología en sus límites.
El mundo del comercio se ha trasladado a Internet y ha quedado claro que ya es hora de crear una infraestructura segura de red.
Hay otro problema que preocupa a los administradores. Muchas organizaciones usan redes troncales de IP para conectar entre sí redes y para trasladar el tráfico de un lugar a otro envuelto en cabeceras de IP. En la actualidad se hace de cualquier manera y a menudo sin utilizar algún mecanismo de control de congestión en la red.
El desarrollo de IPv6, se ha visto estimulado por la urgente necesidad de resolver los problemas de direcciones de Internet, enrutamiento, rendimiento, seguridad y congestión.

DESCRIPCION GENERAL DE IPv6
Las características de IPv6 son las siguientes:
Dispone de direcciones de 128 bits, 16 octetos, que se pueden estructurar jerárquicamente para simplificar la delegación de direcciones y el encaminamiento.
Simplifica la cabecera principal IP, pero define muchas cabeceras de extensión opcionales. De esta forma se pueden incorporar las nuevas funciones de intercomunicación cuando lo necesiten.
Dispone de autenticación, integridad de datos y confidencialidad en el nivel de IP.
Introduce flujos, que se pueden utilizar para disponer de nuevos tipos de requisitos de transmisión, como el vídeo en tiempo real.
Facilita el encapsulado de otros protocolos y proporciona un mecanismo de control de congestión cuando transporta protocolos extraños.
Proporciona nuevos métodos de autoconfiguración automática de direcciones e incorpora una comprobación de que las direcciones son únicas.
Mejora el descubrimiento del encaminador y la detección de encaminadores fuera de servicio o vecinos inalcanzables por el enlace.
Asignación de Direcciones
Con un espacio de direcciones de 128 bits hay sitio para muchos tipos diferentes de direcciones, como:
Proveedores jerárquicos de servicios según una dirección de unienvío global.
Direcciones geográficas jerárquicas de unienvío globales.
Direcciones privadas para uso exclusivo de una organización.
Direcciones locales y globales de unienvío.
LA versión 6 no usa difusión, sino que confía en el multienvío para funciones de control como la resolución de direcciones y el arranque. La razón para ello es que la difusión de un mensaje interrumpe a todos los dispositivos de enlace. En la mayoría de las ocasiones sólo unos pocos dispositivos necesitan realmente examinar el mensaje. Además, al restringir los mensajes de control de la versión 6 a direcciones de multienvío se evita que haya interferencias entre las versiones 4 y 6 cuando comparten un mismo enlace.
Paquetes IPv6
Un paquete en IPv6 está compuesto principalmente de dos partes: la cabecera y los datos.
La cabecera está en los primeros 40 bytes (320 bits) del paquete y contiene las direcciones de origen y destino (128 bits cada una), la versión de IP (4 bits), la clase de tráfico (8 bits, Prioridad del Paquete), etiqueta de flujo (20 bits, manejo de la Calidad de Servicio), longitud del campo de datos (16 bits), cabecera siguiente (8 bits), y límite de saltos (8 bits, Tiempo de Vida). Después viene el campo de datos, con los datos que transporta el paquete, que puede llegar a 64k de tamaño en el modo normal, o más con la opción "jumbo payload".
Cabeceras de extensión de IPv6
El uso de un formato flexible de cabeceras de extensión opcionales es una idea innovadora que permite ir añadiendo funcionalidades de forma paulatina. Este diseño aporta gran eficacia y flexibilidad ya que se pueden definir en cualquier momento a medida que se vayan necesitando entre la cabecera fija y la carga útil.
Hasta el momento, existen 8 tipos de cabeceras de extensión, donde la cabecera fija y las de extensión opcionales incluyen el campo de cabecera siguiente que identifica el tipo de cabeceras de extensión que viene a continuación o el identificador del protocolo de nivel superior. Luego las cabeceras de extensión se van encadenando utilizando el campo de cabecera siguiente que aparece tanto en la cabecera fija como en cada una de las citadas cabeceras de extensión. Como resultado de la secuencia anterior, dichas cabeceras de extensión se tienen que procesar en el mismo orden en el que aparecen en el datagrama. Todas o parte de estas cabeceras de extensión tienen que ubicarse en el datagrama en el orden especificado:
Cabecera principal, tiene al contrario que la cabecera de la versión IPv4 un tamaño fijo de 40 octetos.
Cabecera de opciones de salto a salto (Hop-by-Hop), transporta información opcional, contiene los datos que deben ser examinado por cada nodo (cualquier sistema con IPv6) a través de la ruta de envío de un paquete. Su código es 0.
Cabecera de encaminamiento (Routing), se utiliza para que un origen IPv6 indique uno o más nodos intermedios que se han de visitar en el camino del paquete hacia el destino. El código que utiliza es 43.
Encaminamiento desde la fuente.
Cabecera de fragmentación (Fragment), hace posible que el origen envíe un paquete más grande de lo que cabría en la MTU de la ruta (unidad máxima de transferencia). Hay que tener en cuenta que al contrario que en IPv4, en IPv6 la fragmentación de un paquete solo se puede realizar en los nodos de origen. El código empleado en esta cabecera es 44.
Cabecera de autenticación (Authentication Header), nos sirve para proveer servicios de integridad de datos, autenticación del origen de los datos, antireplay para IP. El código de esta cabecera es 51.
Cabecera de encapsulado de seguridad de la carga útil (Encapsulating Security Payload), permiten proveer servicios de integridad de datos. El código al que hace referencia esta cabecera es el 50.
Cabecera de opciones para el destino (Destination), se usa para llevar información opcional que necesita ser examinada solamente por los nodos destino del paquete. La última de las cabeceras utiliza el código 60.
Cada cabecera de extensión debe aparecer como mucho una sola vez, salvo la cabecera de opción destino, que puede aparecer como mucho dos veces, una antes de la cabecera encaminamiento y otra antes de la cabecera de la capa superior.