ccie理论bgpWord格式文档下载.docx

上传人:b****5 文档编号:21331780 上传时间:2023-01-29 格式:DOCX 页数:13 大小:210.08KB
下载 相关 举报
ccie理论bgpWord格式文档下载.docx_第1页
第1页 / 共13页
ccie理论bgpWord格式文档下载.docx_第2页
第2页 / 共13页
ccie理论bgpWord格式文档下载.docx_第3页
第3页 / 共13页
ccie理论bgpWord格式文档下载.docx_第4页
第4页 / 共13页
ccie理论bgpWord格式文档下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

ccie理论bgpWord格式文档下载.docx

《ccie理论bgpWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《ccie理论bgpWord格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。

ccie理论bgpWord格式文档下载.docx

AS-Path对于路由环路非常容易检测到,如果路由器接受到一条含有本地AS号的AS-path,说明出现环路。

BGP没有给出每个AS域内的拓扑结构,因此BGP只能看到AS树,而IGP只能看到AS域内拓扑结构.

当某个特殊目的网络有并列的,等开销的路径时,Cisco缺省执行EBGP只选择一条路径,但可以使用maximum-paths改变并行路径缺省的最大数目,但仅对EBGP有效。

BGP消息类型

BGP具有4种消息类型

1.Open

2.Keepalive

3.Update

4.Notification

OpenMessage

TCP对话建立以后,两个邻居都要发送一个Open消息,每个邻居都用该消息来标示自己,并规定自己的BGP运行参数

BGPversion

它明确了发起者正在运行的BGP版本号(2,3,4),可以通过neighborversion修改,缺省版本号为4。

如果版本号不相同,路由器将自动降低版本号重发Open消息,直到版本一致

ASnumber

发起会话路由器的AS号,用于确认EBGP或者IBGP会话

Holdtime

路由器必须收到一个keepalive或者更新消息之前允许经过的最大秒数。

Holdtime必须是0(在这种情况下,必须是没有发送Keepalive)或者至少3s。

Cisco默认的holdtime为180s,如果两个邻居间holdtime不一致,选较短的那个做为两者可接受的时间

BGProuter-ID

选取方式和OSPF相同,使用数值最大的loopback口地址,没有loopback则使用物理接口上数值最大的地址

Optionalparameters用于一些可选功能的支持.例如鉴别,多协议支持及路由刷新等

KeepaliveMessage如果路由器接受了他在邻居的Open消息中的参数,它就会发送一个应答的Keepalive消息。

默认情况Keepalive间隔60s,或者是达成一致的保持时间的1/3

UpdateMessageUpdatemessage用来公布可用的路由,撤销的路由或者两者兼顾

NetworkLayerReachabilityInformation(NLRI)用来公布IP地址前缀和前缀长度的字节组,例如<

19,198.24.160.0>

PathAttributes该属性为BGP提供了选择最短路径,检查到路由环路以及决定路由策略的信息

WithdrawnRoutes用来描述已经变成不可达并正从业务中撤销的目的地址字节组(长度和前缀)注:

虽然NLRI字段可以包含多个前缀,但每一个更新消息只描述一条BGP路由(因为路径属性只描述一条路径,但该路径可能会到达多个目的地)

NotificationMessage当检测到差错的时候就会发送Notification消息,通常会导致BGP连接终止,例如使用Notification消息进行BGP版本的协商

IdleState

a)BGP通常以IdleState开始(此时拒绝接收所有入连接)。

当一个开始事件出现,BGP过程初始化所有BGP资源,打开重试连接(ConnectRetry)计时器,初始化到邻居的TCP连接,接听来自邻居的TCP初始化消息并将它的状态转到Connect状态.

b)开始事件是由一个操作者配置一个BGP过程,或者重置一个已经存在的过程或者路由器软件重置BGP过程引起

c)一个差错的出现会将BGP过程的状态转为Idle.路由器可能会试图发起另外一个开始事件.为了防止在持续差错条件下导致的摆动,在第一次转回到空闲状态后,路由器会自动开启

