Tcp IP-gegevensoverdracht. Wat zijn netwerkpoorten? Hoe u huidige verbindingen kunt bekijken


TCP/IP-protocollen basis van het werk globaal netwerk Internet. Om preciezer te zijn: TCP/IP is een lijst of stapel protocollen, en in feite een reeks regels waarmee informatie wordt uitgewisseld (het pakketschakelingsmodel is geïmplementeerd).

In dit artikel zullen we de werkingsprincipes van de TCP/IP-protocolstack analyseren en proberen de principes van hun werking te begrijpen.

Opmerking: Vaak verwijst de afkorting TCP/IP naar het gehele netwerk dat op basis van deze twee protocollen, TCP en IP, werkt.

In het model van een dergelijk netwerk, naast de belangrijkste protocollen TCP (Transportlaag) en IP (Network Layer Protocol) omvat applicatie- en netwerklaagprotocollen (zie foto). Maar laten we direct terugkeren naar de TCP- en IP-protocollen.

Wat zijn TCP/IP-protocollen

TCP - Protocol voor overdrachtscontrole. Transmissiecontroleprotocol. Het dient om een ​​betrouwbare verbinding tussen twee apparaten en een betrouwbare gegevensoverdracht te garanderen en tot stand te brengen. In dit geval bestuurt het TCP-protocol optimale maat verzonden datapakket, uitvoeren nieuw pakket wanneer de verzending mislukt.

IP - internetprotocol. Het Internet Protocol of Adresprotocol vormt de basis van de gehele architectuur voor gegevensoverdracht. Voor de bezorging wordt gebruik gemaakt van het IP-protocol netwerk pakket gegevens op naar het juiste adres. In dit geval wordt de informatie verdeeld in pakketten, die onafhankelijk door het netwerk naar de gewenste bestemming gaan.

TCP/IP-protocolformaten

IP-protocolformaat

Er zijn twee formaten voor IP-protocol-IP-adressen.

IPv4-formaat. Dit is 32-bits binair getal. Een handige vorm van het vastleggen van een IP-adres (IPv4) is het formulier vier groepen decimale getallen(van 0 tot 255), gescheiden door punten. Bijvoorbeeld: 193.178.0.1.

IPv6-formaat. Dit is een binair getal van 128 bits. In de regel worden IPv6-adressen geschreven in de vorm van acht groepen. Elke groep bevat vier hexadecimale cijfers, gescheiden door een dubbele punt. Voorbeeld IPv6-adres 2001:0db8:85a3:08d3:1319:8a2e:0370:7889.

Hoe TCP/IP-protocollen werken

Als het u uitkomt, kunt u het verzenden van datapakketten op het netwerk beschouwen als het verzenden van een brief per post.

Als het lastig is, stel je dan twee computers voor die met elkaar verbonden zijn via een netwerk. Bovendien kan het verbindingsnetwerk elk willekeurig netwerk zijn, zowel lokaal als mondiaal. Er is geen verschil in het principe van gegevensoverdracht. Een computer in een netwerk kan ook als een host of knooppunt worden beschouwd.

IP-protocol

Elke computer in het netwerk heeft zijn eigen unieke adres. Op het mondiale internet heeft een computer dit adres, dat een IP-adres (Internet Protocol Address) wordt genoemd.

Naar analogie met post, IP adres dit is het huisnummer. Maar het huisnummer is niet voldoende om een ​​brief te ontvangen.

Informatie die via het netwerk wordt verzonden, wordt niet door de computer zelf verzonden, maar door toepassingen die erop zijn geïnstalleerd. Dergelijke toepassingen zijn mailserver, webserver, FTP, enz. Om het pakket te identificeren verzonden informatie, is elke applicatie gekoppeld aan een specifieke poort. Bijvoorbeeld: webserver luistert op poort 80, FTP luistert op poort 21, mail SMTP-server luistert op poort 25, POP3-server leest mail brievenbussen op poort 110.

In het adrespakket in het TCP/IP-protocol verschijnt dus een andere regel in de geadresseerden: poort. Analoog met mail - de poort is het appartementnummer van de afzender en de ontvanger.

Voorbeeld:

Bron adres:

IP-adres: 82.146.47.66

Bestemmingsadres:

IP-adres: 195.34.31.236

Het is de moeite waard om te onthouden: IP-adres + poortnummer wordt een "socket" genoemd. In het bovenstaande voorbeeld: vanaf socket 82.146.47.66:2049 wordt een pakket verzonden naar socket 195.34.31.236:53.

TCP-protocol

Het TCP-protocol is het volgende laagprotocol na het IP-protocol. Dit protocol is bedoeld om de overdracht van informatie en de integriteit ervan te controleren.

De verzonden informatie wordt bijvoorbeeld in afzonderlijke pakketten verdeeld. De pakketten worden zelfstandig bij de ontvanger afgeleverd. Tijdens het transmissieproces is een van de pakketten niet verzonden. Het TCP-protocol zorgt voor hertransmissie totdat de ontvanger het pakket ontvangt.

