假设我没有启用cef,并且有两个具有相同成本的路径(两个流量共享计数= 1)
Router#show ip route 20.20.20.1
Routing entry for 20.20.20.0/24
Known via "eigrp 10", distance 90, metric 156160, type internal
Redistributing via eigrp 10
Last update from 192.168.10.2 on FastEthernet0/0, 00:57:33 ago
Routing Descriptor Blocks:
* 192.168.20.2, from 192.168.20.2, 00:57:33 ago, via FastEthernet0/1
Route metric is 156160, traffic share count is 1
Total delay is 5100 microseconds, minimum bandwidth is 100000 Kbit
Reliability 255/255, minimum MTU 1500 bytes
Loading 1/255, Hops 1
192.168.10.2, from 192.168.10.2, 00:57:33 ago, via FastEthernet0/0
Route metric is 156160, traffic share count is 1
Total delay is 5100 microseconds, minimum bandwidth is 100000 Kbit
Reliability 255/255, minimum MTU 1500 bytes
Loading 1/255, Hops 1( q1)如果我在两个接口上都设置了ip路由缓存,这是否意味着即使两个路径的流量共享计数相同,到达同一个目的地的数据包也总是退出相同的接口?
如果我有两个不相等的代价路径,在两个接口上都有不同的流量共享计数(例如60,40)和ip路由缓存。这是否意味着,如果采取"40股“路径到达某一特定目的地(例如20.20.20.2),随后试图达到20.20.20.2的努力将始终走"40股”之路?
发布于 2018-01-20 03:54:16
( q1)如果我在两个接口上都设置了ip路由缓存,这是否意味着即使两个路径的流量共享计数相同,到达同一个目的地的数据包也总是退出相同的接口?
使用ip route-cache在每个目的地负载中的结果,balancing.Cisco在负载平衡是如何工作的?中解释了这一点:
每个目的地和每个包的负载平衡,您可以将负载平衡设置为每个目的地或每个数据包。每个目的地负载平衡意味着路由器根据目标地址分配数据包.给定到同一网络的两条路径,该网络上destination1的所有数据包都经过第一条路径,该网络上的destination2的所有数据包都经过第二条路径,依此类推。这保留了数据包顺序,可能会导致链路的不平等使用。如果一个主机接收到大部分通信量,所有数据包都使用一个链路,这使得其他链路上的带宽未使用。更多的目的地地址会导致更多使用相同的链接。为了实现更平等使用的链接,使用IOS软件为每个目标地址构建一个路由缓存条目,而不是每个目标网络,就像只有一个路径存在时的情况一样。因此,同一目的网络上不同主机的通信量可以使用不同的路径。这种方法的缺点是,对于为数千个目的地主机承载通信量的核心骨干路由器,维护缓存的内存和处理需求变得非常苛刻。每包负载平衡意味着路由器在第一路径上为destination1发送一个数据包,在第二个路径上为(相同) destination1发送第二个数据包,依此类推。每包负载平衡保证所有链路的负载相等.但是,由于网络中可能存在差分延迟,因此有可能导致分组在目的地出现故障。在Cisco IOS软件中,除了发布的11.1CC之外,每个数据包负载平衡都会通过路由缓存禁用转发加速,因为路由缓存信息包括传出接口。对于每个数据包的负载平衡,转发过程通过查找路由表和选择最少使用的接口来确定每个数据包的传出接口。这确保了链路的平等利用,但这是一个处理器密集型任务,并影响整体转发性能。这种形式的每包负载平衡不适合更高的速度接口。每个目的地或每个数据包的负载平衡取决于用于IP分组的交换方案的类型。默认情况下,在大多数Cisco路由器上,在接口下启用快速切换。这是一种按目标进行负载平衡的需求缓存方案。要设置每个数据包的负载平衡,启用进程切换(或禁用快速切换),请使用以下命令: Router#配置t路由器(配置)#接口以太网0路由器(配置-if)#无ip路由-缓存路由器(配置-if)# ^Z,现在路由器CPU查看每个数据包,并在路由表中的目标路由数上负载平衡。这可能导致低端路由器崩溃,因为CPU必须完成所有处理.要重新启用快速交换,请使用以下命令: Router#配置t路由器(配置)#接口以太网0路由器(配置-if)# ip路由-缓存路由器(配置-if)# ^Z -较新的交换方案,如思科快速转发( Cisco,CEF)允许您更快地完成每个数据包和每个目的地的负载平衡。但是,这确实意味着您有额外的资源来处理维护CEF条目和邻接的问题。当您使用CEF时,您可以问:谁使用负载平衡、CEF还是路由协议?CEF的工作方式是CEF基于路由表进行分组交换,路由表由路由协议(如EIGRP )填充。简而言之,一旦计算出路由表,CEF就执行负载平衡。
每包负载平衡可能会导致问题,因此,一般来说,您应该使用每个目的地的负载平衡.
如果我有两个不相等的代价路径,在两个接口上都有不同的流量共享计数(例如60,40)和ip路由缓存。这是否意味着,如果采取"40股“路径到达某一特定目的地(例如20.20.20.2),随后试图达到20.20.20.2的努力将始终走"40股”之路?
默认情况下,Cisco路由器使用CEF。在IGRP和EIGRP中,不等成本路径负载平衡(方差)是如何工作的?:
Cisco转发( CEF )中的负载均衡是一种先进的三层交换技术,可用于路由器的负载均衡。默认情况下,CEF使用每个目标负载平衡。如果在接口上启用了它,则每个目标负载平衡将根据到达目的地的路径转发数据包。如果一个目标存在两个或多个并行路径,则CEF采用相同的路径(单路径)并避免并行路径。这是CEF默认行为的结果。当在串行和隧道等不同物理类型的接口上同时进行负载分担时,CEF采用单一路径。哈希算法确定要选择的路径。为了利用CEF中的所有并行路径和负载平衡流量,当您有不同的物理接口(如串行接口和隧道接口)时,必须启用每个包的负载平衡。因此,在配置和拓扑(串行或隧道)的基础上,负载共享可能无法在默认的CEF负载平衡模式下正确工作。启用以下命令,以便在每个数据包的基础上分担负载:配置终端接口串行0 ip每包负载分担。
https://networkengineering.stackexchange.com/questions/29529
复制相似问题