Articulo de referencia

Protocolo de Internet

El Protocolo de Internet ( IP ) es el protocolo de comunicaciones de la capa de red del conjunto de protocolos de Internet para retransmitir datagramas a través de los límites d...

El Protocolo de Internet ( IP ) es el protocolo de comunicaciones de la capa de red del conjunto de protocolos de Internet para retransmitir datagramas a través de los límites de la red. Su función de enrutamiento permite la interconexión de redes y, esencialmente, establece Internet .

El protocolo IP se encarga de entregar paquetes desde el host de origen al host de destino basándose únicamente en las direcciones IP contenidas en las cabeceras de los paquetes . Para ello, IP define estructuras de paquetes que encapsulan los datos que se van a entregar. También define métodos de direccionamiento que se utilizan para etiquetar el datagrama con información de origen y destino.

IP era el servicio de datagramas sin conexión del Programa de Control de Transmisión original , introducido por Vint Cerf y Bob Kahn en 1974, que se complementó con un servicio orientado a la conexión que se convirtió en la base del Protocolo de Control de Transmisión (TCP). Por lo tanto, el conjunto de protocolos de Internet se conoce a menudo como TCP/IP .

La primera versión principal de IP, el Protocolo de Internet versión 4 (IPv4), es el protocolo dominante de Internet. Su sucesor es el Protocolo de Internet versión 6 (IPv6), que se ha ido implementando cada vez más en Internet pública desde alrededor de 2006. [ 1 ]

Función

Encapsulación de datos de aplicación transmitidos por UDP en una trama de protocolo de enlace.

El Protocolo de Internet se encarga de direccionar las interfaces de host , encapsular los datos en datagramas (incluyendo la fragmentación y el reensamblaje ) y enrutar los datagramas desde una interfaz de host de origen a una interfaz de host de destino a través de una o más redes IP. [ 2 ] Para estos fines, el Protocolo de Internet define el formato de los paquetes y proporciona un sistema de direccionamiento.

Cada datagrama consta de dos componentes: una cabecera y una carga útil . La cabecera IP incluye la dirección IP de origen, la dirección IP de destino y otros metadatos necesarios para enrutar y entregar el datagrama. La carga útil son los datos que se transportan. Este método de anidar la carga útil de datos dentro de un paquete con una cabecera se denomina encapsulación.

El direccionamiento IP implica la asignación de direcciones IP y parámetros asociados a las interfaces de los hosts. El espacio de direcciones se divide en subredes , lo que implica la designación de prefijos de red. El enrutamiento IP lo realizan todos los hosts, así como los enrutadores , cuya función principal es transportar paquetes a través de los límites de la red. Los enrutadores se comunican entre sí mediante protocolos de enrutamiento especialmente diseñados , ya sean protocolos de puerta de enlace interior o protocolos de puerta de enlace exterior , según lo requiera la topología de la red. [ 3 ]

Métodos de direccionamiento

En el Protocolo de Internet existen cuatro métodos principales de direccionamiento:

  • La transmisión unicast entrega un mensaje a un único nodo específico mediante una asociación uno a uno entre un remitente y un destino: cada dirección de destino identifica de forma única un único punto final receptor.
  • La difusión entrega un mensaje a todos los nodos de la red mediante una asociación uno a todos ; un único datagrama (o paquete ) de un remitente se enruta a todos los posibles puntos finales asociados con la dirección de difusión . La red replica automáticamente los datagramas según sea necesario para llegar a todos los destinatarios dentro del alcance de la difusión, que generalmente es una subred completa .
  • La multidifusión entrega un mensaje a un grupo de nodos que han manifestado interés en recibirlo mediante una asociación de uno a muchos o de muchos a muchos ; los datagramas se enrutan simultáneamente en una única transmisión a múltiples destinatarios. La multidifusión se diferencia de la difusión en que la dirección de destino designa un subconjunto, no necesariamente todos, de los nodos accesibles.
  • Anycast entrega un mensaje a cualquiera de un grupo de nodos, generalmente al más cercano a la fuente, mediante una asociación uno a uno de muchos [ 4 ], donde los datagramas se enrutan a cualquier miembro de un grupo de receptores potenciales, todos identificados por la misma dirección de destino. El algoritmo de enrutamiento selecciona al receptor del grupo en función de cuál es el más cercano según alguna medida de distancia o costo.

Historial de versiones