重试连接计时器,当计时器终止后,路由器就会放弃重新开始BGP.重试计时器第一次的时间为60s,下一次为前一次的2倍120s,成指数形式增加

ActiveState在此状态,BGP过程试图与邻居建立一个TCP连接

1.如果连接成功,BGP过程将ConnectRetry计时器清零,完成初始化,给邻居发送一个Open消息并转移到发送Open消息状态,Hold计时器设置为4mins

2.如果在激活状态,ConnectRelay计时器超时,将回到ConnectState并且重置ConnectRelay计时器.也发起一个到对等的TCP连接并继续监听来自对等体的连接.

3.如果邻居试图与一个未知IP建立TCP会话,同时ConnectRelay计时器重置,连接被拒绝并保持在Active状态

4.任何一个事件(除开始事件)都回导致状态转向idle

ConnectState此状态下BGP过程会等到TCP连接完成以后再决定后续的动作.

1.如果TCP连接建立成功,BGP连接将ConnectRetry清零,完成初始化并给邻居发送一个Open消息,转移到Open状态

2.如果TCP连接建立失败,BGP继续监听由邻居发起的连接,重置ConnectRetry计时器并转移到Active状态

3.如果在连接状态下,ConnectRetry超时,计时器将重新开始,并再一次试图与邻居建立TCP连接,BGP保持Connect状态,此时如果有任何其他输入事件,转入Idle状态

OpensendState在此状态下,已经发送了Open消息,BGP等待邻居发来的Open消息,

1.当收到一个Open消息,如果发现差错,将给邻居发一个Notification消息并转入Idle状态

2.如果收到的Open消息没有差错,将给邻居发送一个Keepalive消息并将Keepalive计时器清零,此时协商一个较短的holdtime,如果为0,则没有启动Hold和keepalive计时器,根据AS号选择IBGP或者EBGP,同时将状态转移到OpenConfirm状态

3.如果收到一个TCP断开消息,本地断开BGP连接,重置ConnectRetry计时器,并转入Active状态

OpenConfirmState此状态下BGP会等待一个Keepalive消息或者Notification消息

1.如果收到一个Keepalive消息,转移到Establish状态

2.如果收到一个Notification消息,转入Idle状态,并断开TCP连接

3.如果Hold计时器超时,检测到一个差错或出现stop事件,BGP将给邻居发送一个Notification并断开连接,转入Idle状态

EstablishState此状态下,BGP对等体间的连接已经完全建立,可以交换UpdateKeepalive和Notification消息,如果收到Notification自动转入Idle,并中断连接

路径属性

BGP路径属性分为4类

1.Well-knownmandatory公认必遵–所有的BGP路由器必须识别

(Update消息必须包含该属性)

2.Well-knowndiscretionary公认可遵–所有BGP路由器都能识别,但不是一定需要

(Update消息可以不包含该属性或者该属性任选)

3.Optionaltransitive可选传递–不是所有的BGP路由器都能识别,但所有BGP

路由器都能传递它(此属性即使BGP路由器不接受也可以传递)

4.Optionalnontransitive可选非传递–不是所有的BGP路由器都能识别,不能

识别BGP路由器丢弃它(此属性如果BGP路由器不接受则立即丢弃此消息,不再传递)

ORIGIN属于公认必选属性,明确了路由更新的来源,用于判断路由可信度,当BGP有多条路由来源时,路由器会将ORIGIN做为路由决策的参考来源有如下几类:

IGP---从AS内部学到,ORIGIN为0

EGP---NLRI从EGP学到,ORIGIN为1

Incomplete---NLRI通过其他手段获得,ORIGIN为3

一般来说具有较低ORIGIN值得前缀被优先选取,IGP>

BGP>

重分布例如通过重分布进入BGP,ORIGIN属性为3,通过Network命令注入其ORIGIN为0

AS_PATH描述一个路由传递过程中经过那一些AS(不算自己,从离自己最近的AS开始,以目的网段的AS结束),为了避免AS环路,如果从外部收到一条包含自己AS的路由,就说明有环路,此时BGP将丢弃该路由通常一条AS_PATH含有多个同一AS号,用于加长AS_PATH,提供策略选路,如下图

