Cu aplicațiile P2P, fiecare calculator din rețea care rulează aceste aplicații se poate comporta ca un client sau server pentru alte calculatoare din rețeaua care folosește aplicația. Aplicațiile P2P Comune includ:

Unele aplicații P2P se bazează pe protocolul Gnutella. Acesta permite oamenilor să partajeze fișiere de pe hard discurile lor cu alții. Așa cum se arată în figură, un software de client compatibil cu Gnutella permite utilizatorilor să se conecteze la serviciile Gnutella prin intermediul Internetului și să localizeze și să acceseze resurse partajate de un alt peer care folosește Gnutella. Multe aplicații sunt disponibile pentru accesarea rețelei Gnutella, inclusiv BearShare, Gnucleus, LimeWire, Morpheus, WinMX, and XoloX.

În timp ce Gnutella Developer Forum menține protocolul de bază, furnizorii aplicației dezvoltă deseori extensii pentru a face ca protocolul să funcționeze mai bine cu aplicația lor.

Multe aplicații P2P nu folosesc o bază de date centrală pentru a înregistra toate fișierele disponibile pe un peer. Astfel, echipamentele din rețea își spun unul altuia ce fișiere sunt disponibile la solicitare și folosesc protocolul de partajare a fișierelor pentru a suporta resursele de localizare.