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. ListView与ArrayAdapter(二)

    ArrayAdapter: 数组适配器,用于简单的文字列表 activity_main.xml <RelativeLayout xmlns:android="http://schema ...

  2. 【python027--集合】

    一.集合会剔除字典内重复的数字 >>> num = {1,2,3,3,4,5,5,6}>>> num{1, 2, 3, 4, 5, 6}>>> t ...

  3. 如何在Framework中读取bundle中的Res

    前因: 因为公司上架前后的原因,外围的平台层部分提前上线,而我做的功能部分需要晚一些上线,是单独的一个工程在其他仓库开发. 我的资源文件放在Bundle中.合到主工程中,资源文件不用改,直接拖进去.倒 ...

  4. 解决Tax discount configure 报出异常

    If your tax calculation is based on a problematic configuration, the following warnings appear: Warn ...

  5. Oracle常用函数——TO_DATE

    TO_DATE 含义:将具有固定格式的字符串类型的数据转化为相对应的Date类型数据,官网解释如下图   使用方法 TO_DATE("需要转换的字符串","日期格式&qu ...

  6. sql 指定数据库中的信息操作

    查是否有该表名 SELECT * FROM sys.objects WHERE name='表名'查表字段的信息select * from syscolumns where id=Object_Id( ...

  7. 题解——code[vs] 1506 传话(传递闭包)

    裸的传递闭包 直接Floyd暴力即可 #include <cstdio> #include <algorithm> #include <cstring> using ...

  8. Vue.extend提供自定义组件的构造器

    Vue.extend 返回的是一个“扩展实例构造器”,也就是预设了部分选项的Vue实例构造器.经常服务于Vue.component用来生成组件,可以简单理解为当在模板中遇到该组件名称作为标签的自定义元 ...

  9. C++笔记(2018/2/7)

    类class 类的名字就是用户自定义的类型的名字.可以像使用基本类型那样来使用它. 一个类所占用的内存空间的大小,等于所有成员变量的大小之和. 类之间可以用 "="进行赋值,但是不 ...

  10. SQLite EF Core Database Provider

    原文链接 This database provider allows Entity Framework Core to be used with SQLite. The provider is mai ...