Auction theory has been applied to cooperative communications to either efficiently allocate resources or incentivize wireless devices to participate in cooperative communications. However, a common shortcoming of the existing studies is that the revenue generation is neglected. Revenue generation is the ultimate goal of commercial networks, e.g., WiMAX networks. In this paper, we study the problem of how to use auction mechanisms to allocate the relay nodes and charge the source nodes, such that the revenue of the seller, e.g., the base station, is maximized. We first propose a VCG-based auction mechanism, which can maximize the revenue while enforcing the truthfulness. To overcome the high time complexity of the VCG-based auction mechanism, we further design another truthful auction mechanism with low time complexity. Experiment results show that the suboptimal auction mechanism significantly reduces the time complexity without severely sacrificing the revenue.