与大多数内部路由协议不同的是, EIGRP能够将流量负载分到多条非等价路径上,而不仅仅使用去往目的地最近距离的那一条路径。提供这项功能的特性称为非等价负载分担。
 
非等价负载分担的核心概念是可行后继。尽管可行后继并不是去往目的地最短的那条路径,但路由器也可以确保它们是去往目的地无环的路径。 EIGRP正是利用了这一点:将可行后继提供的路径也放人到路由表中,与最优路径一同使用,甚至当路由处于被动状态时也可以这样做。
 
工程师可以使用命令variance multiplier来启用非等价负载分担。在命名模式中,工程师可以在topoIogy base配置部分中设置variance。multiplier参数定义的是可行后继提供的路径比最优路径相比差了多少倍,仍可以被EIGRP用于非等价负载分担。更具体地说,如果工程师将variance设置为V,那么对于每个目的地,路由器都会检查可行后继提供的路径是否满足以下条件(CD指的是计算距离) :
根据后继计算出的CD (根据这个可行后继计算出的CD( Vx根据后继计算出的CD。 如果可行后继满足条件的话,EIGRP会将这个可行后继提供的路径放入路由表中。
这个倍数参数的默认值是1 ,也就是默认不执行非等价负载分担。工程师可以使用命令show ip protocoIs来查看当前的倍数参数。
如果路由器将多条去往某目的地的非等价路径放人了路由表中,它会通过最差的路径转发较少的流量,反之亦然。工程师可以按照下面这个比例,计算出路由器通过每条路径转发的数据量:放人路由表的最大路径度量值/路径度量值
 
举例来说,如果去往某目的地一共有4条路径,分别由后继和可行后继提供,它们的度量值分别是1100、 1100、 2000和4000,那么通过这4条路径发送的数据量应该是4000/1100=3、 4000/1100=3、 4000/2000=2以及4000/4000=1 ,实际的流量共享比例就是3:3:2:1 (IOS路由器执行取整运算)。
还有一点一定要搞明白,要想让EIGRP执行非等价负载分担,必须首先在拓扑表中存在去往目的地的可行后继。对于那些没有满足FC要求的路由器, EIGRP不会将其当作可行后继,因而也不会在执行非等价负载分担时使用这些路由器提供的路径。为了将一些邻居当作可行后继,工程师可能需要合理地调整度量值,使邻居能够通过FC检查。
记住,能够被放人路由表中的非等价路径也是有最大数量限制的,这一点与等价路径相同,工程师可以使用命令maximum-Paths进行设置;要根据具体的网络拓扑和需求,合理地修改这项设置。

EIGRP-16-其他和高级的EIGRP特性-2-非等价负载分担的更多相关文章

  1. EIGRP-15-其他和高级的EIGRP特性-1-路由器ID

    与很多协议一样, EIGRP也使用了路由器ID (RTD)的概念,用一个4字节的编号来标识某个路由器实例.每个地址家族实例拥有自已独立的RID.工程师可以在一台路由器上,为多个EIGRP进程和地址家族 ...

  2. atitit.高级编程语言的特性 and 未来趋势与进化.doc

    atitit.高级编程语言的特性 and 未来趋势与进化.doc 1 编程语言的发展历程 1 1.1 编程语言的进化,起始发现背后的思想 :不论什么两个系统之间的复杂性,都能够通过加入一个抽象层要屏蔽 ...

  3. Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性

    简介 Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很 ...

  4. React 16 服务端渲染的新特性

    React 16 服务端渲染的新特性 React 16 中关于服务端渲染的新特性 快速介绍React 16 服务端渲染的新特性,包括数组.性能.流等 React 16 终于来了!

  5. 小D课堂 - 新版本微服务springcloud+Docker教程_4-04 高级篇幅之服务间调用之负载均衡策略调整实战

    笔记 4.高级篇幅之服务间调用之负载均衡策略调整实战     简介:实战调整默认负载均衡策略实战 自定义负载均衡策略:http://cloud.spring.io/spring-cloud-stati ...

  6. iOS开发——高级篇——Objective-C特性:Runtime

    Objective-C是基于C语言加入了面向对象特性和消息转发机制的动态语言,这意味着它不仅需要一个编译器,还需要Runtime系统来动态创建类和对象,进行消息发送和转发.下面通过分析Apple开源的 ...

  7. Redis高级命令及特性(安全性)

    高级命令 ​ keys * : 返回满足的所有键 ,可以模糊匹配 ​ exists :是否存在指定的key,存在返回1,不存在返回0 ​ exprie:设置某个key的过期时间 ​ ttl:查看剩余时 ...

  8. C#高级编程之特性

    特性定义 MSDN的描述:使用特性,可以有效地将元数据或声明性信息与代码(程序集.类型.方法.属性等)相关联. 将特性与程序实体相关联后,可以在运行时使用反射这项技术查询特性. 参考此处作者的解释 h ...

  9. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第4节 方法引用_7方法引用_数组的构造器引用

    先创建函数式接口 创建测试类 打印长度是10...... 方法引用优化

随机推荐

  1. 你想了解的python基础数据类型这里都有

    目录 python基础数据总结 数字型数据类型 数字型数据基本知识 算术运算符 进制 二进制运算符 字符串数据类型 字符串基础知识 字符串数据操作方法(增 查 改) 集合数据类型 集合基础知识 集合元 ...

  2. Django ORM性能优化之count和len方法的选择(非常详细推荐干货)

    接下来我将从源码层面分情况和应用分析我们在计算queryset数据集时是用orm的count函数计算长度还是用len函数计算数据集长度. 首先,我们知道ORM查询queryset数据集是惰性查询的,只 ...

  3. python3.x 基础四:json与pickple

    每次打开一个文件,只dump1次 json.dump(dump的内容,文件句柄) json.load(文件句柄) json可以处理列表/字典/字符串等简单数据类型,但是不能处理复杂的数据类型,如函数的 ...

  4. 最小生成树 状压+prim hdu2489

    Minimal Ratio TreeTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  5. 29-3 union的使用

    联合结果集union (集合运算符) -------------------------使用union联合结果集---------------- select tsname,tsgender,tsag ...

  6. [推荐]大量 Blazor 学习资源(一)

    前言 / Introduction Blazor 是什么? Blazor 允许您使用 C# 而不是 JavaScript 构建交互式 Web UI. Blazor 应用由使用 C#.HTML 和 CS ...

  7. 编译安装路由器用的Privoxy 3.0.28(华硕RT-AC88U,原版梅林384.15)

    编译安装路由器用的Privoxy 3.0.28(华硕RT-AC88U,原版梅林384.15) Privoxy有什么特殊之处? 支持和SOCKS/HTTP代理的级联.这个功能轻松将SOCKS转为HTTP ...

  8. 问题_001_Vivian

    2020.02.02,大哥问了这样一个问题 ===> s = "PYTHON" while s != "": for c in s: if c == &q ...

  9. Android调试非常有用的命令集1_adb&aapt&git&repo&scp&while

    Linux部分场景非常有用的命令集_1_持续更新 这里面也包含了对于开发调试有用的命令,也可以看看. 这里不做详细说明或截图,仅作为记录和简单说明.注:可能只针对某一命令部分功能,不包含整个功能,若要 ...

  10. day1_计算机基础

    一.计算器5大组成:计算机硬件:(计算机是奴隶)         1.五大组成             控制器             运算器             存储器I/O:内存+外存     ...