Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Проблемы

Предположим, что имеется приложение или средство, которое работает в Windows 7 или Windows Server 2008 R2 и что приложение или средство выполняет одно или несколько из следующих задач:

  • Мониторинг другого сервера с помощью протокола ICMP или ping.exe

  • Запуск нескольких короткоживущих процессов для выполнения своей работы и процесс затем остановлена

  • Это любой сетевой активности и процесс затем остановлено другим приложением или сценария

В этом случае после сервер работает непрерывно несколько часов или несколько дней, можно заметить, что утечка памяти в службе сетевого интерфейса хранилища (NSI). Кроме того можно заметить следующие проблемы:

  • Если остановить мониторинг программного обеспечения перестает утечки памяти.

  • Если остановить приложение, а затем перезагрузите компьютер, не происходит утечка памяти происходит в службе NSI.

  • В некоторых случаях если вы отключите и затем включить сетевой адаптер можно заметить внезапного пик использования ЦП службой NSI. Кроме того использование памяти сразу приходит падения с 1 или 2 гигабайта (ГБ) 200 или 300 мегабайт (МБ).

Эта проблема может возникнуть в любом из следующих случаев.

Сценарий 1

Если приложение, например, ping.exe принудительно остановлен, это возможно, функция IcmpCloseHandle не вызывается. В этом случае служба NSI может обнаружить, что имеется клиент. Таким образом служба постоянно отправлять уведомления о все ICMP-сообщения. Поскольку клиент не существует, список уведомлений постоянно растет. Список не очищены до NSI служба остановлена.

Чтобы отправить сообщение ping, необходимо открыть дескриптор протокола ICMP, а затем использовать эти другие функции модуля поддержки IP для отправки и получения данных ICMP:

Функция IcmpCreateFile

Функция ICMPCreateFile

Функция IcmpSendEcho2Ex

После приложение отправляет ping, его необходимо вызвать функцию IcmpCloseHandle , закрыть дескриптор протокола ICMP.

Сценарий 2

Разработчик создает приложение для отправки и приема сообщений ICMP с помощью интерфейсов API IPHlelper. Если только один маркер ICMP используется для отправки сообщений ICMP c для нескольких клиентов, а если это делает это с очень высокой скоростью, IPHelper API, который получает уведомление при получении сообщения не может поддерживать скорость. В этом случае можно заметить памяти службой NSI продолжает расти экспоненциально. Кроме того можно заметить, высокая загрузка ЦП службой NSI (nsisvc.dll).

Сценарий 3

У вас есть приложение или служба, которая прямо или косвенно используются функции модуля поддержки IP. Приложение перестает или будет остановлена, и он, не корректно завершаться при каждой регистрации уведомлений не отмененных (CancelMibChangeNotify2). В этом случае сервер NSI сохраняет регистрации ожидания для процесса, который будет остановлена. При наличии нескольких экземпляров приложения перерыв, служба NSI будет иметь много устаревших регистраций. Состояние асинхронного RPC и другая информация сохраняется для каждой регистрации. Это добавляет использования памяти. Обычно эти регистрации создаются для изменения интерфейса или изменение адреса одноадресной IP. Если нет никаких изменений в состоянии, по-прежнему поддерживаются этих регистраций.

В процессе регистрации используются следующие функции уведомления:

Причиной многих приложений не вызова (CancelMibChangeNotify2) или остановить процесс обсуждается в разделе функции NotifyIpInterfaceChange на веб-узле Microsoft Developer Network.

После вызова функции NotifyIpInterfaceChange для регистрации уведомлений об изменениях этих уведомлений продолжать будет отправить, пока приложение отменяет регистрацию для получения уведомлений об изменениях или остановки приложения. Если приложение, система автоматически отменяет регистрацию какая-либо Регистрация уведомлений об изменениях. Корпорация Майкрософт рекомендует настроить приложение явно регистрацию для уведомления об изменениях, прежде чем остановится.

Для каждой регистрации уведомления о внесении также распределить память невыгружаемого пула (NPP) дляNSpc тег.

Причина

Эта проблема возникает, так как процесс, который регистрируется для получения уведомлений завершает работу без первого Отмена регистрации в службе NSI. Таким образом утечка регистрации в NSI вызывает утечки памяти в службе NSI. Кроме того, NPP утечка памяти в NSpc тег контекстов NSI прокси-сервера (NSI.dll).

Решение

