Kuvaus tcp ip -protokollapinosta. Mikä on TCP-IP-protokolla

Nykymaailmassa tieto leviää muutamassa sekunnissa. Uutinen on juuri ilmestynyt, ja sekuntia myöhemmin se on jo saatavilla jollain Internet-sivustolla. Internetiä pidetään yhtenä ihmismielen hyödyllisimmistä kehityksestä. Jotta voit nauttia kaikista Internetin tarjoamista eduista, sinun on muodostettava yhteys tähän verkkoon.

Harvat ihmiset tietävät, että yksinkertainen web-sivuilla vierailuprosessi sisältää monimutkaisen toimintojärjestelmän, joka on käyttäjälle näkymätön. Jokainen linkin napsautus aktivoi satoja erilaisia ​​laskennallisia operaatioita tietokoneen sydämessä. Näitä ovat pyyntöjen lähettäminen, vastausten vastaanottaminen ja paljon muuta. Ns. TCP/IP-protokollat ​​vastaavat kaikista verkon toiminnoista. Mitä ne ovat?

Mikä tahansa Internet-protokolla TCP/IP toimii omalla tasollaan. Toisin sanoen jokainen tekee oman asiansa. Koko TCP/IP-protokollaperhe tekee valtavan määrän työtä samanaikaisesti. Ja käyttäjä näkee tällä hetkellä vain kirkkaita kuvia ja pitkiä tekstirivejä.

Protokollapinon käsite

TCP/IP-protokollapino on järjestelmällinen perusverkkoprotokollien joukko, joka on hierarkkisesti jaettu neljään tasoon ja on järjestelmä pakettien kuljettamiseen tietokoneverkon yli.

TCP/IP on tunnetuin nykyään käytössä oleva verkkoprotokollapino. TCP/IP-pinon periaatteet koskevat sekä paikallis- että suuralueverkkoja.

Osoitteiden käytön periaatteet protokollapinossa

TCP/IP-verkkoprotokollapino kuvaa reitit ja suunnat, joissa paketteja lähetetään. Tämä on koko pinon päätehtävä, joka suoritetaan neljällä tasolla, jotka ovat vuorovaikutuksessa toistensa kanssa kirjatun algoritmin avulla. IP-osoitteen ottaminen käyttöön ja standardointi sen varmistamiseksi, että paketti lähetettiin oikein ja toimitettiin täsmälleen sitä pyytäneeseen kohtaan. Tämä johtui seuraavista tehtävistä:

  • Erityyppisten osoitteiden on oltava johdonmukaisia. Esimerkiksi sivuston verkkotunnuksen muuntaminen palvelimen IP-osoitteeksi ja takaisin tai isäntänimen muuntaminen osoitteeksi ja takaisin. Tällä tavalla on mahdollista päästä pisteeseen paitsi IP-osoitteen avulla, myös sen intuitiivisen nimen avulla.
  • Osoitteiden on oltava yksilöllisiä. Tämä johtuu siitä, että joissakin erikoistapauksissa paketin tulee saavuttaa vain yksi tietty kohta.
  • Tarve määrittää lähiverkot.

Pienissä verkoissa, joissa käytetään useita kymmeniä solmuja, kaikki nämä tehtävät suoritetaan yksinkertaisesti käyttämällä yksinkertaisimpia ratkaisuja: kootaan taulukko, joka kuvaa koneen omistajuutta ja sitä vastaavaa IP-osoitetta, tai voit jakaa IP-osoitteet manuaalisesti kaikille verkkosovittimille. Kuitenkin suurissa verkoissa, joissa on tuhat tai kaksi tuhatta konetta, manuaalinen osoitteiden antaminen ei vaikuta kovin mahdolliselta.

Tästä syystä TCP/IP-verkkoihin keksittiin erityinen lähestymistapa, josta tuli protokollapinon erottuva piirre. Skaalautuvuuden käsite otettiin käyttöön.

TCP/IP-protokollapinon kerrokset

Tässä on tietty hierarkia. TCP/IP-protokollapinossa on neljä kerrosta, joista jokainen käsittelee omaa protokollasarjaansa:

Sovelluskerros: luotu, jotta käyttäjä voi olla vuorovaikutuksessa verkon kanssa. Tällä tasolla käsitellään kaikki, mitä käyttäjä näkee ja tekee. Tason avulla käyttäjä pääsee käsiksi erilaisiin verkkopalveluihin, esimerkiksi: pääsy tietokantoihin, mahdollisuus lukea tiedostoluetteloa ja avata niitä, lähettää sähköpostiviesti tai avata web-sivu. Tällä tasolla välitetään käyttäjätietojen ja toimintojen ohella palveluinformaatiota.

Kuljetuskerros: Tämä on puhdas pakettilähetysmekanismi. Tällä tasolla pakkauksen sisällöllä tai sen liittymisellä mihinkään toimintaan ei ole merkitystä. Tällä tasolla vain sen solmun osoitteella, josta paketti lähetetään, ja sen solmun osoitteella, jolle paketti tulee toimittaa, on merkitystä. Pääsääntöisesti eri protokollilla lähetettyjen fragmenttien koko voi muuttua, joten tällä tasolla tietolohkot voidaan jakaa lähdössä ja koota yhdeksi kokonaisuudeksi kohteessa. Tämä aiheuttaa mahdollisen datahäviön, jos seuraavan fragmentin lähetyshetkellä tapahtuu lyhytaikainen yhteyskatkos.

Kuljetuskerros sisältää monia protokollia, jotka on jaettu luokkiin, yksinkertaisimmista, jotka yksinkertaisesti välittävät dataa, monimutkaisiin protokolliin, jotka on varustettu vastaanottamisen kuittaustoiminnolla tai puuttuvan tietolohkon uudelleenpyynnöllä.

Tämä taso tarjoaa korkeamman (sovellus)tason kahdentyyppisillä palveluilla:

  • Tarjoaa taatun toimituksen TCP-protokollan avulla.
  • Toimitetaan UDP:n kautta aina kun mahdollista .

Taatun toimituksen varmistamiseksi muodostetaan TCP-protokollan mukainen yhteys, jonka avulla paketit voidaan numeroida lähdössä ja vahvistaa sisääntulossa. Pakettien numerointi ja vastaanoton vahvistus ovat ns. palvelutiedot. Tämä protokolla tukee lähetystä "Duplex"-tilassa. Lisäksi pöytäkirjan hyvin harkittujen säännösten ansiosta sitä pidetään erittäin luotettavana.

UDP-protokolla on tarkoitettu hetkiin, jolloin lähetystä TCP-protokollan kautta ei voi konfiguroida tai joudut säästämään verkon tiedonsiirtosegmentissä. UDP-protokolla voi myös olla vuorovaikutuksessa korkeamman tason protokollien kanssa pakettilähetyksen luotettavuuden lisäämiseksi.

Verkkokerros tai "Internet-kerros": koko TCP/IP-mallin peruskerros. Tämän kerroksen päätoiminnallisuus on identtinen OSI-mallin samannimisen kerroksen kanssa ja kuvaa pakettien liikkumista useista pienemmistä aliverkoista koostuvassa yhdistelmäverkossa. Se linkittää TCP/IP-protokollan vierekkäiset kerrokset.

Verkkokerros on yhdistävä kerros ylemmän kuljetuskerroksen ja verkkorajapintojen alemman tason välillä. Verkkokerros käyttää protokollia, jotka vastaanottavat pyynnön siirtokerrokselta ja välittävät säädellyn osoitteen kautta käsitellyn pyynnön verkkorajapintaprotokollalle osoittaen mihin osoitteeseen tiedot lähetetään.

Tällä tasolla käytetään seuraavia TCP/IP-verkkoprotokollia: ICMP, IP, RIP, OSPF. Pääasiallinen ja suosituin verkkotasolla on tietysti IP (Internet Protocol). Sen päätehtävänä on lähettää paketteja reitittimestä toiseen, kunnes datayksikkö saavuttaa kohdesolmun verkkorajapinnan. IP-protokollaa ei käytetä vain isännissä, vaan myös verkkolaitteissa: reitittimissä ja hallituissa kytkimissä. IP-protokolla toimii parhaan mahdollisen, takaamattoman toimituksen periaatteella. Eli yhteyttä ei tarvitse muodostaa etukäteen paketin lähettämiseksi. Tämä vaihtoehto säästää liikennettä ja aikaa tarpeettomien palvelupakettien siirtämiseen. Paketti reititetään kohti määränpäätä, ja on mahdollista, että solmu ei ole tavoitettavissa. Tässä tapauksessa palautetaan virheilmoitus.

Verkkoliitäntätaso: on vastuussa siitä, että eri tekniikoilla varustetut aliverkot voivat olla vuorovaikutuksessa toistensa kanssa ja välittää tietoa samassa tilassa. Tämä tapahtuu kahdessa yksinkertaisessa vaiheessa:

  • Paketin koodaus väliverkkotietoyksikköön.
  • Muuntaa kohdetiedot vaadituiksi aliverkkostandardeiksi ja lähettää tietoyksikön.

Tämän lähestymistavan avulla voimme jatkuvasti laajentaa tuettujen verkkoteknologioiden määrää. Heti kun uusi tekniikka ilmestyy, se putoaa välittömästi TCP/IP-protokollapinoon ja mahdollistaa vanhempien tekniikoiden verkkojen siirtämisen verkkoihin, jotka on rakennettu nykyaikaisemmilla standardeilla ja menetelmillä.

Siirretyn tiedon yksiköt

