Dell Unity:重複的主機名稱會導致 NFSv4 環境中的效能問題 (使用者可修正)

摘要: 使用相同主機名稱的 NFSv4.1 用戶端可能會經常遇到工作階段終止和重新建立的情況。發生這種情況的原因是 NFSv4.1 協定使用主機名作為唯一用戶端識別碼(用戶端擁有者)的一部分。當多個主機使用相同的識別符時,儲存伺服器 (例如 Dell Unity) 會將其視為嘗試重新建立連線的相同用戶端,導致「工作階段擺動」迴圈和可能的 I/O 當機。

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

症狀

用戶端:使用者報告 NFS 效能顯著下降,特別是小型檔案作業期間出現高延遲。 

Unity 方面:記錄顯示 NAS 伺服器頻繁觸發 checkReplay 邏輯,指示它正在接收具有序列 ID (seqid),它認為已經處理過。 

2026/03/23-09:22:31.571765    3     7FCE8B3CF705     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x2
2026/03/23-09:22:31.571948  177     7FCE8AB4F703     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x3
2026/03/23-09:22:31.571969   15     7FCE8AE7F701     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 1 seqid 0x1
2026/03/23-09:22:33.950467  94K     7FCE8E57B703     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x1
2026/03/23-09:22:33.950614  142     7FCE8E24F702     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x2
2026/03/23-09:22:33.950780  159     7FCE8DEDA705     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x3
2026/03/23-09:22:33.950793    8     7FCE8E22A702     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 1 seqid 0x1
2026/03/23-09:22:36.025980 169K     7FCE8C9FD704     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x1
2026/03/23-09:22:36.026291  305     7FCE8C9B9704     sade:NFS: 3:[NAS_server]  checkReplay: sequence replay slotid 0 seqid 0x3

網路:資料包擷取可識別多個不同 IP 位址 (10.10.1.8 和 10.10.1.3)。兩台主機都在嘗試使用相同的用戶端識別碼向 NFS 伺服器註冊。這會導致爭用情況,其中一個用戶端使另一個用戶端的工作階段失效,從而導致序列錯誤和 1 秒恢復延遲,從而降低性能。 