Het TCP-transportprotocol verbergt alle problemen en details van gegevensoverdracht voor protocollen op een hoger niveau (fysiek, kanaal, netwerk-IP).

Lezing 3. TCP/IP-stack. Basisprotocollen TCP/IP

Het TCP/IP-protocol is het basisprotocol voor het transportnetwerk. De term "TCP/IP" verwijst doorgaans naar alles wat met de TCP- en IP-protocollen te maken heeft. Het omvat een hele familie van protocollen, applicatieprogramma's en zelfs het netwerk zelf. De familie omvat UDP-protocollen, ARP, ICMP, TELNET, FTP en vele anderen.

De TCP/IP-protocolarchitectuur is ontworpen voor een geïntegreerd netwerk dat bestaat uit afzonderlijke heterogene pakketsubnetten die met elkaar zijn verbonden door gateways, waarop heterogene machines zijn aangesloten. Elk subnet werkt volgens zijn eigen netwerk specifieke vereisten en heeft zijn eigen aard als communicatiemiddel. Er wordt echter van uitgegaan dat elk subnet een pakket informatie (gegevens met de bijbehorende gegevens) kan ontvangen netwerkkop) en bezorg het aan opgegeven adres op dat specifieke subnet. Het subnet hoeft geen verplichte pakketbezorging te garanderen en beschikt over een betrouwbaar end-to-end-protocol. Op deze manier kunnen twee machines die op hetzelfde subnet zijn aangesloten, pakketten uitwisselen.

De TCP/IP-protocolstack bestaat uit vier lagen (Figuur 3.1).

Figuur 3.1 – TCP/IP-stack

Laag IV komt overeen met de netwerktoegangslaag, die werkt op basis van standaard protocollen fysiek en link laag, zoals Ethernet, Token-ring, SLIP, PPP en anderen. Protocollen op dit niveau zijn verantwoordelijk voor pakketoverdracht netwerkgegevens op hardwareniveau.

Laag III biedt internetwerking bij het verzenden van datapakketten van het ene subnet naar het andere. In dit geval werkt het IP-protocol.

Niveau II is de belangrijkste en werkt op basis van het controleprotocol TCP-transmissie. Dit protocol is noodzakelijk voor de betrouwbare overdracht van berichten tussen gehoste verschillende auto's applicatieprogramma's door de vorming van virtuele verbindingen daartussen.

Niveau I – toegepast. De TCP/IP-stack bestaat al heel lang en omvat ook een groot aantal van protocollen en diensten toepassingsniveau(transmissieprotocol FTP-bestanden, Telnet-protocol, Gopher-protocol voor toegang tot bronnen van de GopherSpace-wereldruimte, het bekendste HTTP-protocol voor toegang tot externe hypertext-databases op het World Wide Web, enz.).

Alle stapelprotocollen kunnen in twee groepen worden verdeeld: protocollen voor gegevensoverdracht, die nuttige gegevens tussen twee partijen overbrengen; serviceprotocollen vereist voor correcte werking netwerken.

Serviceprotocollen maken noodzakelijkerwijs gebruik van een soort gegevensoverdrachtprotocol. Officieel bijvoorbeeld ICMP-protocol maakt gebruik van het IP-protocol. Het internet is het geheel van alles wat met elkaar verbonden is computer netwerken, met behulp van protocollen van de TCP/IP-stack.

Functies van transportlaag. Protocollen TCP, UDP.

Het vierde niveau van het model is ontworpen om gegevens te leveren zonder fouten, verliezen en duplicatie in de volgorde waarin ze zijn verzonden. Het maakt niet uit welke gegevens worden verzonden, waar en waar vandaan, dat wil zeggen, het zorgt zelf voor het transmissiemechanisme. De transportlaag zorgt ervoor de volgende typen Diensten:

– het tot stand brengen van een transportverbinding;

- data overdracht;

– verstoring van de vervoersverbinding.

Functies uitgevoerd transport laag:

– het omzetten van een transportadres naar een netwerkadres;

– het multiplexen van transportverbindingen tot netwerkverbindingen;

– het tot stand brengen en verbreken van transportverbindingen;

– datablokken bestellen op individuele verbindingen;

– detectie van fouten en noodzakelijke controle op de kwaliteit van de dienstverlening;

– herstel van fouten;

– segmentatie, associatie en aaneenschakeling;

– controle van de gegevensstroom over individuele verbindingen;

– toezichthoudende functies;

– verzending van dringende transportgegevensblokken.

Het Transmission Control Protocol (TCP) biedt een betrouwbare, verbindingsgerichte pakketbezorgservice.

TCP-protocol:

– garandeert levering van IP-datagrammen;

– voert segmentatie en assemblage uit van grote blokken gegevens verzonden door programma's;

– zorgt voor levering van datasegmenten in de vereiste volgorde;

– controleert de integriteit van de verzonden gegevens met behulp van controlesom;

– verzendt positieve bevestigingen als de gegevens succesvol zijn ontvangen. Met selectieve bevestigingen kunt u ook negatieve bevestigingen sturen voor gegevens die niet zijn ontvangen;

