Internet blackouts are generally part of a broader telecommunications blackout (e.g., Kashmir in 2019-2020), but it's not uncommon for the telephone service to remain operational (e.g., Belarus in August 2020). In such cases, we could leverage the telephone service to connect: private gateways to public gateways, private gateways to couriers, private gateways to private gateways, and couriers to public gateways. This is an issue to explore the option to do this without a physical modem.
Describe the solution you'd like
In principle, I think it'd be good to use a pre-existing/well-known technology to convert an analogue signal to a digital one, like a soft dial-up modem (e.g., android-fskmodem).
This soft modem would be integrated in the mobile implementations of the private gateway and courier apps, so that both end users and couriers can use it.
We could do one/all of the things below sorted by preference:
For a private gateway to connect to its public gateway with this method, the public gateway must've previously shared its dial-up connection information (e.g., phone number). The user should ideally see the phone number and be alerted if it's an international number. The user shouldn't be able to change the number.
We could introduce a new kind of courier: A dial-up courier. Private gateways could connect to such couriers if and only if their public gateways don't offer a dial-up connection, or when it isn't reachable -- Otherwise, users shouldn't be given the option to use this method. At the other end of the call, the dial-up courier would have a live connection to the Internet (e.g., satellite, dial-up).
Regular, sneakernet-based couriers could also offer the option to collect and deliver data to private gateways via dial-up. In this case, because we're still using a sneakernet, the connection between the gateways will still be subject to long latencies, but it could still be better.
We could allow two private gateways to connect to each other, although this would only be useful when connecting endpoints behind both gateways. Such connections would have to be short-lived so that we can do resource sharing.
Most of these changes shouldn't require changes to the protocol suite.
This idea is just a hypothesis at this point so we need to validate it first. Some of the questions we'll have to answer include:
Is it technically feasible to integrate this in Relaynet? I think so but we'd have to do a proof of concept to be 100% certain.
Is it possible to build this on Android/iOS with an adequate UX so that non-technical people can use it? If not, does it make sense to invest in this feature that would be available to advanced users only?
Do we have the financial resources and/or volunteers to implement this? If not, can we get them?
This feature requires users, couriers and the providers of public gateways to be onboard. Are they really interested in using it?
To what extent do censors cut off the Internet but keep the telephone service operational? I've been studying Internet blackouts for a few years and I don't think these stats are being collected, but based on what I've seen anecdotally, I'd say that Internet blackouts are generally part of a broader telecommunications blackout that includes the telephone service.
Is it worth investing in this feature when censors could easily cut off the telephone service too or block the numbers people would be dialing? I think so, but I'd like to get input from others too.
We may be causing collateral damage by "forcing" censors to block/censor the telephone service even if they didn't plan to originally, which would leave people worse off. Does it still make sense to take the risk?
Describe alternatives you've considered
Instead of using dial-up soft modems, use another method to convert between analogue (voice) and digital signals. This would allow us to use steganography, which could be useful if the phone is likely to be tapped. However, a big disadvantage of this method is that -- even without the steganography -- the throughput would be very low, so adding steganography would make it significantly worse.
Summary
Internet blackouts are generally part of a broader telecommunications blackout (e.g., Kashmir in 2019-2020), but it's not uncommon for the telephone service to remain operational (e.g., Belarus in August 2020). In such cases, we could leverage the telephone service to connect: private gateways to public gateways, private gateways to couriers, private gateways to private gateways, and couriers to public gateways. This is an issue to explore the option to do this without a physical modem.
Describe the solution you'd like
In principle, I think it'd be good to use a pre-existing/well-known technology to convert an analogue signal to a digital one, like a soft dial-up modem (e.g., android-fskmodem).
This soft modem would be integrated in the mobile implementations of the private gateway and courier apps, so that both end users and couriers can use it.
We could do one/all of the things below sorted by preference:
Most of these changes shouldn't require changes to the protocol suite.
Given the low throughput of this method, it'd be good to support the Quality of Service extension by then: https://github.com/relaynet/specs/issues/59
Determining whether we can/should do this
This idea is just a hypothesis at this point so we need to validate it first. Some of the questions we'll have to answer include:
Describe alternatives you've considered
Instead of using dial-up soft modems, use another method to convert between analogue (voice) and digital signals. This would allow us to use steganography, which could be useful if the phone is likely to be tapped. However, a big disadvantage of this method is that -- even without the steganography -- the throughput would be very low, so adding steganography would make it significantly worse.