速码!!BGP最全学习笔记:BGP概述

news2024/12/24 3:20:27

一、BGP概述

  BGP是一种实现自治系统AS之间的路由可达,并选择最佳路由的矢量性协议。早期发布的三个版本分别是BGP-1(RFC1105)、BGP-2(RFC1163)和BGP-3(RFC1267),1994年开始使用BGP-4(RFC1771),2006年之后单播IPv4网络使用的版本是BGP-4(RFC4271),其他网络(如IPv6等)使用的版本是MP-BGP(RFC4760)。

想要华为数通配套实验拓扑和配置笔记的朋友们点赞+关注,评论区留下邮箱发给你!

二、BGP的特点

BGP使用TCP作为其传输层协议(端口号为179),使用触发式路由更新,而不是周期性路由更新。

1.BGP能够承载大批量的路由信息,能够支撑大规模网络。

2.BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能指导对等体按策略发布路由。

3.BGP能够支撑MPLS/VPN的应用,传递客户VPN路由。

4.BGP提供了路由聚合和路由衰减功能用于防止路由振荡,通过这两项功能有效地提高了网络稳定性。

特征:

1.BGP使用TCP为传输层协议,TCP端口号179。路由器之间的BGP会话基于TCP连接而建立。

2.运行BGP的路由器被称为BGP发言者(BGP Speaker),或BGP路由器。

3.两个建立BGP会话的路由器互为对等体(Peer),BGP对等体之间交换BGP路由表。

4.BGP路由器只发送增量的BGP路由更新,或进行触发式更新(不会周期性更新)。

5.BGP能够承载大批量的路由前缀,可在大规模网络中应用。

6.BGP通常被称为路径矢量路由协议(Path-Vector Routing Protocol)。每条BGP路由都携带多种路径属性(Path attribute),BGP可以通过这些路径属性控制路径选择,而不像IS-IS、OSPF只能通过Cost控制路径选择,因此在路径选择上,BGP具有丰富的可操作性,可以在不同场景下选择最合适的路径控制方式。

三、BGP对等体关系建立

先启动BGP的一端先发起TCP连接,如左图所示,R1先启动BGP,R1使用随机端口号向R2的179端口发起TCP连接,完成TCP连接的建立。

三次握手建立完成之后,R1、R2之间相互发送Open报文,携带参数用于对等体建立,参数协商正常之后双方相互发送Keepalive报文,收到对端发送的Keepalive报文之后对等体建立成功,同时双方定期发送Keepalive报文用于保持连接。

1.其中Open报文中携带:

My Autonomous System:自身AS号

Hold Time:用于协商后续Keepalive报文发送时间

BGP Identifier:自身Router ID

BGP对等体关系建立之后,BGP路由器发送BGP Update(更新)报文通告路由到对等体。

报文:

状态机:

想要华为数通配套实验拓扑和配置笔记的朋友们点赞+关注,评论区留下邮箱发给你!

四、BGP路由表

BGP路由表的生成:

五、通告原则

BGP通过network、import-route、aggregate聚合方式生成BGP路由后,通过Update报文将BGP路由传递给对等体。

BGP通告遵循以下原则:

1.只发布最优路由。

2.从EBGP对等体获取的路由,会发布给所有对等体。

3.IBGP水平分割:从IBGP对等体获取的路由,不会发送给IBGP对等体。

4.BGP同步规则指的是:当一台路由器从自己的IBGP对等体学习到一条BGP路由时(这类路由被称为IBGP路由),它将不能使用该条路由或把这条路由通告给自己的EBGP对等体,除非它又从IGP协议(例如OSPF等,此处也包含静态路由)学习到这条路由,也就是要求IBGP路由与IGP路由同步。同步规则主要用于规避BGP路由黑洞问题。

想要华为数通配套实验拓扑和配置笔记的朋友们点赞+关注,评论区留下邮箱发给你!

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

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

相关文章

【一人之下】杀了七个男童,只为修炼邪术!肖哥这一战可以封神!

Hello,小伙伴们,我是小郑继续为大家深度解析一人之下国漫。 在一人之下中,老肖是临时工里战力数一数二的存在,也是十佬之一解空大师的弟弟,平常看起来像一个热心肠的大哥,但却嗜好杀人,常挂在嘴边的一句话就…

基于微信小程序食谱大全系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言用户微信小程序端的主要功能有:管理员的主要功能有:具体实现截图详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考论文参考源码获取 前言 💗博主介绍:✌…

解决typescript报错=》不能将类型“undefined”分配给类型“boolean”

报错如下: 然后看看isSearch的类型定义: isSearch的定义是可选属性,但是TypeScript 中将一个参数标记为可选时,它的默认值将是 undefined。可选参数表示你可以选择性地提供该参数,如果不提供,那么它将默认为…

python随手小练1

题目: 使用python做一个简单的英雄联盟商城登录界面 具体操作: print("英雄联盟商城登录界面") print("~ * "*15 "~") #找其规律 a "1、用户登录" b "2、新用户注册" c "3、退出系统&quo…

实验室仪器应该如何清洗?

梵英超声(fanyingsonic)实验室超声波清洗机 实验室中常见的玻璃器皿如量杯、试管、滴定管、移液管、量瓶等等,是化学实验操作的核心组成部分。但这些玻璃器皿在使用过程中很容易沾上各种污渍,如油渍、血渍、水垢、锈渍等等,如果用完之后没有及…

