Exportovat (0) Tisk
Rozbalit vše
Expand Minimize

Protokol TCP/IP (Transmission Control Protocol/Internet Protocol)

K čemu slouží protokol TCP/IP?

Protokol TCP/IP (Transmission Control Protocol/Internet Protocol) je sadou standardních protokolů sloužících k propojování počítačů v sítích. Protokol TCP/IP umožňuje propojení a sdílení informací počítačů se systémy Windows s jinými počítači se systémy společnosti Microsoft i se systémy jiných společností.

Více informací o protokolu TCP/IP a odpovídajícím nastavení registru naleznete v tématu Microsoft Windows Server 2003 TCP/IP Implementation Details (Podrobné informace o implementaci protokolu TCP/IP v systému Microsoft Windows Server 2003) na webu společnosti Microsoft na adrese http://go.microsoft.com/fwlink/?LinkId=39649.

Čeho se tato funkce týká?

Všichni uživatelé, kteří používají protokol TCP/IP k připojení a přenosu informací prostřednictvím sítě, by si měli být vědomi změn, které přináší aktualizace Windows Server 2003 Service Pack 1.

Jaké nové funkce byly přidány k této funkci v aktualizaci Service Pack 1 pro systém Windows Server 2003?

Ochrana před útokem SYN je ve výchozím nastavení povolena

Podrobný popis

Je-li rozpoznán útok SYN, sníží protokol TCP/IP v systémech Windows Server 2003 a Windows XP počet opakovaných přenosů segmentu SYN-ACK a nepřidělí paměť ani prostředky položky tabulky pro připojení do té doby, dokud není dokončeno trojcestné ověřování typu handshake protokolu TCP.

Útok synchronizačními pakety (SYN) protokolu TCP je útokem typu DoS (Denial of Service), který zneužívá funkce opakovaného přenosu a časového limitu segmentu Synchronize-Acknowledgement (SYN-ACK) během trojcestného ověřování typu handshake k vytvoření velkého počtu částečně otevřených připojení TCP. V závislosti na implementaci protokolu TCP/IP může velký počet částečně otevřených připojení TCP způsobit následující problémy:

  • obsazení veškeré dostupné paměti,
  • obsazení všech možných položek v řídicím bloku přenosu (TCB) protokolu TCP, což je interní tabulka, která slouží ke sledování připojení TCP; pokud částečně otevřená připojení obsadí všechny položky, vyvolají další pokusy o připojení reset připojení TCP,
  • obsazení všech dostupných částečně otevřených připojení; pokud jsou všechna částečně otevřená připojení obsazena, vyvolají další pokusy o připojení reset připojení TCP.

Proč je tato změna důležitá? Jaká nebezpečí pomáhá zmírňovat?

Pro zmírnění dopadů na hostitele, který čelí útoku SYN, minimalizuje protokol TCP/IP množství prostředků vyhrazených pro neúplná připojení TCP a zkracuje časovou prodlevu před ukončením tohoto připojení. Je-li rozpoznán útok SYN, sníží protokol TCP/IP v systémech Windows Server 2003 a Windows XP počet opakovaných přenosů segmentu SYN-ACK a nepřidělí paměť ani prostředky položky tabulky pro připojení do té doby, dokud není dokončeno trojcestné ověřování typu handshake protokolu TCP.

Ochranu před útokem SYN lze ovládat nastavením položky registru SynAttackProtect v umístění HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters(typ REG_DWORD). Nastavením položky SynAttackProtect na hodnotu 0 zakážete ochranu před útokem SYN, nastavením na hodnotu 1 ochranu povolíte.

Ve výchozím nastavení systémů Windows XP (všech verzí) a Windows Server 2003 bez aktualizací Service Pack je položka SynAttackProtect pro protokol TCP/IP nastavena na hodnotu 0. Ve výchozím nastavení systému Windows Server 2003 SP1 je položka SynAttackProtect pro protokol TCP/IP nastavena na hodnotu 1.

Nové upozornění rozhraní API funkce IP Helper o útoku SYN

Podrobný popis

Aby mohla aplikace uvědomit správce sítě, že probíhá útok SYN, podporuje funkce IP Helper rozhraní API nová upozornění rozhraní API o útoku SYN zvaná NotifySecurityHealthChange a CancelSecurityHealthChangeNotify. Informace o těchto nových rozhraních API ještě nebyla v síti Microsoft Developer Network (MSDN) publikována. Jakmile budou informace popisující tato nová rozhraní API k dispozici, bude na webu MSDN zobrazen příslušný odkaz.

