什么是BGP协议
Border Gateway Protocol,边界网关协议,简称BGP,主要用于互联网AS(自治系统)之间的互联。
Linux内核原生支持的、专门用在大规模数据中心维护不同的“自治系统”之间路由信息的、无中心的路由协议.。
举例:

AS1和AS2分别是独立的自治系统,指一个组织管辖下的所有IP网络和路由器的全体(可以想象成一个小公司里所有的主机和路由器)
如果AS1的10.10.0.2要访问AS2的172.17.0.3的话,根据路由规则 ,发出的IP包必须经过Router1,通过C口发往网关Router2(AS上的路由器),
但是反过来,如果主机172.17.0.3要访问10.10.0.2,到达Router2后,就不知道去哪儿了,因为没有相应的路由规则,这时候,网络管理员就应该给Router2也添加一条路由规则 ,比如10.10.0.2的IP包,应该经过Router2的C接口,发往Router1
像Router1和Router2这样把各个自治系统连接在一起的路由器,叫:边界网关,它的路由表里拥有其他自治系统里的主机路由信息
如果网络拓扑结构非常复杂,要依靠人工来对边界网关的路由表进行配置和维护,不现实,于是BGP就出来了。
使用BGP后,每个边界网关上都运行着一个小程序,会将各自的路由表信息、通过TCP传输给其他的边界网关,而其他边界网关的这个小程序,会对收到的数据进行分析,然后将需要的信息添加到自己的路由表里。
所以,BGP就是在大规模网络中实现节点路由信息共享的一种协议。
什么是BGP协议的更多相关文章
- 学习总结---BGP协议
一.可以在自治域内使用BGP作为域内协议吗? 为什么?它和OSPF的关键差异是什么? 1.BGP的全称是边界网关协议,用于自治域间的路由传递,它不像OSPF协议,其重点不在于路由的计算,而在于路由的控 ...
- 协议森林03 IP接力赛 (IP, ARP, RIP和BGP协议)
网络层(network layer)是实现互联网的最重要的一层.正是在网络层面上,各个局域网根据IP协议相互连接,最终构成覆盖全球的Internet.更高层的协议,无论是TCP还是UDP,必须通过网络 ...
- quagga源码学习--BGP协议中的routemap
路由策略的基础知识 定义 路由策略(Routing Policy)作用于路由,主要实现了路由过滤和路由属性设置等功能,它通过改变路由属性(包括可达性)来改变网络流量所经过的路径. 目的 路由器在发布. ...
- quagga源码学习--BGP协议对等体连接建立的状态机
创建完bgp peer之后,就要bgp start了,不然费那么大劲创建出来不做事情就销毁了,就很尴尬了. 那么对等体一旦start起来,就会进入各自的状态,在不同的状态下处理各自的事件消息. 下面列 ...
- (转)协议森林03 IP接力赛 (IP, ARP, RIP和BGP协议)
协议森林03 IP接力赛 (IP, ARP, RIP和BGP协议) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 网络层(net ...
- BGP协议测试—信而泰网络测试仪实操
关键词 BGP; 协议仿真; 测试原理. 前言:当前信息化时代之下,数据传输已经成为了日常工作和生活必不可少的重要组成部分,网络服务的易得性和可靠性也因此得到广泛关注.这其中负责网络正常工作的诸多协 ...
- 6 分钟看完 BGP 协议。
上一篇文章见 万字长文爆肝路由协议! 上面我们聊 RIP .OSPF 协议都是基于 AS 即自治系统内的协议,可以把它们认为是域内路由协议:而下面我们要聊的就是 AS 之间的协议了,这也叫做域间路由协 ...
- BGP协议学习总结
BGP学习总结 BGP是目前使用的唯一的自治系统间的路由协议,它是一种矢量路由协议,基于TCP的179号端口,它采用单播增量更新的方式更新路由,与其他的路由协议不同的是,BGP只要TCP可达,就可以建 ...
- BGP协议
BGP属于自治系统间路由协议.BGP的主要目标是为处于不同AS中的路由器之间进行路由信息通信提供保障.BGP既不是纯粹的矢量距离协议,也不是纯粹的链路状态协议,通常被称为通路向量路由协议.这是因为BG ...
- quagga源码学习--BGP协议创建对等体
现有的路由协议都是通过分布式协议逐个配置协商运行的,协议协议,一个就不需要协议咯,至少2个才能够协议着做事情嘛,不过呢,这样就出现网元过多配置困难的问题,对网管软件要求也越来越高, SDN或许可能改变 ...
随机推荐
- python将数据库修改,数据库操作同步到数据库中
*****************数据库迁移(同步)命令******************************** 1.python manage.py makemigrations 将数据库的 ...
- LinuxMint自定义快捷键
如图
- 《Java基础知识》Java数据类型以及变量的定义
Java 是一种强类型的语言,声明变量时必须指明数据类型.变量(variable)的值占据一定的内存空间.不同类型的变量占据不同的大小. Java中共有8种基本数据类型,包括4 种整型.2 种浮点型. ...
- Redux-DevTools安装
去谷歌应用商店搜索Redux-DevTools,安装就行 高级使用方法:访问https://github.com/zalmoxisus/redux-devtools-extension import ...
- vue.config.js的常用配置
const path = require('path') const glob = require('glob') const resolve = (dir) => path.join(__di ...
- Android高斯模糊实现方案
1.使用Glide Glide.with(this) .load(service.getImageUri()) .dontAnimate() .error(R.drawable.error_img) ...
- Flutter报错记录
1.Could not find an option named "androidx". Run 'flutter -h' (or 'flutter -h') for avai ...
- Linux 命令行初始化MySQL数据库
作为一个技术纯小白,在Linux服务器初始化MySQL数据库的时候遇到了一点小问题: 1.不会使用MySQL图形工具,几乎没玩过 2.客户的VPN没有开放3306端口,没法用navicat等工 ...
- springcloud Config 入门,带视频
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] 前言 Crazy ...
- xms新版发布
基于.net core 3.0.101 github地址: https://github.com/migomiddle/xms 码云地址: https://gitee.com/migomiddle/x ...