BGP协议学习总结
一…特性:
(1)BGP拥有丰富的选路参考属性,灵活组合可以实现路由的优选和避免路由环路,能够高效率的传递路由和维护大量的路由信息;
(2)BGP提供了丰富的路由策略,能够灵活的进行路由选路,并且能指导邻居按策略发布路由;
(3)BGP提供了路由聚合和路由衰减功能,用于防止路由振荡,有效提高网络的稳定性;
(4)BGP是一种距离矢量协议,将AS作为一个节点来计算;IGP协议以一个路由器为节点;
(5)BGP使用TCP(端口号179)作为底层传输协议,与每个BGP对等体形成独特的基于单播的连接 并支持BGP于BFD联动,提高了网络的可靠性。
二…AS
(1)BGP的AS是指在一个组织机构管辖下拥有相同选路策略的IP网络,BGP网络中的每个AS都被分配了一个唯一的AS号,用于区域不同的AS。
(2)BGP的AS号分为2字节和4字节的AS号,
2字节AS号范围1----65535的整数,
4字节AS号范围2----4 294 967 295的整数(可以有不同的表示格式)
RFC 5389规定在2字节的AS号中;1–64511是公网AS,64512—65534为私网AS,65535保留用于特殊用途。
三、BGP的状态机制
1、 idle状态:初始状态,不接受任何BGP的连接,等待start事件的产生,start事件产生后,系统开启connectRetry定时器。
2、 connect状态:连接状态,系统等待TCP连接建立完成,如果建立成功后,系统拆除connectRetry定时器,并发送open消息,此时进入open-sent状态。
3、 Active状态:活跃状态,。如果有start事件的产生,但是TCP连接并没有建立成功,此时系统进入Active状态。
4、 Open-sent:open消息发送状态,表示已经发送open消息,等待对等体的open消息。
5、 Open-confirm:open消息确认状态。收到对等体的open消息已经发送确认消息,等待对等体对自己的open消息确认的keepalive消息。
6、 Established:连接已建立,此时对等体可以发送update消息报文进行路由的更新了。
四、BGP的路由属性
1、 公认必遵属性:所有BGP路由器都能够识别这种属性,并且这种属性必须存在于update报文中,如果缺少这种属性,路由会出错,主要包括:origin属性、as-path属性、next-hop属性。
2、 公认可选属性:所有的BGP路由都能够识别这种属性,但是这种属性不要求一定存在于update消息中,主要包括:Local_pref属性等。
3、 可选传递:在AS之间具有可传递的属性,BGP路由器都可以不支持此属性,但它仍会接受有此属性的路由,并通告给其他的路由器,主要包括:commutity属性等。
4、 可选非传递属性:如果BGP路由器不支持此属性,则此属性可以被忽略,主要包括MED、CLUESTER_LIST属性。
Origin属性:路由的源属性,BGP路由的来源主要有三种,第一:通过引入IGP路由实现,即Incomeplete,第二:通过network方式注入BGP,即IGP,通过EGP协议学习,这个可以忽略了。
As-path:指示出了该路由信息经过了哪些AS路径,主要作用是保证AS间无环路,一般当本自治系统的路由离开自治系统的时候会添加本自治系统的号码,BGP路由选路的时候,会优先选择AS-PATH短的路由。
Next-hop属性:下一跳属性,需要注意的是当边界设备学习到EGP对等体发布的路由的时候,传递给IBGP对等体的时候,不会修改路由的下一跳。
5、 local_pref:本地优先级,当一个AS有多条到达外部AS的路径的时候,BGP会优先选择本地优先级高的路由,本地优先级只在本AS内有效,只能影响进入本AS的流量,不会影响离开本AS的流量。
6、 MED属性:BGP的MED属性相当于IGP协议的度量值,当有多条路由进入本AS的时候,用来告知EBGP对等体哪条路由最优,默认的MED值为100,值越小越优。
需要注意的是med值仅在两个AS之间传递,不会传递到第三个AS。
7、 preferred-value值:首选值,为从不同对等体接收的路由分配不同的preferred-value值,从而可以改变指定对等体学到路由的优先级,这是h3c的私有属性,改属性仅在本地有效,不随路由信息传播。
五。 BGP选路规则与负载分担
当到达同一目的地存在多条路由时,BGP采取如下策略进行路由选择:
如果此路由的下一跳不可达,忽略此路由
1.优选协议首选值(PrefVal)最高的路由 (华为设备特有属性)
2.优选本地优先级(Local_Pref)最高的路由
3.优选本地生成的路由
4.优选AS路径(AS_Path)最短的路由
5.比较Origin属性,依次优选Origin类型为IGP、EGP、Incomplete的路由
6.优选MED值最低的路由
7.优选从EBGP邻居学来的路由
8.优选到BGP下一跳IGP Metric较小的路由
当以上全部相同,则为“等价路由”,可以负载分担
注:AS_PATH必须一致;当负载分担时,以下3条原则无效
优选Cluster_List最短的路由
优选Originator_ID 或者Router ID最小的路由器发布的路由
比较对等体的IP Address,优选从具有较小IP Address的对等体学来的路由