BGP-LS 简介

2023-05-16

BGP-LS(BGP Link-state)汇总IGP协议收集的拓扑信息上送给上层控制器。

产生原因

BGP-LS是收集网络拓扑的一种新的方式。

BGP-LS特性产生前,路由器使用IGP(OSPF或IS-IS)协议收集网络的拓扑信息,IGP协议将各个域的拓扑信息单独上送给上层控制器,在这种拓扑收集方式下,存在以下几个问题:

  • 对上层控制器的计算能力要求较高,且要求控制器也支持IGP协议及其算法;
  • 当涉及到跨IGP域拓扑信息收集时,上层控制器无法看到完整的拓扑信息,无法计算端到端的最优路径;
  • 不同的路由协议分别上送拓扑信息给上层控制器,控制器对拓扑信息的分析处理过程比较复杂。

BGP-LS特性产生后,IGP协议发现的拓扑信息由BGP协议汇总后上送给上层控制器,利用BGP协议强大的选路和算路能力,可产生以下几点优势:

  • 降低对上层控制器计算能力的要求,且不再对控制器的IGP能力有要求;
  • BGP协议将各个进程或各个AS的拓扑信息做汇总,直接将完整的拓扑信息上送给控制器,有利于路径选择和计算;
  • 网络中所有拓扑信息均通过BGP协议上送控制器,使拓扑上送协议归一化。

相关概念

BGP-LS:网络拓扑收集的一种方式,可以使拓扑收集更加简单高效的进行。

BGP-LS路由:携带网络拓扑信息的介质,一共有三种BGP-LS路由,分别用来携带节点、链路和路由前缀信息。三种路由相互配合,共同完成拓扑信息的传输。

BGP-LS路由格式

节点路由

格式示例:[NODE][ISIS-LEVEL-1][IDENTIFIER0][LOCAL[as100][bgp-ls-identifier11.1.1.2][ospf-area-id0.0.0.0][igp-router-id0000.0000.0001.00]]

功能:记录拓扑的节点信息。

路由中每个项目的具体含义如表1所示。

表1 节点路由格式介绍

项目

含义

NODE

标识此BGP-LS路由是节点路由。

ISIS-LEVEL-1

收集拓扑的协议,此处为IS-IS。

IDENTIFIER0

收集拓扑的协议中BGP-LS的标识。

LOCAL

标识此段信息为本地节点的信息。

as

BGP-LS的区域AS号。

bgp-ls-identifier

BGP-LS的区域标识符。

ospf-area-id

OSPF区域的标识。

igp-router-id

IGP协议的Router ID,由收集拓扑的IGP协议产生。此处从IS-IS进程的网络实体名称中获取。

链路路由

格式示例:[LINK][ISIS-LEVEL-1][IDENTIFIER0][LOCAL[as255.255][bgp-ls-identifier192.168.102.4][ospf-area-id0.0.0.0][igp-router-id0000.0000.0002.01]][REMOTE[as255.255][bgp-ls-identifier192.168.102.4][ospf-area-id0.0.0.0][igp-router-id0000.0000.0002.00]][LINK[if-address0.0.0.0][peer-address0.0.0.0][if-address::][peer-address::][mt-id0]]

功能:记录两台设备之间的链路信息。

路由中每个项目的具体含义如表2所示。

表2 链路路由格式介绍

项目

含义

LINK

标识此BGP-LS路由是链路路由。

ISIS-LEVEL-1

收集拓扑的协议,此处为IS-IS。

IDENTIFIER0

收集拓扑的协议中BGP-LS的标识。

LOCAL

标识此段信息为本地节点的信息。

as

BGP-LS的区域AS号。

bgp-ls-identifier

BGP-LS的区域标识符。

ospf-area-id

OSPF区域的标识。

igp-router-id

IGP协议的Router ID,由收集拓扑的IGP协议产生。此处从IS-IS进程的网络实体名称中获取。

REMOTE

标识此段信息为对端节点的信息。

if-address

接口地址。

peer-address

对端相连的接口地址。

mt-id

在IGP协议中用于标识接口所绑定的拓扑。

地址前缀路由

格式示例:[IPV4-PREFIX][ISIS-LEVEL-1][IDENTIFIER0][LOCAL[as100][bgp-ls-identifier192.168.102.3][ospf-area-id0.0.0.0][igp-router-id0000.0000.0001.00]][PREFIX[mt-id0][ospf-route-type0][prefix192.168.102.0/24]]

