A self-organized load-balancing algorithm for overlay-based decentralized service networks