Inteligentní přidělování portů TCP

Podrobný popis

U protokolu TCP/IP v systému Windows Server 2003 SP1 je implementován algoritmus pro inteligentní přidělování portů TCP. Pokud aplikace požaduje některý dostupný port TCP, pokusí se protokol TCP/IP nejprve nalézt dostupný port, který neodpovídá připojení ve stavu TIME WAIT. Jestliže není možné takový port nalézt, je vybrán libovolný jiný dostupný port.

Proč je tato změna důležitá? Jaká nebezpečí zmírňuje?

Pokud druhá strana připojení TCP inicializuje jeho ukončení a toto ukončení proběhne, je připojení TCP uvedeno do stavu TIME WAIT. Před vytvořením dalšího připojení se stejnou sadou adres soketu musí po dosažení stavu TIME WAIT připojení TCP počkat po dobu, která je dvojnásobkem doby maximální platnosti segmentu MSL (maximum segment lifetime). Sada adres soketu je tvořena kombinací zdrojových a cílových adres IP a zdrojových a cílových portů TCP. MSL je maximální doba, po kterou může segment TCP existovat v propojených sítích, a její doporučená hodnota je 120 sekund. Toto zpoždění znemožňuje záměnu segmentů TCP nového připojení, které používají stejnou sadu adres soketu, za duplicitní segmenty TCP starého připojení.

Port TCP pro připojení ve stavu TIME WAIT je považován za dostupný port, který může být přidělen aplikaci k použití. Toto může vést k následujícímu sledu událostí:

  1. Aplikace vyžádá libovolný dostupný port TCP.
  2. Protokol TCP/IP přiřadí port TCP, který má být použit pro soket aplikace.
  3. Aplikace se pokusí otevřít soket s konkrétní cílovou adresou IP.
  4. Aplikace naváže spojení TCP a odešle data.
  5. Aplikace ukončí spojení TCP.
  6. Protokol TCP/IP uvede připojení TCP aplikace do stavu TIME WAIT na dvojnásobek doby MSL.
  7. Tatáž aplikace vyžádá další libovolný dostupný port TCP.
  8. Protokol TCP/IP přiřadí port TCP, který má být použit pro soket aplikace. Protože je port pro připojení ve stavu TIME WAIT považován za otevřený, může být zvolen jako další port pro přidělení žádající aplikaci. Předpokládejme, že protokol TCP/IP přidělí port TCP se stejným číslem.
  9. Aplikace se pokusí otevřít soket se stejnou cílovou adresou IP.
  10. Protože připojení používá stejnou sadu adres soketů jako připojení ve stavu TIME WAIT, protokol TCP/IP signalizuje aplikaci chybu.

Této chybové situaci lze předejít úpravou nastavení registru jedním ze tří následujících způsobů:

  • Nastavením položky registru MaxFreeTWTcbs v umístění HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters (typ REG_DWORD) na nižší hodnotu. Hodnota položky MaxFreeTWTcbs udává počet připojení, která se mohou nacházet ve stavu TIME WAIT. Pokud dojde k překročení této hodnoty, bude nejstarší připojení ze stavu TIME WAIT automaticky odstraněno.
  • Nastavením položky registru TcpTimedWaitDelay v umístění HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters (typ REG_DWORD) na nižší hodnotu. Hodnota položky TcpTimedWaitDelay udává dobu, po kterou se může připojení nacházet ve stavu TIME WAIT.

Snížení hodnoty této položky registru je však v protikladu k původní koncepci protokolu TCP a doby MSL, a není proto doporučeno.

Aktualizace Windows Server 2003 SP1 proto obsahuje změnu algoritmu přiřazování portů. Tato úprava má zabránit aplikaci ve vytvoření připojení používajícího tutéž sadu adres soketu, jakou má připojení, které se nachází ve stavu TIME WAIT, pokud je k dispozici jiný port.

Tento nový ochranný prvek významně snižuje pravděpodobnost, že aplikaci bude přidělen port TCP, který se nachází ve stavu TIME WAIT, pokud se aplikace připojuje k témuž cíli. Není již tedy nutné upravovat hodnoty klíčů registru MaxFreeTWTcbs a TcpTimedWaitDelay, aby se zabránilo výše popsanému chybovému stavu.

Zdokonalená rozhraní Winsock API pro příjem

Podrobný popis

