An active entity that can move its residence from one host to another while maintaining a persistent identity. An agent that travels around the net doing work on behalf of its owner. There seems to be a natural need for agents in peer-to-peer networks. While web browsers are under direct control of a user at all times, highly decentralized networks may do the majority of their work automatically, without input from the user. For example a Gnutella node may pass through a large volume of messages (millions per day) without any user intervention. In passing through messages, the node may or may not be representing the user's self interest well. A message passing through may be subject to negotiations, for example a toll. If an agent accompanied the message to negotiation on behalf of the message originator, it would be called a mobile agent.