跳转到主内容

什么是 Fpolicy EAGAIN 错误?何时发生?

Views:
2
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
nas
Last Updated:

适用场景

ONTAP 9

问题解答

如果为 LIF 与 fpolicy 服务器之间的特定 TCP 会话分配的发送或接收缓冲区已满,并且不再为发送请求或接收响应留出空间,则会发生 EAGAIN 错误。当请求得到响应或 ONTAP 从缓冲区中提取响应时,缓冲区将处于空闲状态。发生 EAGAIN 时,系统会将该 SVM 的倒带行为触发到该 fpolicy 服务器,具体取决于 ONTAP 的版本,此倒带 / 延迟行为可能会有所不同。

  • 未修复错误 1372994 的版本:
    • ONTAP 会将该 TCP 会话上的 fpolicy 请求暂停 2 秒,然后在恢复时开始发送排队等待的请求。
  • 已修复错误 1372994 的版本:
    • 对于第一次尝试, ONTAP 将在 1 毫秒后重试此请求。如果同一请求发生另一个 EAGAINK ,则 ONTAP 将继续每 100 毫秒重试一次,最长持续 2 秒,如果在超时之前无法将此请求添加到缓冲区,则会关闭此套接字。如果可以在断开连接之前将此请求添加到缓冲区,则在下次出现 EAGAIN 时,此过程将恢复为 1 毫秒延迟计时器。

EAGAIN_Flow.png

错误示例:

  • EMS 或event log show

[filer1: fpolicy: fpolicy.eagain.on.write:notice]: Write returned EAGAIN while sending notification to the FPolicy server "1.2.3.4" for vserver ID 3.

  • fpolicy-mlogs :

Fpolicy.log reports errors pertaining to EAGAIN errors similar to the following:
[kern_fpolicy:error:1552] Write returned EAGAIN[35] [0x0x80c408d00] src/fsm/fsm_external_engine.cc:864

错误1479704的修复版本已将行为扩展到上述流程。 

  • 如果流量已满且发生断开连接、则会启动2分钟计时器。
  • 如果在2分钟计时器内因EAGAIN而断开4次连接、则FPolicy服务器将永久断开连接、并触发EMS事件。

 

NetApp provides no representations or warranties regarding the accuracy or reliability or serviceability of any information or recommendations provided in this publication or with respect to any results that may be obtained by the use of the information or observance of any recommendations provided herein. The information in this document is distributed AS IS and the use of this information or the implementation of any recommendations or techniques herein is a customer's responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. This document and the information contained herein may be used solely in connection with the NetApp products discussed in this document.
  • 这篇文章对您有帮助吗?