Все компьютеры в сети, на которых запущено P2P-приложение, могут выступать в роли клиента или сервера для других компьютеров в сети с этим же приложением. Наиболее распространённые P2P-приложения:
- eDonkey
- eMule
- Shareaza
- BitTorrent
- Bitcoin
- LionShare
Некоторые P2P-приложения основаны на протоколе Gnutella. Они позволяют открывать доступ к файлам на жёстких дисках другим пользователям. Как показано на рисунке, клиентское программное обеспечение, совместимое с протоколом Gnutella, позволяет пользователям подключаться к сервисам Gnutella через Интернет, а также находить и использовать ресурсы, доступ к которым был открыт другими узлами Gnutella. Для доступа к сети Gnutella существует множество клиентских приложений, в том числе: Gnucleus, BearShare, Morpheus, LimeWire, WinMX и XoloX.
Форум разработчиков Gnutella поддерживает базовый протокол, в то время как поставщики приложений нередко создают расширения для этого протокола, чтобы улучшить его работу со своими приложениями.
В большинстве P2P-приложений для записи всех файлов, доступных на одноранговых устройствах, не используется централизованная база данных. Вместо этого каждое из данных устройств в сети при получении соответствующего запроса сообщает другим, какие файлы доступны, и затем использует протокол файлового обмена и аналогичные сервисы для помощи при определении местонахождения ресурсов.