Skip to main content
zenodoopen

Dataset for Anomaly Detection in a Production Wireless Mesh Community Network

<p>CSV dataset generated gathering data from a production wireless mesh community network. Data is gathered every 5 minutes during the interval 2021-04-13 00:00:00 to 2021-04-16 00:00:00. During the interval 2021-04-14 02:00:00 2021-04-14 17:50:00 (both included) there is the failure of a gateway in the mesh (nodeid 24).&nbsp;</p> <p>Live mesh network monitoring link: <a href="http://dsg.ac.upc.edu/qmpsu">http://dsg.ac.upc.edu/qmpsu</a></p> <p>The dataset consists of single gzip compressed CSV file. The first line of the file is a header describing the features. The first column is a GMT timestamp of the sample in the format as &quot;2021-03-16 00:00:00&quot;.&nbsp; The rest of the columns provide the comma-separated values of the features collected from each node in the corresponding capture.</p> <p>A suffix with the nodeid is added to each feature. For instance, the feature having the number of processes of node with nodeid 24 is named as &quot;processes-24&quot;. In total, 63 different nodes showed up during the samples, each being assigned a different nodeid.</p> <p><br> Features are of two types: (i) absolute values, for instance, the CPU 1-minute load average, and (ii) counters that are monotonically increased, for instance the number of transmitted packets. We have converted counter-type kernel variables to rates, by dividing the difference between two consecutive samples, over the difference of the corresponding timestamps in seconds, as shown in the following pseudo-code:<br> &nbsp; feature.rate are columns computed from feature as<br> &nbsp; &nbsp; feature.rate &lt;- (feature[2:n]-feature[1:(n-1)])/(epoch[2:n]-epoch[1:(n-1)])<br> &nbsp; &nbsp; feature.rate &lt;- feature.rate[feature.rate &gt;= 0] # discard samples where the counter is restarted<br> &nbsp;&nbsp; where n is the number of samples</p> <p><strong>features</strong><br> - processes &nbsp;&nbsp; &nbsp;number of processes<br> - loadavg.m1 &nbsp;&nbsp; &nbsp;1 minute load average<br> - softirq.rate &nbsp;&nbsp; &nbsp;servicing softirqs<br> - iowait.rate &nbsp;&nbsp; &nbsp;waiting for I/O to complete<br> - intr.rate &nbsp;&nbsp; &nbsp;&nbsp;<br> - system.rate &nbsp;&nbsp; &nbsp;processes executing in kernel mode<br> - idle.rate &nbsp;&nbsp; &nbsp;twiddling thumbs<br> - user.rate &nbsp;&nbsp; &nbsp;normal processes executing in user mode<br> - irq.rate &nbsp;&nbsp; &nbsp;servicing interrupts<br> - ctxt.rate &nbsp;&nbsp; &nbsp;total number of context switches across all CPUs<br> - nice.rate &nbsp;&nbsp; &nbsp;niced processes executing in user mode<br> - nr_slab_unreclaimable &nbsp;&nbsp; &nbsp;The part of the Slab that can&#39;t be reclaimed under memory pressure<br> - nr_anon_pages &nbsp;&nbsp; &nbsp;anonymous memory pages<br> - swap_cache &nbsp;&nbsp; &nbsp;Memory that once was swapped out, is swapped back in but still also is in the swapfile<br> - page_tables &nbsp;&nbsp; &nbsp;Memory used to map between virtual and physical memory addresses<br> - swap &nbsp;&nbsp; &nbsp;&nbsp;<br> - eth.txe.rate &nbsp;&nbsp; &nbsp;tx errors over all ethernet interfaces<br> - eth.rxe.rate &nbsp;&nbsp; &nbsp;rx errors over all ethernet interfaces<br> - eth.txb.rate &nbsp;&nbsp; &nbsp;tx bytes over all ethernet interfaces<br> - eth.rxb.rate &nbsp;&nbsp; &nbsp;rx bytes over all ethernet interfaces<br> - eth.txp.rate &nbsp;&nbsp; &nbsp;tx packets over all ethernet interfaces<br> - eth.rxp.rate &nbsp;&nbsp; &nbsp;rx packets over all ethernet interfaces<br> - wifi.txe.rate &nbsp;&nbsp; &nbsp;tx errors over all wireless interfaces<br> - wifi.rxe.rate &nbsp;&nbsp; &nbsp;rx errors over all wireless interfaces<br> - wifi.txb.rate &nbsp;&nbsp; &nbsp;tx bytes over all wireless interfaces<br> - wifi.rxb.rate &nbsp;&nbsp; &nbsp;rx bytes over all wireless interfaces<br> - wifi.txp.rate &nbsp;&nbsp; &nbsp;tx packets over all wireless interfaces<br> - wifi.rxp.rate &nbsp;&nbsp; &nbsp;rx packets over all wireless interfaces<br> - txb.rate &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tx bytes over all ethernet and wifi interfaces<br> - txp.rate &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tx packets over all ethernet and wifi interfaces<br> - rxb.rate &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; rx bytes over all ethernet and wifi interfaces<br> - rxp.rate &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; rx packets over all ethernet and wifi interfaces<br> - sum.xb.rate&nbsp;&nbsp;&nbsp; tx+rx bytes over all ethernet and wifi interfaces<br> - sum.xp.rate&nbsp;&nbsp;&nbsp; tx+rx packets over all ethernet and wifi interfaces<br> - diff.xb.rate &nbsp; &nbsp;&nbsp; tx-rx bytes over all ethernet and wifi interfaces<br> - diff.xp.rate &nbsp; &nbsp;&nbsp; tx-rx packets over all ethernet and wifi interfaces</p>

ShareScore

40/100

Overall dataset sharing score

Score breakdown

These five areas show where the dataset supports — or may limit — practical reuse.

Stewardship
8
Harmonization
8
Access
16
Reuse readiness
8
Engagement
0

Topics