BGP(外部网关协议)详解
2024-05-13 17:31:41   0  举报             
     
         
 AI智能生成
  BGP协议详解
    作者其他创作
 大纲/内容
  定位:距离矢量路由协议---运行在AS与AS之间的路由协议    
     自治系统(AS):由同一个技术管理机构管理、使用统一选路策略的一些路由器的集合。13;自治系统内部的路由协议——IGP,常见路由协议:OSPF,RIP,ISIS13;自治系统之间的路由协议——EGP  BGP  
     BGP描述    
     (1)因为BGP运行在AS与AS之间的路由协议,所以采用增量更新的更新路由方式。13;(2)BGP本身没有保证路由可靠传送的机制,所以依靠TCP,端口号为179.13;(3)利用keeplive的消息进行保活,检测邻居的存在  
     BGP的工作原理    
     邻居的发现    
     通过手动peer进行发现BGP邻居,进行建立TCP连接,只有TCP连接建立成功后才能建立邻居关系    
     通过open报文进行建立    
     分支主题    
     version :版本  
     myAS: AS号  
     hold time 等待时间  
     BGP ID :路由器的router ID  
     optional  选项字段  
     建立邻居的条件    
     TCP可达  
     router id 必须不同  
     hold time  
     更新路由,撤销路由    
     更新路由:采取增量更新,存在新的路由会立即发送过去  
     撤销路由:对已经发送的路由进行撤销  
     维护邻居    
     通过keeplive的消息进行维护邻居检测邻居是否存在  
     BGP的报文    
     open    
     负责和对等体建立邻居关系。  
     keeplive    
     该消息在对等体之间周期性地发送,用以维护连接。  
     update    
     该消息被用来在BGP对等体之间传递路由信息。  
     Notification    
     当BGP Speaker检测到错误的时候,就发送该消息给对等体。  
     Route-refresh    
     用来通知对等体自己支持路由刷新能力。  
     BGP的状态机    
     idle    
     死亡状态,需要手动peer进行激活  
     Connect    
     进行建立TCP连接,会有一个TCP的超时时间32秒  
     Active    
     TCP建立失败,被动等待建立TCP的状态  
     Open-sent    
     等待接受正确的open报文  
     Open-confirm    
     接收到正确的open报文,发送keeplive  
     Established    
     接收到对方的keeplive消息进入完成状态  
     BGP的通告原则    
     从IBGP收到的路由不会再传递给我的IBGP邻居  
     从EBGP收到的路由下一跳不改变  
     (1)BGP连接时会将自己的所有路由都会传递给对方13;(2)存在多条路径时,会进行路径选择挑选最优路径进行选择    
     怎么选择?通过BGP的四大属性    
     公认必尊:必须携带在update包中,不然就会出错    
     Origin(起源属性)--如何进入BGP的路由    
     通过network命令注入BGP的路由  
     通过EGP(RFC904)学到的路由,则origin属性为EGP  
     其他情形下,Origin属性都为 Incomplete    
     通过import命令注入BGP的路由  
     特点    
     Origin属性值默认情况下不被任何路由器修改  
     AS_Path(as路径属性)    
     记录经过的AS路径。  
     作用:类似于我们的RIP放环规则,从某一个接口发出的路由,不在从某一个接口接收  
     Next_Hop(下一跳属性)    
     RIPV2中的特点,表示下一跳的路由器出接口。  
     公认任意:所有BGP路由器都可以识别,但不要求必须存在于Update消息中    
     Local_Pref(本地优先属性)    
     只在本AS内部有效,优先级越高越优先转发  
     Atomic_Aggregate(原子聚合属性)  
     可选过度:BGP路由器可以选择是否在Update消息中携带这种属性    
     Aggregator (聚合者属性)  
     Community(团体属性)  
     可选非过度:BGP路由器可以选择是否在Update消息中携带这种属性    
     Originator ID(起源者ID属性)  
     Cluster List(簇列表属性)  
     BGP特征    
     BGP是外部路由协议,用来在AS之间传递路由信息13;是一种增强的距离矢量路由协议13;可靠的路由更新机制13;丰富的Metric度量方法13;从设计上避免了环路的发生13;为路由附带属性信息13;支持CIDR(无类别域间选路)13;丰富的路由过滤和路由策略  
     BGP路径比较规则    
     1,如果此路由的下一跳不可达,忽略此路由13;2,Preferred-Value值数值高的优先13;3,Local-Preference值最高的路由优先13;4,聚合路由优先于非聚合路由13;5,本地手动聚合路由的优先级高于本地自动聚合的路由13;6,本地通过network命令引入的路由的优先级高于本地通过13;import-route命令引入的路由13;7,AS路径的长度最短的路径优先13;8,比较Origin属性,IGP优于EGP,EGP优于Incomplete13;9,选择MED较小的路由13;10,EBGP路由优于IBGP路由13;11,BGP优先选择到BGP下一跳的IGP度量最低的路径13;当以上全部相同,则为等价路由,可以负载分担13;注:AS_PATH必须一致13;当负载分担时,以下3条原则无效13;12,比较Cluster-List长度,短者优先,13;13,比较Originator_ID(如果没有Originator_ID,则用Router ID比较),选择数值较小的路径13;14,比较对等体的IP地址,选择IP地址数值最小的路径13;  
    
 
 
 
 
  0 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
  
  
 