TCP/IP-protokollan kaltaisen ilmiön olemassaolon aikana on laadittu vakioehtoja lähetetyn tiedon yksiköille. Lähetyksen aikana dataa voidaan pirstalla eri tavoin kohdeverkon käyttämien tekniikoiden mukaan.

Jotta saisi käsityksen siitä, mitä tiedoilla tapahtuu ja missä vaiheessa, oli tarpeen keksiä seuraava terminologia:

  • Tietovirta- data, joka saapuu siirtokerrokseen ylemmän sovelluskerroksen protokollista.
  • Segmentti on datafragmentti, johon virta on jaettu TCP-protokollastandardien mukaisesti.
  • Datagrammi(erityisesti lukutaidottomat ihmiset ääntävät sen "Datagrammina") - tietoyksiköt, jotka saadaan jakamalla virta yhteydettömien protokollien (UDP) avulla.
  • Muovipussi- IP-protokollan kautta tuotettu tietoyksikkö.
  • TCP/IP-protokollat ​​pakkaavat IP-paketit tietolohkoiksi, jotka lähetetään komposiittiverkkojen kautta, ns henkilöstöä tai kehyksiä.

TCP/IP-protokollapino-osoitteiden tyypit

Mikä tahansa TCP/IP-tiedonsiirtoprotokolla käyttää yhtä seuraavista osoitetyypeistä isäntien tunnistamiseen:

  • Paikalliset (laitteisto)osoitteet.
  • Verkko-osoitteet (IP-osoitteet).
  • Domain-nimet.

Paikalliset osoitteet (MAC-osoitteet) - käytetään useimmissa lähiverkkotekniikoissa verkkoliitäntöjen tunnistamiseen. Kun puhutaan TCP/IP:stä, sana paikallinen tarkoittaa rajapintaa, joka ei toimi komposiittiverkossa vaan erillisessä aliverkossa. Esimerkiksi Internetiin yhdistetyn liitännän aliverkko on paikallinen ja Internet-verkko komposiitti. Paikallinen verkko voidaan rakentaa mille tahansa tekniikalle, ja tästä huolimatta yhdistelmäverkon näkökulmasta erikseen omistetussa aliverkossa sijaitsevaa konetta kutsutaan paikalliseksi. Siten kun paketti tulee paikalliseen verkkoon, sen IP-osoite liitetään paikalliseen osoitteeseen ja paketti lähetetään verkkoliitännän MAC-osoitteeseen.

Verkko-osoitteet (IP-osoitteet). TCP/IP-teknologia tarjoaa oman globaalin solmuosoitteensa yksinkertaisen ongelman ratkaisemiseksi - yhdistämällä eri tekniikoilla varustetut verkot yhdeksi suureksi tiedonsiirtorakenteeksi. IP-osoite on täysin riippumaton paikallisverkossa käytetystä tekniikasta, mutta IP-osoitteen avulla verkkoliitäntä voi edustaa konetta yhdistelmäverkossa.

Tuloksena kehitettiin järjestelmä, jossa isännät saavat IP-osoitteen ja aliverkon peitteen. Aliverkon peite näyttää kuinka monta bittiä on varattu verkkonumerolle ja kuinka monta isäntänumerolle. IP-osoite koostuu 32 bitistä, jotka on jaettu 8 bitin lohkoihin.

Kun paketti lähetetään, sille annetaan tiedot verkkonumerosta ja solmunumerosta, jolle paketti tulee lähettää. Ensin reititin välittää paketin haluttuun aliverkkoon ja sitten valitaan isäntä, joka odottaa sitä. Tämän prosessin suorittaa Address Resolution Protocol (ARP).

TCP/IP-verkkojen toimialueosoitteita hallitsee erityisesti suunniteltu DNS (Domain Name System) -järjestelmä. Tätä varten on olemassa palvelimia, jotka vastaavat tekstijonona esitettyä verkkotunnusta IP-osoitteen kanssa ja lähettävät paketin globaalin osoitteen mukaan. Tietokoneen nimen ja IP-osoitteen välillä ei ole vastaavuutta, joten verkkotunnuksen muuttamiseksi IP-osoitteeksi lähettävän laitteen on käytettävä DNS-palvelimelle luotua reititystaulukkoa. Esimerkiksi kirjoitamme sivuston osoitteen selaimeen, DNS-palvelin vastaa sen palvelimen IP-osoitteeseen, jolla sivusto sijaitsee, ja selain lukee tiedot ja vastaanottaa vastauksen.

Internetin lisäksi tietokoneille on mahdollista antaa verkkotunnuksia. Siten paikallisverkossa työskentely yksinkertaistuu. Kaikkia IP-osoitteita ei tarvitse muistaa. Sen sijaan voit antaa jokaiselle tietokoneelle minkä tahansa nimen ja käyttää sitä.

IP-osoite. Muoto. Komponentit. Aliverkon peite

IP-osoite on 32-bittinen numero, joka perinteisessä esityksessä kirjoitetaan pisteillä erotettuina numeroina väliltä 1-255.

IP-osoitteen tyyppi eri tallennusmuodoissa:

  • Desimaali IP-osoite: 192.168.0.10.
  • Saman IP-osoitteen binäärimuoto: 11000000.10101000.00000000.00001010.
  • Osoitteen syöttö heksadesimaalilukujärjestelmässä: C0.A8.00.0A.

Verkkotunnuksen ja pistenumeron välillä ei ole erotinta merkinnässä, mutta tietokone pystyy erottamaan ne. Voit tehdä tämän kolmella tavalla:

  1. Kiinteä reunus. Tällä menetelmällä koko osoite jaetaan ehdollisesti tavu kerrallaan kahteen kiinteän pituiseen osaan. Jos siis annamme yhden tavun verkkonumerolle, saamme 28 verkkoa, joissa kussakin on 224 solmua. Jos rajaa siirretään yhden tavun verran oikealle, verkkoja on enemmän - 2 16 ja vähemmän solmuja - 2 16. Nykyään lähestymistapaa pidetään vanhentuneena, eikä sitä käytetä.
  2. Aliverkon peite. Maski on yhdistetty IP-osoitteeseen. Maskissa on arvosarja "1" niissä biteissä, jotka on varattu verkkonumerolle, ja tietty määrä nollia niissä IP-osoitteen paikoissa, jotka on varattu solmunumerolle. Maskin ykkösten ja nollien välinen raja on verkkotunnuksen ja IP-osoitteen isäntätunnuksen välinen raja.
  3. Osoiteluokkien menetelmä. Kompromissimenetelmä. Sitä käytettäessä käyttäjä ei voi valita verkkokokoja, mutta luokkia on viisi - A, B, C, D, E. Kolme luokkaa - A, B ja C - on tarkoitettu eri verkoille, ja D ja E on varattu. erikoisverkkoja varten. Luokkajärjestelmässä jokaisella luokalla on oma rajansa verkkonumerolle ja solmutunnukselle.

IP-osoiteluokat

TO luokka A Näitä ovat verkot, joissa verkko tunnistetaan ensimmäisellä tavulla ja loput kolme ovat solmun numero. Kaikki IP-osoitteet, joiden ensimmäisen tavun arvo on 1–126, ovat A-luokan verkkoja. A-luokan verkkoja on määrällisesti hyvin vähän, mutta jokaisessa niistä voi olla jopa 2 24 pistettä.

Luokka B- verkot, joissa kaksi suurinta bittiä ovat 10. Niissä verkon numerolle ja pistetunnisteelle on varattu 16 bittiä. Tuloksena käy ilmi, että luokan B verkkojen lukumäärä eroaa kvantitatiivisesti A-luokan verkkojen määrästä, mutta niillä on pienempi määrä solmuja - jopa 65 536 (2 16) yksikköä.

Verkoissa luokka C- solmuja on hyvin vähän - jokaisessa 2 8, mutta verkkojen määrä on valtava, koska verkkotunniste tällaisissa rakenteissa vie kolme tavua.

Verkot luokka D- kuuluvat jo erityisiin verkkoihin. Se alkaa sekvenssillä 1110 ja sitä kutsutaan monilähetysosoitteeksi. Liitännät luokkien A, B ja C osoitteisiin voivat olla osa ryhmää ja vastaanottaa yksittäisen osoitteen lisäksi ryhmäosoitteen.

Osoitteet luokka E- varauksessa tulevaisuutta varten. Tällaiset osoitteet alkavat sekvenssillä 11110. Todennäköisimmin näitä osoitteita käytetään ryhmäosoitteina, kun globaalissa verkossa on pulaa IP-osoitteista.

TCP/IP-protokollan määrittäminen

TCP/IP-protokollan määrittäminen on käytettävissä kaikissa käyttöjärjestelmissä. Nämä ovat Linux, CentOS, Mac OS X, Free BSD, Windows 7. TCP/IP-protokolla vaatii vain verkkosovittimen. Tietenkin palvelimien käyttöjärjestelmät pystyvät enemmän. TCP/IP-protokolla konfiguroidaan hyvin laajasti palvelinpalveluiden avulla. Tavallisten pöytätietokoneiden IP-osoitteet asetetaan verkkoyhteysasetuksissa. Siellä määrität verkko-osoitteen, yhdyskäytävän - sen pisteen IP-osoitteen, jolla on pääsy globaaliin verkkoon, ja niiden pisteiden osoitteet, joissa DNS-palvelin sijaitsee.

