跳转到主内容

什么是CIFS最大多丛?如何增加控制器允许的同时未处理的最大Windows客户端请求数?

Views:
4
Visibility:
Public
Votes:
0
Category:
data-ontap-8
Specialty:
nas
Last Updated:

可不使用  

适用场景

  • 集群模式 Data ONTAP 8
  • Data ONTAP 7 及更早版本

问题和解答

什么是CIFS最大多丛?

为了提高运行效率、Citrix和IIS等某些应用程序会将多个CIFS会话合并到同一个TCP连接中。这些连接称为多路传输连接。 cifs.max_mpx 选项(集群模式Data ONTAP 中的-max-mpx)用于确定ONTAP 可以为每个TCP连接支持多少个未完成的SMB操作。达到该值后、客户端应停止向ONTAP 发送其他SMB命令。 

注意仅限最大MPX 的适用场景 SMB1会话

cifs.max_mpx 选项关联的值不应设置为低于Windows NT默认值50。如果CIFS统计输出显示Max Multiplex大于32、则应增加此数字。

以下是NetApp存储控制器上命令行输出cifs stat -c的部分输出示例:

Max Multiplex = 46, Max pBlk Exhaust = 0, Max pBlk Reserve Exhaust = 0

唯一的合法值为50、126、253、255*和1124。如果未与NetApp客户服务进行明确对话、请勿将此值设置为任何其他值。请注意、不建议将此选项自动设置为高值。高值会占用客户端上的大量资源。如果将此值设置为未经批准的值、则某些客户端会出现发生原因 错误。

注意: 从Data ONTAP 7.3.6和8.0.2开始、选项 cifs.max_mpX 的默认值已更改为255。

选项cifs.max_mpx(仅适用于SMB1会话)值用于控制客户端在初始连接到存储器时传递的数字。更改此值不会影响活动会话。因此、建议仅在CIFS终止时更改此选项。CIFS重新启动后、所有连接都将具有新值。Windows端也有类似的参数、请参见Microsoft文章960259

有关要对IIS服务器进行的更改、请参见Microsoft文章221790

何时增加存储系统上max_mpx的值?

以下情况下、可以增加max_mpx (集群模式Data ONTAP 中的-max-mpx)选项的值:

  • CIFS最大值将超过选项中指定的当前值。
  • Windows客户端在打开MS Office文档时会定期收到消息:"文档已打开"或"文档已写保护"
  • CIFS网络性能较慢
  • Windows客户端无法连接到Windows NT共享
  • cifs.max_mpxCIFS stat 最大多路复用值相同
  • 可能会显示的另一条消息是运行状况检查警告消息: sam.misconfig.badValue.cifsMaxMpx
  • cifs stat输出显示已超过CIFS.max_MPX上设置的最大多路复用值。

CIFS协议会将CIFS.max_MPX值定义为一个双字节字段、可能的值介于0到65535之间。高值会占用连接到存储器的客户端上的大量资源。如果运行的是Windows 2000服务器、终端服务器或工作站、请参见以下知识库文章。

Windows服务器在Windows注册表中有一个与cifs.max_MPX对应的选项。它称为MaxMpxCt。客户端支持的最大值应由Lanman工作 站MaxCmds参数确定。Microsoft在以下知识库文章中详细介绍了更改这些值:
Microsoft知识库810886:Windows Server 2003、Windows XP和Windows 2000 Server中出现"Network Basic Input-Output System (BIOS) command limit has been reached"错误消息

注意:对于给定的客户端和服务器(存储器)对、限制应在这两个值中较低者。

最终、在存储器上设置CIFS.max_MPX的值时、应使用options cifs.max_mpX命令查看已配置设置的输出、并将其与cifs stat命令提供的最大多路传输的操作值进行比较、以了解该值是接近还是超出。

例如、只有在以下情况下、CIFS.max_MPX的值才会增加到1124以上:

  1. 只有Windows 2003及更高版本的操作系统连接到存储器
  2. CIFS stat输出显示正在接近或超过1124的值。
  3. 已执行测试以验证此设置是否不会发生原因 Windows客户端上的其他性能问题。
    注意:未处理的ChangeNotify请求不会计入CIFS统计信息。如果未处理的更改通知请求预计会对CIFS多路复用造成影响、请使用Windows perfmon和track redirectorcurrent命令。
如何增加存储器允许的同时未处理的Windows客户端请求的最大数量:

 

如果将Windows终端服务器与存储器结合使用、请参见知识库文章 What is the recommended tuning for Windows Terminal Server (WTS) CIFS clients?
如果未使用Windows终端服务器且存储器的CIFS会话数过多、请首先在Data ONTAP 信息库中查看适用于您的特定Data ONTAP 版本的选项CIFS.max_MPX手册页或命令参考指南、然后完成以下步骤:

:此操作仅适用于SMB 1连接。要在集群模式Data ONTAP 中读取相同的值、请查看下面列出的stats命令:

  1. 输入:cifs stat
    %statistics show-periodic -object cifs:vserver -instance vs1 interval 1 -iterations 10 -counter max_commands_outstanding|commands_outstanding (in Clustered Data ONTAP diag mode)
  2. 记录最大多丛值。
  3. 输入: options cifs.max_mpx
    [vserver cifs options show -vserver <vserver_name> -instance (in Clustered Data ONTAP diag mode)]
  4. 记录输出。记下默认值。有关选项的详细信息、请参见options cifs.max_mpX手册页。
  5. 如果步骤1和步骤3中的值相同:
    1. 终止 CIFS :cifs terminate
      [cifs stop (in Clustered Data ONTAP)]
    2. 输入: options cifs.max_mpx 126
      [vserver cifs options modify -vserver <vserver_name> -max-mpx 126 (in Clustered Data ONTAP diag mode)]
    3. 重新启动CIFS: cifs restart
      [cifs start (in Clustered Data ONTAP)]
    4. 在CIFS客户端重新建立连接后、再次执行步骤1到4。
  6. 如果步骤1和步骤3中的值保持不变、请再次执行步骤3、但将 cifs.max_mpx 步骤5中的值ii增加到253。如果问题仍然存在、请将 cifs.max_mpx 此值增加到1124。 
  7. 请注意、默认情况下、集群模式Data ONTAP 从255开始。

追加信息

在此处添加您的文本。

 

Scan to view the article on your device