Why the Internet Needs Cognitive Protocols
An anonymous reader writes "We keep hearing that the 'Internet of Things' is coming – that day when we'll all have not just smart phones but also smart refrigerators, smart alarm clocks, and smart roads and bridges. A new article in IEEE Spectrum magazine makes the argument that this won't happen unless engineers do some serious rethinking of how the Internet's basic routing architecture works. The author, Anthony Liotta, offers some interesting solutions based on two networks in the human body: the autonomic nervous system and the cognitive brain."
That way I can block all those important tweets from my barbecue.
when the machines rise against us our fridges and bridges will destroy us all
Internet ALL the things!
Serious rethinking is what people who think they want smart toasters need to do.
I really don't feel the need to see every device under the sun attached to the internet. And I certainly don't want my car being tracked by smart roads and bridges. It's bad enough that they're already using license plate cameras to track us all.
In SOVIET RUSSIA... erm...NSA AMERICA, the Internet logs onto YOU!
Is this why he's a professor teaching networking and not a network engineer?
Don't complain about syntax, grammar, or spelling. There is no.hell like input on android.
DRM on home appliances, anyone?
We already know that adding complexity to the network only leads to more congestion. Why a renewed push down this path? Because some are determined to make data as expensive as possible.
What we need is dumber networks, at the same time, more flexible networks. the idea that (parts of) the network should be aware of things like the context of a message or network conditions, by drawing loose comparisons from biology is simply a human's attempt to enforce his will upon the physical world. No matter how hard you try, E=MC^2 even if you build a virtualized platform where it doesn't.
The internet works fine as a LAN. Modern commerce and society, not so much.
The last thing I want to worry about is security vulnerabilities overflowing my toilet. I really don't want my refrigerator, toaster, coffee maker, and microwave on line.
Major Internet service providers around the world are now reporting global latencies greater than 120 milliseconds
Did you know that the speed of light carries information at most 300 kilometers per millisecond? so for a latency of 120 milliseconds, the information can travel at most 36,000 kilometers. The Earth is 40,000 km around at the equator making 45 degrees north latitude only 20,000 km around. Between the two is the vast majority of all internet communication. So the fastest we can throw stuff around a circle that is 36,000 km in circumference is the time it takes light to go 36,000 km. Fancy that. Global latency is bumping up against the universal speed limit.
Surely there will be many claiming neural network mapping or The Cloud will be able to make things faster that the global constant. This is one of them.
In other words:
The universe itself keeps on expanding and expanding
In all of the directions it can whizz
As fast as it can go, the speed of light, you know
Twelve million miles a minute and that's the fastest speed there is
So remember, when you're feeling very small and insecure
How amazingly unlikely is your birth
And pray that there's intelligent life somewhere up in space
'Cause there's bugger all down here on Earth
It can't work because it doesn't exist already? Or because you personally don't think it would be useful (without even a passing thought as to how your lifestyle might change if you never had to think about buying food again)?
Are there other developments we should run by you for approval before we continue our work?
We need more articles filled with sciency words strung together to make word salads so ignoramuses can make money. The only thing I can give the writer of this article for is he didn't put the word "quantum" in any where.
The world's burning. Moped Jesus spotted on I50. Details at 11.
They forgot to use "Software Defined Networks" in TFA. That'll hurt their SEO scores.
Offload as much bulk traffic as possible to content-addressible networking. Use packet switching for specific-destination time-sensitive communications, and hash-addressed caches for the 'want this, don't care where from' things like static content. With an IP fallback, in case none of the nodes in range have the requested data.
There. That's just greatly reduced the traffic the internet needs to route, added considerable redundency and greatly enhanced the experience for mobile use by allowing for much more effective caching of static content. Two parallel networks, each doing what they are best at. Packet-switching for low-latency 1-to-1 communications, and CAN for dissemination, static content and publication.
Now I just need to find someone with a few hundred million to invest in new infrastructure to support this thing.
Ohh, yeah ! Turn on my oven ! Yeah, baby !
Something like that ? ;-)
New things are always on the horizon
Yeah, it's a dumb article. Who's to say today's routing protocols aren't "autonomic"? I say they are. Anyways, the Internet is far too mature for fuzzy analogies to have anything useful to say about it. If you are serious, allow us to benchmark your implementation and then we will see whether it is a good idea.
Waste of electricity? I'd argue the opposite. Modern home automation technologies are largely very power efficient and can be used to set up power-saving routines that are only possible by having a greater awareness of the user's proximity and other environmental factors.
The issue right now is that there are several competing "standards" out there, such as X10, Insteon, and Z-wave, the latter two of which are wireless protocols that are more power efficient than wifi, while making some concessions that largely don't matter for what they're being used to do, while the first one sends small signals over your existing electrical lines. Besides those, Bluetooth Low Energy is increasingly being used to recognize the proximity of the user to other devices (e.g. unlock the door as I approach), and cellular signals coupled with wifi allow the phone to detect when it has crossed virtual geofences that can act as triggers to disable devices you accidentally left turned on at home (e.g. turn off my entertainment center that I accidentally left on when I had to rush out the door).
And I'm just talking about stuff that's doable right now with relatively cheap components. IfThisThenThat (ifttt.com) acts as some awesome glue to make various components such as your phone, your Belkin WeeMo devices, your Phillips Hue lights, or other such accessories play nice with each other. But others don't even need that glue, such as the Canary security device, which is designed to disrupt the home security market (side note: it's in the middle of it's Indiegogo funding, so you can get in for a cheaper price than retail still, despite the fact that it's almost been funded 10x over at this point).
As for the contents of your fridge, I agree that it doesn't matter if you know what they are, but imagine if your fridge could use less electricity by directing cooler air to specific compartments where it knew you had food that needed those temperatures? Many condiments don't actually need to be refrigerated, so it might direct less cool air at them, while directing more of it at the vegetables that you want to keep crisp. I'm a bachelor who hates going grocery shopping and eats out a lot, so I have a near-empty fridge and a freezer that's been empty for a few weeks now, yet it never even occurred to me until I was writing this post that I could have changed the settings of my fridge to save a decent amount of energy.
And turning off lights at the press of a button on your phone is overrated, as you said, but what about doing it automatically? We're not too far away from stuff like Star Trek's ubiquitous, "Computer, lights!" becoming a reality here, not to mention the automated proximity based signals that I mentioned earlier. You can already hack stuff like that together for yourself on the cheap, and there are more and more devices being aimed at end users that are doing things along these lines.
And the Nest? Come on, don't tell me you think that it wastes electricity compared to the majority of alternatives available out there. It knows when you're home or gone, can be set remotely from afar, and has loads of other smart features built into it.
We're in the future now, and as we have more devices collecting more data in the home, we can be putting it to work in being less wasteful with what we have while also providing us with a more home that is as responsive as we expect our software to be. It's a win-win, and it doesn't involve being able to see a list of everything in my fridge at any moment. :P
Or an enormous saver of electricity. If my house knew when I left and when I was 20 minutes from being home it could turn off climate control for the entire period I was gone, without any reference to a schedule or the like, and still be at the desired temperature whenever I was present. If my house knew when I was in bed with the lights off it could likewise turn the heat off until 20 minutes before the alarm time set on my phone, or until I was back up and out of bed, again without being tied to a (frequently wrong) schedule. If my house knew when I was gone it could completely power down all of my personal electronics and appliances rather than letting them idle all day. If my house knew when I was gone it could allow the freezer to get to a slightly higher set point than would normally be acceptable, because it would know that I'm not about to open it and let all the remaining cool air out. And of course there's the basic lighting control that ensures empty rooms are not lit and the amount of lighting is varied to be appropriate for ambient conditions and the task at hand.
That's just a handful of presence-monitoring examples; there are many other opportunities for power saving given slightly smarter power distribution and human interfaces. Blindly putting a P4 into every appliance clearly would be a bad time for energy use, but there are lots of interesting things you can do to save power with just a little more information about what people are doing in a building.
How is a "mesh network" (which is typically high latency) going to help latency when local bandwidth is seldom a problem?
This is drivel, makes no sense, and is just a bunch of buzz words thrown together by somebody who has no clue.
I have no problem with your religion until you decide it's reason to deprive others of the truth.
If my house knew when I left and when I was 20 minutes from being home it could turn off climate control for the entire period I was gone, without any reference to a schedule or the like, and still be at the desired temperature whenever I was present.
You can already do this without having to network up every appliance in your house.
"Engineering" means operating in the real world not some academic fantasy land of half-baked ideas littered with buzzwords.
The Internet is not a decentralized network of ad-hoc peers it is a ridgid higherarchical network where the physical path reigns supreme. Even in nature and in brrraaaiiinnns there is higherarchical structure behind all transport of information and material.
The problem with all of the adhoc mesh, self organizing shit is it has all been tried and it mostly sucks, wastes resources and does not scale. You can be clever all you want but all the algorithms in the world have much less value compared with paying someone to run more fiber for a new physical path.
Intelligence is quite dangerous within the network given that humans are currently smarter than machines. When machines start making ASSumptions about the importance of packets each machine assumption becomes something a human can expliot. Intelligence belongs in the peers at the edge where we all have the ability to do really clever things without asking anyone else for permission, without turning the Internet into a "trusted" network and without having to worry about repercussions of the Internet being as "smart" as my fully buzzword compliant spam filter which regularly fails against human advasaries...surprise...
Why can those with nothing worthwhile to say not just shut up?
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
As for a smart alarm clock - why does it have to be "smart"?
So, when your employer decides they need you at 7am, not 8am, they can just log in and change your wakeup time.
You didn't think this was intended to benefit _YOU_, did you?
I find it telling that Liotta (the author from TFA) is not mentioned in any IEEE RFCs, except in RFC 5345 to say that he makes claims with no real-world measurements. But that's just appealing to authority.
The most troubling part of his proposal, I think, is the elimination of Postel's Law. The Telco-oriented people have been telling the Internet community people all along that what we need is an intelligent network that provides QoS guarantees. The Internet community rejected that, with the result being an Internet that grows in speed and adapts to countless unforeseen applications. Liotta uses the human autonomic nervous system as metaphor, but the fatal flaw is that the human autonomic system has only one brain. The Internet doesn't work with a single controlling entity.
Likewise, his illustration of the Youtube clip is not entirely accurate. Companies like Google and Netflix are making colocation deals with a bunch of the Internet Service Providers, so that most videos don't have to travel through the backbone, Time Warner Cable aside.
There are problems with the current Internet and projects to redo the basis of networking, but Liotta's proposals remind me of those fantasy "cities of the future" fiction that I used to read when I was a kid.
Have a nice time.
My 'dumb' router is never going to decide my fridge needs to route through china to send my grocery list to my phone.
Actually, it might. The quick and easy smart device schemes I have seen require that all communication between devices route through an external server. If hosting starts migrating to China and local infrastructure to to short circuit these paths doesn't become pervasive in the mean time, you might very well find that your fridge talks to your phone via China.
Routers could manage data flows more effectively if they made smarter choices about which packets to discard and which ones to expedite. To do this, they would need to gather much more information about the network than simply the availability of routing links. For instance, if a router knew it was receiving high-quality IPTV packets destined for a satellite phone, it might choose to drop those packets in order to prioritize others that are more likely to reach their destinations.
And if a router knew it was receiving packets destined for a competitor's service, it could slow them down a bit and maybe drop a bunch.
What's the point of making every device a router? It's not going to have the bandwidth or latency of a real router. And I doubt there's that much local traffic to justify a mesh system by default. Maybe it makes sense given the P2P culture out there, but I still wonder how much of the local network will have the content you want?
And it's worth noting that the human body consists of highly specialized parts. Only a few cells are actually connected to the nervous system. It's certainly not every cell in the body in some sort of distributed network.
Then there's "MAPE".
One idea, proposed by IBM, is the Monitor-Analyze-Plan-Execute (MAPE) loop, or more simply, the knowledge cycle. Algorithms that follow this architecture must perform four main tasks:
In other words, traffic signals and road signs. While driving, humans don't respond well to sudden changes or warnings. It's not going to end well, if the intersection you're about to cross suddenly is chock full of traffic. Or there's no warning for the exit on your highway, except a sign at the very exit itself.
I just don't see the analogy to the human brain here in any of their examples. It's all rather crude stuff. And what really is the advantage of doing these things at the lowest possible level, over shoveling packets as fast as possible and letting higher layers of logic handle the subtleties of networks?
What is this? The 1980s again. Didn't the failure of 'semantic' OSes and file-systems teach anything? Semantics should be imposed top down by 'applications', NEVER bottom-up.
The worst aspect of modern Computer Science is how applications are discouraged to the point of being BANNED from informing the underlying OS and resource managers exactly what use of resources would be optimal to the application. Instead, the underlying layers- following the same cretinous logic as this article- have to pretend they are 'psychic' and second guess the needs of any running application.
Trust the system memory-manager, you are told. Trust the OS scheduler. And yet, only the application can truly know how and why it needs to use the memory and CPU processing resources.
There is NO SUCH THING as AI. There is Human intelligence, and the rule sets Humans program into computer applications. So-called AI is nothing more than specific uses of Human derived rule-sets. An NO, having a Human rule-set cause an algorithm to search for specific rule patterns in a database does NOT constitute true AI either.
This does not mean there cannot be algorithmic improvements in the routing of Internet traffic- of course all systems tend to have room for improvement. But dribbled 'ideas' along the lines of "copy the brain- it 'thinks' so that's the ultimate solution" were cretinous in the 1950s, and are just as cretinous today.
PS the PS4 console from Sony, released later this year, allows as much 'to the metal' coding as possible, where the applications (ie., games) DO get to tell the underlying systems exactly how to behave. Top down semantics will allow this hardware to still be competitive in 5+ years time. The 'second guess the user' bottom up pseudo 'AI' semantics that will be controlling memory and thread scheduling on our ordinary computer devices in the same time period will need many times the computer power to even draw equal in performance.
Likewise, at the lowest level, a network should be clean, simple, elegant and neutral. Moronic hacky low level gimmicks designed to target whatever data flow is currently 'trendy' would ruin the network, but for obvious reasons there will always be morons who lack any understanding of the layer model, and propose such changes. Packets should NEVER care what kind of data they are carrying. The rules that control 'frequency' and 'priority' should come from semantically aware higher levels. Higher levels that never need to change the underlying physical design of the network in order to change how the network functions.
The physical aspect of a net should be entirely concerned with more packets at more speed with more reliability. Mechanical syntactical concepts only. And this, of course, is the current state of the Internet There is no value, despite the idiot claims of the author, in choosing to move certain packets 'slowly' (such packets should be issued slowly at higher layers, obviously). And as for bandwidth stealing packets like video, well only the improvement of total network bandwidth can help here, obviously.
I for one welcome our new refrigerating overlords
CLI paste? paste.pr0.tips!
I've been working as a network engineer at various ISPs, large, medium, and small, in NOCs, NetEng, etc. The author seems to be unaware of how the Internet really works. His concerns about how various different types of traffic should have different priorities is addressed quite well by QOS. Most IPS backbones are MPLS based, and use RSVP to keep the tunnels open and uncongested. When an external path gets congested, there are programs (Routescience was my favorite, not sure what the modern equivalent is) to migrate your route announcements over different paths automatically, if your NOC engineers are incapable of doing it manually. That leaves the overall concern about bandwidth. Fiber is cheap, DWDM lets us pack an ever-larger number of waves, be they 1gig, 10 gig, 40 gig, 100gig, or whatever we come up with to surpass those. In the core, IPv4's routing tables are now handled trivially by modern equipment, and IPv6's implementation is designed to prevent routing table bloat. Of all the problem's I've seen on high-end routers, every time there's been a cpu or memory issue in the last 10 years, it's been due to a bug, not because the router itself couldn't handle it. Cognitive protocols? No, that's not the problem, it's not why your download is slow, why you have lag in your game, your calls drop or your videos black out. Last mile congestion, lack of infrastructure, and the refusal to build out networks to meet consumer demand are causing that.
by me five years ago: http://www.pdfernhout.net/post-scarcity-princeton.html
"These exponential trends in rising capacity and dropping costs illustrate a very different future than the increasingly competitive gloom and doom ones most conventional economists tend to paint for the short term. They even suggest a future where money itself may be less and less important as a control system for day-to-day activities."
A 21st century issue: the irony of technologies of abundance in the hands of those still thinking in terms of scarcity.
The author seems to think that every device should also be a router. Sure, that's going to speed things up! So now my phone has to connect to the fridge to get to my car to get to my neighbor's toaster so I can read Slashdot? That seems a lot less efficient to me, than the hub-and-spoke system we have today!
Why would a dedicated router not be better than some generic device that is also a router?
"The Internet of Things (That Can Kill Us)"
When it has been demonstrated time and time again that huge corporations don't give a care about doing security right (read: not immoraly cheap or simplistic to the point of being 'special'), we shouldn't be adding remote access and control to 'things' that can be turned into open doors or even death traps, FFS.
I understand the convenience of home automation and all but I can't help seeing scenes of Maximum Overdrive playout in my head. But instead of aliens it's some little prick kid.
Look at some of the old claims from the JIT camp. Theoretically, the JIT compiler could produce optimized code after examining the runtime in action; certain methods are triggered (via data, or user interaction) more often than others, and so should be optimized even at the cost of other methods which are infrequently executed.
Current solutions to these usage patterns rely on profiling systems both prior to and during execution, and then a manual effort to understand and adapt the system - and I'm guessing most folks don't even do code profiling now a days, especially not on live systems.
So, why haven't we seen these runtime optimizing environments? Some small optimizations have been provided by certain runtimes, but they are optional and usually disabled by default, requiring human intervention to be enabled. At the heart though, it's a really hard problem to fix without a human-like understanding of the purposes of the executable, even with perfect knowledge of the system the code is currently running on.
Not only that, since many optimizations could end up being system-specific, and runtime developers don't have a focus on system-specific optimizations (in fact, quite the opposite, usually), there's not a lot of development in this direction.
Last, because the system lacks that human awareness, a given optimization has some chance that it will instead, result in a loss of efficiency, potentially even a critical one. So instead, a middle-of-the-road tact is used, and humans are relied upon to provide optimizations past that.
Like a monolithic, distributed, homogenous routing OS, theoretically a JIT runtime could provide massive increases in efficiency, but in practice, it's too hard to do, and be right. We see this problem all the time. ... and that's assuming that you can get past the logistical problems of an 'intelligent' routing protocol that needs to know how your systems work (implying privacy and security concerns), as well as a necessary high adoption rate for the system to work to any real benefit.
My belief is that instead of a vast intelligent router app, we'll see more and more dumb, ad-hoc networks, and rely on a path-rich environment to provide somewhat inefficient, but 'efficient enough' routing. Autos would be a great target here, as their primary networking needs would be restricted to just those things geographically near them, making their routing requirements relatively low.
It also assumes that the internet companies will want to play fair. Once they can determine the nature and destination of each and every packet, they can drop the ones that compete with their own services. Any idea that needs everyone to act fairly has serious flaws as in the real world that is not very realistic.
-- ssoorrrryy,, dduupplleexx sswwiittcchh oonn.. -Quote found on actual fortune cookie.