TCP/IP-Internet-protokolla voidaan määrittää manuaalisesti. Vaikka tämä ei aina ole välttämätöntä. Voit vastaanottaa TCP/IP-protokollaparametreja dynaamisesti jakavasta palvelinosoitteesta automaattitilassa. Tätä menetelmää käytetään suurissa yritysverkoissa. DHCP-palvelimella voit yhdistää paikallisen osoitteen verkko-osoitteeseen, ja heti kun verkkoon ilmestyy kone jolla on annettu IP-osoite, palvelin antaa sille välittömästi valmiiksi valmistetun IP-osoitteen. Tätä prosessia kutsutaan varaukseksi.

TCP/IP Address Resolution Protocol

Ainoa tapa muodostaa suhde MAC-osoitteen ja IP-osoitteen välille on ylläpitää taulukkoa. Jos reititystaulukko on olemassa, jokainen verkkoliitäntä on tietoinen osoitteistaan ​​(paikallinen ja verkko), mutta herää kysymys kuinka järjestää pakettien vaihto solmujen välillä TCP/IP 4 -protokollaa käyttäen.

Miksi Address Resolution Protocol (ARP) keksittiin? TCP/IP-protokollaperheen ja muiden osoitejärjestelmien yhdistämiseksi. Jokaiselle solmulle luodaan ARP-kartoitustaulukko, joka täytetään koko verkon kyselyillä. Tämä tapahtuu aina, kun tietokone sammutetaan.

ARP pöytä

Tältä näyttää esimerkki käännetystä ARP-taulukosta.

TCP/IP-protokolla (Lähetyksen ohjausprotokolla/Internet-protokolla) on verkkoprotokollapino, jota käytetään yleisesti Internetissä ja muissa vastaavissa verkoissa (tätä protokollaa käytetään esimerkiksi lähiverkoissa). Nimi TCP/IP tulee kahdesta tärkeimmästä protokollasta:

  • IP (Internet Protocol) - vastaa datapaketin välittämisestä solmusta solmuun. IP välittää jokaisen paketin neljän tavun kohdeosoitteen (IP-osoitteen) perusteella.
  • TCP (Transmission Control Protocol) - on vastuussa tietojen oikean toimituksen varmistamisesta asiakkaalta palvelimelle. Tiedot voivat kadota väliverkossa. TCP lisäsi mahdollisuuden havaita virheet tai kadonneet tiedot ja sen seurauksena mahdollisuuden pyytää uudelleenlähetystä, kunnes tiedot on vastaanotettu oikein ja täydellisesti.

TCP/IP:n pääominaisuudet:

  • Standardoidut korkean tason protokollat, joita käytetään tunnettuihin käyttäjäpalveluihin.
  • Käytössä on avoimia protokollastandardeja, mikä mahdollistaa standardien kehittämisen ja jalostamisen ohjelmistoista ja laitteistoista riippumatta;
  • Ainutlaatuinen osoitejärjestelmä;
  • Riippumattomuus käytetystä fyysisestä viestintäkanavasta;

TCP/IP-protokollapinon toimintaperiaate on sama kuin OSI-mallissa. Ylemmiltä kerroksilta tulevat tiedot kapseloidaan paketteiksi alemmista kerroksista.

Jos paketti liikkuu tason läpi ylhäältä alas, jokaisella tasolla palvelutieto lisätään pakettiin otsikon ja mahdollisesti trailerin muodossa (viestin lopussa oleva tieto). Tätä prosessia kutsutaan. Palvelutiedot on tarkoitettu saman tason objektille etätietokoneessa. Sen muoto ja tulkinta määräytyvät tämän kerroksen protokollien mukaan.

Jos paketti liikkuu kerroksen läpi alhaalta ylös, se jaetaan otsikkoon ja dataan. Paketin otsikko analysoidaan, palveluinformaatio poimitaan ja sen mukaisesti data ohjataan johonkin ylemmän tason objekteista. Ylempi taso puolestaan ​​analysoi nämä tiedot ja jakaa sen myös otsikkoon ja dataan, sitten otsikko analysoidaan ja palvelutiedot ja data allokoidaan ylempään tasoon. Toimenpide toistetaan uudelleen, kunnes käyttäjätiedot, jotka on vapautettu kaikista palvelutiedoista, saavuttavat sovellustason.

On mahdollista, että paketti ei koskaan saavuta sovellustasoa. Erityisesti, jos tietokone toimii väliasemana lähettäjän ja vastaanottajan välisellä polulla, niin sopivalla tasolla oleva objekti määrittää palvelutietoja analysoidessaan, että tämän tason pakettia ei ole osoitettu sille. jonka seurauksena objekti ryhtyy tarvittaviin toimenpiteisiin ohjatakseen paketin uudelleen määränpäähän tai palauttaakseen sen lähettäjälle virheilmoituksella. Mutta tavalla tai toisella se ei nosta dataa ylemmälle tasolle.

Esimerkki kapseloinnista voidaan esittää seuraavasti:

Katsotaanpa jokaisen tason funktiota

Sovelluskerros

TCP/IP-pinoa käyttävät sovellukset voivat myös suorittaa OSI-mallin esityskerroksen ja osan istuntokerroksen toimintoja.

Yleisiä esimerkkejä sovelluksista ovat ohjelmat:

  • Telnet
  • HTTP
  • Sähköpostiprotokollat ​​(SMTP, POP3)

Lähettääkseen tietoja toiseen sovellukseen sovellus käyttää siirtomoduulin yhtä tai toista moduulia.

Kuljetuskerros

Kuljetuskerroksen protokollat ​​tarjoavat läpinäkyvän tiedon toimituksen kahden sovellusprosessin välillä. Prosessi, joka vastaanottaa tai lähettää dataa, tunnistetaan siirtokerroksessa numerolla, jota kutsutaan porttinumeroksi.

Siten lähde- ja kohdeosoitteen roolia siirtokerroksessa suorittaa porttinumero. Analysoimalla verkkokerroksesta vastaanotetun pakettinsa otsikon siirtomoduuli määrittää vastaanottajan porttinumeron perusteella, mihin sovellusprosesseista tiedot lähetetään, ja lähettää tämän tiedon vastaavalle sovellusprosessille.

Vastaanottajan ja lähettäjän porttinumerot kirjoitetaan otsikkoon dataa lähettävän siirtomoduulin toimesta. Kuljetuskerroksen otsikko sisältää myös muuta lisätietoa, ja otsikon muoto riippuu käytetystä kuljetusprotokollasta.

Kuljetuskerroksen työkalut edustavat toimivaa ylärakennetta verkkokerroksen yli ja ratkaisevat kaksi pääongelmaa:

  • varmistetaan tietojen toimittaminen tiettyjen ohjelmien välillä, jotka toimivat yleensä eri verkkosolmuissa;
  • varmistaa mielivaltaisen kokoisten tietoryhmien taatun toimituksen.

Tällä hetkellä Internetissä käytetään kahta siirtoprotokollaa - UDP, joka tarjoaa takaamattoman tiedon toimituksen ohjelmien välillä, ja TCP, joka tarjoaa taatun toimituksen virtuaalisen yhteyden muodostamisen yhteydessä.

Verkko (internet) tasolla

Tämän kerroksen pääprotokolla on IP-protokolla, joka toimittaa tietolohkoja (datagrammeja) yhdestä IP-osoitteesta toiseen. IP-osoite on tietokoneen, tai tarkemmin sanottuna sen verkkoliitännän, yksilöllinen 32-bittinen tunniste. Datagrammin tiedot siirretään IP-moduuliin kuljetuskerroksesta. IP-moduuli lisää näihin tietoihin otsikon, joka sisältää lähettäjän ja vastaanottajan IP-osoitteen sekä muita palvelutietoja.

Näin luotu datagrammi siirretään mediapääsykerrokseen lähetettäväksi datalinkin kautta.

Kaikki tietokoneet eivät pysty kommunikoimaan suoraan toistensa kanssa, jotta datagrammi voidaan lähettää määränpäähän, se on reitittävä yhden tai useamman välitietokoneen kautta tiettyä reittiä pitkin. Reitin määrittäminen kullekin datagrammille ratkaistaan ​​IP-protokollan avulla.

Kun IP-moduuli vastaanottaa datagrammin alemmalta tasolta, se tarkistaa kohde-IP-osoitteen, jos datagrammi on osoitettu tietylle tietokoneelle, siirretään siitä data käsittelyä varten ylemmän tason moduuliin, mutta jos kohdeosoite; datagrammista on vieras, IP-moduuli voi tehdä kaksi päätöstä:

  • Tuhoaa datagrammin;
  • Lähetä se edelleen määränpäähänsä, kun olet määrittänyt reitin, tätä tekevät väliasemat - reitittimet.

Verkkojen reunalla, joilla on erilaiset ominaisuudet, voi myös olla tarpeen hajottaa datagrammi palasiksi ja koota ne sitten yhdeksi kokonaisuudeksi vastaanottajan tietokoneella. Tämä on myös IP-protokollan tehtävä.

IP-protokolla voi myös lähettää ilmoitussanomia ICMP-protokollaa käyttäen esimerkiksi datagrammin tuhoutuessa. Tietojen oikeellisuuden, vahvistuksen tai toimituksen valvontaa ei enää ole, protokollassa ei ole alustavaa yhteyttä, nämä tehtävät on annettu kuljetuskerrokselle.

Median käyttöoikeustaso

