Everything is Backwards – Rethinking the Internet

Pretty much every aspect of the present Internet’s design needs rethinking. It does one thing really well – abstracting away the implementation of connectivity. Everything else is pretty borked from inception.

I have captured a list of the ways in which the Internet can be rethought and redesigned. It is not a comprehensive list, and it is offered without explanation as that would take too long. It should be enough to give you an idea of the scale of the refactoring job we face.
What currently is What should be
Work conserving queues Non-work conserving queues
Layered architecture Scope-based architecture
Global address space Local address spaces
Emergent performance Engineered performance
Single class of service Multiple classes of service
Variable quality floor/ceiling Fixed quality floor/ceiling available
No association control Strong association control
Resource rationing Resource markets
Neutrality regulation FRAND regulation
Unpredictable performance Predictable performance
Wide area and LAN only Works at all scales including personal
Weak abstraction API Strong abstraction API
No internetwork gateways Always internetwork gateways
Computer networking paradigm Inter-process communications paradigm
Job to be done is to deliver packets Job to be done is to copy information
Quality as a positive phenomenon Quality as absence of a negative phenomenon
Quantity with a quality Quantity of quality
Flat and concatenated networks Recursive networks
Loss is bad and to be avoided Loss is good and necessary
Over-provision and run links idle Run in saturation and avoid idleness
Degrees of freedom comingled Degrees of freedom independent
Running code and consensus Responsibility for failure
Creating success modes Containing failure modes
No safety case Quantified safety case
End-to-end principle Science and engineering
No real underlying theory Strong mathematical basis
Unknown scaling limits Known scaling limits
Connectivity as first class design object Connectivity, security, performance as first class design objects
Distributed applications as afterthought Distributed applications as integral capability
Composable connectivity Composable connectivity, security and performance
No or weak isolation Strong security and performance isolation
Unbounded applied load Bounded applied load
No agreed resource model Agreed resource model
No standardised units of demand and supply Standardised units of demand and supply
Centralised addressing governance Decentralised addressing governance
Naming and addressing confused and conflated Naming and addressing clearly and cleanly separated
Domain names as address macros Resource identifier databases
Mobility as afterthought Mobile by design
Network protocol monoculture Network protocol diversity
Low cohesion and strong coupling High cohesion and loose coupling
Fragile Antifragile

For the latest fresh thinking on telecommunications, please sign up for the free Geddes newsletter.