– Biedt het voorkeurstransport voor programma's die een betrouwbare sessiegebaseerde gegevensoverdracht vereisen, zoals client-serverdatabases en e-mailprogramma's.

TCP is gebaseerd op point-to-point-communicatie tussen twee netwerkknooppunten. TCP ontvangt gegevens van programma's en verwerkt deze als een stroom bytes. De bytes zijn gegroepeerd in segmenten, waaraan TCP de benodigde volgnummers toewijst correcte montage segmenten op het ontvangende knooppunt.

Om twee TCP-knooppunten te laten communiceren, moeten ze eerst een sessie met elkaar tot stand brengen. Een TCP-sessie wordt geïnitialiseerd met behulp van een proces dat drieweg-handshake wordt genoemd, waarbij volgnummers worden gesynchroniseerd en verzonden controle informatie, noodzakelijk om vast te stellen virtuele verbinding tussen knooppunten. Zodra dit handshake-proces is voltooid, begint het doorsturen en bevestigen van pakketten in opeenvolgende volgorde tussen deze knooppunten. Een soortgelijk proces wordt door TCP gebruikt voordat een verbinding wordt beëindigd om ervoor te zorgen dat beide knooppunten klaar zijn met het verzenden en ontvangen van gegevens (Figuur 3.2).


Figuur 3.2 – Koptekstformaat TCP-segment

De bronpoort- en bestemmingspoortvelden beslaan 2 bytes en identificeren het verzendproces en het ontvangerproces. De volgnummer- en bevestigingsnummervelden (4 bytes lang) nummeren elke verzonden of ontvangen byte aan gegevens. Geïmplementeerd als niet-ondertekende gehele getallen die opnieuw worden ingesteld wanneer ze bereiken maximale waarde. Elke kant leidt zijn eigen partij serienummering. Het headerlengteveld is 4 bits lang en vertegenwoordigt de lengte van de TCP-segmentheader, gemeten in woorden van 32 bits. De lengte van de header staat niet vast en kan variëren afhankelijk van de waarden die zijn ingesteld in het parameterveld. Het reserveveld beslaat 6 bits. Het vlaggenveld is 6 bits lang en bevat zes 1-bits vlaggen:

– de URG-vlag (Urgent Pointer) wordt ingesteld op 1 als de pointer naar het urgente gegevensveld wordt gebruikt;

ACK-vlag(Bevestiging) wordt ingesteld op 1 als het veld voor het bevestigingsnummer gegevens bevat. Anders wordt dit veld genegeerd;



– de PSH (Push) vlag betekent dat de ontvangst TCP-stack moet de applicatie onmiddellijk informeren over binnenkomende gegevens en niet wachten tot de buffer vol is;

– de RST-vlag (Reset) wordt gebruikt om een ​​verbinding te annuleren: als gevolg van een applicatiefout, afwijzing van een onjuist segment, poging om een ​​verbinding tot stand te brengen bij afwezigheid van de gevraagde dienst;

– de vlag SYN (Synchroniseren) wordt ingesteld bij het tot stand brengen van een verbinding en synchronisatie serienummer;

– de vlag FIN (Finished) wordt gebruikt om de verbinding te beëindigen. Het geeft aan dat de afzender klaar is met het verzenden van gegevens.

Het venstergrootteveld (2 bytes lang) bevat het aantal bytes dat kan worden verzonden na een byte die al is bevestigd. Het checksumveld (lengte 2 bytes) wordt gebruikt om de betrouwbaarheid te vergroten. Het bevat een controlesom van de header, gegevens en pseudo-header. Bij het uitvoeren van berekeningen wordt het controlesomveld ingesteld gelijk aan nul, en het gegevensveld wordt opgevuld met een null-byte als de lengte een oneven getal is. Het controlesomalgoritme voegt eenvoudigweg alle 16-bits woorden in het twee-complement toe en berekent vervolgens het volledige som-complement.

Het UDP-protocol, dat een datagramprotocol is, implementeert de dienst waar mogelijk, dat wil zeggen dat het de bezorging van de berichten niet garandeert en compenseert daarom op geen enkele manier de onbetrouwbaarheid van het IP-datagramprotocol. De data-eenheid van het UDP-protocol wordt een UDP-pakket of gebruikersdatagram genoemd. Elk datagram bevat een afzonderlijk gebruikersbericht. Dit resulteert in een beperking: de lengte van een UDP-datagram kan niet groter zijn dan de lengte van het IP-protocolgegevensveld, dat op zijn beurt wordt beperkt door de grootte van het onderliggende technologieframe. Als de UDP-buffer vol raakt, worden de applicatiegegevens daarom weggegooid. De UDP-pakketheader, bestaande uit vier velden van 2 bytes, bevat de velden bronpoort, bestemmingspoort, UDP-lengte en controlesom (Figuur 3.3).

De bronpoort- en bestemmingspoortvelden identificeren de verzend- en ontvangstprocessen. Het veld UDP-lengte bevat de lengte van het UDP-pakket in bytes. Het controlesomveld bevat de controlesom van het UDP-pakket, berekend over het gehele UDP-pakket, waaraan de pseudo-header is toegevoegd.

