转载 Sean 大佬:https://zhuanlan.zhihu.com/p/157810681
在 Silver Peak 引入 Region 和 Regional Routing 以后我们可以更灵活的设计和部署大型的广域网,在之前的版本中我们的广域网拓扑被 overlay 限制:

如上图,当我们在创建一个 overlay 以后,该 overlay 的网络拓扑要么是 Hub & Spoke,要么是 Full Mesh。这对于设计部署一个大型广域网(例如有上百个站点且遍布全球)很不灵活,如果我们用 Hub & Spoke 那么对 Hub 的选择可能会有争议,如果用 Full Mesh 那么会产生大量的 tunnel 需要去维护。Region 的引入使得我们可以将不同的站点分配到不同的 Region 里面,并且每个 Region 都可以单独的选择拓扑和其他的配置。这里的 Region 并非一定要在地理的区域,Region 也可以当作不同的部门,不同的子公司等等。

在这个示例中我创建了三个 Region 分别是 AMER, APAC 和 EMEA,然后我们选取其中的 MyOverlay 放大来看,AMER 使用了 Hub & Spoke 拓扑,APAC 和 EMEA 使用了 Full Mesh 拓扑。值得注意的是在 MyOverlay 里定义的拓扑仅限于该 overlay,其他的 overlay 我们可以指定不同的拓扑。

使用 Region 需要注意以下规则:
- 一台 EC 只能被定义在一个 Region 里面
- Region 里必须将 EC 定义为 Hub 或者 Spoke
- 同一 Region 里的 Hub 必须和所有 Spoke 建立 tunnel
- 同一 Region 里的 Hub 之间不分享非直连路由
- 同一 Region 里 Hub 将从一个 Spoke 学习到的路由宣告给其他的 Spoke
- 同一 Region 里 Spoke 不可以将 SD-WAN fabric 里学到的路由再次宣告出去
- Regional Hub 之间将建立 Full Mesh 的拓扑关系
- Regional Hub 之间将宣告各自从 Spoke 学习到的路由,并且 metric 自动增加 50
当我们的广域网被划分为不同的 Region 以后我们需要考虑每个 Region 如何实现 Internet Breakout,是 Backhaul 还是 Local Breakout。这里的 Backhaul 指的是一个 Region 里的 Spoke backhaul 到它所在 Region 的 Regional Hub。Regional Hub 之间可以利用重分布路由来实现相互的备份。
Regional BIO 中还有一个叫做 “Include Hubs in other Regions” 的特殊设置,该设置可以让一个 Region 里的 Spoke 和另外一个 Region 的 Hub 直接建立 tunnel,这种 Hub 称为 External Hub。配置 External Hub 的目的是缩短路径,对于一些特殊的,需要最优化路径的站点有用。
如图所示我在 APAC Region 里面定义了两个 External Hub:

未定义 External Hub 时 ECV-Branch-1 只和自己的 Regional Hub 建立 tunnel:

有了 External Hub 以后我们就多出了直连的 tunnel:

从 LAN 里面的 trace route 也可以看出两种情况下的路径不同:
