Wireshark

TCP pakešu uztveršanas analīze

TCP pakešu uztveršanas analīze

Kas ir TCP?

TCP (Transmission Control Protocol) ir uz savienojumu orientēts transporta slāņa protokols.

Šī raksta mērķis:

Lai saprastu visu TCP, nav viegls uzdevums. Šajā rakstā mēs centīsimies izprast TCP pamata pakešu apmaiņu, izmantojot Wireshark. Teoriju var izlasīt, izmantojot internetu. Mēs vairāk pievērsīsimies pakešu uztveršanas analīzei.

Kāpēc TCP ir slavena?

Ir vairāki iemesli, kāpēc TCP ir tik slavena:

  1. TCP ir uz savienojumu orientēts protokols, tāpēc uzticamība ir ļoti augsta.
  2. TCP pats var kontrolēt sastrēgumus.
  3. TCP var noteikt kļūdas.
  4. TCP izmanto plūsmas kontroles protokolu.
  5. TCP ir kavēšanās ACK funkcijas.
  6. TCP ir selektīva ACK funkcija.
  7. TCP ir Windows izsaukšanas funkcija, lai uzlabotu caurlaidspēju.

Ir tik daudz citu funkciju, kas padara TCP tik slavenu.

TCP analīze:

Mēs veiksim dažas darbības, lai ģenerētu TCP rāmjus.

1. darbība: Vienkāršs veids, kā ģenerēt TCP paketes, ir piekļuve jebkurai HTTP vietnei. Iemesls ir tāds, ka HTTP ir lietojumprogrammas slāņa protokols, un tā izmanto TCP kā pamata transporta slāņa protokolu.

Lai uzzinātu par HTTP, izmantojiet zemāk esošo saiti

https: // linuxhint.com / http_wireshark /

2. darbība: Sāciet Wireshark.

3. solis: Jebkurā pārlūkprogrammā atveriet saiti zemāk.

http: // gaia.cs.umass.edu / wireshark-labs / alice.txt

4. solis: Pārtrauciet Wireshark un ievietojiet TCP kā filtru.

5. darbība: ANALĪZE

Tagad mums vajadzētu redzēt TCP trīsvirzienu rokasspiediena paketes. Šeit ir vienkārša diagramma.

1. rāmis: SYN [sinhronizācija]

SYN ir pirmā pakete, kas nāk no klienta uz serveri. Mūsu gadījumā 192.168. lpp.1.6 ir klients [sistēma, kurā mēs atvērām pārlūkprogrammu] un gaia.cs.umass.edu ir serveris.

Šeit ir daži svarīgi lauki SYN rāmī

SYN rāmis ir nepieciešams, lai klienta iespējas nosūtītu uz serveri.

2. rāmis: SYN + ACK [Sinhronizācija + apstiprinājums]

SYN, ACK ir otrā pakete, kas nāk no servera uz klientu.

Šeit ir daži svarīgi lauki SYN, ACK rāmī

Lai nosūtītu klientam servera iespējas, ir nepieciešams SYN, ACK rāmis.

Tagad klients un serveris ir dalījušies ar savām iespējām.

3. rāmis: ACK [apstiprinājums]

ACK ir trešā pakete, kas nāk no klienta uz serveri. Tas būtībā ir klienta apstiprinājums serverim, kā arī servera nosūtīto iespēju pieņemšana.

Šeit ir svarīgi ACK lauki.

Pārbaudīsim svarīgo informāciju, kas tiek kopīgota starp klientu un serveri:

KlientsServeris

Saņemt loga izmēru: 64240 baiti                          Saņemt loga izmēru: 29200 baiti

Maksimālais segmenta lielums: 1460 baiti                         Maksimālais segmenta lielums: 1412 baiti

Maiss atļauts:                                                 Maiss atļauts:

Logu skala: 8 (reizināt ar 256)                          Logu skala: 7 (reizināt ar 128)

Mēs esam pamanījuši, ka vērtībās ir atšķirības. Ja klients vai serveris pieņem citu iespējas, trīsvirzienu rokasspiediens ir veiksmīgs.

