Požymiai
Tarkime, kad turite programą ar įrankis, kuris veikia sistemoje "Windows 7" arba "Windows Server 2008 R2, ir kad paraišką arba įrankis atlieka vieną ar daugiau iš šių užduočių:
-
Kontroliuoti kitą serverį naudojant ICMP arba ping.exe
-
Pradedant kelis trumpalaikis procesus atlikti užduotį, o procesas nutraukiamas tada
-
Tinklo veikla, ir procesas nutraukiamas tada kita taikomoji programa arba scenarijų
Tokiu atveju, kai jūsų serveris veikia nuolat keletą valandų ar keletą dienų, jūs pastebėsite, kad tinklo saugykla sąsaja (NSI) paslaugos nutekėjimas atminties. Be to, galite pastebėti tokius požymius:
-
Jei sustabdysite stebėjimo programinę įrangą, atminties nuotėkio sustoja.
-
Jei nustoti taikyti ir tada iš naujo paleiskite kompiuterį, jokių atminties nutekėjimas įvyksta NSI tarnyboje.
-
Kai kuriais atvejais, jei jūs išjungti ir tada Įgalinti tinklo plokštę, pastebite staiga smeigtuką procesoriaus naudojimas NSI tarnyba. Be to, atminties naudojimas iš karto ateina nuolat iš 1 arba 2 gigabaitų (GB) 200 ar 300 megabaitų (MB).
Ši problema gali kilti bet kurioje iš šių scenarijų.
1 scenarijus
Jei programą, pavyzdžiui, ping.exe yra priverstinai sustabdyta, tai įmanoma, kad IcmpCloseHandle funkcija yra ne vadinamas. Šiuo atveju, NSI paslauga gali nustatyti, kad yra klientas. Todėl paslauga nuolat siųsti pranešimus apie bet kokį ICMP pranešimai. Dėl to, kad klientas nėra, tokį sąrašą toliau padidinti. Sąraše nėra gauti išvalomas iki tol, kol NSI tarnyba bus sustabdyta.
Siųsti ping, turite atidaryti ICMP rankenėlę, ir tada naudoti šių kitų IP pagalbininko funkcijų siųsti ir priimti ICMP duomenis:
Po paraiškos siunčia ping, ji turi skambinti IcmpCloseHandle funkcija uždaryti ICMP rankenėlę.
2 scenarijus
Programinės įrangos kūrėjai sukuria paraišką siųsti ir gauti ICMP pranešimai iš IPHlelper API. Jei tik vienas ICMP numeriu galima siųsti ICMP pranešimai dėl daug klientų, ir jei jis tai daro tai labai dideliu greičiu, IPHelper API, kuri yra pranešama, kai gaunamas pranešimas negali išlaikyti greitį. Tokiu atveju pastebite, kad NSI paslaugų atminties toliau didėja proporcingai. Be to, jūs pastebėjote didelis CPU naudojimas NSI tarnyba (nsisvc.dll).
3 scenarijus
Jūs turite programą ar tarnybą, kuri tiesiogiai ar netiesiogiai naudoja IP pagalbininko funkcijas. Taikymas sustabdomas arba yra sustabdytas, ir ji negali išeiti iš prie kai kiekvieno pranešimo registracijos nėra atšauktas (CancelMibChangeNotify2). Šiuo atveju, NSI serveris saugo tol, kol bus įregistruoti procesą, kad būtų sustabdytas. Jei yra daug atvejų, taikymo nutraukimas, NSI paslauga turi daug užsitęsusių registracijos. RPC async valstybės ir kita informacija bus išlaikoma kiekvieną registraciją. Tai padidina atminties naudojimą. Paprastai šie registracijos atliekami su sąsaja pakeitimu arba Unicast IP adresas pasikeičia. Jei nėra kaita valstybėje, šios registracijos vis dar palaiko.
Šių pranešimų funkcijos naudojamos registracijos metu:
Kai NotifyIpInterfaceChange funkcija temą svetainėje "Microsoft" programų kūrėjų tinklo aptartos problemos priežastis, daugelis programų skambinti (CancelMibChangeNotify2) ar sustabdyti procesą.
Po to, kai NotifyIpInterfaceChange funkcija yra vadinama užsiregistruoti keisti pranešimų, tokių pranešimų toliau siųsti kol taikant unregisters gauti pakeisti pranešimai arba programa nustoja. Jeigu programa sustoja, sistema automatiškai unregisters jokių registracijos pakeitimo pranešimus. Rekomenduojame, kad jūs konfigūruoti paraišką aiškiai išregistruoti keisti pranešimų kol ji nustoja.
Kiekvieną registraciją pranešimo, atliekant taip pat priskiria šiek tiek Nepuslapinis telkinys (NPP) atminties, kad įNSpc žymę.
Priežastis
Ši problema kyla dėl to, kad procesas, registruojanti pranešimo baigia darbą, be pirmojo neišsiregistruosite iš tarnybos NSI. Todėl, NSI registracijos nutekėjimas sukelia atminties nuotėkio NSI tarnyboje. Be to, kad AE nutekėjimas atmintis NSI Proxy kontekstuose Tag NSpc (NSI.dll).
Sprendimas
Karštųjų pataisų informacija
Palaikomas karštąsias pataisas galite atsisiųsti iš Microsoft Support. Tačiau šios karštosios pataisos skirtos tik šiame straipsnyje aprašytai problemai spręsti. Taikykite šias karštąsias pataisas tik tose sistemose, kuriose kyla šiame straipsnyje aprašoma problema. Šios karštosios pataisos gali būti papildomai testuojamos. Todėl jei ši triktis nekelia jums labai didelių problemų, rekomenduojame palaukti kito programinės įrangos naujinimo, kuriame bus šios karštosios pataisos.
Jeigu karštąsias pataisas galima atsisiųsti, šio žinių bazės straipsnio viršuje yra skyrius „Galima atsisiųsti karštąsias pataisas“. Jei šis skyrius nerodomas, kreipkitės į „Microsoft“ klientų aptarnavimo ir palaikymo tarnybą, kad gautumėte karštąsias pataisas.
Pastaba Jeigu kyla papildomų problemų arba jei reikia šalinti triktis, gali reikėti pateikti atskirą užklausą. Už papildomą pagalbą dėl problemų ir klausimų, nesusijusių su čia nurodytomis karštosiomis pataisomis, bus taikomi įprasti mokesčiai už pagalbos paslaugas. Norėdami rasti išsamų „Microsoft“ klientų aptarnavimo ir palaikymo tarnybų telefonų numerių sąrašą arba sukurti atskirą pagalbos užklausą, apsilankykite šioje „Microsoft“ svetainėje:
http://support.microsoft.com/contactus/?ws=support
Pastaba Formoje „Galima atsisiųsti karštąsias pataisas“ nurodomos kalbos, kurioms skirtos karštosios pataisos. Jei nematote savo kalbos, tai kalbai skirtų karštųjų pataisų nėra.
Būtinosios sąlygos
Norint taikyti šias karštąsias pataisas, turi būti 1 pakeitimų paketas , Windows 7 "arba" Windows Server 2008 R2 įdiegta.
Reikalavimas paleisti iš naujo
Kai pritaikote šias karštąsias pataisas, turite iš naujo paleisti kompiuterį.
Karštųjų pataisų pakeitimo informacija
Šios karštosios pataisos nepakeičia jokių anksčiau išleistų karštųjų pataisų.
Failo informacija
Anglų (JAV) šios karštosios pataisos versija įdiegia failus, kurie turi atributus, kurie išvardyti toliau pateikiamose lentelėse. Šių failų datos ir laikai yra išvardyti pagal universalųjį laiką (UTC). Šių failų datos ir laikai vietiniame kompiuteryje rodomi vietiniu laiku, vasaros / žiemos laiku (DST). Be to, šios datos ir laikai gali keistis, kai atliekate tam tikras operacijas su failais.
„Windows 7“ ir „Windows Server 2008 R2“ failų informacija ir pastabos
Svarbu „Windows 7“ ir „Windows Server 2008 R2“ karštosios pataisos yra įtrauktos į tuos pačius paketus. Tačiau karštųjų pataisų užklausos puslapyje karštosios pataisos išvardijamos prie abiejų operacinių sistemų. Norėdami pateikti užklausą dėl karštųjų pataisų paketo, skirto vienai ar abiem operacinėms sistemoms, pasirinkite karštąsias pataisas, nurodytas puslapyje prie „Windows 7“ / „Windows Server 2008 R2“. Visada perskaitykite skyrių „Taikoma“, kad žinotumėte, kokiai operacinei sistemai taikomos konkrečios karštosios pataisos.
-
Failai, kurie yra susiję su tam tikru produktu, SR_Level (RTM, SPn), ir paslaugų šaka (LDR, GDR), gali būti identifikuojami patikrinus failų versijos numerius, rodomus šioje lentelėje.
Versija
Produktas
SR_Level
Paslaugų šaka
6.1.760 0. 16xxx
„Windows 7“ ir „Windows Server 2008 R2“
RTM
GDR
6.1.760 1. 22xxx
„Windows 7“ ir „Windows Server 2008 R2“
SP1
LDR
-
GDR paslaugų šakos turi tik tas pataisas, kurios yra plačiai paplitusios ir skirtos itin svarbiems klausimams. Be bendrai pasiekiamų pataisų, dar yra LDR paslaugų šakoms skirtų karštųjų pataisų.
-
MANIFEST (.manifest) ir MUM failai (.mum), kurie įdiegti kiekvienoje aplinkoje yra pateikti atskirame sąraše skyriuje "Papildoma failų informacija" Windows 7 "ir" Windows Server 2008 R2".
-
MUM ir MANIFEST ir susieti saugos katalogų (.cat) failai yra itin svarbūs palaikant atnaujintų komponentų būseną. Saugos katalogų failai, kurių atributai neišvardyti, yra pasirašyti „Microsoft“ skaitmeniniu parašu.
Visos palaikomos x86 pagrindo „Windows 7“ versijos
Failo vardas |
Failo versija |
Failo dydis |
Data |
Laikas |
Platforma |
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 |
Visoms palaikomoms x64-"Windows 7" ir "Windows Server 2008 R2" versijoms
Failo vardas |
Failo versija |
Failo dydis |
Data |
Laikas |
Platforma |
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 |
Visos palaikomos IA-64 pagrindo „Windows Server 2008 R2“ versijos
Failo vardas |
Failo versija |
Failo dydis |
Data |
Laikas |
Platforma |
Nsi.dll |
6.1.7600.16385 |
18944 |
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 |
Papildoma failų informacija "Windows 7" ir "Windows Server 2008 R2"
Papildomi failai, skirti visoms palaikomoms x86 pagrindo „Windows 7“ versijoms
Failo vardas |
Package_1_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1,822 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_2_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1 805 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_3_for_kb2847346~31bf3856ad364e35~x86~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1,807 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_for_kb2847346_rtm~31bf3856ad364e35~x86~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1,459 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_for_kb2847346_sp1~31bf3856ad364e35~x86~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1,918 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
X86_dfca12963d5c03edca970b29ad513eb4_31bf3856ad364e35_6.1.7601.22590_none_ff32d7aebbbb6891.manifest |
Failo versija |
Netaikoma |
Failo dydis |
699 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
X86_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749890603f18301d.manifest |
Failo versija |
Netaikoma |
Failo dydis |
8,301 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:38 |
Platforma |
Netaikoma |
Papildomi failai visoms palaikomoms x64 "Windows 7" ir "Windows Server 2008 R2"
Failo vardas |
Amd64_37e172e525713d1718cb98daea282913_31bf3856ad364e35_6.1.7601.22590_none_9888f3a0165278fe.manifest |
Failo versija |
Netaikoma |
Failo dydis |
1,048 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Amd64_3839818617f8250fd6f59e35da1df9bd_31bf3856ad364e35_6.1.7601.22590_none_8fbf427f98b0d1cb.manifest |
Failo versija |
Netaikoma |
Failo dydis |
703 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Amd64_a9af583825031567fe0548a9c2c728ab_31bf3856ad364e35_6.1.7601.22590_none_59ced916edddc9da.manifest |
Failo versija |
Netaikoma |
Failo dydis |
703 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Amd64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_d0b72be3f775a153.manifest |
Failo versija |
Netaikoma |
Failo dydis |
8,305 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:41 |
Platforma |
Netaikoma |
Failo vardas |
Package_1_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1 832 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_2_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
2,237 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_3_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
2,015 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_4_for_kb2847346~31bf3856ad364e35~amd64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
2,036 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_for_kb2847346_rtm~31bf3856ad364e35~amd64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1,467 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_for_kb2847346_sp1~31bf3856ad364e35~amd64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
2,830 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest |
Failo versija |
Netaikoma |
Failo dydis |
4,690 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
02:16 |
Platforma |
Netaikoma |
Papildomi failai, skirti visoms palaikomoms IA-64 pagrindo „Windows Server 2008 R2“ versijoms
Failo vardas |
Ia64_44d491142723affea686ec2fba3cb4ac_31bf3856ad364e35_6.1.7601.22590_none_dc26e555dbabe437.manifest |
Failo versija |
Netaikoma |
Failo dydis |
1,046 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Ia64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_749a34563f163919.manifest |
Failo versija |
Netaikoma |
Failo dydis |
8,303 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_1_for_kb2847346~31bf3856ad364e35~ia64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
2,029 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Package_for_kb2847346_sp1~31bf3856ad364e35~ia64~~6.1.1.0.mum |
Failo versija |
Netaikoma |
Failo dydis |
1 446 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
06:35 |
Platforma |
Netaikoma |
Failo vardas |
Wow64_microsoft-windows-usermodensi_31bf3856ad364e35_6.1.7601.22590_none_db0bd6362bd6634e.manifest |
Failo versija |
Netaikoma |
Failo dydis |
4,690 |
Data (UTC) |
05-Feb-2014 |
Laikas (UTC) |
02:16 |
Platforma |
Netaikoma |
Sprendimas
Norėdami išspręsti šią problemą, naudokite vieną iš šių sprendimų atsižvelgdami į savo situaciją.
1 scenarijuje apibūdintos problemos sprendimas
Įsitikinkite, kad gretinimo, pvz ping.exe, ne jėga sustabdė. Vietoj to, tegul taikant prie išjungimas.
Be to, atnaujinti versiją į "Windows Server 2012". Ši problema bus išspręsta "Windows Server 2012". Ši pataisa neleidžia NSI Tarnyba nepatektų atminties, neatsižvelgiant į tai, kaip programa sustabdyta.
Dėl pagal 2 scenarijų
Programinės įrangos kūrėjai turėtų sukurti kelis ICMP rankenėlės ICMP užklausoms siųsti. Jei turite siųsti daug ICMP paketus, jums turėtų naudoti žalias lizdai ir tiesiogiai siųsti ir gauti ICMP paketus pirminis lizdas. Tai suteiks greičiausias našumo.
Dėl scenarijus 3
Tokiu atveju jei išjungti ir įjungti tinklo adapterio, atminties naudojimas iš karto sumažėja, bet yra trumpas smaigalys procesoriaus naudojimas.
Taip nutinka, nes kai pakeisti IP adresą ar sąsaja, NSI Tarnyba praneša branduolio. NSI paslauga tada bando apie tai praneša visiems klientams, kurie yra užregistruotas pranešimas. Kai paslauga bando pranešti klientui procesą, kuris neegzistuoja, kad RPC pranešimų klaida. Todėl, NSI Tarnyba panaikina visos valstybės informacijos, kuri buvo įrašyta, kad klientas procesas. Kai tai įvyksta, kad atmintis yra atleistas.
Šiuo atveju, registruojami keli šimtai tūkstančių pranešimų. Po to, kai įvyksta, visi šie netinkama klientams atmintis yra atleistas.
Ši problema bus išspręsta Windows 8.