This document discusses wireless ad hoc and sensor networks and routing protocols. It begins by defining routing as the process of moving data packets from a source to destination, which is usually performed by routers. Common objectives of routing protocols are to route packets along optimal paths while adapting to changing network conditions. Routing protocols are then categorized as link-state or distance-vector protocols. The document also discusses the purposes and challenges of routing in wireless ad hoc networks, as well as requirements for ad hoc routing protocols. Finally, it provides an overview of different types of ad hoc unicast routing protocols, including table-driven, on-demand, and hybrid protocols.