I have been having a number of conversations recently with several clients and colleagues about “semantics”. It’s clear that there is not a lot of clarity on this philosophical subject! Whilst is may be an obscure issue, it is a very important one. Our ideas lead us to take actions, and if we want those actions to have the consequences we had in mind, then we need to have done our epistemological homework.
Thinking forwards and backwards
The study of semantics is, by definition, the study of meaning. There is a process of taking a meaningful idea in our head (“intentional semantics”), writing it down in some symbolic way (“denotational semantics”) and making it happen (“operational semantics”). Note that these are standard terms of the art; I’m not making them up!
We would like the meaning of each of these to align, so we don’t get unpleasant surprises. If my intention is to visit friends in Watford from my home in Staines, I might first capture this as a journey plan in Google Maps, and then operationally follow the directions from my satnav. If the plan doesn’t match my intention, or I don’t follow the plan, I don’t get to where I wanted in a timely fashion.
The process also works in the other direction. We would also like to be able to look at the concrete world (“driving along fast on the clockwise M25 around London at junction 13”), abstract away the detail to give us some data point(s) (“a car going at 100mph”) and assigning meaning to it (“Martin has broken the speed limit and isn’t keeping to the plan”).
Aligning ideas, instructions and implementation
This alignment of semantics is a particularly critical issue in the case of broadband policy at the moment. We’re trying to take some kind of intention of delivering fair and just outcomes; turning those into objective regulatory policies; and then implementing some kind of operational system of enforcement. A regulator has to then look at the operational network, measure some aspect of it, and decide whether the operational service is compliant with the denoted policy that reflects regulatory intent.
If there are gaps in our meaning-making along the way, we might get into trouble. (And yes, we’re definitely in deep trouble!) So what I’d like to do is to reflect upon the semantics of your standard domestic broadband Internet access service. How can we go in each direction, and make sure everything is lined up?
Now I’ll admit that I’ve struggled with this area at times. It requires relating metaphysical thinking to highly concrete problems. Even with my background in theoretical computer science, it’s taken a lot of cycles of argument and refinement over several years to get to my current partial understanding. I suspect I have some learning still to do. So consider the following work in progress, and open to challenge; it’s not the final word.
What is the semantics of “best effort” broadband?
What is a broadband service supposed to do? The answer to this question is likely to surprise you.
When we design and run a broadband service, we perform several actions:
- Select our architecture and its mechanisms (e.g. types of bearer, types of scheduling system)
- Deploy and configure these mechanisms
- Add electricity, and set them running to deliver the service
Now, the marketing department may start off with a series of performance aspirations, albeit possibly implicit and hence unarticulated. They might intend users to have a certain level of concurrent Web, video, VoIP, streaming TV and gaming performance, for example. As a result, the network architect selects some QoS algorithms, and sets parameters like the buffer size and “fair” flow weightings.
Now, we’ve clearly seen intentional acts up to this point. The trouble is, when we turn on this operational network we have a complete stochastic system. What happens next is not what you imagine. The end result is a purely emergent outcome. In other words, whilst at the gross level there may be intentionality (“optimised for speed tests, not for voice”), the specific performance of any application for any user at any point is not intentional.
This is pretty mind-warping and hard to get your head around. The intentional service semantics of “best effort” broadband is undefined! More colloquially, it’s “shit happened!”, although if we’re writing for a formal regulatory body, we might call it “you got whatever you got”.
Emergence erases intention
The emergent effects might mean that:
- The whole service suddenly reaches some unseen performance cliff and collapses
- Particular applications might get weird performance glitches
- Networks may exhibit strange transient outages, say at regular intervals as traffic bursts arrive on the hour as devices poll for updates
- Certain devices with particular network stacks have different behaviours, and that behaviour changes with software updates
- Applications might have different relative performance depending on time of day
- Changes to codecs, browsers, protocols and application designs may mean performance changes in unforeseen and unpredictable ways
When under heavy load, a network may even exhibit nondeterministic behaviour. This is the computer science way of saying “any old shit might happen and probably will!”. The level of weirdness is unbounded. This matters, because the case we’re most concerned with as a regulator is the worst case, which is an ISP that’s oversubscribed its resources to turn a quick buck whilst the customers are locked into long contracts.
The problem is this: if any user or edge provider complains that they aren’t getting the performance that they paid for, there is no general means of assigning blame. In specific cases it may be possible, but in the general case it is not, and regulators face the general case.
The confusion of intentional stance
Humans are biologically hard-wired to evaluate intentional stance. Is this thing I am interacting with a friend or foe? So when a network keeps on delivering the more-or-less right kind of performance (ahem, “best effort”) we impute (benevolent) intention to it and its designers, even where there is none. This then misleads us into assigning blame to ISPs for (bad) outcomes over which they have no control.
I have seen two key misconceptions when trying to make sense of broadband. They are respectively in how we go “forward” from intention to operational semantics; and how we get “back” again.
Going forward, an ISP might have applied some kind of traffic management rules, which might “prioritise” a particular application or class of traffic. The naïve assumption is that this now makes the service outcome intentional. It does not.
What we have is still an emergent outcome, but with a different bias to the “network casino”. It’s even possible to get quite perverse effects. “Priority” can result in worse performance (as some protocol oversaturates some resource), and “throttling” might result in better performance! Different users and applications will have different “winning streaks” and “losing streaks”.
Now, it is not to say that traffic management doesn’t have any intentional effect on operation. It clearly does, else the DPI vendors would go out of business and their executives would be imprisoned for fraud. But that you personally “made a QoE fortune” or went “QoE bankrupt” in the network casino can’t be attributed to the “casino owner”.
So the second fallacy is to believe that you can recover intention from operation. This is mathematically impossible. The idea that we ought to be able to assign blame for bad performance is extremely seductive, and hopelessly wrong.
Even if you have printouts of all the mechanisms and their configuration, you cannot (in general) prove to any level of confidence that the unsatisfactory QoE outcome was caused by any particular traffic management setting. Furthermore, correlation of configuration changes with performance changes is definitely not causation; coincidences will abound.
Why net “neutrality” is nuts
The basic reason why net “neutrality” is nuts is that the textbooks and academic papers are full of false assumptions about the service semantics.
What they have all (yes, all, to the best of my knowledge) done is to assume that the intentional semantics exists and is either benevolent (“neutral”) or malignant (“discriminatory”). They then assume that knowing the denotational semantics (network design and configuration) tells you the operational semantics; and that relationship gives ISPs intentional control over the operational semantics.
This is a parallel universe in which broadband is highly deterministic in its behaviour, as opposed to the stochastic emergent reality. A “non-discriminatory” network will, magically, apportion its over-delivery of quality in some inherently equitable (i.e. “neutral”) way. This is a complete technological fantasy:
- This theory of “non-discrimination” presumes that the operational semantics can be derived from the denotational semantics; it can’t as it’s emergent. Netflix might work one day, and not the next, and nobody will know why. That’s normal.
- Conversely, they assume that “discriminatory” intent can be intuited from the operational semantics; it can’t, as it’s emergent. That Netflix stopped working doesn’t mean there was bad intent. Equally, that it kept working doesn’t mean there was good intent.
Truth is stranger than broadband policy fiction
If this all seems rather strange, well, yes it is! And that’s how the world works.
As Nobel physicist Richard Feynman said: “You don’t like it…, go somewhere else! To another universe! Where the rules are simpler, philosophically more pleasing, more psychologically easy. … And I cannot make it any simpler, I’m not going to do this, I’m not going to simplify it, and I’m not going to fake it.”
Feynman was talking about the bizarre reality of quantum physics. We have to engage with the bizarre reality of broadband. Both are the result of strange effects at the macro scale resulting from randomness at the most micro scale.
And that’s honestly what the world looks like. An ISP’s “best effort” service semantics are simply strange.
For the latest fresh thinking on telecommunications, please sign up for the free Geddes newsletter.