FRR与VPP路由和转发层面流程

2024-04-27 01:38
文章标签 流程 转发 路由 vpp 层面 frr

本文主要是介绍FRR与VPP路由和转发层面流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  首先了解一下VPP和FRR结合的架构如下图所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7TlmGafp-1590764332456)(https://turbock79.cn/wordpress/wp-content/uploads/2020/04/vpp-frr-路由流程图.png)]

参考文档:
路由平面和转发平面分离:https://wiki.fd.io/view/VPP_Sandbox/router
FRR实现官方文档:https://github.com/FRRouting/frr/wiki/Alternate-forwarding-planes%3A-VPP

1.FRR与VPP结合中路由层面处理方式

  如上UML图所示,路由层面为步骤2,3,5,6,其由frr中zebra以及vpp中router_plugin自动完成。

  在FRR中第四步配置好frr后,通过配置协议获取多种协议的路由,按照各自协议AD值进行优先级选择,代表参数为各路由的metric值;值越小,优先级越高;然后同步到内核,然后再到VPP中,形成环路,写入VPP的fib路由表进行路由引导。

  AD(administrate distance),也就是说用来判断此路由的可信度,也表示默认的管理距离,EIGRP默认AD是90,IGRP是100,OSPF是110,RIP是120,直接连接是0,静态路由是1。AD最大值255,越小可靠性越高。通常可以通过修改AD值调整路由优选路径。AD值主要在IGP协议中采用,BGP更多采用med值,和本地优先级进行选路。

  上图简单示例重分发情况下,路由选择的情况。

2.VPP转发平面

  在VPP中,路由配置来源相对单一:

  • VPP配置端口IP;
  • VPP配置静态路由;
  • 从内核同步的动态路由。

  其中VPP处理规则是按照AD值进行处理,内核直连等优先级高于静态路由、静态路由优先级高于从内核同步获取的动态路由。即内核直连>静态>动态。有一种可能性,当VPP从内核同步过来FRR中的路由时,会根据上述AD值进行判断,解决隐形的路由冲突问题;

  如上图所示,VPP端口路由同步到内核的路由作为内核路由,第一条,其metric优先级为0最高级;第二条为linux 内核中配置的静态路由;第三条为内核从frr中同步学习到的ebgp路由,metric值为20.

这篇关于FRR与VPP路由和转发层面流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/939212

相关文章

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

spring-gateway filters添加自定义过滤器实现流程分析(可插拔)

《spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔)》:本文主要介绍spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔),本文通过实例图... 目录需求背景需求拆解设计流程及作用域逻辑处理代码逻辑需求背景公司要求,通过公司网络代理访问的请求需要做请

使用JavaConfig配置Spring的流程步骤

《使用JavaConfig配置Spring的流程步骤》JavaConfig是Spring框架提供的一种基于Java的配置方式,它通过使用@Configuration注解标记的类来替代传统的XML配置文... 目录一、什么是 JavaConfig?1. 核心注解2. 与 XML 配置的对比二、JavaConf

golang实现动态路由的项目实践

《golang实现动态路由的项目实践》本文主要介绍了golang实现动态路由项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习... 目录一、动态路由1.结构体(数据库的定义)2.预加载preload3.添加关联的方法一、动态路由1

Nginx路由匹配规则及优先级详解

《Nginx路由匹配规则及优先级详解》Nginx作为一个高性能的Web服务器和反向代理服务器,广泛用于负载均衡、请求转发等场景,在配置Nginx时,路由匹配规则是非常重要的概念,本文将详细介绍Ngin... 目录引言一、 Nginx的路由匹配规则概述二、 Nginx的路由匹配规则类型2.1 精确匹配(=)2

Java对接Dify API接口的完整流程

《Java对接DifyAPI接口的完整流程》Dify是一款AI应用开发平台,提供多种自然语言处理能力,通过调用Dify开放API,开发者可以快速集成智能对话、文本生成等功能到自己的Java应用中,本... 目录Java对接Dify API接口完整指南一、Dify API简介二、准备工作三、基础对接实现1.

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

通过Spring层面进行事务回滚的实现

《通过Spring层面进行事务回滚的实现》本文主要介绍了通过Spring层面进行事务回滚的实现,包括声明式事务和编程式事务,具有一定的参考价值,感兴趣的可以了解一下... 目录声明式事务回滚:1. 基础注解配置2. 指定回滚异常类型3. ​不回滚特殊场景编程式事务回滚:1. ​使用 TransactionT

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