Wireshark

Analýza zachycení paketů TCP

Analýza zachycení paketů TCP

Co je to TCP?

TCP (Transmission Control Protocol) je protokol transportní vrstvy orientovaný na připojení.

Záměr tohoto článku:

Porozumět celému TCP není snadný úkol. V tomto článku se pokusíme porozumět základním výměnám paketů TCP prostřednictvím Wireshark. Teorii lze číst přes internet. Více se zaměříme na analýzu zachycení paketů.

Proč je TCP slavný?

Existuje několik důvodů, proč je TCP tak slavný:

  1. TCP je protokol orientovaný na připojení, takže spolehlivost je velmi vysoká.
  2. TCP může řídit přetížení sám.
  3. TCP dokáže detekovat chybu.
  4. TCP používá protokol řízení toku.
  5. TCP má funkce ACK se zpožděním.
  6. TCP má selektivní funkci ACK.
  7. TCP má funkci volání Windows pro zlepšení propustnosti.

Existuje tolik dalších funkcí, díky nimž je TCP tak slavný.

Analýza TCP:

Provedeme několik kroků ke generování rámců TCP.

Krok 1: Jednoduchý způsob generování paketů TCP je přístup na libovolný web HTTP. Důvodem je, že HTTP je protokol aplikační vrstvy a jako základní protokol transportní vrstvy používá TCP.

Chcete-li vědět o protokolu HTTP, postupujte podle níže uvedeného odkazu

https: // linuxhint.com / http_wireshark /

Krok 2: Spusťte Wireshark.

Krok 3: Otevřete pod odkazem v libovolném prohlížeči.

http: // gaia.cs.umass.edu / kabelové laboratoře / Alice.txt

Krok 4: Zastavte Wireshark a vložte TCP jako filtr.

Krok 5: ANALÝZA

Nyní bychom měli vidět TCP 3-way handshake pakety. Zde je jednoduchý diagram.

Rámeček 1: SYN [Synchronaziation]

SYN je první paket přicházející z klienta na server. V našem případě 192.168.1.6 je klient [Systém, kde jsme otevřeli prohlížeč] a gaia.cs.umass.edu je server.

Zde je několik důležitých polí v rámci SYN

Pro odeslání schopností klienta na server je vyžadován rámec SYN.

Rámeček 2: SYN + ACK [Synchronaziation + Acknowledgement]

SYN, ACK je druhý paket přicházející ze serveru na klienta.

Zde je několik důležitých polí v rámci SYN, ACK

K odeslání schopností serveru klientovi je vyžadován rámec SYN, ACK.

Nyní klient a server sdíleli své schopnosti.

Rámeček 3: ACK [Potvrzení]

ACK je třetí paket přicházející z klienta na server. Jedná se v zásadě o potvrzení od klienta k serveru a také o přijetí schopností odeslaných serverem.

Zde jsou důležitá pole pro ACK.

Podívejme se na důležité informace sdílené mezi klientem a serverem:

KlientServer

Velikost okna pro příjem: 64240 bajtů                          Velikost okna pro příjem: 29200 bajtů

Maximální velikost segmentu: 1460 bajtů                         Maximální velikost segmentu: 1412 bajtů

SACK povoleno: Ano                                                 SACK povoleno: Ano

Stupnice okna: 8 (vynásobte 256)                          Stupnice okna: 7 (vynásobte 128)

Všimli jsme si, že existují rozdíly v hodnotách. Pokud klient nebo server akceptuje možnosti ostatních, pak je třícestné podání ruky úspěšné.

Záhlaví TCP:

Zde jsou důležitá pole záhlaví TCP:

  1. Zdrojový port (16 bitů): Toto je odesílající port.
Příklad: Zdrojový port: 50026 (50026)
  1. Cílový port (16 bitů): Toto je přijímací port.
Příklad: Cílový port: http (80)
  1. Pořadové číslo (32 bitů):
Příklad: Pořadové číslo: 0 (relativní pořadové číslo)
  1. Číslo potvrzení (32 bitů): Pokud je nastaven příznak ACK, pak hodnota tohoto pole je další pořadové číslo, které odesílatel ACK očekává.
Příklad: Číslo potvrzení: 0
  1. Délka záhlaví: Velikost záhlaví se může lišit od 20 bajtů a maximálně 60 bajtů.
Příklad: 1000… = délka záhlaví: 32 bajtů (8)
  1. Vlajky (9 bitů):
Příklad:
… = Rezervováno: Není nastaveno
… 0… = Nonce: Není nastaveno
… 0… = Okno přetížení sníženo (CWR): Není nastaveno
… 0… = ECN-Echo: Není nastaveno
… 0… = Naléhavé: Není nastaveno
… 0… = Potvrzení: Není nastaveno
… 0… = Push: Není nastaveno
… 0… = Reset: Nenastaveno
… 1. = Syn: Nastavit
… 0 = Fin: Není nastaveno
  1. Velikost okna (16 bitů): Toto je velikost přijímacího okna v bajtech.
Příklad: Hodnota velikosti okna: 64240
  1. Kontrolní součet (16 bitů):

Používá se kontrola chyb záhlaví.

Příklad: Kontrolní součet: 0x436f
  1. Naléhavý ukazatel (16 bitů):

Toto je posun od pořadového čísla označujícího poslední urgentní datový bajt.

Příklad: Naléhavý ukazatel: 0
  1. Možnosti:
Příklad:
Možnost TCP - maximální velikost segmentu: 1460 bajtů
Možnost TCP - bez provozu (NOP)
Možnost TCP - měřítko okna: 8 (vynásobte 256)
Možnost TCP - povolen SACK

Pozorování:

Velikost TCP záhlaví SYN je 32 bajtů.

Velikost TCP záhlaví SYN, ACK je 32 bajtů.

Velikost TCP hlavičky ACK je 20 bajtů, protože nemá volitelná pole.

Data TCP:

Zde je snímek obrazovky s vysvětlením pro data TCP a TCP ACK. Zde vidíme funkci zpoždění TCP ACK. Server poslal klientovi tři datové pakety TCP a klient odeslal ACK s jedním zpožděním, aby řekl serveru, že přijal všechny tři datové pakety TCP. Proto v TCP ACK [Packet number 96 in screenshot] vidíme ACK = 14121, což znamená, že klient přijal do 14121 bytů.

Odkaz:

Základní teorie TCP viz

https: // en.wikipedia.org / wiki / Transmission_Control_Protocol

V systému Windows 10 nefunguje levé tlačítko myši
Pokud používáte speciální myš s notebookem nebo stolním počítačem, ale levé tlačítko myši nefunguje ve Windows 10/8/7 z nějakého důvodu uvádíme několi...
Kurzor při psaní v systému Windows 10 skáče nebo se pohybuje náhodně
Pokud zjistíte, že kurzor myši skáče nebo se pohybuje sám, automaticky, náhodně při psaní v notebooku nebo počítači se systémem Windows, pak vám někte...
Jak obrátit směr posouvání myši a touchpadu ve Windows 10
Myš a Touchpadnejenže usnadňují výpočet, ale jsou efektivnější a méně časově náročné. Nemůžeme si představit život bez těchto zařízení, ale přesto je ...