重新认识MPLS

Leah发布于:2021-09-09阅读:0

今天尝试建立一个实验室,其中包含两个CE,PE和P路由器,每个实验室带有一个IS-IS核心,PE之间的IBGP,以及到CE的EBGP。

重新认识MPLS

我的目标不是要更加熟悉MPLS本身,而是要研究它对普通路由有什么好处。

显然,MPLS因其实现和流量工程的能力而广受欢迎,但是仅针对纯IP路由实现MPLS似乎是不必要的。当基于前缀的数据包交换正常工作时,为什么还要添加标签?

再看看实验室拓扑。

请注意,尽管IS-IS在所有P和PE路由器上运行,但是IBGP仅在两个PE路由器之间运行。BGP路由器之间的流量必须穿越非BGP路由器。这带来了一个问题:P路由器(最终在CE路由器之间提供传输)不了解客户路由(192.168。*。0/24)。

360截图20191129163428788.jpg

尽管禁用同步和使用next-hop-self允许IBGP路由器成功对等和交换客户路由,但P路由器将不知道如何转发发往客户网络的数据包。即使在验证了完整的路由收敛之后,从CE1上的192.168.10.1到CE2上的192.168.40.1的ping操作也会失败。

360截图20191129163434844.jpg

为了解决这种情况,我们可以将客户路线重新分配到我们的IGP中,但这很麻烦。另一个选择是将P路由器包括在BGP中,但这可能不可行。或者,我们可以实现MPLS以为IP流量提供包装。

MPLS基于IP前缀为转发等效类(FEC)分配标签,并将一个或多个有形标签附加到每个数据包。这为P路由器提供了一个备用目标地址来使用,从而无需为MPLS域之外的目标维护IP路由。通过一个例子,这一点应该变得更加清楚。

配置MPLS只需选择分发协议(现代配置中的标签分发协议(LDP))并指定MPLS接口即可:

360截图20191129163439741.jpg

MPLS具有所有P和PE路由器上启用后,标签将被动态地分配给所有的内部(10 。。*)前缀。可以使用以下命令在MPLS路由器上检查LFIB条目show mpls forwarding-table:

360截图20191129163444892.jpg

部署MPLS后,我们可以再次尝试从CE1到CE2进行ping操作。这是一个从头到尾的流程清单:

  1. PE1接收到数据包,并为192.168.40.1。执行CEF查找。该路由(通过IBGP学习)指示下一跳为10.0.2.1。CEF还指示应添加MPLS标签,因为出站接口已启用MPLS。

  2. PE1在数据包的第2层和第3层标头之间插入带有适当标签的MPLS标头,并将其发送到下一跳。

  3. 根据使用的负载平衡,下一跳将为P1或P2;出于演示目的,我们假设选择了P1。

  4. P1接收到数据包,并在标签上而不是目标IP地址上进行查找。由于P路由器具有所有IGP学习的路由的标签,因此P1能够就如何转发数据包做出明智的决定。

  5. P1查阅其LFIB并确定应弹出标签,因为下一跳是标签交换路径(LSP)的末尾;这就是所谓的倒数第二跳弹出(PHP)。如果LSP中还有其他跃点,则将标签交换为另一个。

  6. PE2接收到未标记的数据包,并且发生正常的IP路由以将该数据包路由到CE2。

概括地说,MPLS使P路由器能够承受未直接连接的IBGP对等体之间的传输流量。无需依赖目标IP地址来确定下一跳,而是在MPLS域内使用中间标签来指定IBGP对等方之间的标签交换路径(LSP)。

微云网络&网络综合解决方案提供商,助力企业信息化建设、数字化转型、以及全球化互联。SD-WAN方案可实现全球访问加速、SaaS访问加速海外视频加速海外分支组网,有效提升国际间沟通效率,助力中国企业开拓国际市场。服务热线:400-028-9798,欢迎来电咨询。

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:shawn.lee@vecloud.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

本站原创内容未经允许不得转载,或转载时需注明出处:https://news.kd010.com/yzx/2769.html

TAG标签:MPLS

上一篇:QoS策略及通过BGP传播
下一篇:创建MPLS-组网拓扑

相关文章

返回顶部