Iniciar sessão com a Microsoft
Iniciar sessão ou criar uma conta.
Olá,
Selecione uma conta diferente.
Tem várias contas
Selecione a conta com a qual pretende iniciar sessão.

Sintomas

Suponha que tem uma aplicação ou ferramenta que está a ser executado no Windows 7 ou Windows Server 2008 R2 e que a aplicação ou a ferramenta efectua uma ou mais das seguintes tarefas:

  • Monitorização de outro servidor utilizando o ICMP ou ping.exe

  • Iniciar vários processos curto para desempenhar uma tarefa e o processo é parado, em seguida

  • Efectuar qualquer actividade de rede e o processo é parado, em seguida, por outra aplicação ou script

Nesta situação, depois do servidor é executado continuamente durante várias horas ou vários dias, notar que o serviço de Interface de arquivo de rede (NSI) fugas de memória. Além disso, detectar os seguintes sintomas:

  • Se parar o software de monitorização, pára a fuga de memória.

  • Não se parar a aplicação e, em seguida, reinicie o computador, ocorre nenhuma fuga de memória no serviço de NSI.

  • Em alguns casos, se desactivar e, em seguida, Active a placa de rede, notará um pico súbito de utilização da CPU pelo serviço NSI. Além disso, a utilização da memória imediatamente provém gotas 1 ou 2 gigabytes (GB) de 200 ou 300 megabytes (MB).

Este problema pode ocorrer em qualquer um dos seguintes cenários.

Cenário 1

Se uma aplicação como ping.exe forçosamente for parado, é possível que a função IcmpCloseHandle não é chamada. Neste caso, o serviço NSI poderá detectar que existe um cliente disponível. Por conseguinte, o serviço continuamente enviar notificações sobre quaisquer mensagens ICMP. Uma vez que o cliente não existe, a lista de notificação continua a aumentar. Não obter limpar a lista até que o serviço NSI está parado.

Para enviar um ping, tem de abrir o identificador ICMP e, em seguida, utilizar estas outras funções de programa auxiliar IP para enviar e receber dados ICMP:

Função de IcmpCreateFile

Função de ICMPCreateFile

Função de IcmpSendEcho2Ex

Depois da aplicação envia o ping, tem de chamar a função IcmpCloseHandle para fechar o identificador ICMP.

Cenário 2

Um programador cria uma aplicação para enviar e receber mensagens ICMP utilizando APIs de IPHlelper. Se apenas um identificador ICMP é utilizado para enviar mensagens de ICMP para vários clientes e se tal acontecer faz a uma velocidade muito elevada, a API de IPHelper que é notificado quando é recebida uma mensagem não é possível manter a velocidade. Neste caso, repare que a memória do serviço NSI continua a crescer exponencialmente. Além disso, pode detectar utilização elevada da CPU pelo serviço NSI (nsisvc.dll).

Cenário 3

Tem uma aplicação ou serviço que directa ou indirectamente utiliza funções de programa auxiliar IP. A aplicação deixa ou parado, e se não sair correctamente quando cada registo de notificação não é cancelado (CancelMibChangeNotify2). Neste caso, o servidor NSI mantém o registo pendentes para o processo que está parado. Se existirem várias instâncias de paragem de aplicação, o serviço NSI irá ter muitos registos lentos. Um Estado do RPC assíncrona e outras informações são mantidas para cada registo. Esta acção adiciona a utilização da memória. Normalmente, estes registos são feitos por uma alteração de interface ou uma alteração de endereço IP de Unicast. Se não existir nenhuma alteração no Estado, estes registos ainda são mantidos.

As seguintes funções de notificação são utilizadas durante o processo de registo:

O motivo que muitas aplicações não chamar (CancelMibChangeNotify2) ou parar o processo é discutido no tópico função NotifyIpInterfaceChange no Web site da Microsoft Developer Network.

Depois da função NotifyIpInterfaceChange é chamado para registar notificações de alterações, estas notificações continuam a ser enviadas até que a aplicação anula o registo para receber notificações de alteração ou a aplicação é interrompida. Se a aplicação parar, o sistema automaticamente anula o registo de qualquer registo para notificações de alterações. Recomendamos que configure uma aplicação explicitamente anular o registo para notificações de alterações antes de parar.

Para cada registo de notificação, que efectuar também atribuir memória não paginado (NPP) para o oCódigo NSpc.

Causa

Este problema ocorre porque o processo que regista para notificação sai sem primeiro a anular o registo do serviço NSI. Por conseguinte, a fuga de registo NSI faz com que a fuga de memória no serviço de NSI. Além disso, o NPP fugas de memória no NSpc de Tag de contextos de Proxy NSI (NSI.dll).

