This document provides an introduction to cross-layer design in communication networks. It defines cross-layer design as violating the rules of a reference layered architecture, such as allowing direct communication between non-adjacent layers. The document discusses three main motivations for cross-layer design in wireless networks: 1) solving unique problems created by wireless links like TCP errors, 2) exploiting characteristics of the wireless medium like channel variations, and 3) accommodating new modalities like node cooperation. Several examples of cross-layer design are provided, such as jointly optimizing transmission power, error correction, and streaming for real-time multimedia. The document concludes that cross-layer design can help address time variations in wireless channels caused by fading.