Figuur 3.3 – UDP-pakketheaderformaat

Basisliteratuur: 2

Verder lezen: 7

Controle vragen:

1. Welk protocol in OSI is TCP/IP?

2. Wat is het doel van de TCP/IP-protocolarchitectuur?

3. Welke lagen heeft de TCP/IP-stack?

4. Welke functies voert het TCP Transmission Control Protocol uit?

5. Welke verschillen bestaan ​​er tussen de TCP- en UDP-protocollen?

Kort gezegd is dit een reeks regels die de ‘communicatie’ van computers met elkaar via het netwerk regelen. Er zijn er ongeveer een dozijn, en elk van hen bepaalt de overdrachtsregels aparte soort gegevens. Maar voor het gebruiksgemak zijn ze allemaal gecombineerd in een zogenaamde “stack”, genoemd naar het belangrijkste protocol: het TCP/IP-protocol (Transmission Control Protocol en Internet Protocol). Het woord "stapel" impliceert dat al deze protocollen een soort "stapel protocollen" zijn, waarin het protocol op het hoogste niveau niet kan functioneren zonder het protocol op het lagere niveau.

De TCP/IP-stack bestaat uit 4 lagen:

1. Toepassing - HTTP-, RTP-, FTP-, DNS-protocollen. Het hoogste niveau; verantwoordelijk voor het werk toepassing toepassingen, Bijvoorbeeld postdiensten, gegevens weergeven in de browser, enz.

2. Transport - TCP-, UDP-, SCTP-, DCCP-, RIP-protocollen. Dit niveau protocollen zorgen voor de juiste interactie van computers met elkaar en fungeren als gegevensgeleider tussen verschillende netwerkdeelnemers.

3. Netwerk - IP-protocol. Deze laag zorgt voor de identificatie van computers op het netwerk door ze allemaal een uniek digitaal adres te geven.

4. Kanaal - Ethernet-protocollen,IEEE 802.11 ,Draadloos Ethernet. Meest laag niveau; het interageert met fysieke apparatuur, beschrijft het datatransmissiemedium en zijn kenmerken.

Daarom gebruikt uw computer de protocolstack HTTP - TCP - IP - Ethernet om dit artikel weer te geven.

Hoe informatie via internet wordt verzonden

Elke computer in het netwerk wordt een host genoemd en krijgt, met behulp van het gelijknamige protocol, een uniek IP-adres. Dit adres is geregistreerd in volgende vorm: vier cijfers van 0 tot 255, gescheiden door een punt, bijvoorbeeld 195.19.20.203. Om succesvol via een netwerk te kunnen communiceren, moet het IP-adres ook een poortnummer bevatten. Omdat informatie niet door computers zelf wordt uitgewisseld, maar door programma's, moet elk type programma dat ook doen eigen adres, dat wordt weergegeven in het poortnummer. Poort 21 is bijvoorbeeld verantwoordelijk voor FTP, poort 80 is daarvoor HTTP-werk. Het totale aantal poorten op een computer is beperkt en gelijk aan 65536, genummerd van 0 tot 65535. Poortnummers van 0 tot 1023 zijn gereserveerd servertoepassingen, en de niche van poorten van 1024 tot 65535 wordt ingenomen door clientpoorten, welke programma's gratis kunnen worden gebruikt zoals ze willen. "Clientpoorten" worden dynamisch toegewezen.

Combinatie IP-adressen en poortnummers genaamd " stopcontact". Daarin worden de adres- en poortwaarden gescheiden door een dubbele punt, bijvoorbeeld 195.19.20.203:110

Op de manier dat computer op afstand e-mail ontvangen van IP 195.19.20.203, hoeft u alleen maar de gegevens op poort 110 af te leveren. En aangezien deze poort dag en nacht “luistert” naar het POP3-protocol, dat verantwoordelijk is voor het ontvangen van e-mails, wat betekent dat wat er daarna gebeurt ‘een kwestie van technologie’ is.

Voor het gemak zijn alle gegevens op het netwerk verdeeld in pakketten. Een pakket is een bestand van 1-1,5 MB groot, dat adresgegevens van de afzender en ontvanger, verzonden informatie en servicegegevens bevat. Het opsplitsen van bestanden in pakketten kan de belasting van het netwerk aanzienlijk verminderen, omdat het pad van elk van de afzender naar de ontvanger zal niet noodzakelijkerwijs identiek zijn. Als er op één plek in het netwerk een verkeersopstopping optreedt, kunnen pakketten deze omzeilen via andere communicatiepaden. Deze technologie maakt het mogelijk om het internet zo efficiënt mogelijk te gebruiken: als een transportonderdeel ervan instort, kan de informatieoverdracht doorgaan, maar dan langs andere wegen. Wanneer de pakketten de doelcomputer bereiken, begint deze ze weer samen te voegen tot één enkel bestand met behulp van de service-informatie die ze bevatten. Het hele proces kan worden vergeleken met een soort grote puzzel, die afhankelijk van de grootte wordt gemaakt overgedragen bestand, kunnen werkelijk enorme afmetingen bereiken.

