# Energy Efficient Routing in Wireless Sensor Networks: A Comprehensive Survey
## 4 Topology
### Location Based  
In most WSN protocols, location information of nodes is needed to calculate the distance between two nodes and to estimate energy consumption. Sensor networks are spatially deployed on a region and as there is no addressing scheme such as the IP addresses, location information can be utilized to route data efficiently. In protocols of Topology subcategory, nodes know their own neighbor positions as well as message sources that are assumed to be informed about the position of the destination information. In what follows in this section, seventeen typical examples of location based energy efficient routing protocols are described. Geographic and Energy Aware Routing (GEAR) [115] uses two heuristics for packet routing, energy aware, and geographically informed neighbor selection. GEAR localizes interests of the Directed Diffusion protocol in a target region instead of sending them in the entire network. GEAR operation consists of two phases:  
1. Packet forwarding towards a target region: When a node receives a packet, it forwards it to the neighbor closer to target region. In case there is no close neighbor to the target region, there is a hole in the network and sending node forwards the packet to a node with the minimum cost. 2. Packet forwarding within target region: If the packet reaches the targeted region, it can be diffused in it with the use of either restrictive flooding or recursive geographic flooding. GEAR both reduces and balances energy consumption. However, periodic table exchanges cause increased overhead. Graph EMbedding for routing (GEM) [116] protocol uses virtual coordinates and two processes, Virtual Polar Coordinate Space (VPCS) and Virtual Polar Coordinate Routing (VPCR) to route data. VPCS process creates a spanning tree, which has a root node and an assigned angle range to every node. Parent nodes split this angle range to children nodes in their sub-trees. The parent nodes of a sub-tree are aware of the center of mass and average position of all nodes within their sub-tree. In the VPCR process, GEM defines points out of a node's level and angle and routes data from any node to any point within VPCS. With the use of GEM, messages are efficiently routed. In addition, void and obstacle tolerance are attained. Another advantage of GEM is that it scales greatly with size and density. On the other hand, low level nodes are overloaded. Implicit Geographic Forwarding (IGF) [117] is a state free protocol, without state tables of nearby nodes. Instead, it utilizes lazy binding and location address semantics. With the use of two metrics, Increased Distance Towards Destination (IDTD) and Energy Remaining (ER), a node can choose next hop of a packet in real time. A property useful for networks with migrating nodes or real-time shifts in topology. By using IGF, state information cost is eliminated and fault tolerance is attained. In addition, end to end latency is reduced. On the other hand, IGF depends on the up to date local neighbor tables. Scalable Energy-efficient Location Aided Routing (SELAR) [118] protocol applies to static networks and considers two parameters, location, and energy consumption. At first, the base station floods its location to neighbor nodes and then those nodes flood their location to their neighbors with a reference to the base station included. Then, only energy information needs to be exchanged. To ensure energy savings, control packets travel one hop and data packets travel from within a zone to the base station. This zone is defined by the area of source node's range and an angle \(a\) in the direction of the base station. Source node defines a min and a max value for angle \(a\), starting from min and progresses to max with steps. If there is no neighboring node in the zone, it uses gossiping to forward the message. The advantage of SELAR is that energy dissipation not only is deceased, but also it takes place in a uniform way. The disadvantage of SELAR is that it does not work well with mobile nodes.