Tämän tason toiminnot ovat seuraavat:

  • IP-osoitteiden yhdistäminen fyysisiin verkko-osoitteisiin. Tämän toiminnon suorittaa ARP-protokolla;
  • Kapseloi IP-datagrammit kehyksiin lähetettäväksi fyysisen linkin kautta ja poimii datagrammit kehyksistä ilman virheettömän lähetyksen ohjausta, koska TCP/IP-pinossa tällainen ohjaus on osoitettu kuljetuskerrokselle tai itse sovellukselle. Kehyksen otsikko osoittaa SAP-palvelun liityntäpisteen, tämä kenttä sisältää protokollakoodin;
  • Määritetään menetelmä, jolla siirtovälineeseen päästään, ts. tapa, jolla tietokoneet vahvistavat oikeutensa siirtää tietoja;
  • Tiedon esityksen määrittäminen fyysisessä ympäristössä;
  • Kehyksen edelleenlähetys ja vastaanotto.

Harkitsemme kapselointi käyttämällä esimerkkiä HTTP-protokollapaketin sieppaamisesta Wireshark snifferillä, joka toimii TCP/IP-protokollan sovellustasolla:


Itse siepatun HTTP-protokollan lisäksi sniffer kuvaa jokaisen alla olevan kerroksen TCP/IP-pinon perusteella. HTTP on kapseloitu TCP:hen, TCP IPv4:ään, IPv4 Ethernet II:een.

Globaalin Internetin toiminta perustuu TCP/IP-protokollien joukkoon (pinoon). Mutta nämä termit näyttävät monimutkaisilta vain ensi silmäyksellä. Itse asiassa TCP/IP-protokollapino on yksinkertainen sääntöjoukko tiedonvaihtoa varten, ja nämä säännöt ovat itse asiassa hyvin tuttuja, vaikka et todennäköisesti olekaan tietoinen niistä. Kyllä, juuri näin se on, TCP/IP-protokollien taustalla olevissa periaatteissa ei ole mitään uutta: kaikki uusi on hyvin unohdettua vanhaa.

Ihminen voi oppia kahdella tavalla:

  1. Tavallisten ongelmien ratkaisemiseen tarkoitettujen kaavamenetelmien typerän muodollisen muistamisen kautta (mitä nykyään opetetaan enimmäkseen koulussa). Tällainen koulutus on tehotonta. Olet varmasti nähnyt kirjanpitäjän paniikin ja täydellisen avuttomuuden toimistoohjelmiston versiota vaihtaessaan - pienimmälläkin muutoksella tuttujen toimintojen suorittamiseen vaadittavassa hiiren napsautusjärjestyksessä. Vai oletko koskaan nähnyt ihmisen joutuvan tyrmistykseen vaihtaessaan työpöydän käyttöliittymää?
  2. Ymmärtämällä ongelmien, ilmiöiden, kuvioiden olemuksen. Ymmärryksen kautta periaatteita rakentaa tätä tai tätä järjestelmää. Tässä tapauksessa tietosanakirjatiedolla ei ole suurta roolia - puuttuva tieto on helppo löytää. Tärkeintä on tietää, mitä etsiä. Ja tämä ei vaadi muodollista tietoa aiheesta, vaan sen olemuksen ymmärtämistä.

Tässä artikkelissa ehdotan toista polkua, koska Internetin taustalla olevien periaatteiden ymmärtäminen antaa sinulle mahdollisuuden tuntea olosi varmaksi ja vapaaksi Internetissä - ratkaise nopeasti ilmenevät ongelmat, muotoile ongelmat oikein ja kommunikoi luotettavasti teknisen tuen kanssa.

Joten aloitetaan.

TCP/IP-Internet-protokollien toimintaperiaatteet ovat luonnostaan ​​hyvin yksinkertaisia ​​ja muistuttavat vahvasti Neuvostoliiton postipalvelumme toimintaa.

Muista kuinka tavallinen postimme toimii. Ensin kirjoitat kirjeen paperille, laitat sen sitten kirjekuoreen, sinetöit sen, kirjoitat kirjekuoren kääntöpuolelle lähettäjän ja vastaanottajan osoitteet ja vievät sen sitten lähimpään postiin. Seuraavaksi kirje kulkee postikonttoriketjun kautta vastaanottajan lähimpään postikonttoriin, josta postimies toimittaa sen vastaanottajan ilmoittamaan osoitteeseen ja pudottaa sen postilaatikkoon (asuntonumeroineen) tai luovuttaa sen henkilökohtaisesti. Siinä se, kirje on saapunut vastaanottajalle. Kun kirjeen vastaanottaja haluaa vastata sinulle, hän vaihtaa vastauskirjeessään vastaanottajan ja lähettäjän osoitteet ja kirje lähetetään sinulle samaa ketjua pitkin, mutta päinvastaiseen suuntaan.

Kirjeen kuoressa lukee jotain tällaista:

Lähettäjän osoite: Keneltä: Ivanov Ivan Ivanovich Missä: Ivanteevka, st. Bolshaya, 8, asunto 25 Vastaanottajan osoite: Kenelle: Petrov Petr Petrovich Missä: Moskova, Usachevsky lane, 105, apt. 110

Nyt olemme valmiita pohtimaan tietokoneiden ja sovellusten vuorovaikutusta Internetissä (ja myös lähiverkossa). Huomaa, että analogia tavallisen postin kanssa on melkein täydellinen.

Jokaisella Internetin tietokoneella (alias: solmu, isäntä) on myös yksilöllinen osoite, jota kutsutaan IP-osoitteeksi (Internet Protocol Address), esimerkiksi: 195.34.32.116. IP-osoite koostuu neljästä desimaaliluvusta (0 - 255), jotka on erotettu pisteellä. Mutta vain tietokoneen IP-osoitteen tietäminen ei riitä, koska... Viime kädessä eivät tietokoneet itse vaihda tietoja, vaan niissä toimivat sovellukset. Ja useita sovelluksia voi toimia samanaikaisesti tietokoneessa (esimerkiksi sähköpostipalvelin, verkkopalvelin jne.). Tavallisen paperikirjeen toimittamiseksi ei riitä, että tiedät vain talon osoitteen - sinun on tiedettävä myös asunnon numero. Lisäksi jokaisella ohjelmistosovelluksella on samanlainen numero, jota kutsutaan porttinumeroksi. Useimmissa palvelinsovelluksissa on vakionumerot, esimerkiksi: sähköpostipalvelu on sidottu porttiin numero 25 (he myös sanovat: "kuuntelee" porttia, vastaanottaa viestejä siitä), verkkopalvelu on sidottu porttiin 80, FTP porttiin 21 , ja niin edelleen.

Näin ollen meillä on seuraava lähes täydellinen analogia tavallisen postiosoitteemme kanssa:

"house address" = "tietokoneen IP" "asunnon numero" = "portin numero"

TCP/IP-protokollia käyttävissä tietokoneverkoissa kirjekuoressa olevan paperikirjeen analogi on muovipussi, joka sisältää varsinaiset lähetetyt tiedot ja osoitetiedot - lähettäjän osoitteen ja vastaanottajan osoitteen, esimerkiksi:

Lähteen osoite: IP: 82.146.49.55 Portti: 2049 Vastaanottajan osoite (kohdeosoite): IP: 195.34.32.116 Portti: 53 Paketin tiedot: ...

Paketit sisältävät tietysti myös palvelutietoja, mutta se ei ole oleellisen ymmärtämisen kannalta tärkeää.

Huomaa yhdistelmä: "IP-osoite ja portin numero" - nimeltään "pistorasia".

Esimerkissämme lähetämme paketin socketista 82.146.49.55:2049 kantaan 195.34.32.116:53, ts. paketti menee tietokoneeseen, jonka IP-osoite on 195.34.32.116, porttiin 53. Ja portti 53 vastaa nimentunnistuspalvelinta (DNS-palvelin), joka vastaanottaa tämän paketin. Tietäen lähettäjän osoitteen, tämä palvelin pystyy pyyntömme käsittelyn jälkeen generoimaan vastauspaketin, joka kulkee päinvastaiseen suuntaan kuin lähettäjän socket 82.146.49.55:2049, joka DNS-palvelimelle on vastaanottajan liitäntä.

Vuorovaikutus tapahtuu pääsääntöisesti "asiakas-palvelin" -mallin mukaisesti: "asiakas" pyytää joitain tietoja (esimerkiksi verkkosivuston sivu), palvelin hyväksyy pyynnön, käsittelee sen ja lähettää tuloksen. Palvelinsovellusten porttinumerot ovat hyvin tiedossa, esimerkiksi: SMTP-postipalvelin "kuuntelee" porttia 25, POP3-palvelin, joka sallii sähköpostin lukemisen postilaatikoistasi, "kuuntelee" portissa 110, web-palvelin kuuntelee porttia 80 jne. .

Useimmat kotitietokoneen ohjelmat ovat asiakkaita - esimerkiksi Outlook-sähköpostiohjelma, IE, FireFox-verkkoselaimet jne.

Asiakkaan porttinumerot eivät ole kiinteitä kuten palvelimessa, vaan käyttöjärjestelmä määrittää ne dynaamisesti. Kiinteissä palvelinporteissa on yleensä numeroita 1024 asti (mutta on poikkeuksia), ja asiakasportit alkavat numeron 1024 jälkeen.

Toistaminen on opetuksen äiti: IP on verkossa olevan tietokoneen (solmun, isäntä) osoite ja portti tietyn tällä tietokoneella käynnissä olevan sovelluksen numero.

