This document summarizes and compares several routing protocols for wireless sensor networks. It begins with an introduction to wireless sensor networks and discusses some of the key challenges in routing for these networks, such as large numbers of sensor nodes, energy constraints, and random node deployment. The document then categorizes routing protocols as flat-based, hierarchical-based, or location-based and focuses on reviewing various dynamic and static hierarchical/clustering-based routing protocols. Several popular protocols are described in detail, including LEACH, EECS, PEGASIS, and EEPSC. The pros and cons of each approach are discussed.