PKT Origin Story

Cjdns and humble beginnings

PKT was born out of the cjdns project when it was realized that without the financial infrastructure for the network to pay its own bills, it would always remain a hobby. The cjdns project dates back to 2011 and the two basic ideas it brought to the table were:

  • Everything should be encrypted, all of the time, no matter what
  • A packet of data flying across the Internet should not contain the address of its destination, but rather the directions to get there

Point 1 has become more of a universal norm. However, point 2 remains uncommon in the network space.

An Introduction to Compact Source Routing

Most of the Internet is routed using a system called prefix matching. With prefix matching, every packet of data flying across the Internet contains the IP address of its destination, and each router which forwards that packet looks up the destination in its routing table. It’s like every street-corner had a sign pointing the way to everywhere in the world (and everybody had to follow it).

Routing tables at the Internet backbone are unsurprisingly big, almost too big to fit in the special high-speed memory used in modern routers. Since every ISP has a different idea of how data should flow through their network, every router has a different routing table. What this all means is that even when an ISP leases bandwidth, they still have to operate their own physical router hardware. Sub-leasing of routers is simply impossible.

The way cjdns works is that packets of data flying through the network do not contain the IP address of the destination, but rather the directions to get there. This system is known as source routing. Normally a source route is big, so big that source routing is traditionally only used for experimentation, but cjdns uses a unique representation known as compact source routing which compresses that route down to roughly the size of an IP address.

“The reason bandwidth markets have not yet emerged is not because we can’t subdivide bandwidth, it’s because current technology prohibits subdivision of routing hardware.”

By replacing “where do you want to go” with “how do you want to get there”, cjdns replaces the rigidity of a postal service with the flexibility of a road system, a road system where each driver can choose which GPS to use. In this new network, hundreds or even thousands of Virtual ISPs can compete for customers while leasing access to the same “road system” and each searching for the best ways to get their customers’ data where it needs to go.