El Protocolo de resolución de nombres de pares ( PNRP ) es un protocolo de igual a igual diseñado por Microsoft . PNRP permite la publicación y resolución de nombres dinámicos y requiere IPv6 .
PNRP se mencionó por primera vez durante una presentación en una conferencia P2P en noviembre de 2001. Apareció en julio de 2003 en Advanced Networking Pack para Windows XP y luego se incluyó en el Service Pack 2 para Windows XP. PNRP 2.0 se introdujo con Windows Vista y está disponible para su descarga para los usuarios de Windows XP Service Pack 2. [1] PNRP 2.1 se incluye en Windows Vista SP1, Windows Server 2008 y Windows XP SP3. PNRP v2 no está disponible para Windows XP Professional x64 Edition o cualquier edición de Windows Server 2003 . [2]
La Asistencia remota de Windows en Windows 7 usa PNRP, Teredo e IPv6 cuando se conecta usando la opción Easy Connect . [3]
El diseño de PNRP está cubierto por la patente de EE. UU. N. ° 7.065.587, emitida el 20 de junio de 2006.
Servicios PNRP
El PNRP es un protocolo de resolución de nombres distribuido que permite a los hosts de Internet publicar "nombres de pares" y las direcciones IPv6 correspondientes y, opcionalmente, otra información. Luego, otros hosts pueden resolver el nombre del par, recuperar las direcciones correspondientes y otra información, y establecer conexiones entre pares.
Con el PNRP, los nombres de pares se componen de una "autoridad" y un "calificador". La autoridad se identifica mediante un hash seguro de una clave pública asociada , o por un marcador de posición (el número cero) si el nombre del par es "no seguro ". El calificador es una cadena , lo que permite a una autoridad tener diferentes nombres de pares para diferentes servicios. [4]
Si el nombre de un par es seguro, los registros de nombres PNRP están firmados por la autoridad de publicación y pueden verificarse utilizando su clave pública. Cualquiera puede publicar nombres de pares no garantizados, sin una posible verificación.
Varias entidades pueden publicar el mismo nombre del mismo nivel. Por ejemplo, si el nombre de un par está asociado con un grupo, cualquier miembro del grupo puede publicar direcciones para el nombre del par.
Los nombres de pares se publican y resuelven dentro de un alcance específico. El alcance puede ser un enlace local, un sitio (por ejemplo, un campus) o todo Internet.
PNRP y tablas hash distribuidas
Internamente, PNRP usa una arquitectura similar a los sistemas de tablas hash distribuidas como Chord o Pastry . El nombre del par se utiliza con hash para producir un identificador de par de 128 bits y se utiliza un algoritmo similar a DHT para recuperar la ubicación del host que publica ese identificador. Sin embargo, existen algunas diferencias significativas.
Los sistemas DHT como Chord o Pastry almacenan los índices de objetos (hashes) en el nodo cuyo identificador está más cercano al hash, y el algoritmo de enrutamiento está diseñado para encontrar ese nodo. Por el contrario, PNRP siempre almacena el hash en el nodo que publica el identificador. Por tanto, un nodo tendrá tantas entradas en el sistema de enrutamiento como la cantidad de identificadores que publique. Podría decirse que el diseño del PNRP intercambia una mayor seguridad y solidez por un mayor costo de enrutamiento.
La mayoría de los sistemas DHT asumen que solo un nodo publica un índice específico. Por el contrario, PNRP permite que varios hosts publiquen el mismo nombre. De hecho, el índice interno está compuesto por el hash de 128 bits del nombre del par y un identificador de ubicación de 128 bits, derivado de una dirección IPv6 del nodo.
PNRP no utiliza una tabla de enrutamiento, sino un caché de entradas PNRP. Las nuevas entradas de caché se adquieren como efecto secundario del tráfico continuo. El algoritmo de mantenimiento de la caché asegura que cada nodo mantenga un conocimiento adecuado de la "nube". Está diseñado para garantizar que el tiempo para resolver una solicitud varíe según el logaritmo del tamaño de la nube.
Ver también
- Funciones nuevas en Windows Vista
- Resolución de nombre de multidifusión local de enlace (LLMNR)
- DNS de multidifusión (mDNS)
- Sistema básico de entrada / salida de red ( NetBIOS )
- Tecnologías de red de Windows Vista
- Redes de configuración cero
Referencias
enlaces externos
- Blog de Microsoft Peer-to-Peer Networking sobre cómo las características de Windows usan PNRP
- Especificación del protocolo PNRPv2 en MSDN
- Documentación de Microsoft PNRP (API) en MSDN
- MSDN-Artículo de Justin Smith, con PNRP
- Redes de Windows Peer-to-Peer en Microsoft TechNet
- Paquete de redes avanzadas para Windows XP en Microsoft.com
- Presentación distribuida de diapositivas de resolución de nombres peer-to-peer presentada por Christian Huitema en la conferencia O'Reilly P2P en noviembre de 2001.
- Patente de Estados Unidos 7.065.587 , Patente de Estados Unidos 7.418.479 , Patente de Estados Unidos 7.962.651 , Patente de Estados Unidos 20.020.143.989 , Patente de Estados Unidos 7.065.587 , Patente de Estados Unidos 7.068.789 , Patente de Estados Unidos 7.496.648