Ihmisen on kuitenkin vaikea muistaa digitaalisia IP-osoitteita - on paljon mukavampaa työskennellä aakkosisten nimien kanssa. Loppujen lopuksi on paljon helpompi muistaa sana kuin joukko numeroita. Tämä tehdään - mikä tahansa digitaalinen IP-osoite voidaan liittää aakkosnumeeriseen nimeen. Tämän seurauksena esimerkiksi 82.146.49.55 sijasta voit käyttää nimeä Ja verkkotunnuksen nimipalvelu (DNS) (Domain Name System) hoitaa verkkotunnuksen muuntamisen digitaaliseksi IP-osoitteeksi.

Katsotaanpa tarkemmin, miten tämä toimii. Internet-palveluntarjoajasi antaa sinulle nimipalvelimen (DNS) IP-osoitteen joko nimenomaisesti (paperilla, manuaalista yhteydenmuodostusta varten) tai implisiittisesti (automaattisen yhteyden määrityksen kautta). Tällä IP-osoitteella varustetussa tietokoneessa on käynnissä sovellus (nimipalvelin), joka tietää kaikki Internetin verkkotunnukset ja niitä vastaavat digitaaliset IP-osoitteet. DNS-palvelin "kuuntelee" porttia 53, hyväksyy siihen kohdistuvat pyynnöt ja antaa vastauksia, esimerkiksi:

Pyyntö tietokoneeltamme: "Mikä IP-osoite vastaa nimeä www.sivusto?" Palvelimen vastaus: "82.146.49.55."

Katsotaan nyt, mitä tapahtuu, kun kirjoitat tämän sivuston () verkkotunnuksen (URL) selaimeesi ja napsautat , vastauksena web-palvelimelta saat tämän sivuston sivun.

Esimerkiksi:

Tietokoneemme IP-osoite: 91.76.65.216 Selain: Internet Explorer (IE), DNS-palvelin (stream): 195.34.32.116 (omasi voi olla erilainen), Sivu, jonka haluamme avata: www.site.

Kirjoita verkkotunnuksen nimi selaimen osoiteriville ja napsauta . Seuraavaksi käyttöjärjestelmä suorittaa suunnilleen seuraavat toiminnot:

Pyyntö (tarkemmin sanottuna pyynnön sisältävä paketti) lähetetään DNS-palvelimelle pistokkeessa 195.34.32.116:53. Kuten edellä mainittiin, portti 53 vastaa DNS-palvelinta, sovellus, joka ratkaisee nimiä. Ja DNS-palvelin, käsiteltyään pyyntömme, palauttaa IP-osoitteen, joka vastaa syötettyä nimeä.

Dialogi menee jotakuinkin näin:

Mikä IP-osoite vastaa nimeä www.sivusto? - 82.146.49.55 .

Seuraavaksi tietokoneemme muodostaa yhteyden porttiin 80 tietokone 82.146.49.55 ja lähettää pyynnön (pyyntöpaketin) vastaanottaa sivu. Portti 80 vastaa verkkopalvelinta. Porttia 80 ei yleensä kirjoiteta selaimen osoiteriville, koska... käytetään oletuksena, mutta se voidaan myös määrittää eksplisiittisesti kaksoispisteen - jälkeen.

Saatuaan meiltä pyynnön web-palvelin käsittelee sen ja lähettää meille sivun useissa paketeissa HTML-muodossa - tekstinkuvauskielellä, jota selain ymmärtää.

Selaimemme näyttää sen saatuaan sivun. Tämän seurauksena näemme tämän sivuston pääsivun näytöllä.

Miksi meidän on ymmärrettävä nämä periaatteet?

Olet esimerkiksi huomannut tietokoneesi outoa toimintaa - outoa verkkotoimintaa, hidastuksia jne. Mitä tehdä? Avaa konsoli (napsauta "Käynnistä" -painiketta - "Suorita" - kirjoita cmd - "Ok"). Kirjoitamme konsoliin komennon netstat -an ja napsauta . Tämä apuohjelma näyttää luettelon muodostetuista yhteyksistä tietokoneemme vastakkeiden ja etäisäntien vastakkeiden välillä. Jos näemme ulkomaisia ​​IP-osoitteita Ulkoinen osoite -sarakkeessa ja 25. portin kaksoispisteen jälkeen, mitä tämä voi tarkoittaa? (Muista, että portti 25 vastaa sähköpostipalvelinta?) Tämä tarkoittaa, että tietokoneesi on muodostanut yhteyden johonkin sähköpostipalvelimeen (palvelimiin) ja lähettää kirjeitä sen kautta. Ja jos sähköpostiohjelmasi (esimerkiksi Outlook) ei ole tällä hetkellä käynnissä ja jos portissa 25 on edelleen paljon tällaisia ​​yhteyksiä, tietokoneessasi on todennäköisesti virus, joka lähettää roskapostia puolestasi tai välittää luottotietosi. korttien numerot ja salasanat hyökkääjille.

Myös Internetin periaatteiden ymmärtäminen on välttämätöntä palomuurin (toisin sanoen palomuurin :)) oikein määrittämiseksi. Tämä ohjelma (joka tulee usein virustorjuntaohjelman mukana) on suunniteltu suodattamaan paketteja - "ystäviä" ja "vihollisia". Päästä omat läpi, älä päästä vieraita sisään. Jos palomuurisi kertoo esimerkiksi, että joku haluaa muodostaa yhteyden johonkin tietokoneesi porttiin. Salli vai kiellä?

Ja mikä tärkeintä, tämä tieto on erittäin hyödyllistä kommunikoitaessa teknisen tuen kanssa.

Lopuksi tässä on luettelo porteista, joita todennäköisesti kohtaat:

135-139 - Windows käyttää näitä portteja jaettujen tietokoneresurssien - kansioiden, tulostimien - käyttöön. Älä avaa näitä portteja ulospäin, ts. alueelliseen paikallisverkkoon ja Internetiin. Ne tulee sulkea palomuurilla. Lisäksi, jos et näe lähiverkossa mitään verkkoympäristössä tai et ole näkyvissä, tämä johtuu todennäköisesti siitä, että palomuuri on estänyt nämä portit. Näin ollen näiden porttien on oltava avoimia paikallisverkolle, mutta suljettuina Internetiä varten. 21 - portti FTP palvelin. 25 - postisatama SMTP palvelin. Sähköpostiohjelmasi lähettää kirjeitä sen kautta. SMTP-palvelimen IP-osoite ja sen portti (25.) tulee määrittää sähköpostiohjelman asetuksissa. 110 - portti POP3 palvelin. Sen kautta sähköpostiohjelmasi kerää kirjeitä postilaatikostasi. POP3-palvelimen IP-osoite ja sen portti (110.) tulee myös määrittää sähköpostiohjelman asetuksissa. 80 - portti WEB-palvelimet. 3128, 8080 - välityspalvelimet (määritetty selaimen asetuksissa).

Useita erityisiä IP-osoitteita:

127.0.0.1 on localhost, paikallisen järjestelmän osoite, ts. tietokoneesi paikallinen osoite. 0.0.0.0 - näin kaikki IP-osoitteet määritetään. 192.168.xxx.xxx - osoitteet, joita voidaan käyttää mielivaltaisesti paikallisissa verkoissa, niitä ei käytetä maailmanlaajuisessa Internetissä. Ne ovat ainutlaatuisia vain paikallisessa verkossa. Voit käyttää tämän alueen osoitteita oman harkintasi mukaan esimerkiksi koti- tai toimistoverkon rakentamiseen.

Mikä on aliverkon peite ja oletusyhdyskäytävä (reititin, reititin)?

(Nämä parametrit asetetaan verkkoyhteysasetuksissa).

Se on yksinkertaista. Tietokoneet on kytketty paikallisiin verkkoihin. Paikallisessa verkossa tietokoneet "näkevät" suoraan vain toisensa. Paikalliset verkot yhdistetään toisiinsa yhdyskäytävien (reitittimet, reitittimet) kautta. Aliverkon peite on suunniteltu määrittämään, kuuluuko vastaanottava tietokone samaan paikallisverkkoon vai ei. Jos vastaanottava tietokone kuuluu samaan verkkoon kuin lähettävä tietokone, niin paketti lähetetään sille suoraan, muuten paketti lähetetään oletusyhdyskäytävälle, joka sitten sen tuntemia reittejä käyttäen välittää paketin toiseen verkkoon, ts. toiseen postiin (vastaavasti Neuvostoliiton postikonttoriin).

Katsotaan lopuksi, mitä nämä epäselvät termit tarkoittavat:

TCP/IP on verkkoprotokollien joukon nimi. Itse asiassa lähetetty paketti kulkee useiden kerrosten läpi. (Kuten postissa: kirjoitat ensin kirjeen, sitten laitat sen osoitettuun kirjekuoreen, sitten posti laittaa siihen leiman jne.).

IP Protokolla on ns. verkkokerroksen protokolla. Tämän tason tehtävänä on toimittaa IP-paketit lähettäjän tietokoneelta vastaanottajan tietokoneelle. Itse datan lisäksi tämän tason paketeilla on lähde-IP-osoite ja vastaanottajan IP-osoite. Porttinumeroita ei käytetä verkkotasolla. Mikä satama, ts. sovellus on osoitettu tälle paketille, onko tämä paketti toimitettu vai kadonnut, ei tiedetä tällä tasolla - tämä ei ole sen tehtävä, se on kuljetuskerroksen tehtävä.

TCP ja UDP Nämä ovat niin sanotun kuljetuskerroksen protokollia. Kuljetuskerros sijaitsee verkkokerroksen yläpuolella. Tällä tasolla pakettiin lisätään lähdeportti ja kohdeportti.