Next_Hop该属性描述了到公布目的地址的路径的下一跳路由器的IP地址

1.如果正在进行路由通告的路由器和接收的路由器在不同的AS中,Next_Hop为正在宣告的路由器接口的ip

2.如果正在宣告的路由器和接收的路由器在同一个AS内,并且更新消息中NLRI目的地也在同一个AS中,则next_hop为一宣告的路由的邻居的ip

3.如果正在宣告的路由器和接收的路由器是内部对等体,并且更新消息的NLRI指向不同AS,则Next_hop为学习到路由的外部对等实体的ip

Local_Pref仅用在本地AS,不会传到其他AS,具有较高Local_pref的路由将被优先考虑,默认值100如下图,优先考虑ISP1的路由

Multi_Exit_Disc(MED)Local_Pref仅影响离开AS的业务量,而MED用于影响流入AS的业务量,它允许一个AS将其首选入口通知给另一个AS,具有最低MED值的路由作为首选

WeightCisco专有,对于离开AS的报文,从多条路径中选择哪一条。

它是不传递的。

缺省下从对等体学到的所有路由器的权重值是0,由本地路由器产生的所有路由的权重值是32768选路时优先选用权值最高的路径

Comunity使可以向一组源路由使用相同的策略,即一个目的地作为一些目的地团体中的一个成员,这些目的地共享一个或多个共同特性。

它有4个字节–前面两个字节的AS号,后面两个字节的管理上定义表示符,而Cisco正好反过来,用ipbgpcommuitynew-format改过来当对团体路由进行聚合时,聚合路由继承了所有路由的全部团体属性NO_EXPORT的团体属性,携带该属性的路由允许在邻居AS内公布但不允许邻居AS把路由公布其他ASNONE属性删除现存的团体属性NO_ADVERTISE属性指不在IBGP邻居间传递带有该属性的路由DELETE属性用于只删除匹配特定团体列表的属性

ORIGINATOR_ID由路由反射器(RR)使用,它是有路由发起者产生的一个32比特的值,该值是本地AS里路由发起者的RID,如果路由器发起者从该属性值中看到了自己的RID,就说明有环路,该路由忽略

Cluster_LIST由路由反射器使用,它是路由经过反射器簇ID的一个序号。

如果路由反射器在该属性值中发现自己的本地簇ID,就说明有环路,忽略掉。

如果一个簇里不止一个RR,要在进程下用bgpcluster-id手工指定簇ID,因为默认RR将自己的RID当成cluster-id

AS_SET

由于聚合时AS_PATH中数据丢失,导致产生环路的潜在因素增加,因此加入AS_SET字段,通告

汇聚时包含的AS号AS_PATH替代了ATOMIC_AGGREGATE的功能,但也有其缺点:

如聚合的网络出现故障,AS_SET的改变将通告到聚合点以外

BGP选路规则

BGP路由信息库(RIB)包括

Adj-RIBs-In:

储存未经处理的路由信息,来自对等接收到的更新消息,所包含的路由是可用的

Loc-RIB:

包含的路由是运行BGP的路由器通过对Adj-RIBs-In中的路由使用他的本地路由策略而选择的路由Adj-RIBs-Out:

包含运行BGP的路由器向其对等公布的路由

3个数据库间的处理方法如下

1.为每一条可用路由计算优先级,并对BGPupdate消息中包含的路由信息变更作出处理

2.将最优路由放入Loc-RIB

3.将适合的路由放入Adj-RIBs-out(调用仅在上一步完成后)

BGP路径选择顺序:

如果路径不可达或者同步开启后,路径不同步,则该路径不参与选路

1,Weight---权重(越大越优先)

2,Local_Pref---本地优先(越大越优先)

3,所传递路由的本地起源优先,即下一跳是0.0.0.0(在BGP表中,当前路由器通告的路由的下一跳为0.0.0.0)4,AS-Path(越短越优先)

5,起源(优先:

IGP>

EGP>

Incomplete)

6,MED(越小越优先)

