BGP路径属性之AS_PATH的四种类型浅析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BGP路径属性之AS_PATH的四种类型浅析
AS_PATH属性,公认必遵,描述到达目标网络所要经过的AS号序列。最重要的作用是防环,如果BGP router发现自己的AS号位于接收自外部对等体的路由,则忽略该路由
仅当update消息被发送给其他的AS时,BGP 路由器才会将其AS号追加在AS_PATH中。这句话也隐含了另一个意思,那就是如果要修改AS_PATH属性,则必须在AS边界路由器上执行策略。
有四种类型的AS_PATH:
AS_SET:一个去往特定目的地所经路径上的无序AS号列表
AS_SEQENCE:一个有序的AS号列表
AS_CONFED_SEQUENCE 一个去往特定目的地所经路径上的有序AS 号列表,其用法与AS_SEQUENCE完全一样,区别在于该列表中的AS号属于本地联邦中的AS AS_CONFED_SET 一个去往特定目的地所经路径上的无序AS号列表,去用方法与AS_SET完全一样,区别在于列表中的AS号属于本地联邦中的AS
以上四种类型是通过AS_PATH属性中的类型代码进行区分。关于这两个联邦特有的AS_PATH 类型,详细内容请见本文档“联邦”一小节,对于前两种AS_PATH怎么理解呢?
如上图由于做了汇聚,可能会丢失AS号信息,而作为AS号本身,如果用于防环的目的,其实并不一定要求AS号排列有序,因此AS3113向上游通告汇总路由时,以AS_SEQENCE为起始,同时AS_SET仍然保留明细路由的AS号(无序)。
如果AS_PATH中包含了AS_SET,那么就不需要在聚合路由中包含ATOMIC_AGGREGATE了,这是因为,AS_SET不但可以向下行路由器通告已经发生了路由聚合,而且包含了比ATOMIC_AGGREGATE更多的信息
AS_PATH:类型 AS_SEQENCE
以下为UPDATE消息中的AS_PATH字段内容(AS_PATH类型为AS_SEQUENCE的情况,也就是一般情况)
上图仅做基本的BGP配置,在R1上发布1.0及2.0,不做汇总,R4收到的AS_PATH如下:
AS_PATH:类型 AS_SET
R3上对R1、R2过来的明细进行汇总(汇总命令加上AS_SET关键字),在R4上抓包会发现汇总路由的AS_PATH=300 {100,200}:
再看看抓包的结果,发现AS_PATH包含两部分,300为AS_SEQ类型,{100,200}为AS_SET 类型