BGP--边界网关协议

2023-11-02

目录

BGP和IGP区别

BGP协议关注点

BGP数据包

open包

Keeplive包

update包

notification包

Route-refresh包

BGP的状态机

IDLE ---空闲状态

Connect---连接状态

Opensent---发出本地的open报文

Openconfirm---open报文确认状态

Established---建立状态

BGP工作过程


BGP和IGP区别

BGP --- 路径矢量型协议
               ① 路径矢量---将一个AS看作一个整体
              ② 不牵扯算法,因为 BGP 仅仅是将 IGP计算出来的路由信息发送到其他AS之中,相当于                 仅将现成的路由进行传递而不需要计算
IGP  ---  距离矢量型协议
                ①距离矢量---距离是开销的体现,将跳数作为开销值的评判标准。将一个路由器看作                      是 一个单位计算距离。
               ②算法的概念,因为IGP协议本身需要通过算法来计算出未知网段的路由信息。

BGP协议关注点

1.可控性:可控即方便干涉选路。BGP舍弃开销值,给每条路由信息赋予路由属性
BGP协议需要传递大量路由信息,不存在周期更新,存在触发更新
2.可靠性:传输层协议使用TCP,TCP的179号端口工作(TCP只能实现单播)

3.AS-BY-AS:BGP当中,将一个AS看作一个整体。BGP不支持负载均衡的,BGP当中,如果到达同一个目标网段存在多条路径可以走时,BGP根据其中的路径属性来选择一条最优的加载到路由表中,而不会进行负载均衡。

BGP数据包

BGP数据包均基于TCP建立的会话通道发送
在BGP中,发现邻居关系的过程变为由人手工指定。主要因为TCP协议需要建立会话通道,之后才会基于通道发送数据包。

open

        作用:建立BGP对等体关系。即参数协商的过程。
                  BGP建立邻居关系需要通过OPEN包来携带参数,进行比对协商。
                                          协商参数
AS号
在创建邻居关系时需指定邻居所在的AS号,这个参数被携带在OPEN报文中发送给对方,对方将比对这个AS号和本地AS号是否一致,一致则可以正常建立邻居关系
认证
BGP建邻也可以做认证,做认证后将携带认证口令,认
证口令双方需要比对,一致则可以正常建立邻居关系。

RID

RID 将在 OPEN 包中携带,发送到对端之后,对端将检测这个
RID ,如果和本地的 RID 不同 ,则将可以正常的建立邻居关系

Holdtime

保活时间

默认时间为180S,在保活时间内,如果没有收到对方发送的keeplive包或者update包,则将断开BGP邻居关系。这个参数在open报文中将被携带,但是,双方不一致不会影响邻居关系的建立,但是在执行时,这个时间必须是一致的,则将采用双方中较小的保活时间来使用。
路由器是否支持刷新功能

Keeplive包

        作用:①周期保活,周期发送时间等于保活时间的1/3

                   ②确认包,在open报文协商参数时临时充当确认包的作用。

                      确认认可对方发送的open报文中的参数。

update包

        作用:携带需要传递的路由信息。

                 表示一条路由条目信息,携带的参数主要是目标网络号 子网掩码  路径属性。

                在更新包中,存在一个撤销路由条目字段,在这个字段下的路由条目将需要对端删除,                  而不再需要通过带毒传输的方式来表达。

notification包

        作用:告警机制

Route-refresh包

        作用:用于改变路由策略变更后请求对等体重新发送路由信息,前提条件:双方均支持路由刷新功能才行。

BGP的状态机

BGP协议将邻居建立过程和路由收发过程分开进行。

BGP的状态机描述:BGP对等体建立过程中状态的变化。

IDLE ---空闲状态

路由器启动BGP进程之后,先处于idle状态。手工指定邻居关系后,BGP将进入到一个检查环节,检查指定的IP地址在本地路由表中是否可达。如果可达,则将进入到下一个状态

Connect---连接状态

该状态完成TCP会话的建立
TCP 会话建立成功,进入到 opensent 状态,发送 open 报文。
TCP 会话建立失败,进入 ACTIVE 状态,尝试重新建立 TCP会话。
在建立 TCP 会话过程中,因为双方都会主动发起建立会话的过
程,而最终建立的都是一个双向的会话。所以,最终只需要保持
一个会话通道即可。选择方式是通过后续 open 报文中的 RID 进行
比较,选择保留 RID 大的设备发起的 TCP 会话