功能:记录节点可达的网段信息。

路由中每个项目的具体含义如表3所示。

表3 地址前缀路由格式介绍

项目

含义

IPV4-PREFIX

IPv4地址前缀路由,地址前缀路由分为IPv4地址前缀路由和IPv6地址前缀路由。路由器不能本地产生IPv6地址前缀路由,但可以处理来自其他厂商的IPv6地址前缀路由。

ISIS-LEVEL-1

收集拓扑的协议。

IDENTIFIER0

收集拓扑的协议中BGP-LS的标识。

LOCAL

标识此段信息为本地节点的信息。

as

BGP-LS的区域AS号。

bgp-ls-identifier

BGP-LS的区域标识符。

ospf-area-id

OSPF区域的标识。

igp-router-id

IGP协议的Router ID,由收集拓扑的IGP协议产生。此处从IS-IS进程的网络实体名称中获取。

PREFIX

标识一条IGP路由。

mt-id

在IGP协议中用于标识接口所绑定的拓扑。

ospf-route-type

OSPF的路由类型:
  • 1:Intra-Area;
  • 2:Inter-Area;
  • 3:External 1;
  • 4:External 2;
  • 5:NSSA 1;
  • 6:NSSA 2。
prefix

IGP路由的前缀地址。

典型组网

IGP区域内拓扑信息收集

如图1所示,DeviceA、DeviceB、DeviceC和DeviceD之间通过IS-IS协议达到IP网络互连的目的。DeviceA、DeviceB、DeviceC和DeviceD同属于区域10,都是Level-2设备。在这种情况下,只需要DeviceA、DeviceB、DeviceC和DeviceD中的任何一台设备部署BGP-LS特性并与控制器建立BGP-LS邻居关系便可以达到整个网络拓扑收集和上送的目的。但为了拓扑上送的可靠性,往往选择两台或两台以上设备都部署BGP-LS特性并与控制器建立BGP-LS邻居关系,由于网络中的设备收集的拓扑信息相同,所以它们之间可以互相作为备份,当有设备出现故障时依然保证拓扑信息的及时上送。

图1 IGP区域内拓扑信息收集典型组网

如图2所示,DeviceA、DeviceB、DeviceC和DeviceD之间通过IS-IS协议达到IP网络互连的目的。DeviceA、DeviceB和DeviceC属于区域10,DeviceD属于区域20。DeviceA和DeviceB是Level-1设备,DeviceC是Level-1-2设备,DeviceD是Level-2设备。由于Area10和Area20中的设备使用IGP协议收集到的拓扑信息一致,所以也只需要DeviceA、DeviceB、DeviceC和DeviceD中的任何一台设备部署BGP-LS特性并与控制器建立BGP-LS邻居关系便可以达到整个网络拓扑收集和上送的目的。但为了拓扑上送的可靠性,往往选择两台或两台以上设备都部署BGP-LS特性并与控制器建立BGP-LS邻居关系,由于网络中的设备收集的拓扑信息相同,所以它们之间可以互相作为备份,当有设备出现故障时依然保证拓扑信息的及时上送。

图2 IGP区域间拓扑信息收集典型组网

如图3所示,DeviceA和DeviceB属于同一自治系统,两者之间建立IS-IS邻居。DeviceA为AS内部的一台非BGP设备。DeviceB和DeviceC之间建立EBGP连接。在这种情况下,由于BGP协议(未使能BGP-LS)不能传递拓扑信息,所以AS100内的设备和AS200内的设备上收集的拓扑信息不同(都只能收集各自AS域的拓扑信息),所以此时要求至少AS100和AS200两个自制系统中都至少有一台设备使能BGP-LS特性并都与控制器建立BGP-LS邻居关系。每个自治系统中有两台或两台以上设备与控制器相连则可以保证拓扑收集与上送的可靠性。

图3 BGP自治域间拓扑信息收集典型组网1

若网络中存在两台控制器,分别与两个自治中的设备相连,如图4所示,此时若想两台控制器上都能收集到整个网络的拓扑信息,则需要两台控制器之间建立BGP-LS邻居关系或与控制器相连的DeviceB和DeviceC之间建立BGP-LS邻居关系。