TCP on yhteyssuuntautunut protokolla taatulla pakettien toimituksella. Ensin vaihdetaan erityisiä paketteja yhteyden muodostamiseksi, tapahtuu jotain kädenpuristusta (-Hei. -Hei. -Piataanko juttelemaan? -Tule.). Tämän jälkeen paketteja lähetetään edestakaisin tämän yhteyden kautta (keskustelu on käynnissä), ja tarkistetaan, onko paketti saapunut vastaanottajalle. Jos pakettia ei vastaanoteta, se lähetetään uudelleen ("toista, en kuullut").

UDP on yhteydetön protokolla, jossa ei ole taattua pakettien toimitusta. (Kuten: huusivat jotain, mutta kuulivatko he sinut vai eivät - sillä ei ole väliä).

Kuljetuskerroksen yläpuolella on sovelluskerros. Tällä tasolla protokollat, kuten http, ftp jne. Esimerkiksi HTTP ja FTP käyttävät luotettavaa TCP-protokollaa, ja DNS-palvelin toimii epäluotettavan UDP-protokollan kautta.

Kuinka tarkastella nykyisiä yhteyksiä?

Nykyisiä yhteyksiä voi tarkastella komennolla

Netstat -an

(n-parametri määrittää IP-osoitteiden näyttämisen verkkotunnusten sijaan).

Tämä komento toimii näin:

"Käynnistä" - "Suorita" - kirjoita cmd - "Ok". Kirjoita näkyviin tulevaan konsoliin (musta ikkuna) komento netstat -an ja napsauta . Tuloksena on luettelo muodostetuista yhteyksistä tietokoneemme vastakkeiden ja etäsolmujen välillä.

Esimerkiksi saamme:

Aktiiviset yhteydet

Nimi Paikallinen osoite Ulkoinen osoite Osavaltio
TCP 0.0.0.0:135 0.0.0.0:0 KUUNTELU
TCP 91.76.65.216:139 0.0.0.0:0 KUUNTELU
TCP 91.76.65.216:1719 212.58.226.20:80 PERUSTI
TCP 91.76.65.216:1720 212.58.226.20:80 PERUSTI
TCP 91.76.65.216:1723 212.58.227.138:80 CLOSE_WAIT
TCP 91.76.65.216:1724 212.58.226.8:80 PERUSTI
...

Tässä esimerkissä 0.0.0.0:135 tarkoittaa, että tietokoneemme kuuntelee (KUUNTELU) porttia 135 kaikissa IP-osoitteissaan ja on valmis hyväksymään yhteyksiä keneltä tahansa sillä (0.0.0.0:0) TCP-protokollan kautta.

91.76.65.216:139 - tietokoneemme kuuntelee porttia 139 IP-osoitteestaan ​​91.76.65.216.

Kolmas rivi tarkoittaa, että yhteys on nyt muodostettu (MUOTETTU) koneemme (91.76.65.216:1719) ja etälaitteen (212.58.226.20:80) välille. Portti 80 tarkoittaa, että koneemme teki pyynnön verkkopalvelimelle (itse asiassa minulla on sivuja auki selaimessa).

Tulevissa artikkeleissa tarkastellaan, kuinka tätä tietoa voidaan soveltaa, esim.


TCP/IP-protokollat ​​ovat maailmanlaajuisen Internetin perusta. Tarkemmin sanottuna TCP/IP on protokollien luettelo tai pino, ja itse asiassa joukko sääntöjä, joiden mukaan tietoja vaihdetaan (pakettikytkentämalli on toteutettu).

Tässä artikkelissa analysoimme TCP/IP-protokollapinon toimintaperiaatteet ja yritämme ymmärtää niiden toiminnan periaatteet.

Huomautus: Usein TCP/IP-lyhenne viittaa koko verkkoon, joka toimii näiden kahden protokollan, TCP:n ja IP:n, perusteella.

Tällaisen verkon mallissa pääprotokollien lisäksi TCP (Transport Layer) ja IP (Network Layer Protocol) sisältää sovellus- ja verkkokerroksen protokollat ​​(katso kuva). Mutta palataanpa suoraan TCP- ja IP-protokolliin.

Mitä ovat TCP/IP-protokollat

TCP - Transfer Control Protocol. Lähetyksen ohjausprotokolla. Se varmistaa ja muodostaa luotettavan yhteyden kahden laitteen välille ja luotettavan tiedonsiirron. Tässä tapauksessa TCP-protokolla ohjaa lähetettävän datapaketin optimaalista kokoa ja lähettää uuden, jos lähetys epäonnistuu.

IP - Internet Protocol. Internet Protocol tai Address Protocol on koko tiedonsiirtoarkkitehtuurin perusta. IP-protokollaa käytetään verkkodatapaketin toimittamiseen haluttuun osoitteeseen. Tässä tapauksessa tiedot jaetaan paketteihin, jotka liikkuvat itsenäisesti verkon läpi haluttuun kohteeseen.

TCP/IP-protokollaformaatit

IP-protokollan muoto

IP-protokollan IP-osoitteille on kaksi muotoa.

IPv4-muoto. Tämä on 32-bittinen binääriluku. Kätevä tapa kirjoittaa IP-osoite (IPv4) on neljä desimaalilukuryhmää (0-255), jotka on erotettu pisteillä. Esimerkki: 193.178.0.1.

IPv6-muoto. Tämä on 128-bittinen binääriluku. IPv6-osoitteet kirjoitetaan yleensä kahdeksan ryhmän muodossa. Jokainen ryhmä sisältää neljä heksadesimaalilukua, jotka on erotettu kaksoispisteellä. Esimerkki IPv6-osoitteesta 2001:0db8:85a3:08d3:1319:8a2e:0370:7889.

Kuinka TCP/IP-protokollat ​​toimivat

Jos se on kätevää, harkitse datapakettien lähettämistä verkossa kirjeen lähettämisenä postitse.

Jos se on hankalaa, kuvittele kaksi tietokonetta, jotka on yhdistetty verkkoon. Lisäksi yhteysverkko voi olla mikä tahansa, sekä paikallinen että globaali. Tiedonsiirron periaatteessa ei ole eroa. Verkossa olevaa tietokonetta voidaan pitää myös isäntänä tai solmuna.

IP-protokolla

Jokaisella verkon tietokoneella on oma yksilöllinen osoite. Globaalissa Internetissä tietokoneella on tämä osoite, jota kutsutaan IP-osoitteeksi (Internet Protocol Address).

Vastaavasti postin kanssa IP-osoite on talon numero. Mutta talon numero ei riitä kirjeen vastaanottamiseen.

Verkon kautta siirrettyä tietoa ei välitä itse tietokone, vaan siihen asennetut sovellukset. Tällaisia ​​sovelluksia ovat sähköpostipalvelin, verkkopalvelin, FTP jne. Lähetetyn tietopaketin tunnistamiseksi jokainen sovellus liitetään tiettyyn porttiin. Esimerkiksi: verkkopalvelin kuuntelee porttia 80, FTP kuuntelee porttia 21, SMTP-postipalvelin kuuntelee porttia 25, POP3-palvelin lukee postilaatikon postia portissa 110.

Siten TCP/IP-protokollan osoitepaketissa vastaanottajissa näkyy toinen rivi: portti. Analoginen postin kanssa - portti on lähettäjän ja vastaanottajan asunnon numero.

Esimerkki:

Lähteen osoite:

IP: 82.146.47.66

Määränpään osoite:

IP: 195.34.31.236

Se kannattaa muistaa: IP-osoite + portin numero kutsutaan "socketiksi". Yllä olevassa esimerkissä: pistokkeesta 82.146.47.66:2049 paketti lähetetään kantaan 195.34.31.236:53.

TCP-protokolla

TCP-protokolla on IP-protokollan jälkeen seuraava kerrosprotokolla. Tämä protokolla on tarkoitettu ohjaamaan tiedon siirtoa ja sen eheyttä.

Esimerkiksi lähetettävät tiedot jaetaan erillisiksi paketeiksi. Paketit toimitetaan vastaanottajalle itsenäisesti. Lähetysprosessin aikana yhtä paketeista ei lähetetty. TCP-protokolla tarjoaa uudelleenlähetyksiä, kunnes vastaanottaja vastaanottaa paketin.

TCP-siirtoprotokolla piilottaa kaikki tiedonsiirron ongelmat ja yksityiskohdat korkeamman tason protokollilta (fyysinen, kanava, verkko-IP).

Tämä artikkeli käsittelee TCP/IP-mallin perusteita. Paremman ymmärtämisen vuoksi kuvataan tärkeimmät protokollat ​​ja palvelut. Tärkeintä on ottaa aikaa ja yrittää ymmärtää jokainen asia askel askeleelta. Ne ovat kaikki yhteydessä toisiinsa, ja jos toista ei ymmärrä, toista on vaikea ymmärtää. Tässä esitetyt tiedot ovat hyvin pinnallisia, joten tätä artikkelia voidaan helposti kutsua "TCP/IP-protokollapinoksi nukkeille". Monet asiat tässä eivät kuitenkaan ole niin vaikeita ymmärtää, kuin miltä ne ensi silmäyksellä näyttävät.

TCP/IP

TCP/IP-pino on verkkomalli tiedonsiirtoon verkossa. Se määrittää laitteiden vuorovaikutuksen järjestyksen. Tiedot saapuvat tietolinkkikerrokseen, ja kukin yllä oleva kerros käsittelee niitä vuorotellen. Pino on esitetty abstraktiona, joka selittää tietojen käsittelyn ja vastaanottamisen periaatteet.

