Peer-to-peer networking, often referred to as P2p, is perhaps one of the most useful and yet misunderstood technologies to emerge in recent years. When people think of P2P they usually think of one thing: sharing music files, often illegally. This is because file-sharing applications such as BitTorrent have risen in popularity at a staggering rate, and these applications use P2P technology to work.
However, though P2P is used in file-sharing applications, that isn’t to say that it doesn’t have other applications. Indeed, as you see in this chapter, P2P can be used for a vast array of applications, and is becoming more and more important in the interconnected world in which we live. You learn about this in tfle first part of this chapter, when you look at an overview of P2P technologies.
Microsoft has not been oblivious to the emergence of P2P, and has been developing its own tools and technologies to use it. You can use the Microsoft Windows Peer-to-Peer Networking platform as a communication framework for P2P applications. This platform includes the important components Peer Name Resolution Protocol (PNRP) and People Near Me (PNM). Also, version 3.5- of the .NET Framework includes a new namespace, System. Net. Peer To Peer, and several new types and features that you can use to build P2P applications yourself with a minimum of effort.
In this chapter you look at:
- An overview of P2P
- The Microsoft Wmdows Peer-to-Peer Networking platform, including PNRP and PNM
- How to build P2P applications with the .NET Framework
- An example P2P application built using the .NET Framework