## 2 Green Routing Algorithms in WSNs
### Setting Special Node-Based Routing Algorithms
#### 2.1.2 Special Function Node-Based Schemes  
In special function node-based schemes, special function nodes may be a stronger function node with additional hardware modules. Different from the functions of general sensing nodes, special function nodes can assist in positioning, communication between clusters, and serve as an aid in forwarding data. Similar to hierarchical nodes, they are used to reduce the communication consumption of other nodes by increasing their own tasks.  
The helping node is proposed in topology analysis based on node spatial distribution (NSD) [53], which neither sends nor receives data packets but only helps nodes relay their data packets. In NSD, there are two forwarding modes: user mode and helping mode. In the user mode, packets are only forwarded among user nodes. In the helping mode, the node transmits data to the nearest helping node within its own communication range, and then data are transmitted to the sink via the helping network. NSD separates data forwarding from data transmission by setting up helping nodes, avoiding some user nodes from dying prematurely due to frequent data forwarding. However, the nodes in the helping network also need to consume energy, and NSD does not provide a solution to balance the load in the helping network.  
The color-theory-based energy-efficient routing algorithm (CEER) [54] was proposed, which designs four anchor nodes equipped with global positioning system (GPS) devices to locate nodes. These anchor nodes play a role similar to that of CHs in LEACH, helping the nodes to collect data and forward them to the sink directly. As shown in Figure 3, CEER constructs a database of geographic location information, in which different RGB values correspond to different positions. As the node has a larger distance from the sink, the RGB value is greater.  
Each node computes its RGB value with the help of anchor nodes; then, the anchor nodes upload the RGB value to the sink, and the sink can find the geographic location of this node according to the database. CEER includes three stages: the routing constructing stage, the data forwarding stage, and the improving stage. CEER decreases the cost of the positioning network by using four anchor nodes and balances the energy load by selecting CHs. However, the fact that CEER sets additional time slots to c  
Figure 3: The system model of CEER [54].  
member has packets to send in the data forwarding stage will increase the delay of the network. Anchor nodes not only help with the positioning of other nodes but also with collecting and relaying data packets from other nodes, which results in the high cost of anchor nodes.  
Hierarchical nodes and special function nodes are designed to alleviate other nodes' burden and schedule power consumption among nodes. The difference between hierarchical nodes and special function nodes is that the former rules the lower hierarchical nodes, while the latter provides services for the sensor nodes. A comparison of setting special node-based routing algorithms is shown in Table 1.  
As shown in Table 1, in the hierarchical node-based routing algorithms, the high hierarchical nodes that communicate with the sink directly consume more energy than those nodes that adopt multi-hop communication. In the aspect of energy load balance, CHs ensure an energy load balance in their cluster by selecting appropriate CHs. However, the energy load among clusters is still imbalanced. EECCS can balance the energy load among clusters, but it is impractical. Routing algorithms based on hierarchical nodes have a common demerit, i.e., poor scalability. In special function node-based routing algorithms, the special nodes perform well when it comes to saving energy and can achieve good performance on energy load balance, and they are also scalable.