Windows Vista Networking Technologies - Peer-to-peer Communication

Peer-to-peer Communication

Windows Vista included support for peer-to-peer protocols. It also included a new version of the Peer Name Resolution Protocol (PNRPv2). Windows Vista also included a peer-to-peer API for name resolution and secure Group creation. This functionality can be accessed from the Winsock API as well. The peer-to-peer networking subsystem can discover others running the service in the local subnet, using a feature dubbed People Near Me and integrate with Windows Contacts to store their information. This facility can be used to develop ad-hoc collaborative applications, such as Windows Meeting Space. Peer-to-peer networking settings are configurable through netsh p2p and Group Policy.

A feature called Windows Internet Computer Names (WICN), using PNRP, allows a computer connected to an IPv6 network to get a unique domain name. If the computer is connected to the Internet, users can specify a secured or unsecured host name for their computer from a console command, without requiring to register a domain name and configuring a dynamic DNS. Windows Internet Computer Names can be used in any application that accepts an IP address or DNS name. PNRP performs all the domain name resolution at the peer-to-peer level.

PNRP also allows creating an overlay network called a Graph. Each peer in the overlay network corresponds to a node in the graph. All the nodes in a graph share book-keeping information responsible for the functioning of the network as a whole. For example, in a distributed resource management network, which node has what resource needs to be shared. Such information is shared as Records, which are flooded to all the peers in a graph. Each peer stores the Record to a local database. A Record consists of a header and a body. The body contains data specific to the application that is using the API; the header contains metadata to describe the data in the body as name-value pairs serialized using XML, in addition to author and version information. It can also contain an index of the body data, for fast searching. A node can connect to other nodes directly as well, for communication that need not be shared with the entire Graph. The API also allows creation of a secure overlay network called a Group, consisting of all or a subset of nodes in a Graph. A Group can be shared by multiple applications, unlike a Graph. All peers in a Group must be identifiable by a unique named, registered using PNRP, and have a digital signature certificate termed as Group Member Certificate (GMC). All Records exchanged are digitally signed. Peers must be invited into a Group. The invitation contains the GMC that enables it to join the group.

Another planned feature in Windows Vista would have provided a new domain-like networking setup known as a Castle, but this did not make it into the release. Castle would have made it possible to have an identification service, which provides user authentication, for all members on the network, without a centralized server. It would have allowed user credentials to propagate across the peer-to-peer network, making them more suitable for a home network. This feature shipped in Windows 7 as HomeGroup.

Read more about this topic:  Windows Vista Networking Technologies