Facebook面临的问题
- 分布式配置:有很多配置需要在不同的系统中更改。 多个Domain:Facebook需要管理网络的网络
- 版本控制:需要管理不同版本的网络同时运行。
- 依赖:将新路由器添加到 AS 意味着更改所有其他路由器上的配置。这种依赖性对于网络工程师来说处理起来很费力。
- 供应商差异:不同供应商经常有不同的API
本质上来说,Facebook提出Robotron是希望设计一个更加智能的自动化网络管理系统
基于意图的网络配置
基于上述Facebook的需求,Facebook最终采用的基于意图的网络配置方式,工程师使用 Robotron 表达高级设计意图,将其转化为低级设备配置并安全部署。但是Facebook的基于意图配置是模型驱动的,Facebook会将网络建模,网络工程师通过模型表达自己的高级意图,进而生成配置。
Facebook对网络的抽象
Facebook将上述的网络设计抽象为如下图所示的模型,并根据这个模型构建网络配置并下发