From techno-idealism to business solution
The decentralized technology behind Storro
In the last few posts, we talked about our dependence on the cloud and about decentralized alternatives for the cloud. We’ve also put our own alternative in the spotlight: Storro, a peer-to-peer collaboration suite.
In this post, we will show you some of the technologies behind Storro. We will explain why these technologies embody old ideals of a democratic internet and at the same time, have the potential to change the way we work online.
Why today’s Internet isn’t really different from television in the 1950's
In the early days of the Internet, many Internet pioneers had an idealistic vision of the Internet. The Internet would be a place of total equality. There would be no central authorities, just a community of users, sharing information and knowledge with each other.
But that’s not the Internet we know today. Most Internet applications we use are built on a technology that is the exact opposite of those ideals.
Websites and web browsers work with a client-server architecture, which assigns different roles to browser and web site. Browsers are clients, who can receive information (the web page), while the computer that hosts the web site is the server. It’s the server who holds the information, controls it, and distributes it to requesting clients. Basically, it’s just a form of broadcasting, not so different from a television station in the 1950s. Even more disconcerting are the corporate interests behind some of the most popular ‘broadcast stations’. A few large companies control the big server parks. So, to a large extent, they control what happens on the Internet.
The Internet would be a place of total equality
A lot of people aren’t too happy about that, so many have been trying to turn things around. Over the years, people have been developing all kinds decentralized alternatives for popular Web services. But somehow, these noble initiatives never gained much traction. Yes, there is that outspoken digital rights guy from your IT department who uses a special open-something alternative for everything. But for those of us who aren’t Linux gurus, it is going to take quite some effort to learn to work with these alternatives. And that is an effort most people (and most businesses) aren’t willing to take.
Limits to the client-server Internet
But we have reasons to believe that this may be about to change.
Firstly, the ever-growing volume of Internet traffic is beginning to reveal the limits of the Internet’s centralized structure. Millions of people and businesses have come to rely on Web applications that are hosted in the server parks of the big cloud companies. These data centers do go down from time to time. Some companies have back-up servers ready in another location, to take over when the main server park gets knocked out. But hiring extra server space comes with a price tag.
The centralized model also has difficulty to cope with heavy traffic. When there are too many clients making requests to a server, the server simply does not have the resources to respond to them all in a timely fashion. Unexpected peaks in traffic can take a server out. This often happens unintentionally, but it is also used in cyber-attacks. DDoS attacks (the most common form of cyber-attacks) flood a server with bogus requests. It is very hard to defend against such an attack. Handling client requests is a server’s main function, so shutting that function off to prevent DDoS floods isn’t an option. To make matters worse, DDoS attacks are easy. Bored teenagers and disgruntled employees take servers down all the time.
Secondly, technological developments have been moving fast the last few years. Passionate individuals and innovative companies have been further developing decentralized technologies. These alternatives have become easier to use, making them accessible to non-geeks too. Storro is one of these new initiatives.
Decentralized technology made easy
The technology Storro uses, is inspired by two existing forms of decentralized technology: peer-to-peer data exchange and Git version control.
Well-known examples of peer-to-peer data exchange are file-sharing programs like BitTorrent. These programs may have kind of a bad name for pirating music and movies, but peer-to-peer data exchange can be used for other purposes too. Storro uses peer to peer data exchange as a synching tool: to distribute and update a shared document among team members.
Instead of connecting to a single server to get access to a document, users connect with each other, forming a network without a central node. The nodes in the network distribute the files between each other. As soon as a node has a part of the file, it starts distributing this data itself to the other nodes.
That means that there isn’t such a thing as too many nodes, because each new node pulls its own weight in data sharing and storage. That makes this model very scalable. In the client-server model, clients use a single resource, the server. If there are too many of them, the server’s resources get depleted and more (expensive) server capacity is needed. Also, peer-to-peer data sharing is very robust. There is no central server, only nodes. If some of these nodes fail, this does not take down the network. So there is no need to buy back-up server capacity either.
As a collaboration suite, Storro does more than file sharing. It also is a collaboration suite that offers version control. Version control systems enable users to see the changes made to a particular document and to restore a document to a previous state, so they do not need to keep backup copies of different versions of their work (in case anything gets messed up). Behind this functionality is a technology similar to Git, a decentralized, open-source version control system.
That means that there isn’t such a thing as too many nodes, because each new node pulls its own weight in data sharing and storage
These two technologies enable Storro users to work collaboratively on a single document, without having to rely on a central server or cloud. We also provided a graphical user interface that makes Storro as easy to use as any cloud collaboration tool.
We hope that new applications like Storro will create a wider adoption of decentralized Web technology, because we know that this technology has a potential beyond being a tech-geek’s pet project: It’s a viable business alternative for the cloud and the company server.
Want to learn more about Storro? Have a sneak peek at our product web site.