Resolução

Informações sobre correção

Uma correção suportada está disponível a partir do Suporte da Microsoft. No entanto, esta correção destina-se apenas a corrigir o problema descrito neste artigo. Aplique esta correção apenas em sistemas que tenham o problema descrito neste artigo. Esta correcção poderá ser submetida a testes adicionais. Por conseguinte, se não estiver a ser gravemente afetado por este problema, recomendamos que aguarde pela próxima atualização de software que contenha esta correção.

Se a correcção estiver disponível para transferência, existirá uma secção de "Transferência de correcção disponível" na parte superior deste artigo da Base de dados de conhecimento. Se esta secção não for apresentada, contacte o Suporte ao Cliente da Microsoft para obter a correção.

Nota Caso ocorram problemas adicionais ou se for necessária a resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos de normais do suporte serão aplicados a questões de suporte adicional e problemas incluídos nesta correção específica. Para uma lista completa dos números de telefone de suporte e serviço de cliente da Microsoft ou para criar um pedido de assistência separado, vá para o seguinte Web site da Microsoft:

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

Nota O formulário "Transferência de correcção disponível" apresenta os idiomas nos quais a correcção está disponível. Se não visualizar o seu idioma, é porque uma correcção não está disponível para esse idioma.

Pré-requisitos

Para aplicar esta correcção, tem de ter o Service Pack 1 para Windows 7 ou Windows Server 2008 R2.

Requisito de reinício

Tem de reiniciar o computador depois de aplicar esta correcção.

Informações sobre substituição de correções

Esta correcção não substitui qualquer correcção disponibilizada anteriormente.

Informações de ficheiro

A versão inglesa (Estados Unidos) desta correcção instala ficheiros que têm os atributos listados nas tabelas seguintes. As datas e horas destes ficheiros são listadas na Hora Universal Coordenada (UTC). As datas e horas destes ficheiros no computador local são apresentadas na hora local em conjunto com a compensação de hora de Verão (DST) atual. Além disso, as datas e horas podem ser alteradas quando são executadas determinadas operações nos ficheiros.

Informações de ficheiro do Windows 7 e Windows Server 2008 R2 e notas

Importante Correcções do Windows 7 e Windows Server 2008 R2 correcções são incluídas nos pacotes mesmos. No entanto, as correcções na página de pedido de correcção estão listadas em ambos os sistemas operativos. Para pedir o pacote de correcções que se aplica a um ou ambos os sistemas operativos, seleccione a correcção listada em "Windows 7/Windows Server 2008 R2" na página. Consulte a secção "Aplica-se a" nos artigos para determinar o sistema operativo real que cada correcção aplica-se para sempre.

  • Os ficheiros aplicáveis a um produto específico, SR_Level (RTM, SPn) e ramo de serviço (LDR, GDR) podem ser identificados examinando os números de versão do ficheiro, conforme mostrado na seguinte tabela.

    Versão

    Produto

    SR_Level

    Ramo de serviço

    6.1.760 0. 16xxx

    Windows 7 e Windows Server 2008 R2

    RTM

    GDR

    6.1.760 1. 22xxx

    Windows 7 e Windows Server 2008 R2

    SP1

    LDR

  • Ramos de serviço GDR contêm apenas as correcções amplamente distribuídas para resolver problemas extremamente importante generalizados. Os ramos de serviço LDR contêm outras correcções além das correcções amplamente distribuídas.

  • Os ficheiros MANIFEST (. manifest) e MUM (. mum) instalados em cada ambiente é listados em separado na secção "Informações para o Windows 7 e Windows Server 2008 R2 ficheiros adicionais".

  • Ficheiros MUM, MANIFESTO e os ficheiros de catálogo de segurança (. cat) associados, são extremamente importantes para manter o estado dos componentes atualizados. Os ficheiros de catálogo de segurança, para os quais os atributos não são listados são assinados com uma assinatura digital da Microsoft.

Para todas as versões baseadas em x86 suportadas do Windows 7

Nome do ficheiro

Versão do ficheiro

Tamanho do ficheiro

Data

Hora

Plataforma

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

Para todas as versões baseadas em x64 do Windows 7 e Windows Server 2008 R2 suportadas

Nome do ficheiro

Versão do ficheiro

Tamanho do ficheiro

Data

Hora

Plataforma

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

Para todas as versões suportadas baseadas em IA-64 do Windows Server 2008 R2

Nome do ficheiro

Versão do ficheiro

Tamanho do ficheiro

Data

Hora

Plataforma

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

Informações sobre ficheiros adicionais para Windows 7 e Windows Server 2008 R2

