BGP基础知识

BGP的简要概述

  • BGP是“唯一”的EGP路由协议,主要用来再AS之间传递路由消息
  • 在AS之间是一种距离矢量的路由协议,应用特定的属性,避免环路的发生
  • 路由信息携带丰富的属性
  • 传递协议:TCP 端口号:179
  • 支持CIDR(无类别域间选路)
  • 路由跟新:只发送增量路由
  • 丰富的路由过滤和路由策略

自治域AS号

BGP中AS的定义

  AS (Autonomous System number,自治域系统号)是指拥有同一选路策略,在同一技术管理部门下运行的一组路由器的集合。BGP的RFC1771里留给AS的范围是2个字节,所以AS的取值范围为1-65535,其中64512以上的为私有AS。但是鉴于IPv4地址空间不够这个前车之鉴,在RFC4893里定义了一个BGP的新功能——4字节AS(BGP Support for Four-octet AS Number,一般用M.N来描述)。 
  由于BGP在邻居协商以及路由发送接受的时候都需要使用AS属性,所以RFC4893里也对相应的属性的扩展变化做出了解释。为了便于读者理解,下面列出了RFC4893定义的相关属性变化及说明

AS4_SEQUENCE:记录了该路由传递过程中所经过的AS;
AS4_SET:当出现聚合的时候,记录了聚合路由所合并的AS;
AS4_CONFED_SEQUENCE:在联盟中使用,作用和AS4_SEQUENCE类似;
AS4_CONFED_SET:在联盟中使用,作用和AS4_SET类似;
AS4_AGGREGATOR:记录了聚合者的AS号码;

  RFC4893给了一种建议,里面定义了一个公用2字节AS号码AS_TRANS,也就是说需要一个单独的2字节AS为专门用于衔接4字节AS BGP路由器与2字节AS BGP路由器,并且AS_TRANS不能被其他路由器或者组织使用;

BGP中AS的长度

  2009年1月之前,只能使用最多2字节(即2*8=16bit)长度的AS号码,即2^16 - 1 = 65535。
  其中1-64511为公有AS,65512-65534为私有AS,不能用于公网。记忆办法:2^16-1=65535,私有AS有1024个,65535-1024=64511,因此1-64511为公有AS。
  在2009年1月后,IANA决定使用4字节长度AS,范围是65536-4294967295。