RNS Logo

rns.recipes

◈ 9ce92808be498e9e05590ff27cbfdfe4
Service restored

LoRa collisions, Micropylon and realistic LoRa usage limits

Discussion LoRa RNode

Started by NONGKHAEM_BKK_TH e23e9a470d42f05d... ·

NONGKHAEM_BKK_TH e23e9a470d42f05d...
#1

I am hellbent on deploying a mesh but before I start mass-ordering gear, I need sanity checking of some concepts I'm not familiar with (at all). I admit ignorance, and recent conversations by the Berlin rns meetup got me thinking.

 

Imagine a theoretical, perfectly aligned 'chain' of LoRa rns transport nodes as such: 1 <> 2 <> 3, etc, solar powered, with perfect LoS to each other, SF7. They create a 'backbone', and connecting to these intermittently are regular rNodes (say Tdecks) operated by humans. For the sake of argument, say 5x Tdecks talk to (1), and 5x Tdecks talk to (3).

 

It's logical to assume that all 3 transport nodes will attempt to relay the announces, path requests, proofs, and other traffic to the rest of the network in both 'directions' of the 'line'. And while rns doesn't 'flood' like MTT and has a 2% cap on announce rates, nerdy-me used a packet sniffer overnight on my TCP node and path requests were 57% of my traffic (99% of which didn't exist but this is a topic for another discussion in itself).

 

Problem: LoRa take a LONG time to push any data even at SF7. Heck, even at SF5. So assuming a non-trivial number of messages get sent to the transports by regular rNodes, (1) and (3) will both transmit, and 2 will become deaf, because well, afaik it can't 'hear' two transmits at the same time. I won't bore you with my terrible maths, but with 5 clients at both sides of the chain just sending texts to each other at around 5 text/minute and nothing else, it comes up at 170 seconds of transmission needed per minute. You see the problem :)

 

So then I thought "you know what? Let's use a star pattern instead. CSMA will kick in! But even then, the maths don't math. Even in a perfectly laid out 26X transports over just 5km x 5km a single 20KB nomadnet page takes 10s of airtime.

 

So long story short, am i imagining things? and is this why MicroPylon (https://unsigned.io/rnode_bootstrap_console/builds/micropylon.html) is a thing? And do we know the status of the project, or has someone attempted something similar (multi transceiver nodes).

 

Thank you for any advice or correction!

Cleeyv 0b91c6bd3f4e6eda...
#2

For your calculation of 5 messages per minute resulting in 170 seconds per minute of LoRa transmission time at SF7, what bandwidth are you assuming for the LoRa connection? If we assume 125kHz, which seems to be the most common RNode BW config globally, that is a data rate of around 5.5 kbps. If we round that down to 5 kbps (leaving lots of space for link setup, announces, etc) that is 37500 bytes per minute. If we assume a relatively long LXMF text message for a total packet size of around 250 bytes, that works out to around 150 messages per minute before the LoRa connection is at theoretical 100% utilization. There would obviously be congestion problems before it reached that maximum. On your hypothetical network with 10 end user nodes, even if every node was messaging every other node every minute (9 messages per minute, an unrealistically high frequency!), that would still only be 90 messages per minute, well under the maximum.

 

You also mention sending a 20 kilobyte micron page in 10 seconds, which works out to a data rate of 16kbps which is pretty high for LoRa. At SF7 you'd have to go to the max 500kHz bandwidth to get up to that kind of speed. In general though I agree that multi-kilobyte nomadnet pages are less feasible over LoRa. I think nomadnet sites/services could still be planned to be used on LoRa networks, but they would need to designed with data efficiency in mind. Both to minimize congestion and keep loading times more reasonable.

 

I had never heard of MicroPylon before, so I'm not sure what's up with that.

NONGKHAEM_BKK_TH e23e9a470d42f05d...
#3

I'd be very curious to learn more about MicroPylon too :)

 

In any case, sorry for the late reply, I injured my arm.

 

I guess I didn't state my question clearly: "what is the realistic load an RNS mesh can realistically support?"

 

I'm trying to understand, given the hype and hyperbole around any type of LoRa based mesh, what's realistic to expect. Not to 'dunk' on such network, but simply to temper my expectations.

 

If we take your numbers, that is 150 messages per minute regardless of who sends them in the Mesh before it saturates, that's, assuming a geographical area of 5km by 5k , practically nothing compared to population density in an urban area. Take a city like Berlin, and the network will saturate immediately over one block. I also assume the limit is accross the entire Mesh, and is unaffected by the number of nodes deployed.

 

It's a bit difficult for me to grasp the limitations because a) I can't find anyone having deployed mass amounts of nodes to test traffic limitations in the real world b) isn't it true that as long as there is a mesh, the said mesh cannot 'stop' new nodes from joining it and makign requests, making accidental ddos not just very possible, but highly likely as soon as we're talking about 'outside the lab'.

 

G6PHF bcfa142fb7e94b26...
#4

What’s limiting you to using Lora for these links? Is it ease of setup for remote solar nodes?

NONGKHAEM_BKK_TH e23e9a470d42f05d...
#5

G6PHF wrote:

What’s limiting you to using Lora for these links? Is it ease of setup for remote solar nodes?

 

Great question - nothing , well, I guess I had imagined - perhaps incorrectly - that a lora mesh at scale was doable with a non-trivial number of users, but clearly, it might not be haha. This was the topic of a convo at the Berlin rns meetup apparently where they were trying to figure out if 100's of users were possible, but i think the outcome was 'no'.

 

I get that maybe the idea is for microwave relays to connect isolated lora meshes, but if lora meshes cap at a few dozen users anyways, I am failing to see the utility there, but maybe i'm just thick (note: this has nothing to do with rns at this point, it's purely a lora question).

 

Post a Reply

Supports Markdown: **bold**, *italic*, `code`, ```code blocks```, [links](url)

Log in to upload images

Quote
Copied to clipboard