边界网关协议是什么,第1张

边界网关协议(BGP)是一种运行在TCP上的自治系统路由协议。BGP是唯一用于处理互联网规模网络的协议,也是唯一能够正确处理不相关路由域之间多种连接的协议。BGP系统的主要功能是与其他BGP系统交换网络可达信息。

边界网关协议(BGP)是一种运行在TCP上的自治系统路由协议。BGP是唯一用于处理互联网规模网络的协议,也是唯一能够正确处理不相关路由域之间多种连接的协议。BGP是建立在EGP的经验之上的。BGP系统的主要功能是与其他BGP系统交换网络可达信息。网络可达信息包括列出的自治系统的信息。这些信息有效地构建了自动化系统互连的拓扑结构,从而清除了路由环路。与此同时,政策决定可以在行政机关一级实施。

边界网关协议是什么,边界网关协议是什么,第2张

意译

(BGP/BGP 4:边界网关协议)

BGP-4提供了一种新的机制来支持无类域间路由。这些机制包括支持网络前缀的广告和取消BGP网络中“类”的概念。BGP-4还引入了一种支持路由聚合的机制,包括自治系统路径的收集。这些变化为建议的超网方案提供了支持。BGP-4采用路由矢量路由协议。配置BGP时,每个自治系统的管理员至少要选择一台路由器作为自治系统的“BGP代言人”。

1989年发布了主要的外部网关协议:边界路由协议(BGP),1995年发布了BGP-4的新版本。

BGP路由协议执行中使用的包有四种:开放包、更新包、保活包和通知包。

简介

BGP的结构和功能

BGP用于在不同自治系统(AS)之间交换路由信息。当两个自治系统需要交换路由信息时,每个自治系统必须指定一个运行BGP的节点代表自治系统与其他自治系统交换路由信息。该节点可以是主机。通常是路由器执行BGP。两个自治系统中使用BGP交换信息的路由器也称为边界网关或边界路由器。

因为它可能连接到不同的AS,所以一个AS中可能有多个边界路由器运行BGP。在同一个自治系统(AS)中的两个或多个对等体之间运行的BGP称为IBGP(内部/内部BGP)。在属于不同自治系统的对等体之间运行的边界网关协议被称为EBGP(外部/外部边界网关协议)。与自治系统边界上的其他自治系统交换信息的路由器称为边界/边缘路由器。在互联网操作系统(Cisco IOS)中,IBGP通告的路由距离为200,其优先级低于EBGP和任何内部网关协议(IGP)通告的路由。在其他路由器实现中,EBGP比IGP高,IGP比IBGP高。

BGP是一种外部网关路由协议,可以实现自治系统之间的无环路域间路由。BGP是与互联网广域网通信的主要路由协议。比如不同省份和国家之间的路由,大多依赖BGP协议。BGP可以分为IBGP(内部BGP)和EBGP(外部BGP)。BGP(或通信对等实体)的邻居关系是通过手动配置实现的,对等实体通过TCP(端口179)会话交换数据。BGP路由器定期发送19字节的保活消息来维持连接(默认周期为30秒)。在路由协议中,只有BGP使用TCP作为传输层协议。

IETF为BGP提出了多项建议,包括:

RFC 4271:目前使用的BGP协议版本叫BGP4。

RFC 1654:BGP 4协议的第一个规范。

RFC 1105、RFC 1163、RFC 1267、RFC 1771:BGP 4之前的BGP版本。

BGP消息类型和状态转换

BGP使用以下四种消息类型:

开放消息:开放消息是建立TCP连接后发送的第一条消息,用于建立BGP对等体之间的连接关系。

保持活动消息:BGP定期向对等方发送保持活动消息,以保持连接有效。

更新消息:更新消息用于在对等方之间交换路由信息。它不仅可以发布可达路由信息,还可以撤销不可达路由信息。

通知消息:当BGP检测到错误状态时,它会向对等方发送通知消息,然后BGP连接将立即中断。

BGP邻居建立的状态和过程如下:

空 Idle:是初始状态。协议激活后,它开始初始化,重置计时器,启动第一个TCP连接,开始侦听远程对等方启动的连接,并转到连接状态。。

连接:启动TCP连接,等待TCP连接成功的消息。如果TCP连接成功,则进入OpenSent状态;如果传输控制协议连接失败,进入活动状态。

主动):BGP总是试图建立TCP连接。如果连接计时器超时,它将返回到连接状态,如果连接成功,它将转到打开发送状态。