Сведения об исправлении

Доступно исправление от службы поддержки Майкрософт. Однако данное исправление предназначено для устранения только проблемы, описанной в этой статье. Применяйте это исправление только в тех случаях, когда наблюдается проблема, описанная в данной статье. Это исправление может проходить дополнительное тестирование. Таким образом если вы не подвержены серьезно этой проблеме, рекомендуется дождаться следующего пакета обновления, содержащего это исправление.

Если исправление доступно для скачивания, имеется раздел "Пакет исправлений доступен для скачивания" в верхней части этой статьи базы знаний. Если этот раздел не отображается, обратитесь в службу поддержки для получения исправления.

Примечание. Если наблюдаются другие проблемы или необходимо устранить неполадки, вам может понадобиться создать отдельный запрос на обслуживание. Стандартная оплата за поддержку будет взиматься только за дополнительные вопросы и проблемы, которые не соответствуют требованиям конкретного исправления. Чтобы просмотреть полный список телефонов поддержки и обслуживания клиентов корпорации Майкрософт или создать отдельный запрос на обслуживание, посетите следующий веб-сайт корпорации Майкрософт:

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

Примечание. В форме "Пакет исправлений доступен для скачивания" отображаются языки, для которых доступно исправление. Если нужный язык не отображается, значит исправление для данного языка отсутствует.

Предварительные условия

Для установки этого исправления необходимо иметь Пакет обновления 1 для Windows 7 или Windows Server 2008 R2 установлен.

Требование к перезапуску

После установки исправления компьютер необходимо перезагрузить.

Сведения о замене исправлений

Это исправление не заменяет все ранее выпущенные исправления.

Сведения о файлах

Английский (США) версия данного исправления устанавливает файлы с атрибутами, указанными в приведенных ниже таблицах. Даты и время для файлов указаны в формате UTC. Даты и время для этих файлов на локальном компьютере отображаются с учетом часового пояса и перехода на летнее время. Кроме того, даты и время могут изменяться при выполнении определенных операций с файлами.

Информация о файлах для Windows 7 и Windows Server 2008 R2 и примечания

Важно! Исправления для Windows 7 и Windows Server 2008 R2 включены в одни и те же пакеты. Однако на странице запроса исправления они указаны для обеих операционных систем. Чтобы запросить исправление для одной или обеих операционных систем, выберите его в разделе "Windows 7" и (или) "Windows Server 2008 R2". Сведения о том, для каких операционных систем предназначено исправление, см. в разделе "Информация в данной статье применима к" посвященной ему статьи.

  • Файлы, относящиеся к определенному продукту, этапу разработки (RTM, SPn) и направлению поддержки (LDR, GDR) можно определить путем проверки номера версий файлов, как показано в следующей таблице.

    Версия

    Продукт

    SR_Level

    Направление поддержки

    6.1.760 0. 16 - xxx

    Windows 7 и Windows Server 2008 R2

    RTM

    GDR

    6.1.760 1. 22 - xxx

    Windows 7 и Windows Server 2008 R2

    SP1

    LDR

  • Направления поддержки GDR содержат только те исправления, которые выпускаются повсеместно и предназначены для устранения распространенных критических проблем. Направления поддержки LDR содержат дополнительные исправления для широко распространенных исправлений.

  • Файлы МАНИФЕСТА (.manifest) и MUM (.mum), устанавливаемые для каждой среды, указаны отдельно в разделе «Дополнительные «сведения о файлах для Windows 7 и Windows Server 2008 R2.

  • Файлы MUM и MANIFEST, а также связанные файлы каталога безопасности (CAT) чрезвычайно важны для поддержания состояния обновленных компонентов. Файлы каталога безопасности, атрибуты для которых не указаны, подписаны цифровой подписью Майкрософт.

