BGP信息类型
1.Open
-包含hold time和BGP router ID
2.keeppalive
3.Update
-仅有一条路径信息(可以有多个网络)
-包含路径属性和网络
4.Notitfication
-检测到错误的时候
-信息发送之后,BGP连接关闭
总结
1.BGP是多宿主连接INTERNET恰当的办法
2.ISP提供的多宿主选项包含:
-仅通告1条默认路由
-1条默认路由和提供商自身的路由
-全路由
3.BGP是外部路由协议,用于自治系统之间,基于策略转发,而不是最佳路劲(最好的策略就被认为是最佳路劲)
BGP信息:
1. Open:用来建立BGP会话
2. Keepalive:用来维护TCP连接
3. Update:用来承载BGP路由信息,每一个BGP更新都会相应的附带一些BGP属性。
4. Notification:当BGP检测到错误之后,用于切断BGP会话。
BGP路由器鉴别机制:BGP Router-ID(RID):
1. 如果有逻辑接口,逻辑接口IP地址最大的IP地址作为RID
2. 如果只有物理接口,物理接口IP地址最大的IP地址作为RID
BGP邻居关系的建立:
1. 首先,当BGP路由器之间准备建立TCP连接,此时,BGP邻居关系的状态称之为空闲状态(idle)
2. 当TCP连接建立完成之后,此时BGP邻居关系的状态称之为活跃状态(active)
3. 当TCP双向连接建立之后,BGP路由器发送open包,open包包含的参数包含:AS号,keepalive计时器,RID等,这个状态叫做OpenSent状态
4. 对方给予open包,这个状态叫做OpenConfirm状态
5. 如果双方Open包参数协商成功,那么BGP邻居(会话)关系建立,达到 Established状态,如果不成功,可能回退到Active状态,再重新发送Open包,试图建立BGP会话。
3和4在CISCO IOS的show命令里是看不到的,统称为active状态。
1、 AS-PATH属性:AS-PATH属性越短,路径越优先。
2、 起源(Origin)属性:定义BGP更新是如何产生的:
(1)、起源于IGP:BGP更新是通过BGP进程下network命令所发布出来的。(i)
(2)、起源于EGP:BGP更新是通过EGP重分发进来的。(e)
(3)、起源不完整(incomplete):BGP更新是通过IGP(OSPF,EIGRP等)重分发进来的。(?)
如果同一个BGP更新有3种起源方式。IGP优先于EGP优先Incomplete
3、下一跳(NEXT_HOP)属性:到达目标AS的下一个AS(IP地址)。
BGP连接关系:
1.内部BGP(Internal BGP,IBGP)
建立BGP邻居关系的BGP路由器位于同一自治系统。
对于IBGP邻居,AS-PATH属性是不变,下一跳属性也不变。
2.外部BGP(External BGP,EBGP)
建立BGP邻居关系的BGP路由器位于不同自治系统。
对于EBGP,AS_PATH属性根据经过的AS号码向前叠加,下一跳属性也会改变。
对于EBGP而言:下一跳属性是宣告该EBGP更新的接口IP地址。
知名任意属性:
1、本地优先级(Local_pref):默认值100。用于同一个AS多出口的选路控制,值超高,也就越优先。本地优先级只在AS内比较(只在IBGP邻居间比较),用于影响出站流量。 本地产生的为空。
2、Atomic aggregate:用于通知邻居AS,说明执行汇总路由器的路由信息。地址信息以RID呈现。
可选传递属性:
1. Aggregator:定义了实行路由聚合(汇总)的路由器的IP地址AS号信息,地址信息是接口信息。
2. 社团属性(community):用于BGP的路由标记(打标签)。
可选非传递:
1. MED:默认值为0,值越低越优先,用于不同AS多出口的选路比较。用于影响进站流量。默认情况下,来自不同AS的MED属性不能相互比较。如果MED属性为空(NULL),CISCO设备把空值当成0,其他厂商把空值当成无穷大。
CISCO私有属性:权重(0-65535)
1. 本一产生的BGP更新权重默认是32768
2. 从邻居学过来的BGP更新权重默认为0,值越高,越优先。权重本地有效,不传递。影响出站流量。
BGP的选路法则:
(必须要下一跳可达)
如果一个BGP更新同时通过多个邻居学习到,就要进行一系列的选路比较法则。过程如下:
1. 先比较权重,权重高的越优先。(只对本地有效,只能影响自己不能影响别人)
2. 比较本地优先级,越高越优先,仅在同一个AS内的IBGP邻居比较。
3. 本地产生(下一跳属性为0.0.0.0)的优先于从邻居学过来的。
4. AS-PATH长度最短。(BGP:路径矢量协议)
5. 比较起源属性:IGP优先于EGP优先于Incomlete
6. 比较MED属性,越低越优先。
7. EBGP(AD=20)优先于IBGP(AD=200)
-------------------------------------------------分水岭------------------------------------------------------------
8a.如果是EBGP更新,那么最老(最先被学习到的)的EBGP更新更优先
8b.如果是IBGP更新,离邻居IGP度量值最小的路径优先。
-------------------------------------------------分水岭------------------------------------------------------------
9.比较BGP RID,越低越优先。
10.比较学习到BGP更新的接口地址,接口IP地址越小越优先。