Cross-layer Design and Cooperative Communications in Wireless Networks