Для всех поддерживаемых 32-разрядных (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

Для всех поддерживаемых 64-разрядных (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

Для всех поддерживаемых версий Windows Server 2008 R2 для систем на базе процессоров IA-64

Имя файла

Версия файла

Размер

Дата

Время

Платформа

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

Дополнительные файлы для всех поддерживаемых 86-разрядных версий Windows 7

Имя файла

Package_1_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,822

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_2_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,805

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_3_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,807

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_for_kb2847346_rtm~31bf3856ad364e35~x86~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,459

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_for_kb2847346_sp1~31bf3856ad364e35~x86~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,918

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

X86_dfca12963d5c03edca970b29ad513eb4_31bf3856ad364e35_6.1.7601.22590_none_ff32d7aebbbb6891.manifest

Версия файла

Not Applicable

Размер

699

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

X86_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749890603f18301d.manifest

Версия файла

Not Applicable

Размер

8,301

Дата (UTC)

05-Feb-2014

Время (UTC)

06:38

Платформа

Not Applicable

Дополнительные файлы для всех поддерживаемых версий x64 под управлением Windows 7 и Windows Server 2008 R2

Имя файла

Amd64_37e172e525713d1718cb98daea282913_31bf3856ad364e35_6.1.7601.22590_none_9888f3a0165278fe.manifest

Версия файла

Not Applicable

Размер

1,048

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Amd64_3839818617f8250fd6f59e35da1df9bd_31bf3856ad364e35_6.1.7601.22590_none_8fbf427f98b0d1cb.manifest

Версия файла

Not Applicable

Размер

703

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Amd64_a9af583825031567fe0548a9c2c728ab_31bf3856ad364e35_6.1.7601.22590_none_59ced916edddc9da.manifest

Версия файла

Not Applicable

Размер

703

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Amd64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_d0b72be3f775a153.manifest

Версия файла

Not Applicable

Размер

8,305

Дата (UTC)

05-Feb-2014

Время (UTC)

06:41

Платформа

Not Applicable

Имя файла

Package_1_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,832

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_2_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

2,237

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_3_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

2,015

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_4_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

2,036

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_for_kb2847346_rtm~31bf3856ad364e35~amd64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,467

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_for_kb2847346_sp1~31bf3856ad364e35~amd64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

2,830

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest

Версия файла

Not Applicable

Размер

4,690

Дата (UTC)

05-Feb-2014

Время (UTC)

02:16

Платформа

Not Applicable

Дополнительные файлы для всех поддерживаемых версий Windows Server 2008 R2 с архитектурой IA-64

Имя файла

Ia64_44d491142723affea686ec2fba3cb4ac_31bf3856ad364e35_6.1.7601.22590_none_dc26e555dbabe437.manifest

Версия файла

Not Applicable

Размер

1,046

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Ia64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749a34563f163919.manifest

Версия файла

Not Applicable

Размер

8,303

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_1_for_kb2847346~31bf3856ad364e35~ia64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

2,029

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Package_for_kb2847346_sp1~31bf3856ad364e35~ia64~~6.1.1.0.mum

Версия файла

Not Applicable

Размер

1,446

Дата (UTC)

05-Feb-2014

Время (UTC)

06:35

Платформа

Not Applicable

Имя файла

Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest

Версия файла

Not Applicable

Размер

4,690

Дата (UTC)

05-Feb-2014

Время (UTC)

02:16

Платформа

Not Applicable

Обходное решение

Чтобы обойти эту проблему, воспользуйтесь одним из следующих возможных решений в зависимости от конкретной ситуации.

Временное решение для случая 1

Убедитесь в том, что приложения, например, ping.exe, не завершается принудительно. Вместо этого разрешите приложению корректно завершения работы.

Кроме того обновление до Windows Server 2012. Эта проблема исправлена в Windows Server 2012. Это исправление предотвращает утечки памяти, независимо от того, как приложение будет остановлено NSI службы.

Временное решение для сценария 2

Разработчик программного обеспечения следует создать несколько дескрипторов ICMP для отправки запросов проверки связи ICMP. При отправке большого количества пакетов ICMP вы должны использовать незащищенные сокеты и непосредственно отправлять и получать пакеты ICMP на RAW socket. Это позволит получить максимальное быстродействие.

Временное решение для сценария 3

В этом случае если отключить и включить сетевой адаптер использование памяти немедленно уменьшается, но имеет короткий пик использования ЦП.

Так происходит, когда происходит изменение в интерфейсе или IP-адрес, служба NSI уведомление ядром. Служба NSI пытается notifiy все клиенты, зарегистрированные для уведомления. Когда служба пытается уведомить клиентского процесса, который не существует, RPC сообщает об ошибке. Таким образом служба NSI удаляет все сведения о состоянии, сохраненного в клиентском процессе. После этого, что память освобождается.

В этом случае регистрируются несколько сотен тысяч уведомлений. После возникновения события всю память для этих клиентов недопустимый освобождается.

Эта проблема исправлена в Windows 8.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×