I get inspired by a lot of different things, and I drift into a sort of meditation going through things in my head. In this case, this is something I came up with about 5 years ago, but it’s been one of those thoughts that stays in the back of your head. About a year ago, I briefly read an article where someone might be doing this. Perhaps not my particular implementation, but something that I strongly approve!
My inspiration came from yesterday driving to my mom’s to celebrate my birthday (which is actually next week). I was driving down the highway, thinking about all of the roads that connect to it. And the roads that connect to them. Which then got me recalling a chapter in a book I read for grad school (Finding Jefferson’s Moose) in which demonstrated how Thomas Jefferson was an avid student of networks. What? Networking? Well – his networks were rivers and canals. If you think about it, it’s kind of fascinating. For shipping goods back in the day, you needed to know the quickest river or canal to ship something through. These all eventually connected to the Atlantic.
So to ship something from Louisiana to New York, you then think about connecting to major bodies of water first, going quickly, then exiting to the next biggest body of water and so forth. This is essentially how we navigate with roads – and the algorithm used by many of your map tools to get you places.
But anyway, I started then thinking about telecommunications networking, which runs essentially the same way with sending your messages all over the place. Actually, networking works a lot like the postal service, where messages are sent from somewhere with a reply address and a destination address. Networks see the package, know if this address is under them and route them to the correct address – OR realize the address is not under their coverage and pass up to a “bigger body of water”.
Which then got me back, once again, to my light-based color communications.
Right now, electronic pulses use binary. On or Off. Think of shining a flashlight. On is one, and off is zero. If I count for 8 seconds, and each second you either turn on or turn off a flashlight, you can then get something like:
In binary, this is 1
or 00000010 which is 2
or 00000011 which is 3.
What then happens is you get a long stream of these in communications. What’s also of interest is that when these numbers are translated, they can then be turned into letters or other characters.
These characters are then put into frames, packets, etc to package up communications and send to a destination.
Let’s just say you wrote a 100 page letter and you want to only send one page at a time in the mail to your sweetheart in California. You know, that damn postal weight thing gets us all. You had a LOT to say to them. What do you do?
- You number each one of your pages.
- You seal the envelope so no one can read your message
- You put your address on the top left of the envelope
- You put your destination address on the envelope (with zip code)
- You drop in the mailbox of your local small town. It is picked up when a carrier can come and get it.
- The carrier takes it to your local office.
- It is sorted where a device reads the zip code and if not carried by your local post office, it’s sent to the biggest city near you.
- At your big city, it is then sorted for proper destination and shipped across “the big body of water”
- It arrives at a big city
- It goes to a smaller city
- It goes to the small town
- It arrives at your friend’s house
You friend will then get all of these messages together, and realize she is missing number 63 and 67 of the letter. She then sends back (this is TCP/IP protocol) that she’s missing pages 63 and 67. I can’t consider my message delivered until I receive a message stating ALL ARE RECEIVED. I receive the message about 63 and 67, and re-assemble and send back out. As luck would have it, the plane that these messages were on was taken down by a flock of wild turkeys who learned to fly to avoid Thanksgiving.
So you now understand how electronic messages get places. Now, to add one level of complexity here, I’m going to talk about encryption.
What if your message was during the civil war? And you were worried about your message being intercepted? Perhaps you write your message in a code, like a Caesar cipher? Only you and your friend will know what the key is, because you exchanged messages last week about what key you will use. So, unless someone knows the key, they cannot see what’s in your message. You can make it REALLY hard as well, by encrypting the communications you use with your friend to determine how you will even communicate. This is essentially VPN.
Moving forward. I found time division multiplexing rather interesting (see below) – but I had started to see this as an inefficiency because you now have lines of people waiting. Think of when you go to the grocery store on a busy Friday night. There are 42 checkout counters, but one is open. Everyone stands in line waiting for their turn in a queue. You see the simple solution – open more goddamn checkout counters. So – this essentially is throughput. This means the 82 people in line are now 2 people deep. And now you can checkout my items.
But….what about another layer of efficiency?
Right now, we see me with a shopping cart full of items and the time it takes to scan/checkout each item, bag it, and move on. Well, this is sort of like existing electronic communication with binary. One at a time, here’s my barcode.
Well, I once heard there’s like 65 million known colors. It then occurred to me, why not use colors instead of a white on/off for binary? Then, I felt….instead of using a checkout lane of one thing at a time, why can’t I just dump all my shit down a chute and the computer can read them all quickly at once and give me a bill?
So…rather than a yellow light on or off…or a red light. What about a ring of lights?
First, let’s look at 8 of these at one time. All of them are off, at rest.
Now, we want to essentially state the time of initial transmission and who is sending. These can all be displayed in colors that translate to a number between 1-65,000,000
This is perhaps the first “blip”. Rather than a single light pulse of on or off for binary, I sort of took a pepperoni slice of a transmission with multiple lights.
This first blip of transmission says WHO wants to send something. The timestamp is also on this.
Perhaps the second blip goes to the DESTINATION of where the packet it going. Rather than a stupid long IPv6, I suggest:
- 400 unique spots for countries/territories
- 1,000 carriers in each country. A company can own multiple carriers.
- 10,000 segments at top level. These are regional communications stacks.
- 10,000 local level segments.
- 10,000 unique IPs.
This allows for each country to account for 1 quintillion IP addresses. Far easier to manage/comprehend than IPv6.
The third blip talks about how many packets are going. The fourth blip talks about encryption. Perhaps the 5th blip then begins the message, with the “page number” inside of it.
More lights can be added if needed to further reduce the need for in-line communications.
When lights are detected that have a unique sender, 5 blips after that are reserved for establishing that line of communication.
After that, you can have several of the channels have reserved numbers for messaging for unique communication. For example, flash 1-3 may always be reserved for timestamp. Flash 9 might be reserved for message ID. Flash 34 might be reserved for offset.
The idea here, overall, is that it stands to reason that binary, as a means of communication over “the big ocean” might be an outdated concept. While computers “think” in binary, it would then use a form of MODEM in a sense to translate the binary messages into the color for fiber. However – none of that needs to be done at the PC level. It can START at the “big ocean” levels with the carriers and over time filter down to the local stacks in cities. No need for your home PC to start blipping things.