BGP路由优选+EVPN

BGP 的路由优选规则是一套多步决策链,用来确定在多个可行路由中选择最优的路由。BGP 是一种路径向量协议,通过这些优选规则,网络管理员可以控制数据流量的流向,确保网络的稳定性和效率。下面以一个实例来详细说明 BGP 的优选规则及其链条。

BGP 路由优选规则的步骤

BGP 有一套固定的优选规则链,规则按照优先级顺序依次检查,直到找到一个最优路由。以下是 BGP 常用的优选规则(从高到低):

  1. 优先最高的 Weight 值(仅限于 Cisco 路由器特性)
  2. 优先本地优先级(Local Preference)值
  3. 优先本地产生的路由
  4. 优先最短的 AS 路径(AS_PATH)
  5. 优先最低的 Origin 类型
  6. 优先最低的 MED(Metric)值
  7. 优先到达下一跳的 IGP 距离
  8. 优先来自最低的 Router ID 的路由

实例说明

假设公司 A 的网络(AS100)有 3 个上联 ISP,分别是 ISP1(AS200),ISP2(AS300),和 ISP3(AS400)。每个 ISP 都通告了一条到达目标网络 192.168.1.0/24 的路由,具体情况如下:

  • ISP1:AS_PATH 为 200 300,Local Preference 为 100,MED 为 10,Router ID 为 1.1.1.1
  • ISP2:AS_PATH 为 300,Local Preference 为 200,MED 为 20,Router ID 为 2.2.2.2
  • ISP3:AS_PATH 为 400 300,Local Preference 为 100,MED 为 5,Router ID 为 3.3.3.3

我们来一步步分析该如何选择最优路径:

  1. Weight:假设没有特别配置 Weight 值。Weight 值缺省为 0,不会影响路由选择。

  2. Local Preference

    • ISP1 的 Local Preference 为 100。
    • ISP2 的 Local Preference 为 200。
    • ISP3 的 Local Preference 为 100。
    • 因为 ISP2 的 Local Preference 最高(200),优选 ISP2 的路由。

    结果:此时,BGP 已经选择了 ISP2 的路由为最优路径,不再需要继续检查其他规则。如果没有 Local Preference 优先级的差异,继续以下规则。

  3. AS_PATH 长度(如果没有 Local Preference 差异):

    • 如果 Local Preference 相同,我们会看 AS_PATH 长度。
    • 比较 ISP1 和 ISP3 的 AS_PATH:
      • ISP1 的 AS_PATH 为 200 300,长度为 2。
      • ISP3 的 AS_PATH 为 400 300,长度也是 2。
    • 此时,ISP1 和 ISP3 的 AS_PATH 长度相同,继续比较下一个优选条件。
  4. Origin 类型

    • 假设三条路由的 Origin 类型相同,继续比较下一项。
  5. MED 值

    • ISP1 的 MED 为 10。
    • ISP3 的 MED 为 5。
    • MED 值越小越优,因此优选 ISP3。

    结果:若之前条件无法选出最优路径,ISP3 的路由将被选为最优路径。

  6. IGP Metric 到 Next_Hop 的距离(如果前面的规则都相同):

    • 比较到达 ISP1 和 ISP3 的下一跳的 IGP 距离,距离越近越优。
  7. Router ID(最后一项):

    • 假如上面所有的条件都相同,我们会选择 Router ID 最小的路由。因此在这种情况下,优选来自 Router ID 1.1.1.1(ISP1)的路由。

本地优先

在 BGP 中,聚合(Aggregation)和注入(Injection)是两种重要的方式,用于控制路由条目的传播。每种方法又分为几种类型,分别适用于不同的场景。我们来解释这些概念,并比较它们。

1. 聚合(Aggregation)

聚合是一种将多个具体的路由条目合并成一个更粗略的路由条目的方式,目的是减少路由表的条目数量,提升路由效率。BGP 中有两种聚合方式:

a. 手动聚合
  • 定义:手动聚合是指使用 aggregate 命令,通过管理员在 BGP 配置中手动指定要进行聚合的路由。
  • 特点:手动聚合通常需要网络管理员明确地指定哪些路由要被聚合,并通过 BGP 视图内的配置命令进行操作。
  • 场景:适用于需要特定控制的情况,例如仅对特定的路由进行聚合。
b. 自动聚合
  • 定义:自动聚合是通过 summary automatic 命令生成的,BGP 会自动将相同前缀的多个路由条目合并成一个条目。
  • 特点:自动聚合不需要管理员逐条配置,BGP 会自动检测可以聚合的路由并进行合并。
  • 场景:适用于较大规模的网络环境,希望自动合并具有相同前缀的路由条目,从而减少路由表的数量。

2. 注入(Injection)

注入指的是将其他路由协议的路由条目引入到 BGP 路由表中,从而使得 BGP 可以使用这些路由信息。BGP 中的注入方式有两种:

a. Network 方式注入
  • 定义:Network 方式是指在 BGP 配置中直接使用 network 命令,将特定网段的路由加入 BGP。
  • 特点:这种方式要求网段已经在本地路由表中存在,BGP 只负责将这个网段的信息引入到 BGP 路由表中。
  • 场景:适用于需要手动控制哪些特定的网段被引入到 BGP 的场景。
b. Import-route 方式注入
  • 定义:Import-route 方式是通过 import-route 命令,将其他路由协议(如 OSPF、IS-IS 等)的路由条目自动引入 BGP。
  • 特点:这种方式不需要手动指定每一个网段,BGP 会自动获取其他路由协议的路由信息并引入 BGP。
  • 场景:适用于网络中已有其他路由协议的环境,需要将其他协议的路由信息批量引入 BGP。

比较总结

  • 聚合:减少路由表条目数量,提升效率。
    • 手动聚合:精确控制,适用于特定路由。
    • 自动聚合:无需手动配置,适合大规模网络。
  • 注入:将其他路由引入 BGP。
    • Network 方式:手动选择特定网段,灵活性高。
    • Import-route 方式:自动批量引入其他协议的路由条目,简化配置。
      在这里插入图片描述

BGP EVPN基础

SDN(Software-Defined Networking)是一种网络架构,它通过将网络控制层与数据转发层分离,使得网络管理更加灵活和可编程。SDN允许网络管理员通过软件应用程序动态配置网络,以满足不断变化的需求。

SDN示例:在一家大型企业中,IT团队可以通过SDN控制器快速调整网络配置,以适应新的应用需求,例如在高峰期增加带宽,而无需物理更改网络设备。

EVPN示例:在一个多租户数据中心中,不同的公司可以在相同的物理基础设施上运行各自的虚拟网络,而EVPN确保了它们之间的流量隔离和安全性,使得各个租户能够独立运作而不互相干扰。

MP-BGP

在这里插入图片描述
在BGP-4(Border Gateway Protocol version 4)中,确实有几个与IPv4相关的属性和信息,它们在BGP协议中用于传递路由信息。以下是对您提到的三个信息的解释:

  1. NEXT_HOP属性

    • NEXT_HOP是BGP中的一个路径属性,它指定了到达目的地的下一跳(Next Hop)路由器的IP地址。在IPv4环境中,这个属性通常包含一个IPv4地址,指示数据包应该发送到的下一个路由器。
    • 在BGP路由更新消息中,NEXT_HOP属性告诉接收方,当它们需要将数据包转发到特定的目的地时,应该将数据包发送到哪个IP地址。
  2. AGGREGATOR属性

    • AGGREGATOR属性用于标识汇总(aggregated)路由的来源。当一个BGP路由器汇总多个具体的路由前缀到一个更大的前缀时,它会在通告的路由中包含这个属性。
    • 这个属性包含汇总该路由的BGP路由器的自治系统号(AS Number)和路由器ID。这样,接收方可以知道这条路由是由哪个路由器汇总的,以及它来自哪个自治系统。
  3. IPv4 NLRI(Network Layer Reachability Information)

    • NLRI是BGP路由更新消息中的一部分,它包含了可达网络的信息。在IPv4环境中,NLRI包含了IPv4地址前缀和长度,用于描述可以到达的网络。
    • 例如,一个NLRI可以是“10.0.0.0/8”,表示从10.0.0.0到10.255.255.255的所有地址都是可达的。

