动态路由协议(工作范围)
    1、自治系统内部的路由协议-IGP:工作在同一个AS内,主要用来发现和计算路由,为AS内提供路由信息的交换(ospf,rip,isis)
    2、自治系统之间的路由协议-EGP:工作在AS和AS之间,着重于控制路由的传播和选择最优的路由,在AS间提供无环路的路由信息交换,BGP是EGP的一种。
自治系统定义:由同一个技术管理机构管理、使用统一选路策略的一些路由器的集合。
自治系统的编号范围(1~65535);公有编号(1~64511);私有编号(64512~65535)。
BGP特征(增强的距离矢量路由协议)
    1、可靠的路由跟新机制
    2、丰富的Metric度量方法
    3、从设计上避免了环路的发生
 为路由附带属性信息
 支持CIDR
 丰富的路由过滤和路由策略
 增量更新计算
BGP路由的传递
    因为要先建立TCP连接,所以两端的路由器必须知道对方的IP地址,可以通过直连端口,静态路由或者IGP学习。
BGP路由更新
    传输协议:TCP,端口号179(目的端口号),源端口号随机产生(1024~50000).
    无需周期性更新
    路由更新:只发送增量更新
    周期性发生keepAlive报文检测TCP的连通性
BGP报文类型
    1、Open:负责和对等体建立连接
    2、keepAlive:该消息在对等体之间周期性的发送,用以维护连接
    3、Update:该消息被用来在BGP对等体之间传递路由信息
    4、Notification:当BGP Speaker检测到错误的时候,就发送该消息给对等体
    5、Router-refresh:用来通知对等体自己支持路由刷新能力
BGP报文头
    1、Header
        Marker(16B)
        Length(2B)
        Type(1B)
    2、Message
    3、Data
Open报文
    Version(1B) #现在用的V4
    My Autonomous System(2B) #我自己的AS号码
    Hold Time(2B) #建立的时间,180S,超过180S,对等体down了。
    BGP Identifier(4B) #router Id
    Opt Param Len(1B)#可选字段
    Optional Parameters(variable)

  Open错误码
       1         不支持的版本号
       2         错误的对等体AS号
       3         错误的BGPid
       4         不支持可选参数
keepalive报文 #检测邻居状态,时间间隔60S,开始重置。
    只有报文头
        Marker(16B)
        Length(2B)
        Type(1B)
Update报文
    Withdrawn Routes Length(2B)#承载不可达路由信息
    Withdrawn Routes(可变长度)  #承载不可达路由信息,IP地址前缀部分
    PathAttribute Length(2B)
    PathAttribute(可变长度)# 路径属性
    Network Layer Reachability Information(可变长度)#可达信息
Notification报文
    Error Code(1B)
    Error SubCode(1B)
    Data(可变长度)
        Error Code     错误类型
        1                    消息头错误
        2                    OPEN消息超时
        3                    UPDATE消息超时
        4                    保持时间超时  
        5                    状态机错误
        6                    终止
Router-refresh报文
    AFI(2B)
    Res.(1B)
    SAFI(1B)
BGP协议的应用
    1、通过TCP建立BGP连接,发送OPEN消息
    2、连接建立后,如果有路由需要发送或路由发生变化时,发送UPDATE消息通告对端
    3、稳定后要定时发送KEEPALIVE消息保持BGP连接的有效性
    4、当本地BGP在运行中发现错误时,要发送NOTIFICATION消息通告BGP对等体
    5、ROUTE-REFRESH消息来通告对等体自己支持路由刷新
BGP状态机(状态迁移)



BGP数据库

  IP路由表(IP-RIB)

    全局路由消息库,包括所有IP路由信息。

  BGP路由表(Loc-RIB)

    BGP路由信息库,包括本地BGP Speaker选择的路由信息

  邻居表

    对等体邻居清单列表

  Adj-RIB-In

    对等体宣告给本地Speaker的未处理的路由信息库

  Adj-RIB-Out

    本地Speaker宣告给指定对等体的路由信息库

  

