I am working with IoT devices which broadcast status messages over a wireless channel periodically and at a rather high rate (500-5000 Hz). Receiving every message is not crucial but the more that are received, the better. I previously had nodes continuously synchronise clocks in order to adhere to a TDMA schedule, but this added significant algorithmic complexity to an application where 100% successful transmissions is not required. I am therefore trying a new approach based on random transmissions.

Problem Setup:

Let there be $N$ nodes, and let each node broadcast a status message of duration $A$ at least $d$ microseconds after its previous transmission, and no more than $D$ microseconds later. The exact delay for each packet is selected randomly and uniformly from the range $[d, D]$.

If packet $k$ is transmitted from a node at time $t_k$, then the transmission time of the node's next packet $k+1$ is given by $t_{k+1} = t_k + \mathcal{U}(d,D)$.

The minimum delay $d$ is a constant given by the time required for the IoT device to acquire a new measurement and schedule the next packet.

The maximum delay $D$ is a variable which should be tuned to maximise network throughput (akin to ALOHA).


I'm trying to derive an expression for the network throughput.

I can't find any material on ALOHA with periodic transmissions, and can only find material where the probability of transmitting is poisson, and where each transmission is independent of the last.

Thank you for your help in pointing me in the right direction.


1 Answer 1


Let $f(t)$ be the probability distribution function for the probability that the current cycle (from the moment when node 1 broadcast the last message to the moment when node 1 will start broadcasting the next message) has duration $A+t$.

For $d\leq t\leq D$, $f(t)$ must be proportional to $A+t$. We can use the fact that $\int_d^D f(t)\mathrm{d}t=1$ to deduce that $f(t)=\frac{A+t}{\lambda}$ for $d\leq t\leq D$, where $\lambda=D(\frac{D}2+A)-d(\frac{d}2+A)$. $f(t)=0$ if $t>D$ or if $t<d$.

Denote by $P_s$ the probability that node 1 is not broadcasting at any time during a given time period of duration $A$. It can be shown, by considering the conditional probability that node 1 does not broadcast during the given time period given that node 1 is in a cycle of length $t$ at the start of the time period, that $P_s=\int_A^D f(t) \frac{t-A}{t+A} \mathrm{d}t=\frac{1}{\lambda}\left(\frac{\max(A,D)^2}2-A\max(A,D)-\frac{\max(A,d)^2}2+A\max(A,d)\right)$.

The probability that a given message is transmitted successfully is $P_s^{N-1}$. The throughput is then $\frac{NP_s^{N-1}}{A+\frac{D+d}2}$, since the average length of a cycle is $A+\frac{D+d}2$.

  • $\begingroup$ Thank you for your detailed response. Could you please clarify why $f(t)$ is proportional to $t+A$? Given the transmission delay is selected uniformly from $[d,D]$, would one not expect $f(t)=1/(D-d)$ for $d \le t \le D$? $\endgroup$
    – Mike Hamer
    Mar 14, 2019 at 15:25
  • $\begingroup$ @MikeHamer Suppose that there is a cycle lasting one second followed by a cycle lasting two seconds. If we choose a random moment in time within this period of three seconds, this moment has twice the chance of being in the second cycle as it has of being in the first cycle. $\endgroup$ Mar 15, 2019 at 20:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.