Today’s Networks are auto-configuring and self-orchestrating. When you connect a server to network device, the device will identity the MAC address of the server and update it’s database. The server can make a request to a DHCP server and self configure.
A network can be intentionally designed so that multiple paths exist through the network. Routing protocols can self-configure the network to use a secondary path in the event of a failure.
The design and configuration of these networks are effective policy as determined by the design of the network.
It’s not an efficient way of implementing policy. It’s not scalable nor is it flexible.
SDN and Policy
If OpFlex and Congress is to get policy right, then it will need to address the limitations of the current policy frameworks. Although they are manual and hard to use, ‘software defined policy’ must overcome the same problems.
- what is the policy construct for “failover”
- what is the policy construct for “load balancing over unequal paths”.
- what is the policy for “my hardware doesn’t implement this feature”
- policy for “conflicting policy”
Promise Theory and Networking
There are parts of promise theory that I understand and can see why it works for Linux deployment in the form of Puppe, CFengine etc. However, it Linux is inherently able to accept complex statements of policy and to process them into local intent.
I’m less sure that networking devices are well served by complex policy engines on the device. But no one seems to be talking about that. What is networking devices are better served as simple, low complexity processing with external configuration. Policy implies complex operating systems performing extensive local processing.
Two systems with different approaches. Will customers choose both and is the market big enough to have divergent technologies ?
Just thinking out loud. The future seems less clear today.