目录

简介

使用的组件

低、标准和高端节点的硬件要求

MSE 3365和MSE 3375的硬件规格

CMX限制

资源不足的后果，以及当您超出限制时

每月超过400,000个唯一MAC地址

超过每日唯一MAC地址的最大数量

超过映射元素数

每秒超过NMSP消息数

每秒北向通知数超过

探测客户端的MAC随机化和跟踪

MAC随机化

CMX和探测客户端的跟踪

相关错误

简介

本文档介绍互联移动体验(CMX)位置的硬件要求、其软件限制以及超过这些限制时的潜在后果。

使用的组件

- 3504无线LAN控制器(WLC)，映像版本为8.8.120

- MSE 3375物理设备上安装的CMX 10.6.1-47

本文中描述的所有命令、要求和限制均适用于在VMware ESXi(vSphere)或物理设备移动服务引擎(MSE)3365/3375上运行的CMX 10.5及更高版本。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

低、标准和高端节点的硬件要求

根据可用资源量确定，部署的CMX节点可以是低端、标准或高端。默认情况下，在MSE 3365和3375设备上运行的CMX是高端。

表1显示了所有3种节点类型的硬件要求(处理器(CPU)/内存(RAM)/磁盘)。

硬件要求

低端

标准

高端

CPU核心

8个vCPU/4个物理核心

16个vCPU/8个物理核心

20个vCPU/10个物理核心

最小CPU基频

2.3 GHz

2.3 GHz

2.3 GHz

RAM

24 GB

48 GB

64 GB

存储

550 GB

550 GB

1 TB

存储类型

SSD或SAS HDD

SSD或SAS HDD

SSD或SAS HDD

表1. CMX硬件要求

MSE 3365和MSE 3375的硬件规格

MSE 3365和3375设备都有足够的资源来部署高端CMX节点。其硬件规格见表2:

硬件规格

MSE 3375

MSE 3375

CPU

10核Intel E5-2650 v3 @2.4 GHz

12核Intel Xeon Gold 5118 @2.4 GHz

存储

4个600GB SAS硬盘

2个960GB SATA SSD

形状因素

1U

1U

表2. MSE设备硬件规格

CMX限制

CMX位置可以处理的数据量主要取决于节点大小。表3中提供了低、标准和高端节点的软件限制：

限制

低端

标准

高端

最大AP数

2,000

5,000

10,000

每天跟踪的最大唯一MAC地址数（无论是否使用Hyperlocation）

25,000

50,000

90,000

Hyperlocation支持

无

无

Yes

最大唯一活动客户端数（启用Hyperlocation）

X

X

9,000

每月最大唯一MAC地址数（请参阅注*）

400,000

400,000

400,000

最大区域数

150

600

900

最大映射元素

200

750

1000

每秒最大MAC位置API V3请求数

1

10

60

每秒最大NMSP消息数

750

1300

2500

每秒最大北向通知数

10

50

300

北向通知接收器的最大数量

5

5

5

每秒最大CMX连接数

10

10

10

表3. CMX位置限制

注意：在一个月的持续时间内，唯一MAC地址数量超过400,000后，CMX停止无法区分返回的新访客和访客。除非超出其他限制，否则其他服务将继续运行。

资源不足的后果，以及当您超出限制时

如果超出表3中所述的限制，则可能对CMX节点造成致命后果。在安装CMX节点之前，请确保估算部署规模并确定适合您需求的部署规模。

如果部署规模太大，即使对于多个CMX节点也是如此，请考虑迁移到DNA空间，这是思科新推出的基于云的分析平台，可取代CMX。使用DNA空间，所有计算都分流到云基础设施，在云基础设施中，资源根据负载动态分配。

以下所有症状和建议的解决方案均基于技术支持中心(TAC)以往部署经验，从单个低端节点到覆盖数百个位置的多个高端节点。

有关如何处理超载CMX的更多信息，请参阅文档：https://www.cisco.com/c/en/us/support/docs/wireless/connected-mobile-experiences/214894-optimize-cmx-performance.html

每月超过400,000个唯一MAC地址

症状：

- CMX停止工作，以便区分返回的新访客和访客。除非超出其他限制，否则其他位置服务将继续工作

解决方法：

- 禁用探测客户端的跟踪

- 如果网络包含多个控制器且一个高端节点不足，请考虑将负载从多个控制器分配到多个CMX节点

- 如果一个高端不足以支持单个控制器，请考虑将WLC升级到8.8或更高版本，以及使用特殊的CMX分组功能，该功能允许单个WLC将部分数据卸载到多个CMX节点

- 考虑迁移到DNA空间，这是一种基于云的分析服务，取代了CMX。所有工作负载都分流到动态可扩展的云基础设施

超过每日唯一MAC地址的最大数量

症状：

- 网络界面速度很慢或损坏

- 高CPU和内存使用率

- 分析数据丢失

- 崩溃或无法启动的CMX服务

- 可能无法恢复的数据损坏，需要重新安装

- techsupport日志包的locationserver.log内的错误消息显示：
Cleaning up element counts, unique devices 347684, locally administered macs 0 as partof daily midnight job

解决方法：

- 至少在CMX再次稳定之前停止探测客户端的跟踪

- 增加CMX节点的大小（低端 — >标准 — >高端）或部署其他CMX节点以重分布负载

