TODO:(one week)
- Forwarding tree生成 (最终修复的误报率很大程度上取决于这个tree的优劣)
(这里指的是BGP的,在有reference的情况下)
- Observable:
- 和现有的(错误的)转发行为/路径相差尽可能小【贪心地认为转发面差距越小则控制面决策更改越少】
- 保证节点间的一致性(对于所有路径来说,某个节点的下一跳都是一致的)
- Unobservable:
- 相似节点可能有相似路径:命名相似的节点可能有相似的转发行为(途径某些一致的中间节点)
- 多个相似节点的排序?
- 一致性
- BGP和Static的tree
- Static会对BGP有影响,因为如果某些节点可以用static来做到转发策略,就不需要加BPG的约束了
- 诊断前判断是否只有static的错误:可以 删/改优先级/改下一跳
- Config 映射
- static
- policy
- peer
- ...
PAPERS:
*
CODE:
CONFUSIONS:
- 最难的其实是如何保证一致性的问题,因为任何节点找理想单路径都很容易,但是要考虑已有路径的不冲突,那么这些路径的优先级排序metric就很难量化,节点轮流找路的顺序对此 应该也有影响
OTHERS:
(3-29更新:避免路径冲突直接用MST了,只是MST可能从中间开始生成/选nextNode的条件可以ref正确流的)