Skip to main content
QUICK REVIEW

[论文解读] Verifying Isolation Properties in the Presence of Middleboxes

Aurojit Panda, Ori Lahav|arXiv (Cornell University)|Sep 26, 2014
Formal Methods in Verification参考文献 33被引用 25
一句话总结

本文提出了一种可扩展的模型检测方法,用于验证包含具有动态数据路径的中间盒(如防火墙和缓存)的网络中的隔离属性。通过将中间盒建模为状态机,并使用SMT求解器检查不变量,该方法可在几分钟内验证包含最多30,000个中间盒的真实规模网络中的复杂网络不变量,克服了先前工具在假设静态转发行为时的局限性。

ABSTRACT

Great progress has been made recently in verifying the correctness of router forwarding tables. However, these approaches do not work for networks containing middleboxes such as caches and firewalls whose forwarding behavior depends on previously observed traffic. We explore how to verify isolation properties in networks that include such "dynamic datapath" elements using model checking. Our work leverages recent advances in SMT solvers, and the main challenge lies in scaling the approach to handle large and complicated networks. While the straightforward application of model checking to this problem can only handle very small networks (if at all), our approach can verify simple realistic invariants on networks containing 30,000 middleboxes in a few minutes.

研究动机与目标

  • 解决缺乏针对转发行为依赖于流量历史的中间盒网络的验证工具的问题。
  • 将形式化网络验证从静态路由器和交换机扩展到包括防火墙、缓存和负载均衡器等具有动态数据路径的组件。
  • 在包含数千个中间盒的大规模、真实网络中,实现对隔离性和流水线不变量的验证。
  • 开发一种可扩展的方法,避免对完整实现进行建模,转而使用中间盒行为的简化抽象模型。
  • 通过支持网络管理员使用精确且自动化的检查手段验证端到端网络行为,推动形式化验证在生产网络中的应用。

提出的方法

  • 将整个网络建模为一个程序,其中路由器和交换机作为连接逻辑,中间盒作为具有状态依赖转发行为的子程序。
  • 将每个中间盒表示为有限状态机,仅捕获与报头相关的转发行为,抽象出复杂的内部逻辑。
  • 使用基于SMT求解器的符号模型检测技术,验证所有可能流量场景下的端到端不变量,如可达性和隔离性。
  • 将验证过程分解为模块化检查:流水线不变量按数据包流分别验证,而隔离不变量则通过符号执行在主机对之间进行检查。
  • 利用SMT求解器高效处理潜在的无限状态空间,通过精心设计的逻辑公式确保终止性。
  • 应用优化技术,如有限的不变量类别和模块化网络分解,以提升大规模网络的可扩展性。

实验结果

研究问题

  • RQ1形式化验证技术能否适应中间盒具有动态数据路径的网络,其中转发行为依赖于观察到的流量?
  • RQ2如何在包含数千个中间盒的大规模网络中,形式化验证隔离性和流水线不变量?
  • RQ3哪些中间盒行为的抽象模型能够在不访问完整实现的情况下实现可扩展的验证?
  • RQ4SMT求解器和符号模型检测在存在有状态中间盒的情况下,能在多大程度上用于验证网络范围的不变量?
  • RQ5所提出的方法能否扩展到具有复杂中间盒拓扑的现实企业网络?

主要发现

  • 该方法成功在包含最多30,000个中间盒的网络中验证了隔离性和流水线不变量,验证时间仅需几分钟。
  • 使用简化的中间盒模型(作为有限状态机)实现了可扩展验证,且无需访问专有代码。
  • 基于SMT的符号模型检测技术能够在保证终止性的同时,对潜在的无限状态空间进行推理,其终止性通过公式设计实现。
  • 该方法在可扩展性上显著优于朴素模型检测,后者在仅含少量动态数据路径的网络中即已失效。
  • 该框架支持两种不变量的验证:流水线不变量(特定中间盒序列的流经)和隔离不变量(主机间的可达性),并采用不同的验证策略。
  • 该方法表明,形式化验证在具有动态数据路径的真实网络中是可行的,为工业界的应用铺平了道路。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。