xx-job凌晨一点清除oss指定文件夹以及指定保留时间的文件

ps:文件下面还有文件夹,这代码不能完全保证是否遍历到所有该文件夹以及子文件夹的文件,因为不可能一点点上到服务器去数,只是代码上做到应该不会出现重复的文件夹以及出现死循环 public static void main(String[] args) {long st…

在Idea中调试本地Docker

报错: Error running myApp: Unable to open debugger port (localhost:5005): java.net.SocketException "Connection reset" 原因: Docker配置里边没有配置环境变量JAVA_TOOL_OPTIONS. 解决: 在Docker下加入运行时的环境变量JAVA…

解决0-1背包问题(方案一):二维dp数组

>>确定dp数组以及下标的含义 dp[i][j]表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少 (1)不放物品i 例如:当背包的容量是1kg,此时物品1和物品2都是无法放进去的。而物品0…

【前端】常用属性及实例

1. 盒子水平垂直居中 1&#xff09;flex布局实现水平垂直居中 <style>.box {background: yellow;width: 200px;height: 200px;/* 设置flex布局 */display: flex;/* 水平居中 */justify-content: center;/* 垂直居中 */align-items: center;}.col {margin: 1px;backgroun…

使用 queueMicrotask 创建微任务!

之前我们想尽一切办法来创建一个自定义的微任务&#xff0c;如 Promise.then、MutationObserver&#xff08;浏览器环境中的 API&#xff0c;用于监视 DOM 变动&#xff09;、async/await、process.nextTick&#xff08;仅Node.js支持&#xff0c;本质来说它不是事件循环的一部…

8+单基因+细胞凋亡+WGCNA+单细胞+实验验证

今天给同学们分享一篇单基因细胞凋亡WGCNA实验验证的生信文章“RASGRP2 is a potential immune-related biomarker and regulates mitochondrial-dependent apoptosis in lung adenocarcinoma”&#xff0c;这篇文章于2023年2月3日发表在Front Immunol期刊上&#xff0c;影响因…

JDK21新特性

JDK 21 于 2023 年 9 月 19 日正式发布。Oracle 提供GPL 下的生产就绪二进制文件&#xff1b;其他供应商的二进制文件也将很快推出。 Spring Boot 3.x 版本最低支持的 JDK 版本为 JDK 17&#xff0c;也就是说如果你还想用 JDK8的话&#xff0c;那能用的最高 Spring Boot 版本为…

按文件名称轻松管理文件!让文件管理更加高效!

文件管理是日常工作和生活中必不可少的一环&#xff0c;然而&#xff0c;面对众多的文件&#xff0c;如何快速找到所需文件&#xff0c;是一个具有挑战性的任务。现在&#xff0c;我们为您提供一种智能归类的解决方案&#xff0c;让您能够按文件名称轻松管理文件&#xff0c;让…

基于springboot+vue的高校专业实习管理系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

如何利用Arcgis进行地统计学分析(二):探索性数据分析

地统计学的相关介绍及概念参考上篇博客&#xff1a; 如何利用Arcgis进行地统计学分析&#xff08;一&#xff09;&#xff1a;地统计学分析概念及其分析流程_小咖~的博客-CSDN博客 探索性数据分析是为了让用户更深入地认识研究对象&#xff0c;从而对与其数据相关的问题做出更…

java:算法题(持续更新)

第一题&#xff1a;特征值计算 案例&#xff1a;定义一个int型的一维数组&#xff0c;包含10个元素&#xff0c;分别赋一些随机整数&#xff0c;然后求出所有元素的最大值&#xff0c;最小值&#xff0c;总和&#xff0c;平均值&#xff0c;并输出出来。要求&#xff1a;所有随…

【刷题篇】回溯算法(深度优先搜索(一))

文章目录 无重复字符串的排列组合员工的重要性图像渲染被围绕的区域 无重复字符串的排列组合 无重复字符串的排列组合。编写一种方法&#xff0c;计算某字符串的所有排列组合&#xff0c;字符串每个字符均不相同。 class Solution { public:void DFS(string &s,vector<s…

手撸列表数据内嵌动态th甘特图

需求如图&#xff1a;日期为后端返回的七天日期&#xff0c;这七天组成由甘特图内嵌展示。 解决思路&#xff1a;这个vue项目中el-table自带样式过多&#xff0c;且不方便动态渲染数据&#xff0c;所以用div模拟了&#xff0c;这里甘特图精度为半天所以用v-if判断了&#xff0…

echarts三柱图叠加三柱图解法

需求如图所示。 解决思路1&#xff1a;实际展示柱体魏三叠加柱的和&#xff0c;那么把每个和计算出来作为一个柱的数组&#xff08;此柱实际展示&#xff09;&#xff0c;为了tootip方便自定义取数据且不用每个都查询原始数据&#xff0c;做叠加柱为一般、严重、危急&#xff…

FastChat 大模型部署推理;Baichuan2-13B-Chat测试、chatglm2-6b测试

参考&#xff1a; https://github.com/lm-sys/FastChat https://blog.csdn.net/qq128252/article/details/132759107 ##安装 pip3 install "fschat[model_worker,webui]"1、chatglm2-6b测试 python3 -m fastchat.serve.cli --model-path ./chatglm2-6b --num-gpus …