资源描述
单击此处编辑母版标题样式,HUAWEI TECHNOLOGIES CO.,LTD.,Page,单击此处编辑母版文本样式,单击此处编辑母版文本样式,单击此处编辑母版文本样式,单击此处编辑母版文本样式,All rights reserved,谢谢,DP500005,BGP,路由协议,ISSUE 1.0,学习完此课程,您将会:,掌握,BGP,协议的基本原理,掌握,BGP,协议的路由属性及其应用,目 标,Page,第,1,章,BGP,路由协议的原理,第,2,章,BGP,路由属性,内容介绍,Page,BGP协议概述,BGP,是“唯一”的,EGP,路由协议,主要用来在,AS,之间传递路由信息,在,AS,之间是一种距离矢量的路由协议,应用特定的属性避免环路的发生,路由信息携带丰富的属性,传送协议:,TCP,,端口号,179,支持,CIDR,(无类别域间选路),路由更新:触发更新,只发送增量路由,-(,周期性通过,keepalive,包发送消息,.),丰富的路由过滤和路由策略,Page,BGP,协议基本概念(一),什么是自治系统(,AS,)?,自治系统指由同一个技术管理机构管理、使用内部路由策略的一些路由器的集合。每个自治系统都有唯一的自治系统编号。自治系统的编号范围是,1,到,65535,,其中,1,到,64511,是注册的因特网编号,64512,到,65535,是专用网络编号。,Page,BGP,协议基本概念(二),为什么引入自治系统这一概念?,引入自治系统的基本思想就是通过不同的编号来区分不同的自治系统。,自治系统内部的路由协议,IGP,如,OSPF,、,IS-IS,、,RIP,、,EIGRP,(,cisco,专有),自治系统之间的路由协议,BGP,如:,EGP,、,BGP,BGP,的主要目标是提供一种能够保证自治系统间无环路的路由选择信息交换的域间路由系统。,Page,没有,BGP,的日子里,OSPF,RIP,ISIS,EIGRP,Page,有了,BGP,之后,链路层协议,生成,路由,,IGP,收集,路由,,BGP,加工,路由,OSPF,RIP,ISIS,EIGRP,BGP,BGP,BGP,Page,BGP,协议基本概念(三),何时选择,BGP?,何时不选择,BGP?,下列条件至少存在一个的时候,才应该使用,BGP,。,自治系统系统允许数据包穿过它到达其他自治系统。,自治系统多条外部连接,多个运营商之间;拥有多条到互联网的连接时。,自治系统必须对进入和离开,AS,的数据流进行控制。,下列情况,不需要使用,BGP,自制系统和系统自治系统或,Internet,间仅有单一连接时。,设备内存和,CPU,性能不佳,无法运行,BGP,时。,没有能力实施路由过滤或,BGP,路径选择时。,自治系统间带宽较低时。,Page,BGP工作机制,(一),Page,AS,的分类,单口,AS,(,stub AS,),多归路非过渡,AS,(,multihomed,AS,),过渡,AS,(,transit AS,),Page,BGP工作机制,(二),BGP,邻居刚建立时,发送整个,BGP,路由表交换路由信息,之后为了更新路由表只交换更新消息(,update message,)。,系统在运行过程中,通过接收和发送,keep-alive,消息来检测相互之间的连接是否正常的。,一般情况下一条路由由自治系统内部的某种内部路由协议发现和计算产生,由自治系统边界路由器,(ASBR),通过,EBGP,连接传播到其它自治系统中。,路由在传播过程中可能会经过若干个自治系统,这些自治系统称为过渡自治系统(如:,AS5,)。若这个自治系统有多个边界路由器,这些路由器之间运行,IBGP,来交换路由信息。另外一种自治系统称为,Stub AS,(如:,AS1,),其内部只有一个,ASBR,通过,EBGP,连接外部,同外部其他,AS,的通信要靠过渡自治系统来转接。,Page,BGP,两种邻居,IBGP,和,EBGP,EBGP,EBGP,RTB,RTC,IBGP,RTA,RTD,RTE,Page,BGP路由通告原则,存在多条路径时,,BGP Speaker,只选取最优的使用(非负载分担),BGP,Speaker只把自己使用的路由通告给相邻体,BGP Speaker,从,EBGP,获得的路由会向它所有,BGP,相邻体通告(包括,EBGP,和,IBGP,),BGP,Speaker从IBGP获得的路由不向它的IBGP相邻体通告,(如果存在,RR,呢),BGP Speaker,从,IBGP,获得的路由是否通告给它的,EBGP,相邻体要依,IGP,和,BGP,同步的情况来决定,连接一建立,,BGP Speaker,按照以上原则,把自己所有,BGP,路由通告给新相邻体,Page,BGP路由,表与系统路由表的关系,存在多条路径时,,BGP Speaker,只选取最优的使用(非负载分担时),BGP Speaker,只把自己使用的最优路由通告给相邻体,BGP,Speaker只把,自己使用的最优的路由加入到路由表中,Page,BGP路由通告原则,BGP,Speaker从IBGP获得的路由不向它的IBGP相邻体通告,(如果存在,RR,呢),AS 42,AS 12,AS 14,R-14,R-12,RTA,RTB,RTD,RT-C,X 12,EBGP,IBGP,X 12,X 12,Page,BGP同步,BGP Speaker,从,IBGP,获得的路由是否通告给它的,EBGP,相邻体要依,IGP,和,BGP,同步的情况来决定,EBGP,EBGP,RTB,RTC,IBGP,RTA,RTD,RTE,RTF,S0:1.1.1.2/24,E0:10.1.1.1/24,S0:1.1.1.1/24,S1:2.1.1.2/24,AS100,AS200,AS300,S0:2.1.1.1/24,Page,同步规则的基本需求,BGP,同步规则的目的,:,为防止一个,AS(,不是所有的路由器都运行,bgp,),内部出现路由黑洞,即向外部通告了一个本,AS,不可达的虚假的路由,.,BGP,同步规则的基本需求,如果一个,AS,内部存在非,bgp,路由器,那么就出现了,bgp,和,igp,的边界,需要在边界路由器将,bgp,路由发布到,igp,中,才能保证,AS,所通告到外部的,bgp,路由,在,AS,内部是连通的,.,实际上是要求,bgp,路由和,igp,路由的同步,.,Page,BGP,同步的解决方案,1,、,IBGP,全互联,AS,内部的所有路由器都运行,BGP,就可以关闭所有路由器的同步,而不影响路由的通告和连通性,.,随之产生的问题,:,当,as,内部路由器数量很多时,需要建立,N*(N-1)/2,个,ibgp,会话,带来过度的系统开销,扩展性不好,.,15,个路由器的,AS,需要建立,15(15-1)/2=105,个,ibgp,会话,Page,bgp,同步的解决方案,2.,路由反射器,AS,内部的所有路由器都运行,bgp,在,AS,内部部署路由反射器,构建,hub and spoke,的,ibgp,(,会话数为,N-1),然后关闭所有,bgp,路由器的同步,.,问题,:,此方案可以使,bgp,路由器传递,ibgp,路由到,ebgp,并保证,bgp,路由的连通性,.,但是对物理拓扑有很大的限制,15,个路由器的,AS,具有冗余的,RR,方案,(33,个,ibgp,会话,),Page,BGP,路由反射,路由反射器,(Route Reflector),AS 101,AS 100,AS 102,IBGP,EBGP,RR,Client,Client,Client,Page,三,.,bgp,同步的解决方案,3.bgp,联盟,:AS,内部的所有路由器都运行,bgp,把一个原始的,AS,基于网络拓扑划分为若干个,sub-AS(,又称联盟,AS),联盟,AS,之间的,bgp,邻居叫做联盟,ebgp,不需要,full mesh,bgp,会话,;,在每个联盟,AS,内部运,full mesh,ibgp,或者,hub and spoke,反射器,然后就可以关闭所有路由器的,bgp,同步功能,.,结论,:,bgp,联盟结合路由反射器的方式,较好的解决了,bgp,的同步规则带来的需求,是最为有效的解决方案,.,Page,BGP,联盟,联盟,(Confederation),AS 100,IBGP,EBGP,AS 1001,AS 1003,AS 1002,AS 101,EBGP_Confed,Page,成为BGP路由的途径之一:纯动态注入,OSPF,发现路由,18.0.0.1/8,把,IGP(OSPF),发现的路由纯动态地注入到,RTB,的,BGP,路由表中,18.0.0.1/8,RTB,AS200,OSPF,Page,成为,BGP,路由的途径之二:半动态注入,OSPF,发现路由,18.0.0.1/8,把,IGP(OSPF),发现的路由半动态地注入到,RTB,的,BGP,路由表中,18.0.0.1/8,OSPF,RTB,AS200,Page,成为BGP路由的途径之三:静态注入,人为配置静态路由,18.0.0.1/8,把人为配置的静态路由注入到,RTB,的,BGP,路由表中,18.0.0.1/8,AS200,RTB,Page,BGP,报文种类,BGP,报文有四种类型,:,Open,:打招呼“你好,跟我交个朋友吧!”,KeepAlive,:我还活着呢,别不理我,Update,:有新闻,.,Notification,:我不跟你玩了,!,Page,BGP,报文头,BGP,报文的格式是一样的,都是”报文头,+,报文体“的格式,下面给出的是,BGP,报文头:,Marker(16 byte),Length(2 byte),Type(1 byte),Page,Open,报文,Open,报文是由报文头加如下结构构成的。,Optional,Paramenters,Length,Hold Time,Version,My Autonomous System,BGP Identifier,Optional,Paramenters,Page,KeepAlive,报文,KeepAlive,报文只有报文头。,Marker(16 byte),Length(2 byte),Type(1 byte),Page,Update,报文,Update,报文由报文头加如下结构构成。,Withdrawn Routes,Unfeasible Routes Length,Path Attribute Length,Network Layer,Reachability,Information,Path Attribute,Page,Notification报文,Notification,报文由报文头加如下结构构成。,错误代码,1,2,3,4,5,6,错误类型,消息头错,OPEN,消息错,UPDATE,消息错,保持时间超时,状态机错,退出,Data,Error Code,Error,Subcode,Page,BGP协议的状态机,Active,Open,-,sent,Open,-,confirm,Established,Idle,Connect,TCP connection fails,Connect-Retry,timer expiry,Start,Others,TCP connection fails,Error,Error,Error,KeepAlive,timer expiry,KeepAlive,packet,received,1.,KeepAlive,timer expiry,2.Update received,3.,KeepAlive,received,Correct OPEN,packet received,TCP connection setup,TCP connection setup,Others,Page,BGP,协议中消息的应用,通过,TCP,建立,BGP,连接时,发送,open,消息
展开阅读全文