1,BGP的三张表
     邻居表(adjancy table)
     BGP表(forwarding database):BGP默认不做负载均衡,会选出一条最优的,放入路由表
     路由表(routing table)
 
     查询命令:
     BGP表:show ip bgp
     路由表:show ip route
     邻居表:show ip bgp summary(简单邻居),show ip bgp neighbor(详细邻居)
 
2,BGP表中的路由通告规则
     多条路径时,BGP只选最优的使用,以及传给邻居
     从EBGP获得的,直接传(包括EBGP和IBGP)
     从IBGP获得的,不再传给IBGP(RR除外)
     从IBGP获得的,只有优化时才传给EBGP邻居
 
3,BGP表
     
     status codes是最前面的,包括s,d,h,*,>,i,r,S
     origin codes是后面path列,包括i,e,?
     *:     可以用(不可用:R,从更小AD值的IGP中学到了该路由,因此不用BGP路由;s,聚合时明细路由被抑制)         
     >:     优化的(要确保>号出来,才能放进路由表,才能继续传给EBGP邻居)         
     i:     >号后面的i代表从IBGP学到的路由,本地通告的/从EBGP学到的路由不打i
    ?:     重发布得来的       
     没有>号的路由非优化的:不会放进路由表,不会给其他邻居传         
 
     例子如下:
 
 
4,BGP表中路由优化的条件(即出现>号的条件:关同步,next-hop-self)          
     实际上就是在讨论从IBGP收到的路由,是否有资格放入路由表,是否能传给后面的IBGP/EBGP邻居的问题。
     BGP同步规则:从IBGP学到的路由默认不会用,直到从IGP也学到。
     只有解决“IBGP下一跳可达性问题,以及路由黑洞问题 ”这2个问题才能优化。
     
     方法:
     首先确保下一跳可达,next-hop-self或者静态指向EBGP下一跳地址。
     然后:1)同步+BGP重发布到IGP;2)同步+写静态欺骗;3)关同步。
 
     关同步后黑洞问题仍然存在,可以通过fullmesh或者mpls解决。
 
5,BGP打R路由
     *变成R,同时从IGP和BGP学到的路由,IGP管理距离比BGP小,一般发生在IBGP(AD200)
     打R的路由不放进路由表,但是会继续传给BGP邻居
 

BGP - 4,BGP的三张表的更多相关文章

  1. Ajax案例:三级联动查询员工的信息(三张表进行内连接)

    需求分析: 通过数据库连接池,可以查询到数据库中员工的各种信息,通过点击下拉框的方式实现三级联动,即:没有点击city下拉框,后面两个下拉框中没有值,这样,点击city下拉框,department下拉 ...

  2. mysql三张表关联查询

    三张表,需要得到的数据是标红色部分的.sql如下: select a.uid,a.uname,a.upsw,a.urealname,a.utel,a.uremark, b.rid,b.rname,b. ...

  3. Yii的Relational Active Record三张表连接查询

    需求如下: 查询book表信息,同时关联entitystags表,以entitystags的字段eid关联book的主键,再关联查询tags表,以entitystags表的tid字段关联tags表的主 ...

  4. django 多对多自定义第三张表时的注意事项

    杂交(自定义第三张表+ManyToManyField) # modles.py class Boy(models.Model): name = models.CharField(max_length= ...

  5. $Django 多对多-自定义第三张表 基于双下划线的跨表查询(补充)

    自定义第三张表的好处:可以定义多个字段, 缺点:查询不方便(有方法解决) 1.第三张表设置外键,联合唯一(查询不方便) class Books(models.Model): name=models.C ...

  6. Oracle将两张表的数据插入第三张表且第三张表中不存在

    1.由于是先查再插所以不能使用insert into table1() values(), 要使用insert into table1() select * table2,不能使用values. 2. ...

  7. Django之多对多表之through第三张表之InlineModelAdmin后台内嵌

    话不多说,来看表结构 这里有两个表,一个是阶段表,一个是老师表,一个老师可以带多个阶段,一个阶段也可以由多个老师带,所以是多对多关系 # 阶段表 class Stage(models.Model): ...

  8. Django框架(十一)-- 补充:inclusion_tag、defer、only、choice、事务、创建多对多的第三张表、mvc和mtv模式

    一.inclusion_tag 1.作用 用于生成HTML片段,是数据由参数传入而变成动态 2.使用 # 1.app下新建一个模块,templatetags # 2.创建一个py文件(mytag.py ...

  9. 【Oracle/Java】向三张表各插入百万数据,共用时18分3秒,平均每张表6分钟

    三张表DDL如下: CREATE TABLE tb01 ( "ID" ,) not null primary key, "NAME" NVARCHAR2() n ...

随机推荐

  1. [内核驱动] miniFilter 内核层与应用程序通信

    转载:http://blog.csdn.net/heyabo/article/details/8721611 转载:http://www.cnblogs.com/ljinshuan/archive/2 ...

  2. ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 42. Created with MySQL 50560, now running 50725. Please use mysql_upgrade to fix this error.

    centos7.5 登入mysql,进行授权报错 问题: mysql> grant all privileges on *.* to 'lvhanzhi'@'%' identified by ' ...

  3. openwrt支持哪些c库?

    答: 至2019/3/22,支持两种,一种是glibc,另一种是musl-libc(openwrt默认使用musl-libc)

  4. php的内核组成模块和运行原理

    php总共包括3个模块: php内核,zend引擎,php扩展层. 内核: 用于处理请求,文件流,错误处理等相关处理 zend引擎: 将源文件转换成机器语言(实际上是字节码opCode),然后再zen ...

  5. ppoint的使用

    ppt中的所有东西都要看作是 "对象" . 对 "对象"的操作逻辑是: 单击, 右键单击,双击(右键的时候, 直接就右键, 不必先选中再右键操作) 在ppt中, ...

  6. BFS广度优先 vs DFS深度优先 for Binary Tree

    https://www.geeksforgeeks.org/bfs-vs-dfs-binary-tree/ What are BFS and DFS for Binary Tree? A Tree i ...

  7. 【修改缓存路径】修改Gradle缓存路径的几种方式

    起因 Android Studio的gradle在缓存处理上有时候会莫名其妙的出问题,必要时需要手动删除缓存,然后重新编译.有时也有出于其他考虑指定gradle缓存路径. 方法1:修改gradle文件 ...

  8. 比较好的一些 ConcurrentHashMap讲解博客

    jdk8 https://blog.csdn.net/jianghuxiaojin/article/details/52006118#commentBox jdk7.8 https://crossov ...

  9. [idea] - 项目启动报错Process finished with exit code 1

    今天运行项目发现一个bug, "C:\Program Files\Java\jdk1.8.0_191\bin\java.exe" -XX:TieredStopAtLevel=1 - ...

  10. DownAlbum:Chrome的pinterest批量下载插件

    一.DownAlbum安装 二.DownAlbum使用 点击DownAlbum图标. 选择Normal. 会出现一个加载的弹窗,等待片刻会打开一个新的窗口. 按Ctrl+S,即可保存相册所有图片. 图 ...