\reviewtitle{A Taxonomy of Sensor Network Communication Models} \reviewlabel{tilak02taxonomy} \reviewauthor{S. Tilak, N. B. Abu-Ghazaleh and W. Heinzelman} The authors provide a good overview of sensor utilization and, in particular, of how network protocols are used to communicate between sensors and the observers. They comment that sensor applications have different goals from traditional wireless networks. In a sensor network, one or more observers use sensors, which consist of sensing hardware, memory, a battery, an embedded processor, and a trans-receiver, to receive information about one or more phenomena. System lifetime ``can be measured by generic parameters such as the time until half of the nodes die or by application-directed metrics, such as when the network stops providing the application with the desired information about the phenomena.'' ``To gain more accuracy, the application can either request more frequent data dissemination from the same sensor nodes or it can direct data dissemination from more sensor nodes with the same frequency.'' Data replication can be achieved by, \eg the SPIN protocol. The network protocol used ``is responsible for supporting all communication, both among sensor nodes as well as between the sensor nodes and the observer(s).'' This pair of responsibilities allows them to classify communication into two categories: application and infrastructure. They describe cooperative and non-cooperative application communication, but I am unclear what non-cooperative is and why is would ever occur. Satisfying application communication may require reconfiguring the network. Infrastructure can be thought of as overhead (and should be minimized). Clustering and selecting a cluster-head is infrastructure communication. There are three types of data delivery, which depend on what is required by the application: continuous, event-driven, and observer-initiated. There are hybrids of these types. How packets of information are actual sent occurs through flooding (broadcast-based), unicast, and multicast. In multicast ``sensors form application directed groups and use multicast to communicate among group members. The observer could communicate with any member of the group to obtain the desired data.'' Setting up paths of communication is somewhat similar to the problem of routing in ad hoc networks. In static sensor networks ``localized algorithms'' that often use a hierarchy have been shown effective. In dynamic networks, either the sensors, the observer, or the phenomenon are mobile. To repair paths of communication, there are both reactive approaches that try to repair breaks only after they occur and proactive approaches that anticipate future broken paths. One approach to mobile phenomena is the Frisbee model. DSDV is a proactive approach for use under continuous data delivery. LEACH uses a local, rotating cluster-head approach. ``Directed Diffusion (DD) is a data-centric protocol, where nodes are not addressed by their addresses but by the data they sense.'' Garcia-Molina has proposed a publish/subscribe approach.