In this paper, we study rate allocation for a set of end-to-end communication sessions in multi-radio wireless mesh networks. We propose cross-layer schemes which can jointly solve rate allocation, channel assignment, routing, scheduling and power control problems in multiple layers. Specifically, a Linear Programming (LP) based scheme is presented to compute end-to-end rate allocation with the goal of maximizing network throughput. As simple throughput maximization may lead to a severe bias on rate allocation, we take fairness into consideration based on a parameter named Demand Satisfaction Factor (DSF), and two fairness models, a simplified max-min fairness model and the well-known proportional fairness model. We propose LP-based and Convex Programming (CP) based schemes to compute fair end-to-end rate allocation. Our schemes can provide upper bounds on achievable network throughput and max-min DSF values. Numerical results show that our proportional fair rate allocation scheme achieves a good tradeoff between throughput and fairness.