这三个信息是BGP-4中用于在自治系统之间交换IPv4路由信息的关键组成部分。它们使得BGP能够高效地传播和汇总路由信息,同时确保网络的可达性和正确性。在BGP-4中,这些属性和信息是标准化的,以确保不同厂商的BGP实现能够互操作。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


EVPN

EVPN 简介

在这里插入图片描述

EVPN可以在MPLS网络上实现,也可以与其他网络技术结合使用
在MPLS环境中,EVPN利用标签交换的高效性,将以太网帧封装在MPLS标签中进行传输,从而提升了网络的转发效率和流量管理能力。

在这里插入图片描述
在这里插入图片描述
PE (Provider Edge):提供商边缘路由器
CE (Customer Edge):客户边缘设备

EVPN 常见路由

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
RFC代表“Request for Comments”(征求修改意见)。RFC是由互联网工程任务组(IETF)发布的一系列文档,它们详细描述了互联网标准、协议、流程和最佳实践。

EVPN 典型应用场景

在这里插入图片描述
这张图展示了在园区网(类似公司内部网络)中应用EVPN技术来构建一个虚拟化的网络架构,让园区网具备类似云数据中心的灵活性和管理能力。下面是逐步的解释:

  1. 园区网虚拟化

    • 园区网是指企业内部网络,连接了企业的各种设备(如电脑、服务器、无线接入点等)。
    • 这里提到的“园区网虚拟化”类似于云数据中心中的虚拟网络解决方案,通过将底层网络和逻辑网络分离,构建更加灵活的网络结构。
  2. EVPN和NVO(Network Virtualization Overlay)

    • EVPN(Ethernet VPN)是一种虚拟网络技术,它提供了虚拟化网络的管理和控制能力,类似于云数据中心中的网络虚拟化。
    • NVO方案(基于RFC 8365标准)是一种覆盖网络的虚拟化方案,通过构建一个“Overlay”网络层,实现在底层物理网络之上运行的虚拟网络。这就像在一个实际存在的网络上面,搭建出多个独立的虚拟网络。
  3. VXLAN封装

    • VXLAN是一种封装协议,可以将不同的虚拟网络“包裹”起来,在底层的网络设备中传输。这使得每个虚拟网络之间的数据不会混淆。
    • 图中显示的“虚拟网络1”、“虚拟网络2”等都是通过VXLAN封装的,它们在底层网络上分开传输,互相隔离,但都可以共用底层网络。
  4. Overlay和Underlay

    • Overlay(虚拟网络层):是在物理网络上构建的逻辑网络层,便于灵活配置和调整虚拟网络。
    • Underlay(底层物理网络层):实际存在的物理网络,负责数据的真实传输。这里的“LSW”就是底层交换机的表示。
  5. 整体效果

    • 通过EVPN和VXLAN封装,园区网可以实现多租户隔离和虚拟化,类似于数据中心的云网络架构。
    • 这种方式使得不同虚拟网络可以独立管理和配置,构建更加灵活的园区网络,同时支持跨物理设备传输数据。

简单来说,这种架构让园区网具备云数据中心的灵活性,可以轻松创建多个隔离的虚拟网络,并通过底层网络高效传输数据。

EVPN,VXLAN,Overlay三者的关系:

  • VXLAN 提供了 Overlay 网络的数据封装方式,把不同虚拟网络的流量“包裹”起来,便于在底层网络中传输。
  • EVPN 提供了 Overlay 网络的控制平面,通过BGP分发网络中的MAC/IP信息,使得Overlay网络具有动态路由和故障恢复能力。
  • Overlay 是三者构建的最终结果,它是一种运行在物理网络之上的逻辑网络架构,为用户提供了多租户、虚拟化以及高扩展性。