TCP galvene:

Šeit ir svarīgi TCP galvenes lauki:

  1. Avota ports (16 biti): Šī ir sūtīšanas osta.
Piemērs: Avota ports: 50026 (50026)
  1. Galamērķa ports (16 biti): Šī ir saņēmēja osta.
Piemērs: Galamērķa ports: http (80)
  1. Secības numurs (32 biti):
Piemērs: Secības numurs: 0 (relatīvais kārtas numurs)
  1. Atzinības numurs (32 biti): Ja ir iestatīts karodziņš ACK, šī lauka vērtība ir nākamais kārtas numurs, ko sagaida ACK sūtītājs.
Piemērs: apstiprinājuma numurs: 0
  1. Galvenes garums: Galvenes lielums var svārstīties no 20 līdz 60 baitiem.
Piemērs: 1000… = galvenes garums: 32 baiti (8)
  1. Karodziņi (9 biti):
Piemērs:
… = Rezervēts: nav iestatīts
… 0… = Nonce: nav iestatīts
… 0… = samazināts sastrēgumu logs (CWR): nav iestatīts
… 0… = ECN-Echo: nav iestatīts
… 0… = Steidzams: nav iestatīts
… 0… = apstiprinājums: nav iestatīts
… 0… = Push: nav iestatīts
… 0… = Atiestatīt: nav iestatīts
… 1. = Sin: iestatīt
… 0 = Fin: nav iestatīts
  1. Loga izmērs (16 biti): Tas ir saņemšanas loga lielums baitos.
Piemērs: Loga izmēra vērtība: 64240
  1. Kontrolsumma (16 biti):

Tas izmanto galvenes kļūdu pārbaudi.

Piemērs: Kontrolsumma: 0x436f
  1. Steidzams rādītājs (16 biti):

Tas ir nobīde no kārtas numura, kas norāda pēdējo steidzamo datu baitu.

Piemērs: Steidzams rādītājs: 0
  1. Iespējas:
Piemērs:
TCP opcija - Maksimālais segmenta lielums: 1460 baiti
TCP opcija - nedarbojas (NOP)
TCP opcija - loga skala: 8 (reizināt ar 256)
TCP variants - atļauts SACK

Novērojums:

SYN TCP galvenes lielums ir 32 baiti.

TCP galvenes lielums SYN, ACK ir 32 baiti.

ACK TCP galvenes izmērs ir 20 baiti, jo tam nav opciju lauku.

TCP dati:

Šeit ir ekrānuzņēmums ar paskaidrojumu par TCP datiem un TCP ACK. Šeit mēs varam redzēt TCP kavēšanās ACK funkciju. Serveris ir nosūtījis klientam trīs TCP datu paketes, un klients ir nosūtījis vienu kavējuma ACK, lai paziņotu serverim, ka ir saņēmis visas trīs TCP datu paketes. Tāpēc TCP ACK [pakešu numurs 96 ekrānuzņēmumā] mēs redzam ACK = 14121, kas nozīmē, ka klients ir saņēmis līdz 14121 baiti.

Atsauce:

TCP pamatteoriju skatīt

https: // lv.vikipēdija.org / wiki / Transmission_Control_Protocol

Rakstot Windows 10, kursors lec vai pārvietojas nejauši
Ja atklājat, ka peles kursors automātiski, nejauši lec vai pārvietojas pats, rakstot Windows klēpjdatorā vai datorā, daži no šiem ieteikumiem var palī...
Kā mainīt peles un skārienpaliktņu ritināšanas virzienu operētājsistēmā Windows 10
Pele un SkārienpaliktnisTas ne tikai padara skaitļošanu vienkāršu, bet arī efektīvāku un mazāk laikietilpīgu. Mēs nevaram iedomāties dzīvi bez šīm ier...
Kā mainīt peles rādītāja un kursora izmēru, krāsu un shēmu operētājsistēmā Windows 10
Peles rādītājs un kursors operētājsistēmā Windows 10 ir ļoti svarīgi operētājsistēmas aspekti. To var teikt arī par citām operētājsistēmām, tāpēc pati...