- 考虑迁移到DNA空间，这是一种基于云的分析服务，取代了CMX。所有工作负载都分流到动态可扩展的云基础设施

- 如果将多个控制器添加到单个CMX，请删除所有控制器并尝试在每天监控每日设备总数时逐个重新添加它们

超过映射元素数

症状：

- 网络界面速度慢，尤其是“检测和定位”选项卡

- 崩溃的CMX服务

- 分析数据丢失

解决方法：

- 增加CMX节点的大小（低端 — >标准 — >高端）或部署其他CMX节点

- 删除一些映射元素

每秒超过NMSP消息数

当大量重负载控制器添加到单个CMX节点时，通常会发现此问题。

症状：

- 网络界面慢

- 分析数据丢失

- 高CPU和内存使用率

- 崩溃或无法启动的CMX服务

- techsupport日志包中的Analyticsserver.log内有错误消息，其中说：
Notification queue is full  - incoming notifications are being rejected. Please increase more processing capacity

解决方法：

- 部署额外的CMX节点以分配负载

- 考虑迁移到DNA空间，这是一种基于云的分析服务，可取代CMX。所有工作负载都分流到动态可扩展的云基础设施

每秒北向通知数超过

当CMX配置为向大量服务器发送通知时，通常会发现此问题。CMX 10.6.3引入了5个北向通知接收器的限制

症状：

- 通知丢弃，导致接收通知的服务器上的数据不准确/不完整

解决方法：

- 删除一些已配置的通知接收器

- 增加CMX节点（低端 — >标准 — >高端）或部署其他节点的规模

探测客户端的MAC随机化和跟踪

MAC随机化

在关联到无线网络之前，无线设备首先需要发送探测请求。设备可以探测其以前关联到的特定SSID，也可以发送“一般”探测请求，也称为通配符。

任何侦听探测请求的无线设备都可以“听到”探测，记录设备的存在，并且如果支持，以最高几米的精度记录设备位置。

由于隐私问题的增加，随着2014年Cisco IOS 8的发布，智能手机制造商开始实施一种称为MAC随机化的功能，设备每次发送探测请求时都会使用新的随机生成的MAC地址。

当它们生成用于发送探测请求的随机mac地址时，制造商可以使用通用或本地管理的mac地址。

本地管理的MAC地址将地址的第一个二进制八位数的第二最低有效位设置为1。此位用作标志，宣布MAC地址实际上是随机生成的。

本地管理的MAC地址有四种可能的格式（x可以是任何十六进制值）

- x2-xx-xx-xx-xx-xx

- x6-xx-xx-xx-xx-xx-xx

- xA-xx-xx-xx-xx-xx

- xE-xx-xx-xx-xx-xx

所有其他MAC地址均被视为通用管理。通用管理的MAC地址的前3个八位组称为组织唯一标识符(OUI)，它们特定于制造商。

每个制造商都分配了特定数量的唯一OUI。

在运行IOS 12.3（发送探测请求）的iPhone的空中捕获中，我们看到，如果设备屏幕打开，则每隔几秒钟发送一次探测请求，如果设备屏幕关闭，则每隔几分钟发送一次探测请求。

我们看到本地管理的位设置为1。随着IOS 14和Android 10的发布，当设备与网络关联时也会使用随机mac地址。设备通常使用单个随机本地管理的MAC地址（每个SSID）。

CMX和探测客户端的跟踪

CMX能够跟踪仅探测的客户端。默认情况下，此选项启用。

要排除使用本地管理的MAC地址的客户端，请选中System > Settings > Filtering下的“Enable Locally Administed MAC Filtering选项。

此字段在CMX 10.5.x中存在，但已从10.6.x Web界面中删除，并且默认启用。

一些制造商决定在探测时不使用本地管理的地址。CMX无法区分随机、非本地管理的MAC地址与设备的实际MAC地址。 这意味着，每当此类客户端设备发送新探测请求时，都可将其记录为新客户端。在使用中，在1分钟内，智能手机平均会探测几次。在CMX上，此类设备每次记录为多个不同的客户端。这完全扭曲了CMX分析，有时导致几乎无法使用的分析数据。

当它们关联到同一SSID时，设备始终使用一个永不更改的MAC地址（此地址可以是实际MAC地址，也可以是本地管理的随机MAC地址）。 关联客户端的数量始终低于或等于仅发送探测的客户端的数量。

仅探测的客户端跟踪不应用作访客计数器。但是，它可用于跟踪日常趋势（例如，如果星期三比星期二更忙），但即使是这些数据，也可能因极高的变化而不准确。

思科TAC通常处理大型部署（机场、商场、开放公共区域）的问题，其中仅探测的客户端跟踪每天会引入极大数量的唯一MAC地址，即使是高端CMX节点也无法处理（每天90,000以上）。

如果仅跟踪关联的客户端，则可减少记录的客户端总数，但使收集的分析数据准确无误。

Cisco TAC强烈建议启用“仅排除探测客户端”选项。

相关错误

- Cisco Bug ID CSCvq25953 — 启用位置SSID过滤禁用排除本地管理的MAC，反之亦然

- Cisco Bug ID CSCvo43574 - CMX过滤掉关联的本地管理MAC地址

- Cisco Bug ID CSCvs85182 - Cmxos verify命令关于HDD最小要求错误