BGP知识点总结(一)的更多相关文章

  1. BGP - 1,基本概念

    1,BGP知识点 a)AS号:私有(64512-65535),公有(0-64511). b)什么时候使用BGP:有数据穿越本AS前往其他AS:本AS有多条到其他AS的连接:必须要做策略.   c)BG ...

  2. BGP路由协议详解(完整篇)

    原文链接:http://xuanbo.blog.51cto.com/499334/465596/ 2010-12-27 12:02:45 上个月我写一篇关于BGP协议的博文,曾许诺过要完善这个文档,但 ...

  3. 计算机网络及TCP/IP知识点(全面,慢慢看)

    TCP/IP网络知识点总结 一.总述 1.定义:计算机网络是一些互相连接的.自治的计算机的集合.因特网是网络的网络. 2.分类: 根据作用范围分类: 广域网 WAN (Wide Area Networ ...

  4. TCP/IP网络知识点总结

    学完了计算机网络是时候整理一篇总结了,温故知新.注意:这篇博客很长长长(2.5万字+50图). TCP/IP网络知识点总结 一.总述 1.定义:计算机网络是一些互相连接的.自治的计算机的集合.因特网是 ...

  5. ASP.NET Core 中的那些认证中间件及一些重要知识点

    前言 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 A ...

  6. ASP.NET MVC开发:Web项目开发必备知识点

    最近加班加点完成一个Web项目,使用Asp.net MVC开发.很久以前接触的Asp.net开发还是Aspx形式,什么Razor引擎,什么MVC还是这次开发才明白,可以算是新手. 对新手而言,那进行A ...

  7. UWP开发必备以及常用知识点总结

    一直在学UWP,一直在写Code,自己到达了什么水平?还有多少东西需要学习才能独挡一面?我想对刚接触UWP的开发者都有这种困惑,偶尔停下来总结分析一下还是很有收获的! 以下内容是自己开发中经常遇到的一 ...

  8. C#高级知识点&(ABP框架理论学习高级篇)——白金版

    前言摘要 很早以前就有要写ABP高级系列教程的计划了,但是迟迟到现在这个高级理论系列才和大家见面.其实这篇博客很早就着手写了,只是楼主一直写写停停.看看下图,就知道这篇博客的生产日期了,谁知它的出厂日 ...

  9. lucene 基础知识点

    部分知识点的梳理,参考<lucene实战>及网络资料 1.基本概念 lucence 可以认为分为两大组件: 1)索引组件 a.内容获取:即将原始的内容材料,可以是数据库.网站(爬虫).文本 ...

  10. DoraCMS 源码知识点备注

    项目需要研究了下DoraCMS这款开源CMS,真心做的不错:).用的框架是常用的express 4 + mongoose,代码也很规范,值得学习. 源码中一些涉及到的小知识点备注下: https:// ...

随机推荐

  1. 剑指 Offer 32 - I. 从上到下打印二叉树(java解题)

    目录 1. 题目 2. 解题思路 3. 数据类型功能函数总结 4. java代码 1. 题目 从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印.   例如: 给定二叉树: [3,9, ...

  2. C-06\数组

    一.一维数组 数组:表示同类数据的集合(业务功能一致且数据类型一样) []: ​ 定义时,表示数组身份与标志,其中数值表示数组元素的总个数 ​ 定义以外使用时,表示下标运算,下标运算有两个操作符:指针 ...

  3. Seal 0.4 发布:软件供应链安全洞察更上一层楼!

    今天,我们很高兴宣布 Seal 0.4 已正式发布!在上一个版本中,Seal 完成了从单一产品到全链路平台的转变,通过全局视图帮助用户掌握软件开发生命周期各个环节的安全状况. 在 Seal 0.4 中 ...

  4. P20_事件绑定

    事件绑定 什么是事件 事件是渲染层到逻辑层的通讯方式.通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理. 小程序中常用的事件 事件对象的属性列表 当事件回调触发的时候,会收到一个事件对 ...

  5. SQL性能优化的47个小技巧,你了解多少?

    大家好,我是哪吒. 1.先了解MySQL的执行过程 了解了MySQL的执行过程,我们才知道如何进行sql优化. 客户端发送一条查询语句到服务器: 服务器先查询缓存,如果命中缓存,则立即返回存储在缓存中 ...

  6. linux下删除文件夹的软链接时注意千万不能在后面加反斜杠,千万不要用强制删除,否则下面2种场景,你会把源文件删除,要闯祸的

    今天遇到一个坑,自己在子目录下创建了父目录的软链接,导致可以无限循环进入父目录 [clouder@ana53 dir1]$ ll total 8 -rw-rw-r-- 1 clouder cloude ...

  7. 磁盘有限,Docker 垃圾很多怎么办

    你的电脑上可能 pull 或者 build 了很多 Docker 镜像,但是你不知道怎么清理,本文将介绍如何清理 Docker 垃圾的常见方法. docker prune 你可以通过原生的多种 pru ...

  8. 在 CentOS7 部署 ELK8.0.1

    在 CentOS7 部署 ELK8.0.1 目录 在 CentOS7 部署 ELK8.0.1 1 下载软件: 2 环境准备: 2.1 关闭防火墙和SELinux 2.2 修改Linux最大打开文件数 ...

  9. 🤗 PEFT: 在低资源硬件上对十亿规模模型进行参数高效微调

    动机 基于 Transformers 架构的大型语言模型 (LLM),如 GPT.T5 和 BERT,已经在各种自然语言处理 (NLP) 任务中取得了最先进的结果.此外,还开始涉足其他领域,例如计算机 ...

  10. Vue 组件VueComponent中_ _proto_ _ 原型对象的指向(指向Vue的原型对象 _ _proto_ _)

    1.VueComponent.prototype.__proto__ === Vue.prototype 2.让组件实例对象(vc)可以访问到Vue原型上的属性.方法 图片如下: 案例: Vue.pr ...