Time synchronization is an important issue in multihop ad hoc wireless networks such as sensor networks. Many applications of sensor networks need local clocks of sensor nodes to be synchronized, requiring various degrees of precision. Some intrinsic properties of sensor networks, such as limited resources of energy, storage, computation, and bandwidth, combined with potentially high density of nodes make traditional synchronization methods unsuitable for these networks. Hence, there has been an increasing research focus on designing synchronization algorithms specifically for sensor networks. This article reviews the time synchronization problem and the need for synchronization in sensor networks, then presents in detail the basic synchronization methods explicitly designed and proposed for sensor networks.