图4 BGP自治域间拓扑信息收集典型组网2

说明:

为了减少与控制器连接的数量,可以选择一台(或几台)设备作为BGP-LS反射器,需要与控制器建立BGP-LS邻居的设备都与反射器建立邻居关系。

适用场景

路由器作为转发器,需要收集拓扑信息上送给控制器来实现网络拓扑监控和流量调优的场景。

使用价值

降低对控制器计算能力的要求。

控制器可以看到完整的拓扑信息。

拓扑上送协议归一化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

BGP-LS 简介 的相关文章

  • BGP路由技术详解(一)

    BGP路由技术详解 xff08 一 xff09 前言一 BGP路由协议概述1 BGP定义2 BGP的特点3 BGP分类4 BGP的路径矢量特征5 BGP的路由器6 BGP Peer 二 自治系统AS的概念1 定义2 AS号3 传输AS中的路
  • 用quagga建立BGP会话

    本文将讲述使用quagga建立一个BGP会话 本次测试拓扑 假设运营商A与运营商B建立BGP对等互联来交换路由 下面是她们的AS号和IP地址范围 xff1a 运营商 A AS38372 xff0c IP段 172 16 0 0 16 xff
  • 什么是BGP,BGP的优点有哪些?-Vecloud

    什么是BGP 边界网关协议 BGP 是运行于 TCP 上的一种自治系统 AS 的路由协议 xff0c 是唯一能够妥善处理不相关路由域间的多路连接的协议 通俗点讲 中国电信 中国联通 中国移动和一些拥有AS自治域的大型民营IDC运营商就可以通
  • BGP的同步

    实验原理 xff1a BGP 同步规则 xff1a BGP 路由器不应使用通过 IBGP 获悉的路由或将其通告给外部邻居 xff0c 除非该路由是本地的或通过 IGP 获悉的 如果启用了同步 xff0c 则路由器通过 IBGP 获悉路由后
  • dis bgp peer 查看状态的 connect_BGP介绍(一)

    BGP简介 介绍BGP的定义 目的和受益 定义 边界网关协议BGP xff08 Border Gateway Protocol xff09 是一种实现自治系统AS xff08 Autonomous System xff09 之间的路由可达
  • bgp状态idle什么原因_BGP报文和BGP邻居状态

    BGP 有 5 种 message 1 Open code 1 xff1a 用于建立连接 xff0c 包含版本号 如 BGP3 BGP4 Hold Time xff1d 90s RFC1771 规定的 是一个协商的过程 xff0c 以较小的
  • bgp状态idle什么原因_BGP详解

    为什么使用BGP BGP是可靠的 xff0c 基于TCP Port Numer 179 进行建立和维护连接 xff0c 并且具有并使用TCP的滑动窗口的机制来更新路由表 xff0c 可以支持一次性的大量路由条目的更新 BGP是增量更新 xf
  • 2021-06-25 SONiC 系统BGP配置命令

    2021 06 25 SONiC 系统BGP配置命令 SONiC系统BGP配置 SONiC系统所默认包含的BGP模块在201811版的SONiC之前是开源的Quagga软件 xff0c 之后改成了更流行的FRR FRR中的Show命令是以
  • 什么是BGP

    文章目录 1 基本概念什么是BGPBGP路由协议的特点IBGP水平分割规则BGP的路由器号 Router ID BGP工作原理BGP分类 1 基本概念 自治系统 xff0c 指的是在同一个组织管理下 使用相同策略的设备的集合 xff1b 不
  • BGP LinkState

    BGP LinkState xff1a 描述链路状态的路由协议 xff0c 一共由3部分组成 xff0c Node 43 Link 43 Prefix 通过查看prefic的detail信息查看sid xff0c 每个prefix都有一个s
  • BGP路由

    内容概要 1 BGP的基本概念2 BGP的特点3 BGP的分类4 BGP的路由器5 BGP的工作原理6 BGP的状态机7 BGP对等体之间的交互原则8 建立对等体注意点9 命令 实验 1 BGP的基本概念 自治系统AS xff1a As是指
  • BGP→→

    BGP 4 提供了一套新的机制以支持无类域间路由 这些机制包括支持网络前缀的通告 取消 BGP 网络中 类 的概念 BGP 4 也引入机制支持路由聚合 xff0c 包括 AS 路径的集合 特点 BGP属于外部或域间路由协议 BGP的主要目标
  • HCIE面试题:OSPF、ISIS、BGP支持IPv6的改进

    OSPF 与OSPFv2相比 xff0c OSPFv3在工作机制上与OSPFv2基本相同 xff1b 但为了支持IPv6地址格式 xff0c OSPFv3对OSPFv2做了一些改动 OSPFv3基于OSPFv2基本原理并增强 xff0c 是
  • Segment Routing—BGP-LS

    BGP LS概况 BGP LS是学习多个IGP区域和区域拓扑的首选机制 BGP LS使用BGP xff0c 以可扩展的方式分发网络信息 重要的是 xff0c BGP LS还承载了IGP没有分发的信息 xff08 例如BGP对等体互联链路 x
  • BGP邻居状态机

    idle connect 已经建立完成了TCP三次握手 open sent open confirm establish connect 和 active 都是 TCP 连接阶段 active 是发起方 connect 是应答方 Idle
  • bgp LP本地优先属性配置与详解

    实验目的 xff1a 1 理解掌握BGP的本地优选属性概念和配置方法 2 本地优选的属性默认值为100 xff0c 较高值的路径会被优先选择 3 本地优先属性 xff0c 决定离开本自治系统最佳的路径 实验拓扑 xff1a 步骤1 接口IP
  • 计算机网络基础(十二)---网络层-外部网关路由协议

    文章内容概览 BGP协议 BGP Border Gateway Protocol 边际网关协议 BGP协议是运行在自治系统 AS 之间的一种协议 在一个网络管理机构下边的网络 都可以看做是一个AS 比如 公司网络 学校网络 为什么在AS之间
  • 【实验分享】CCIE—BGP反射器实验

    实验目的 l掌握BGP反射器的运行原理 l理解反射器的用途以及好处 实验说明 l通过此实验练习 可以灵活的使用BGP反射器 实验环境 l三台支持SPSERVICES的IOS的路由器 l直通线 实验拓扑 实验步骤 R1 config inte
  • BGP协议关键知识点

    转载以便复习查看 侵联删 原文链接 https www jannet hk zh Hant post border gateway protocol bgp conf
  • ubuntu 下实现 docker+ovs+quagga搭建网络---bgp

    注 本机上现有quagga镜像 ovs虚拟交换机 2 9 1 docker 18 09 7 实现bgp网络搭建 1 sudo ovs vsctl add br br1 增加一个ovs网桥br1 2 sudo docker images 查看

