Sümptomid
Saates sõnumeid Microsoft Message Queue ja TCP/IP transport protokolli, võib viivitus umbes 300ms enne paketi saadetakse üle võrgu. Seda sellepärast, et Windowsi TCP/IP-pinu kasutab Nagle algoritmi. Nagle algoritmi parandab jõudlust, tagades TCP/IP pakette kasutatakse tõhusalt ja takistab võrgus olles ujutatud väike TCP/IP pakette. Kuigi mõnel juhul võib olla kasulik lubada väiksemad paketid kindla jõudluse parandamiseks. Selles artiklis kirjeldatakse, kuidas keelata Nagle TCP/IP algoritmi MSMQ on sõnumite saatmine.
NB! See artikkel sisaldab teavet registri muutmise kohta. Veenduge, et varundage register enne selle muutmist. Veenduge, et oskate mõne probleemi ilmnemisel registri taastada. Kuidas varundada ja taastada registrit kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
256986 Microsoft Windowsi registri kirjeldus
Lahendus
Märkus. Järgmine kiirparandus on vajalik MSMQ 2.0 (Windows 2000) või MSMQ 3.0 (Windows XP ja Windows 2003). Siiski käesoleva artikli jaotises "Lisateavet" kirjeldatud registriväärtus on endiselt tuleb lisada.
Lasknud välja toetatava käigultparanduse on nüüd Microsoftilt saadaval, kuid see lahendab ainult käesolevas artiklis kirjeldatud probleemi. Rakendage seda ainult süsteemides, kus ilmneb see konkreetne probleem.
Selle probleemi lahendamiseks pöörduge vastava kiirparanduse hankimiseks Microsofti toodete tugiteenusepakkuja. Täieliku loendi Microsofti toodete tugiteenuste telefoninumbrite ja tugiteenuste hinnateabe hankimiseks külastage järgmist Microsofti veebisaiti:
http://support.microsoft.com/contactus/?ws=supportMärkus. Erijuhtudel võib kulud, mis tekivad teatud tugiteenuse telefonikõnede maksumus tühistada, kui Microsofti tugiteenusepakkuja leiab, et mõni konkreetne värskendus lahendab teie probleemi. Tavaline tugiteenuste kohaldatakse täiendavat tugiteenust vajavatele küsimustele ning probleemidele, mis pole lahendatavad konkreetse värskenduse installimisega.
Selle paranduse ingliskeelsel versioonil peaks olema järgmised failiatribuudid või uuem versioon:
Date Time Version Size File name Platform
-------------------------------------------------------------
6/22/1999 1:34 PM 1.00.0294 481,552 MQQM.DLL x86
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "Kehtib järgmiste toodete kohta" loetletud Microsofti toodetel.
See viga parandati Windows NT 4.0 hoolduspaketiga Service Pack 6.
Lisateabe saamiseks
Nagle TCP/IP algoritmi
Nagle TCP/IP algoritmi loodud väikeste paketid, mida nimetatakse tinygrams, aeglases probleemide vältimiseks. Algoritmi ütleb, et TCP/IP-ühenduse võib olla ainult üks täitmata väike segment, mis pole veel kinnitatud. Mõiste "väike" erinev, kuid tavaliselt see on määratletud kui "vähem kui segment size", mis on Etherneti on umbes 1500 baiti.
Käsitsi keelamine Nagle algoritmi
Võite keelata Nagle algoritmi, muutes järgmist registri säte ja kasutades juhiseid jaotises "Aktiveerimine muudatused".
-
Otsige jaotisest HKEY_LOCAL_MACHINE alampuu järgmine võti:
\Software\Microsoft\MSMQ\Parameters -
Valige menüü Redigeeri lisada võti ja kasutage järgmist teavet:
Value Name: TcpNoDelay
DWord: 1
Muudatused aktiveerimine
Järjekorra Manager tuleb peatada ja uuesti pärast registri muudatused on tehtud. Seda saab teha seiskamine ja teenuste juhtpaneeli kaudu Microsoft teate järjekorra teenuse käivitamine.
Viited
Märkus. TCP/IP RFC 896 määratletakse Nagle algoritmi.