Rozhraní Winsock API nyní podporují mechanismus, který umožňuje aplikacím určit, že požadavek na příjem nemá být dokončen, dokud nebude zaplněna vyrovnávací paměť pro příjem. To pomáhá snížit čekací dobu sítě a lépe podporuje aplikace s vysokým výkonem. Další informace o implementaci rozhraní Winsock naleznete v tématu About the Winsock SPI (Rozhraní Winsock SPI) na webu MSDN na adrese http://go.microsoft.com/fwlink/?LinkId=45684.

Samoopravitelné rozhraní Winsock

Podrobný popis

Rozhraní Winsock, což je síťové rozhraní API (Application Programming Interface), které vzniklo díky spolupráci na bázi konsorcia, je rozšířitelné pomocí technologie známé jako Winsock SPI (Service Provider Interface). Rozhraní SPI poskytuje mechanismus pro vrstvení zprostředkovatelů na sebe. Zprostředkovatelé, kteří jsou vrstveni tímto způsobem, jsou označováni jako zprostředkovatelé LSP (Layered Service Providers) rozhraní Winsock. Zprostředkovatelé LSP rozhraní Winsock mají široké využití, včetně rodičovské kontroly a filtrování webového obsahu. Konkrétní pořadí vrstvení jednotlivých poskytovatelů je uloženo v katalogu rozhraní Winsock. V předchozích verzích systému Windows Server 2003 mohli nesprávně odebraní zprostředkovatelé LSP (například z důvodu špatně implementovaného kódu pro instalaci/odebrání zprostředkovatelů LSP) způsobit poškození katalogu rozhraní Winsock s možností úplné ztráty připojení k síti. Rozhraní Winsock nyní dokáže nesprávně odebrané zprostředkovatele LSP zjistit a automaticky se opravit.

Proč je tato změna důležitá? Jaká nebezpečí pomáhá zmírnit?

Uživatelé musí mít možnost bezpečně ze systému odebrat zprostředkovatele LSP.

Nové příkazy Netsh rozhraní Winsock

Podrobný popis

V systému Windows Server 2003 Service Pack 1 jsou k dispozici dva nové příkazy Netsh:

  • netsh winsock reset catalog
    Tento příkaz obnovuje výchozí konfiguraci katalogu Winsock. Tento příkaz může být užitečný v případě, kdy dojde k instalaci poškozeného zprostředkovatele LSP s následnou ztrátou připojení k síti. I když tento příkaz dokáže obnovit připojení k síti, měl by být používán s rozvahou, protože po jeho použití bude nutné přeinstalovat všechny dříve nainstalované zprostředkovatele LSP.
  • netsh winsock show catalog
    Tento příkaz zobrazí seznam zprostředkovatelů služeb vrstvy Winsock nainstalovaných v počítači.

Proč je tato změna důležitá? Jaká nebezpečí pomáhá zmírnit?

Tyto příkazy poskytují další možnosti správy za účelem údržby a odstraňování potíží zprostředkovatelů LSP rozhraní Winsock a mohou být součástí skriptů sloužících k obnovení systému po rozsáhlé instalaci poškozených zprostředkovatelů LSP.

Nový parametr Netstat

S příkazem netstat lze použít následující nový parametr:

  • netstat -b

Při použití tohoto parametru s příkazem netstat se zobrazí spustitelný soubor, který se účastní vytváření jednotlivých připojení nebo naslouchacích portů. V některých případech obvyklé spustitelné soubory hostí více nezávislých součástí a v takových případech se zobrazí posloupnost součástí, které jsou zahrnuty do vytváření připojení nebo naslouchacího portu, přičemž tyto součásti budou uvedeny před spustitelným souborem, který je volal. Název spustitelného souboru bude po obou stranách vymezen závorkami ([]).

notePoznámka
Použití tohoto parametru může zabrat poměrně dlouhou dobu a může se nezdařit, pokud účet, pod kterým je spuštěn, nemá dostatečná oprávnění k získání požadovaných informací.

Jaké nové nastavení bylo přidáno do aktualizace Windows Server 2003 Service Pack 1?

Byl přidán nový klíč registru, jak je uvedeno v tabulce níže. Tento klíč registru nastaví maximální počet tras k hostiteli protokolu ICMP, které lze přidat. Tento klíč by se neměl měnit, pokud se pomocí protokolu ICMP nepřidává velký počet tras k hostiteli.

 

Název nastavení Umístění Výchozí hodnota

MaxICMPHostRoutes

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Services\Tcpip\Parameters

1000

Byl tento obsah pro vás užitečný?
(Zbývající počet znaků: 1500)
Děkujeme za váš názor.

Obsah vytvořený komunitou

Přidat
Zobrazit:
© 2014 Microsoft