- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
BGP文档
BGP 边界网关协议
我们还是回顾一下前面的知识在NP第一节课我们就讲过IGP和EGP的的区分,这个主要是看自治系统,工作在一个AS内部的就是IGP,工作在AS之间的就是EGP。
AS号分为公有和私有地址。
公有AS号:0-64511
私有AS号:64512-65535
AS号有点类似于IP公有的必须要去申请,私有的只能在本地用。
(中国的2大运营商电信AS:4134 网通AS:9929)
这个网站上有全世界AS号的分配情况。
BGP 路径矢量路由协议
BGP和IGP的第一个区别就是IGP里面是以某个路由器来划分网络的,而BGP是以整个AS来划分网络的。所以IGP通常称为hop-by-hop,BGP通常称为AS-by-AS。
什么时候需要使用BGP?
1:其实要使用BGP的地方很多,比如说电信和网通之间互通他们之间就要使用BGP因为电信的管理和网通的管理是不同的,电信有电信的AS,网通有网通的AS。
要使不同的AS互通就要使用BGP。
2:我们以前学习到的比如说OSPF和ISIS这些协议无法支持超大型网络,ospf的算法决定了它只能支持10000条路由再多了就算不过来了,isis也只支持2000条路由。
3:策略,前面我们所学的以系列IGP协议的可控性都不是很强,所以要使用BGP,BGP的策略更多,可控性更加强大。
4:扩展应用更好,它不光可以传IPv4还可以传IPv6的还可以传VPNv4的(当然VPNv4主要适用在MPLS)。
什么时候不需要使用BGP?
不存在选路的时候不需要BGP,路由器的性能不强的情况下不使用BGP。
来看下BGP的具体格式,BGP靠TCP来传输,端口号179,因为它靠的是TCP传输所以BGP得传输是非常可靠的。BGP只有触发更新,也可说是增量更新;
BGP的邻居报文为keepallve报文,keepallve报文时周期性的为60秒,down时间为180秒。
keepallve报文类似于hello包,但是和hello包要区分开,周期性的hello包里面包含2个意思,第一建立邻居,第二keepallve确认你还活着。
而BGP里面第一次建立邻居靠的是open报文,确认好后往后只发keepallve报文。
我们在IGP中衡量路径的好坏靠的是metric值,但是在BGP中靠的是Rich metric我们也直接叫attributes(属性),metric值仅仅只是这些属性之一。
BGP设计对象主要就是大型网络。
BGP的3张表
首先建立邻居表 neighbor table,使用open报文
然后开始传递BGP路由,并把这些信息传递给BGP表 BGP table。
注:BGP默认的是不做负载均衡的。
最后把最好的放入路由表 ip routing table。
BGP的4种报文
open报文(包含了hold时间和BGP的router ID,这个ID和ospf的ID意思是一致的。)
keepallve报文
update报文 ,发送路由条目的
notification报文,当出现错误的时候就会发送notification报文。
EBGP和IBGP
首先来看EBGP,外部的BGP,不同的AS号之间建立BGP邻居关系就叫做EBGP。
再来看IBGP,同一个AS内建立的BGP邻居关系就叫做IBGP。
BGP的邻居关系很有特点,在BGP的邻居关系中要建立邻居并不需要直连;
“看个例子:R1----R2---R3---R4在这个拓扑里面运行BGP只要R1的路由能到达R4那么R1和R4直接就可以建立邻居关系”。这点和IGP是绝对不同的,还有就是BGP是不需要组播地址的,因为BGP采用的是TCP协议这个协议的特点就是点到点的协议,所以不需要使用组播地址,而是单播地址。还有一点要注意,在一个IBGP内部一定要运行一个IGP,不然前面的拓扑R1和R4是没有办法建立起来BGP邻居关系的。
我们先来看一张图:
在这张典型的BGP拓扑图中我们可以看见,
第一步我们首先假设在A路由器上通告一条路由X,我们可以发现由A发往F的路由也就是控制层面来说是OK的,因为A首先发往B他们之间是EBGP关系,然后B会直接发向E(通过D或者是C),在BGP中建立邻居关系是不需要直连的,在中间这个AS中,BCDE之间都运行了OSPF协议也就是说他们之间有路由相通,那么B就可以直接和E建立邻居关系,最后由E发往F,他们之间也是EBGP关系。
第二步我们紧接着来看再假设F下面有一个用户这会他要访问X,我们会发现他根本不通,这也就是数据层面。因为F所发的信息会传递给E,这会E肯定会传给C或者D其中任何一个,那么我们这会可以看见不管是C还是D他们上面都没有运行BGP。那么他们肯定没有通往X的路由,掉包就掉在这里了,我们也称为数据层面的路
文档评论(0)