--- tags: Master, Simulation --- # GeRaF Paper Summary [TOC] ![](https://i.imgur.com/DwycM1h.jpg) ## Intro - :green_heart:**Energy efficiency** is one of the main research challenges in the design of protocols for sensor networks - ♻ **cyclic node sleeping** for energy saving $\implies$ `dynamic environment` - evaluate the resulting **performance** using energy savings as one of the key metrics ## Routing algorithms - :x:**SPAN** requires extensive topology knowledge - `costly in a dynamic environment` where sleep modes are used - **MFR:** ❔ - **DIR:** ❔ - **GEDIR:** ❔ - **GPSR:** solves the problem of connectivity holes by routing around the perimeter of these holes - **FACE–1/-2:** similar to GPSR, guaranteed delivery as long as the network graph is connected - **GEAR:** extends the concept of directed diffusion by forwarding queries to sensors that are located in a restricted geographic area - **MACRO** - shows interestingly good performance, but lacks a precise physical layer model to take into account additional radio effects, e.g., fixed costs due to radio hardware, that could in some cases over-weigh power control benefits - :heavy_check_mark:**GeRaF (**`Geographic Random Forwarding`**):** an integrated MAC/routing converge-casting protocol - shows promising performance in terms of `energy efficiency` and `latency` - how is its `multi–hop` performance ❔ - **GeRaF+:** proposed improvement in the paper, can greatly increase the **MAC performance** ## GeRaF Protocol Description 👁‍🗨**Assumption:** `sensor nodes` are aware of the sink and their own position. - `converge-casting` protocol - integrates a `geographic routing` - integrates an **awake/sleep scheduling** scheme: - integrates a **CSMA/CA–like MAC protocol** (relay selection and data packet forwarding): 1. **a node has no packets to send** $\implies$ periodic sleeping, according to the duty cycle, and channel listening - no activity detected in the channel during awake time $\implies$ back to sleep - otherwise, if RTS is heard $\implies$ the node enters the `relay contention phase` 2. **a node has a packet to send** $\implies$ it senses the channel to avoid collisions - channel heard idle for enough time $\implies$ the node broadcasts a **RTS (**`Request To Send`**)** message, that awake neighbors can hear 3. **relay contention phase:** the best relay is elected from the highest–priority region (closer to the sink) that is not empty - after sending the RTS, the transmit node waits for a **CTS (**`Clear To Send`**)** from nodes in the highest–priority region - 👁‍🗨 all nodes who lost the contention go to sleep - the elected relay receives the data packet and replies with an **ACK** - if `a single CTS is received` $\implies$ packet transmission can start - if `multiple CTSs are received` $\implies$ a special RTS message triggers some **collision resolution** algorithm, and notifies all nodes in lower–priority regions to go to sleep - if `no reply is received` $\implies$ the highest–priority region is empty, send another RTS that polls nodes in the second highest–priority region, and so on... - if `the whole forwarding area is empty` $\implies$ the sending node **backs off** and retries later, when a different distribution of awake neighbors will be seen - repeated until either a relay is found or the maximum allowed number of attempts is reached, after which the packet is discarded 4. **repeat:** this relay in turn becomes the sending node, **until a node within coverage of the destination is reached**, and the process terminates in one more hop **More about relay contention:** 👁‍🗨 Each node is able to determine its own **priority region** based on: - its own coordinates (that the node knows) - the coordinates of the sending node and of the final destination (included in the received RTS packet) If the node is in the $i\text{–th}$ priority region, it only answers after hearing the $i\text{–th}$ RTS. A node can only participate in a contention phase for which it receives the $1\text{–th}$ RTS: - an extension of the GeRaF protocol where this limitation is removed performs significantly better ## Performance Evaluation ...