Zoals eerder vermeld, geeft het IP-protocol elke netwerkdeelnemer, inclusief websites, een uniek numeriek adres. Niemand kan echter miljoenen IP-adressen onthouden! Daarom is de domeinnaamservice DNS (Domein) gemaakt Naam Systeem), dat is bedoeld voor het vertalen van numerieke IP-adressen naar alfanumerieke namen die veel gemakkelijker te onthouden zijn. In plaats van elke keer het gevreesde nummer 5.9.205.233 te bellen, kunt u bijvoorbeeld adresbalk browser www.site.

Wat gebeurt er als we het adres van de site die we zoeken in de browser typen? Vanaf onze computer wordt een pakketje verzonden met een verzoek naar de DNS-server op poort 53. Deze poort is gereserveerd DNS-service, die, na verwerking van ons verzoek, het IP-adres retourneert dat overeenkomt met de alfanumerieke naam van de site. Hierna maakt onze computer verbinding met socket 5.9.205.233:80 van computer 5.9.205.233, die het HTTP-protocol host dat verantwoordelijk is voor het weergeven van sites in de browser, en een pakket verzendt met een verzoek om de www.site-pagina te ontvangen. We moeten een verbinding tot stand brengen op poort 80, aangezien deze overeenkomt met de webserver. Als u dat echt wilt, kunt u poort 80 rechtstreeks in de adresbalk van uw browser opgeven - http://www.site:80. De webserver verwerkt het van ons ontvangen verzoek en geeft verschillende pakketten uit met daarin HTML-tekst, die onze browser weergeeft. Als gevolg hiervan zien we de hoofdpagina op het scherm

Interactie tussen computers op internet vindt plaats via netwerkprotocollen, een overeengekomen reeks specifieke regels volgens welke verschillende apparaten datatransmissies wisselen informatie uit. Er zijn protocollen voor foutcontroleformaten en andere soorten protocollen. Wereldwijd internetwerken het meest gebruikt TCP-IP-protocol.

Wat voor soort technologie is dit? De naam TCP-IP komt van twee netwerkprotocollen: TCP en IP. Uiteraard beperkt de constructie van netwerken zich niet tot deze twee protocollen, maar ze zijn fundamenteel voor zover het de organisatie van de datatransmissie betreft. In feite is TCP-IP een reeks protocollen waarmee individuele netwerken kunnen worden samengevoegd

Het TCP-IP-protocol, dat niet alleen kan worden beschreven door de definities van IP en TCP, omvat ook de protocollen UDP, SMTP, ICMP, FTP, telnet en meer. Deze en andere TCP-IP-protocollen bieden de meest complete werking van internet.

Hieronder geven we een gedetailleerde beschrijving van elk protocol dat is opgenomen in algemeen concept TCP-IP.

. Internet Protocol(IP) is verantwoordelijk voor de directe overdracht van informatie op het netwerk. De informatie wordt in delen (dat wil zeggen pakketten) verdeeld en door de afzender naar de ontvanger verzonden. Voor een nauwkeurige adressering moet u het exacte adres of de coördinaten van de ontvanger opgeven. Dergelijke adressen bestaan ​​uit vier bytes, die door punten van elkaar zijn gescheiden. Het adres van elke computer is uniek.

Het gebruik van alleen het IP-protocol is echter mogelijk niet voldoende voor een correcte gegevensoverdracht, aangezien het volume van de meeste verzonden informatie meer dan 1500 tekens bedraagt, wat niet langer in één pakket past, en sommige pakketten verloren kunnen gaan tijdens de verzending of verzonden kunnen worden. de verkeerde volgorde, wat nodig is.

. Transmissiecontroleprotocol(TCP) wordt voor meer gebruikt hoog niveau dan de vorige. Gebaseerd op het vermogen van het IP-protocol om informatie van de ene host naar de andere over te dragen, maakt het TCP-protocol het mogelijk grote hoeveelheden informatie te verzenden. TCP is ook verantwoordelijk voor het verdelen van de verzonden informatie in afzonderlijke delen - pakketten - en goed herstel gegevens van pakketten die na verzending worden ontvangen. Waarin dit protocol verzendt automatisch pakketten die fouten bevatten opnieuw.

Het beheren van de organisatie van gegevensoverdracht in grote volumes kan worden uitgevoerd met behulp van een aantal speciale protocollen functioneel doel. Er zijn met name de volgende typen TCP-protocollen.

1. FTP(Bestand Overdrachtsprotocol) organiseert bestandsoverdracht en wordt gebruikt om informatie over te dragen tussen twee internetknooppunten met behulp van TCP-verbindingen in de vorm van een binair of eenvoudig bestand tekstbestand, als een benoemd gebied in het computergeheugen. In dit geval maakt het niet uit waar deze knooppunten zich bevinden en hoe ze met elkaar zijn verbonden.

