我已经看到一些 SDN 控制器在他们的架构中实现了一个 BGP 插件(例如,Opendaylight)。但是,由于控制器不发送或路由数据包,我想知道它们如何以及是否可以更新任何路由器中存在的路由或路径。否则,拥有此类 BGP 插件的目的是什么?
SDN 控制器可以注入或删除路由器中的路由吗?
网络工程
路由
路由器
bgp
专用网
2021-07-21 22:24:55
3个回答
SDN 绝不是一个标准。因此,某些 SDN 实现可能允许注入/删除路由,而其他则不允许。
BGP 是众多路由协议中的一种。路由器从直连网络、静态路由和路由协议中学习路由。
SDN 控制器至少应该能够添加或删除静态路由。
SDN BGP 功能可能只是一个 BMP 插件,允许控制器查看 BGP 路由。
让路径外路由器将路由注入另一个 BGP 扬声器是很常见的 - 考虑路由反射器的工作方式 - 它们通常是在没有传输流量的服务器上运行的 BGP 守护进程。
事实上,RR 可能是 SDN 控制器的一个很好的类比——它接收所有路径,从它的角度计算最好的,然后将其通告给它的所有客户端。
让我们暂时忘记 SDN,并考虑在传统路由器中会发生什么。有一些软件会查看 BGP 配置以及来自对等方的 BGP 信息,并就必须将哪些前缀转发到哪些接口得出一些结论。现在同一台路由器可能还有其他路由协议同时运行,也可能有一些静态配置的路由。
路由器“提炼”来自这些不同来源(路由协议、静态路由和其他)的信息,并提出最终的“转发表”。当可路由的数据包到达接口时,路由器硬件 (ASIC) 或转发软件将查询“转发表”以查看必须将数据包转发到何处(通过哪个接口)。
换句话说,即使在传统路由器中,导出转发表的软件和使用转发表的软件(或硬件 ASIC)之间也存在逻辑分离。
现在来到基于控制器的架构:这里的想法是我们将转发表的派生转移到不同的物理设备(控制器)。实际的路由器现在只剩下使用控制器发送的转发表的任务。
其它你可能感兴趣的问题