# CoNTe: A Core Network Temporal Blockchain for 5G
## 3 Federated Byzantine Agreement Consensus
### Transaction and Protocol Messages
Letting an expired timer (or closed contention window) be represented as \(b_{t,0}\), accounting for the distribution of Markov transition probabilities, the probability of a node sending a block in any 1 s time period \(\tau_{w}\) is represented as (2):

\[\tau_{w}=\sum_{t=0}^{m+1}b_{t,0}=\frac{2}{w_{0}\left(\frac{\left(1-\left(2P_{w }\right)^{m+1}\right)\left(1-P_{w}\right)+2^{m}\left(\frac{m^{2}+1}{2}-\frac{ m^{2}+2}{2}\right)\left(1-2P_{w}\right)}{\left(1-2P_{w}\right)\left(1-2P_{w} \right)}\right)+1} \tag{2}\]

A given node can only listen to the transmission medium of its connecting peers within a single quorum slice and, consequently, nodes on disjoint slices are occluded. To compensate for this, it is assumed that the binary exponential back-off is triggered either by listening directly on the transmissionmedium, or by a known peer sending a negative acknowledgment on a transaction, as done in cases when it has already received a superseding transaction time stamp or index position from elsewhere in the network. ```
formsg.index \(\leftarrow\) 1,2,3,...do Propose State wait for minimum sensing period: \(W_{i}\leftarrow\{W_{iv}\mid 0\}\) newBlock \(\leftarrow\) msg multicast newBlock Acknowledge State wait for newBlock from peer: \(v\in q\) wait for minimum sensing period: \(W_{i}\leftarrow\{W_{iv}\mid 0\}\) ifnewBlockmsg.index \(>\) localIndexthen  send response: msg \(\leftarrow\) {msg.response \(\mid\) acknowledge} end if else  send response: msg \(\leftarrow\) {msg.response \(\mid\) negativeacknowledgement} end if Commit State As proposer: wait for peer response: quorum \(\leftarrow\) {msg.response \(\mid\) acknowledgement(\(\forall v\in q\))} formsg.response \(=\) negative acknowledgementdo  send message: msg.type \(\leftarrow\) sync end if infomsg.response then  unicast newBlock: msg.peer \(\leftarrow\)\(\forall v\in q\)(\(\
otin\) quorum)  end if else  send commit: quorum \(\gets\) quorumACK(ack.index, {msg.signature \(\mid\)\(\forall v\in q\))}  end if Aspeer: wait for quorum from proposer(msg.index) end
```

**Algorithm 2**Cone _Consensus_ for node \(v\ \in\ q\)

## 6 Performance and Scalability

Because Conte does not deploy topology constraint, it is valid to represent its network scalability as a model of congestion control, where the performance bounds of the total system are held by link propagation and block contribution rate. Two simulations were implemented in Python in order to model the scalability of Conte CSMA/CD congestion control. In the first simulation, peer nodes were placed equidistant at 1500 km apart, roughly the distance between the cities of Barcelona and Berlin. For the second simulation, peer nodes are set an order of magnitude further at 15,000 km, representing the equivalent distance between Los Angeles and Singapore. These two distances allow for evaluating Conte under both regional and global network delay. All other parameters were set identical, with link speed of all nodes at 1 Gbps and block size at 1500 bits. Because of the randomness introduced through retransmissions using a binary exponential back-off, each simulation was run ten times, with the results taken as the average. The simulations were run in two sets, one with node sizes ranging between two and 10 peers, and a second with node sizes that range between 10 and 50 peers. It is important to note that node sizes do not represent the absolute number of possible network participants, rather the maximum number of peer hops between the network graphs furthest edges, to present a worst case. As a system designed for policy orchestration at the cellular core, the first simulation set with a node maximum value of 10 is representative of cloud native deployment, where regional data center and points-of-presence (POP) locations potentially house carrier cores. The second set with node sizes reaching 50 represents an outlier scenario of possible network loops or misconfiguration. Conte simulation code is available online and it has been open-sourced [33].