Just recently, the inimitable Greg Ferro took an interesting look at DHCP and explained in a blog post:
“During a recent discussion on DHCP I realised that this process is a near perfect expression of intent.”
The process he’s referring to is DHCP, and notice that he went beyond identifying the DHCP process as an example of automation but also as a “near perfect expression of intent.”
I disagree with Greg’s conclusion, and here’s why.
DHCP is the automated process of assigning an IP address to a computer. There’s no human intervention other than setting up the DHCP components in the first place. Once the DHCP server, address pools, options, helpers, etc are all set up, it just works automatically.
So I do agree with Greg that DHCP is an automated workflow. An end-user doesn’t have to manually configure an IP address on their laptop, and a network admin doesn’t have to manually map an IP address to every computer in their network. The machines know what to do, and they just do it.
The problem with Greg’s argument is that intent based networking is much more than automation, whether that be simple scripts or sophisticated machine-to-machine orchestration. Yes, automation is part of IBN, but it’s only one leg of the table.
Intent based networking has three main components that exist in a closed loop:
- Network abstraction
- Continuous validation
- Autonomous remediation
The DHCP process certainly automates the discover, offer, request, and acknowledge process. And to me, network automation and network abstraction pretty much go hand-in-hand.
A DHCP server abstracts parts of the network like IP address pools, VLAN tags, and DHCP options. Each of these components exist on their own, but when a computer connects to a port, the automated workflow calls on these objects in a prescribed way to assign an IP address to a device. Greg does identify one of the pillars of IBN – network abstraction.
But we’re missing the other two components. As we use it today, DHCP doesn’t provide any continuous validation to make sure computers have the correct IP address. And DHCP doesn’t take any steps to autonomously correct the network when a computer receives an incorrect IP address or DHCP option.
There’s no mechanism to detect if the actual intention of the operator, or in other words, the intent of the operator to assign an address from a particular subnet, is being carried out correctly. There’s no closed loop of automation, validation, and remediation.
Now I’ll grant that autonomous remediation is a work-in-progress. Sasha Ratkovic, co-founder of Apstra, calls this Level 3 intent based networking, and though I know some IBN vendors are working on it, autonomous remediation isn’t here just yet.
So what does this mean?
Though DHCP abstracts several components of the network, it lacks the other core components of IBN. Therefore it’s incorrect to say that intent networking is nothing new because DHCP is nothing new.
Think of it this way: it would be a stretch to say that in the annals of human history, cars are nothing new because we’ve always had the wheel. In the same way I think it’s a stretch to say intent based networking is nothing new because we’ve always had DHCP.