[CCIE笔记]BGP知识点汇总
2013-02-07 09:55
204 查看
BGP,边界网关型路由协议。用于在AS与AS之间传递路由信息。
BGP使用TCP单播传路由更新,TCP端口号179.
Idle状态为BGP进程的初始化状态,在该状态下为BGP的TCP连接设置重试连接定时器,默认60s。
2.Connect
Connect状态下的BGP进程初始化TCP连接,一旦TCP建立成功,则向邻居发送Open消息,并迁徙到OpenSent状态;若TCP建立失败,则迁徙到Active状态;
3.Active
Active状态下的BGP进程将尝试TCP连接,若TCP建立成功,则向邻居发送Open消息,并迁徙到OpenSent状态;若TCP建立失败,则迁徙到Idle状态,将重试连接定时器翻倍;
4.OpenSent
OpenSent状态下的BGP进程将等待邻居的Open消息,若收到邻居的Open消息,并检验合格后,则向邻居发送Keepalive消息,设置保持时间,根据对等体的AS号确定是eBGP连接还是iBGP连接,然后迁徙到OpenConfirm状态;
5.OpenConfirm
OpenConfirm状态下得BGP进程等待邻居的Keepalive消息,若收到邻居的Keepalive消息,则BGP连接建立,进入Established状态;若收到Notification消息,则断开BGP连接。
6.Established
BGP邻居建立成功,邻居之间互相交换Update、keepalive、Notification。
BGP属性与BGP路由决策进程
W > L > L > A > O > M > N > I
1.W Weight
cisco私有属性,仅仅在本路由器上有效,默认本地BGP路由weight为32768,从邻居学习到的BGP条目weight为0。
越大越优先;
2.L Local_preference
仅在本地AS内有效,不会传出本地AS。(如果在本地AS内有小联邦存在,Local_preference就是在这整个大的AS内都有效);
越大越优先,默认100;
3.L Locally injected
从本地network进来的路由条目更优;
4.A AS_PATH
BGP路由条目携带有它所经过的AS号码组成的AS_path;set as_path prepend只能在eBGP邻居之间做;
AS_path越短越优;
5.O Origin
IGP > EGP > ?(重分布)
6.M MED
默认仅仅比较来自同一个AS的BGP条目的MED(如果前面的属性都相等),而不会比较从不同AS学到的去往同一目的地的BGP条目的MED;越小越优
7.N Neighbor-Type
eBGP > iBGP
8.I IGP_to_next-hop
IGP到下一跳的metric最小的优;
=====================================================
2.NO_Export
携带有该NO_Export团体属性的BGP条目将不会传出本地AS(或者有联邦的大AS);
3.No_Advertised
携带有该NO_Advertised团体属性的BGP条目将不会被传递给任何一个BGP邻居(iBGP nor eBGP)
4.Local_AS
该属性与NO_Export属性基本类似,但是不同的是Local_AS属性的BGP路由将被限制在小联邦内,不会传给其他的联邦。
BGP同步原理:如果BGP同步被开启,那么在BGP路由器将从iBGP邻居学习到的BGP路由(这些路由是去往其他AS的)通告给eBGP邻居时,将会首先检查IGP是否知道这些BGP路由,如果IGP路由表中没有这些BGP路由信息,那么BGP路由器将不会将这些BGP路由条目放入路由表,也不会将其通告给eBGP邻居。
即IGP表与BGP表必须保持同步状态,BGP知道的网络,IGP必须事先就知道怎么走。
l 若从客户学习到的路由,则全部反射给自己的客户+非客户;
l 若从非客户学习到得路由,则仅反射给自己的客户;
l 所从eBGP邻居学习到得路由,则发射给全部BGP路由器(非客户+客户);
路由反射器及其客户被共同称为cluster。
为了防止可能出现的路由环路或其他路由差错,要求路由反射器不得更改其从客户接收到得路由的属性。
为了解决单点故障问题,一个cluster中可以有多个RR,客户与每台RR之间都有物理连接,而且RR之间也建立了对等关系。
路由反射器必须使用两种BGP路径属性:ORIGINATOR_ID和CLUSTER_LIST。
Cluster_list防环的机制:
当RR将来自客户的路由反射给非客户时,同时将其簇ID附加到Cluster_list中,如果cluster_list为空,则RR将创建一个Cluster_list。RR接收到Update消息后,就会检查cluster_list,如果发现其簇ID位于cluster_list中,就知道出现了路由环路,从而忽略该Update消息。
外部对等体将整个联盟视为单个AS,在整个联盟内部推荐使用保留的AS号(64512~65535)。
在BGP路由决策进程中有一条规则:联盟外部的eBGP路由优于联盟内部成员AS之间的eBGP路由,而成员AS之间的eBGP路由优于iBGP路由。
联盟与标准AS的另一个区别在于某些属性的处理方式不同,NEXT_HOP和MED属性可以不加修改的宣告给联盟其他AS的eBGP邻居,此外还可以传送LOCAL_PRE属性。
路由阻尼(route dampening)是一种阻止不稳定路由传播到整个互联网络的方法。
开启路由阻尼机制的路由器会为每条路由分配一个动态的特征值,用以反映该路由的稳定的程度。当某条路由出现翻动时,将会给该路由分配一个惩罚值,翻动次数越多,累加的惩罚之就越大,惩罚值超出预设的阈值(抑制门限suppress limit),该路由就被抑制,不再对外宣告该路由。惩罚值会在一个半衰期内降低为当前初值的一半,当降低至另一个阈值(重用门限reuse limit)后,才会再次对外宣告该路由。
最大抑制门限使得某路由在非常短的时间内发动十几次之后,不会将惩罚值累加到很高,使路由始终保持被抑制状态。
cisco路由器默认的各种路由阻尼变量:
l 惩罚值:1000/路由翻滚
l 抑制门限:2000
l 重用门限:750
l 半衰期:15分钟
l 最大抑制时间:60分钟或半衰期的4倍
BGP使用TCP单播传路由更新,TCP端口号179.
BGP的状态机与BGP packets
1.IdleIdle状态为BGP进程的初始化状态,在该状态下为BGP的TCP连接设置重试连接定时器,默认60s。
2.Connect
Connect状态下的BGP进程初始化TCP连接,一旦TCP建立成功,则向邻居发送Open消息,并迁徙到OpenSent状态;若TCP建立失败,则迁徙到Active状态;
3.Active
Active状态下的BGP进程将尝试TCP连接,若TCP建立成功,则向邻居发送Open消息,并迁徙到OpenSent状态;若TCP建立失败,则迁徙到Idle状态,将重试连接定时器翻倍;
4.OpenSent
OpenSent状态下的BGP进程将等待邻居的Open消息,若收到邻居的Open消息,并检验合格后,则向邻居发送Keepalive消息,设置保持时间,根据对等体的AS号确定是eBGP连接还是iBGP连接,然后迁徙到OpenConfirm状态;
5.OpenConfirm
OpenConfirm状态下得BGP进程等待邻居的Keepalive消息,若收到邻居的Keepalive消息,则BGP连接建立,进入Established状态;若收到Notification消息,则断开BGP连接。
6.Established
BGP邻居建立成功,邻居之间互相交换Update、keepalive、Notification。
BGP属性与BGP路由决策进程
W > L > L > A > O > M > N > I
1.W Weightcisco私有属性,仅仅在本路由器上有效,默认本地BGP路由weight为32768,从邻居学习到的BGP条目weight为0。
越大越优先;
2.L Local_preference
仅在本地AS内有效,不会传出本地AS。(如果在本地AS内有小联邦存在,Local_preference就是在这整个大的AS内都有效);
越大越优先,默认100;
3.L Locally injected
从本地network进来的路由条目更优;
4.A AS_PATH
BGP路由条目携带有它所经过的AS号码组成的AS_path;set as_path prepend只能在eBGP邻居之间做;
AS_path越短越优;
5.O Origin
IGP > EGP > ?(重分布)
6.M MED
默认仅仅比较来自同一个AS的BGP条目的MED(如果前面的属性都相等),而不会比较从不同AS学到的去往同一目的地的BGP条目的MED;越小越优
7.N Neighbor-Type
eBGP > iBGP
8.I IGP_to_next-hop
IGP到下一跳的metric最小的优;
=====================================================
BGP Community
1.Internet(默认,没什么特别的)2.NO_Export
携带有该NO_Export团体属性的BGP条目将不会传出本地AS(或者有联邦的大AS);
3.No_Advertised
携带有该NO_Advertised团体属性的BGP条目将不会被传递给任何一个BGP邻居(iBGP nor eBGP)
4.Local_AS
该属性与NO_Export属性基本类似,但是不同的是Local_AS属性的BGP路由将被限制在小联邦内,不会传给其他的联邦。
BGP同步
利用同步机制可以防止因IGP信息不足而使得数据包在转接AS中遇到路由黑洞。BGP同步原理:如果BGP同步被开启,那么在BGP路由器将从iBGP邻居学习到的BGP路由(这些路由是去往其他AS的)通告给eBGP邻居时,将会首先检查IGP是否知道这些BGP路由,如果IGP路由表中没有这些BGP路由信息,那么BGP路由器将不会将这些BGP路由条目放入路由表,也不会将其通告给eBGP邻居。
即IGP表与BGP表必须保持同步状态,BGP知道的网络,IGP必须事先就知道怎么走。
BGP route-reflector-client
原理:l 若从客户学习到的路由,则全部反射给自己的客户+非客户;
l 若从非客户学习到得路由,则仅反射给自己的客户;
l 所从eBGP邻居学习到得路由,则发射给全部BGP路由器(非客户+客户);
路由反射器及其客户被共同称为cluster。
为了防止可能出现的路由环路或其他路由差错,要求路由反射器不得更改其从客户接收到得路由的属性。
为了解决单点故障问题,一个cluster中可以有多个RR,客户与每台RR之间都有物理连接,而且RR之间也建立了对等关系。
路由反射器必须使用两种BGP路径属性:ORIGINATOR_ID和CLUSTER_LIST。
Cluster_list防环的机制:
当RR将来自客户的路由反射给非客户时,同时将其簇ID附加到Cluster_list中,如果cluster_list为空,则RR将创建一个Cluster_list。RR接收到Update消息后,就会检查cluster_list,如果发现其簇ID位于cluster_list中,就知道出现了路由环路,从而忽略该Update消息。
BGP confederation
联盟是另一种控制大量iBGP对等体的方法。外部对等体将整个联盟视为单个AS,在整个联盟内部推荐使用保留的AS号(64512~65535)。
在BGP路由决策进程中有一条规则:联盟外部的eBGP路由优于联盟内部成员AS之间的eBGP路由,而成员AS之间的eBGP路由优于iBGP路由。
联盟与标准AS的另一个区别在于某些属性的处理方式不同,NEXT_HOP和MED属性可以不加修改的宣告给联盟其他AS的eBGP邻居,此外还可以传送LOCAL_PRE属性。
BGP路由阻尼
路由翻滚(route flaps)是Internet不稳定的首要因素。当有效路由被重复宣告为无效、有效时就会产生路由翻滚现象。很显然,每次路由状态发生变化时,都要通过互联网宣告该变化情况,进而每台路由器都要重新计算路由,从而消耗了大量的网络带宽和路由器的CPU资源。路由阻尼(route dampening)是一种阻止不稳定路由传播到整个互联网络的方法。
开启路由阻尼机制的路由器会为每条路由分配一个动态的特征值,用以反映该路由的稳定的程度。当某条路由出现翻动时,将会给该路由分配一个惩罚值,翻动次数越多,累加的惩罚之就越大,惩罚值超出预设的阈值(抑制门限suppress limit),该路由就被抑制,不再对外宣告该路由。惩罚值会在一个半衰期内降低为当前初值的一半,当降低至另一个阈值(重用门限reuse limit)后,才会再次对外宣告该路由。
最大抑制门限使得某路由在非常短的时间内发动十几次之后,不会将惩罚值累加到很高,使路由始终保持被抑制状态。
cisco路由器默认的各种路由阻尼变量:
l 惩罚值:1000/路由翻滚
l 抑制门限:2000
l 重用门限:750
l 半衰期:15分钟
l 最大抑制时间:60分钟或半衰期的4倍
相关文章推荐
- [CCIE笔记]OSPF知识点汇总
- Android开发笔记(各错误或知识点汇总)(转)
- 课堂笔记:软件测试知识点汇总小结
- CCIE学习笔记 3---BGP 团体属性 community
- (39)Java学习笔记——集合知识点汇总
- CCIE学习笔记 4---BGP 前缀列表;ORF;ASpath-list
- 2014年软考程序员-常考知识点复习笔记【汇总篇】
- rabbit知识点汇总笔记
- CCIE理论课程笔记---BGP部分
- PMP笔记-项目范围管理知识点汇总
- 【我的笔记BLOG——小知识点汇总】
- CCIE学习笔记 2---BGP选路(属性值)
- CCIE学习笔记之BGP
- ExtJS4学习笔记六--一些小知识点
- PHP高级笔记汇总
- css3 2d转换3d转换以及动画的知识点汇总
- MCITP第三课――680课件2新知识点笔记
- (笔记)Linux下的CGI和BOA使用期间遇到的问题汇总
- Oracle11gR2学习笔记汇总