[Berlin-wireless] Alternate radio internet network

Martin Hübner martin.hubner at web.de
So Mär 27 12:26:39 CEST 2022


Hi Julius,

> Message: 1
> Date: Sat, 26 Mar 2022 12:27:27 +0100
> From: Julius Hamilton <juliushamilton100 at gmail.com>
> To: wirelesslan in Berlin <berlin at berlin.freifunk.net>
> Subject: [Berlin-wireless] Alternate radio internet network
> Message-ID:
> 	<CAEsMKX2E3vqgAEZAUyuYYWDrwX1YaQh89xBKPoETRuJOTwSGjg at mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Hey,
>
> I would like to explore creating a network protocol for small transfers of
> text.
>
> I want to create an absolute restriction that every transmission in the
> network must occur in less than 0.1 second.

As the Internet and its protocols follow the best-effort-principle, I
doubt that such tight demands on the delivery-time are barely possible.

Transmitting a signal basically can classified in these groups:

1. exclusive use of transmission-medium
This includes for example the classical use of analogue telephone
network, were a direct electrical circuit is built between the two
communitcation partners (called curcuit-switching). The two stations
have a fixed bandwidth guaranteed all for their own.

2. shared use of a medium
Several stations share the same medium, like radio frequencies or for
example the modern internet, where different connections go over the
same wire.

Unless you are planning to lay out your own cable network, it will be
really difficult to explicitly guarantee the 0.1s requirement exactly.
As you probably will use shared mediums, there can always happen
collisions in the transmissions, which will delay your own transmission.
You can't just force your own transmission to happen now, as the shared
medium would mangle your transmission with the other one and useless
noise would occur.

That's the reason, why the internet is called a best-effort-network. All
stations do their best to deliver the packets as fast as possible, but
you can't guarantee those packages not to get lost or to be deliverd in
a hard amount of time.

>
> It could be more or less exactly like HTTP in that you request pages from
> other servers but somehow in the protocol it’s enforced that the time for
> any request to be served has to be under 0.1 second. This may require
> people to load balance if their server is very active or to reduce the
> amount of data they serve on a request or something, whatever necessary to
> meet this time limit.
>
> I think the internet as it is can support this, i.e. the network
> transmission tends to be reasonably fast, it’s more like web servers that
> might take a while to respond, depending on whatever backend scripts they
> run.

I probably wouldn't use a regular http-server for that task but use a
tiny specialised server written in C for that purpose.

>
> But I’m also interested anyway in an alternative internet not dependent on
> commercial infrastructure, sort of like peer to peer radio networks,
> similar to modern ham radio clubs, but using that as an internet protocol.
> In other words, not even being connected to the main “internet” at large.
>
> So I guess I have two questions.
>
> 1. Are there any pre-existing technologies that come to mind that I could
> model this off of or borrow from? Is there any internet protocol where
> speed is so essential to the functioning of a system that they make a
> request time limit mandatory? Because assuming I only need to design a
> protocol, I just need to create a web server of a certain kind. People can
> share the locations of their servers, exactly like a URL for HTTP, or an
> email address for IMAP. As long as it conforms to the “standards” in a way
> (I’m not sure how to enforce that, like a protocol in Swift or an interface
> in Java), it’s a valid server - just like a REST API I believe can be
> written in any language but it just respond to things like GET requests and
> so on.

I doubt you can achieve the 0.1-limit with IP-technology, from the
reasons mentioned above. Normally, web applications work with timoeuts
of full 3 seconds or even more.

Theres also to make one note on Java: You cannot fulfill real-time
requirements with a Garbage-Collector-language like Java. You can never
know, when the GC will pause the execution of your Application. Thus a
request could be fast one time (w/o GC) and endlessly slow the next time
(with GC doing stuff).

>
> 2. Is the Freifunk group precisely that, a DIY radio based local area
> network?

We build a Wirless Mesh Network based on WiFi and IP technology. We use
mainly OLSR as routing daemon. Our network is connected to the internet
too. There are local services in the network too, like whether-stations,
webcams to the sunset, etc.

>
> When is the next meeting?
We usally meet Wednesday 20 o'clock. Currently online at
https://meet.systemli.org/Freifunk-Berlin

If you wanna have a chat: We have a matrix-room that you could join to:
https://matrix.to/#/#berlin.freifunk.net:matrix.org

You're warmly welcome. :)

>
> Thanks very much,
> Julius

Best,
Martin



Mehr Informationen über die Mailingliste Berlin