Mikä on TCP?
TCP (Transmission Control Protocol) on yhteyspohjainen siirtokerrosprotokolla.
Tämän artikkelin tarkoitus:
Koko TCP: n ymmärtäminen ei ole helppo tehtävä. Tässä artikkelissa yritämme ymmärtää TCP: n peruspakettivaihtoa Wiresharkin kautta. Teoria voidaan lukea Internetin kautta. Keskitymme enemmän pakettien sieppauksen analyysiin.
Miksi TCP on kuuluisa?
On useita syitä, miksi TCP on niin kuuluisa:
- TCP on yhteyspohjainen protokolla, joten luotettavuus on erittäin korkea.
- TCP voi hallita ruuhkia yksin.
- TCP voi havaita virheen.
- TCP käyttää vuonohjausprotokollaa.
- TCP: llä on viive ACK -ominaisuudet.
- TCP: llä on valikoiva ACK-ominaisuus.
- TCP: llä on Windows-puhelutoiminto suorituskyvyn parantamiseksi.
On niin monia muita ominaisuuksia, jotka tekevät TCP: stä niin kuuluisan.
TCP: n analyysi:
Seuraamme joitain vaiheita TCP-kehysten luomiseksi.
Vaihe 1: Yksinkertainen tapa luoda TCP-paketteja on siirtyminen mihin tahansa HTTP-verkkosivustoon. Syynä on, että HTTP on sovelluskerrosprotokolla ja se käyttää TCP: tä siirtokerroksen taustalla.
Jos haluat tietää HTTP: stä, seuraa alla olevaa linkkiä
https: // linuxhint.fi / http_wireshark /
Vaihe 2: Käynnistä Wireshark.
Vaihe 3: Avaa alla oleva linkki missä tahansa selaimessa.
http: // gaia.cs.umass.edu / wireshark-labs / alice.txt
Vaihe 4: Pysäytä Wireshark ja aseta TCP suodattimeksi.
Vaihe 5: ANALYYSI
Nyt meidän pitäisi nähdä TCP 3-suuntaiset kättelypaketit. Tässä on yksinkertainen kaavio.
Kehys 1: SYN [synkronointi]
SYN on ensimmäinen paketti, joka tulee asiakkaalta palvelimelle. Meidän tapauksessamme 192.168.1.6 on asiakas [järjestelmä, jossa avasimme selaimen] ja gaia.cs.umass.edu on palvelin.
Tässä on joitain tärkeitä kenttiä SYN-kehyksessä
SYN-kehys tarvitaan lähettämään asiakkaan ominaisuudet palvelimelle.
Kehys 2: SYN + ACK [synkronointi + kuittaus]
SYN, ACK on toinen paketti, joka tulee palvelimelta asiakkaalle.
Tässä on joitain tärkeitä kenttiä SYN, ACK-kehyksessä
SYN, ACK-kehys vaaditaan palvelimen ominaisuuksien lähettämiseksi asiakkaalle.
Nyt asiakas ja palvelin ovat jakaneet kykynsä.
Kehys 3: ACK [kuittaus]
ACK on kolmas paketti, joka tulee asiakkaalta palvelimelle. Tämä on pohjimmiltaan kuittaus asiakkaalta palvelimelle, ja se on myös palvelimen lähettämien ominaisuuksien hyväksyminen.
Tässä ovat ACK: n tärkeät kentät.
Tarkistetaan tärkeät tiedot, jotka jaetaan asiakkaan ja palvelimen välillä:
AsiakasPalvelin
Vastaanota ikkunan koko: 64240 tavua Vastaanota ikkunan koko: 29200 tavua
Segmentin enimmäiskoko: 1460 tavua Segmentin enimmäiskoko: 1412 tavua
Säkki sallittu: Joo Säkki sallittu: Joo
Ikkunan mittakaava: 8 (kerro 256: lla) Ikkunan mittakaava: 7 (kerro 128: lla)
Olemme huomanneet, että arvoissa on eroja. Jos asiakas tai palvelin hyväksyy muiden ominaisuudet, kolmisuuntainen kättely onnistuu.
TCP-otsikko:
Tässä ovat TCP-otsikon tärkeät kentät:
- Lähdeportti (16 bittiä): Tämä on lähetysportti.
- Määränportti (16 bittiä): Tämä on vastaanottava portti.
- Järjestysnumero (32 bittiä):
- Jos SYN-bitti on asetettu [1], tämä on alkuperäinen järjestysnumero.
- Jos SYN-bittiä ei ole asetettu [0], tämä on tämän segmentin ensimmäisen datatavun kertynyt järjestysnumero.
- Kuittausnumero (32 bittiä): Jos ACK-lippu on asetettu, tämän kentän arvo on seuraava järjestysnumero, jonka ACK: n lähettäjä odottaa.
- Otsikon pituus: Otsikkokoko voi vaihdella 20 tavusta korkeintaan 60 tavuun.
- Liput (9 bittiä):
… = Varattu: Ei asetettu
… 0… = Nonce: Ei asetettu
… 0… = Ruuhka-ikkuna vähennetty (CWR): Ei asetettu
… 0… = ECN-Echo: Ei asetettu
… 0… = Kiireellinen: Ei asetettu
… 0… = kuittaus: Ei asetettu
… 0… = Push: Ei asetettu
… 0… = Nollaa: Ei asetettu
… 1. = Syn: Aseta
… 0 = Fin: Ei asetettu
- Ikkunan koko (16 bittiä): Tämä on vastaanottoikkunan koko tavuina.
- Tarkistussumma (16 bittiä):
Sitä käytetään otsikon virhetarkistuksessa.
Esimerkki: Tarkistussumma: 0x436f- Kiireellinen osoitin (16 bittiä):
Tämä on siirtymä järjestysnumerosta, joka osoittaa viimeisen kiireellisen datatavun.
Esimerkki: Kiireellinen osoitin: 0- Vaihtoehdot:
TCP-vaihtoehto - Segmentin enimmäiskoko: 1460 tavua
TCP-vaihtoehto - Ei toimintaa (NOP)
TCP-vaihtoehto - ikkuna-asteikko: 8 (kerrottuna 256: lla)
TCP-vaihtoehto - SACK sallittu
Havainto:
SYN: n TCP-otsikkokoko on 32 tavua.
TCP-otsikkokoko SYN, ACK on 32 tavua.
ACK: n TCP-otsikkokoko on 20 tavua, koska sillä ei ole vaihtoehtokenttiä.
TCP-tiedot:
Tässä on kuvakaappaus, jossa selitetään TCP-tiedot ja TCP ACK. Täällä voimme nähdä TCP delay ACK -ominaisuuden. Palvelin on lähettänyt kolme TCP-datapakettia asiakkaalle ja asiakas on lähettänyt yhden viiveen ACK: n kertomaan palvelimelle, että se on vastaanottanut kaikki kolme TCP-datapakettia. Siksi TCP ACK: ssa [paketin numero 96 kuvakaappauksessa] näemme ACK = 14121, mikä tarkoittaa, että asiakas on saanut 14121 tavua.
Viite:
Katso TCP: n perusteoria
https: // fi.wikipedia.org / wiki / Transmission_Control_Protocol