路由汇聚

路由汇聚

在大中型BGP网络中,BGP路由表会变得十分庞大,存储路由表占用大量的路由器内存资源,传输和处理路由信息需要占用大量的网络资源,使用路由聚合(Routes

Aggregation)可以大大减小路由表的规模,减小网络传递路由信息的负担;另外,通过对路由进行聚合,隐藏一些具体的路由,可以减少路由震荡对网络带来的影响。

路由聚合实际上是将多条相同前缀的具体路由合并成一条更概括的路由的过程。BGP支持自动聚合与手动聚合两种方式,具体如表1所示。

表1 自动聚合与手动聚合的对比

聚合方式

实现方式

特点

自动聚合

使能自动聚合功能后,BGP将按照自然网段聚合路由(如10.1.1.1/24和10.2.1.1/24将聚合为A类地址10.0.0.0/8),并且对参加聚合的具体路由进行抑制,只向对等体发送聚合路由。

仅对BGP通过Import方式引入的路由进行聚合。

在BGP选路过程中,自动聚合的路由优先级低于手动聚合路由。

由于自动聚合仅仅针对Import方式引入的本地路由生效,所以自动聚合路由不存在路径信息。

仅BGP支持自动聚合,BGP4+不支持自动聚合。

手动聚合

人为地对BGP路由进行聚合。

可以控制聚合路由的属性。

可以人为决定是否发布参加聚合的具体路由。

由于手动聚合人为参与的更多,所以在BGP选路过程中,手动聚合的路由优先级高于自动聚合路由。

聚合路由可以携带具体路由的路径信息,防止路由环路。

BGP和BGP4+都支持手动聚合。

自动聚合不涉及路径信息的变化,不存在路由循环的风险,比较简单。下文仅针对手动聚合进行阐述。

Atomic_Aggregate:BGP的一种公认任意(Well-known discretionary)属性,用于标识已经发生了路由聚合。BGP

Speaker在传递带有Atomic_Aggregate属性的路由时,不能将路由的Atomic_Aggregate属性删除。

AS_Sequence:是AS_Path属性的一种类型,通过Update消息传送,它是到目的地的路径上所经过的AS号的有序集合,按照顺序记录了路由经过的所有AS。

AS_Set:也是AS_Path属性的一种类型,通过Update消息传送,它是到目的地的路径上所经过的AS号的无序集合。AS_Set属性也可以标识该路由是聚合路由,而且还携带该路由的路径信息,因此如果在路由中加入了AS_Set属性,就没有必要再加入Atomic_Aggregate属性。AS_Set属性不管有多少AS号,在BGP选路时都按照长度为1进行计算。 由于AS_Set属性是在Update消息里传输,而且AS_Set属性会影响BGP选路,所以如果路由的AS_Set属性发生变化,路由器会发送Update消息给聚合范围以外的对等体通知这个变化。若聚合路由经过了较多的AS路径,而且具体路由的变化较频繁时,路由器就必须频繁发送Update消息通知AS_Set的变化,这有可能导致路由振荡。

AS4_Path:BGP定义的一种新的属性,用于支持4字节AS号。作用与AS_Path相似,所不同的是,AS4_Path可以不仅携带2字节AS号,还可以携带4字节AS号。AS4_Path对应也有AS4_Sequence和AS4_Set两种类型,作用分别与AS_Sequence和AS_Set相似。

AS4_Aggregator:BGP定义的一种新的属性,用于支持4字节AS号。作用与Aggregator相似,所不同的是AS4_Aggregator里携带的是4字节AS号,而Aggregator里携带的是2字节AS号。

相关推荐