# A Hybrid Scheme for Disaster-Monitoring Applications in Wireless Sensor Networks
## 4 Scheme Description
### Steady-State Stage  
In the steady-state stage, HT-MAC operates in the duty cycle mode. Each cluster has \(M\) superior nodes and \(N\) ordinary nodes, and one of the ordinary nodes is selected as the cluster head. The ordinary nodes in a cluster form a virtual ring, and the token runs in the ring. In one period, the ordinary node that owns the token first asks superior nodes if there are any data to transmit. If the superior nodes have data, they transmit the data sequentially from superior node 1 to superior node \(M\). That is, in one period, the ordinary node with the token polls all the superior nodes individually in the cluster. Then, this ordinary node sends its own data to the destination node, which only transmits data frames that have already arrived when the node starts transmitting. Subsequently, this ordinary node passes the token to the next ordinary node, and the cluster enters the sleeping state. Considering the relatively short active state of the sensor nodes, the sleeping time accounts for a large proportion of the period time. During the sleeping state, the alert data of the superior nodes are transmitted using a low-power listening and shortened preamble approach to satisfy the delay and energy requirements of the alert. The low-power listening and shortened preamble approach was based on the X-MAC protocol [47]. The preamble sequence consists of many smaller shortened preambles with destination addresses. Using the time interval between the shortened preambles, the receiving node sends early acknowledgments to the source node. The sending node transmits the data packet immediately after receiving early confirmation to avoid excessive preambling of the sending node and overhearing of the receiving node, which reduces delays and energy consumption. A random back-off is performed to mitigate collisions between multiple sending nodes. Therefore, the alerts of superior nodes have a shorter communication delay, meeting the requirements of disaster-monitoring applications. HT-MAC WSNs are composed of several clusters. To reduce the interference between adjacent clusters, each cluster in the HT-MAC scheme communicates based on a direct-sequence spread spectrum. Therefore, each cluster applies a unique spread code. In each cluster, the nodes deliver polling tokens individually, based on the virtual logical ring. In a virtual ring, a node's predecessor is its previous node, and its successor is its next node. Consider a special situation in which there is only one node in the virtual ring: one node's predecessor and successor. For normal operation of the virtual ring, there are two basic procedures: a node may join or a node may leave a ring. First, a node joins a virtual ring. Each node in the virtual ring periodically transmits an invitation token that makes the node join the virtual ring. The procedure for joining a virtual ring is as follows. Node \(m\) in the ring first delivers an invitation token (\(m\), \(n\)), where \(n\) denotes the successor node of node \(m\). Node \(m\) invites a node to join between node \(m\) and \(n\), using this invitation token. Upon receiving an invitation token, a node that intends to join the virtual ring checks whether it is within the coverage of the cluster. If confirmed, this node responds to the invitation of node \(m\), and sets node \(m\) as the predecessor and node \(n\) as the successor. Node \(m\) sets this node as the successor, and node \(n\) sets this node as the predecessor. Therefore, this node joins the virtual ring. When multiple nodes want to join simultaneously, each node delays its response to the invitation token for a random time to avoid collisions. The node that sends the invitation token then determines which node will join the virtual ring, and delivers an acceptance token to that node for joining. Second, the node can leave the virtual ring. The polling token should be owned when a node is ready to leave the ring. If the polling token is passed to this node, it sends a message to its predecessor node to indicate that it is leaving.