TCP/IP-verkkoprotokollapinossa on 4 tasoa:

  1. Kanava (linkki).
  2. Verkko (Internet).
  3. Kuljetus.
  4. Sovellus.

Sovelluskerros

Sovelluskerros tarjoaa mahdollisuuden olla vuorovaikutuksessa sovelluksen ja muiden protokollapinon kerrosten välillä, analysoida ja muuntaa saapuvan tiedon ohjelmistolle sopivaan muotoon. On lähinnä käyttäjää ja on vuorovaikutuksessa hänen kanssaan suoraan.

  • HTTP;
  • SMTP;

Jokainen protokolla määrittelee oman järjestyksensä ja periaatteensa tietojen kanssa työskentelylle.

HTTP (HyperText Transfer Protocol) on suunniteltu tiedonsiirtoon. Se lähettää esimerkiksi HTML-muotoisia asiakirjoja, jotka toimivat verkkosivun perustana. Yksinkertaistetusti työkaavio esitetään muodossa "asiakas - palvelin". Asiakas lähettää pyynnön, palvelin hyväksyy sen, käsittelee sen oikein ja palauttaa lopputuloksen.

Toimii standardina tiedostojen siirtämisessä verkon kautta. Asiakas lähettää pyynnön tietystä tiedostosta, palvelin etsii tämän tiedoston tietokannastaan ​​ja, jos se löytyy onnistuneesti, lähettää sen vastauksena.

Käytetään sähköpostin lähettämiseen. SMTP-toiminto sisältää kolme peräkkäistä vaihetta:

  1. Lähettäjän osoitteen määrittäminen. Tämä on välttämätöntä kirjeiden palauttamiseksi.
  2. Vastaanottajan määritelmä. Tämä vaihe voidaan toistaa useita kertoja, kun määritetään useita vastaanottajia.
  3. Viestin sisällön määrittäminen ja lähettäminen. Palvelutietona välitetään tiedot viestin tyypistä. Jos palvelin vahvistaa olevansa valmis hyväksymään paketin, itse tapahtuma on valmis.

Otsikko

Otsikko sisältää palvelutiedot. On tärkeää ymmärtää, että ne on tarkoitettu vain tietylle tasolle. Tämä tarkoittaa, että heti kun paketti on lähetetty vastaanottajalle, se käsitellään siellä saman mallin mukaan, mutta käänteisessä järjestyksessä. Upotettu otsikko sisältää erityisiä tietoja, joita voidaan käsitellä vain tietyllä tavalla.

Esimerkiksi kuljetuskerrokseen sisäkkäisen otsikon voi käsitellä vain toisella puolella oleva kuljetuskerros. Muut yksinkertaisesti jättävät sen huomiotta.

Kuljetuskerros

Kuljetuskerroksessa vastaanotettu tieto käsitellään yhtenä yksikkönä sisällöstä riippumatta. Vastaanotetut viestit jaetaan osiin, niihin lisätään otsikko ja koko asia lähetetään alavirtaan.

Tiedonsiirtoprotokollat:

Yleisin protokolla. Se vastaa taatusta tiedonsiirrosta. Paketteja lähetettäessä ohjataan niiden tarkistussummaa eli tapahtumaprosessia. Tämä tarkoittaa, että tiedot saapuvat "turvallisesti" olosuhteista riippumatta.

UDP (User Datagram Protocol) on toiseksi suosituin protokolla. Se vastaa myös tiedonsiirrosta. Sen erottuva piirre on sen yksinkertaisuus. Paketit lähetetään yksinkertaisesti ilman erityistä yhteyttä.

TCP vai UDP?

Jokaisella näistä protokollista on oma soveltamisalansa. Se määräytyy loogisesti teoksen ominaisuuksien mukaan.

UDP:n tärkein etu on sen lähetysnopeus. TCP on monimutkainen protokolla, jossa on monia tarkistuksia, kun taas UDP näyttää olevan yksinkertaisempi ja siksi nopeampi.

Huono puoli on yksinkertaisuudessa. Tarkistusten puutteen vuoksi tietojen eheyttä ei taata. Siten tiedot yksinkertaisesti lähetetään, ja kaikki tarkistukset ja vastaavat käsittelyt jäävät sovellukseen.

UDP:tä käytetään esimerkiksi videoiden katseluun. Videotiedostossa pienen segmenttimäärän menettäminen ei ole kriittinen tekijä, kun taas latausnopeus on tärkein tekijä.

Jos kuitenkin joudut lähettämään salasanoja tai pankkikorttitietoja, TCP:n käyttötarve on ilmeinen. Pienimmänkin tiedon menettämisellä voi olla katastrofaalisia seurauksia. Nopeus ei tässä tapauksessa ole yhtä tärkeää kuin turvallisuus.

Verkkokerros

Verkkokerros muodostaa paketteja vastaanotetuista tiedoista ja lisää otsikon. Tietojen tärkein osa on lähettäjien ja vastaanottajien IP- ja MAC-osoitteet.

IP-osoite (Internet Protocol address) - laitteen looginen osoite. Sisältää tietoja laitteen sijainnista verkossa. Esimerkkimerkintä: .

MAC-osoite (Media Access Control address) - laitteen fyysinen osoite. Käytetään tunnistamiseen. Osoitettu verkkolaitteille valmistusvaiheessa. Esitetään kuuden tavun numerona. Esimerkiksi: .

Verkkokerros vastaa:

  • Toimitusreittien määrittäminen.
  • Pakettien siirto verkkojen välillä.
  • Yksilöllisten osoitteiden antaminen.

Reitittimet ovat verkkokerroksen laitteita. Ne tasoittavat tietä tietokoneen ja palvelimen välillä vastaanotettujen tietojen perusteella.

Suosituin protokolla tällä tasolla on IP.

IP (Internet Protocol) on Internet-protokolla, joka on suunniteltu osoitteita varten verkossa. Käytetään reittien rakentamiseen, joita pitkin paketteja vaihdetaan. Sillä ei ole mitään keinoa eheyden tarkistamiseen ja vahvistamiseen. Toimitustakuiden antamiseen käytetään TCP:tä, joka käyttää IP:tä siirtoprotokollana. Tämän tapahtuman periaatteiden ymmärtäminen selittää suuren osan TCP/IP-protokollapinon toiminnan perusteista.

IP-osoitteiden tyypit

Verkoissa käytetään kahdenlaisia ​​IP-osoitteita:

  1. Julkinen.
  2. Yksityinen.

Internetissä käytetään julkista (julkista). Pääsääntö on ehdoton ainutlaatuisuus. Esimerkki niiden käytöstä ovat reitittimet, joilla jokaisella on oma IP-osoite Internetin kanssa vuorovaikutusta varten. Tätä osoitetta kutsutaan julkiseksi.

Yksityisiä (yksityisiä) ei käytetä Internetissä. Globaalissa verkossa tällaiset osoitteet eivät ole ainutlaatuisia. Esimerkki on paikallinen verkko. Jokaiselle laitteelle on määritetty yksilöllinen IP-osoite tietyssä verkossa.

Vuorovaikutus Internetin kanssa tapahtuu reitittimen kautta, jolla, kuten edellä mainittiin, on oma julkinen IP-osoite. Siten kaikki reitittimeen kytketyt tietokoneet näkyvät Internetissä yhden julkisen IP-osoitteen nimellä.

IPv4

Internet-protokollan yleisin versio. Aikaisemmin IPv6. Tallennusmuoto on neljä kahdeksan bitistä numeroa, jotka on erotettu pisteillä. Aliverkon peite osoitetaan murto-osalla. Osoitteen pituus on 32 bittiä. Suurimmassa osassa tapauksia, kun puhumme IP-osoitteesta, tarkoitamme IPv4:ää.

Tallennusmuoto: .

IPv6

Tämä versio on tarkoitettu ratkaisemaan edellisen version ongelmia. Osoitteen pituus on 128 bittiä.

Suurin ongelma, jonka IPv6 ratkaisee, on IPv4-osoitteiden loppuminen. Edellytykset alkoivat ilmaantua jo 80-luvun alussa. Huolimatta siitä, että tämä ongelma eteni akuuttiin jo vuosina 2007-2009, IPv6:n käyttöönotto etenee hyvin hitaasti.

IPv6:n tärkein etu on nopeampi Internet-yhteys. Tämä johtuu siitä, että tämä protokollan versio ei vaadi osoitteen kääntämistä. Yksinkertainen reititys suoritetaan. Tämä on halvempaa ja siksi pääsy Internet-resursseihin on nopeampi kuin IPv4:ssä.

Esimerkkimerkintä: .

IPv6-osoitteita on kolmenlaisia:

  1. Unicast.
  2. Anycast.
  3. Multicast.

Unicast on eräänlainen IPv6-unicast. Lähetettynä paketti saavuttaa vain vastaavassa osoitteessa sijaitsevan rajapinnan.

Anycast viittaa IPv6-monilähetysosoitteisiin. Lähetetty paketti menee lähimpään verkkoliitäntään. Vain reitittimien käytössä.

Multicast on monilähetys. Tämä tarkoittaa, että lähetetty paketti saavuttaa kaikki rajapinnat, jotka ovat ryhmälähetysryhmässä. Toisin kuin lähetys, joka on "lähetys kaikille", monilähetys lähettää vain tietylle ryhmälle.

Aliverkon peite

Aliverkon peite määrittää aliverkon ja isäntänumeron IP-osoitteesta.

