IP路由-BGP技术介绍-D

上传人:I*** 文档编号:170317541 上传时间:2021-03-02 格式:DOCX 页数:20 大小:804.60KB
返回 下载 相关 举报
IP路由-BGP技术介绍-D_第1页
第1页 / 共20页
IP路由-BGP技术介绍-D_第2页
第2页 / 共20页
IP路由-BGP技术介绍-D_第3页
第3页 / 共20页
IP路由-BGP技术介绍-D_第4页
第4页 / 共20页
IP路由-BGP技术介绍-D_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《IP路由-BGP技术介绍-D》由会员分享,可在线阅读,更多相关《IP路由-BGP技术介绍-D(20页珍藏版)》请在金锄头文库上搜索。

1、,IP路由-BGP技术介绍技术介绍IP 路由目 录目 录BGP1BGP概述1BGP的消息类型2BGP的路由属性5BGP的选路规则9IBGP和IGP同步12大规模BGP网络所遇到的问题12BGP GR16MP-BGP17i技术介绍IP 路由BGPBGPBGP 概述BGP(Border Gateway Protocol,边界网关协议)是一种用于 AS(Autonomous System,自治系统)之间的动态路由协议。AS 是拥有同一选路策略,在同一技术管理部门下运行的一组路由器。早期发布的三个版本分别是 BGP-1(RFC 1105)、BGP-2(RFC 1163)和 BGP-3(RFC 1267

2、),当前使用的版本是 BGP-4(RFC 1771,已更新至 RFC 4271)。BGP-4 作为事实上的 Internet 外部路由协议标准,被广泛应用于 ISP(Internet Service Provider,因特网服务提供商)之间。 说明:下文中若不做特殊说明,所指的 BGP 均为 BGP-4。BGP 特性描述如下: BGP 是一种外部网关协议(Exterior Gateway Protocol,EGP),与 OSPF、RIP 等内部网关协议(Interior Gateway Protocol,IGP)不同,其着眼点不在于发现和计算路由,而在于控制路由的传播和选择最佳路由。 BGP

3、使用 TCP 作为其传输层协议(端口号 179),提高了协议的可靠性。 BGP 支持 CIDR(Classless Inter-Domain Routing,无类别域间路由)。 路由更新时,BGP 只发送更新的路由,大大减少了 BGP 传播路由所占用的带宽,适用于在 Internet 上传播大量的路由信息。 BGP 路由通过携带 AS 路径信息彻底解决路由环路问题。 BGP 提供了丰富的路由策略,能够对路由实现灵活的过滤和选择。 BGP 易于扩展,能够适应网络新的发展。发送 BGP 消息的路由器称为 BGP 发言者(BGP Speaker),它接收或产生新的路由信息,并发布(Advertise

4、)给其它BGP 发言者。当 BGP 发言者收到来自其它自治系统的新路由时,如果该路由比当前已知路由更优、或者当前还没有该路由,它就把这条路由发布给自治系统内所有其它 BGP 发言者。相互交换消息的 BGP 发言者之间互称对等体(Peer),若干相关的对等体可以构成对等体组(Peer group)。BGP 在路由器上以下列两种方式运行:17 IBGP(Internal BGP):当 BGP 运行于同一自治系统内部时,被称为 IBGP; EBGP(External BGP):当 BGP 运行于不同自治系统之间时,称为 EBGP。BGP 的消息类型1. 消息头格式BGP有 5 种消息类型:Open、

5、Update、Notification、Keepalive和Route-refresh。这些消息有相同的报文头,其格式如 图 1所示。图1 BGP 消息的报文头格式主要字段的解释如下: Marker:16 字节,用于标明 BGP 报文边界,所有比特均为“1”。 Length:2 字节,BGP 消息总长度(包括报文头在内),以字节为单位。 Type:1 字节,BGP 消息的类型。其取值从 1 到 5,分别表示 Open、Update、Notification、Keepalive 和 Route-refresh 消息。其中,前四种消息是在 RFC 1771 中定义,而 Type 为 5 的消息则是

6、在 RFC 2918 中定义的。2. OpenOpen消息是TCP连接建立后发送的第一个消息,用于建立BGP对等体之间的连接关系。其消息格式如 图 2所示。图2 BGP Open 消息格式主要字段的解释如下: Version:BGP 的版本号。对于 BGP-4 来说,其值为 4。 My autonomous system:本地AS 号。通过比较两端的AS 号可以确定是EBGP连接还是 IBGP 连接。 Hold time:保持时间。在建立对等体关系时两端要协商 Hold Time,并保持一致。如果在这个时间内未收到对端发来的 Keepalive 消息或 Update 消息,则认为 BGP 连接

7、中断。 BGP identifier:BGP 标识符。以 IP 地址的形式表示,用来识别 BGP 路由器。 Opt Parm Len(Optional Parameters Length):可选参数的长度。如果为 0则没有可选参数。 Optional parameters:可选参数。用于多协议扩展(Multiprotocol Extensions) 等功能。3. UpdateUpdate消息用于在对等体之间交换路由信息。它既可以发布可达路由信息,也可以撤销不可达路由信息。其消息格式如 图 3所示。Unfeasible routes lengthWithdrawn routesTotal pat