开放发送:已建立TCP连接,并已发送第一条开放消息,等待接收对方的开放消息,检查消息,发现错误发送通知消息,返回空闲状态。如果检查正确,发送保持活动消息,保持活动计时器开始计时,并转到打开确认状态。

打开确认:BGP等待Keepalive消息并重置保持计时器。如果收到保持活动消息,它将变为已建立状态,邻居关系协商完成。如果系统收到更新或保持活动消息,它将重新启动保持计时器。如果收到通知消息,BGP将返回空空闲状态。

已建立:邻居(对等)关系建立,路由器将与邻居交换更新消息并重置保持计时器。

BGP路由广告原理

BGP在做路由广告时应遵循以下原则:

当有多条路径时,BGP Speaker只选择最好的一条供自己使用(除了负载平衡和FRR)。

BGP发言人只向邻居通告自己的路由(最佳路由)。

BGP议长从EBGP获得的路线将向所有BGP邻居(包括EBGP和IBGP)公布。

BGP议长从IBGP获得的路由不会向其IBGP邻居公布(反射器除外)。

BGP议长从IBGP获得的路由是否向其EBGP邻居公布取决于IGP和BGP之间的同步。

当接收到来自对端的刷新消息并且该端的邻居支持刷新能力时,BGP说话人将向对等体通告其自己的BGP路由。

在GR过程中,当GR结束时,BGP发言人将向对等体通告所有BGP路由。

BGP属性

路由器发送关于目标网络的BGP更新消息,更新后的度量值称为路径属性。属性可以是可识别的或可选的,强制的或自由的,可传递的或不可传递的。属性也可以是部分的。无组织和组合都是合法的,路径属性可以分为四类:普遍接受的遵从、普遍接受的自决、可选的过渡和可选的不过渡。

可识别的属性:

认识到所有BGP实现都必须识别属性,这些属性传递给BGP邻居。

已确认的强制属性必须出现在路线描述中,已确认的自由属性不得出现在路线描述中。

可选属性:

不可识别的属性称为可选属性,可选属性可以是可传递的,也可以是不可传递的。

不是所有BGP实现都要求支持可选属性。

对于不受支持的可选传递属性,路由器会将它们原封不动地传递给其他BGP路由器。在这种情况下,属性被标记为部分。

对于可选的非传递属性,路由器必须删除它们,而不将其传递给其他BGP路由器。

(1)知名强制性

ORIGIN:该属性描述了源路由在BGP表中的位置。有三种可能的来源:IGP、EGP和不完整。路由器在多个路由过程中使用该信息。路由器选择ORIGIN类型最低的路径。

As _ path:指示更新消息中包含的路由信息通过的自治系统序列。

Next_HOP声明路由器获得的BGP路由的下一跳。对于EBGP会话,下一跳是通告路由的邻居路由器的源地址。

(2)知名全权委托

LOCAL _ PREF(LOCAL priority):LOCAL priority属性用于告诉自治系统中的路由器在有多条路径时如何离开自治系统。本地优先级越高,路由优先级越高。

ATOMIC _ AGGREGATE:ATOMIC AGGREGATE属性指示已经丢失的信息。

(3)可选传递

聚合器:该属性指示实现路由聚合的BGP路由器标识和聚合路由的路由器的AS号。

社区:这个属性是指一组路由器共享一个共同的属性。

(4)可选的非透明

多出口区分:该属性通知路由器而非自治系统选择哪条路径到达自治系统。它也被认为是路由的外部度量,低MED值表示高优先级。

发起者标识:路由反射器将附加到该属性,该属性携带该自治系统路由器的路由器标识,以防止环路。

CLUSTER_LIST:该属性显示采用的反射路径。

协议体系结构

标记(16字节)长度(2字节)类型(1字节)

标记–信息包含信息接收端的可预测值。

长度–信息长度,包括协议报头。

类型–信息类型。消息可以是:打开、更新、通知、保持活动。

打开用于与另一个相邻的BGP扬声器建立联系的群组

更新数据包用于发送有关路由的信息,并列出要撤销的多条路由。

保活包,用于确认开放包和定期确认邻居关系

用于传输检测到的错误的通知包

传输协议连接建立后,每端发送的第一条消息是OPEN消息。如果可以接收到打开消息,将返回用于发送打开消息确认的保持活动消息。一旦开放信息被确认,就交换更新、保持活动和通知信息。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 边界网关协议是什么

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情