## 3 Survey Results
### Networking Stack  
The networking protocol stack is summarized in Table 12.  
### Networking Stack  
The networking protocol stack is summarized in Table 12. \begin{table}
\begin{tabular}{c c c c c c c c c c} \hline \hline
**Nr** & **Codename** & **Custom** & **Channel** & **Routing** & **Custom** & **Reactive** & **or** & **IPv6** & **Safe** & **Data priorities** \\  & & **MAC** & **access** & **used** & **routing** & **proactive routing** & **used** & **delivery** & **ties** \\ \hline
1 & Habitats & n & Carrier & n & - & - & n & n & n \\  & & & Sense & & & & & & \\  & & & Multiple & & & & & & \\  & & & Access & & & & & & \\  & & & (CSMA) & & & & & & & \\
2 & Minefield &? &? &? &? &? &? &? &? &? \\
3 & Battlefield & y & CSMA & y & y & proactive & n & y &? \\
4 & Line in the sand & y & CSMA & y & y & proactive & n & y & n \\
5 & Counter-spier & n & CSMA & y & y & proactive & n & - \\
6 & Electro-shepherd & y & CSMA & - & - & - & n & n & n \\
7 & Virtual fences & n & CSMA & - & - & - & IPv4? & n & n \\
8 & Oil tanker & n & CSMA & - & n & - & n & y & n \\
9 & Enemy vehicles & y & CSMA & y & y & proactive & n & n & - \\
10 & Trove game & n & CSMA & n & - & - & n & n & n \\
11 & Elder RFID & n & CSMA & n & - & - & n & n & n \\
12 & Murphy potatoes & y & CSMA & y & n & proactive & n & n & n \\
13 & Firewanet & y & CSMA & y & y & proactive & n & y & n \\
14 & AlarmNet & y & CSMA & y & n &? & n & y & y \\
15 & Ecuador Volcano & n & CSMA & y & y & proactive & n & y & n \\
16 & Pet game & n & CSMA & y & n &? & n & n & n \\
17 & Plug & y & CSMA & y & y &? & n & n & n \\
18 & B-Live &? &? & n & - & - & n &? &? \\ \hline \hline \end{tabular}
\end{table} 
Table 12: Deployments: networking protocol stack. Figure 8: **Deployment in-network processing—**Raw data preprocessing is used in half of deployments; distributed algorithms and aggregation are seldom used. Forty-three percent of deployments use custom MAC protocols, proving that data link layer problems either really are very application-specific or system developers are not wanting to study the huge amounts of MAC-layer-related published work. The most commonly used MAC protocols can be divide into two classes: CSMA-based (Carrier Sense Multiple Access) and TDMA-based (Time Division Multiple Access). The former class represents protocols that check media availability shortly before transmission, while in the latter case, all communication participants agree on a common transmission schedule. Seventy percent use CSMA-based MAC protocols and 15% use TDMA, and the remaining 15% is unclear. CSMA MACs are often used because TDMA implementation is too complex: it requires master node election and time synchronization. _Design rule 19_: The operating system should provide a simple, effective and generic CSMA-based MAC protocol by default. The TDMA MAC option would be a nice feature for the WSN OS, as TDMA protocols are more effective in many cases. Routing is used in 65% of applications. However, no single best routing protocol is selected--between the analyzed deployment, no two applications used the same routing protocol. Forty-three percent of deployments used custom routing, not published before.