通过VXLAN和EVPN的结合,Overlay网络能够在复杂的数据中心环境中实现灵活管理和高效的资源隔离。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/884396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue3图片懒加载(vue3-lazyload)

Vue2图片懒加载 参考文档:vue3-lazyload 效果如下图:vue3-lazyload0.3.8 在线预览 安装 npm install vue3-lazyload # or yarn add vue3-lazyload # or pnpm add vue3-lazyload引入并注册 import { createApp } from vue import VueLazyLoad from v…

Hudi Upsert原理

1. 前言 如果要深入了解Apache Hudi技术的应用或是性能调优,那么明白源码中的原理对我们会有很大的帮助。Upsert是Apache Hudi的核心功能之一,主要完成增量数据在HDFS/对象存储上的修改,并可以支持事务。而在Hive中修改数据需要重新分区或重…

ctfshow web入门文件上传总结

1.web151 前端验证 前端验证&#xff0c;修改html代码&#xff0c;上传还有一句话木马的php文件,之后用蚁剑连接即可找到flag <?php eval($_POST[1])?>2.web152 后端验证&#xff0c;修改mime类型(content-type) burp抓包&#xff0c;修改content-type为image/png …

基于Spring Boot+Vue的助农销售平台(协同过滤算法、限流算法、支付宝沙盒支付、实时聊天、图形化分析)

&#x1f388;系统亮点&#xff1a;协同过滤算法、节流算法、支付宝沙盒支付、图形化分析、实时聊天&#xff1b; 一.系统开发工具与环境搭建 1.系统设计开发工具 后端使用Java编程语言的Spring boot框架 项目架构&#xff1a;B/S架构 运行环境&#xff1a;win10/win11、jdk1…

手把手写Linux第一个小程序 - 进度条(5种版本)

本专栏内容为&#xff1a;Linux学习专栏&#xff0c;分为系统和网络两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握Linux。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;linux &#x1f69a;代码仓库&#xff1a;小小unicorn的代…

dhcp池没有空闲ip导致手机无法获得ip

得到用户反馈&#xff0c;一个高速项目部的wifi无法接入&#xff0c;让排查原因。 反馈有的手机能接入&#xff0c;有的接入不了。查看ac界面发现有个终端获得的ip是169.254.xxx.xxx。 ip地址是169.254.96.17显然是手机打开wlan开关后&#xff0c;鉴权通过后dhcp过程&#xff0…

《高频电子线路》—— 振荡器稳定性问题

文章内容来源于【中国大学MOOC 华中科技大学通信&#xff08;高频&#xff09;电子线路精品公开课】&#xff0c;此篇文章仅作为笔记分享。 振荡器稳定性问题 频率准确度 & 频率稳定度 希望频率稳定度越小越好。 频率稳定度分类 影响振荡频率稳定度的参数 振荡频率是和电…

HTMLCSS: 打造跳一跳加载器,点燃用户等待热情

效果演示 这段 HTML 代码创建了一个简单的网页&#xff0c;其中包含一个动画效果&#xff0c;用来模拟一个加载器loading HTML <div class"loader"></div>div创建了一个动画效果的加载器 CSS html, body {width: 100vw;height: 100vh;display: flex…

Nginx 的 Http 模块介绍(上)

Nginx 的 Http 模块介绍&#xff08;上&#xff09; 1. http 请求 11 个处理阶段介绍 Nginx 将一个 Http 请求分成多个阶段&#xff0c;以模块为单位进行处理。其将 Http请求的处理过程分成了 11 个阶段&#xff0c;各个阶段可以包含任意多个 Http 的模块并以流水线的方式处理…

网络:ARP的具体过程和ARP欺骗

个人主页 &#xff1a; 个人主页 个人专栏 &#xff1a; 《数据结构》 《C语言》《C》《Linux》《网络》 《redis学习笔记》 文章目录 前言ARP具体过程ARP欺骗原理总结 前言 本文仅作为ARP具体过程和ARP欺骗的知识总结 硬件类型 &#xff1a;指定发送和接受ARP包的硬件类型&am…

[0260].第25节:锁的不同角度分类