8、h attribute lengthPath attributesNLRI2 Octets N Octets 2 OctetsN Octets N Octets图3 BGP Update 消息格式一条 Update 报文可以通告一类具有相同路径属性的可达路由,这些路由放在 NLRI(Network Layer Reachable Information,网络层可达信息)字段中,Path Attributes 字段携带了这些路由的属性,BGP 根据这些属性进行路由的选择;同时 Update 报文还可以携带多条不可达路由,被撤销的路由放在 Withdrawn Routes 字段中。主要字段的解释如

9、下: Unfeasible routes length:不可达路由字段的长度,以字节为单位。如果为 0则说明没有 Withdrawn Routes 字段。 Withdrawn routes:不可达路由的列表。 Total path attribute length:路径属性字段的长度,以字节为单位。如果为 0则说明没有 Path Attributes 字段。 Path atributes:与 NLRI 相关的所有路径属性列表,每个路径属性由一个 TLV(Type-Length-Value)三元组构成。BGP 正是根据这些属性值来避免环路, 进行选路,协议扩展等。 NLRI(Network La

10、yer Reachability Information):可达路由的前缀和前缀长度二元组。4. Notification当BGP检测到错误状态时,就向对等体发出Notification消息,之后BGP连接会立即中断。其消息格式如 图 4所示。图4 BGP Notification 消息格式主要字段的解释如下: Error code:差错码,指定错误类型。 Error subcode:差错子码,错误类型的详细信息。 Data:用于辅助发现错误的原因,它的内容依赖于具体的差错码和差错子码, 记录的是出错部分的数据,长度不固定。5. KeepaliveBGP 会周期性地向对等体发出 Keepali

11、ve 消息,用来保持连接的有效性。其消息格式中只包含报文头,没有附加其他任何字段。6. Route-refreshRoute-refresh消息用来要求对等体重新发送指定地址族的路由信息。其消息格式如图 5所示。图5 BGP Route-refresh 消息格式主要的字段解释如下: AFI:Address Family Identifier,地址族标识。 Res.:保留,必须置 0。 SAFI:Subsequent Address Family Identifier,子地址族标识。BGP 的路由属性1. 路由属性的分类BGP 路由属性是一组参数,它对特定的路由进行了进一步的描述,使得 BGP

12、能够对路由进行过滤和选择。事实上,所有的 BGP 路由属性都可以分为以下四类: 公认必须遵循(Well-known mandatory):所有 BGP 路由器都必须能够识别这种属性,且必须存在于 Update 消息中。如果缺少这种属性,路由信息就会出错。 公认可选(Well-known discretionary):所有 BGP 路由器都可以识别,但不要求必须存在于 Update 消息中,可以根据具体情况来选择。 可选过渡(Optional transitive):在 AS 之间具有可传递性的属性。BGP 路由器可以不支持此属性,但它仍然会接收带有此属性的路由,并通告给其他对等体。 可选非过渡

13、(Optional non-transitive):如果 BGP 路由器不支持此属性,该属性被忽略,且不会通告给其他对等体。BGP路由几种基本属性和对应的类别如 表 1所示。表1 路由属性和类别属性名称类别ORIGIN公认必须遵循AS_PATH公认必须遵循NEXT_HOP公认必须遵循LOCAL_PREF公认可选ATOMIC_AGGREGATE公认可选AGGREGATOR可选过渡COMMUNITY可选过渡MULTI_EXIT_DISC (MED)可选非过渡ORIGINATOR_ID可选非过渡CLUSTER_LIST可选非过渡2. 几种主要的路由属性(1) 源(ORIGIN)属性ORIGIN 属性

14、定义路由信息的来源,标记一条路由是怎么成为 BGP 路由的。它有以下三种类型: IGP:优先级最高,说明路由产生于本 AS 内。 EGP:优先级次之,说明路由通过 EGP 学到。 incomplete:优先级最低,它并不是说明路由不可达,而是表示路由的来源无法确定。例如,引入的其它路由协议的路由信息。(2) AS 路径(AS_PATH)属性8.0.0.0AS 10D = 8.0.0.0(10)D = 8.0.0.0(10)AS 20AS 40D = 8.0.0.0(20,10)D = 8.0.0.0(30,20,10)D = 8.0.0.0(40,10)AS 30AS 50AS_PATH属性按

15、一定次序记录了某条路由从本地到目的地址所要经过的所有AS 号。当BGP将一条路由通告到其他AS时,便会把本地AS号添加在AS_PATH列表的最前面。收到此路由的BGP路由器根据AS_PATH属性就可以知道去目的地址所要经过的AS。离本地AS最近的相邻AS号排在前面,其他AS号按顺序依次排列。如 图6所示。图6 AS_PATH 属性通常情况下,BGP 不会接受 AS_PATH 中已包含本地 AS 号的路由,从而避免了形成路由环路的可能。同时,AS_PATH属性也可用于路由的选择和过滤。在其他因素相同的情况下,BGP 会优先选择路径较短的路由。比如在 图 6中,AS 50 中的BGP路由器会选择经过AS 40 的路径作为到目的地址 8.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 网络与通信

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号