BGP STP

.什么是 BGP

BGP(Border Gateway Protocol)即边界网关协议,是互联网上一个核心的去中心化自治路由协议。它通过维护IP路由表或‘前缀’表来实现自治系统(AS)之间的可达性,属于矢量路由协议。 BGP不使用传统的内部网关协议(IGP)的指标,而使用基于路径、网络策略或规则集来决定路由。因此,它更适合被称为矢量性协议,而不是路由协议。

BGP 分类

公认属性可以分为两类:

1、公认必遵(Well-Known Mandatory):必须包括在每个Update消息中。

2、公认任意(Well-Known Discretionary):可以包括在某些Update消息中。

其中可选属性不需要被所有的BGP路由器所识别,可选属性也可以分为两类:

1、可选过渡(Optional Transitive):BGP设备不识别此类属性但是依然会接收这些属性,并将其通告给其他的BGP对等体。

2、可选非过渡(Optional Nontreansitive):BGP设备不识别此类属性选择忽略这些属性,并将不会通告给其他的BGP对等体。

BGP 的黑洞是什么。如何打破

BGP路由黑洞产生的原因
控制层面可达,数据层面不可达; 路由条目在BGP邻居间通过单播正常传输;可以跳过未运行BGP协议的路由器;显示路由可达, 但数据层面访问流量必须经过这些没有运行BGP协议的路由器,实际无法通过;

非直连建邻到达控制层面路由条目可传递,递归计算路由可达;

而实际数据层面流量在经过没有运行BGP协议的路由器时无法通过,最终有去无回

路由黑洞解决方案
1、物理、逻辑拓扑全连 --  物理链路直连、或者vpn(实际工程不可实现)

2、邻居关系全连 – 网络中所有设备运行BGP(费用太高)

3、BGP重发布到IGP(LAB)(实验场景)

4、MPLS 多协议标签交换(推荐做法) 

BGP 四种包,六种状态机

1.open 包
用于标示自己,规定BGP运行的参数:

BGP version(2,3,4会协商最低的)
AS number,Hold time (默认180s,不一样时以短的为准)
BGP router-id (标识BGP路由器的产生,和OSPF一样)
optional parameters(可选支持,如多协议,认证等)
2.keeplive
用于维护 BGP peer 关系,默认60s,open 包协商成功就会发送 keeplive 包。

3.update
用于更新、通告路由;撤销路由通告,选路属性在 path attributes 属性

4.notification
BGP 出错报文,用于通告 BGP 错误。

状态机:

2、状态机:
(1)Idle state
在此状态下配置 neighbor 或重置邻居,BGP将初始化所有资源并打开 Connect Retry 计时器,初始化邻居的TCP连接,监听来自邻居初始化消息并将它的状态转未Connect状态。
为了防止差错的持续出现造成BGP邻居的摆动,Connect Retry 计时器会呈现级数级的增加第一次60s,下一次的为前一 次的2倍120s,再下次240s。

(2)Connect state
BGP在此状态需等到TCP连接完成以后再决定后续的动作;

如果TCP同步成功,BGP将connect Retry计时器清零,完成初始化并发送一个 open消息包给邻居并把自己的状态置为 Open send 状态 。
如果失败,BGP会继续监听邻居发出的连接,重置 Connect Retry 计时器并将自己状态转移到 Active 状态。
如果 Connect Retry 时间超时,计时器重新开始,再次试图与邻居建立TCP连接,BGP 保持 Connect 状态,出现其他事件转 入 Idle 状态。
(3)Active state
置于Active 状态时 BGP 试图与邻居建立一个 TCP 的连接;

如果 TCP 连接成功,BGP 将 Connect Retry 计时器清零,完成初始化,给邻居发送Open 消息并将状态置为 Open,hold 时间置为4mins 。
如果在 Active 状态,Connect Retry计时器超时回 Connect 状态并重置 Connect Retry 计时器。
如果试图与一个未知 IP 建立 TCP 会话,同时 Connect Retry 计时器重置,拒绝连接并保持 Active 状态。
任何一个事件都会导致重回 Idle。
(4)Open send state
在此状态,已经发送了 open 消息,BGP 需要等待邻居发送的 open 消息包;

