1楼:
路由跳数计算方法:
跳数指的是度量值,度量值代表距离。它们用来在寻找路由时确定最优路由,是根据实际情况不断变化的。路由器使用路由算法来找到到达目的地的最佳路由。
当说“最佳路由”时,考虑的参数包括诸如跳跃数(分组数据包在网络中从一个路由器或中间节点到另外的节点的行程)、延时以及分组数据包传输通信耗时。
跳数简介:
跳数:报文要通过的路由器输出端口的个数。
bgp协议最佳路径的选择算法有哪些
2楼:蛮小夜
每个bgp路由器通过邻居声名与周边的一个或多个路由器连接。一旦建立了邻居关系,这些bgp路由器之间就会相互交换路由信息。据我最近一次统计,整个互联网上有大约12.
5万个路由信息,因此要配备一个强大的路由器才能将所有bgp路由信息接收下来。
由于整个互联网的bgp路由表有超过20万个路由,同时一个bgp路由器可能从多个**收到多份的路由表,因此肯定会有一种方法可以比较不同的bgp路由表,并从中选择最佳的路由方案。这种方法就是bgp最佳路径选择算法。
可能你会注意到,ciscobgp路由器会将应用权重(weight)作为路由表的第一标准,而其它品牌的路由器则不是这样。cisco的官方bgp最佳路径选择算法文档中详细列明了所参考的各项标准。接下来我会列出每种标准并给出解释和范例。
默认情况下,bgp最佳路径都是基于最短自治系统(as)的原理得出的。不过很多时候,诸如weight,localpreference以及med这样的标准都是网络管理员自行设定的。
接下来我们就按照bgp选择最佳路径的参考顺序将这几项标准介绍一下:
#1 weight —权重是cisco为本地路由器设定的自定义参数,并不随路由器更新而变化。如果指向某一ip地址的路径有多条(这很常见),那么bgp会寻找权重最高的路径。设定权重的参考因素很多,包括邻居命令,as-path访问列表,或者路由镜像等。
#2 local preference — 本地出口优先级参数会告知as哪条路径具有本地优先,数值越高优先级越高。默认为100。比如:
bgp default local-preference 150
#3 ***work or aggregate—这个参数会选择本地发起的网络或聚合作为路径。将特定的路径加入路由中,会让路由更有效率,同时也节省了网络空间。更多有关聚合的信息,可以参考cisco的文章“understandingrouteaggregation in bgp.
”#4 shortest as_path — bgp 只有在weight, localpreference和locallyoriginated相当接近的时候才使用这个参数。
#5 lowest origin type — 这个参数处理interior gateway protocol(igp)协议的优先级低于 exterior gateway protocol (egp)协议。
#6 lowest multi-exit discriminator (med) — 较低的med值要优于较高的med值。
#7 ebgp over ibgp — 类似于#5, bgp as path 更倾向 ebgp 而不是 ibgp。
#8 lowest igp metric — 这个参数倾向于采用最低igp作为bgp下一跳。
#9 multiple paths — 这个参数决定是否要在路由表中装入多个路径。可以参考 bgpmultipath获取更多信息。
#10 external paths — 当所有路径都为外部路径时,选择首先接收到的路径(较老的路径)。
#11 lowest router id — 选择来自具有最低路由器id的bgp路由器的路径。
#12 minimum cluster list — 如果多个路径的originator或路由器id相同,选择cluster列表长度最短的路径。
bgp路由条目不优,不写入路由表
3楼:本题无解
路由表已有更为明细的路由。
或者是掩码位相同,而ad值更优的路由。
其它的暂想不出来。
想出来我再补充
4楼:饮马山河
不太理解你bai的提问,分du两种情况吧:
1。bgp路由本身zhi
的属性造成不dao优专:
在mpls vpn环境下,没有属下一跳的lsp隧道不优;
as路径重复的路由不优;
2。bgp路由跟其他协议产生同样的路由
优先级比其他协议低,不优
为什么bgp路由表中有路由条目,但是确不能ping通
5楼:**ile小伟
你好:首先路由表中有路由不一定能ping通,你查看这条路由的next-hop是否可达。
一般都是下一跳是黑洞路由所以导致ping不通。但是建议你试试一下几个命令,做一个全面的查找。
1,show ip bgp ex x.x.x.x 查看下这条路由的信息
2,show ip bgp 看是否有最佳路径 >3,ping x.x.x.x sou x.x.x.x 带源ping
6楼:雨中浮阳
首先要明白一个概念,ping通必须满足 2个条件 1 你有对方的地址段的路由,你能把数据包传过去。 2对方有你源地址的路由,因为ping数据包 对方收到 源地址和目的地址要转变。源地址变成目的地址,目的地址变为源地址。
这样应该好理解了吧,你本端有对方的路由,但是你没有把自己的地址段通过你的ebgp路由器通告给外网(也就是对方没有收到你的路由条目),对方路由器里没有关于你地址段的路由条目,ping当然就不会通了。
什么情况下使用bgp,为什么要用bgp,使用其他的igp路由协议为什么不行,有什么区别
7楼:匿名用户
简单而不很准确的说,igp是产生路由的,bgp是传递路由的。
对于大量的路由,要靠bgp来传递。
还有就是bgp具有丰富的属性。比如要做mpls/vpn,那就要配合bgp。
8楼:匿名用户
其他的igp路由协议,如ospf、eigrp等,都只能处理几万条以内的路由,再大的化数据库过大,协议就不能正常工作了。
bgp的设计中不需要每条路由路径的细节信息,只处理大范围的路由情况,所以可以使用在大型网络边界处。
如何查看bgp路由表
9楼:匿名用户
show ip bgp 该命令看到的是自己产生的以及从邻居学习到的bgp路由条目,该更新是通过哪些as传送到自己的在条目的后面都是有显示的;
show ip route 该命令看到的路由条目的开头如果是b,那么表示学习到的bgp路由条目从bgp表中移植到了路由表中。
为什么bgp向外宣告的路由,必须要存在于自身的igp路由表中
10楼:匿名用户
ebgp宣告路由不需要任何igp支持。
ibgp宣告是ibgp的同步原则(synchronization):当从ibgp邻居学到一条路由时,只有当该路由所指向的prefix已经存在于本地路由器的igp路由表中,才可能认为这条从ibgp学到的路由是最佳的,否则不考虑该路由。
简单说,其目的是为了避免产生路由循环和路由黑洞。
11楼:匿名用户
楼上2位回答的不对。
具体用到那个rfc,我不知道。
原因是:bgp不是用来产生路由的,而是发布、更重要的是控制已经存在的路由的。bgp中有规定:
bgp路由器只把自己使用的路由发给邻居。所以,假如bgp发布路由,被发布的路由必须存在于ip路由表中,哪怕它是虚假路由,也必须有,就是这样。
假如你的路由表中不存在某条路由,那么,即便你发布了这条路由,也不会生效,邻居更不会收到。
基于什么考虑?上面已经说了,bgp只把自己使用的路由发给邻居,而自己使用的就是存在于ip路由表中的路由,是最优的。
楼上说:怕路由表没有而产生不可达的情况。这是不正确的认识。
其实,不论bgp,还是ospf或其他路由选择协议,都可以发布不存在的路由器,前提是在自己的路由表里手工添加一条指向null0的路由。有2个作用:路由聚合和黑洞路由。
路由聚合是为了减少路由表数量,路由黑洞是为了解决网络攻击。
如:路由器a下接2个子网,10.1.
1.0/25和10.1.
1.128/25,或者更多。那么假如不用聚合,就需要发布2条路由,假如使用聚合,那么,先创建1条聚合路由:
ip route 10.1.1.0 24 null0,然后在bgp中发布聚合路由即可。
说了这些,不知您明白了没有?若觉得我说的还行,就给我追加点分吧。
12楼:匿名用户
您说的应该是ibgp的同步原则(synchronization):当从ibgp邻居学到一条路由时,只有当该路由所指向的prefix已经存在于本地路由器的igp路由表中,才可能认为这条从ibgp学到的路由是最佳的,否则不考虑该路由。
简单说,其目的是为了避免产生路由循环和路由黑洞。
我觉得网络夜行者说的对。hszpnlz说的有点小问题,bgp并非必须发布已经存在于igp 路由表中的路由,只是在某些网络结构中需要而已,在cisco路由器上,是可以根据需要在router bgp配置状态下,通过synchronization和no synchronization命令来打开或关闭该特性。
什么情况下,为什么要打开bgp同步的具体原理比较复杂,详细的解释网上很多而且**并茂更容易理解,比如下面几篇文章。
http://****360doc.***/content/10/0413/00/169961_22789746.shtml
http://****bbfish.***/router/router_7481.html
http://zhidao.baidu.***/question/161910529.html
实际ciscopress出的c**p新版route参考书的第十四章就有专门一小节说明。不过还没中文版。
您不妨看过上面这些具体介绍后,还有不明白的,就其中某点提问,同时列出您已经看过的文章。这样更容易获得有针对性的回答。
13楼:网络夜行者
之所以要存在它的igp表中,是因为这宣告的可能会成为别的设备进入某个网络的路由,如果这个路由不在你的igp表中,但你宣告出去.那其它设备可能通过计算算出你这个设备是到达某个网络的最好路径,所以把你添加到了它的路由表中,然后它要到那个目标去的时候会经过你,而你的igp路由表中并没有这一路由,这样它就不会知道要怎么去的目标那里,导致路由出现问题.