Esimerkiksi IP-osoitteella on maski. Tässä tapauksessa tallennusmuoto näyttää tältä. Numero "24" on maskin bittien lukumäärä. Kahdeksan bittiä vastaa yhtä oktettia, jota voidaan myös kutsua tavuksi.

Tarkemmin sanottuna aliverkon peite voidaan esittää binäärilukujärjestelmässä seuraavasti: . Siinä on neljä oktettia ja merkintä koostuu "1" ja "0". Jos lasketaan yhteen yksiköiden määrä, saadaan yhteensä "24". Onneksi yhdellä laskeminen ei ole välttämätöntä, koska yhdessä okteissa on 8 arvoa. Näemme, että kolme niistä on täynnä ykkösiä, laske ne yhteen ja saa "24".

Jos puhumme nimenomaan aliverkon peiteestä, niin binääriesityksessä siinä on joko ykkösiä tai nollia yhdessä okteissa. Tässä tapauksessa järjestys on sellainen, että ensin tulevat tavut ykkösillä ja vasta sitten nollia.

Katsotaanpa pientä esimerkkiä. Siellä on IP-osoite ja aliverkon peite. Laskemme ja kirjoitamme: . Nyt yhdistämme maskin IP-osoitteeseen. Ne maskioktetit, joissa kaikki arvot ovat yhtä (255), jättävät vastaavat oktettit IP-osoitteeseen ennallaan. Jos arvo on nollia (0), IP-osoitteen okteteista tulee myös nollia. Siten aliverkon osoitteen arvossa saamme .

Aliverkko ja isäntä

Aliverkko on vastuussa loogisesta erottamisesta. Pohjimmiltaan nämä ovat laitteita, jotka käyttävät samaa paikallisverkkoa. Määräytyy IP-osoitteiden alueen perusteella.

Isäntä on verkkoliitännän (verkkokortin) osoite. Määritetty IP-osoitteesta maskin avulla. Esimerkiksi: . Koska kolme ensimmäistä oktettia ovat aliverkko, tämä jättää . Tämä on isäntänumero.

Isäntäosoitteiden alue on 0 - 255. Isäntä numerolla "0" on itse asiassa itse aliverkon osoite. Ja isäntänumero "255" on lähetystoiminnan harjoittaja.

Osoitus

TCP/IP-protokollapinossa käytetään kolmenlaisia ​​osoitteita:

  1. Paikallinen.
  2. Verkko.
  3. Domain-nimet.

MAC-osoitteita kutsutaan paikallisiksi. Niitä käytetään osoitteisiin paikallisissa verkkotekniikoissa, kuten Ethernet. TCP/IP:n yhteydessä sana "paikallinen" tarkoittaa, että ne toimivat vain aliverkossa.

TCP/IP-protokollapinon verkko-osoite on IP-osoite. Kun lähetät tiedostoa, vastaanottajan osoite luetaan sen otsikosta. Sen avulla reititin oppii isäntänumeron ja aliverkon ja luo näiden tietojen perusteella reitin päätesolmuun.

Verkkotunnukset ovat ihmisen luettavia osoitteita Internetin verkkosivustoille. Internetin verkkopalvelimiin pääsee julkisen IP-osoitteen kautta. Tietokoneet käsittelevät sen onnistuneesti, mutta se näyttää liian hankalalta ihmisille. Tällaisten komplikaatioiden välttämiseksi käytetään verkkotunnuksia, jotka koostuvat alueista, joita kutsutaan "domainiksi". Ne on järjestetty tiukkaan hierarkiaan ylätasolta alas.

Ylätason verkkotunnus edustaa tiettyä tietoa. Yleisiä (.org, .net) eivät rajoita mitkään tiukat rajat. Päinvastainen tilanne on paikallisilla (.us, .ru). Ne ovat yleensä paikallisia.

Matalan tason verkkotunnukset ovat kaikkea muuta. Se voi olla minkä kokoinen ja sisältää minkä tahansa määrän arvoja.

Esimerkiksi "www.test.quiz.sg" on oikea verkkotunnuksen nimi, jossa "sg" on paikallinen ensimmäisen (ylimmän) tason verkkotunnus, "quiz.sg" on toisen tason verkkotunnus, "test.quiz.sg" on kolmannen tason verkkotunnus . Verkkotunnuksia voidaan kutsua myös DNS-nimiksi.

DNS (Domain Name System) muodostaa yhdistämisen verkkotunnusten ja julkisen IP-osoitteen välille. Kun kirjoitat verkkotunnuksen selaimeesi, DNS tunnistaa vastaavan IP-osoitteen ja raportoi sen laitteelle. Laite käsittelee tämän ja palauttaa sen verkkosivuna.

Tietolinkkikerros

Linkkikerroksessa määritetään laitteen ja fyysisen siirtovälineen välinen suhde ja lisätään otsikko. Vastaa tietojen koodaamisesta ja kehysten valmistelusta lähetettäväksi fyysisen välineen kautta. Verkkokytkimet toimivat tällä tasolla.

Yleisimmät protokollat:

  1. Ethernet.
  2. WLAN.

Ethernet on yleisin langallinen LAN-tekniikka.

WLAN on langattomiin tekniikoihin perustuva paikallinen verkko. Laitteet toimivat ilman fyysisiä kaapeliyhteyksiä. Esimerkki yleisimmästä menetelmästä on Wi-Fi.

TCP/IP:n määrittäminen käyttämään staattista IPv4-osoitetta

Staattinen IPv4-osoite määritetään suoraan laitteen asetuksista tai automaattisesti verkkoon kytkeytyessä ja on pysyvä.

Jos haluat määrittää TCP/IP-protokollapinon käyttämään pysyvää IPv4-osoitetta, kirjoita ipconfig/all-komento konsoliin ja etsi seuraavat tiedot.

TCP/IP:n määrittäminen käyttämään dynaamista IPv4-osoitetta

Dynaamista IPv4-osoitetta käytetään jonkin aikaa, vuokrataan ja sitten muutetaan. Määritetään laitteelle automaattisesti, kun se yhdistetään verkkoon.

Jos haluat määrittää TCP/IP-protokollapinon käyttämään ei-pysyvää IP-osoitetta, sinun on siirryttävä halutun yhteyden ominaisuuksiin, avattava IPv4-ominaisuudet ja valittava ruudut ohjeiden mukaisesti.

Tiedonsiirtomenetelmät

Tiedot välitetään fyysisen välineen kautta kolmella tavalla:

  • Yksinkertainen.
  • Puoliduplex.
  • Full Duplex.

Simplex on yksisuuntaista viestintää. Lähetyksen suorittaa vain yksi laite, kun taas toinen vain vastaanottaa signaalin. Voimme sanoa, että tietoa välitetään vain yhteen suuntaan.

Esimerkkejä simplex-viestinnästä:

  • Televisiolähetykset.
  • Signaali GPS-satelliiteista.

Half-duplex on kaksisuuntaista viestintää. Kuitenkin vain yksi solmu voi lähettää signaalin kerrallaan. Tämän tyyppisessä viestinnässä kaksi laitetta ei voi käyttää samaa kanavaa samanaikaisesti. Täysi kaksisuuntainen viestintä ei ehkä ole fyysisesti mahdollista tai voi johtaa törmäyksiin. Sanotaan, että ne ovat ristiriidassa lähetysvälineestä. Tätä tilaa käytetään käytettäessä koaksiaalikaapelia.

Esimerkki half-duplex-viestinnästä on viestintä radiopuhelimen kautta yhdellä taajuudella.

Full Duplex - täysi kaksisuuntainen viestintä. Laitteet voivat lähettää signaalin ja vastaanottaa samanaikaisesti. Ne eivät ole ristiriidassa lähetysvälineen suhteen. Tätä tilaa käytetään käytettäessä Fast Ethernet -tekniikkaa ja kierrettyä pariyhteyttä.

Esimerkki on puhelinviestintä matkaviestinverkon kautta.

TCP/IP vs OSI

OSI-malli määrittelee tiedonsiirron periaatteet. TCP/IP-protokollapinon kerrokset vastaavat suoraan tätä mallia. Toisin kuin nelikerroksisessa TCP/IP:ssä, siinä on 7 kerrosta:

  1. Fyysinen.
  2. Kanava (tietolinkki).
  3. Verkko.
  4. Kuljetus.
  5. Istunto.
  6. Esittely.
  7. Sovellus.

Tähän malliin ei tässä vaiheessa tarvitse syventyä, mutta ainakin pinnallinen ymmärrys on tarpeen.

TCP/IP-mallin sovelluskerros vastaa kolmea ylintä OSI-kerrosta. Ne kaikki toimivat sovellusten kanssa, joten näet selvästi tämän yhdistelmän logiikan. Tämä TCP/IP-protokollapinon yleinen rakenne tekee abstraktiosta helpompi ymmärtää.

Kuljetuskerros pysyy ennallaan. Suorittaa samoja toimintoja.

Verkkokerros on myös ennallaan. Suorittaa täsmälleen samat tehtävät.

TCP/IP:n datalinkkikerros vastaa kahta viimeistä OSI-kerrosta. Datalinkkikerros perustaa protokollat ​​datan lähettämiseksi fyysisen välineen kautta.

Fyysinen edustaa todellista fyysistä yhteyttä - sähköisiä signaaleja, liittimiä jne. TCP/IP-protokollapinossa nämä kaksi kerrosta päätettiin yhdistää yhdeksi, koska ne molemmat käsittelevät fyysistä tietovälinettä.