A diferencia de la arquitectura de Internet basada en IP y orientada al host , la Red Centrada en el Contenido (CCN) prioriza el contenido al hacerlo directamente direccionable y enrutable. Los puntos finales se comunican mediante datos con nombre en lugar de direcciones IP. La CCN se caracteriza por el intercambio básico de mensajes de solicitud de contenido (denominados "Intereses") y mensajes de respuesta de contenido (denominados "Objetos de Contenido"). Se considera una arquitectura de red centrada en la información (ICN).
Los objetivos de CCN son proporcionar una red más segura, flexible y escalable, abordando así los requisitos actuales de Internet para la distribución de contenido protegido a gran escala a una diversa gama de dispositivos finales. CCN incorpora un modelo de seguridad que protege explícitamente las piezas individuales de contenido en lugar de proteger la conexión o "canal". Proporciona flexibilidad adicional utilizando nombres de datos en lugar de nombres de host (direcciones IP). Además, el contenido nombrado y protegido reside en cachés distribuidas que se llenan automáticamente bajo demanda o se prellenan selectivamente. Cuando se solicita por nombre, CCN entrega el contenido nombrado al usuario desde la caché más cercana, recorriendo menos saltos de red, eliminando solicitudes redundantes y consumiendo menos recursos en general. CCN comenzó como un proyecto de investigación en el Palo Alto Research Center (PARC) en 2007. La primera versión de software (CCNx 0.1) estuvo disponible en 2009. [ 1 ] CCN es el antecesor de enfoques relacionados, incluyendo la red de datos nombrados . La tecnología CCN y su código fuente abierto fueron adquiridas por Cisco en febrero de 2017. [ 2 ]
Historia
Los principios de las redes centradas en la información se describieron por primera vez en las 17 reglas originales del Proyecto Xanadu de Ted Nelson en 1979. En 2002, Brent Baccala presentó un borrador de Internet que diferenciaba entre redes orientadas a la conexión y a los datos, y sugirió que la arquitectura web de Internet se estaba volviendo rápidamente más orientada a los datos. [ 3 ] En 2006, el proyecto DONA [ 4 ] en UC Berkeley e ICSI propuso una arquitectura de red centrada en la información, que mejoró TRIAD [ 5 ] al incorporar seguridad (autenticidad) y persistencia como primitivas de primera clase en la arquitectura. El 30 de agosto de 2006, el investigador asociado de PARC, Van Jacobson, dio una charla titulada "Una nueva forma de ver las redes" en Google. [ 6 ] El proyecto CCN se lanzó oficialmente en PARC en 2007. En 2009, PARC anunció el proyecto CCNx (Red Centrada en el Contenido), publicando las especificaciones de interoperabilidad y una implementación de código abierto en el sitio web del Proyecto CCNx el 21 de septiembre de 2009. El diseño original de CCN se describió en un artículo publicado en la Conferencia Internacional sobre Experimentos y Tecnologías de Redes Emergentes (CoNEXT) en diciembre de 2009. [ 7 ]
Las reuniones anuales de la comunidad CCNx se llevaron a cabo en 2011, [ 8 ] 2012, [ 9 ] 2013 [ 10 ] y 2015. [ 11 ]
La especificación del protocolo CCNx 1.0 está disponible para comentarios y debate. El trabajo sobre CCNx se realiza de forma abierta en el grupo de investigación ICNRG IRTF .
Especificación
La especificación CCNx se publicó en algunos borradores del IETF . Las especificaciones incluían:
- borrador-irtf-icnrg-ccnxsemantics-01
- borrador-irtf-icnrg-ccnxmessages-01
- borrador-mosko-icnrg-ccnxurischeme-00
Se propuso la integración fluida de datos dentro de un entorno de ejecución abierta como un factor importante para proteger la seguridad de los análisis basados en la nube y el cifrado de red clave. [ 12 ] La fuerza impulsora para adoptar estas heurísticas fue doble: que los flujos de datos interrumpidos por lotes permanecieran confinados a un entorno de ejecución óptimo y que el acceso seguro a la nube compartida dependiera de procesos analíticos integradores. [ 13 ]
Software
El software CCNx estaba disponible en GitHub .
Motivación y beneficios
El objetivo funcional del Protocolo de Internet, tal como fue concebido y creado en la década de 1970, era permitir que dos máquinas, una con recursos y la otra que deseaba acceder a ellos, se comunicaran entre sí. El principio de funcionamiento consistía en asignar direcciones a los puntos finales, lo que permitía que estos se localizaran y se conectaran entre sí.
Desde aquellos primeros tiempos, se han producido cambios fundamentales en la forma en que se utiliza Internet: desde la proliferación de servicios de redes sociales hasta la visualización y el intercambio de contenido digital como vídeos, fotografías, documentos, etc. En lugar de proporcionar conectividad básica, Internet se ha convertido en gran medida en una red de distribución por la que fluyen enormes cantidades de contenido de vídeo y páginas web desde los proveedores hasta los usuarios. Cada vez más, los usuarios de Internet actuales exigen un acceso más rápido, eficiente y seguro al contenido, sin preocuparse por su ubicación.
Las redes también se utilizan en muchos entornos donde el modelo de comunicación TCP/IP tradicional no resulta adecuado. El Internet de las Cosas (IoT) y las redes de sensores son ejemplos de entornos donde el modelo de comunicación origen-destino no siempre ofrece la mejor solución.
CCN fue diseñado para funcionar en diversos entornos, desde centros de datos de alta velocidad hasta sensores con recursos limitados. El objetivo de CCN es:
- Seguro: El modelo de comunicación CCN protege los datos, pero no el canal de comunicación entre dos hosts finales específicos. Sin embargo, el almacenamiento en caché de contenido generalizado y la ausencia de un canal de comunicación seguro entre los hosts finales plantean el desafío de proteger el contenido contra el acceso no autorizado, lo que requiere mayor cuidado y soluciones. [ 14 ]
- Flexible: CCN utiliza nombres para comunicarse. Los nombres pueden ser independientes de la ubicación y son mucho más adaptables que las direcciones IP. Los elementos de la red pueden tomar decisiones más avanzadas en función de las solicitudes y los datos identificados con nombres.
- Escalable: CCN permite que la red se escale al permitir el almacenamiento en caché, habilitar el tráfico multicast nativo, proporcionar equilibrio de carga nativo y facilitar la planificación de recursos.
Conceptos básicos
Los mensajes de objetos de contenido son cargas útiles con nombre que representan fragmentos de datos del tamaño de la red. Los nombres son una serie jerárquica de segmentos binarios que los publicadores de contenido asignan a los objetos de contenido. Las firmas son enlaces criptográficos entre un nombre, una carga útil y el ID de clave del publicador. Esto se utiliza para verificar la procedencia. Los mensajes de interés son solicitudes de objetos de contenido que coinciden con el nombre, junto con algunas restricciones opcionales sobre dicho objeto.
El protocolo principal funciona de la siguiente manera: Los consumidores solicitan contenido enviando un mensaje de Interés con el nombre del contenido deseado. La red enruta el interés basándose en el nombre mediante la coincidencia del prefijo más largo . El interés deja un estado a medida que recorre la red. Este estado se almacena en la Tabla de Intereses Pendientes (PIT). Cuando se encuentra una coincidencia (cuando un Interés coincide con un Objeto de Contenido), el contenido se envía de vuelta por la ruta inversa del Interés, siguiendo el estado PIT creado por el Interés.
Dado que el contenido es autoidentificable (mediante el nombre y la vinculación de seguridad), cualquier objeto de contenido puede almacenarse en caché. Los mensajes de interés pueden compararse con las cachés durante el proceso, no solo en los sitios web de los editores.
También es posible el almacenamiento en caché distribuido dentro de una red centrada en el contenido, lo que requiere parámetros de acceso multifuncionales en toda la base de datos. Esto permite que los algoritmos de cifrado de red compartida utilicen limitaciones de acceso basadas en roles para los usuarios según niveles de autorización definidos. [ 15 ]
Lanzamientos de CCNx
CCNx 0.x
Los intereses asocian objetos de contenido según sus prefijos de nombre. Por ejemplo, un interés para /a/b coincidiría con un objeto de contenido llamado /a/b/c/d o /a/b. Los intereses incluyen restricciones en forma de selectores. Estos ayudan a la red a determinar cuáles de las posibles coincidencias de prefijo son las correctas. Por ejemplo, un interés podría excluir ciertos nombres, solicitar un número mínimo o máximo de segmentos de nombre adicionales, etc.
Los objetos de contenido tienen un componente de nombre final implícito que es igual al hash del objeto de contenido. Esto se puede usar para hacer coincidir con un nombre.
La codificación de paquetes se realiza mediante CCNB (un formato propietario basado en un tipo de XML binario).
La última versión de esta rama es la 0.8.2. El software está disponible bajo licencia GPL. También se encuentran disponibles las especificaciones y la documentación .
CCNx 1.x
CCNx 1.x difiere de CCNx 0.x de las siguientes maneras: [ 16 ]
Los intereses se asocian a los objetos de contenido por su nombre exacto, no por sus prefijos. Por lo tanto, un interés para /a/b/ solo coincidirá con un objeto de contenido con el nombre /a/b. Los intereses pueden restringir las coincidencias según el KeyID del editor o el ContentObjectHash del objeto.
Se utiliza un formato anidado de tipo-longitud-valor (TLV) para codificar todos los mensajes transmitidos. Cada mensaje se compone de un conjunto de encabezados de paquete y un mensaje de protocolo que incluye el nombre, el contenido (o carga útil ) e información utilizada para validar criptográficamente el mensaje; todo ello contenido en TLV anidados.
Las especificaciones de CCNx 1.0 están disponibles en: http://blogs.parc.com/ccnx/specifications/
Obras derivadas
- La red de datos con nombre es un proyecto financiado por la NSF basado en el código original CCNx 0.x.
- CCN-lite es una versión ligera de CCNx que es funcionalmente interoperable con CCN 0.x.
Proyectos relacionados
- GreenICN es un proyecto centrado en escenarios de recuperación ante desastres que utiliza un paradigma de redes centradas en la información.
Véase también
Referencias
- ↑ Versión actual del código de CCNx , consultada el 1 de agosto de 2014.
- ↑ Cisco adquiere la plataforma de redes centradas en contenido de PARC. Archivado el 11 de julio de 2018 en Wayback Machine . Consultado el 1 de marzo de 2017.
- ↑ Baccala, Brent (agosto de 2002). "Redes orientadas a datos"
- ↑ Koponen, Teemu; Chawla, Mohit; Chun, Byung-Gon; Ermolinskiy, Andrey; Kim, Kye Hyun; Shenker, Scott; y Stoica, Ion. (Agosto de 2007). "Una arquitectura de red orientada a datos (y más allá)". SIGCOMM Comput. Commun. Rev. 37, 4, 181-192.
- ↑ Página del proyecto TRIAD Archivada el 5 de marzo de 2016 en Wayback Machine , Grupo de Sistemas Distribuidos de la Universidad de Stanford, consultada el 1 de agosto de 2014.
- ↑ Jacobson, Van. (30 de agosto de 2006). "Una nueva forma de ver las redes."
- ↑ Jacobson, Van; Smetters, Diana K.; Thornton, James D.; Plass, Michael F.; Briggs, Nicholas H.; Braynard, Rebecca L. (1-4 de diciembre de 2009). «Contenido con nombre en red». Actas de la 5.ª Conferencia Internacional sobre Experimentos y Tecnologías Emergentes en Redes. Roma, Italia. Consultado el 1 de agosto de 2014.
- ↑ "Cicn - fd.io" .
- ↑ "Cicn - fd.io" .
- ↑ "Cicn - fd.io" .
- ↑ "CCNxCon 2015" . Archivado del original el 22 de febrero de 2016. Consultado el 22 de febrero de 2016 .
- ↑ Bartolomeo; et al. (2016). Identificación y gestión de datos distribuidos: NGN, redes centradas en el contenido y la web . CRC Press. pp. 39–257 .
- ↑ Ahmed, Hussein; et al. (2016). Redes centradas en el contenido: una visión general, aplicaciones y desafíos de investigación . Springer. págs. 17–64 .
- ↑ Bilal, Muhammad; et al. (2019). "Distribución segura de contenido protegido en redes centradas en la información". IEEE Systems Journal . 14 (2): 1921– 1932. arXiv : 1907.11717 . Bibcode : 2020ISysJ..14.1921B . doi : 10.1109/JSYST.2019.2931813 . S2CID 198967720 .
- ↑ Fricker, C (2012). "Impacto de la mezcla de tráfico en el rendimiento del almacenamiento en caché en una red centrada en el contenido". Actas de los Talleres IEEE INFOCOM . arXiv : 1202.0108 .
- ↑ Solis, Ignacio (julio de 2014). "Cambios de CCNx 1.0 con respecto a 0.x" , Actas de IETF-90. Toronto, Ontario. Consultado el 1 de agosto de 2014.
- redes informáticas