随机推荐

  • Apache Spark 3.0:全新功能知多少

    Spark3 0解决了超过3400个JIRAs xff0c 历时一年多 xff0c 是整个社区集体智慧的成果 Spark SQL和 Spark Cores是其中的核心模块 xff0c 其余模块如PySpark等模块均是建立在两者之上 Spa
  • Spark优化篇:动态内存管理

    Spark内存管理分为静态内存管理和统一内存管理 xff0c Spark1 6之前使用的是静态内存管理 xff0c Spark1 6之后的版本默认使用的是统一内存管理 动态内存机制图 xff1a 内存估算 xff1a Other Memor
  • Spark优化篇:RBO/CBO

    在Spark1 0中所有的Catalyst Optimizer都是基于规则 rule 优化的 为了产生比较好的查询规 则 xff0c 优化器需要理解数据的特性 xff0c 于是在Spark2 0中引入了基于代价的优化器 xff08 cost
  • Spark优化篇:数据倾斜解决

    数据倾斜是指我们在并行进行数据处理的时候 xff0c 由于数据散列引起Spark的单个Partition的分布不均 xff0c 导致大量的数据集中分布到一台或者几台计算节点上 xff0c 导致处理速度远低于平均计算速度 xff0c 从而拖延
  • Apache Flink 作业图 JobGraph 与执行图 ExecutionGraph

    由 Flink 程序直接映射成的数据流图 xff08 dataflow graph xff09 xff0c 也被称为逻辑流图 xff08 logical StreamGraph xff09 到具体执行环节时 xff0c Flink 需要进一
  • Apache Flink 任务 Tasks 和任务槽 Task Slots

    目录 任务槽 xff08 Task Slots xff09 任务槽数量的设置 任务对任务槽的共享 任务槽和并行度的关系 任务槽 xff08 Task Slots xff09 Flink 中每一个 worker 也就是 TaskManager
  • Flink 水位线结合窗口进行KeyBy、Reduce案例

    水位线 xff08 Watermark xff09 和窗口 xff08 Window xff09 Watermark 在事件时间语义下 xff0c 我们不依赖系统时间 xff0c 而是基于数据自带的时间戳去定义了一个时钟 xff0c 用来表
  • UML中的五种关系

    UML中的关系 xff08 Relationships xff09 主要包括5种 xff1a 关联关系 聚合关系 依赖关系 泛化关系和实现关系 关联 xff08 Association xff09 关系 关联关系是一种结构化的关系 xff0
  • 摄像头常用接口MIPI,DVP原理图接口定义

    摄像头常用接口 xff1a USB是串行通用串行总线 xff08 Universal Serial Bus xff09 的简称 xff0c 电脑摄像头接口是USB接口 xff0c MIPI MIPI是移动行业处理器接口 xff08 Mobi
  • 内核current指针

    通过current指针获取当前进程信息 current其实一个struct task struct指针 xff0c 指向当前进程 struct task struct task又是struct thread info的一个成员变量 thre
  • DMA(四) - DMA_API_DEBUG

    DMA API DEBUG 为了debug驱动程序及发现使用DMA API时的bug xff0c 检测代码可以编译到kernel中 xff0c 它们可以告诉开发 者那些违规行为 如果你的体系结构支持 xff0c 你可以选择编译选项 Enab
  • CONFIG_KALLSYMS_ALL

    内核配置 在2 6内核中 xff0c 为了更好地调试内核 xff0c 引入了kallsyms kallsyms抽取了内核用到的所有函数地址 全局的 静态的 和非栈数据变量地址 xff0c 生成一个数据块 xff0c 作为只读数据链接进ker
  • sysctl

    sysctl命令用于运行时配置内核参数 xff0c 这些参数位于 proc sys 目录 xff0c 可以使用sysctl修改系统变量 xff0c 也可以通过编辑 etc sysctl conf文件来修改系统变量 sysctl 选项 参数
  • function declaration isn't a prototype解决办法

    对以上程序 xff0c 在编译驱动的时候会出现以下warning 在网上查到解决办法是 xff1a 即使函数括号内没有任何参数 xff0c 也要加一个void类型 xff0c 来避免这种warning xff1a 解决如下 xff1a
  • i2c信号的ACK与NACK

    nbsp nbsp nbsp nbsp nbsp nbsp nbsp 我们平时在调试I2C的时候可能很少去关注NACK信号 只知道如果Master发送数据 MSB先发 LSB后发 连续发送一个字节 8个bit 之后Slave会回复一个ACK
  • ubuntu的recovery mode

    偶尔会遇到Ubuntu无法正常启动的情况 xff0c 这时候需修改某些文件让系统正常启动 xff0c 如果直接进入 recovery 模式 xff0c 默认是文件权限只读 xff0c 无法修改文件 这时我们需要进入recovery 的单用户
  • oprofile库安装与使用

    一 概述 oprofile库是linux平台上的一个功能强大的性能分析工具 xff0c 支持两种采样方式 xff1a 基于事件的采样与基于时间的采样 1 xff09 基于事件的采样 xff1a oprofile只记录特定事件 xff08 比
  • 超声波模块

    HC SR04 简介 HC SR04超声波模块可提供2cm 400cm的距离感测功能 xff0c 测量精度可以达到3mm 模块包括超声波发射器 xff0c 接收器与控制电路 基本工作原理 1 采用Trig引脚触发 xff0c 给至少10us
  • /proc/interrupts

    proc interrupts中的字段依次是逻辑中断号 中断在各CPU上发生的次数 xff0c 中断所属父设备名称 硬件中断号 中断触发方式 电平或边沿 中断名称 proc interrupts的具体实现查看代码kernel irq pro
  • BGP-LS 简介

    BGP LS xff08 BGP Link state xff09 汇总IGP协议收集的拓扑信息上送给上层控制器 产生原因 BGP LS是收集网络拓扑的一种新的方式 BGP LS特性产生前 xff0c 路由器使用IGP xff08 OSPF