Ficheiros adicionais para todas as versões baseadas em x86 suportadas do Windows 7

Nome do ficheiro

Package_1_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,822

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_2_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,805

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_3_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,807

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_for_kb2847346_rtm~31bf3856ad364e35~x86~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,459

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_for_kb2847346_sp1~31bf3856ad364e35~x86~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,918

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

X86_dfca12963d5c03edca970b29ad513eb4_31bf3856ad364e35_6.1.7601.22590_none_ff32d7aebbbb6891.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

699

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

X86_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749890603f18301d.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

8,301

Data (UTC)

05-Feb-2014

Hora (UTC)

06:38

Plataforma

Não aplicável

Ficheiros adicionais para todas as versões baseadas em x64 do Windows 7 e Windows Server 2008 R2 suportadas

Nome do ficheiro

Amd64_37e172e525713d1718cb98daea282913_31bf3856ad364e35_6.1.7601.22590_none_9888f3a0165278fe.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,048

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Amd64_3839818617f8250fd6f59e35da1df9bd_31bf3856ad364e35_6.1.7601.22590_none_8fbf427f98b0d1cb.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

703

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Amd64_a9af583825031567fe0548a9c2c728ab_31bf3856ad364e35_6.1.7601.22590_none_59ced916edddc9da.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

703

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Amd64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_d0b72be3f775a153.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

8,305

Data (UTC)

05-Feb-2014

Hora (UTC)

06:41

Plataforma

Não aplicável

Nome do ficheiro

Package_1_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,832

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_2_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

2,237

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_3_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

2,015

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_4_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

2,036

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_for_kb2847346_rtm~31bf3856ad364e35~amd64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,467

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_for_kb2847346_sp1~31bf3856ad364e35~amd64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

2,830

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

4,690

Data (UTC)

05-Feb-2014

Hora (UTC)

02:16

Plataforma

Não aplicável

Ficheiros adicionais para todas as versões baseadas em IA-64 do Windows Server 2008 R2 suportadas

Nome do ficheiro

Ia64_44d491142723affea686ec2fba3cb4ac_31bf3856ad364e35_6.1.7601.22590_none_dc26e555dbabe437.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,046

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Ia64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749a34563f163919.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

8,303

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_1_for_kb2847346~31bf3856ad364e35~ia64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

2,029

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Package_for_kb2847346_sp1~31bf3856ad364e35~ia64~~6.1.1.0.mum

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

1,446

Data (UTC)

05-Feb-2014

Hora (UTC)

06:35

Plataforma

Não aplicável

Nome do ficheiro

Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest

Versão do ficheiro

Não aplicável

Tamanho do ficheiro

4,690

Data (UTC)

05-Feb-2014

Hora (UTC)

02:16

Plataforma

Não aplicável

Solução

Para contornar este problema, utilize uma das seguintes soluções conforme adequado à sua situação.

Solução para o cenário 1

Certifique-se de que a aplicação, tal como ping.exe, não está forçosamente parada. Em vez disso, permitir que a aplicação correctamente encerramento.

Em alternativa, actualizar para o Windows Server 2012. Este problema foi corrigido no Windows Server 2012. Esta correcção impede que o serviço NSI uma fuga de memória independentemente da forma como a aplicação está parada.

Solução para o cenário 2

Um programador de software deverá criar vários identificadores ICMP para enviar pedidos ICMP. Se tiver de enviar um grande número de pacotes ICMP, deve utilizar sockets não processados e directamente enviar e receber pacotes ICMP no socket em bruto. Isso dará o melhor desempenho.

Solução para o cenário 3

Neste cenário, se desactivar e activar a placa de rede, a utilização da memória imediatamente diminui mas tem um pico curto de utilização da CPU.

Isto ocorre porque quando ocorrer uma alteração no endereço IP ou a interface, o serviço NSI é notificado pelo kernel. O serviço NSI, em seguida, tenta comunicada todos os clientes que estão registados para a notificação. Quando o serviço tenta notificar um processo de cliente que não existe, o RPC comunica um erro. Por conseguinte, o serviço NSI elimina todas as informações de estado que foi guardadas para esse processo de cliente. Depois disto, que a memória é libertada.

Neste caso, são registadas vários e Quinhentos Mil notificações. Depois do evento ocorre, toda a memória para estes clientes inválidos é libertada.

Este problema é corrigido no Windows 8.

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.

Estas informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?
Ao selecionar submeter, o seu feedback será utilizado para melhorar os produtos e serviços da Microsoft. O seu administrador de TI poderá recolher estes dados. Declaração de Privacidade.

Obrigado pelo seu feedback!

×