## 4 QoS Aware Multipath Routing Protocols for WMSNs
### AntSensNet  
AntSensNet is a multi-QoS aware ant colony optimization based routing protocol [47]. Operation of AntSensNet is divided into three phases: Cluster formation, route discovery, and data dissemination and route maintenance. During cluster formation a communication backbone with only camera sensors is constructed. The cluster formation begins with the sink releasing a sequence of cluster ants (CANTs). Initial recipients of the CANTs (i.e., cluster heads selected within immediate communication range of the sink) are chosen probabilistically such that camera sensors with more  
Figure 8: Next Hop Selection in DGR. available resources are more likely to be selected, given that the selected camera sensors are located a minimum distance \(R_{c}\) away, where \(R_{c}\) is the cluster radius. A newly elected cluster head stores the CANT and advertises to its neighbors about its new identity so that later on neighboring nodes that are not chosen as cluster heads can decide to join a cluster. When a cluster head receives a CANT, it is responsible to reduce the time-to-live (TTL) of the CANT, and to choose from its neighboring camera sensors a new cluster head to be the recipient following the aforementioned probabilistic rule. CANTs whose TTL reach zero are destroyed. After cluster formation, cluster heads begin the route discovery process. Each cluster head is required to manage a routing pheromone table for its neighbors with respect to each traffic class regarding to the four parameters that the protocol focuses on: Energy, delay, packet loss, and memory. In order to find a path to the sink for a specific traffic class, a source cluster head broadcasts a forward ant (FANT). Along the way, the FANTs collect traversed nodes' IDs together with the accumulative queuing delay, packet loss ratio, available memory, and minimum residual energy of the nodes passed by. When a FANT is received, an intermediate cluster head first updates the information carried by the ant, then randomly chooses the nexthop such that a neighboring node which provides better QoS support and more resources will be selected with higher probability. When the FANTs reach the sink, a route that meets the QoS requirements is selected and a respective backward ant (BANT) is sent on the reserve path. Nodes that receive the BANT updates their pheromone table by increasing the pheromone value on the incoming link of the BANT while decreasing that of the other links. On the other hand, in order to establish multiple paths for video delivery, a special video forward ant (VFANT) is broadcast. The same route discovery process is executed except that intermediate nodes do not discard duplicate VFANTs and multiple video backward ants (VBANTs) are sent by the sink as opposite to the previous single path routing case. It is up to the source cluster head to choose the set of disjoint paths from all of the routes carried by the VBANTs. When routes are ready, a source cluster head can begin to disseminate data using the maximum probability path. To balance traffic loads under single path routing, the source cluster head periodically sends FANTs to update routes during data dissemination. In times of congestion or link breakage, a maintenance ant (MANT) is generated to inform neighborhood cluster heads to update their pheromone tables and to find alternative routes, regardless to the single path or multipath scenario. Pros and Cons. AntSensNet provides differentiated end-to-end multi-QoS guarantees for different traffic classes by finding distinct routes for each type of traffic. To better support video transmission, the protocol also extends its route discovery mechanism for multipath delivery. In the meantime, the explicit consideration of residual energy levels in the routing metric and rotation of the role of cluster heads within each cluster also facilitates good energy efficiency. However, AntSensNet requires cluster heads to maintain a routing pheromone table and periodically exchange hello messages which can hinder the protocol's scalability.