In this paper, we study the throughput optimization problem in wireless multi-hop networks. For this problem, we introduce a cross-layer formulation to accommodate routing, scheduling and stream control from different layers of network with relevant constraints. Specially, by using a Lagrangian approach and a Markov Chain Monte Carlo method, we extend the programming-based formulation to a distributed algorithm that can dynamically approximate the optimal solution without the overhead of centralization. Finally, through computational results, we discuss the insight that can be gained from the cross-layer optimization and the distributed algorithm.