A mechanism for information retrieval in fully decentralized, distributed, peer-to-peer network systems. Peer profiles are aggregated and collected in real-time by each peer. Each peer uses and integrates knowledge that it collects during query-reply cycles for each future query received, thereby learning over time and making information retrieval a more intelligent and rapid process. Each peer then autonomously decides which of its peers are most likely to have an answer to a given query. A routine is provided for monitoring the messages and profiling each peer, building a local peer profile for each node exchanging messages in the peer-to-peer network based on messages passing through the node.