Legacy versions

It is likely that as new versions of the P2P software are released, not all nodes within the network will upgrade. Consequently you could have the scenario where multiple versions of the software are run across the network. A P2P system needs to be able to still operate despite the different versions of the software that might be running on the nodes. An example of an existing P2P system in which this can be observed is ICQ where users can still communicate with each other despite running different versions of the software on their machines.