Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

徵狀

假設您有應用程式或 Windows Server 2008 R2,Windows 7 中正在執行的工具和應用程式或工具會執行一或多個下列工作:

  • 使用 ICMP 或 ping.exe 監視另一部伺服器

  • 然後停止啟動多個短暫的處理程序來執行工作,以及程序

  • 其他的應用程式或指令碼然後停止任何的網路活動,以及程序

在此情況下,您的伺服器會持續執行數個小時或幾天,則您注意之後網路存放區介面 」 (NSI) 服務會遺漏記憶體。 此外,您會注意到下列的徵狀:

  • 如果您停止監視軟體時,便會停止記憶體流失。

  • 如果您停止應用程式,然後重新啟動電腦時,則會在 「 NSI 」 服務中發生沒有記憶體流失。

  • 在某些情況下,如果您停用,然後啟用 [網路介面卡,您注意到 CPU 使用量突然突然的增加 NSI 服務。 此外,記憶體使用量立即來自降 1 或 2 gb (GB) 以 200 或 300 百萬位元組 (MB)。

這個問題,可能會出現在下列情況。

案例 1

如果應用程式,例如 ping.exe 強制停止,則可能不會呼叫IcmpCloseHandle函式。 在此情況下,NSI 服務可能會偵測沒有用戶端可用。 因此,服務會持續傳送有關任何 ICMP 訊息的通知。 因為用戶端不存在,通知清單不斷增加。 清單不會未取得加以清除,直到 NSI 服務被停止。

若要傳送 ping,您必須開啟 ICMP 控點,然後再使用 [傳送及接收 ICMP 資料 [這些 IP 協助程式函式:

IcmpCreateFile 函式

ICMPCreateFile 函式

IcmpSendEcho2Ex 函式

應用程式傳送 ping 之後,它必須呼叫IcmpCloseHandle 函式,以關閉 [ICMP] 控點。

案例 2

軟體開發人員會建立要傳送和接收 ICMP 訊息,請使用 IPHlelper Api 的應用程式。 如果只有一個 ICMP 控制碼用來傳送 ICMP 訊息以供多個用戶端,而且如果這種做法會非常高的速率,IPHelper API 都要告知收到訊息時,無法維持速度。 在此情況下,您可以注意到的 NSI 服務記憶體會繼續,更是成指數成長。 此外,您會發現的高 CPU 使用率 NSI 服務 (nsisvc.dll)。

狀況 3

您有應用程式或直接或間接使用IP Helper 函式的服務。 應用程式停止或已停止,而且它不會不正常時結束每個告知登錄不是已取消 (CancelMibChangeNotify2)。在此情況下,NSI 伺服器會保持擱置中的註冊,已停止處理程序。如果有許多的應用程式都會執行個體,NSI 服務會有許多延遲登錄。每個註冊保留有 RPC 非同步的狀態和其他資訊。如此會將記憶體使用量。一般而言,因此這些登錄有針對介面變更] 或 [單點傳播 IP 位址變更。如果狀態沒有變更,因此這些登錄會仍會保留。

在註冊程序期間使用下列的告知函式:

NotifyIpInterfaceChange 函式主題會討論的原因,許多應用程式,請不要呼叫 (CancelMibChangeNotify2) 或停止處理序在 Microsoft 開發人員網路網站上。

NotifyIpInterfaceChange函式呼叫來註冊變更通知之後,這些通知會繼續傳送,直到應用程式會移除註冊以接收變更通知 」 或 「 應用程式的停駐點為止。 如果應用程式停止,則系統會自動解除登錄變更通知的任何登錄。 我們建議您設定應用程式明確地取消註冊變更通知的 [之前它就會停止。

您對每個告知的註冊,還會配置一些非分頁集區 (NPP) 記憶體供NSpc 的標記。

原因

之所以發生這個問題,是因為登錄通知處理序結束而不 NSI 服務的第一個解除登錄。 因此,在 NSI 中的註冊遺漏造成記憶體流失 NSI 服務中。此外NPP 遺漏 NSI Proxy 內容標記 NSpc (NSI.dll) 中的記憶體。

解決方案

Hotfix 資訊

使用 Microsoft 支援從支援的 hotfix。 不過,此 Hotfix 僅用於修正本文中所述的問題。 此 hotfix 只適用於發生本文所述之問題的系統。 此 hotfix 可能會接受其他測試。 因此,如果此問題的影響不會很嚴重,我們建議您等候含此 hotfix 的下一版軟體更新。

如果 hotfix 可供下載,在此知識庫文件頂端將出現「可用的 Hotfix」區段。 如果這個區段沒有出現,請連絡 Microsoft 客戶服務及支援以取得 hotfix。

注意: 如果發生其他問題,或如果需要進行疑難排解,您可能必須建立個別的服務要求。 收取支援費用會套用到其他支援問題和此特定 hotfix 無法解決的問題。 如需 Microsoft 客戶服務和支援的電話號碼或建立個別的服務要求的完整清單,請移至下列 Microsoft 網站:

http://support.microsoft.com/contactus/?ws=support

注意: 「 下載 Hotfix 」 表單會顯示 hotfix 可用的語言。 如果看不到您的語言,是因為未提供該語言的 Hotfix 。

先決條件

若要套用此 hotfix,您必須擁有 Windows 7 或安裝的 Windows Server 2008 R2 的Service Pack 1

重新啟動需求

套用此 hotfix 後,您必須重新啟動電腦。

Hotfix 取代資訊

此 hotfix 不會取代任何先前發行的 hotfix。

檔案資訊

此 Hotfix 的英文版 (美國) 會安裝具有下表中所列屬性的檔案。 這些檔案的日期與時間是以國際標準時間 (UTC) 表示。 本機電腦上這些檔案的日期與時間,是以您當地的時間和目前的日光節約時間 (DST) 的時差來顯示。 此外,當您對檔案執行特定作業時,其日期與時間可能會改變。

Windows 7 和 Windows Server 2008 R2 檔案資訊和注意事項

重要 Windows 7 hotfix 及 Windows Server 2008 R2 hotfix 隨附在相同的套件中。 不過,在 [Hotfix 要求] 頁面上的 Hotfix 會在這兩個作業系統下列出。 若要要求套用至一或兩個作業系統的 Hotfix 套件,請選取此頁面上列在 Windows 7/Windows Server 2008 R2 之下的 Hotfix。 永遠參考文件的〈套用〉一節以判斷實際套用每個 hotfix 的作業系統。

  • 藉由檢查的檔案版本號碼,如下列表格所示,可以識別套用至特定產品、 SR_Level (RTM、 SPn) 及服務分支 (LDR、 GDR) 的檔案。

    版本

    產品

    SR_Level

    服務分支

    6.1.760 016xxx

    Windows 7 和 Windows Server 2008 R2

    RTM

    GDR

    6.1.760 1. 22xxx

    Windows 7 和 Windows Server 2008 R2

    SP1

    LDR

  • GDR 服務分支只包含這些修正程式所發行的通用廣泛的極為重要問題。 LDR 服務分支除了通用修正程式之外,還包含 Hotfix。

  • 資訊清單檔案 (.manifest) 及菊檔案 (.mum) 所安裝的每個環境都分別列於 < 其他檔案的="" windows="" 7="" 和="" windows="" server="" 2008="" r2="" 資訊=""> 一節。

  • MUM 及 MANIFEST 檔案,以及相關的安全性目錄 (.cat) 檔案,對維護更新元件的狀態非常重要。 屬性未列出的安全性目錄檔案是以 Microsoft 數位簽章簽署。

適用於所有支援的 x86 版本 Windows 7

檔案名稱

檔案版本

檔案大小

日期

時間

平台

Nsi.dll

6.1.7600.16385

8,704

14-Jul-2009

01:16

x86

Nsiproxy.sys

6.1.7600.16385

16,896

13-Jul-2009

23:12

x86

Nsisvc.dll

6.1.7601.22590

20,480

05-Feb-2014

02:03

x86

Winnsi.dll

6.1.7600.16385

16,896

14-Jul-2009

01:16

x86

適用於所有支援的 x64 版本 Windows 7 和 Windows Server 2008 R2

檔案名稱

檔案版本

檔案大小

日期

時間

平台

Nsi.dll

6.1.7600.16385

13,824

14-Jul-2009

01:41

x64

Nsiproxy.sys

6.1.7601.22590

24,576

05-Feb-2014

01:15

x64

Nsisvc.dll

6.1.7601.22590

26,624

05-Feb-2014

02:42

x64

Winnsi.dll

6.1.7600.16385

26,112

14-Jul-2009

01:41

x64

Nsi.dll

6.1.7601.22590

8,704

05-Feb-2014

02:03

x86

Winnsi.dll

6.1.7601.22590

16,896

05-Feb-2014

02:04

x86

適用於所有支援的 IA-64 版本 Windows Server 2008 R2

檔案名稱

檔案版本

檔案大小

日期

時間

平台

Nsi.dll

6.1.7600.16385

18,944

14-Jul-2009

01:48

IA-64

Nsiproxy.sys

6.1.7601.22590

53,760

05-Feb-2014

00:50

IA-64

Nsisvc.dll

6.1.7601.22590

60,928

05-Feb-2014

01:48

IA-64

Winnsi.dll

6.1.7600.16385

38,912

14-Jul-2009

01:50

IA-64

Nsi.dll

6.1.7601.22590

8,704

05-Feb-2014

02:03

x86

Winnsi.dll

6.1.7601.22590

16,896

05-Feb-2014

02:04

x86

Windows 7 和 Windows Server 2008 R2 的其他檔案資訊

所有支援的 x86 版本 Windows 7 的其他檔案

檔案名稱

Package_1_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,822

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_2_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,805

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_3_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,807

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_for_kb2847346_rtm~31bf3856ad364e35~x86~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,459

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_for_kb2847346_sp1~31bf3856ad364e35~x86~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,918

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

X86_dfca12963d5c03edca970b29ad513eb4_31bf3856ad364e35_6.1.7601.22590_none_ff32d7aebbbb6891.manifest

檔案版本

不適用

檔案大小

699

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

X86_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749890603f18301d.manifest

檔案版本

不適用

檔案大小

8,301

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:38

平台

不適用

所有支援的 x64 版本 Windows 7 和 Windows Server 2008 R2 的其他檔案

檔案名稱

Amd64_37e172e525713d1718cb98daea282913_31bf3856ad364e35_6.1.7601.22590_none_9888f3a0165278fe.manifest

檔案版本

不適用

檔案大小

1,048

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Amd64_3839818617f8250fd6f59e35da1df9bd_31bf3856ad364e35_6.1.7601.22590_none_8fbf427f98b0d1cb.manifest

檔案版本

不適用

檔案大小

703

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Amd64_a9af583825031567fe0548a9c2c728ab_31bf3856ad364e35_6.1.7601.22590_none_59ced916edddc9da.manifest

檔案版本

不適用

檔案大小

703

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Amd64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_d0b72be3f775a153.manifest

檔案版本

不適用

檔案大小

8,305

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:41

平台

不適用

檔案名稱

Package_1_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,832

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_2_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

2,237

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_3_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

2,015

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_4_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

2,036

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_for_kb2847346_rtm~31bf3856ad364e35~amd64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,467

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_for_kb2847346_sp1~31bf3856ad364e35~amd64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

2,830

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest

檔案版本

不適用

檔案大小

4,690

日期 (UTC)

05-Feb-2014

時間 (UTC)

02:16

平台

不適用

所有支援的 IA-64 版本 Windows Server 2008 R2 的其他檔案

檔案名稱

Ia64_44d491142723affea686ec2fba3cb4ac_31bf3856ad364e35_6.1.7601.22590_none_dc26e555dbabe437.manifest

檔案版本

不適用

檔案大小

1,046

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Ia64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749a34563f163919.manifest

檔案版本

不適用

檔案大小

8,303

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_1_for_kb2847346~31bf3856ad364e35~ia64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

2,029

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Package_for_kb2847346_sp1~31bf3856ad364e35~ia64~~6.1.1.0.mum

檔案版本

不適用

檔案大小

1,446

日期 (UTC)

05-Feb-2014

時間 (UTC)

06:35

平台

不適用

檔案名稱

Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest

檔案版本

不適用

檔案大小

4,690

日期 (UTC)

05-Feb-2014

時間 (UTC)

02:16

平台

不適用

因應措施

要解決這個問題,請使用下列因應措施的其中一個適合您的情況。

案例 1 的解決方法

請確定應用程式,例如 ping.exe,不強制停止。 相反地,讓應用程式正常關機。

或者,請升級到 Windows Server 2012。 在 Windows Server 2012 解決此問題。 此修正程式可以防止 NSI 服務遺漏記憶體,而不管停止應用程式的方式。

案例 2 的解決方法

軟體開發人員應該建立傳送 ICMP 要求的多個 ICMP 控制代碼。 如果您必須傳送大量的 ICMP 封包,您應該使用原始通訊端,並直接傳送和接收未經處理的通訊端上的 ICMP 封包。 它會提供最快的效能。

案例 3 的解決方法

在這個案例中,如果您停用,並啟用網路介面卡的記憶體使用量立即減少但簡短的 CPU 使用量突然增加。

這是因為 IP 位址或介面中變更時,通知的 NSI 服務是由核心。 NSI 服務嘗試以告知所有已註冊要進行通知用戶端。 當服務嘗試通知用戶端處理程序不存在時,RPC 會報告錯誤。 因此,NSI 服務會刪除所有該用戶端處理程序所儲存的狀態資訊。 發生這種情況之後,會釋放該記憶體。

在此情況下,數個 1000 通知已註冊。 在事件發生之後,會釋放這些無效的用戶端的所有記憶體。

在 Windows 8 中解決此問題。

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×