I was reading this page https://superuser.com/questions/286296/what-are-the-other-computer-communication-protocols-other-than-tcp-ip#286458
and was wondering if any of these older protocols are in use, or whether other more recent ones have been developed, and whether any could serve as a realistic alternative to TCP/IP? I'm no tech wiz, but from what I read it doesn't seem that challenging to create alternatives?
I'm not an expert in this area, but I know that the TCP stack is well-established and mature. UDP is also widely used, but it doesn't do flow control, so if any packets are lost during transmission, they're not recovered. UDP is often used for streaming, for example, where it's not a big deal if a few packets are lost.
I've heard of this protocol, but I'm not sure if it's used by anyone. https://datatracker.ietf.org/doc/html/rfc2549 https://datatracker.ietf.org/wg/mptcp/charter/ https://datatracker.ietf.org/doc/html/rfc3828 https://datatracker.ietf.org/doc/html/rfc4960
Do you know if there has ever been a serious attempt to basically create an alternative internet, where sites could be hosted, not necessarily using http?
There have been attempts. I don't know what you'd count as serious but here's some of the projects that are non HTTP-based are being used to some extent today:
There's probably more. But those are the ones that I've used so that's what I'm familiar with.
Thanks. I'll check out Urbit. Edit: I looked at the site for 30 seconds. This is exactly what I was looking for. I heard of it before, but didn't know anything about it.
Urbit is very interesting. It can be a bit esoteric for most but I think what they're doing there is really cool.
I wish they base their PKI on Bitcoin though.
That's something that put me off when reading, the idea sounds great but they say your ID is registered "on a Blockchain", I couldn't even see anywhere which Blockchain it was.
They're using Ethereum as their PKI.
That's why I said I wish they've used Bitcoin instead. As far as I understand it, the smart contract that handles the identity management is something that Bitcoin can't handle yet. Maybe if BitVM becomes a thing.
From what I gather though, they're trying to bootstrap away from Ethereum into an Urbit-specific solution. That's probably the reason why you can't easily find the blockchain that they're using for the identity layer.
Yes, there have been and continue to be, but it's a very challenging area to gain traction because 99% (just a guess) of the internet operates in the way we're familiar with, and there's a lot of resistance to fundamental change.
Here's a page to check out: https://github.com/redecentralize/alternative-internet
Thanks. It seems like an ordinary web site like github is critical, yet incredibly fragile. Are there more secure alternatives to web site hosting over TCP/ip?
There are decentralized website hosting solutions, but I have never used them.
Would these be based on TCP/IP? Would it not be conceivable to, let's say, set up a decentralized version of SN that is basically connected to separate computers serving as nodes in a decentralized way, and completely separate from ICANN and not censorable by an ISP? What would this look like?
why not IPFS? you could do something like Unstoppable domains. But I'm thinking that-- isn't good enough. has to be Fresh.. non- Unstoppable domain like..I think
I just checked the site. Looks interesting. Do you have experience with it? How secure is it?
this one interests me, but i haven't looked into it. https://geti2p.net/en/
There is an alternative to TCP/IP called QUIC made by Google.
IIRC the original goal was to make one sleek protocol that does everything from physical to transport to application. However, they never got beyond building on top of IP and below HTTP
TCP+UDP over IP serves all our current needs for building the Internet.
I'd ask what problem are you trying to solve through an alternative? What features are you looking for that the current stack is lacking?
As pointed out by others, the architecture of the Internet is layered. Some problems (like encryption) can be solved on other layers.
I would like applications to be free from censorship by a third party. I know that may not be achievable.
What sort of adversary are we talking about here?
If it's the government, and it can coerce ISPs, then the short answer is it's impossible. (That is unless you control every meter of wire and every single piece of networking equipment between you and your peer.)
If you bypass IP packet censorship by using an alternative to IP, they will just move the censorship one layer down, intercept the "bare wire" data and filter out all signals that don't look like IP packets.
There would be no way around it other than literally building a separate physical network (mesh WiFi, LoRaWAN, private satellites etc.).
The way we deal with censorship on the Internet is on higher layers - encryption provides us with means to obscure the content as well as ensure no tampering. But that assumes the lower layers are free from obstruction.
Thanks for the response. This is the information I wanted.
Why would you want to redo TCP/IP? I guess if you're moving from IPv4 to IPv6, sure. But I don't see a reason to move away from such a core part of the network stack.
It seems to me that TCP/IP is always censorable at the ISP level, but maybe I'm wrong?
I guess? But that's just the structure of the internet. ISPs are basically just gateways that connect you to other ISPs in other {areas, countries}. IP is just a protocol that allows you to logically address a machine in a network.
You'll be able to create your own internet in your own area using a bunch of wireless routers in a sort of meshnet style and still uses IP. But that doesn't rely on an ISP to communicate with other nodes in the meshnet.
Maybe packet radio as well. That's a way to communicate to farther networks without going through an ISP. It's a heck of a lot slower though.
Yes. I am aware of packet radio. You're right. It's very slow. It just seems that critical projects like those on github can be taken down on a whim by third parties. I know a meshnet is very pie in the sky, but the current system seems very fragile.
Yes. It's very fragile. It's actually insane when you really think about it. How a lot of the current infrastructure today are very fragile on certain places.
Reminds me of this XKCD comic: https://imgs.xkcd.com/comics/dependency_2x.png
I think the best way to deal with this fragility is to make sure that you have redundancy.
I mean, posting your repo in Github is great since there's a lot of people using it. But you should also have your repo backed up elsewhere, preferrably in multiple places, just in case Github kicks you out.
That sums it up!
I wouldn't call the internet "fragile". It's actually very robust at routing around local obstructions in the network - if there's a route, it tends to find it, eventually.
And a GitHub takedown, while impactful, does not spell the end of a project. Git calls the operation
clonefor a reason - everyone who does that downloads the entire repository, with its entire history and all branches.You can recover a project from any developer's machine almost immediately (and with integrity checks), thanks to Git's decentralized nature.
Thanks for the information. I know there has been talk of getting bitcoin core off of github. What's the rationale for moving it, and what alternatives are available, if you know?
I'll start by pointing out that you don't need a "full-service" to just host code.
You can just expose a bare Git repo over any plain ol' HTTP server with something like
There's technologies like WebDAV and more modern ones that even allow write access.
Indeed, I believe this was the way that Linus Torvalds hosted his autority-copy of the Linux Kernel in the early days of Git.
That being said, there are plenty of alternatives.
Hosted:
Self-hosted
As for rationale for moving something like Bitcoin Core off GitHub, I don't really see one at present. There is no smoke indicating a shutdown is on the horizon, so it doesn't justify the cost of a preemptive migration.
If a shutdown happens out of the blue, like I said, reemerging on another website is trivial, but they can shut down that too until the only thing left is a Gitea instance, or indeed a bare repo, hosted over Tor.
Great information. Thanks!