ebgp协议怎样和ibgp协议进行合作转发路由.docx
- 文档编号:23235134
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:9
- 大小:21.57KB
ebgp协议怎样和ibgp协议进行合作转发路由.docx
《ebgp协议怎样和ibgp协议进行合作转发路由.docx》由会员分享,可在线阅读,更多相关《ebgp协议怎样和ibgp协议进行合作转发路由.docx(9页珍藏版)》请在冰豆网上搜索。
ebgp协议怎样和ibgp协议进行合作转发路由
竭诚为您提供优质文档/双击可除
ebgp协议怎样和ibgp协议进行合作转发路由
篇一:
ibgpebgpigpbgp区别
ibgp、ebgp、igp、bgp区别
我们知道,在自治系统内部使用igp路由协议,而在不同自治系统之间使用bgp路由协议(严格来讲,bgp不是路由协议).bgp产生的原因是为了在不同自治系统(as)之间进行路由转发,而其中又提出了ebgp和ibgp两种,ebgp用于在不同自治系统之间,但ibgp,书上说它是应用于自治系统内部,可是在自治系统内部我们是使用igp.这就和"bgp是应用于不同自治系统之间"产生矛盾,那么ibgp存在的意义,比如说某种情况,需要使用到ibgp,它在网络中起到的作用.ebgp与ibgp之间的区别,ebgp在网络中又起什么作用
为什么要有ibgp,原因如下:
1、igp的能力限制,igp处理路由的条目有限,而目前internet上核心路由器的路由表已经超过10万条。
假如没有ibgp,那么这些路由只能采取重分发的方式直接导入到igp中,这样做的缺点很明显:
第一,igp协议的作者并没有打算让igp来处理如此大量的路由,igp本身也无法处理这样大的路由数量;第二,如果非要让igp来处理,那么根据igp的处理原则,假如这10万路由中任何一条路由发生变化,那么运行igp的路由器就不得不重新计算路由,更为严重的是,假如其中某一条路由出现路由抖动的情况,例如端口反复up/down,这会导致所有的igp路由器每时每刻都不得不把10万条路由重新计算一遍,这种计算量对于绝大多数路由器来说是无法负担的。
另外对于运行RipV1的路由器来说,10万条路由的定期更新,这根本就是无法接受的事情,除去带宽占用率不谈,我想,也只有少量高端的gsR以及tsR能够有这样的性能吧。
很显然,我们不可能让网络中所有的路由器都是gsR和tsR,如果真是这样,那么cisco、juniper以及华为等厂家就要偷笑了。
例如:
as100----as200---as300,假定as100/200/300各有100台路由器,而as100中有1w条路由要传递要as300中,而as200的路由器不需要学习as100的路由。
如果没有ibgp的话,那么这1w条路由都必须被重分发到as200的igp中去,这样的话,相当于as200中所有的100台路由器都增加了1w条路由。
如果利用ibgp的话,那么as200中只有运行ibgp的路由器会学习到这1w条路由,其它运行igp的路由器都不会学习到这1w条路由。
并且由于bgp的路由控制能力大大强于igp的路由控制能力,因此运行ibgp的路由器比运行igp的路由器能更好的对这1w条路由做一些路由策略的处理,从而保证整个as内部的路由器学习到的路由数目可以控制在可接受的范围之内。
2、路由环路的问题。
bgp是靠路由属性来防止路由环路的,例如as_path属性,假如说没有ibgp协议,那么当所有bgp路由重分发到igp中后,路由属性必然丢失,这就破坏了bgp的路由环路防止机制,产生了路由环路的隐患。
那么引申一下,既然ibgp能够传送所有的路由前缀,为什么还需要igp?
1、ibgp之间是tcp连接,也就意味着ibgp邻居采用的是逻辑连接的方式,两个ibgp连接不一定存在实际的物理链路。
所以需要有igp来提供路由,以完成bgp路由的递归查找。
2、bgp协议本身实际上并不发现路由,bgp将路由发现的工作全部移交给了igp协议,它本身着重于路由的控制。
因此,如果没有igp,那么bgp也就毫无用处了。
ebgp与ibgp的区别:
1、路由环路的避免措施不一样,ibgp强制规定ibgpspeaker不允许把从一个ibgp邻居学习到的前缀传递给其它ibgp邻居,因此ibgp要求逻辑全连接。
ebgp没有这样的要求,ebgp对路由环路的避免是通过as_path属性来实现的。
2、使用的bgp属性不同,例如ibgp可以传递local_pReF(本地优先属性),而ebgp不行。
3、ibgp有同步的要求,而ebgp没有同步的要求
4、ibgp不需要ibgp邻居之间有物理连接,只需要逻辑连接即可,而ebgp下一般情况下都要求ebgp邻居之间存在物理连接。
ebgp在网络中起什么作用?
这个题目太大了,ebgp我认为是在不同的as之间提供路由的传递以及路由的控制,了解了bgp属性的用法,也就了解了ebgp的作用。
篇二:
路由协议
1.概述
因特网,在20世纪60年代末,作为一个实验,开始于daRpa(美国国防部的高级研究项目管理局)。
随着研究机构、学院和政府加入,形成了最早的aRpanet.后来,美国国家科学基金会又开发了nsFnet(1995年4月停用)。
发展到现在,因特网成为了由商业提供者运营的的更分散的体系。
而下一代因特网(ngi)的计划已于1997年10月启动,目前已推出的主要方案有internet2,abilene等。
出于管理和扩展的目的,因特网可以被分割成许多不同的自治系统(autonomoussystem)。
换句话说,因特网是由自治系统汇集而成的。
bgpv4(bordergatewayprotocolVersion4)——边缘网关协议(定义于RFc1771),是现行因特网的实施标准,就是用来连接自治系统,实现自治系统间的路由选择功能的。
2.igp与egp
所有的路由选择协议可以被分成igp和egp两种。
要了解igp和egp的概念,应该首先了解自治系统(as)的概念。
传统的as定义
(RFc1771):
as是同一个技术管理下的一组路由器,它们使用一种内部网关协议和一致的度量尺度来对数据包进行as内部的路由,而使用外部网关协议来对发向其它as的数据包进行路由选择。
发展到现在,已经允许并且时常采用在一个自治系统as中使用多个内部网关协议,甚至多个路由选择的度量标准。
所以,现在的自治系统被扩展的定义为:
共享同一路由选择策略的一组路由器。
igp(interiorgatewayprotocols)——内部网关协议,定义为在一个自治系统内部使用的路由协议(包括动态路由协议和静态路由)。
igp的功能是完成数据包在as内部的路由选择,或者说,是讲述数据包如何穿过本地as的。
Ripv1&v2,igRp,eigRp,ospF,isis都是典型的igp.
egp(exteriorgatewayprotocols)——外部网关协议,定义为在多个自治系统之间使用的路由协议。
它主要完成数据包在as间的路由选择,或者说,讲述数据包为了到达目的ip,需要通过哪些as.bgp4就是一种egp.
igp只作用于本地as内部,而对其他as一无所知。
它负责将数据包发到主机所在的网段(segment)。
egp作用于各as之间,它只了解as的整体结构,而不了解各个as内部的拓扑结构。
它只负责将数据包发到相应的as中,余下的工作便交给igp来做。
每个自治系统as都有唯一的标识,称为as号(asnumber),由iana(internetassignednumbersauthority)来授权分配。
这是一个16位的二进制数,范围为1~65535,其中65412~65535为as专用组(RFc2270)。
3.bgp-4的基本概念
bgp-4是典型的外部网关协议,是现行的因特网实施标准。
它完成了在自治系统as间的路由选择。
可以说,bgp协议是现代整个网络的支架。
bgp-4在RFc1771中作出了规定,并且还涉及其他很多的RFc文档。
在这一新版本中,bgp开始支持cidR(classlessinterdomainsrouting)和as路径聚合(aggregation),这种新属性的加入,可以减缓bgp表中条目的增长速度。
图一
bgp协议是一种距离矢量(distancevector)的路由协议,但是比起Rip等典型的距离矢量协议,又有很多增强的性能。
bgp使用tcp作为传输协议,使用端口号179.在通信时,要先建立tcp会话,这样数据传输的可靠性就由tcp协议来保证,而在bgp的协议中就不用再使用差错控制和重传的机制,从而简化了复杂的程度。
另外,bgp使用增量的、触发性的路由更新,而不是一般的距离矢量协议的整个路由表的、周期性的更新,这样节省了更新所占用的带宽。
bgp还使用“保留”信号(keepalive)来监视tcp会话的连接。
而且,bgp还有多种衡量路由路径的度量标准(称为路由属性),可以更加准确的判断出最优的路径。
与传统的内部路由协议相比,bgp还有一个有趣的特性,就是使用bgp的路由器之间,可以被未使用bgp的路由器隔开。
这是因为bgp在独立的内部路由协议之上工作,所以通过bgp会话连接的路由
器能被多个运行内部路由协议的路由器分开。
建立了bgp会话连接的路由器被称作对等体(peersorneighbors),对等体的连接有两种模式:
ibgp(internalbgp)和ebgp(externalbgp)。
ibgp是指单个as内部的路由器之间的bgp连接,而ebgp则是指as之间的路由器建立bgp会话。
图二
前面已经提到,bgp是用来完成as之间的路由选择的,所以对于bgp来说,每一个as都是一个原子的跳度。
那么,ibgp又起什么样的作用呢?
ibgp是用来在as内部完成bgp更新信息的交换。
虽然这种功能也可以由“再分布”(Redistribution)技术来完成——将ebgp传送来的其他as的路由“再分布”到igp中,然后将其“再分布”到ebgp传送到其他as.但是相比之下,ibgp提供了更高的扩展性、灵活性和管理的有效性。
比如,ibgp提供了选择本地as外出点的方式。
ibgp的功能是维护as内部连通性。
bgp规定,一个ibgp的路由器不能将来自另一ibgp路由器的路由发送给第三方ibgp路由器。
这也可以理解为通常所说的split-horizon规则。
当路由器通过ebgp接收到更新信息时,它会对这个更新信息进行处理,并发送到所有的ibgp及余下的ebgp对等体;而当路由器从ibgp接收到更新信息时,它会对其进行处理并仅通过ebgp传送,而不会向ibgp传送。
所以,在as中,bgp路由器必须要通过ibgp会话建立完全连接的网状连接,以此来保持bgp的连通性。
如果没有在物理上实现全网状(fullmeshed)的连接,就会出现连通性上的问题。
as在bgp看来是一个整体,as内部的bgp路由器都必须将相同的路由信息发送给边界的ebgp路由器。
路由信息在通过ibgp链路时不会发生改变,只有通过ebgp链路时,路由信息才会发生变化。
在
as内部,通过ibgp连接的路由器都有相同的bgp路由表(bgp路由表(bgpRoutingtable)用于存放bgp路由信息,不同于igp路由表,两个表之间的信息可以通过“再分布”(Redistribution)技术进行交换)。
4.bgp的路由选择
bgp的消息报头由三个部分组成:
标记、长度和类型。
标记段占16个字节,用于安全检测和同步检测;长度段占2个字节,标明整个bgp消息的长度;类型段占一个字节,标明消息的类型。
报头的后面可以不接数据部分,如keepalive消息。
bgp消息有四种类型:
open,update,notiFication和keepaliVe,分别用于建立bgp连接,更新路由信息,差错控制和检测可到达性。
open消息是在建立tcp连接后,向对方发出的第一条消息,它包括版本号、各自所在as的号码(asnumber)、bgp标识符(bgpidentifier)、协议参数、会话保持时间(holdtimer)以及可选参数、可选参数长度。
其中,bgp标识符用来标识本地路由器,在连接的所有路由器中应该是唯一的。
这个标识符一般都使用接口上的最大的ip地址(常常使用loopback接口来防止地址失效)。
而会话保持时间,是指在收到相继的keepalive或者update信号之间的最大间隔时间。
如果超过这个时间路由器仍然没有收到信号,就会认为对应的连接中断了。
如果把这个保持时间的值设为0,那么表示认为连接永远存在。
update消息由不可到达路由(withdrawnRoute)、路由属性(Routeattributes)和网络层可到达性(networklayerReachabilityinformation—nlRi)组成。
bgp路由属性是bgp路由的核心概念。
它是一组参数,在update消息中被发给连接对等体。
这些参数记录了bgp路由信息,用于选择和过滤路由。
它可以被看作选择路由的度量尺度(metric)。
路由属性被分为四类:
公认强制(well-knownmandatoryattributes)、公认自由选择(well-knowndiscretionaryattributes)、可选传递(optionaltransitiveattributes)和可选非传递(optionalnontransitiveattributes)。
公认的(well-known)属性对于所有的bgp路由器来说都是可辨别的;每个update消息中都必须包含强制(mandatory)属性,而自由选择的(discretionary)属性则是可选的,可包括也可不包括。
对于可选的(optional)属性,不是所有的bgp工具都支持它。
当bgp不支持这个属性时,如果这个属性是过渡性的(transitive),则会被接受并传给其他的bgp对等体;如果这个属性是非传递性的(nontransitive),则被忽略,不传给其他对等体。
在技术文档RFc1771定义了1~7号的bgp路由属性,依次是:
1,oRigin(产生该路由信息的as);2,as_path(包已通过的as集或序列);3,next_hop(要到达该目的下一跳的ip地址,i
bgp连接不会改变从ebgp发来的next_hop);4,multi_exit_disc(本地路由器使用,区别到其他as的多个出口);5,local-pReF(在本地as内传播,标明各路径的优先级);6,atomic_aggRegate;7,aggRegatoR.RFc1997还定义了8,community.其中,1、2号属性是公认强制;3、5、6是公认可选;7、8是可选过渡;4是可选非过渡。
这些属性在路由的选择中,考虑的优先级是不同的,仅就这8个属性来说,其中优先级最高的是local-pReF,接下来是oRigin和as_path.
bgp所使用到的路由属性并不仅仅是这8个,其他的具体内容可以参阅RFc文档(RFc1771、1996、1997、1966、1863、2283)。
网络层可到达性(nlRi)包含了这样的二维数组,使用cidR(classlessinterdomainRouting)技术,来聚合路由,以减缓bgp表的增长速度。
bgp工作流程如下:
首先,在要建立bgp会话的路由器之间建立tcp会话连接,然后通过交换open信息来确定连接参数,如运行版本等。
建立对等体连接关系后,最开始的路由信息交换将包括所有的bgp路由,也就是交换bgp表中所有的条目。
初始化交换完成以后,只有当路由条目发生改变或者失效的时候,才会发出增量的触发性的路由更新。
所谓增量,就是指并不交换整个bgp表,而只更新发生变化的路由条目;而触发性,则是指只有在路由表发生变化时才更新路由信息,而并不发出周期性的路由更新。
比起传统的全路由表的定期更新,这种增量触发的更新大大节省了带宽。
路由更新都是由update消息来完成。
update包含了发送者可到达的目的列表和路由属性。
当没有路由更新传送时,bgp会话用keepaliVe消息来验证连接的可用性。
由于keepaliVe包很小,这也可以大量节省带宽。
在协商发生错误时,bgp会向双方发送notiFication消息来通知错误。
5.bgp与igp的互操作
bgp路由表是独立于igp路由表的,但是这两个表之间可以进行信息的交换,这就是前面提到的“再分布”技术(Redistribution)。
信息的交换有两个方向:
从bgp注入igp,以及从igp注入bgp.前者是将as外部的路由信息传给as内部的路由器,而后者是将as内部的路由信息传到外部网络,这也是路由更新的来源。
把路由信息从bgp注入igp涉及到一个重要概念——同步(synchronization)。
同步规则,是指当一个as为另一个as提供了过渡服务时,只有当本地as内部所有的路由器都通过igp的路由信息的传播收到这条路由信息以后,bgp才能向外发送这条路由信息。
当路由器从ibgp收到一条路由更新信息时,在转发给其他ebgp对等体转之前,路由器会对同步性进行验证。
只有igp认识这个更新的目的时(即
篇三:
路由协议典型配置
5.4bgp路由协议典型配置
5.4.1bgp基本配置-ibgp,ebgp
『需求』
Routera和Routerb之间运行ibgp,Routerb和Routerc之间运行ebgp。
【Routera】当前路由器提示视图依次输入的配置命令,重要的命令红色
突出显示简单说明
!
适用版本:
vrp1.74
[Router]interfaceethernet0进入以太0口
[Router-ethernet0]ipaddress10.1.1.1255.255.255.0配置ip地址!
[Router]interfaceserial0进入串口0口
[Router-serial0]link-protocolppp封装ppp链路层协议
[Router-serial0]ipaddress20.1.1.2255.255.255.252配置ip地址!
quit
[Router]bgp100
使能bpg,自治系统号
100
[Router-bgp]undosynchronization配置非同步
[Router-bgp]network10.1.1.0mask255.255.255.0发布的路由是
10.1.1.0/24
[Router-bgp]peer20.1.1.1as-number100配置ibgp邻居
在向ibgp邻居发布路
[Router-bgp]peer20.1.1.1next-hop-local由时已自己的接口地
址为下一跳
!
【Routerb】
[Router-serial0]link-protocolppp封装ppp链路层协议
[Router-serial0]ipaddress30.1.1.1255.255.255.252配置ip地址!
[Router]interfaceserial1进入串口1口
[Router-serial1]link-protocolppp封装ppp链路层协议
[Router-serial1]ipaddress20.1.1.1255.255.255.252配置ip地址!
quit
[Router]bgp100使能bpg,自治系统号
100
[Router-bgp]undosynchronization配置非同步
[Router-bgp]network20.1.1.0mask255.255.255.0发布的路由是
20.1.1.0/24
[Router-bgp]network30.1.1.0mask255.255.255.0发布的路由是
30.1.1.0/24
[Router-bgp]peer20.1.1.2as-number100配置ibgp邻居
在向ibgp邻居发布路
[Router-bgp]peer20.1.1.2next-hop-local由时已自己的接口地
址为下一跳
[Router-bgp]peer30.1.1.2as-number200配置ebgp邻居
【Routerc】
当前路由器提示视图依次输入的配置命令,重要的命令红色
突出显示简单说明
!
适用版本:
vrp1.74
[Router]interfaceethernet0进入以太0口
[Router-ethernet0]ipaddress40.1.1.1255.255.255.0配置ip地址!
[Router]interfaceethernet1进入以太1口
[Router-ethernet1]ipaddress40.1.2.1255.255.255.0配置ip地址!
[Router]interfaceserial0进入串口0口
[Router-serial0]link-protocolppp封装ppp链路层协议
[Router-serial0]ipaddress30.1.1.2255.255.255.252配置ip地址!
quit
[Router]bgp200使能bpg,自治系统号
200
[Router-bgp]undosynchronization配置非同步
[Router-bgp]network40.1.1.0mask255.255.255.0发布的路由是
40.1.1.0/24
[Router-bgp]peer30.1.1.1as-number100配置ebgp邻居!
『注意』
绝大多数要配置为非同步,只有有必要将bgp路由引入igp时才配置成同步。
此例仅演示ibgp和ebgp怎么配置,实际组网中,只要路由器间有tcp连接就可以建立bgp邻居关系,即只要能够ping通就可以建立bgp邻居关系.ibgp和ebgp在配置是的区别是邻居的as号不一样而已。
5.4.2bgp路由反射器配置
『需求』
Routera,b,c为as100,其中Rotuerb为路由反射器.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ebgp 协议 怎样 ibgp 进行 合作 转发 路由