42855	2026-03-20 02:34:12.752931	10.10.1.3	10.10.1.50	NFS	294	V4 Call (Reply In 42856) CLOSE StateID: 0x97d3
42856	2026-03-20 02:34:12.753069	10.10.1.50	10.10.1.3	NFS	182	V4 Reply (Call In 42855) CLOSE
42857	2026-03-20 02:34:12.753542	10.10.1.50	10.10.1.3	NFS	562	V4 Reply (Call In 42837) OPEN StateID: 0x3dba
42858	2026-03-20 02:34:12.753583	10.10.1.3	10.10.1.50	TCP	66	976 → 2049 [ACK] Seq=14332461 Ack=1382561 Win=26688 Len=0 TSval=2749783070 TSecr=3786939377
42859	2026-03-20 02:34:12.753635	10.10.1.3	10.10.1.50	NFS	330	V4 Call (Reply In 42860) SETATTR FH: 0xac0cc5de
42860	2026-03-20 02:34:12.753718	10.10.1.50	10.10.1.3	NFS	114	V4 Reply (Call In 42859) SEQUENCE Status: NFS4ERR_BADSESSION
42861	2026-03-20 02:34:12.753980	10.10.1.3	10.10.1.50	NFS	186	V4 Call (Reply In 42862) DESTROY_SESSION
42862	2026-03-20 02:34:12.754047	10.10.1.50	10.10.1.3	NFS	114	V4 Reply (Call In 42861) DESTROY_SESSION Status: NFS4ERR_BADSESSION
42863	2026-03-20 02:34:12.754111	10.10.1.3	10.10.1.50	NFS	298	V4 Call (Reply In 42864) CREATE_SESSION
42864	2026-03-20 02:34:12.754171	10.10.1.50	10.10.1.3	NFS	114	V4 Reply (Call In 42863) CREATE_SESSION Status: NFS4ERR_SEQ_MISORDERED
42865	2026-03-20 02:34:12.755288	10.10.1.50	10.10.1.8	NFS	246	V4 Reply (Call In 42852) EXCHANGE_ID
42866	2026-03-20 02:34:12.755357	10.10.1.8	10.10.1.50	NFS	298	V4 Call (Reply In 42867) CREATE_SESSION
42867	2026-03-20 02:34:12.755544	10.10.1.50	10.10.1.8	NFS	194	V4 Reply (Call In 42866) CREATE_SESSION
42868	2026-03-20 02:34:12.755606	10.10.1.8	10.10.1.50	NFS	218	V4 Call (Reply In 42869) PUTROOTFH | GETATTR
42869	2026-03-20 02:34:12.755706	10.10.1.50	10.10.1.8	NFS	182	V4 Reply (Call In 42868) PUTROOTFH | GETATTR
42870	2026-03-20 02:34:12.755775	10.10.1.8	10.10.1.50	NFS	210	V4 Call (Reply In 42871) RECLAIM_COMPLETE
42871	2026-03-20 02:34:12.755855	10.10.1.50	10.10.1.8	NFS	158	V4 Reply (Call In 42870) RECLAIM_COMPLETE
42872	2026-03-20 02:34:12.755926	10.10.1.8	10.10.1.50	NFS	290	V4 Call (Reply In 42873) GETATTR FH: 0xc7011572
42873	2026-03-20 02:34:12.756013	10.10.1.50	10.10.1.8	NFS	362	V4 Reply (Call In 42872) GETATTR
42874	2026-03-20 02:34:12.757262	10.10.1.8	10.10.1.50	NFS	290	V4 Call (Reply In 42875) GETATTR FH: 0x3bc92b95
42875	2026-03-20 02:34:12.757347	10.10.1.50	10.10.1.8	NFS	362	V4 Reply (Call In 42874) GETATTR
42876	2026-03-20 02:34:12.795850	10.10.1.3	10.10.1.50	TCP	66	976 → 2049 [ACK] Seq=14333077 Ack=1382705 Win=26688 Len=0 TSval=2749783113 TSecr=3786939378
42877	2026-03-20 02:34:12.799280	10.10.1.8	10.10.1.50	TCP	66	988 → 2049 [ACK] Seq=78001 Ack=49629 Win=1188 Len=0 TSval=2328275863 TSecr=986324573
43224	2026-03-20 02:34:13.779818	10.10.1.3	10.10.1.50	NFS	354	V4 Call (Reply In 43232) EXCHANGE_ID
43232	2026-03-20 02:34:13.782406	10.10.1.50	10.10.1.3	NFS	246	V4 Reply (Call In 43224) EXCHANGE_ID

 

原因

NFSv4.1 及更高版本中,用戶端使用用戶端擁有者字串向伺服器標識自身。根據預設,許多 Linux 版本會使用用戶端的主機名稱產生此字串。
如果兩個或多個用戶端(在克隆的 VM 或容器化環境中很常見)共用相同的主機名:
  1. 主機 A 建立工作階段。
  2. 主機 B 使用相同的主機名進行連接;伺服器假定主機 A 已重新開機或重新連線。
  3. 伺服器會使主機 A 的工作階段「到期」,以允許主機 B 連線。
  4. 然後,主機 A 嘗試恢復其會話,從而啟動主機 B

這會導致會話重置和序列ID重播的連續迴圈。這會導致嚴重的性能下降,因為客戶端必須暫停所有 I/O 操作一段時間(通常為 1 秒),然後才能重新啟動 EXCHANGE_ID 以回收其會話。 

解析度

Unity 系統依設計運作,並符合 NFSv4.1/4.2 RFC 標準。當出現重複的用戶端 ID(擁有者字串)時,伺服器會正確終止會話以防止數據損壞。

要解決衝突,每個客戶端必須具有全域唯一標識符。確保主機名稱在存取共用的每個用戶端上都是唯一的: 

主機名稱CTL set-hostname <unique_hostname>

重新啟動 NFS 服務或重新啟動用戶端,以確保將新識別碼用於下一個 EXCHANGE_ID 呼叫至 Unity 伺服器。

 

 

受影響的產品

Dell EMC Unity
文章屬性
文章編號: 000449536
文章類型: Solution
上次修改時間: 17 4月 2026
版本:  2
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。