MySQL学习大纲 我的数据库学习大纲 从不同维度对锁的分类&#xff1a; 1.对数据操作的类型划分:读锁和写锁 1.1.读锁 与 写锁概述&#xff1a; 1.对于数据库中并发事务的读-读情况并不会引起什么问题。对于写-写、读-写或写-读这些情况可能会引起一些问题&#xff0c;需要使用…

数据结构之链式结构二叉树的实现(初级版)

本文内容将主会多次用到函数递归知识&#xff01;&#xff01;&#xff01; 本节内容需要借助画图才能更好理解&#xff01;&#xff01;&#xff01; 和往常一样&#xff0c;还是创建三个文件 这是tree.h #pragma once #include<stdio.h> #include<stdlib.h> …

Data+AI━━人群圈选,你被圈中了吗?

DataAI━━人群圈选&#xff0c;你被圈中了吗&#xff1f; 前言我们是否正在失去选择的自主权&#xff1f;AI人群圈选流程AI人群圈选技术发展趋势 前言 智能时代的清晨&#xff0c;打开手机&#xff0c;各类APP精准推送的信息扑面而来。菜市场买过一次三文鱼&#xff0c;生鲜A…

手撕快排的三种方法:让面试官对你刮目相看

快来参与讨论&#x1f4ac;&#xff0c;点赞&#x1f44d;、收藏⭐、分享&#x1f4e4;&#xff0c;共创活力社区。 目录 &#x1f4af;前言 &#x1f4af;快速排序基础概念 &#x1f4af;Hoare 版本 1.算法思路 2.代码示例 3.有关该代码的问题 3.1&#x1f62e;为什么…

51单片机教程(五)- LED灯闪烁

1 项目分析 让输入/输出口的P1.0或P1.0~P1.7连接的LED灯闪烁。 2 技术准备 1、C语言知识点 1 运算符 1 算术运算符 #include <stdio.h>int main(){// 算术运算符int a 13;int b 6;printf("%d\n", ab); printf("%d\n", a-b); printf("%…

ceph补充介绍

SDS-ceph ceph介绍 crushmap 1、crush算法通过计算数据存储位置来确定如何存储和检索&#xff0c;授权客户端直接连接osd 2、对象通过算法被切分成数据片&#xff0c;分布在不同的osd上 3、提供很多种的bucket&#xff0c;最小的节点是osd # 结构 osd (or device) host #主…

集成ruoyi-it管理系统,遇到代码Bug

前言&#xff1a;这次ruoyi框架开发it管理系统&#xff0c;出现很多问题&#xff0c;也有学到很多东西&#xff0c;出现几个问题&#xff0c;希望下次项目不会出现或者少出现问题&#xff1b;其中还是有很多基础知识有些忘记&#xff0c;得多多复习 1&#xff1a;当写的代码没…

大模型面试-Layer normalization篇

1. Layer Norm 的计算公式写一下? 2. RMS Norm 的计算公式写一下? 3. RMS Norm 相比于 Layer Norm 有什么特点? 4. Deep Norm 思路? 5. 写一下 Deep Norm 代码实现? 6.Deep Norm 有什么优点? 7.LN 在 LLMs 中的不同位置 有什么区别么?如果有,能介绍一下区别么? 8. LLM…

【Linux第七课--基础IO】内存级文件、重定向、缓冲区、文件系统、动态库静态库

目录 引入内存级文件重新使用C文件接口 -- 对比重定向写文件读文件文件流 认识文件操作的系统接口open参数 -- flagflag的内容宏的传参方式 open关闭文件写文件读文件结论 引入文件描述符fd、对文件的理解理解一切皆文件方法集文件fd的分配规则 重定向代码的重定向输入重定向输…

手写实现call,apply,和bind方法

手写实现call&#xff0c;apply和bind方法 call&#xff0c;apply和bind方法均是改变this指向的硬绑定方法&#xff0c;要想手写实现此三方法&#xff0c;都要用到一个知识点&#xff0c;即对象调用函数时&#xff0c;this会指向这个对象&#xff08;谁调用this就指向谁&#…