2. Gebruikersdatagramprotocol, of User Datagram Protocol, is verbindingsonafhankelijk en verzendt gegevens in pakketten die UDP-datagrammen worden genoemd. Dit protocol is echter niet zo betrouwbaar als TCP, omdat de afzender niet weet of het pakket daadwerkelijk is ontvangen.

3. ICMP(Internet Control Message Protocol) bestaat om foutmeldingen te verzenden die optreden tijdens de gegevensuitwisseling in Internetnetwerken. Het ICMP-protocol rapporteert echter alleen fouten, maar elimineert niet de redenen die tot deze fouten hebben geleid.

4. Telnet- die wordt gebruikt om een ​​tekstinterface op een netwerk te implementeren met behulp van het TCP-transport.

5. SMTP(Simple Mail Transfer Protocol) is een specialiteit per email, dat het formaat definieert van berichten die worden verzonden vanaf de ene computer, een zogenaamde SMTP-client, naar een andere computer waarop een SMTP-server draait. Waarin deze zending kan enige tijd worden uitgesteld totdat zowel de client als de server zijn geactiveerd.

Gegevensoverdrachtschema via TCP-IP-protocol

1. Het TCP-protocol verdeelt de volledige hoeveelheid gegevens in pakketten en nummert deze, waardoor ze in TCP-enveloppen worden verpakt, waardoor u de volgorde kunt herstellen waarin delen van de informatie worden ontvangen. Wanneer gegevens in een dergelijke envelop worden geplaatst, wordt een controlesom berekend, die vervolgens in de TCP-header wordt geschreven.

3. TCP controleert vervolgens of alle pakketten zijn ontvangen. Als tijdens de ontvangst de nieuw berekende waarde niet overeenkomt met de informatie die op de envelop staat, geeft dit aan dat een deel van de informatie verloren is gegaan of vervormd is tijdens de verzending, vraagt ​​het TCP-IP-protocol opnieuw om het doorsturen van dit pakket. Bevestiging van de ontvangst van gegevens van de ontvanger is ook vereist.

4. Nadat de ontvangst van alle pakketten is bevestigd, rangschikt het TCP-protocol ze dienovereenkomstig en voegt ze opnieuw samen tot één geheel.

TCP-protocol herhaalde datatransmissies en wachttijden (of time-outs) worden gebruikt om een ​​betrouwbare levering van informatie te garanderen. Pakketten kunnen tegelijkertijd in twee richtingen worden verzonden.

Het TCP-IP-protocol elimineert dus de noodzaak om te gebruiken heruitzendingen en verwachtingen voor applicatieprocessen (zoals Telnet en FTP).

StapelTCP/ IK P.

De TCP/IP-stack is een set hiërarchisch geordende netwerkprotocollen. De stapel is vernoemd naar twee belangrijke protocollen: TCP (Transmission Control Protocol) en IP (Internet Protocol). Daarnaast bevat de stapel nog enkele tientallen verschillende protocollen. Momenteel zijn TCP/IP-protocollen de belangrijkste voor het internet, maar ook voor de meeste bedrijfs- en lokale netwerken.

In het besturingssysteem Microsoft Windows Server 2003 wordt de TCP/IP-stack als hoofdstapel geselecteerd, hoewel ook andere protocollen worden ondersteund (bijvoorbeeld de IPX/SPX-stack, het NetBIOS-protocol).

De TCP/IP-protocolstack heeft twee belangrijke eigenschappen:

    platformonafhankelijkheid, d.w.z. het kan op verschillende manieren worden geïmplementeerd besturingssystemen en verwerkers;

    openheid, d.w.z. de standaarden waarmee de TCP/IP-stack is opgebouwd, zijn voor iedereen beschikbaar.

Geschiedenis van de scheppingTCP/ IK P.

In 1967 startte het Advanced Research Projects Agency van het Amerikaanse ministerie van Defensie (ARPA - Advanced Research Projects Agency) met de ontwikkeling van een computernetwerk dat een aantal universiteiten en onderzoekscentra moest verbinden die opdrachten van het Agentschap uitvoerden. Het project heette ARPANET. In 1972 verbond het netwerk 30 knooppunten.

Als onderdeel van het ARPANET-project werden de belangrijkste protocollen van de TCP/IP-stack - IP, TCP en UDP - ontwikkeld en gepubliceerd in 1980-1981. Een belangrijke factor in de verspreiding van TCP/IP was de implementatie van deze stapel in het UNIX 4.2 BSD-besturingssysteem (1983).

Tegen het einde van de jaren tachtig werd het sterk uitgebreide ARPANET bekend als internet (onderling verbonden netwerken). verbonden netwerken) en verenigde universiteiten en onderzoekscentra in de VS, Canada en Europa.

In 1992 verscheen nieuwe dienst Internet – WWW (World Wide Web – Het wereldwijde web), gebaseerd op het HTTP-protocol. Grotendeels dankzij WWW heeft het internet, en daarmee de TCP/IP-protocollen, in de jaren negentig een snelle ontwikkeling doorgemaakt.

Aan het begin van de 21e eeuw verwerft de TCP/IP-stack een leidende rol in de communicatiemiddelen, niet alleen van mondiale, maar ook van lokale netwerken.