Opensent---发出本地的open报文

收到对端发送的open报文,查看里面的参数,之后,如果确认参数无误。则将回复keeplive报文作
为确认。

Openconfirm---open报文确认状态

对端也收到本地发送的open报文,之后根据里面的参数进行确认。如果确认无误则将发送keeplive报文。本段收到对方发送的keeplive报文之后将进入下一个状态。

Established---建立状态

标志着BGP对等体关系的建立

BGP工作过程

 

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

BGP--边界网关协议 的相关文章

  • 熟悉Kali源-无法定位软件包问题

    文章目录 Linux安装特性 问题和解决 结论和应对 参考 Linux安装特性 每个LINUX的发行版 比如ubuntu 都会维护一个自己的软件仓库 我们常用的几乎所有软件都在这里面 这里面的软件绝对安全 而且绝对的能正常安装 在ubunt
  • 增广拉格朗日函数的KKT条件及投影形式(projection form)

    我的这篇博文中介绍了增广拉格朗日函数及KKT条件 增广拉格朗日函数 The augmented Lagrangian 及其KKT条件 这篇文章中介绍了Lagrangian的KKT条件和投影形式 KKT条件和投影定理 Projection T
  • glTF2.0_01

    glTF2 0
  • Jenkins---Jenkins配置定时任务

    前言 当我们将自动化代码成功的部署到了Jenkins 领导突然有要求 想要每2小时进行看下自动化的结果 这个时候jenkins能帮助我们实现吗 答案是肯定的 jenkins上有构建定时器 接下来安静通过小小的例子如何操作 Jenkins定时
  • 学习笔记(STM32通用定时器)

    PS 自己做的笔记 质量不高T T 源教程视频 https www bilibili com video BV1th411z7sn vd source e9a6e1a7cd4e8068209a469f8be0be16 STM32F103C8
  • C++开源库集合

    C 开源库集合 Main Site Index Download mimetic A free GPL C MIME Library mimetic is a free GPL Email library MIME written in C
  • 刷脸支付市场生态朝着更加良性方向发展

    购物付款时 不用开机 只是看一眼支付设备 就能完成付款 今年以来 刷脸支付在大小商店 餐馆逐渐铺开 消费者和商家在感到新鲜 好奇的同时也发现 这一设备利用率高 体验比二维支付好 刷脸支付未来市场还在观察 移动支付和支付没有办法确定使用者到底
  • Springboot配置页面国际化

    有时候网站会涉及中英文甚至多语言的切换 这时候我们需要学习国际化 准备工作 先设置properties的编码为utf 8 编写国际化配置文件 在resources资源路径下新建i18n目录 存放国际化配置文件 3 建立一个login pro

