Checking Beliefs in Dynamic Networks

Introduction

  • 当前方法的缺点:
    • lack a general specification language and hardcode the network model.
    • can not model dynamic networks
    • 网络验证两大难题
      • Lack of knowledge:determining what specification to check
      • Network Churn
  • 本文工作的关键
    • General specification language to specify beliefs
      在这里插入图片描述
    • General modeling language to model networks

Datalog model

Why Datalog

网络验证工具应该具有的特性:

  • All Solutions
  • Packet Rewrites
  • Large Header Spaces
  • General Specification Language
  • General Modeling Language

Modeling Reachability in NoD

  • NoD是一个针对大型标头空间优化的数据日志实现
  • 相关的操作
    • guard
    • Example
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

Beliefs and Dynamism in NoD

Protection sets

Fabric managers are not reachable from guest virtual machines.
在这里插入图片描述

Reachability sets

All Fabric managers are reachable from jump boxes (internal management devices)
在这里插入图片描述

Equivalence of Load Balanced Paths

Load Balancer ACL Bug
在这里插入图片描述

  • 将选择的方案编码为 h h h S e l e c t Select Select为选择性启用谓词, G 12 G_{12} G12 G 13 G_{13} G13分别保护 R 1 R1 R1 R 2 , R 3 R2, R3 R2,R3的流量,则建模为:
    R 2 ( d s t , h ) : − G 12 ∧ R 1 ( d s t , h ) ∧ S e l e c t ( h , d s t ) , R 3 ( d s t , h ) : − G 13 ∧ R 1 ( d s t , h ) ∧ S e l e c t ( h , d s t ) R2(dst,h) :- G_{12} \land R1(dst,h) \land Select(h,dst), R3(dst,h) :- G_{13} \land R1(dst,h) \land Select(h,dst) R2(dst,h):G12R1(dst,h)Select(h,dst),R3(dst,h):G13R1(dst,h)Select(h,dst)
  • 检查: ? A ( d s t , h 1 ) ∧ ¬ A ( d s t , h 2 ) ? A(dst,h_1) \land \lnot A(dst,h_2) ?A(dst,h1)¬A(dst,h2)

Locality

Cluster reachability

  • 定义谓词 D S P DSP DSP总结到达路由的数据包
    D S P ( d s t ) : − R 2 ( d s t ) , D S P ( d s t ) : − R 3 ( d s t ) , D S P ( d s t ) : − R 5 ( d s t ) DSP(dst) :- R2(dst), DSP(dst) :- R3(dst), DSP(dst) :- R5(dst) DSP(dst):R2(dst),DSP(dst):R3(dst),DSP(dst):R5(dst)
  • 定义谓词 L R 1 L_{R1} LR1 代表可以到达 R 1 R1 R1的地址
    L R 1 ( d s t ) : − d s t = 125.55.10.0 / 24. L_{R1}(dst) :- dst = 125.55.10.0/24. LR1(dst):dst=125.55.10.0/24.
  • 检查:
    S ( d s t ) : − L R 1 ( d s t ) , ? D S P ( d s t ) S(dst) :- L_{R1}(dst), ? DSP(dst) S(dst):LR1(dst),?DSP(dst)

Dynamic Packet Headers

MPLS

在这里插入图片描述

Middleboxes and Backup Routers

  • Incorrect Middlebox traversal
  • Backup Non-equivalence

Network Optimized Datalog

  • μ Z \mu Z μZ (the Datalog framework in Z3)

Compact Data Structures

在这里插入图片描述

Combining Select and Project

Handling Packet Rewriting

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值