---
# System prepended metadata

title: Aloha

---

# Aloha
## Setup

![](https://i.imgur.com/pxg2W0S.png)


### Network stats
| PING SWITCH *(ms)* | Avg | Min | Max | mDev |
| -------- | -------- | -------- | -------- | -------- |
| P2P b2b     | 0.117     | 0.102     | 0.165     | 0.010     |
| MITM b12m     | 0.499     | 0.346     | 1.066     | 0.118     |
| MITM b22m     | 0.472     | 0.309     | 1.452     | 0.081     |

### NTP
Timesyncd (board) + ntpd server (MITM).
Boards sync only with the MITM every 16-30 seconds.

### MITM
UDP Server, .NET 5, simple forwarding.
Also simulates gaussian delay and packet loss asyncrhonously.

### TCPDump
Using `taskset` on the boards to run tcpdump on an isolated core, to avoid latency spikes.
TCPdump reads only 50 bytes (out of ~900), since we only need the packet timestamp.
Running TCPdump on each device allows us to measure the single-hop **directional** latency of the network. We use the timestamp field of the rtp packet to determine the packet ID, while using the tcpdump date to track its time-flow.

## Results

### P2P NTP vs no-NTP

<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/IR5RF61.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/vUhmOnr.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/6Kg8SPe.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/eYXvFlW.png)
</details>


### MITM nodelay

#### MITM dump

<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/5PF0YnW.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/O0OSef6.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/Mmg0TlE.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/md1KvyV.png)
</details>

#### BOARDS dump
<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/TE4msXM.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/CptYERs.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/URfM4LE.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/ILV1hUz.png)
</details>


### MITM delay + loss

#### MITM dump

<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/GqigE5P.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/f5bZnmS.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/VMDa8KW.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/hHneF3I.png)
</details>

#### BOARDS dump

<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/Fef3F7r.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/R52VHDT.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/Tr4fCda.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/kgYnjkA.png)
</details>


### MITM nodelay wifi

#### MITM dump

<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/WXyobRD.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/7yZjXvr.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/kwtRAoU.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/9AGf4Ub.png)
</details>

#### BOARDS dump

<details>
  <summary>Delay Scatter</summary>
  
![](https://i.imgur.com/GFWZq0O.png)
</details>

<details>
  <summary>Delay Histogram</summary>
  
![](https://i.imgur.com/J0laNSd.png)
</details>

<details>
  <summary>Packet Loss</summary>
  
![](https://i.imgur.com/39yld0B.png)
</details>

<details>
  <summary>Packet Delta Time</summary>
  
![](https://i.imgur.com/RCQS7R0.png)
</details>

