ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:186.92KB ,
资源ID:6859663      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6859663.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(BGP培训教材.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

BGP培训教材.docx

1、BGP培训教材 BGP用户培训材料AS - Autonomous System 使用相同路由管理策略的区域 BGP - Border Gateway Protocol Defined in RFC 1771CIDR - Classless Interdomain Routing 无类型的域间选路EGP - Exterior Gateway Protocol Defined in RFC 904IGP - Internal Gateway Protocol AS内部的路由协议EGP - External Gateway Protocol AS外部的路由协议,对应于IGP一、概述BGP是一种自治系

2、统间的动态路由发现协议,它的基本功能是在自治系统间自动交换无环路的路由信息。与OSPF和RIP等在自治区域内部运行的协议对应,BGP是一类EGP(Edge Gateway Protocol)协议,而OSPF和RIP等为IGP(Interior Gateway Protocol)协议。BGP是在EGP应用的基础上发展起来的。EGP在此以前已经作为自治区域间的路由发现协议,广泛应用于NFSNET等主干网络上。但是,EGP被路由环路问题所困扰。BGP通过在路由信息中增加自治区域(AS)路径的属性,来构造自治区域的拓扑图,从而消除路由环路并实施用户配置的策略。同时,随着INTERNET的飞速发展,路由

3、表的体积也迅速增加,自治区域间路由信息的交换量越来越大,都影响了网络的性能。BGP支持无类型的区域间路由CIDR(Classless Interdomain Routing),可以有效的减少日益增大的路由表。BGP运行时刻分别与本自治区域外和区域内的BGP伙伴建立连接(使用Socket)。与区域内伙伴的连接称为IBGP(Internal BGP)连接,与自治区域外的BGP伙伴的连接称为EBGP(External BGP)连接。本地的BGP协议对IBGP和EBGP伙伴使用不同的机制处理。二、BGP协议分析1、BGP协议的层次位置BGP,OSPF,RIP,TELNET,SNMPSOCKETTCP,

4、UDPIP,IPXPPP,X.25等操作系统硬件接口及驱动BGP使用Socket服务建立连接,端口号为179。2、BGP的消息结构BGP有4种类型的消息。分别为OPEN,UPDATE,KEEPALIVE和NOTIFY。它们有相同的消息头。OPEN消息结构:消息头加如下结构 :Version :(1字节) 发送端BGP版本号My Autonomous System :(2字节无符号整数) 本地AS号Hold Time :(2字节无符号整数) 发端建议的保持时间BGP Identifier :(4字节) 发端的路由器标识符OptParmLen :(1字节) 可选的参数的长度Optional Par

5、ameters :(变长) 可选的参数KEEPALIVE消息结构KEEPALIVE消息只有一个消息头。NOTIFY消息结构消息头加如下结构:0 1 2 3 40 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7ErrorcodeErrsubcodeDataErrorcode :(1字节) 错误代码错误代码错误类型1消息头错2OPEN消息错3UPDATE消息错4保持时间超时5状态机错6退出Errsubcode :(1字节) 辅助错误代码,略。Data :(变长) 依赖于不同的错误代码和辅助错误代码。用于诊断错误原因。UPD

6、ATE消息结构Unfeasible Routes Len :(2字节无符号整数) 不可达路由长度Withdrawn Routes :(变长) 退出路由Path Attribute Len :(2字节无符号整数) 路径属性长Path Attributes :(变长) 路径属性(以下详细说明)Network Layer Reachability Information :(变长) 网络可达信息(信宿)其中退出路由和信宿地址的表示方法为一 的二元组。length一个字节,指示地址前缀的长度。prefix为地址前缀,长度1至4字节。3、BGP协议路由属性的应用路由是用信宿地址来标识的。路由的属性即UP

7、DATE消息中的路由属性部分,是用来帮助BGP进行路由选择的。它们在本地BGP选择路由时有不同的作用。当BGP通过不同的路由源收到了相同信宿地址的路由时,需要进行路由选择。(1)ORIGIN起点属性起点属性表示路由相对于发出它的自治系统的路由更新起点。IGP BGP把聚合路由和用network定义的路由看成是AS内部的,起点类型设置为IGP。EGP BGP把通过EGP得到的路由的起点设置为EGP。INCOMPLETE BGP把通过其它IGP协议引入的路由的起点设置为INCOMPLETE。这是因为引入的路由可能从任何地方来,如OSPF的ASE路由。BGP在其它因素相同的情况下,按IGP,EGP,

8、INCOMPLETE的顺序选择路由,因为IGP路由的位置更确定,EGP次之,而INCOMPLETE则很不确定。(2)AS路径属性路由的AS路径属性记录了此路由所穿过的所有AS区域,它可以避免路由环路的出现,即当BGP把一条路由通告给一个此路由曾穿越过的AS自治区域时,此AS又把这条路由当作新路由来处理了,这也正是困扰EGP问题。在加入了AS路径属性后,BGP可以根据AS路径属性中的信息来消除路由环路。BGP不会接受AS路径属性中包含了本AS自治区域号的路由,因为此路由已经被本自治区域处理过了,从而避免了生成路由环路的可能。为此,BGP在向EBGP对端,即向本AS外部通告一条路由时,要把本AS自

9、治区域的AS号加入的AS路径属性中,以记录此路由通过的AS区域信息。同时,AS路径属性也在影响路由选择。显然,在其它因素相同的情况下,应该选择AS路径较短的路由,因为它穿过了较少的自治区域。这一点并不一定精确,因为穿过了的3个由高速网络构成的AS区域的路由,有可能比穿过了2个低速网络的AS区域的路由更好。这种情况要求恰当的配置,以在其它的因素中影响路由的选择。协议不可能自动完成一切,有经验的工程师的合理的配置对优化网络更重要。在AS路径属性中,AS_SEQUENCE属性的AS路径值表示此AS路径是有顺序关系的。通过它可以在本生成AS自治区域的拓扑结构图。当路由被发送到AS自治区域外时,一般要把

10、本区域AS号加入到AS_SEQUENCE序列后。AS_SET属性是用于路由聚合的,它的AS路径信息无顺序关系,无法生成拓扑结构图,但用于检测AS路由环路是足够用的。(3)NEXTHOP下一跳属性对于EBGP,下一跳属性是本地BGP与对端连接的端口地址。如上图,RTC向RTA通过EBGP通告路由170.10.0.0时,下一跳属性为170.10.20.2;RTA向RTC通告150.10.0.0的路由时,下一跳为170.10.20.1。对于IBGP,本地BGP将从EBGP得到的路由的下一跳属性,直接注入IBGP的UPDATE路由更新消息。上图中,RTA通过IBGP向RTB通告路由170.10.0.0

11、时,下一跳仍然为EBGP中的170.10.20.2,而不是150.10.30.1。对于RTB,此下一跳信息最终应该通过IGP得到。对于可以多路访问的网络,下一跳情况有所不同。在上图中,RTA和RTC运行BGP,AS300中IGP为OSPF。OSPF通告RTC通过下一跳170.10.20.3可以到达网络180.20.0.0。RTC在通过EBGP通告RTA路由180.20.0.0时,发现本地端口170.10.20.2和此路由的下一跳170.10.20.3为同一共享子网,因此使用170.10.20.3作为EBGP通告路由的下一跳,而非170.10.20.2。这种情况,对于NBMA非广播多点可达网络不

12、适用。将以太网替换为FrameRelay桢中继网和其它NBMA网络,箭头指示方向有PVC永久虚电路。此时,RTC也发送下一跳为170.10.20.3的180.20.0.0路由给RTA,就会出现问题:RTA到RTD无可达链路!为了避免此问题,请使用Next-hop-self命令,强制RTA将路由180.20.0.0的下一跳设置为本地BGP端口地址170.10.20.2。(4)MED属性MULTI_EXIT_DISCRIMINATOR就是一条路由的Metric。当某AS自治区域有多个人口点时,此属性用来帮助选择一个较好的人口点。即,选择MED较小的人口点。如上图,网络路由180.10.0.0从RT

13、C、RTD和RTB出发,通过EBGP通告给RTA。其中RTC的MED为120,RTD的MED为200,RTB的MED为50。缺省情况下,BGP只比较同一AS区域发送的MED,这是因为不同AS自治区域的度量Metric的方法可能不同,只有相同AS区域的Metric才有可比性。因此RTA选择MED较小的RTC发送的路由,将2.2.2.1作为路由180.10.0.0的下一跳(RTB的MED更小,但AS路径较长)。MED属性不会通过AS区域传播,因此,RTA发送路由180.10.0.0时的MED设置为其缺省的0。也可以使用always-compare-med命令来强制比较同一路由的所有的MED。上例中

14、,最终会选择RTB作为路由180.10.0.0的下一跳,因为它具有最小的MED。总之,MED可以帮助本地BGP选择到达某一个AS区域的人口点。(5)LOCALPREFERENCE本地优先级属性本地优先级属性用来帮助AS区域内部的路由器,选择到AS区域外部使用的较好的出口。如上图例,当路由170.10.0.0通过RTC和RTD发送到AS256内部时,RTC将本地优先级设置为150;RTD将本地优先级设置为200。这可能是因为RTC连接的AS区域具有较高的速度或收费较低。因此,AS256内部的路由器选择本地优先级较高的RTC作为得到网络170.10.0.0的下一跳。和MED相反,较高的本地优先级的

15、路由被选择。和MED对应,本地优先级用来帮助本地BGP在不同的相邻AS区域中选择较好的退出路由。在一个自治区域中的所有BGP路由器必须使用IBGP连通起来,已相互通过比较某条路由的本地优先级来就到达此信宿的AS出口点达成一致。(6)ATOMIC_AGGREGATE元聚合属性此属性用来表示一条路由是在某处被聚合形成的,丢失了部分信息。(7)AGGREGATOR聚合者属性此属性记录了一条路由被聚合的路由器的AS号和IP地址。综合起来,本地BGP路由选择的过程为:(1)如果此路由的下一跳不可达,忽略此路由;(2)选择本地优先级较大的路由;(3)选择本地路由器始发的路由(本地优先级相同);(4)选择A

16、S路径较短的路由;(5)依次选择起点类型为IGP,EGP,INCOMPLETE类型的路由;(6)选择MED较低的路由;(7)选择RouterID较低的路由。4、BGP协议的特点BGP是一种AS(自治区域)外部路由协议,主要负责本自治区域和外部的自治区域间的路由可达信息的交换。因此,它所关心的拓扑结构是AS(自治区域)的拓扑结构,BGP通过UPDATE消息中路由的AS属性来构造AS的拓扑结构图,进一步通过此结构图来选择路由。与OSPF,RIP等IGP协议相比,BGP的拓扑图要更抽象和粗略一些。因为IGP协议构造的是AS内部的路由器的拓扑结构图。IGP把路由器抽象成若干端点,把路由器之间的链路抽象

17、成边,根据链路的状态等参数和一定的度量标准,每条边配以一定的权值,生成拓扑图。根据此拓扑图选择代价(两点间经过的边的权值和)最小的路由。这里有一个假设,即路由器(端点)转发数据包是没有的代价的。而在BGP中,拓扑图的端点是一个AS区域,边是AS之间的链路。此时,数据包经过一个端点(AS自治区域)时的代价就不能假设为0了,此代价要由IGP来负责计算。这体现了EGP和IGP是分层的关系。即IGP负责在AS内部选择花费最小的路由,EGP负责选择AS间花费最小的路由。BGP作为EGP的一种,选择路由时考虑的是AS间的链路花费,AS区域内的花费(由BGP路由器配置)等因素。如上所述,内部网关协议IGP需

18、引入AS自治区域内部网络拓扑图其它各点的路由,同时向其它端点发送本端点(路由器)所知的路由,如直接路由、静态路由等。作为外部网关协议,BGP发送和引入路由的单位是整个AS自治区域,即BGP要发送本地路由器所在的AS内部的所有路由,引入其它AS自治区域的所有路由(假设不使用路由策略控制发送和引入)。其路由数量显然要远远大于IGP发送和引入的路由数量。因此,类似于IGP那样定时对外广播路由信息是不可取的。BGP采用发送路由增量(Incremental)的方法,完成全部路由信息的通告和维护:初始化时发送所有的路由给BGP对端(BGP Peer),同时在本地保存了已经发送给BGP对端的路由信息。当本地

19、的BGP收到了一条新路由时(如通过IGP注入了新路由或加入了新的静态路由),与保存的已发送信息进行比较,如未发送过,则发送,如已发送过则与已经发送的路由进行比较,如新路由花费更小,则发送此新路由,同时更新已发送信息,反之则不发送。当本地BGP发现一条路由失效时(如对应端口失效),如此路由已发送过,则向BGP对端发送一个退出路由消息。总之,BGP不是每次都广播所有的路由信息,而是在初始化全部路由信息后只发送路由的变化量(增量)。这样保证了BGP和对端的最小通信量,但同时增加了BGP的复杂程度。因为对于IGP,本地路由协议只需发送发送时刻所知的全部路由,而不保存任何已发送信息,路由选择的工作由对端

20、来完成;而BGP必须为每个BGP对端保存已经发送的路由信息,以便发送一条新路由前确认其是否真的应该发送。为了减小路由表的体积和发送路由的通信量,BGP还支持CIDR(Classless InterDomain Routing)。它使用带有较短的掩码(相对于自然掩码)的路由来在一条路由中表达更多的路由信息。如从202.112.1.0/24202.112.254.0/24可以使用202.112.0.0/16表示,从而减小了路由表的体积和发送路由信息时的网络流量。同时,作为AS自治区域间的路由协议,由于政治的、经济的等原因,BGP需要按照不同的路由的属性控制路由的发送和引入。因此,BGP有丰富的路由

21、策略控制手断。在本地BGP路由变化时,也使用UPDATE消息修正对端BGP的路由表。经过一段时间的路由信息交换后,本地BGP和对端BGP都无新路由通告,趋于稳定了。此时要定时发送KEEPALIVE消息以保持BGP连接的有效性。对于本地BGP,如果在超过保持时间的时间内,还未收到任何对端BGP消息,就认为此BGP连接已经无效,将此BGP连接断开。当本地BGP在运行中发现错误时,要发送NOTIFY消息通告BGP对端。如对端BGP版本本地不支持,本地BGP收到了结构非法的UPDATE消息等。本地BGP退出BGP连接时也要发送NOTIFY消息。BGP收到NOTIFY消息后,要作相应处理。三、BGP配置

22、任务列表BGP配置任务主要包括: 启动和关闭BGP 配置BGP本地参数 复位BGP连接 定义访问列表、AS路径列表和路由映射 配置neighbor 配置BGP同伴组 BGP与IGP交互以下各节中引用的参数范围如下表所示:表7-59 BGP配置参数范围参数名称参数范围as-number065535metirc0 4294967295perference2147483648 2147483647holdtime6065535asp-list-number1200list-number1200version-number24seq-number065535as-regular-expression参

23、见RFC1164 section 4.2names字符串(有效长度32位)3. 启动和关闭BGP启动BGP协议时应指定本地的自治区域号(AS号)。启动BGP后,本地路由器不接收相邻路由器的BGP连接请求。要使本地路由器主动向相邻路由器发出BGP连接请求,请参照Neighbor的配置。关闭BGP协议时,BGP协议将切断所有已经建立的BGP连接。表7-60 启动和关闭BGP操作命令启动BGP,并进入BGP协议配置模式router bgp as-number退出BGP协议配置模式exit关闭BGPno router bgp4. 配置BGP本地参数BGP协议完成的主要任务之一是向其它的自治区域(AS)

24、广播本自治区域中的网络可达信息。为了完成此任务,BGP需要和内部网关协议(IGP,如RIP和OSPF等)协同工作。一个简单的方法是将特定的IGP协议发现的网络路由全部注入到BGP的路由表中,再由BGP发送出去(请参见“BGP与IGP交互”)。(1)定义和取消本地网络但有时只需要发送部分网络路由。此时,用network命令指定要发送的网络,同时也可以指定此网络路由的掩码和路由映射。表7-61 定义和取消本地网络操作命令定义本地网络network ip-address mask mask routemap map-name 取消本地网络的定义no network ip-address(2)配置本地

25、优先级当一个运行BGP的路由器通过不同的内部伙伴(Internal Peer)得到目的地相同、下一跳不同的路由时,将根据不同路由的本地优先级进行选择,选取本地优先级最高的路由为到达此目的地的路由。用户可以使用以下命令配置BGP路由的本地优先级:表7-62 配置本地优先级操作命令配置本地优先级bgp default local-preference preference使用缺省的本地优先级no bgp default local-preference(3)指定是否允许BGP生成默认路由表7-63 允许或禁止BGP生成默认路由操作命令允许BGP生成默认路由default-information o

26、riginate禁止BGP生成默认路由no default-information originate(4)配置MED当一个运行BGP的路由器通过不同的外部部伙伴(External Peer)得到目的地址相同、下一跳不同的路由时,将根据不同路由的MED(Multi-Exit Discriminator)进行选择,选取MED最低的路由为到达此目的地的路由。表7-64 配置MED操作命令配置MEDdefault-metric metric使用缺省的MEDno default-metric(5)配置BGP定时器当一台路由器与对端路由器建立了BGP连接后,定时向对端发送Keepalive消息,以指示连

27、接通路正常,可以保持连接。路由器在一定的时间内没有收到对端的Keepalive消息(或其它类型的消息)即认为此BGP连接已经被中断,从而退出此BGP连接,并对从此BGP连接收到的路由进行相应的处理。因此,RFC中规定的Keepalive消息的间隔时间和BGP连接保持时间是BGP协议机制中比较重要的参数。用户可通过以下命令配置这些参数。表7-65 配置BGP定时器操作命令配置BGP定时器timers bgp keepalive-interval holdtime使用缺省的定时器值no timers bgp5. 复位BGP连接当BGP有关的参数被用户改变时,由于相关信息已经发送或是在BGP建立连接

28、时由BGP连接的双方协商的,因此须切断当前的BGP连接,待重新建立起连接后才能生效。用户可以使用以下命令了达到此目的:表7-66 复位BGP连接操作命令复位一个neighborclear ip bgp ip-address复位全部neighborclear ip bgp *6. 定义访问列表、AS路径列表和路由映射本节描述的访问列表(Access List)、AS路径列表和路由映射(Routemap)是为以下的Neighbor配置做准备。(1) 定义访问列表请参见防火墙的配置。(2)定义AS路径列表每个AS路径列表是用数字来标识的。表7-67 定义AS路径列表操作命令定义AS路径列表ip as

29、-path access-list list-number permit | deny as-regular-expression删除指定的AS列表no ip as-path access-list list-number (3)定义路由映射(Routemap)路由映射是BGP实施路由策略的重要部分。它根据路由属性的匹配结果,决定对路由属性的操作。即完成用户指定的将特定条件的路由集合的属性修改的任务。每个路由映射中可以有若干映射规则,用序列号标识。在进行路由映射时,按序列号从小到大的顺序进行匹配,遇到第一个匹配的映射规则,就完成此次的路由映射过程。如未匹配任何一条映射规则,则此路由的发送和接收

30、等操作被取消。表7-68 定义路由映射(Routemap)操作命令进入路由映射配置模式route-map map-name permit | deny seq-number退出路由映射配置模式exit删除指定的路由映射no route-map map-name定义匹配规则。表7-69 定义匹配规则操作命令匹配AS路径正则表达式match as-path asp-list-num 取消AS路径表达式匹配no match as-path匹配端口match interface Ethernet | Serial | Null interface-number 取消端口匹配no match interface匹配地址match ip address access-list-num 取消地址匹配no match ip address匹配metricmatch metric metric 取消metric匹配no match metric定义赋值规则。表7-70 定义赋值规则操作命令设置AS号set as-path prepend as-number取消AS号的设置no set as-path设置下一跳set ip next-hop ip-address取消下一跳的设置no set ip next-hop设置本地优先级set local-preference pr

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1