I would like to make a radical, disturbing and controversial proposition. I believe the telecoms industry is going to face trouble ahead.
This is not because of problems with packets or products per se, but because of a problem of philosophy: How can we know what we commonly believe about networks is actually true?
In other words, we have an unfolding crisis of epistemology: the very nature of being certain about knowing things.
Attending the Philosopher’s School of Hard Knocks
As a child, one of my parents dragged me to the Jehovah’s Witnesses and through their dubious doctrines. I can remember my growing doubt and disbelief, since what I was being told was the absolute TRUTH by all those around me seemed at odds with what I observed in life at large. In particular, I had a developing awareness of science, and what constitutes correct logical thought.
Around the age of ten, I rebelled and declared I was no longer a believer. I also emotionally cut myself off from my parents: how can you trust people whose cosmologies appear to be both mad and at odds with each other? I retreated to my bedroom and spent a lot of my teenage years with my 8-bit best friend.
(For the record, I today have good relations with both my parents: as a parent myself, I have become far more forgiving of the mistakes of motherhood and follies of fatherhood. I am sadly estranged from my old 8-bit friend, who lives alone and unloved in the garden shed.)
As a result of this early emotional trauma, I reckon that I have gained an unusual sensitivity to borked belief systems. Deconstructing and reconstructing mental models is what makes me feel safe on this planet. The cost is that it makes me unemployable in mainstream organisations, since I will spend all my energy questioning my superiors’ beliefs rather than enacting them.
Turing’s translocation trap
For my degree, I studied Mathematics and Computation. This isn’t computer science (which is a misnomer); it’s really “Maths and More Maths”. A central course module was computability, where we looked at the results of famous computer pioneer Alan Turing. He (along with Church and others) addressed the core question of: “what is – in principle – computable and not computable by computers?”
A key part of his logic was to think of an imaginary abstract computing device – a Turing machine – which could read and write symbols on a conceptual ‘tape’ according to stored logic. You could equally have multiple Turing machines operating on a single tape, just as we have multiple computers on a network sharing data.
In doing so, he made a simple assumption: that the Turing machines could see the tape and thus instantly and perfectly read symbols left by other Turing machines. In other words, he left out the whole of networking from this distributed computing model.
What networks do is to translocate information to enable computation to happen. An ideal network does what Turing described: instant and perfect translocation.
Real networks are never ideal.
What real networks do is to lose and delay data, and the only freedom of action they have is to allocate this impairment in more or less damaging ways. Thus whilst we have had a theory of computability for over half a century, we have (thus far) lacked a theory of translocatability.
Telecoms has cracked foundations
Which leads us to the present. I find myself in the odd and unexpected role of telecoms cosmologist, deconstructing and reconstructing models as to what is real and what is not.
Telecoms is fundamentally the business of statistical multiplexing for profit. The infrastructure could be built locally and rented. The services can be provided by “over the top” players. Telcos sit in the multiplexing middle, and mediate between variable instantaneous supply and demand.
The more I have looked around me, the more I have begun to understand that many of the foundational ideas on which this business is built aren’t as solid as they seem. Whilst we admire the wondrous edifices like the Internet and telephony, when you look from the right angle, you notice each appears to be leaning. Then if you head into the intellectual basement, you find there are often missing structural elements.
These philosophical gaps matter profoundly. Wrong conceptual models as to what networks are and are capable of have real consequences. As a result, the data translocation logistics business is mis-designing supply, mismatching it to demand, and mispricing the result.
The end of end-to-end
Let’s consider the Internet as one example of intellectual self-delusion.
The Internet’s architecture is justified by this famous paper: “End-to-end arguments in system design”. It offers a ‘design principle’ that says the network should only implement certain low-level functions as a performance enhancement when doing these functions at the edge is insufficient.
Unfortunately, as a design principle it has no real predictive power. It is merely descriptive of the situation as then-was.
It does contains a valid axiom: only the users know the value of their traffic and its delivery needs. It then falsely extrapolates this to conclude that only the user’s devices can manage flows across the network. It confuses the needs for flow control (to stop senders over-running receivers) with congestion control (managing the finite network resource). As a result, we lost a vital architectural layer. As we shall see, making flow control algorithms perform congestion control has unfortunate consequences.
The end-to-end idea does not describe some kind of eternal truth. It is a reaction against a specific telecoms set of technologies and business models. Networks are capable of acting as agents of users, not just as overlords. Losing congestion control is a bug, not a feature. Indeed, what we have is a post-rationalisation of an expedient choice that matched its context.
As the environment has changed, the falsity of the ‘principle’ is being exposed.
Beware the wibbly wobbly Web
The Internet’s flow properties are managed by Transmission Control Protocol (TCP), which is the technological embodiment of the end-to-end idea. The Internet places flow control outside the network, using TCP to react to packet loss. This requires the information about the past – a lost packet – to correlate to the state in the future – such as continued congestion.
Networks have complex emergent properties, and one of these is called ‘stationarity’. Stationarity means that the past and future are correlated, because loss and delay are not oscillating rapidly. Non-stationarity means that coupling is broken. TCP assumes stationarity in order to work.
Yet every packet that users inject potentially contributes to the destruction of the very stationarity property the TCP control loop needs in order to operate. That causes flows to oscillate and collapse. These flow collapses happen when ‘bad coincidences’ occur too often, and they happen at all scales and loads. You can’t always manage the network to constrain load to prevent them, or over-provision your way out of the problem at any reasonable cost.
For a bunch of reasons that I don’t have the space to cover this time, these ‘bad coincidences’ are growing in number and impact on user quality of experience.
This is enough to turn the end-to-end ‘principle’ into a ‘problem’.
Killing hypotheses out of kindness
Indeed, this end-to-end ‘principle’ fails to allow for the potential that its advice could have entirely the opposite effect to that intended. It by design actively produces networks with the highest internal entropy and lowest dependability under saturation. Rather than just being a ‘performance fix’, congestion control is foundational!
The (distributed) TCP congestion control algorithm has an inherent time constant which is of the order of many round-trip-times. If the applied load varies more slowly than this then it can converge to a stable outcome. However, in the real world this is not the case – it’s not that TCP is broken, just that using it for anything other than long-lived large downloads is increasingly inappropriate. That’s a problem for an increasingly real-time and interactive world.
The thing that destroys stationarity is the action of a distributed control system being driven faster than its inherent time constant. Indeed, the Internet based on TCP/IP is a collection of coupled damped oscillators – the classic example of a chaotic system! It suffers collapse in non-deterministic ways we can’t easily control.
Hence I believe that the Internet, as currently implemented and envisioned, is not sustainable. It is unfit as a long-term ubiquitous data transport for society. Saying that won’t win me many friends at present. That said, even the mainstream increasingly believes it is broken and needs to be fixed.
The good news is that this congestion issue is incrementally fixable. My colleagues have also built a single counter-example prototype network to the end-to-end ‘principle’ that resolves this problem fully, and the technology can be retro-fitted to existing ISPs.
Sadly, other fundamental Internet routing, mobility and security issues are not fixable, as fundamental errors were made. The job of building a new inter-network core based on stronger conceptual foundations is now upon us.
There’s certainly a lot of uncertainty about
These forms of delusional collective groupthink are not unique to our business. Every form of human endeavour is part-science and part-religion. Even the ‘science’ is subject to human frailty. We build our systems of belief based on a psychological need to maintain the illusion of consistency and certainty, since inconsistency and uncertainty causes us anxiety. However, in doing so we can sustain enormous dissonance with counter-evidence that our beliefs are actually out-of-whack with reality.
The philosopher Ludwik Fleck noted this process thus: “Once a structurally complete and closed system of opinions consisting of many details and relations has been formed, it offers enduring resistance to anything that contradicts it.”
I am currently reading an excellent book called “On Being Certain”, subtitled “Believing you are right even when you’re not”. It describes how this ‘feeling of knowing’ emerges, and how weakly correlated it can be to anything approaching rationality.
Have you become an Internet Witness, dedicating your professional career to furthering an intellectually bankrupt cause?
From superstition to science
In our business, everyone admires the décor and design of the Internet whilst ignoring the missing foundations. When you point out that there are no foundations, and that it is leaning, you are politely encouraged and enjoined to get back to work adding on extra storeys to the structure. The lean is not meant to indicate any potential for collapse. Rather, it is a feature!
As Deming said: “We have learned to live in a world of mistakes and defective products as if they were necessary to life.”
If you push your case too hard, you risk being shunned by the networking community. How did we get into this state?
An unintentional side-effect of removing congestion control was to let networking escape from the rent-seeking clutches of existing settlement systems for data traffic. A free TCP stack, a government-subsidised ISP, and taxpayer-funded user institutions made the TCP/IP suite viral like influenza. The success of the Internet is not a property of its technical prowess, but paradoxically because of the lack of good telco-like engineering principles.
Are we monkeys or mathematicians?
As a result, networking turned into a form of natural history in the 1970s.
Attempts to understand the fundamentals were abandoned. ‘Knowledge’ is created by building and examining operational networks, preferably using TCP/IP. However, there’s only one Internet. We have nothing to compare it to at any comparable scale. Networking researchers are more like 19th century explorers in the jungle collecting new species than real scientists. Today we teach TCP/IP as if it were synonymous with ‘networking’.
This means that the very idea that we could have rigorous intellectual foundations for networking is a radical proposition. That the current ones on offer are borked is controversial. That so few believe that the search is worthwhile is disturbing.
Are you an unconscious disciple of a networking cult?
Pipe dreams and paradoxes
This situation is partly caused by our inability to reason about complex, distributed, multiplexed systems. We instead revert to simplistic metaphors from the everyday world. The problems of ‘thinking by metaphor’ have been extensively documented.
Hence naïve internal mental models of networks as pipes, with circuit-like properties, can let us down badly. We imagine that the only resource of the network is ‘bandwidth’, and that this property is both fungible and composable. In other words we typically think:
- the first 100kpbs have the same properties as the last 100kpbs we buy out of the same ‘pipe’.
- if you join two equally-sized pieces of ‘pipe’ together in series, you get the equivalent properties of a single piece of network with the same bandwidth.
- if you lay more ‘pipes’ in parallel, and join their capacity together, you get more bandwidth.
Whilst each can be true in localised cases, none of these are true in general. There are many places where our intuition about networks lets us down. For example:
- Braess’ Paradox tells us how adding more links to a network can actually reduce its throughput.
- The assumption of work-conserving queues built into nearly every packet router can destroy overall system performance.
- Quality of service algorithms frequently cause a phenomenon called ‘quality inversion’, where the ‘low quality’ transport often has better loss and delay characteristics than the premium ‘high quality’ one on offer. (Early LTE users will experience this: Skype calls will often be far better than VoLTE ones – until there are more users on the network.)
This list alone should be enough to make you want to re-examine how you assess what you really believe about networks and telecoms.
Do you worship a false god in the Church of Bandwidth?
From alchemy to chemistry
It turns out that networking is not, yet, a science. We’ve not had the ability to predict outcomes from composing sub-systems together. Networking has thus far been a craft industry, based on guilds with battling ideas on how to perform their alchemy. Everything we ‘know’ beyond that is based on extrapolating past experience, not based on reasoning from immutable fundamental principles.
We need to escape this crisis of epistemology.
This issue of “what is a valid line of reasoning” is not limited to telecoms: check out the Bayesian vs Frequentist [PDF] arguments that statisticians are still engaged in. The cartoon version of the debate is here! Our pain is not unique to our business.
Thankfully, we’re just on the cusp of having a theory of the underlying building blocks, and turning networking into chemistry. People like Claude Shannon gave us the tools to understand information transfer for single links, but the aggregation of links and multiplexing has left us bamboozled. That’s now been fixed.
Choose your gurus wisely
So, how can you know what you know? What is real, and what is not, in the world of telecoms and networking?
My suggestion is that you choose your teachers very carefully. If you can’t trace back a line of reasoning all the way to the foundations of mathematics and philosophy, there’s a good reason to be suspicious. Bertrand Russell, Kurt Gödel and Ludwig Wittgenstein gave us the raw tools to work with in order to ‘know what we know’. Proceed from that point forwards.
I have found over time that there are a small handful of people capable of working at that level of intellectual rigour, tying everything back to the foundations of mathematics, logic and philosophy. The people I learn my professional craft from come from that tiny group.
- Technologists should go read John Day’s brilliant book Patterns in Network Architecture. His Recursive Internet Architecture (RINA) [PDF] is what we will need to overcome many of the problems of the 1970s we still live with. The very problem with ‘end-to-end’ is that it assumes there ought to be ‘ends’! Day’s insights into layering are the Feynman diagrams of our discipline.
- Follow everything Neil Davies and Peter Thompson of Predictable Network Solutions Ltd put out in public. It’s like being taught physics by Newton and Hawking. There’s a good reason why they are the world’s only ex ante network performance engineering company.
- Subscribe to the Cook Report on Internet. I read every email Fred Goldstein writes on the private mailing list. That’s where the best people hang out, and many other good teachers can be found – as well as vigorous defences of the Cult of TCP/IP.
This is not to dismiss the work of those who went before, for dead-ends are also part of the conceptual map-making process. All cosmological models are provisional and impermanent. There are no ‘laws’ of physics, merely ongoing refinements of approximations to reality.
Reaching conscious competence
For you to join in this process of inquiry, you need to learn a meta-skill: how to think critically about what you think, and why things work or don’t work. You too need to become a network philosopher and cosmologist.
That means you also don’t have to stick with the technology religion you are professionally born with. Choose “strong opinions, loosely held.” Even if you were baptised into a bandwidth cult, they can’t chop off your freedom of conscience and rational thought at birth!
The first step is to accept that it is possible to be unconsciously incompetent, and to have strayed outside the zone of ‘knowing that you know what you know’. Merely having a ‘feeling of knowing’ isn’t enough.
By letting go of our certainty and need to be ‘right’ we can get to a humble place of conscious incompetence. That is a position from which progress is possible.
For if we networking technologists do not address our crisis of certainty, we will certainly face a crisis.
To keep up to date with the latest fresh thinking on telecommunication, please sign up for the Geddes newsletter