收到open消息,如果发现有差错,将给邻居发送一个 notification 消息并将状态置为 Idle 。
如果收到 open 包消息没错,将发送 keeplive 包给邻居,并建立IBGP或者EBGP状态置为 Open confire state 。
如果收到TCP断开消息则断开BGP连接重置 Connect Retry 计时器,状态置为 Active 。
(5)Open confire state
在此状态下 BGP 会等待一个 keeplive 消息B包或者 notification 消息包;

如果收到一个 keeplive 消息包,会将状态置为 Establish 。
如果收到 notification 消息包,会将状态置为 Idle 并断开 TCP 连接。
如果 hold 计时器超时,检测到一个差错或者有 stop 事件法师娃,BGP 将给邻居发送一个 notification 并断开连接,之后状态置为 Idle 。
(6)Establish state
此状态下 BGP 对等体间的连接已经完全建立,此时可以交换 update, keeplive 和notification 等消息,若收到 notification,则会将状态置为 Idle 中断连接。

BGP 选路规则

1.优选Preferred-Value 属性值最大的路由。

2.优选Local_Preference 属性值最大的路由。

3.本地始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的。

即本地产生的BGP路由更优先,而本地的路由又分为普通路由与聚合路由,其中聚合路由更优先。

4.优选AS_Path属性值最短的路由。

5.优选Origin属性最优的路由。Origin属性值按优先级从高到低的排列是:IGP、EGP及Incomplete。

6.优选MED属性值最小的路由。

7.优选从EBGP对等体学来的路由(EBGP路由优先级高于IBGP路由)。

指学习到两条相同目的路由时,一条为IBGP路由,一条为EBGP路由,将优先选择EBGP路由。

8.优选到Next_Hop的IGP度量值最小的路由。

9.优选Cluster_List最短的路由。

经过反射簇次数最少的路由条目。

10.优选Router ID(Originator_ID)最小的设备通告的路由。

指学习到两条相同目的路由,其它属性一致,但通告的router-id(或反射后的路由Originator ID)不一致时,优先选择地址最小的通告者路由。

11.优选具有最小IP地址的对等体通告的路由。

BGP 的特点

BGP的特性

BGP具有一下特性:

(1)传输协议:TCP,端口号179;(2)BGP外部路由协议,用来在AS之间传递路由信息;

(3)是一种增强的路径矢量路由协议;(4)拥有可靠的路由更新机制;

(5)具备丰富的Metric度量方法;(6)无环路协议设计;

(7)为路由条目附带多种属性信息;(8)支持CIDR(无类别域间选路);

(9)丰富的路由过滤和路由策略;(10)无需周期更新;

(11)路由更新时只发送增量路由;(12)周期性发送keepAlive报文以保持TCP连接性;

如何打破 BGP 水平分割( IBGP.EBGP
.STP 的原理

一、生成树原理
当一个网络是环形的网络时,会形成广播风暴,所谓的广播风暴是指对于一个大家都不知道主机的MAC地址,所有交换机都会不停的相互广播,会占用大量的网络带宽,导致正常业务不能运行,甚至彻底瘫痪。而STP生成树形成一个树状结构的无环网络拓扑,使得网络拓扑物理有环,逻辑无环。

二、生成树协议工作原理
spanning(生成) tree(树) protocol ,简称STP,形成一个树状结构的无环网络拓扑。
所有交换机物理上是互相连接,会形成广播风暴,那么STP的作用就是解决广播风暴。
–避免广播风暴:所有交换机默认运行生成树协议,形成初始无环拓扑,一些端口会被阻塞
–链路备份:当现有的链路出了问题,交换机会自动启用之前被禁用的端口,形成一个新的无环拓扑

工作原理:
选择根网桥(Root Bridge)、选择根端口(Root Ports)、选择指定端口(Designated Ports)、每个STP实例中有一个根网桥,每个非根网桥上都有一个根端口,每个网段有一个指定端口,非指定端口被阻塞。

 

  • 41
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值