tcp ip model with different layers
En komplet guide til lag af TCP / IP-model:
Vi lærte alt om Firewall-sikkerhed i vores tidligere tutorial. Her i denne vejledning lærer vi om TCP / IP-model.
TCP / IP-modellen refererer til transmissionsstyringsprotokol og internetprotokol.
Den aktuelle internetmodel bruger denne netværksmodel til kommunikationsformål. Læs gennem Træningsvejledninger om netværk for klar forståelse af konceptet.
Disse protokoller er simpelthen en kombination af de regler, der regulerer hver kommunikation via netværket. Disse bestemmer igen, hvilken vej der skal følges for kommunikation mellem kilden og destinationen eller internettet.
TCP / IP-modellen består af fire lag, der afslutter den samlede kommunikationsproces. I denne vejledning tager vi et dybtgående kig på funktionerne i hvert lag.
Som softwaretester er det nødvendigt at have empati med TCP / IP-modellen, da softwareapplikationerne fungerer på det øverste lag, dvs. applikationslaget til denne model.
Hvad du vil lære:
Netværksarkitektur
Firelagsarkitekturen er som følger:
Protokoller og netværk, der anvendes i denne netværksmodel, er vist i nedenstående figur:
Lad os sammenfatte protokollerne og de vigtigste anvendelser af hvert lag i TCP / IP-modellen ved hjælp af nedenstående diagram.
Funktioner for hvert lag i TCP / IP-model
Nedenfor vises de forskellige funktioner i hvert lag i TCP / IP-modellen.
Netværksadgangslag
Netværksadgangslagets funktioner er angivet nedenfor:
- Dette er det nederste lag af TCP / IP-modellen, og det inkluderer alle funktionerne i det fysiske lag og datalinklaget i OSI-referencemodellen.
- Det karakteriserer således protokoller, hardware og medier, der skal bruges til kommunikation.
- Datapakker fra internetlaget sendes til dette lag til afsendelse til destinationen via et fysisk medie.
- Hovedopgaven for dette lag er at kombinere databytes i rammer og tilvejebringe en eller anden mekanisme til transmission af IP-dataramme over det fysiske medium.
- Punkt til punkt (PPP) er den protokol, der bruges til at markere et punkt til punkt-link over de faste kredsløb. Det er også implementeret for at give forbindelse mellem slutbrugeren og internetudbydere via modemer. Det understøtter også tilvejebringelse af IP-adresser via PPP-links.
- De fleste af slutbrugerne foretrækker et Ethernet-link, der kun fungerer på Ethernet-datalinkprotokol. Således oprettes PPP over Ethernet, som tillader, at de indkapslede datarammer sendes inde i Ethernet-rammer.
- PPPoE bygger oprindeligt en tunnel mellem slutbrugerens netværksenheder som router og ISP-router. Derefter sender routeren PPP-rammer over den tunnel, da tunnelen fungerer som en punkt-til-punkt-forbindelse mellem routerne. Nu overføres data også over WAN-netværk på grund af denne teknologi.
- PPP bruger også godkendelsesprocessen til kontrol af ansvarlighed for brug af data med internetudbydere. Metoderne inkluderer protokol til godkendelse af adgangskode (PAP) og godkendelsesprotokol for kanalhåndtryk (CHAP).
Internet-lag
- Det andet lag fra bunden er internetlaget.
- Når dataene er segmenteret af TCP eller UDP ved at tilføje de tilsvarende overskrifter i datapakken, vil de sende dem ned til det nederste lag for yderligere kommunikation.
- Destinationsværten, hvortil datapakken er bestemt, kan opholde sig i et andet netværk, hvis sti kan nås ved at gå gennem forskellige routere. Det er internetlagets pligt at tildele de logiske adresser og dirigere datapakkerne effektivt til destinationsnetværket.
- Internet-lag (IP) er den mest populære protokol, der bruges til at udføre denne opgave.
Internetprotokol
Formålet med denne protokol er at dirigere datapakkerne til destinationen ifølge oplysningerne i pakkeoverskriften ved at følge et sæt protokoller.
Ved at tilføje et header, der har IP-adressen til kilden og destinationen, konverteres det segment, der modtages fra TCP eller UDP, til PDU kendt som en pakke. Når pakken ankommer til routeren, ser den på destinationsadressen i overskriften og videresender derefter pakken i overensstemmelse hermed til den næste router for at nå destinationen.
Lad os forstå dette med et eksempel:
I nedenstående figur, når vært A ønsker at kommunikere med vært B, vil den ikke bruge nogen routingsprotokol, da begge er i samme netværksområde med IP-adresser i samme sæt.
Men hvis vært A vil sende en pakke til vært C, opdager den ved hjælp af protokollen, at destinationsværten er fra et andet netværk. Således vil ovenstående format se op i rutetabellen for at finde ud af den næste hop-adresse til at nå ud til destinationen.
I dette tilfælde vil vært A nå værten C via router A, B og C. Da router C er direkte forbundet til et destinationsnetværk via en switch, leveres pakken til vært C.
Routeren får alle routingsrelaterede oplysninger fra IP-headerfelterne. Netværkslaget af TCP / IP (datalinklag) er ansvarlig for levering til slut til slut af datapakkerne.
Pakkeflow i internetprotokol
IPV4 header
- Version: IPV4 har version nummer 4.
- Skruelængde: Det viser størrelsen på overskriften.
- DS-felt: DS-felt står for differentierede tjenester og er implementeret til konstruktion af pakker.
- Total længde: Det angiver størrelsen på overskriften plus datapakkens størrelse.
- Identifikation: Dette felt bruges til fragmentering af datapakker og til allokering af hvert felt og hjælper derved med at konstruere den originale datapakke.
- Flag: Bruges til at betegne fragmenteringsproceduren.
- Fragment offset: Det angiver fragmentnummeret og kildeværten, der bruger dem til at omarrangere de fragmenterede data i den rigtige rækkefølge.
- Tid til at rejse: Dette indstilles i kildeværtsenden.
- Protokol: Det angiver den protokol, som den bruger til transmission af data. TCP har protokolnummer som 6, og UDP har protokolnummer som 17.
- Header Checksum: Dette felt bruges til detektion af fejl.
- Kilde IP-adresse: Det gemmer IP-adressen på kildeslutværten.
- Destinationens IP-adresse: Det gemmer IP-adressen til destinationsværten.
Vi vil diskutere dette detaljeret i vores kommende tutorials.
Transportlag
- Dette er det tredje lag fra bunden, som er ansvarlig for den samlede overførsel af data og er nyttigt ved etablering af en ende til slut-logisk forbindelse mellem kilde- og destinationsværten og enhederne i et netværk.
- To protokoller bruges til at udføre disse opgaver:
- For det første er Transmission Control Protocol (TCP), som er en forbindelsesbaseret og pålidelig protokol.
- For det andet er User datagram-protokollen (UDP), som er en forbindelsesfri protokol.
- Før vi udforsker disse to protokoller dybtgående, vil vi diskutere begrebet PORT NUMBER, der bruges af begge disse protokoller.
Portnummer:
I et netværk kan en værtsenhed muligvis sende eller modtage trafik fra flere kilder på samme tid.
I en sådan situation genkender systemet ikke, hvilke af applikationerne dataene tilhører. TCP- og UDP-protokoller løser disse problemer ved at sætte et portnummer i deres overskrifter. De velkendte applikationslagsprotokoller er allokeret med portnummeret i området 1 til 1024.
Ved kildeafslutningen tildeles hver TCP- eller UDP-session med et tilfældigt portnummer. IP-adressen, portnummeret og typen af protokol, der bruges i kombination, reformerer en sokkel i både kilde- og destinationsenden. Da hver sokkel er eksklusiv, kan flere værter sende eller modtage trafik med samme tidsinterval.
Nedenstående tabel viser det portnummer, der er tildelt flere applikationslagsprotokoller, der svarer til transportlagsprotokollen.
Applikationsprotokol | Transportprotokol | Portnummer |
---|---|---|
DNS | TCP, UDP | 53 |
HTTP | TCP | 80 |
HTTPS | TCP | 443 |
FTP (kontrol) | TCP | enogtyve |
FTP (data) | TCP | tyve |
SSH | TCP | 22 |
Telnet | TCP | 2. 3 |
SMTP | TCP | 25 |
TFTP | UDP | 69 |
Flere sessioner ved hjælp af portnummer
bedste steder at se anime kaldet
TCP
- Når applikationslaget har behov for at cirkulere strømmen af enorm trafik eller data, sender det det til transportlaget, hvor TCP udfører hele end-to-end-kommunikationen mellem netværk.
- TCP oprettede oprindeligt en trevejshåndtryksproces mellem kilden og destinationen, hvorefter den opdeler dataene i små stykker, der kaldes segmenter, og inkluderer en overskrift i hvert segment og videresender dem derefter til internetlaget.
Nedenstående figur viser TCP-headerets format.
- Trevejs håndtryk: Det er den proces, TCP anvender for at etablere en forbindelse mellem kilden og destinationsværten i netværket. Det bruges til at udføre pålidelig datatransmission. Det implementerer SYN- og ACK-flag af kodebits i TCP-headeren for at udføre opgaven. Det giver pålidelig kommunikation ved at udføre positiv bekræftelse med re-transmission og er også kendt som PAR. Systemet, der bruger PAR, transmitterer datasegmentet igen, indtil det modtager ACK. Hver gang modtageren kasserer dataene, skal afsenderen videresende dataene, indtil den modtager den positive ACK fra modtageren.
Der er 3 trin med trevejshåndtryk, som er som følger:
- Trin 1: Kildeværten A ønsker at etablere en forbindelse med destinationsværten B, den transmitterer et segment med SYN og sekvensnummer, hvilket angiver, at værten A ønsker at starte en kommunikationssession med vært B og med hvilket sekvensnummer det er defineret i det segment.
- Trin 2: Værten B reagerer på anmodningen fra vært A med SYN og ACK indstillet i signalbiten. ACK angiver svaret fra det modtagne segment og SYN angiver sekvensnummeret.
- Trin 3: Værten A anerkender svaret fra værten B og etablerer begge en sikker forbindelse mellem dem og begynder derefter datatransmission over det.
Som beskrevet i nedenstående figur sender kildeværten først i trevejs-håndtrykprocessen et TCP-header til destinationsværten ved at indstille SYN-flag. Som svar får det SYN- og bekræftelsesflaggsættet tilbage. Destinationsværten praktiserer det modtagne sekvensnummer plus 1 som kvitteringsnummer.
TCP IP understøtter klientservermodellen i kommunikationssystemet.
Trevejs håndtryksproces
- Datasegmentering :
- Dette er en af funktionerne i TCP-protokollen. Applikationslaget sender et stort antal data til transmission til destinationen til transportlaget. Men transportlaget begrænser størrelsen på data, der skal sendes på én gang. Dette gøres ved at opdele dataene i små segmenter.
- For at genkende sekvensen af datasegmenter anvendes et sekvensnummer i TCP-headeren, og det beskriver bytenummeret for hele datasegmentet.
- Flow kontrol:
- Kildeværten sender dataene i en klynge af segmenter. TCP-headeren med en vinduesbit bruges til at finde ud af antallet af segmenter, der kan sendes på en gangs gang. Det bruges til at undgå den ubetydelige trafik i slutningen af destinationen.
- Når sessionen startes, er vinduesstørrelsen lille, men når trafikken øges med tiden, kan størrelsen på vinduet blive enorm. Destinationsværten kan justere vinduet i overensstemmelse med at kontrollere flowet. Vinduet kaldes således et glidende vindue.
- Kilden kan kun transmittere det antal segmenter, der er tilladt i vinduet. For at sende flere segmenter venter det først på en bekræftelse fra den modtagende ende, når det modtager ACK, og senere kan det forbedre vinduets størrelse efter behov.
- I nedenstående figur forbedrer destinationsværten størrelsen fra 500 til 600 og derefter til 800 efter at have sendt ACK tilbage til kildeværten.
- Pålidelig levering og gendannelse af fejl :
- Når det sidste segment af det besluttede vindue er modtaget af destinationen, skal det sende en ACK til kildeslutningen. ACK-flag er indstillet i TCP-overskriften, og ACK-nummeret angives som det formodede sekvensnummer for den efterfølgende byte. Hvis destinationen ikke modtager segmenterne i den rette rækkefølge, sender den ikke ACK tilbage til kilden.
- Dette forklarer kilden til, at få af segmenterne er forkert placeret under transmission, og det vil transmittere alle segmenterne igen.
- I nedenstående figur er det illustreret, at når kilden ikke har modtaget ACK for segmentet med SEQ-nummer 200, sender det igen dataene, og efter modtagelse af ACK sender det den næste sekvens af datasegmentet i i overensstemmelse med vinduesstørrelsen.
- Bestilt levering :
- TCP sikrer sekventiel levering af data til destinationen. Det leverer dataene i den rækkefølge, det modtager det fra applikationslaget til levering til destinationsværten. Således til opretholdelse af bestilt levering bruger den sekvensnummer under transmission af datasegmenter.
- Afslutning af forbindelse :
- Når datatransmissionen mellem kilde og destination er afsluttet, afslutter TCP sessionen ved at sende FIN- og ACK-flag og bruger et firevejs håndtryk til at lukke det.
TCP-skydevindue og pålidelig levering
User Datagram Protocol (UDP):
Det er den upålidelige og forbindelsesløse protokol til datatransmission. I modsætning til TCP genererer den i denne protokol ikke noget ACK-flag, hvorfor kildeværten ikke venter på et svar fra destinationsenden, og den sender dataene uden nogen forsinkelse og venter på ACK.
I et realtidsscenarie bruges UDP, når man vælger at slippe datapakkerne frem for at vente på pakker til re-transmission. Således bruges det mest i spil, se video online, chatte osv. Hvor anerkendelse af data ikke er et problem. I disse scenarier finder fejlkontrol og -korrektion sted i applikationslaget.
UDP header:
- Kildehavn: Det klassificerer kildeendepakkeoplysninger, der er 16 bit i størrelse.
- Destinationshavn : Det er også 16 bit i størrelse og bruges til at klassificere typen af datatjeneste ved destinationsnoden.
- Længde : Det angiver den samlede størrelse af UDP-datagrammet. Den maksimale størrelse på længdefeltet kan være den samlede størrelse af selve UDP-headeren.
- Kontrolsum : Det gemmer kontrolsummen, der evalueres af kildeslutningen før transmission. Hvis den ikke har nogen værdi, er alle dens bits sat til nul.
UDP-applikationer :
- Det indeholder datagram, og det er derfor passende til IP-tunneling og netværksfilsystem.
- Enkel i brug, derfor bruges den i DHCP og trivial filoverførselsprotokol.
- At være statsløs gør det effektivt til streaming af medieapplikationer som IPTV.
- Også velegnet til voice over IP og real-time streaming programmer.
- Det bakker multicast, så det er passende for udsendelsestjenester såsom Bluetooth og routinginformationsprotokol.
Applikationslag
(i) Dette er det øverste lag af TCP / IP-modellen.
(ii) Det udfører alle opgaverne i et sessionslag, præsentationslag og applikationslag i TCP / IP-modellen.
(iii) Den kombinerer funktionerne til grænseflade med forskellige applikationer, datakodning, dataoversættelse og adgangsadgang for brugerne til at kommunikere med forskellige netværkssystemer.
De mest almindelige applikationslagsprotokoller er defineret nedenfor:
# 1) TELNET: Det står for terminalemuleringsprotokol. Det plejer generelt at få adgang til fjernapplikationer. Telnet-serveren, der fungerer som værten, initierer en telnet-serverapplikation for at etablere en forbindelse med den eksterne slutvært kendt som telnet-klienten.
Når forbindelsen er oprettet, præsenteres den for telnet-serverens operativsystem. Personerne på serverenden bruger dens tastatur og mus til at betjene og få adgang til den fjerne ende vært via TELNET.
# 2) HTTP: Det står for hypertekstoverførselsprotokol. Det er basen på World Wide Web (WWW). Denne protokol bruges til at udveksle hyperteksten mellem forskellige systemer. Det er en type anmodning-svar-protokol.
For eksempel, Webbrowser som internet explorer eller Mozilla fungerer som en webklient, og applikationens streaming på pc'en, der er vært for hjemmesiden, fungerer som en webserver.
Således returnerer serveren, som tilvejebringer ressourcerne som HTML-filer og andre funktioner, som kunden anmoder om, en svarmeddelelse til klienten, der har indholdet af færdiggørelsesstatusdata og anmodede data i meddelelseslinjen.
HTTP-ressourcer genkendes og placeres på netværket af ensartede ressourcelokatorer (URL'er), der implementerer URI-metoder (Uniform resource Identifier) HTTP og https.
# 3) FTP: Det står for filoverførselsprotokol. Det bruges til at dele eller overføre filerne mellem to værter. Værten, der kører FTP-applikationen, opfører sig som FTP-serveren, mens den anden opfører sig som FTP-klienten.
Klientværten, der anmoder om fildeling, kræver godkendelse fra serveren for at få adgang til dataene. Når den er godkendt, kan den få adgang til alle typer filer fra serveren, sende eller modtage filer.
# 4) SMTP: Enkel posttransportprotokol er en øvelse til at sende e-mails. Når vi konfigurerer værten til afsendelse af e-mails, bruger vi SMTP.
# 5) DNS: Hver af værtsenhederne i ethvert netværk har en unik logisk adresse kaldet IP-adressen. Som allerede diskuteret er IP-adresserne en gruppe med så mange tal, og det er ikke let at huske. Når vi skriver en hvilken som helst webadresse i en webbrowser som f.eks. Google.com, beder vi faktisk om en vært, der har en IP-adresse.
Men vi behøver ikke huske IP-adressen på den webside, som vi anmoder om, da DNS (domænenavnserver) kortlægger et navn mod hver logiske IP-adresse og gemmer det.
Når vi skriver i browseren for enhver webside, sender den således DNS-forespørgslen til sin DNS-server for at kortlægge IP-adressen mod navnet. Når den først får adressen, bygges der en HTTP-session med IP-adressen.
# 6) DHCP: Hver af værtsenhederne i ethvert netværk kræver en IP-adresse til kommunikation med de andre enheder i netværket. Den får denne adresse ved manuel konfiguration eller ved hjælp af en dynamisk værtkonfigurationsprotokol (DHCP). Hvis du bruger DHCP, tildeles værten automatisk en IP-adresse.
Antag, at et netværk består af 10.000 værtsenheder. Derefter er det meget vanskeligt at tildele IP-adresse manuelt til hver vært, og det tager også tid at tage, derfor bruger vi DHCP-protokol til at tildele en IP-adresse og anden information til de tilsluttede værtsenheder såsom subnetmaske IP eller gateway IP.
Softwaretestprogrammer fungerer på dette lag af TCP / IP-modellen, da det giver slutbrugerne mulighed for at teste de forskellige tjenester og bruge disse tjenester.
Konklusion
Vi har set de forskellige protokoller, der bruges i hvert lag af TCP / IP-modellen til at udføre de opgaver, der er knyttet til laget, og deres fordele i et kommunikationssystem.
Alle de ovenfor definerede protokoller har deres egen betydning og forskellige roller i test og anvendelse af softwareværktøjerne.
PREV-vejledning | NÆSTE vejledning
Anbefalet læsning
- Alt om Layer 2 og Layer 3 switche i netværkssystem
- En komplet guide til firewall: Sådan oprettes et sikkert netværkssystem
- Alt om routere: Typer routere, routingtabel og IP-routing
- Hvad er WAN (Wide Area Network): Eksempler på live WAN-netværk
- Hvad er HTTP (Hypertext Transfer Protocol) og DHCP-protokoller?
- Vigtige applikationslagsprotokoller: DNS-, FTP-, SMTP- og MIME-protokoller
- IPv4 vs IPv6: Hvad er den nøjagtige forskel
- Hvad er min IP-adresse og placering (Tjek din rigtige IP her)