Truthful computing in non-cooperative networks

In recent years, with the rapid development of the Internet, many protocols and algorithms have been proposed to make the Internet more efficient and reliable. The Internet is a complex distributed system where a multitude of heterogeneous agents cooperate to achieve some common goals, and the existing protocols and algorithms often assume that all agents will follow the prescribed rules without deviation. However, in some settings, it is more reasonable to assume that agents are selfish instead of altruistic: they maximize their own profits instead of the overall system performance. If a network, either wired or wireless, is composed of selfish users, then it is usually known as non-cooperative networks. In order to guarantee the functionality of the protocols in non-cooperative networks, a new framework needs to be used. Motivated by this, truthful computing, which aims to design protocols that worked in a non-cooperative network, is proposed recently. Under the framework of truthful computing in non-cooperative networks, I study routing, payment sharing, and system that unified the two. Our contributions are multi-folded. First, I proposed a centralized time optimal algorithm and a distributed algorithm that compute the VCG mechanism for Unicast routing. Second, I showed that the well-known VCG mechanism does not work for the multicast routing when the non-optimal multicast tree is used. In order to remedy this, I proposed a general framework to design non-VCG mechanism for the multicast routing. Third, based on the truthful mechanism for multicast routing, I studied how to design fair payment for the receivers that receive the service. Last but not the least, I study the multicast system in which the receivers could also be selfish.