随机推荐

  • jenkins从gitlab拉取代码

    1 生成秘钥 首先要在容器内创建SSH秘钥和公钥 进入jenkins命令行状态然后输入ssh keygen后会成产密钥对 存放在 root ssh 目录下 id rsa为私钥 id ras pub为公钥 可以用cat命令查看生成的公钥和私钥
  • leetcode刷题题解——173. 二叉搜索树迭代器

    迭代思路 private TreeNode node private Stack
  • 2021-05-31-element中table表hover显示隐藏表单的实现

    element中table表hover显示隐藏表单的实现 需求 实现鼠标悬停table中的某一列显示修改按钮 修改按钮跟随内容后间距8px 内容超过16字节显示 加上修改按钮 效果如下图 需求 实现鼠标悬停table中的某一列显示修改按钮
  • 叶俊:从佛说法制的十大好处谈到企业的制度与人情

    Hello 大家好 欢迎来到火锅智烩 我是叶俊 随着大众创业 万众创新的观念深入人心 越来越多的人加入到创业的大潮当中去 于是商业竞争就显得更加激烈了 在这个创业的过程当中 很多的新手乃至于老手都难免遇到这样那样的种种的困惑跟问题 其中当企
  • 兼容性测试对于软件测试来说重要吗?

    该测试是软件测试的一个重要部分 它也获得了越来越多的关注和重视 那么 兼容性测试对于软件测试来说重要吗 我们一起往下了解 首先 兼容性测试可以确保软件在不同的操作系统 硬件平台和设备上能够正常运行 在产品开发过程中 由于各种因素的影响 经常
  • Android 实现APP内应用更新功能(支持Android7.0以上)

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 前言 实现APP内应用更新功能思路 这里我给大家具体说明以下 思路 通过API接口获取服务器端版本号 与本地应用版本号作比较 如果本地版
  • 直流充电国标报文缩写定义

    直流充电国标报文缩写定义 报文简称 报文全称 描述 CRM Charger Recognition Message 充电机辨识报文 BRM Battery Recognition Message BMS和车辆辨识报文 BCP Battery
  • IKE协商

    1 IKEv1协商的两个阶段 第一阶段 通信双方协商和建立IKE协议本身使用的安全通道 目的是建立一个IKE SA 交互的内容 交互密钥资源 交互双方的公钥 交互IKE SA 用来加密主模式里面的5和6两个包 身份验证 第二阶段 利用第一阶
  • 尺取算法

    尺取法 尺取法可以用来优化for循环 降低程序的时间复杂度 例题 第一行是一个整数n 表示数组元素的个数 第二行有n个空格分隔的整数 第三行有一个整数sum 输出一个整数 表示有多少对元素之和等于sum 输入格式 6 1 3 5 7 9 3
  • sqli-labs系列——第三关

    文章目录 判断注入类型 开始注入 后记 判断注入类型 这第三关有点意思 是一个带括号的数字型注入 这里需要闭合它的括号 之前遇到过很多这样的站 它的sql语句一般都是这样的 sql select from user where id id
  • python将nan, inf转为特定的数字

    最近 处理两个矩阵的点除 得到结果后 再作其他的计算 发现有些内置的函数不work 查看得到的数据 发现有很多nan和inf 导致python的基本函数运行不了 这是因为在除的过程中分母出现0的缘故 为了将结果能够被python其他函数处理
  • 自动创建计划任务之删除7天以前的备份文件批处理

    由于我的公司游戏 露娜luna 服务器太多 之前建立的每日备份日志文件日积月累会 很大 而且不需要保留那么多 按公司要求只需要保留一个星期的即可 1 那么有什么方法自动删除7天以前备份的 log文件呢 2 服务器过多 不可能一一手动创建 有
  • LLM 赋能的 BizDevOps 工具链:扩大端到端触点,内建流程与规范

    在本系列的前两篇文章 LLM 赋能的研发效能 LLM 赋能的软件架构 里 介绍了我们在 LLM 结合 BizDevOps 软件架构的一系列试验 围绕于这两大类探索 我们构建了两个开源 LLM 工具 AI 辅助编程工具 AutoDev IDE
  • VirtualBox安装Kali

    VirtualBox安装Kali 下载VBox 去Virtual Box官网下载 根据操作系统选择版本 此处以Windows为例 打开安装程序进行安装即可 安装Kali 去Kali Linux官网下载镜像 点击Virtual Machine
  • Python 创建虚拟环境 Error: Command returned non-zero exit status 101.

    问题 今天用Python创建虚拟环境的时候 突然给我报错了 Error Command Scripts python exe Im ensurepip upgrade default pip returned non zero exit s
  • odoo 字段设置权限

    odoo14 字段设置权限 1 在 scurty文件中新增一个xml res groups xml 文件在文件中下写入语句
  • RNN原理及输入输出

    文章目录 循环神经网络 一 功能简介 二 基本原理 三 输入格式 四 输出格式 循环神经网络 一 功能简介 循环神经网络 Recurrent Neural Neural Networks RNN 是一种反馈网络 它可以有效处理序列特性的数据
  • 【MongoDB】Ubuntu22.04 下安装 MongoDB

    文章目录 Ubuntu 22 04 安装 MongoDB 后台启动 MongoDB shell 连入 MongoDB 服务 MongoDB 用户权限认证 创建 root 用户 开启认证 重启 MongoDB 服务 创建其他用户 查看用户信息
  • cnn图像质量评价

    参考 https blog csdn net moxibingdao article details 107096783 上面左图为原图 中间为经过JPEG2000压缩后的图 右图为高斯模糊后的图 从清晰度来讲 肯定第一幅图质量更高 质量评
  • BGP--边界网关协议

    目录 BGP和IGP区别 BGP协议关注点 BGP数据包 open包 Keeplive包 update包 notification包 Route refresh包 BGP的状态机 IDLE 空闲状态 Connect 连接状态 Opensen