Cronología del desarrollo del Protocolo de Control de Transmisión TCP y del Protocolo de Internet IP.
Primera demostración de Internet, que conectó ARPANET , PRNET y SATNET el 22 de noviembre de 1977.

En mayo de 1974, el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) publicó un documento titulado "Un protocolo para la intercomunicación de redes de paquetes". [ 5 ] Los autores del documento, Vint Cerf y Bob Kahn , describieron un protocolo de interconexión de redes para compartir recursos mediante la conmutación de paquetes entre nodos de red . Un componente de control central de este modelo era el Programa de Control de Transmisión (TCP), que incorporaba enlaces orientados a la conexión y servicios de datagramas entre hosts. El TCP monolítico se dividió posteriormente en una arquitectura modular que constaba del Protocolo de Control de Transmisión (TCP) y el Protocolo de Datagramas de Usuario (UDP) en la capa de transporte y el Protocolo de Internet (IP) en la capa de Internet . El modelo se conoció como el Modelo de Internet del Departamento de Defensa (DoD) y el conjunto de protocolos de Internet , y de manera informal como TCP/IP .

Los siguientes documentos de Notas sobre Experimentos de Internet (IEN) describen la evolución del Protocolo de Internet hasta la versión moderna de IPv4: [ 6 ]

  • El documento IEN 2, Comentarios sobre el Protocolo de Internet y TCP ( agosto de 1977), describe la necesidad de separar las funcionalidades de TCP y del Protocolo de Internet (que anteriormente estaban combinadas). Propone la primera versión del encabezado IP, utilizando el valor 0 para el campo de versión.
  • El documento IEN 26, " Propuesta de un nuevo formato de encabezado de Internet" ( febrero de 1978), describe una versión del encabezado IP que utiliza un campo de versión de 1 bit.
  • El borrador IEN 28 de la descripción del protocolo de interconexión de redes, versión 2 ( febrero de 1978), describe el protocolo IPv2.
  • La especificación del protocolo de interconexión de redes IEN 41, versión 4 ( junio de 1978), describe el primer protocolo que se denominó IPv4. El encabezado IP es diferente del encabezado IPv4 moderno.
  • El documento IEN 44 Latest Header Formats ( junio de 1978) describe otra versión de IPv4, también con una cabecera diferente a la cabecera IPv4 moderna.
  • La especificación del protocolo de interconexión de redes IEN 54, versión 4 ( septiembre de 1978), es la primera descripción de IPv4 que utiliza la cabecera que se estandarizaría en 1980 como RFC 760 . 
  • IEN 80
  • IEN 111
  • IEN 123
  • IEN 128/RFC 760 (1980)

Las versiones 1 a 3 de IP fueron versiones experimentales, diseñadas entre 1973 y 1978. [ 7 ] Las versiones 2 y 3 admitían direcciones de longitud variable que iban de 1 a 16 octetos (entre 8 y 128 bits). [ 8 ] Un borrador inicial de la versión 4 admitía direcciones de longitud variable de hasta 256 octetos (hasta 2048 bits) [ 9 ] pero esto se abandonó posteriormente en favor de una dirección de tamaño fijo de 32 bits en la versión final de IPv4 . Este sigue siendo el protocolo de interconexión de redes dominante en uso en la capa de Internet ; el número 4 identifica la versión del protocolo, que se transporta en cada datagrama IP. IPv4 está definido en RFC 791 (1981). 

La versión número 5 fue utilizada por el Protocolo de Transmisión de Internet , un protocolo de transmisión experimental que no fue adoptado. [ 7 ]

El sucesor de IPv4 es IPv6 . IPv6 fue el resultado de varios años de experimentación y diálogo durante los cuales se propusieron varios modelos de protocolo, como TP/IX ( RFC 1475 ), PIP ( RFC 1621 ) y TUBA (TCP y UDP con direcciones más grandes, RFC 1347 ). Su diferencia más destacada con respecto a la versión 4 es el tamaño de las direcciones. Mientras que IPv4 utiliza 32 bits para el direccionamiento, lo que produce aproximadamente 4.3 mil millones (   4,3 × 10 9 ) direcciones, IPv6 utiliza direcciones de 128 bits que proporcionan c.3,4 × 10³⁸ direcciones. Aunque la adopción de IPv6 ha sido lenta, a partir de enero de 2023 La mayoría de los países del mundo muestran una adopción significativa de IPv6, [ 10 ] con más del 41% del tráfico de Google transportado a través de conexiones IPv6. [ 11 ]

