Current network control plane verification tools cannot scale to large networks, because of the complexity of jointly reasoning about the behaviors of all nodes in the network. In this paper we present a modular approach to control plane verification, whereby end-to-end network properties are verified via a set of purely local checks on individual nodes and edges. The approach targets the verification of safety properties for BGP configurations and provides guarantees in the face of both arbitrary external route announcements from neighbors and arbitrary node/link failures. We have proven the approach correct and also implemented it in a tool called Lightyear. Experimental results show that Lightyear scales dramatically better than prior control plane verifiers. Further, we have used Lightyear to verify three properties of the wide area network of a major cloud provider, containing hundreds of routers and tens of thousands of edges. To our knowledge no prior tool has been demonstrated to provide such guarantees at that scale. Finally, in addition to the scaling benefits, our modular approach to verification makes it easy to localize the causes of configuration errors and to support incremental re-verification as configurations are updated
翻译:由于对网络中所有节点的行为进行联合推理的复杂性,目前网络控制平流层核查工具无法推广到大型网络,目前网络控制平流层核查工具无法推广到大型网络,因为对网络中所有节点的行为进行联合推理的复杂性。在本文中,我们提出了控制平流层核查的模块化方法,通过对单个节点和边缘进行一套纯粹的局部检查对端到端网络属性进行核查。该方法的目标是核查BGP配置的安全属性,并在面临邻居武断的外部路线公告和任意节点/链接故障时提供保障。我们已经证明该方法是正确的,并在称为光年的工具中实施。实验结果显示,光年尺度比先前的控制平流校验器要好得多。此外,我们还利用光年来核查一个主要云源提供商的广域网的三种属性,其中包括数百个路标和数万条边缘。据我们所知,没有证明以前的任何工具能够提供这种规模上的保证。最后,除了扩大规模的好处外,我们的模块化核查方法使得更容易将配置错误的原因本地化,并且支持递增核查,因为配置正在更新。