- Great Painters
- Accounting
- Fundamentals of Law
- Marketing
- Shorthand
- Concept Cars
- Videogames
- The World of Sports

- Blogs
- Free Software
- Google
- My Computer

- PHP Language and Applications
- Wikipedia
- Windows Vista

- Education
- Masterpieces of English Literature
- American English

- English Dictionaries
- The English Language

- Medical Emergencies
- The Theory of Memory
- The Beatles
- Dances
- Microphones
- Musical Notation
- Music Instruments
- Batteries
- Nanotechnology
- Cosmetics
- Diets
- Vegetarianism and Veganism
- Christmas Traditions
- Animals

- Fruits And Vegetables


  1. Architecture of Windows NT
  2. AutoPlay
  3. Bill Gates
  4. BitLocker Drive Encryption
  5. Calibri
  6. Cambria
  7. Candara
  8. Chess Titans
  9. ClearType
  10. Consolas
  11. Constantia
  12. Control Panel
  13. Corbel
  14. Criticism of Windows Vista
  15. Dashboard
  16. Desktop Window Manager
  17. Development of Windows Vista
  18. Digital locker
  19. Digital rights management
  20. Extensible Application Markup Language
  21. Features new to Windows Vista
  22. Graphical user interface
  23. Group Shot
  24. ImageX
  25. INI file
  26. Internet Explorer
  27. Internet Information Services
  28. Kernel Transaction Manager
  29. List of Microsoft software codenames
  30. List of Microsoft Windows components
  31. List of WPF applications
  32. Luna
  33. Mahjong Titans
  34. Meiryo
  35. Microsoft Assistance Markup Language
  36. Microsoft Expression Blend
  37. Microsoft Expression Design
  38. Microsoft Gadgets
  39. Microsoft Software Assurance
  40. Microsoft Virtual PC
  41. Microsoft Visual Studio
  42. Microsoft Windows
  43. Microsoft Windows Services for UNIX
  44. MS-DOS
  45. MSN
  46. MUI
  47. Object manager
  48. Operating system
  49. Original Equipment Manufacturer
  50. Outlook Express
  51. Peer Name Resolution Protocol
  52. Protected Video Path
  53. Purble Place
  54. ReadyBoost
  55. Recovery Console
  56. Remote Desktop Protocol
  57. Security and safety features of Windows Vista
  58. Segoe UI
  59. User Account Control
  60. WIM image format
  61. Windows Aero
  62. Windows Anytime Upgrade
  63. Windows Calendar
  64. Windows CE
  65. Windows Communication Foundation
  66. Windows Disk Defragmenter
  67. Windows DreamScene
  68. Windows DVD Maker
  69. Windows Explorer
  70. Windows Fax and Scan
  71. Windows Forms
  72. Windows Fundamentals for Legacy PCs
  73. Windows Hardware Engineering Conference
  74. Windows Live
  75. Windows Live Gallery
  76. Windows Live Mail Desktop
  77. Windows Mail
  78. Windows Media Center
  79. Windows Media Player
  80. Windows Meeting Space
  81. Windows Mobile
  82. Windows Movie Maker
  83. Windows Photo Gallery
  84. Windows Presentation Foundation
  85. Windows Registry
  86. Windows Rights Management Services
  87. Windows Security Center
  88. Windows Server Longhorn
  89. Windows Server System
  90. Windows SharePoint Services
  91. Windows Shell
  92. Windows Sidebar
  93. Windows SideShow
  94. Windows System Assessment Tool
  95. Windows System Recovery
  96. Windows Update
  97. Windows Vienna
  98. Windows Vista
  99. Windows Vista editions and pricing
  100. Windows Vista Startup Process
  101. Windows Workflow Foundation
  102. Windows XP
  103. Windows XP Media Center Edition
  104. XML Paper Specification
  105. Yahoo Widget Engine

This article is from:

All text is available under the terms of the GNU Free Documentation License: 

Peer Name Resolution Protocol

From Wikipedia, the free encyclopedia


Peer Name Resolution Protocol (PNRP) is a peer-to-peer protocol designed by Microsoft. It was first mentioned during a presentation at a P2P conference in November 2001. It appeared in July 2003 in the Advanced Networking Pack for Windows XP, and was later included in the Service Pack 2 for Windows XP. A revised version is included in Windows Vista and came enabled by default in beta 1 of that operating system. PNRP enables dynamic name publication and resolution, and requires IPv6.

The design of PNRP is covered by US Patent #7,065,587, issued on June 20, 2006.

PNRP services

PNRP is a distributed name resolution protocol allowing Internet hosts to publish "peer names" and the corresponding IPv6 address. Other hosts can then resolve the name, retrieve the corresponding address, and establish peer-to-peer connections.

With PNRP, peer names are composed of an "authority" and a "qualifier". The authority is identified by the secure hash of its public key, or by a simple place-holder (the number zero) if the peer name is "insecure". The qualifier is a simple string, allowing an authority to publish multiple names for multiple services.

If a name is secure, the PNRP name records are signed by the publishing authority, and can be verified using its public key. Insecure names can be published by anybody, without possible verification.

Multiple entities can publish the same peer-name. For example, if a peer-name is associated with a group, any group member can publish an address for the group.

Names are published in a specified scope. The scope can be a local link, a site (e.g. a campus), or the whole Internet.

PNRP and Distributed Hash Tables

Internally, PNRP uses an architecture similar to distributed hash table systems such as Chord or Pastry. The peer name is hashed to produce a 128-bit peer identifier, and a DHT like algorithm is used to retrieve the location of the host publishing that identifier. There are however some significant differences.

DHT systems like Chord or Pastry store the indices of objects (hashes) at the node whose identifier is closest to the hash, and the routing algorithm is designed to find that node. In contrast, PNRP always store the hash on the node that publishes the name. A node will thus have as many entries in the routing system as the number of names that it publishes. The PNRP design arguably trades increased robustness for higher routing cost.

Most DHT systems assume that only one node publishes a specific index. In contrast, PNRP allows multiple hosts to publish the same name. The internal index are in fact composed of the 128-bit hash of the name and a 128-bit location identifier, derived from the IPv6 address of the node.

PNRP does not use a routing table, but rather a cache of PNRP entries. New cache entries are acquired as a side effect of ongoing traffic. The cache maintenance algorithm ensures that each node maintains adequate knowledge of the "cloud". It is designed to ensure that the time to resolve a request varies as the logarithm of the size of the cloud.

See also

  • Features new to Windows Vista

External links

  • Microsoft PNRP documentation (API) at MSDN
  • Windows Peer-to-Peer Networking at Microsoft TechNet
  • Advanced Networking Pack for Windows XP at
  • Distributed Peer-to-peer Name Resolution Slide deck presented by Christian Huitema at the O'Reilly P2P conference in November 2001.
  • U.S. Patent 7,065,587 
Retrieved from ""