La asignación del nuevo protocolo como IPv6 fue incierta hasta que la debida diligencia aseguró que IPv6 no se había utilizado previamente. [ 12 ] A otros protocolos de la capa de Internet se les han asignado números de versión, [ 13 ] como 7 ( IP/TX ), 8 y 9 ( histórico ). Cabe destacar que, el 1 de abril de 1994, el IETF publicó una solicitud de comentarios (RfC) del Día de los Inocentes sobre IPv9. [ 14 ] IPv9 también se utilizó en una propuesta alternativa de expansión del espacio de direcciones llamada TUBA. [ 15 ] Una propuesta china de 2004 para un protocolo IPv9 parece no estar relacionada con todo esto y no cuenta con el respaldo del IETF.

números de versión IP

Dado que el número de versión se almacena en un campo de cuatro bits, solo se pueden asignar los números del 0 al 15.

Fiabilidad

El diseño del conjunto de protocolos de Internet se rige por el principio de extremo a extremo , un concepto adaptado del proyecto CYCLADES . Según este principio, la infraestructura de red se considera inherentemente poco fiable en cualquier elemento de red o medio de transmisión, y es dinámica en cuanto a la disponibilidad de enlaces y nodos. No existe ningún sistema central de monitorización o medición del rendimiento que supervise o mantenga el estado de la red. Para reducir la complejidad de la red, la inteligencia reside en los nodos finales .

Como consecuencia de este diseño, el Protocolo de Internet solo ofrece entrega de mejor esfuerzo y su servicio se caracteriza por ser poco fiable . En términos de arquitectura de redes, es un protocolo sin conexión , a diferencia de la comunicación orientada a la conexión . Pueden producirse diversas condiciones de fallo, como corrupción de datos , pérdida y duplicación de paquetes. Debido a que el enrutamiento es dinámico, lo que significa que cada paquete se trata de forma independiente, y a que la red no mantiene ningún estado basado en la ruta de los paquetes anteriores, diferentes paquetes pueden enrutarse al mismo destino a través de rutas distintas, lo que da lugar a una entrega desordenada al receptor.

Todas las fallas en la red deben ser detectadas y compensadas por los nodos finales participantes. Los protocolos de capa superior del conjunto de protocolos de Internet son responsables de resolver los problemas de confiabilidad. Por ejemplo, un host puede almacenar en búfer los datos de la red para garantizar el orden correcto antes de que se entreguen a una aplicación.

IPv4 proporciona salvaguardas para garantizar que la cabecera de un paquete IP esté libre de errores. Un nodo de enrutamiento descarta los paquetes que no superan una prueba de suma de comprobación de cabecera . Aunque el Protocolo de mensajes de control de Internet (ICMP) proporciona notificación de errores, un nodo de enrutamiento no está obligado a notificar a ninguno de los nodos finales sobre los errores. IPv6, por el contrario, funciona sin sumas de comprobación de cabecera, ya que se supone que la tecnología actual de la capa de enlace proporciona una detección de errores suficiente. [ 25 ] : §6.2 [ 19 ]

La naturaleza dinámica de Internet y la diversidad de sus componentes no garantizan que una ruta específica sea capaz o adecuada para transmitir los datos solicitados. Una de las limitaciones técnicas es el tamaño de los paquetes de datos posibles en un enlace determinado. Existen herramientas para examinar el tamaño máximo de la unidad de transmisión (MTU) del enlace local, y se puede utilizar el descubrimiento de MTU de ruta para toda la ruta prevista hasta el destino. [ 26 ]

La capa de interconexión de IPv4 fragmenta automáticamente un datagrama en unidades más pequeñas para su transmisión cuando se supera la MTU del enlace. IP permite reordenar los fragmentos recibidos fuera de orden. [ 27 ] Una red IPv6 no realiza la fragmentación en los elementos de red, pero requiere que los hosts finales y los protocolos de capas superiores eviten superar la MTU de la ruta. [ 28 ]

El Protocolo de Control de Transmisión (TCP) es un ejemplo de protocolo que ajusta el tamaño de sus segmentos para que sean menores que la MTU. El Protocolo de Datagramas de Usuario (UDP) e ICMP no tienen en cuenta el tamaño de la MTU, lo que obliga a IP a fragmentar los datagramas de tamaño excesivo. [ 29 ]