ModelOSI.

Interactiemodel open systemen(OSI - Open Systems Interconnection) is ontwikkeld door de Internationale Organisatie voor Standaardisatie (ISO - Internationale Organisatie voor Standaardisatie) voor een uniforme aanpak voor het bouwen en verbinden van netwerken. De ontwikkeling van het OSI-model begon in 1977 en eindigde in 1984 met de goedkeuring van de standaard. Sindsdien is het model de referentie voor de ontwikkeling, beschrijving en vergelijking van verschillende protocolstacks.

Laten we kort kijken naar de functies van elk niveau.


Het OSI-model omvat zeven lagen: fysiek, datalink, netwerk, transport, sessie, presentatie en toepassing.

    De fysieke laag beschrijft de principes signaaloverdracht, transmissiesnelheid, specificaties van communicatiekanalen. Het niveau is geïmplementeerd in hardware ( netwerkadapter, hubpoort, netwerkkabel).

    De datalinklaag lost twee hoofdtaken op: het controleert de beschikbaarheid van het transmissiemedium (het transmissiemedium is meestal verdeeld over verschillende netwerkknooppunten), en detecteert en corrigeert ook fouten die optreden tijdens het transmissieproces. De implementatie van het niveau is hardware en software (bijvoorbeeld een netwerkadapter en het stuurprogramma ervan).

    De netwerklaag biedt netwerkinterconnectie, werkend aan verschillende protocollen van kanaal en fysieke niveaus in het samengestelde netwerk. Bovendien is elk van de netwerken opgenomen in enkel netwerk, genaamd subnet(subnet). Op netwerkniveau moeten twee hoofdproblemen worden opgelost: routering(routering, selectie optimaal pad berichtoverdracht) en adresseren(adressering, elk knooppunt in een samengesteld netwerk moet een unieke naam hebben). Normaal gesproken worden netwerklaagfuncties geïmplementeerd door een speciaal apparaat - router(router) en de bijbehorende software.

    De transportlaag lost het probleem op van het betrouwbaar verzenden van berichten in een samengesteld netwerk door de bezorging te bevestigen en pakketten opnieuw te verzenden. Dit niveau en al het volgende zijn in software geïmplementeerd.

    Met de sessielaag kunt u informatie onthouden over huidige toestand communicatiesessie en, als de verbinding verbroken is, hervat u de sessie vanuit deze status.

    De presentatielaag zorgt voor de conversie van verzonden informatie van de ene codering naar de andere (bijvoorbeeld van ASCII naar EBCDIC).

    De applicatielaag implementeert de interface tussen de andere lagen van het model en gebruikersapplicaties.

StructuurTCP/ IK P. De TCP/IP-structuur is niet gebaseerd op het OSI-model, maar op een eigen model, genaamd DARPA (Defense ARPA - de nieuwe naam van de Advanced Research Projects Agency) of DoD (Department of Defense - US Department of Defense). Dit model heeft slechts vier niveaus. De overeenkomst tussen het OSI-model en het DARPA-model, evenals de belangrijkste protocollen van de TCP/IP-stack, wordt getoond in figuur 2. 2.2.

het zou genoteerd moeten worden dat Lager niveau DARPA-modellen – niveau Netwerk interfaces– voert strikt genomen niet de functies van het kanaal en de fysieke lagen uit, maar zorgt alleen voor communicatie (interface) hogere niveaus DARPA met samengestelde netwerktechnologieën (bijv. Ethernet, FDDI, ATM).

Alle protocollen in de TCP/IP-stack zijn gestandaardiseerd in RFC-documenten.

DocumentatieRFC.

Goedgekeurde officiële internet- en TCP/IP-standaarden worden gepubliceerd als RFC-documenten (Request for Comments). Normen worden ontwikkeld door de gehele ISOC-gemeenschap (Internet Society, een internationale publieke organisatie). Elk ISOC-lid kan een document indienen ter overweging voor publicatie in een RFC. Het document wordt vervolgens beoordeeld door technische experts, ontwikkelingsteams en de RFC-editor en doorloopt de volgende fasen, volwassenheidsniveaus genoemd, in overeenstemming met RFC 2026:

    voorlopige versie(Internet Draft) – in dit stadium maken experts zich vertrouwd met het document, worden toevoegingen en wijzigingen aangebracht;

    voorgestelde standaard(Voorgestelde norm) - het document krijgt een RFC-nummer toegewezen, experts hebben de haalbaarheid van de voorgestelde oplossingen bevestigd, het document wordt als veelbelovend beschouwd, het is wenselijk dat het in de praktijk wordt getest;

    ontwerp standaard(Conceptstandaard) - een document wordt een conceptstandaard als ten minste twee onafhankelijke ontwikkelaars de voorgestelde specificaties hebben geïmplementeerd en met succes hebben toegepast. In dit stadium zijn kleine correcties en verbeteringen nog steeds toegestaan;

    Internet standaard(Internetstandaard) - de hoogste fase van goedkeuring van de standaard, de documentspecificaties zijn wijdverspreid geworden en hebben zich in de praktijk bewezen. Een lijst met internetstandaarden wordt gegeven in RFC 3700. Van de duizenden RFC's zijn er slechts enkele tientallen documenten met de status 'Internetstandaard'.

