Skip to main content
NetApp Knowledge Base

What are the CIFS values to mitigate client malfunction?

Views:
1,820
Visibility:
Public
Votes:
1
Category:
ontap-9
Specialty:
cifs
Last Updated:

Applies to

  • Clustered Data ONTAP 8.3
  • ONTAP 9

Answer

For the following observed EMS messages:

  • Nblade.cifsMaxSessPerUsrConn
  • Nblade.cifsSameTreePerSess
  • Nblade.cifsMaxOpenSameFile
  • Nblade.cifsMaxWatchesPerTree

The respective fields, their default values, and corrective actions are outlined below:

EMS: Nblade.cifsMaxSessPerUsrConn
Flag: -max-same-user-sessions-per-connection [0..4294967295]

This value designates the maximum number of sessions opened by the same user per connection. The default value prior to 9.3 was 2050, the default value in 9.3+ is 2500.

Syslog Message Received too many session requests from the same user on one TCP connection: clientIP:port %s:%d, user "%s". Object type is: %s with UUID: %s.
Severity ERR
Description This message occurs when the number of sessions allowed per user over a TCP connection is exceeded. This request and any further session establishment requests are denied until some sessions are released. This is typically caused by a faulty client or application.
Corrective Action Inspect all applications running on the client, and terminate any that are not operating properly. Rebooting the client might also be helpful. In some cases, clients are operating as expected but require a higher threshold, which you can set using the (privilege: advanced) "cifs option modify -max-same-user-sessions-per-connection" command.

EMS: Nblade.cifsSameTreePerSess
Flag: -max-same-tree-connect-per-session [0..4294967295]       

This value designates the maximum number of tree connects on the same share per session. The default value prior to 9.3 was 4096, the default value in 9.3+ is 5000.

EMS Identifier Nblade.cifsSameTreePerSess
Syslog Message Received too many connection requests to the same share from one session: clientIP:port %s:%d, share "%s", user "%s".
Severity ERR
Description This message occurs when the number of connections to the same share allowed per session is exceeded. This request and any further requests to establish another connection to that share are denied until some connections to the share are released. This typically indicates abnormal client behavior.
Corrective Action Inspect the application using the connection and also monitor the other applications on the client. The client might be operating incorrectly due to a faulty application running on it. Rebooting the client might also be helpful. In some cases, clients are operating as expected but require a higher threshold, which you can set using (privilege: advanced) "cifs option modify -max-same-tree-connect-per-session" command.

EMS: Nblade.cifsMaxOpenSameFile
Flag: -max-opens-same-file-per-tree [0..4294967295]     

This value designates the maximum number of opens on the same file per CIFS tree. The default value prior to 9.3 was 800, the default value in 9.3+ is 1000.

EMS Identifier Nblade.cifsMaxOpenSameFile
Syslog Message Received too many open file requests for the same file by one user on a connection: clientIP:port %s:%d, file "%s" on share "%s". Object type is: %s with UUID: %s.
Severity ERR
Description This message occurs when the number of times a user tries to open a file over a TCP connection is exceeded. This request and any further requests to open the same file by the user are denied until some open instances of the file are closed. This typically indicates abnormal application behavior.
Corrective Action Inspect the application running on the client using this TCP connection. The client might be operating incorrectly due to the application running on it. Rebooting the client might also be helpful. In some cases, clients are operating as expected but require a higher threshold, which you can set using the (privilege: advanced) "cifs option modify -max-opens-same-file-per-tree" command.

EMS: Nblade.cifsMaxWatchesPerTree
Flag: -max-watches-set-per-tree [0..4294967295]       

This value designates the maximum number of Change Notifies established per tree. The default value prior to 9.3 was 100, the default value in 9.3+ is 500.

EMS Identifier Nblade.cifsMaxWatchesPerTree
Syslog Message Received too many Change Notify requests on one tree: clientIP:port %s:%d, directory "%s" on share "%s".
Severity ERR
Description This message occurs when the total number of directory watch (Change Notify) requests exceed the per-tree limit. This request and any further directory watch requests are denied. This typically indicates abnormal client behavior.
Corrective Action Inspect the application using the connection and also monitor the other applications on the client. The client might be operating incorrectly due to a faulty application running on it. Rebooting the client might also be helpful. In some cases, clients are operating as expected but require a higher threshold, which can be set using the (privilege: advanced) "cifs option modify -max-watches-set-per-tree" command.

If error is seen:
(for example) Nblade.cifsMaxWatchesPerTree
Follow the directions as presented in the syslog translator:
 
Description This message occurs when the total number of directory watch (Change Notify) requests exceed the per-tree limit. This request and any further directory watch requests are denied. This typically indicates abnormal client behavior.
Corrective Action Inspect the application using the connection and also monitor the other applications on the client. The client might be operating incorrectly due to a faulty application running on it. Rebooting the client might also be helpful. In some cases, clients are operating as expected but require a higher threshold, which can be set using the (privilege: advanced) "cifs option modify -max-watches-set-per-tree" command.

*Those are available in the CIFS options modify command.

NOTE: Maximum values should be respected as limitations of the field for holding numerical values. Every cluster is different and may require different maximums due to physical constraints. Testing should be used when modifying these values to ensure they do not cause more issues than they solve.

  • I am hitting one of the above errors. Do I need to increase a value?
    • Check the corrective action.
    • Is it expected that the value be exceeded by the client(s)?
      • Some examples when this might be expected could include a xen server, iis server, web server, or other devices which establishes the CIFS session on behalf of multiple users.
      • If not expected, client-side investigation (OS/Application vendor) needs to be performed
        • This will likely need involvement beyond storage administration such as server or application administration
          • If OS/Application administrator is unsure, open a case with the Client OS and/or application vendor.
  • What value should it be set to?
    • Ideally, this guidance should come from the Client OS/Application Vendor.
  • Client OS/Application vendor provides no guidance on these values
    • If there is an expectation that the default value will be exceeded in a natural manner, but there is uncertainty about how the natural behavior will go, then testing higher values will be necessary.
  • There is no perfect method of determining a perfect number to set the value to.
    • One method of testing might be doubling the value, if the error returns, double again, etc.
    • Another method is more slowly increasing the value until the error goes away. (assuming behavior of the OS/application vendor is expected)

Additional Information

The default values for these fields were increased in ONTAP 9.3. Some or all filers that upgraded to ONTAP 9.3+ from a previous version may retain their original default values, though these values can still be modified as necessary using the above steps.