Seguridad

Durante la fase de diseño de ARPANET y los inicios de Internet, no se previeron adecuadamente los aspectos y necesidades de seguridad de una red pública e internacional. En consecuencia, muchos protocolos de Internet presentaban vulnerabilidades que fueron evidenciadas por ataques a la red y evaluaciones de seguridad posteriores. En 2008, se publicó una evaluación de seguridad exhaustiva y se propusieron medidas para mitigar los problemas. [ 30 ] El IETF ha continuado realizando estudios adicionales. [ 31 ]

Véase también

Referencias

  1. La economía de la transición al protocolo de Internet versión 6 (IPv6) (Informe). Documentos de la OCDE sobre la economía digital. OCDE. 6 de noviembre de 2014. doi : 10.1787/5jxt46d07bhc-en . Archivado del original el 7 de marzo de 2021. Consultado el 4 de diciembre de 2020 .
  2. Charles M. Kozierok, The TCP/IP Guide , archivado del original el 20 de junio de 2019 , consultado el 22 de julio de 2017.
  3. "Tecnologías IP y migración — EITC" . www.eitc.org . Archivado del original el 5 de enero de 2021. Consultado el 4 de diciembre de 2020 .
  4. Goścień, Róża; Walkowiak, Krzysztof; Klinkowski, Mirosław (14 de marzo de 2015). "Algoritmo de búsqueda tabú para enrutamiento, modulación y asignación de espectro en red óptica elástica con tráfico anycast y unicast" . Redes de Computadoras . 79 : 148–165 . doi : 10.1016/j.comnet.2014.12.004 . ISSN 1389-1286 . 
  5. Cerf, V.; Kahn, R. (1974). "Un protocolo para la intercomunicación de redes de paquetes" (PDF) . IEEE Transactions on Communications . 22 (5): 637– 648. doi : 10.1109/TCOM.1974.1092259 . ISSN 1558-0857 . Archivado (PDF) del original el 6 de enero de 2017. Recuperado el 6 de abril de 2020. Los autores desean agradecer a varios colegas por sus útiles comentarios durante las primeras discusiones sobre protocolos de redes internacionales, especialmente a R. Metcalfe, R. Scantlebury, D. Walden y H. Zimmerman; D. Davies y L. Pouzin, quienes comentaron de manera constructiva sobre los problemas de fragmentación y contabilidad; y S. Crocker, quien comentó sobre la creación y destrucción de asociaciones. 
  6. "Índice de notas sobre experimentos de Internet" . www.rfc-editor.org . Consultado el 21 de enero de 2024 .
  7. 1 2 Stephen Coty (11 de febrero de 2011). "¿Dónde están IPv1, 2, 3 y 5?" . Archivado del original el 2 de agosto de 2020. Recuperado el 25 de marzo de 2020 .
  8. Postel, Jonathan B. (febrero de 1978). "Borrador de la especificación del protocolo de interconexión de redes, versión 2" (PDF) . Editor de RFC . IETF . IEN 28. Consultado el 6 de octubre de 2022 .Archivado el 16 de mayo de 2019 en Wayback Machine.
  9. Postel, Jonathan B. (junio de 1978). "Especificación del protocolo de Internet versión 4" (PDF) . Editor de RFC . IETF . IEN 41. Recuperado el 11 de febrero de 2024 .Archivado el 16 de mayo de 2019 en Wayback Machine.
  10. Strowes, Stephen (4 de junio de 2021). "Adopción de IPv6 en 2021" . RIPE Labs . Archivado del original el 20 de septiembre de 2021. Recuperado el 20 de septiembre de 2021 .
  11. "IPv6" . Google . Archivado del original el 14 de julio de 2020. Consultado el 19 de mayo de 2023 .
  12. Mulligan, Geoff. "Era casi IPv7" . O'Reilly . Archivado del original el 5 de julio de 2015. Recuperado el 4 de julio de 2015 .
  13. "Números de versión IP" . Autoridad de Números Asignados de Internet . Archivado del original el 18 de enero de 2019. Consultado el 25 de julio de 2019 .
  14. RFC 1606 : Una perspectiva histórica sobre el uso de la IP, versión 9. 1 de abril de 1994. 
  15. Ross Callon (junio de 1992). TCP y UDP con direcciones más grandes (TUBA), una propuesta simple para el direccionamiento y enrutamiento de Internet . IETF . doi : 10.17487/RFC1347 . RFC 1347 .
  16. 1 2 Jeff Doyle; Jennifer Carroll (2006). Enrutamiento TCP/IP . Vol. 1 (2.ª ed.). Cisco Press. pág. 8. ISBN    978-1-58705-202-6.
  17. J. Postel , ed. ( septiembre de 1981). PROTOCOLO DE INTERNET - ESPECIFICACIÓN DEL PROTOCOLO DEL PROGRAMA DE INTERNET DE DARPA . IETF . doi : 10.17487/RFC0791 . STD 5. RFC 791. IEN 128, 123, 111, 80, 54, 44, 41, 28, 26.Estándar de Internet 5. Deja obsoleto el RFC 760. Actualizado por los RFC 1349 , 2474 y 6864 .  
  18. L. Delgrossi; L. Berger, eds. (agosto de 1995). Especificación del protocolo de flujo de Internet versión 2 (ST2) - Versión ST2+ . Grupo de trabajo de redes. doi : 10.17487/RFC1819 . RFC 1819 .Histórico. Obsoletos RFC 1190 e IEN 119. 
  19. 1 2 S. Deering ; R. Hinden (julio de 2017). Especificación del protocolo de Internet, versión 6 (IPv6) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC8200 . STD 86. RFC 8200 .Estándar de Internet 86. Obsoleto RFC 2460 . 
  20. R. Ullmann (junio de 1993). TP/IX: El próximo Internet . Grupo de trabajo de redes. doi : 10.17487/RFC1475 . RFC 1475 .Histórico. Obsoleto según RFC 6814 . 
  21. C. Pignataro; F. Gont (noviembre de 2012). Eliminación formal de algunas opciones de IPv4 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6814 . ISSN 2070-1721 . RFC 6814 . Norma propuesta. Sustituye a las RFC 1385 , 1393 , 1475 y 1770 . 
  22. P. Francis (mayo de 1994). Arquitectura a corto plazo de Pip . Grupo de trabajo de redes. doi : 10.17487/RFC1621 . RFC 1621 .Histórico.
  23. Ross Callon (junio de 1992). TCP y UDP con direcciones más grandes (TUBA), una propuesta simple para el direccionamiento y enrutamiento de Internet . Grupo de trabajo de redes. doi : 10.17487/RFC1347 . RFC 1347 .Histórico.
  24. J. Onions (1 de abril de 1994). Una perspectiva histórica sobre el uso de IP versión 9. Grupo de trabajo de redes. doi : 10.17487/RFC1606 . RFC 1606 .Informativo. Esta es una solicitud de comentarios con motivo del Día de los Inocentes .
  25. C. Partridge; F. Kastenholz (diciembre de 1994). Criterios técnicos para elegir IP de próxima generación (IPng) . Grupo de trabajo de redes. doi : 10.17487/RFC1726 . RFC 1726 .Informativo.
  26. Rishabh, Anand (2012). Comunicación inalámbrica . S. Chand Publishing. ISBN 978-81-219-4055-9Archivado del original el 12 de junio de 2024. Consultado el 11 de diciembre de 2020 .
  27. ^ Siyan, Karanjit. Dentro de TCP/IP , New Riders Publishing, 1997. ISBN 1-56205-714-6
  28. Bill Cerveny (25 de julio de 2011). "Fragmentación de IPv6" . Arbor Networks . Archivado del original el 16 de septiembre de 2016. Consultado el 10 de septiembre de 2016 .
  29. Parker, Don (2 de noviembre de 2010). "Recorrido básico de un paquete" . Symantec . Symantec . Archivado del original el 20 de enero de 2022. Recuperado el 4 de mayo de 2014 .
  30. Fernando Gont (julio de 2008), Evaluación de seguridad del protocolo de Internet (PDF) , CPNI , archivado del original (PDF) el 11 de febrero de 2010.
  31. F. Gont (julio de 2011). Evaluación de seguridad del protocolo de Internet versión 4. IETF . doi : 10.17487 /RFC6274 . RFC 6274 .
  • Manfred Lindner. "Tecnología IP" (PDF) . Consultado el 11 de febrero de 2018 .
  • Manfred Lindner. "Enrutamiento IP" (PDF) . Consultado el 11 de febrero de 2018 .