Naast standaarden kunnen RFC's ook beschrijvingen zijn van nieuwe netwerkconcepten en -ideeën, richtlijnen, resultaten van experimentele onderzoeken die ter informatie worden gepresenteerd, enz. Dergelijke RFC's kunnen een van de volgende statussen krijgen:

    experimenteel(Experimenteel) – een document met informatie over wetenschappelijk onderzoek en ontwikkelingen die van belang kunnen zijn voor ISOC-leden;

    informatief(Informatief) - een document dat is gepubliceerd om informatie te verstrekken en waarvoor geen goedkeuring door de ISOC-gemeenschap vereist is;

    beste moderne ervaring(Best Current Practice) - een document bedoeld om ervaringen uit specifieke ontwikkelingen, zoals protocolimplementaties, over te brengen.

De status wordt aangegeven in de kop van het RFC-document na het woord Categorie (Categorie). Bij documenten met de status van standaard (Proposed Standard, Draft Standard, Internet Standard) wordt de naam aangegeven Normen Spoor, aangezien het gereedheidsniveau kan variëren.

RFC-nummers worden opeenvolgend toegewezen en worden nooit opnieuw uitgegeven. De originele RFC wordt nooit bijgewerkt. De bijgewerkte versie wordt gepubliceerd onder een nieuw nummer. Een verouderde en achterhaalde RFC wordt historisch(Historisch).

Alle bestaande RFC-documenten zijn tegenwoordig bijvoorbeeld te bekijken op de website www.rfc-editor.org . In augustus 2007 waren dat er meer dan 5.000. De RFC's waarnaar in deze cursus wordt verwezen, staan ​​vermeld in bijlage I.

Overzicht van de belangrijkste protocollen.

Protocol IK P (Internet Protocol) – Dit is het belangrijkste netwerklaagprotocol dat verantwoordelijk is voor de adressering in samengestelde netwerken en de pakketoverdracht tussen netwerken. Het IP-protocol is datagram protocol, dat wil zeggen dat het geen levering van pakketten aan het bestemmingsknooppunt garandeert. Het transportlaagprotocol TCP biedt garanties.

Protocollen RUST IN VREDE. (Routering Informatie Protocol routeringsinformatieprotocol ) EnOSPF (Open Kortste Pad Eerst – « De kortste routes gaan als eerste open" ) – routeringsprotocollen in IP-netwerken.

Protocol ICMP (Internet Controle Bericht Protocol Control Message Protocol in Composite Networks) is ontworpen om foutinformatie uit te wisselen tussen netwerkrouters en het bronknooppunt van het pakket. Met behulp van speciale pakketten rapporteert het de onmogelijkheid om een ​​pakket af te leveren, de duur van het samenstellen van een pakket uit fragmenten, afwijkende parameterwaarden, veranderingen in de doorstuurroute en het type service, de status van het systeem, enz.

Protocol ARP (Adres Oplossing Protocol – Address Translation Protocol) converteert IP-adressen naar hardwareadressen van lokale netwerken. De omgekeerde conversie wordt uitgevoerd met behulp van het protocol RAPR (Omgekeerde ARP).

TCP (Overdragen Controle Protocol – transmissiecontroleprotocol) zorgt voor een betrouwbare overdracht van berichten tussen externe netwerkknooppunten door de vorming van logische verbindingen. Met TCP kunt u een bytestream die op één computer is gegenereerd, zonder fouten aan elke andere computer in het samengestelde netwerk leveren. TCP verdeelt de bytestroom in delen - segmenten en geeft ze door netwerkniveau. Zodra deze segmenten op hun bestemming zijn afgeleverd, voegt TCP ze opnieuw samen tot een continue stroom bytes.

UDP (Gebruiker Datagram Protocol – User Datagram Protocol) zorgt voor gegevensoverdracht op datagramwijze.

HTTP (HyperTekst Overdracht Protocol – hypertext transfer protocol) – webdocumentleveringsprotocol, het hoofdprotocol van de WWW-service.

FTP (Bestand Overdracht Protocol – bestandsoverdrachtprotocol) – een protocol voor het overbrengen van informatie die is opgeslagen in bestanden.

KNAL 3 (Na Kantoor Protocol versie 3 – postkantoorprotocol) en SMTP (Eenvoudig Mail Overdracht Protocol – Simple Mail Forwarding Protocol) – protocollen voor het bezorgen van inkomende e-mail (POP3) en het verzenden van uitgaande e-mail (SMTP).

Telnet – terminalemulatieprotocol 1, waardoor de gebruiker verbinding kan maken met anderen afgelegen stations en werk met hen vanaf uw machine alsof het hun externe terminal is.

SNMP (Eenvoudig Netwerk Beheer Protocol – eenvoudig netwerkbeheerprotocol) is ontworpen om de prestaties van verschillende netwerkapparaten te diagnosticeren.