7,首选EBGP的路由,在联盟EBGP和IBGP中首选联盟EBGP路由

8,BGP优先选择到BGP下一跳的IGP度量最低的路径

9,如果有多条来自相同相邻AS的路由并通过Maximum-paths使多条路径可用,则将所有开销相同的路由加入Loc-RIB

10,BGP优先选择最老的路径,降低滚翻的影响

11,BGP邻居的RID(越小越优先)

12,如果多条路径始发路由器ID或路由器ID相同,那么优选Cluster-List最短的路径

13,选择邻居ip地址最小的路由

BGP路由惩罚

路由抑制可以阻止公布不稳定的路由,它为每条路由分配一个动态的度量数字用来反映稳定程度,当一条路由出现摆动,就给他分配一个惩罚值,摆动得越多,惩罚值越大。

当一段时间不摆动,惩罚值降低,在一个半衰期后,降到原来的一半。

如果惩罚值超过抑制上限,该路由就被抑制,只有当一个半衰期后惩罚值降低到重新使用界限时,才重新使用。

缺省下,

惩罚值–每次摆动1000抑制界限–2000重新使用界限–750半衰期–15分钟最大抑制时间–60分钟,或者半衰期的4倍

iBGP和IGP的同步

在某些情况下将IGBP当IGP使用,但是每个IBGP路由器必须与其它每一个IBGP路由器建立对等,即必须保证AS内IBGP全互连,全互连可以防止AS内产生BGP环路,同时保证BGP路由上的所有路由器都知道如何转发数据包到目的地

IBGP和IGP同步规则一条从IBGP邻居学习到的路由在进入IGP路由表或者公布给一个BGP对端之前,通过IGP必须知道该路由.同步可以防止没有足够信息的IGP造成路由黑洞.但也会带来很多缺陷,为了使IBGP工作正常,可以采用2种方法:

1.将外部路由重分发到IGP中从而保证IGP和BGP同步,但对于IGP路由器一般无法承受巨大的internet路由条目,在几个大型的中断事故中,多数是BGP无意中被分发到了OSPF或者IS-IS中

2.IBGP为逻辑上全网状连接,且关闭同步功能,所有路由器通过BGP知道外部路由,且不用通知IGP就能将路由加入到路由表中,但如果一个AS中有多个IBGP路由器,一个路由器将于其他每个路由器建立对等,十分耗时,故常采用联盟或者路由反射器来控制IBGP逻辑上的全互连.

同步是一个较老的BGP特性,在新版的IOS中,同步默认被关闭下图为关闭同步前后的区别,前者为同步打开,后者为同步关闭

管理大型网络中的BGP

在一个较大规模的AS中试图生成全互连的IBGP对等关系是一个规模庞大的工作,同时对于BGP对等关系的管理也十分复杂。

BGP设计了如下4种方式对对等关系进行管理

对等体组(PeerGroup)在大型互联网络中,一个路由器的策略会应用到多个对等关系,在Cisco路由器中可以使用一个名字和一系列的路由策略来定义一个对等组(PeerGroups),任何对等策略对整个group生效,对等组提高了路由器性能,只需访问一次策略数据库,生成一个Update消息,并将副本发给所有的对等体即可。

团体属性(Communities)相对于PeerGroups是对一组路由器使用策略,而团体(Communities)是对一组路由是用策略,团体可设置成为一个公用的值或者管理员定义的特有团体,一条路由可以属于多个团体,路由聚合可以继承所有路由的全部团体属性

路由反射器(Routereflectors)在大型的AS中,全互连带来极大的工作量,通过路由反射器(RR)可以建立一种C/S结构,如一个含有N个路由器的AS内,全互连将使用对等会话数目为(N-2)N/2,如果选取一个RR,则对等会话数目将降为N-1。

对一个C/S结构称其为一个RR-Cluster。

RR公布路由的规则:

