本文档介绍如何在Cisco Catalyst 6500系列平台上使用Web缓存通信协议(WCCP)。
WCCP最初设计为一种拦截网络流量(HTTP)并将其转发到本地缓存设备的方法,在本地缓存设备中,WCCP可以从本地位置提供给客户端并节省昂贵的广域网带宽。
从网络用户的角度来看,WCCP是透明的,因为它在网络级别使用,而用户无需进行任何特殊配置,以识别并重定向通过第3层(L3)设备的Web流量到本地缓存设备。虽然WCCP最初是为网络流量设计的,但是重定向的透明方法已经成为一种非常有用的机制,可以解决通过低容量链路处理高容量内容的其他问题。因此,在更高的WCCP版本中添加了其他协议支持。这些附加技术包括HTTP、HTTPS、FTP、视频流和文件缓存技术(如通用互联网文件系统(CIFS))等协议。 这些技术支持较新的思科解决方案和平台,如广域文件服务(WAFS)、广域应用服务(WAAS)、面向应用的网络(AON),以及应用和内容网络软件(ACNS)的增强功能。
随着企业实施最新的生产力工具(如基于视频的通信和培训,以及实时视频和点播视频),WCCP的采用率也在增加。控制成本(如整合的数据中心)的努力使WCCP需要支持额外的极高带宽服务。
由于WCCP对当今内容丰富网络的重要性,某些平台(如Catalyst 6500)已通过WCCP实现硬件辅助性能,从而降低协议所需的CPU负载。本文档介绍如何在Catalyst 6500上部署WCCP,以最大限度地提高硬件利用率并减少CPU负载。
Cisco 建议您了解以下主题:
本文档中的信息基于以下软件和硬件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
通常称为WCCP的功能实际上包含三个组件:
本文档将检查以下三个WCCP运行特征:
Catalyst 6500 Supervisor Engine 2、Supervisor Engine 32和Supervisor Engine 720支持以下WCCP功能和方法:
有关这些功能的详细信息,请参阅Cisco 6500系列Cisco IOS软件配置指南12.2SX中的配置WCCP。
WCCP分配确定WCCP协议重定向的流量和接收重定向流量的WCCP实体。
当在路由器接口和WCCP实体上配置WCCP时,重定向设备(Catalyst 6500)需要知道要重定向哪些流量以及要将流量发送到何处。服务组集群中的WCCP实体都通过WCCP协议与Catalyst 6500通信;但是,选择一个WCCP设备来表示集群,以控制集群的运行方式(通过分配方法、重定向方法等)。 WCCP设备和路由器可以协商在服务组中的Web缓存之间分发数据包的方法。服务组定义为最多32台路由器和32个WCCP实体之间的多对多关系。协商由服务组进行;因此,参与多个服务组的Web缓存可以为每个服务组协商不同的分配方法。当前可用的WCCP服务包括:
WCCP服务 | 协议 |
网络缓存 | HTTP |
53 | DNS缓存 |
60 | FTP |
61 | WAAS — 转发 |
62 | WAAS — 反向 |
70 | HTTPS |
80 | 实时流协议 (RTSP) |
81 | 基于UDP的Microsoft媒体服务器(MMS)(MMSU) |
82 | 基于TCP的MMS(MMST) |
83 | 使用UDP的RTSP(RTSPU) |
89 | CIFS缓存WAAS |
98 | 自定义Web缓存 |
99 | 反向代理 |
90-97 | 用户可配置* |
*用户可配置服务在Catalyst 6500中实施,并在入站或出站方向应用接口级命令。后面将讨论入站或出站选择的影响,但入站是首选方法,因为重定向列表可以与WCCP结合以实现最佳硬件性能。
为WCCP配置后,路由器会在WCCP通信消息中通告支持的服务组分配方法。缺少此类消息意味着Catalyst 6500仅支持默认的基于哈希的分配方法。
Catalyst 6500和WCCP设备之间的协商完成后,WCCP指定实体通过WCCP通知Catalyst 6500要重定向哪些流量以及将流量分配到哪些WCCP实体。例如,当有四个以上的WCCP设备可用时,WCCP实体可通知Catalyst 6500将所有网络流量从特定子网重定向到服务组中的缓存引擎1 - 4。
WCCP有两种分配方法:
WCCP服务组内的所有设备必须使用相同的分配方法。分配方法在WCCP实体上配置,并由Catalyst 6500学习。有关详细信息,请参阅WCCP设计建议。
基于哈希的分配机制依赖于软件中执行的算法。为了利用哈希算法,特定流中的第一个数据包从硬件路径发送到执行哈希的软件路径。
软件对流的各个组件执行XOR散列,并生成散列,将流量拆分到各个WCCP实体。散列机制确定流量在可用WCCP实体之间的分配方式。
哈希结果被编程到硬件NetFlow表中,在该表中转发该流中的后续数据包。无论WCCP可用于散列的字段如何,都使用完整的五元组。这意味着当启用WCCP时,NetFlow将进入全流模式的接口。这对可能需要NetFlow资源的其他功能有影响。有关详细信息,请参阅WCCP缺陷部分。
有关Catalyst 6500上WCCP的常见问题是:“为什么启用WCCP时CPU利用率会增加?” 当使用基于哈希的分配时,每个流中基于软件的初始数据包处理会给CPU带来负担,并且通常是提高利用率的原因。使用当前可用的策略功能卡3(PFC3)转发硬件,如果WCCP配置为出口功能,或者如果使用基于散列的分配(入口或出口),则始终需要进行某种级别的软件处理。
使用基于哈希的分配方法会影响以下功能:
基于散列的软件处理分配要求导致的限制和影响适用于入口和出口流量。如果网络正在经历非典型流量模式(如拒绝服务(DoS)攻击),则对CPU的影响可能会加剧。在典型的攻击或蠕虫爆发中,主机发送的每个数据包都发往新的目的地或端口,这会导致每个数据包在软件中进行处理。由于WCCP重定向流量被显式发送到CPU进行第一数据包处理,因此保护方法有限。在接口上使用“拒绝”ACL条目可以限制发送到CPU的流量;但是,没有针对这些类型的攻击的速率限制器或其他保护。
基于掩码的分配处理方式因配置在入口还是出口而异。
使用基于入口掩码的分配,在数据包转发之前将掩码编程到ACL TCAM中,因此不需要NetFlow表和软件处理。WCCP实体选择多个哈希桶,并为每个桶分配地址掩码和WCCP设备。一旦分配完成,管理引擎会为每个存储桶编程一个TCAM条目和一个硬件邻接关系,并通过L2重写将匹配地址掩码的数据包重定向到关联的WCCP设备。
如果WCCP配置为入口功能,则它可能使用硬件ACL表中的ACL重定向邻接条目。一旦WCCP匹配该条目,它就会使用适当的邻接关系来执行L2重写或GRE封装。因此,当在入口上使用掩码分配时,L2重写(Supervisor引擎2、Supervisor引擎32和Supervisor引擎720)和GRE封装(仅Supervisor引擎32和Supervisor引擎720)都在硬件中执行。
如果将WCCP配置为出口功能,则硬件中不支持ACL重定向邻接,因为流中的数据包已经由系统路由。流的第一个数据包被发送到软件进行处理。确定正确的重定向邻接关系后,会将其编程到NetFlow硬件(而不是ACL TCAM)中,在该硬件中,条目指向执行L2重写或GRE封装的邻接关系。流中的后续数据包在硬件中由NetFlow硬件重定向。
在两个基于掩码的选项中,只有基于入口掩码的分配能够为初始和后续数据包启用完全基于硬件的转发。任何其他选项(如使用基于哈希的分配或出口处理)都会导致初始数据包的软件交换和后续数据包的硬件NetFlow交换转发。
WCCP实体(而非Catalyst 6500)将哈希表和掩码/值集指定给Catalyst 6500,因此重定向方法的配置在该设备上完成,而不是在Catalyst 6500交换机上完成。Catalyst 6500根据与WCCP实体/组的WCCP通信确定可用的最佳重定向方法。此协商确定如何将重定向的流量转发到设备。有两个重定向选项:L3(GRE)和L2(MAC地址重写)。
使用WCCPv1时,唯一的选项是L3重定向,也称为GRE封装。使用L3重定向时,每个WCCP重定向数据包封装在标有协议类型0x883E的GRE报头中,后跟一个四八位组WCCP重定向报头,该报头随后被发送到WCCP设备(如缓存引擎)。
引入WCCPv2后,添加了L2重定向(也称为加速WCCP重定向),以利用Catalyst 6500等硬件交换平台。当WCCP使用L2重定向时,WCCP设备和Catalyst 6500必须是L2邻接(在同一L2 VLAN中)。 重定向的L2流量不使用GRE封装;相反,MAC目标地址由Catalyst 6500重写为连接L2的WCCP实体的MAC目的地址,并通过正常硬件交换转发。
WCCP L3操作涉及使用GRE作为封装方法。重定向数据包封装在协议类型为0x883e的GRE报头中,以及包含匹配的服务ID和哈希桶(仅WCCPv2)的4字节WCCP重定向报头。 使用GRE,WCCP客户端可通过多个L3(路由)跳从Catalyst 6500中分离。
在此场景中,WCCP重定向的可用选项包括:
在Supervisor引擎2上,每个GRE数据包将发送到多层交换功能卡(MSFC)进行处理。由于硬件不支持GRE封装,因此MSFC必须同时应用GRE和WCCP报头,这会强制所有流量进行软件交换。
使用基于哈希的分配方法,Supervisor引擎32和Supervisor引擎720转发软件中每个流的第一个数据包,以便建立NetFlow表条目。然后,数据包封装在GRE中(初始数据包的封装和转发在软件中完成),并转发到WCCP设备。
NetFlow条目的建立会影响CPU利用率,但后续数据包转发是在Supervisor引擎720和Supervisor引擎32的硬件中完成的。流量模式,特别是唯一流的数量,决定了CPU的利用率。如果Catalyst 6500的NetFlow资源被消耗,则所有流量都会在软件中转发。
Supervisor PFC的NetFlow资源在不同平台中不同。目前,Supervisor引擎720平台上的PFC-3BXL上提供了最大的NetFlow资源。
在Supervisor引擎2上,每个GRE数据包都发送到MSFC进行处理。由于硬件不支持GRE封装,因此MSFC必须同时应用GRE和WCCP报头,这会强制所有流量进行软件交换。
使用基于掩码的分配方法,Supervisor引擎32和Supervisor引擎720在硬件中转发初始和后续数据包,因为GRE是本地支持的,而掩码分配使用ACL TCAM硬件进行转发。
在Supervisor引擎2上,每个数据包都发送到MSFC进行处理。由于硬件不支持GRE封装,因此MSFC必须同时应用GRE和WCCP报头,这会强制所有流量进行软件交换。
Catalyst 6500使用基于哈希的分配方法和Supervisor引擎32和Supervisor引擎720,转发软件中每个流的初始数据包,以便建立NetFlow表条目。然后,数据包封装在GRE中并转发到WCCP实体。
NetFlow条目的建立会影响CPU利用率,但后续数据包转发是在硬件中完成的。流量模式,尤其是唯一流的数量,决定了CPU的使用量。如果Catalyst 6500的NetFlow资源被消耗,则所有流量都会在软件中转发。
Supervisor PFC的NetFlow资源在不同平台中不同。目前,Supervisor引擎720平台上的PFC-3BXL上提供了最大的NetFlow资源。
在Supervisor引擎2上,每个数据包都发送到MSFC进行处理。由于硬件不支持GRE封装,因此MSFC必须同时应用GRE和WCCP报头,这会强制所有流量进行软件交换。
使用基于掩码的分配方法(使用Supervisor引擎32和Supervisor引擎720),每个流的第一个数据包都通过软件交换,以便建立NetFlow表条目。所有管理引擎都不支持出口ACL邻接编程,这会强制此软件处理,并在每个流中使用NetFlow资源(而非硬件ACL TCAM)来处理初始数据包。然后,数据包封装在GRE中并转发到WCCP设备。
NetFlow条目的建立会影响CPU利用率,但后续数据包转发是在硬件中完成的。流量模式,尤其是唯一流的数量,决定了CPU的使用量。如果Catalyst 6500的NetFlow资源被消耗,则所有流量都会在软件中转发。
Supervisor PFC的NetFlow资源在不同平台中不同。目前,Supervisor引擎720平台上的PFC-3BXL上提供了最大的NetFlow资源。
通过L2转发,服务组中的WCCP实体(ACNS、WAFS、WAAS等)属于同一子网,且与Catalyst 6500相邻的L2。这可实现流量的高吞吐量、低延迟重定向。入口接口(配置了WCCP的位置)和WCCP设备所在的接口必须位于不同的VLAN上。
此场景中WCCP重定向的可用选项包括:
当在入口上配置L2 +哈希分配时,WCCP流量将发送每个流中的第一个数据包进行软件交换,这会在硬件NetFlow表中创建NetFlow条目。
由于WCCP是无状态机制,因此信息不在软件中维护;而是在硬件中作为NetFlow表中的条目进行维护。只要存在NetFlow表条目,流中的后续流量就会在硬件中转发。
NetFlow条目的建立会影响CPU利用率,但后续数据包转发是在硬件中完成的。流量模式(尤其是唯一流的数量)决定了CPU的利用率。如果Catalyst 6500的NetFlow资源被消耗,则所有流量都会在软件中转发。
Supervisor PFC的NetFlow资源在不同平台中不同。目前,Supervisor引擎720平台上的PFC-3BXL上提供了最大的NetFlow资源。
当在入口上配置时,L2 +掩码分配是Catalyst 6500上支持的最高效的WCCP方法。所有流量都是硬件交换的,包括每个流中的初始数据包。无需软件重定向;初始和后续数据包转发由硬件提供。
使用Catalyst 6500的硬件ACL TCAM资源,以便在收到任何WCCP数据包之前对硬件条目进行预编程。
为了使用此方法并利用完全硬件交换,WCCP实体还必须支持L2重定向和基于掩码的分配方法。此方法的配置在WCCP实体上完成,Catalyst 6500在WCCP与WCCP实体/组的初始通信期间协商最佳方法。
在出口L2 +哈希分配中,WCCP流量发送每个流中的第一个数据包进行软件交换,从而在硬件NetFlow表中创建NetFlow条目。
此外,当在出口方向配置时,需要在流的第一个数据包上进行额外的转发信息库(FIB)查找,以确定与CE关联的邻接关系,这要求在Catalyst 6500内进行数据包再循环。后续数据包在硬件中进行NetFlow交换。
NetFlow条目的建立会影响CPU利用率,但后续数据包转发是在硬件中完成的。流量模式(尤其是唯一流的数量)决定了CPU的利用率。如果Catalyst 6500的NetFlow资源被消耗,则所有流量都会在软件中转发。
Supervisor PFC的NetFlow资源在不同平台中不同。目前,Supervisor引擎720平台上的PFC-3BXL上提供了最大的NetFlow资源。
当在出口方向配置时,L2 +掩码分配会交换软件中每个流中的第一个数据包,就像L2 +哈希分配案例一样。后续数据包在硬件中进行NetFlow交换。
PFC2和PFC3不支持出口ACL邻接编程,这会强制软件处理每个流中的初始数据包;流中的后续数据包在硬件中转发。
NetFlow条目的建立会影响CPU利用率,但后续数据包转发是在硬件中完成的。流量模式(尤其是唯一流的数量)决定了CPU的利用率。如果Catalyst 6500的NetFlow资源被消耗,则所有流量都会在软件中转发。
Supervisor PFC的NetFlow资源在不同平台中不同。目前,Supervisor引擎720平台上的PFC-3BXL上提供了最大的NetFlow资源。
当WCCP用于拦截流量且WCCP实体对这些数据包执行完整操作时,数据包随时可以从WCCP设备发回到客户端。当从WCCP设备发回客户端时,通常处理的流量(发往网络上的客户端)不需要任何特殊封装。
由于WCCP拦截导致客户端请求被成功处理(从缓存文件、从缓存拆分流、从WAAS文件),因此可以将其作为正常流量发回网络,数据包中的目标地址是原始请求者。如果此流量在从WCCP设备到客户端的网络路径中,则通常可由Catalyst 6500进行L3/交换;使用L2连接的WCCP设备时,流量在网络路径中。从WCCP设备将其发回Catalyst 6500无需封装,因为目的地现在是原始客户端,而不是互联网或内联网上的服务器。然后,网络像处理任何其他IP流量一样处理此流量,并在Catalyst 6500中使用硬件转发将请求的流量返回给客户端。
在WCCP实体无法执行请求的操作的某些情况下,WCCP设备可能需要将流量发回Catalyst 6500并保留数据包的原始目标。从WCCP实体转发此流量而不封装可能会导致流量环路。为了从客户端隐藏不成功的服务尝试并将数据包发送到要服务的原始目标,数据包必须保持不变,放回到其原始转发路径中,并在不被WCCP拦截的情况下转发到原始目标。
在WCCP返回方法中,WCCP可用于封装这些数据包,将其发送回最初截获它们的设备,删除任何封装,并将它们放回被拦截的转发路径。这些数据包需要正常发送,就好像它们从未被WCCP拦截一样。
这些案例包括:
目前,此返回方法只能通过GRE封装完成,任何Catalyst 6500硬件都不支持。如果使用此方法将大量流量发回Catalyst 6500,则可能会出现高CPU利用率,因为此流量在软件中处理。在Cisco IOS软件版本12.1(18)SXH中,Catalyst 6500硬件支持L2返回方法。
在早于12.2(18)SXH的Cisco IOS软件版本中,Catalyst 6500支持的唯一返回方法是GRE封装。除了附加到返回流量的GRE报头外,还附加了WCCP报头。虽然GRE在管理引擎32和管理引擎720硬件中本地受支持,但此附加报头会导致GRE不受硬件支持。请注意,Catalyst 6500和WCCP设备必须支持并协商L2返回方法。
管理引擎2中不存在任何GRE、入口、出口或WCCP返回的GRE硬件支持。为了处理此类GRE解封,Cisco IOS软件在启用WCCP的接口上对WCCP GRE隧道接收邻接进行编程,以指向路由处理器(RP),这会导致软件处理返回流量。
在Catalyst 6500上使用重定向列表以避免可能需要通过GRE返回的流量是降低从WCCP实体发回的流量的软件处理要求的有效方法。这比在WCCP实体上拒绝流量并强制将其封装并发回Catalyst 6500更有效。
请记住,WCCP服务组是可扩展的。如果由于负载而绕过超额流量,则此流量会被发回,这会在Catalyst 6500上创建CPU负载。正确扩展甚至过度构建WCCP服务组是避免这种情况的唯一方法。
在12.2(18)SXH中,一个选项允许WCCP实体重写L2 MAC地址,而不是封装返回流量。此L2返回增强功能(思科漏洞ID CSCuk59825)在将WCCP配置为使用入口重定向和掩码分配时启用返回流量的硬件处理。
在Catalyst 6500上实施时,WCCP提供许多配置选项,如下表所示。请注意,WCCP设备会协商这些选项并控制Catalyst 6500使用哪些选项。配置在WCCP连接的WCCP设备端完成。
重定向方法 | 作业 方法 |
入口/ 出口 |
交换结果 |
L2 | 哈希 | 入口 | 软件处理 |
L2(推荐) | 掩码 | 入口 | 使用ACL TCAM进行完整硬件处理 |
L2 | 哈希 | 出口 | 软件处理 |
L2 | 掩码 | 出口 | 软件处理 |
GRE | 哈希 | 入口 | 软件处理 |
GRE(PFC3或更高版本) | 掩码 | 入口 | 使用NetFlow全流进行全硬件处理 |
GRE | 哈希 | 出口 | 软件处理 |
GRE | 掩码 | 出口 | 软件处理 |
从硬件角度来看,所有出口WCCP配置都需要软件处理并影响CPU利用率。使用基于哈希的分配方法时,在入口处也需要进行软件处理,这会对CPU利用率产生相同的潜在影响。
在Catalyst 6500上部署WCCP的推荐方法是使用掩码分配的L2重定向,如果可用,返回L2。
使用这些配置建议,以便您能够根据您的情况确定最佳的WCCP部署方法。
设计网络,使WCCP入口可用作重定向方法。一种好的设计方法是将缓存交换块作为分层L3分布网络的一部分;这可确保在几个主要入口端口识别WCCP服务流量。
此外,思科高级服务还建议考虑以下设计注意事项:
在交换机上使用重定向列表,以避免发回Catalyst 6500的数据包。如果缓存设备的任何规则可以作为重定向列表移动到Catalyst 6500,这可能提供更好的硬件性能。
如果使用除入口L2掩码分配以外的任何方法,则Supervisor引擎720平台上的NetFlow资源可以快速耗尽。Supervisor引擎720无法通过任何其他方法提供比Supervisor引擎2更好的性能。
在非优化设计中必须使用Supervisor引擎720或Supervisor引擎32的情况下,请考虑使用mls ip netflow creation software-mode fast命令,以便可以加快WCCP初始数据包的NetFlow处理。这将删除添加到Supervisor引擎32和Supervisor引擎720 NetFlow的增强功能,并提供与Supervisor引擎2 NetFlow硬件相同的性能。
用于分配掩码的思科内容引擎(CE)的配置为:
使用以下命令可查看NetFlow利用率,并确定WCCP是否正在使用NetFlow条目,并且正在使用软件处理:
如果您因NetFlow资源被使用而遇到WCCP软件问题,这些命令可能会主动清除现有条目并为新条目创建空间。(如果条目数量比NetFlow空间更多,这将无济于事。)
为避免丢包,WCCP实体必须从接口重定向流量,该接口不是WCCP所配置的接口。当满足以下所有条件时,Catalyst 6500 WCCP将丢弃数据包:
这种情况是由Catalyst 6500内置的保护机制引起的;Cisco IOS软件具有检查功能,可防止数据包进入和离开同一Cisco IOS软件虚拟接口,在该接口上,数据包可能会环路并导致意外行为。将WCCP设备移至其自己的专用L3环境以防止发生这种情况。
基于用户的速率限制(UBRL)和WCCP由于流掩码而无法在接口上同时工作。每个单播功能的每个接口都有一个流掩码。WCCP需要全流,而UBRL使用src-only或dst-only。
在12.2(18)SXF5中为Supervisor引擎2和L2返回添加了WCCP支持。在2007年4月/5月的12.2(18)SXH之前,Supervisor引擎720中未添加WCCP支持。
Cisco IOS软件服务器负载均衡(SLB)仅支持WCCP L2 PFC重定向;其他WCCP配置不兼容,GRE不起作用。WCCP acceleded命令仅适用于Supervisor引擎2/MSFC2。其目的是强制路由器协商掩码分配和L2重定向,这意味着所有WCCP重定向都在硬件中完成。管理引擎32和管理引擎720无需此命令即可协商。
对于标准透明缓存重定向,请回想一下,WCCP实体为WCCP路由器提供了支持的方法,可能需要进行配置才能实现。对于Cisco ACNS,此示例配置请求优化的L2重定向和基于掩码的分配方法:
ContentEngine(config)# wccp version 2
ContentEngine(config)# wccp router-list 1 172.16.16.1
ContentEngine(config)# wccp service router-list-num 1 l2-redirect mask assign
从路由器端,Catalyst 6500设计应确保WCCP设备位于不在当前流量路径(入口或出口)中的专用L3接口上。 对于硬件性能,应将流量捕获到Catalyst 6500的入站流量,即使这需要配置比选择单个出口接口更多的接口。理想的设计是在到达此设备之前聚合所有流量,并且只有几个接口需要WCCP入口配置。
Catalyst 6500上的WCCP配置应为:
6500Switch# ip wccp version {1 | 2}
6500Switch (config)# ip wccp service [accelerated] redirect-list access-list仅对带有12.1E Cisco IOS软件的Supervisor引擎2平台使用acceled命令。
重定向列表用于标识应选择或未选择用于重定向的流量。回想一下,此ACL可以在硬件中执行,这是防止WCCP设备无法服务的流量重定向的更有效方法。发送到设备且无法服务的流量必须返回到此Catalyst 6500,才能返回到原始流量路径,这需要额外处理。WCCP访问列表是标准或扩展访问列表。
本示例显示从10.1.1.1到12.1.1.1的任何请求都会绕过缓存,并且所有其他请求都会被重定向。
6500Switch(config)# ip wccp service redirect-list 120
6500Switch(config)# access-list 120 deny tcp host 10.1.1.1 any
6500Switch(config)# access-list 120 deny tcp any host 12.1.1.1
6500Switch(config)# access-list 120 permit ip any any
在每个接收要重定向的流量的入口接口上配置入口WCCP方法:
Router(config-if)# ip wccp service redirect in
这将完成WCCP设备和交换机上的配置,因此此时应发生流量重定向。
设备的最终WCCP配置如下所示。
设备 | 配置 |
WCCP设备 | wccp version 2 |
WCCP路由器: 全球 |
ip wccp version 2 |
WCCP路由器: 每个入口接口 |
ip wccp redirect service in |
要检查此配置,请输入以下命令:
Show ip wccp service detail
有关其他WCCP配置选项,如使用组播的组寻址或使用其他WCCP安全,请参阅使用WCCP配置Web缓存服务。
使用WCCP和硬件转发时,某些计数器可能不会按预期显示:
当您有需要使用NetFlow硬件资源的WCCP配置时,请使用以下多层交换(MLS)和交换矩阵管理器(FM)命令,以便您可以查看NetFlow资源的状态:
此Cisco Bug ID和解决方案表支持使用Cisco IOS软件版本12.2(18)SXF7或更高版本以获得WCCP最佳支持的一般建议。
Cisco Bug ID | 在Cisco IOS软件版本中解决 | 详细信息 |
CSCsd20327 | 12.2(18)SXF7 | 服务90的WCCP会打开和关闭,并导致WCCP服务丢失。当配置服务81、82和90时,会发生此问题。数据包跟踪表明,路由器可能会用包含不正确目标IP地址的“I_See_You”消息响应来自缓存的“Here_I_Am”消息。 |
CSCsa77785 | 12.2(18)SXF6 | 当您将WCCP L2重定向和掩码分配模式与基于主机的标准ACL一起用作WCCP重定向ACL时,可能会重新加载。 |
CSCse69713 | 12.2(18)SXF6 | 当WCCP服务组中的所有缓存引擎丢失时,流量在软件中处理,而不是在硬件中交换。 |
CSCsd28870 | 12.2(18)SXF5 | 在WCCP重定向ACL列表中,配置了log关键字的ACE未编程到TCAM表中。 |
CSCsb61021 | 12.2(18)SXF5 | 当在缓存引擎上配置IP欺骗功能,并在出口方向配置WCCP重定向时,Supervisor引擎720或Supervisor引擎32上可能会出现高CPU利用率。来自缓存引擎的IP欺骗数据包与客户端或服务器的目标在软件而非硬件中交换。 作为解决方法,请对入站和出站接口使用ip wccp service redirect in命令。 |
CSCsb21972 | 12.2(18)SXF2 | 同时配置WCCP和NDE后,您可能会看到许多由校准错误引起的回溯,并且CPU利用率可能高得不可接受。 |
CSCeh85087 | 12.2(18)SXF | 当WCCP重定向ACL中有用户配置的“deny ip any any”,并且正在为许多WCCP服务组提供服务时,与某些服务组关联的流量不会重定向到CE路由器。 |
CSCeh56916 | 12.2(18)SXF | 启用WCCP服务时,当掩码分配配置为分配方法,并且当服务组中有五个或更多缓存时,发送到缓存的协议消息可能会溢出并导致内存损坏和重新加载。 |
CSCsb18740 | 12.2(18)SXF和SXE6 | 在基于GRE的转发模式下,WCCP不必要地使用软件缓存来增加MSFC CPU利用率。 |
CSCsb26773 | 12.2(18)SXF | 入站ACL可能导致WCCP重定向失败,因为所有重定向流量都会丢失。 |
CSCsa90830 | 12.2(18)SXE2 | 当缓存引擎配置为使用掩码分配模式进行GRE转发时,WCCP入口重定向流量使用NetFlow表进行硬件交换。当NetFlow表已满时,WCCP入口重定向失败。 |
CSCec55429 | 12.2(18)SXE | WCCP服务组列表按服务组的创建顺序进行扫描,而不是按优先级进行扫描。如果定义了多个动态WCCP服务,则匹配多个服务组选择条件的流量不会重定向到优先级最高的服务组。 |
CSCuk50878 | 12.2(18)SXE | 在解决思科漏洞ID CSCec55429的版本中,在服务组中所有缓存发生了许多WCC“cache lost”和“cache found”事件后,可能会发生以下事件:
|
CSCsa67611 | 12.2(18)SXE | 在配置了输出功能(例如,出口ACL或出口WCCP)的非MPLS接口(标记到IP路径)上退出的传入多协议标签交换(MPLS)数据包可能未应用输出功能。出现此问题是因为已绕过输出ACL查找。 |
CSCeh13292 | 12.2(18)SXD4 | 在Supervisor引擎720上配置WCCPv2会导致CPU使用率较高。 |
CSCeb28941 | 12.2(18)SXD1 | 网络地址转换(NAT)与已配置的WCCP不工作。 |
CSCed92290 | 12.2(17d)SXB2 | 没有下一跳地址解析协议(ARP)缓存条目的WCCP重定向数据包会进行进程交换以生成ARP请求。但是,由于WCCP重定向,因此不会发送ARP请求,ARP缓存从不填充到下一跳,后续WCCP重定向的数据包将继续进行进程交换。 |
CSCuk59825 | 12.2(17d)SXF5 -Sup2 Whitney1.0,用于Sup720 | 此Cisco IOS软件版本增加了对L2返回流量的硬件支持。WCCP请求注释(RFC)将L2返回指定为路由器和缓存之间协商的可选功能。到目前为止,Cisco IOS软件上的WCCP不允许协商此功能,因为没有所需的硬件支持。现在,该支持可用,因此可以启用路由器和缓存之间WCCP协议交换中的L2返回协商。 |
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
16-Jul-2013 |
初始版本 |