mirror of
https://github.com/markqvist/unsignedio
synced 2026-08-12 17:40:37 -04:00
49 lines
4.2 KiB
HTML
49 lines
4.2 KiB
HTML
|
||
<!doctype html>
|
||
<html>
|
||
<head>
|
||
<link rel="stylesheet" href="../css/water.css?v=19">
|
||
<link rel="shortcut icon" type="image/x-icon" href="../gfx/icon.png">
|
||
<meta charset="utf-8"/>
|
||
<title>P-persistent CSMA | unsigned.io</title>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
|
||
<meta property="og:title" content="P-persistent CSMA">
|
||
<meta name="description" content="Just a quick update, but I just wanted to say that I have added full P-persistent CSMA to the KISS version of the MicroAPRS firmware, which means, that MicroAPRS will now adhere to the P and SlotTime parameters set by the controlling software.">
|
||
<meta property="og:description" content="Just a quick update, but I just wanted to say that I have added full P-persistent CSMA to the KISS version of the MicroAPRS firmware, which means, that MicroAPRS will now adhere to the P and SlotTime parameters set by the controlling software.">
|
||
<meta property="og:image" content="https://unsigned.io/images/csma-1-400x275.png">
|
||
<meta property="og:url" content="https://unsigned.io/articles/2014_11_20_p-persistent-csma.html">
|
||
<meta property="og:title" content="P-persistent CSMA">
|
||
<meta name="twitter:card" content="summary_large_image">
|
||
<meta property="twitter:domain" content="unsigned.io">
|
||
<meta property="twitter:url" content="https://unsigned.io/articles/2014_11_20_p-persistent-csma.html">
|
||
<meta name="twitter:title" content="P-persistent CSMA">
|
||
<meta name="twitter:description" content="Just a quick update, but I just wanted to say that I have added full P-persistent CSMA to the KISS version of the MicroAPRS firmware, which means, that MicroAPRS will now adhere to the P and SlotTime parameters set by the controlling software.">
|
||
<meta name="twitter:image" content="https://unsigned.io/images/csma-1-400x275.png">
|
||
|
||
</head>
|
||
<body>
|
||
<div id="load_overlay" style="background-color:#2a2a2f; position:absolute; top:0px; left:0px; width:100%; height:100%; z-index:2000;"></div>
|
||
<span class="logo">unsigned.io</span>
|
||
<center>
|
||
<p><span class="menu"><a href="../index.html">Home</a> | <a href="../log.html">Log</a> | <a href="../guides.html">Guides</a> | <a href="../software/index.html">Software</a> | <a href="../hardware/index.html">Hardware</a> | <a href="https://github.com/markqvist/Reticulum/discussions">Discussions</a> | <a href="../shop.html">Shop</a> | <a href="../contact.html">Contact Me</a> | <a href="../donate.html">Donate</a></span></p>
|
||
</center><hr><div class="article_date">2014-11-20</div>
|
||
<h1>P-persistent CSMA</h1>
|
||
<p>Just a quick update, but I just wanted to say that I have added full P-persistent CSMA to the KISS version of the MicroAPRS firmware, which means, that MicroAPRS will now adhere to the P and SlotTime parameters set by the controlling software. CSMA, or Carrier Sense Multiple Access, is a collision avoidance scheme used to minimise packet collisions on networks such as APRS. The functionality of CSMA is very simple, here's how it works:</p>
|
||
<ol>
|
||
<li>Assume that P is a predetermined number between 0 and 255, and SlotTime is a number of milliseconds</li>
|
||
<li>If there is another station transmitting, wait until the medium becomes idle</li>
|
||
<li>When there is no other transmitting stations, a random number R between 0 and 255 is picked</li>
|
||
<li>If R < P, the packet is transmitted. If R > P, the modem waits for SlotTime and goes to step 2</li>
|
||
</ol>
|
||
<p>Implementing this simple technique, the amount of collisions can be reduced significantly.</p>
|
||
<br/><hr/><span class="no_print"><center><br/><i>This website is running on a 100% solar powered server</i><br/><br/>☀️<br/><br/><i><small>Unless otherwise noted, everything here is put into the world under a <a href="../LICENSE.txt">CC BY-NC-SA 4.0</a> license.<br/>Feel free to share and remix, just remember the attribution.
|
||
</small></i></center></span>
|
||
<div class="print_only donation_block"><br/>
|
||
Contribute to keeping information on Free & Open Communications systems available for all.<br/>
|
||
You can donate directly to <b>unsigned.io</b> by using one of the following QR codes:<br/><br/>
|
||
<span class="donate_qr"><img src="../gfx/donate_xmr.png"/><br/>Monero</span>
|
||
<span class="donate_qr"><img src="../gfx/donate_btc.png"/><br/>Bitcoin</span>
|
||
<span class="donate_qr"><img src="../gfx/donate_eth.png"/><br/>Ethereum</span>
|
||
</div>
|
||
</body></html>
|