1,如果路由是从非客户的IBGP对等学习到的,只将它反射给客户2,如果路由是从客户处学习到的,将它反射给除了发起该路由的客户外所有的客户以及非客户3,如果路由是从EBGP邻居学来的,将它反射给所有的客户和非客户将一个路由器配置成路由反射器(RR),用neigbhorroute-reflect-client把自己配成反射器,由该命令所定义的IBGP邻居路由器当成客户机,这些客户机只与RR建立对等关系。

RR不能改动它从客户处收到的路由的属性。

在一个AS内可以做RR冗余,因为客户并不知道自己是客户,所有一个RR可以是另一个路由反射器的客户。

只需要RR支持路由反射,客户不需要支持

RR使用了2个BGP路径属性:

ORIGINATOR_ID由路由反射器(RR)使用,它是有路由发起者产生的一个32比特的值,该值是本地AS里路由发起者的RID,如果路由器发起者从该属性值中看到了自己的RID,就说明有环路,该路由忽略

联盟属性(Confederations)

联盟(confederations)是一组分成子自治系统组的AS如上图

1.每一个联盟分配一个联盟ID,对于外端而言,此联盟ID代表的是整个联盟的AS号.联盟其实质是对自治系统的再次细分.

2.AS_PATH中加入了AS_CONFED_SEQUENCE和AS_CONFED_SET用法和AS_SEQUENCE及AS_SET完全相同,

3.在联盟环境下,所有路由器必须支持联盟

4.用预留AS(64512~65535)作为联盟中的AS编号是一中通用做法

5.选路优先级:

联盟的外部EBGP〉AS成员的EBGP〉IBGP

6.联盟相对于标准的AS,Next_hopsMED可以不加修改的公布给联盟中的其他AS成员的EBGP对端,而且可以发送Local_Pref属性

7.大型系统中,联盟和RR同时使用可以更好的控制IBGP对等关系

正则表达式AS-PATH过滤采用正则表达式,正则表达式解释如下:

1.匹配行开始和结束:

Ipas-pathaccess-list20permit850将匹配(850)(850,23,33)(33,27,7850,33)这样的路经如果仅匹配850,则可以使用ipas-pathaccess-list20permit^850$仅匹配一个空的AS_PATHipas-pathaccess-list20permit^$

2.匹配字符集和Ipas-pathaccess-list22permit^85[0123459]$

将匹配含有850~855and859的AS_PATH

3.否定:

匹配出字符集和外的其他任何字符Ipas-pathaccess-list23permit^85[^0-5]$将匹配含有856~859的AS_PATH

4.通配符Ipas-pathaccess-list24permit^85.将匹配含有850~859的AS_PATH由于.支持空格符,所以也匹配85

5.替代,即或操作Ipas-pathaccess-list24permit^(851|852)$将匹配含有851或者852的AS_PATH

6.选择字符,匹配一个可能存在或者不存在的字符Ipas-pathaccess-list24permit^(850)?

$

将匹配单一AS号850或者空列表,如果表达式为850?

匹配85or850

7.重复,匹配多个字符Ipas-pathaccess-list24permit^(850)*$将匹配重复多次的AS号850或者空列表,匹配(850),(850,850,850),(850,850,888)Ipas-pathaccess-list24permit^(850)*$将匹配至少包含一个AS号为850

8.分界线,描述多个字Ipas-pathaccess-list24permit^5610_148_3_2$只有as_path(5610_148_3_2)才能被匹配

Ipas-pathaccess-list24permit-5610_148_3_2$包含as_path(5610_148_3_2)都能被匹配

Ipas-pathaccess-list24permit^(550)+_[12|34]?

_1805_.*即匹配as_path在多个550后,选择12或者34接下来必须要有1805

元字符特殊字符

匹配内容

.

任何单一字符,包括空格

[]

在方括号中罗列的任何字符

[^]

除了在方括号中所罗列字符外的任何字符(^必须放在字符列表之前)

-

(连字符)在由连字符所分配的两个字符之间的任意字符

?

字符或模式出现0次或1次

*

字符或模式出现0次或多次

+

字符或模式出现1次或多次

^

一行的开始

$

一行的结束

|

由元字符特殊字符分隔的字之一

_

(下划线)一个逗号,行的开始,行的结束或空

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1