Het doel van de applicatielaag. Open Systems Interconnection (OSI)-model




Dit model is in 1984 ontwikkeld door de International Standard Organization (ISO) en heet oorspronkelijk Open Systems Interconnection, OSI.
Het open-systeeminteractiemodel (in feite het netwerkinteractiemodel) is een standaard voor het ontwerpen van netwerkcommunicatie en omvat een gelaagde benadering voor het bouwen van netwerken.
Elk niveau van het model bedient verschillende stadia van het interactieproces. Door gelaagdheid maakt het OSI-netwerkmodel het gemakkelijker voor hardware en software om samen te werken. Het OSI-model verdeelt netwerkfuncties in zeven lagen: applicatie, presentatie, sessie, transport, netwerk, link en fysiek.


  • Fysieke laag(Fysieke laag) - definieert hoe de computers op het netwerk fysiek zijn verbonden. De functies van de middelen die betrekking hebben op dit niveau zijn de bit-voor-bit omzetting van digitale gegevens in signalen die via een fysiek medium (bijvoorbeeld via een kabel) worden verzonden, evenals de eigenlijke signaaloverdracht.
  • Link laag(Data Link-laag) - is verantwoordelijk voor het organiseren van de overdracht van gegevens tussen abonnees via de fysieke laag, daarom biedt deze laag adresseringstools waarmee u de afzender en ontvanger op unieke wijze kunt identificeren in de hele set abonnees die is aangesloten op de gemeenschappelijke communicatielijn . De functies van dit niveau omvatten ook het bestellen van verzending om één communicatielijn parallel te gebruiken door meerdere paren abonnees. Bovendien biedt de datalinklaag een foutcontrole die kan optreden tijdens datatransmissie door de fysieke laag.
  • netwerklaag(Netwerklaag) - biedt gegevenslevering tussen computers in een netwerk, dat een associatie is van verschillende fysieke netwerken. Dit niveau veronderstelt de beschikbaarheid van logische adresseringstools waarmee u een computer op unieke wijze in het internetwerk kunt identificeren. Een van de belangrijkste functies van dit niveau is de doelgerichte overdracht van gegevens aan een specifieke ontvanger.
  • transport laag(Transportlaag) - implementeert de overdracht van gegevens tussen twee programma's die op verschillende computers worden uitgevoerd, terwijl ervoor wordt gezorgd dat er geen verlies en duplicatie van informatie is die kan optreden als gevolg van transmissiefouten van lagere niveaus. Als de gegevens die door de transportlaag worden verzonden, gefragmenteerd zijn, dan garanderen de middelen van deze laag dat de fragmenten in de juiste volgorde worden samengesteld.
  • Sessie (of sessie) niveau(Sessielaag) - hiermee kunnen twee programma's langdurige interactie over het netwerk onderhouden, een sessie (sessie) of sessie genoemd. Deze laag regelt het tot stand brengen van sessies, communicatie en sessiebeëindiging. Het is ook verantwoordelijk voor authenticatie, waardoor alleen bepaalde abonnees kunnen deelnemen aan een sessie, en biedt beveiligingsdiensten om de toegang tot sessie-informatie te stroomlijnen.
  • Presentatie laag(Presentatielaag) - voert een tussentijdse conversie uit van de gegevens van het uitgaande bericht naar een gemeenschappelijk formaat, dat wordt verschaft door middel van lagere niveaus, evenals de omgekeerde transformatie van inkomende gegevens van een gemeenschappelijk formaat naar een formaat dat begrijpelijk is voor de programma ontvangen.
  • Toepassingslaag(Applicatielaag) - biedt netwerkfuncties op hoog niveau, zoals bestandsoverdracht, verzenden van e-mailberichten, enz.

OSI-model in gewone taal


Het OSI-model is een afkorting voor het Engelse Open System Interconnection, dat wil zeggen een model voor de interactie van open systemen. Open systemen kunnen worden opgevat als netwerkapparatuur (computers met netwerkkaarten, switches, routers).
Het OSI-netwerkmodel is een blauwdruk (of communicatieplan) voor netwerkapparaten. OSI speelt ook een rol bij het creëren van nieuwe netwerkprotocollen, omdat het dient als een standaard voor interactie.
OSI bestaat uit 7 blokken (lagen). Elk blok vervult zijn unieke rol in de netwerkinteractie van verschillende netwerkapparaten.
7 lagen van het OSI-model: 1 - Fysiek, 2 - Kanaal, 3 - Netwerk, 4 - Transport, 5 - Sessie, 6 - Presentaties, 7 - Toepassingen.
Elke laag van het model heeft zijn eigen set netwerkprotocollen (standaarden voor gegevensoverdracht) die apparaten op het netwerk gebruiken om te communiceren.
Onthoud dat hoe complexer het netwerkapparaat is, hoe meer functies het biedt, maar het vereist ook meer niveaus en als gevolg daarvan werkt het langzamer.

netwerk modellen. Deel 1. OSI.


Absoluut beter om met theorie te beginnen en dan, soepel, door te gaan naar de praktijk. Daarom zullen we eerst het netwerkmodel (theoretisch model) beschouwen, en dan zullen we een beetje het gordijn openen over hoe het theoretische netwerkmodel past in de netwerkinfrastructuur (op netwerkapparatuur, gebruikerscomputers, kabels, radiogolven, enz.).
Dus, netwerkmodel is een interactiemodel van netwerkprotocollen. En protocollen zijn op hun beurt standaarden die bepalen hoe verschillende programma's gegevens uitwisselen.
Laat me het uitleggen aan de hand van een voorbeeld: bij het openen van een pagina op internet stuurt de server (waar de pagina die wordt geopend zich bevindt) gegevens (hypertekstdocument) naar uw browser via het HTTP-protocol. Dankzij het HTTP-protocol weet uw browser bij het ontvangen van gegevens van de server hoe deze moeten worden verwerkt en verwerkt deze met succes, zodat u de gevraagde pagina krijgt.
Als je nog niet weet wat een pagina op internet is, zal ik het in een notendop uitleggen: elke tekst op een webpagina is ingesloten in speciale tags die de browser vertellen welke tekstgrootte, de kleur, de locatie op het pagina (links, rechts of in het midden). Dit geldt niet alleen voor tekst, maar ook voor afbeeldingen, formulieren, actieve elementen en in het algemeen alle inhoud, d.w.z. wat er op de pagina staat. De browser handelt bij het detecteren van tags volgens hun instructies en toont u de verwerkte gegevens die in deze tags zijn ingesloten. U kunt zelf de tags van deze pagina zien (en deze tekst tussen de tags), ga hiervoor naar het menu van uw browser en selecteer - bekijk broncode.
Laten we niet te veel afdwalen, "Netwerkmodel" is een noodzakelijk onderwerp voor degenen die specialist willen worden. Dit artikel bestaat uit 3 delen en voor jou heb ik geprobeerd om niet saai, begrijpelijk en kort te schrijven. Voor meer details of voor aanvullende verduidelijking, schrijf in de opmerkingen onderaan de pagina, en ik zal je zeker helpen.
We zullen, net als in de Cisco Networking Academy, twee netwerkmodellen overwegen: het OSI-model en het TCP / IP-model (ook wel DOD genoemd), en tegelijkertijd zullen we ze vergelijken.

OSI-netwerkreferentiemodel


OSI staat voor Open Systeem Interconnectie. In het Russisch klinkt het als volgt: Netwerkmodel van interactie met open systemen (referentiemodel). Dit model mag gerust de standaard genoemd worden. Dit model wordt gevolgd door fabrikanten van netwerkapparatuur wanneer zij nieuwe producten ontwikkelen.
Het OSI-netwerkmodel bestaat uit 7 lagen en het is gebruikelijk om van onderaf te beginnen.
Laten we ze opsommen:
7. Applicatielaag (applicatielaag)
6. Presentatielaag of presentatielaag
5. Sessielaag (sessielaag)
4. Transportlaag
3. Netwerklaag (netwerklaag)
2. Linklaag (datalinklaag)
1. Fysieke laag (fysieke laag)

Zoals hierboven vermeld, is het netwerkmodel een model voor de interactie van netwerkprotocollen (standaarden), en elk niveau heeft zijn eigen protocollen. Het is een saai proces om ze op te sommen (en er is niets aan te doen), dus het is beter om alles te analyseren met een voorbeeld, omdat de verteerbaarheid van het materiaal met voorbeelden veel hoger is;)

Toepassingslaag


De applicatielaag of applicatielaag is de bovenste laag van het model. Het communiceert gebruikerstoepassingen met het netwerk. We kennen allemaal deze toepassingen: surfen op het web (HTTP), mail verzenden en ontvangen (SMTP, POP3), bestanden ontvangen en ontvangen (FTP, TFTP), toegang op afstand (Telnet), enz.

Uitvoerend niveau


Presentatielaag of presentatielaag - het zet de gegevens om in het juiste formaat. Het is gemakkelijker te begrijpen met een voorbeeld: die afbeeldingen (alle afbeeldingen) die u op het scherm ziet, worden verzonden bij het verzenden van een bestand in de vorm van kleine porties van enen en nullen (bits). Dus wanneer u een foto naar uw vriend e-mailt, stuurt het SMTP-toepassingslaagprotocol de foto naar de onderste laag, d.w.z. tot op presentatieniveau. Waarbij je foto wordt omgezet in een handige vorm van data voor lagere niveaus, bijvoorbeeld in bits (enen en nullen).
Op precies dezelfde manier, wanneer uw vriend uw foto begint te ontvangen, ontvangt hij deze in de vorm van allemaal dezelfde enen en nullen, en het is de weergavelaag die de bits omzet in een volwaardige foto, zoals JPEG.
Zo werkt dit niveau met protocollen (standaarden) voor afbeeldingen (JPEG, GIF, PNG, TIFF), encodings (ASCII, EBDIC), muziek en video (MPEG), etc.

sessielaag


Sessielaag of sessielaag (sessielaag) - zoals de naam al aangeeft, organiseert het een communicatiesessie tussen computers. Een goed voorbeeld is audio- en videoconferentie, op dit niveau wordt ingesteld welke codec het signaal zal coderen, en deze codec moet op beide machines aanwezig zijn. Een ander voorbeeld is het SMPP-protocol (Short message peer-to-peer protocol), met behulp waarvan bekende SMS- en USSD-verzoeken worden verzonden. En het laatste voorbeeld: PAP (Password Authentication Protocol) is een oud protocol om een ​​gebruikersnaam en wachtwoord zonder encryptie naar een server te sturen.
Ik zal niets meer zeggen over het sessieniveau, anders duiken we in de saaie kenmerken van de protocollen. En als ze (functies) je interesseren, schrijf me dan brieven of laat een bericht achter in de comments met een verzoek om het onderwerp in meer detail te onthullen, en een nieuw artikel zal niet lang duren;)

transport laag


De transportlaag (transportlaag) - deze laag zorgt voor de betrouwbaarheid van de gegevensoverdracht van de afzender naar de ontvanger. In feite is alles heel eenvoudig, je communiceert bijvoorbeeld via een webcam met je vriend of leraar. Is er behoefte aan een betrouwbare levering van elk bit van het verzonden beeld? Natuurlijk niet, als er een paar bits verloren gaan van de streaming video, merk je het niet eens, zelfs het beeld zal niet veranderen (misschien zal de kleur van één pixel op 900.000 pixels veranderen, die zal flitsen met een snelheid van 24 beelden per seconde).
En laten we nu een voorbeeld geven: een vriend stuurt je (bijvoorbeeld via mail) belangrijke informatie of een programma in het archief. Dit archief download je naar je computer. Hier is 100% betrouwbaarheid nodig, want. als er een paar bits verloren gaan bij het downloaden van het archief, kunt u het later niet uitpakken, d.w.z. de benodigde gegevens extraheren. Of stel je voor dat je een wachtwoord naar een server stuurt, en onderweg gaat er een bit verloren - het wachtwoord zal zijn vorm al verliezen en de waarde zal veranderen.
Dus wanneer we video's op internet bekijken, zien we soms wat artefacten, vertragingen, ruis, enz. En als we tekst van een webpagina lezen, is het verlies (of vervormen) van letters niet toegestaan, en als we programma's downloaden, gaat ook alles foutloos.
Op dit niveau zal ik twee protocollen belichten: UDP en TCP. Het UDP-protocol (User Datagram Protocol) verzendt gegevens zonder een verbinding tot stand te brengen, bevestigt de levering van gegevens niet en probeert het niet opnieuw. Het TCP-protocol (Transmission Control Protocol), dat een verbinding tot stand brengt vóór verzending, bevestigt de levering van gegevens, herhaalt zich indien nodig, garandeert de integriteit en de juiste volgorde van de gedownloade gegevens.
Daarom gebruiken we voor muziek, video, videoconferenties en oproepen UDP (we dragen gegevens over zonder verificatie en zonder vertraging), en voor tekst, programma's, wachtwoorden, archieven, enz. – TCP (gegevensoverdracht met ontvangstbevestiging, kost meer tijd).

netwerklaag


Netwerklaag - Deze laag definieert het pad waarover de gegevens worden verzonden. En trouwens, dit is het derde niveau van het OSI-netwerkmodel, en er zijn apparaten die gewoon apparaten van het derde niveau worden genoemd - routers.
We hebben allemaal gehoord van het IP-adres, en dat is wat IP (Internet Protocol) doet. Een IP-adres is een logisch adres op een netwerk.
Er zijn nogal wat protocollen op dit niveau en we zullen al deze protocollen later in aparte artikelen en voorbeelden in meer detail analyseren. Voor nu zal ik slechts een paar van de populaire opsommen.
Zoals iedereen heeft gehoord over het IP-adres en het ping-commando, is dit hoe het ICMP-protocol werkt.
Dezelfde routers (waar we in de toekomst mee gaan werken) gebruiken protocollen van dit niveau voor het routeren van pakketten (RIP, EIGRP, OSPF).
Het gehele tweede deel van de CCNA (Exploratie 2) cursus gaat over routering.

Link laag


De linklaag (datalinklaag) - die hebben we nodig voor de interactie van netwerken op fysiek niveau. Waarschijnlijk heeft iedereen wel eens van het MAC-adres gehoord, hier is het het fysieke adres. Apparaten met een verbindingslaag - switches, hubs, enz.
IEEE (Institute of Electrical and Electronics Engineers - Institute of Electrical and Electronics Engineers) definieert de verbindingslaag als twee sublagen: LLC en MAC.
LLC - Logical Link Control, ontworpen om te communiceren met het bovenste niveau.
MAC - Media Access Control, ontworpen om te communiceren met het lagere niveau.
Laat me het uitleggen aan de hand van een voorbeeld: uw computer (laptop, communicator) heeft een netwerkkaart (of een andere adapter), dus er is een stuurprogramma om ermee te communiceren (met een kaart). Een driver is een programma - het bovenste subniveau van het kanaalniveau, waardoor het net mogelijk is om contact te maken met de lagere niveaus, of liever, de microprocessor (hardware) - het lagere subniveau van het kanaalniveau.
Er zijn veel typische vertegenwoordigers op dit niveau. PPP (Point-to-Point) is een protocol om twee computers rechtstreeks met elkaar te verbinden. FDDI (Fiber Distributed Data Interface) - de standaard verzendt gegevens over een afstand tot 200 kilometer. CDP (Cisco Discovery Protocol) is een eigen (eigen) protocol van Cisco Systems, waarmee u aangrenzende apparaten kunt ontdekken en informatie over deze apparaten kunt krijgen.
Het hele derde deel van de CCNA-cursus (Exploratie 3) gaat over apparaten van het tweede niveau.

Fysieke laag


De fysieke laag (fysieke laag) is de onderste laag die de datastroom direct overdraagt. Protocollen zijn ons allemaal bekend: Bluetooth, IRDA (infrarood), koperdraden (twisted pair, telefoonlijn), wifi, enz.
Blijf op de hoogte voor details en specificaties in toekomstige artikelen en in de CCNA-cursus. Het gehele eerste deel van de CCNA-cursus (Exploratie 1) is gewijd aan het OSI-model.

Conclusie


Dus hebben we het OSI-netwerkmodel geanalyseerd. Laten we in het volgende deel beginnen met het TCP / IP-netwerkmodel, het is kleiner en de protocollen zijn hetzelfde. Om de CCNA-tests met succes te doorstaan, moet u verschillen vergelijken en identificeren, wat zal worden gedaan.

Na wat wikken en wegen besloot ik hier een artikel van de Network Troubles-website te plaatsen. Om alles op één plek te houden.

En nogmaals hallo, beste vrienden, vandaag zullen we uitzoeken wat het OSI-netwerkmodel is, waarom het in feite de bedoeling is.

Zoals u waarschijnlijk al begrijpt, zijn moderne netwerken zeer, zeer complex, er vinden veel verschillende processen in plaats, honderden acties worden uitgevoerd. Om het proces van het beschrijven van deze verscheidenheid aan netwerkfuncties te vereenvoudigen (en, belangrijker nog, om het proces van verdere ontwikkeling van deze functies te vereenvoudigen), is getracht deze te structureren. Als resultaat van structurering zijn alle functies die door een computernetwerk worden uitgevoerd, verdeeld in verschillende niveaus, die elk slechts verantwoordelijk zijn voor een specifiek, zeer gespecialiseerd takenpakket. Hierbij kan het netwerkmodel worden vergeleken met de structuur van een bedrijf. Het bedrijf is opgedeeld in afdelingen. Elke afdeling voert zijn functies uit, maar staat tijdens het werk in contact met andere afdelingen.


Scheiding van functies met behulp van het netwerkmodel


Het OSI-netwerkmodel is zo ontworpen dat de hogere lagen van het netwerkmodel de lagere lagen van het netwerkmodel gebruiken om hun informatie over te brengen. De regels waarmee de lagen van het model communiceren, worden netwerkprotocollen genoemd. Een netwerkprotocol van een bepaald niveau van het model kan communiceren met protocollen van zijn eigen niveau of met protocollen van aangrenzende niveaus. Ook hier kunnen we een analogie trekken met het werk van het bedrijf. Er is altijd een gevestigde hiërarchie in het bedrijf, hoewel niet zo strikt als in het netwerkmodel. Werknemers van een niveau in de hiërarchie voeren instructies uit die ze hebben ontvangen van werknemers op een hoger niveau in de hiërarchie.


Interactie tussen lagen van het OSI-netwerkmodel


Elk apparaat dat op het netwerk werkt, kan worden weergegeven als een systeem dat werkt op de juiste lagen van het OSI-model. Bovendien kan dit apparaat in zijn werk zowel alle niveaus van het OSI-model als slechts enkele van zijn lagere niveaus gebruiken. Wanneer van een apparaat wordt gezegd dat het op een bepaald niveau van het model werkt, betekent dit meestal dat het op dat niveau van het netwerkmodel en op alle niveaus daaronder werkt.


Werk aan enkele lagen van het OSI-netwerkmodel


Wanneer twee verschillende netwerkapparaten met elkaar communiceren, gebruiken ze de protocollen van dezelfde niveaus van het netwerkmodel, terwijl het interactieproces zowel de protocollen van het niveau waarop de interactie direct plaatsvindt, als de noodzakelijke protocollen van alle lagere niveaus omvat , omdat ze worden gebruikt om gegevens over te dragen die van hogere niveaus zijn ontvangen.


Communicatie van twee systemen vanuit de positie van het OSI-model


Bij het overbrengen van informatie van het bovenste niveau van het netwerkmodel naar het lagere niveau van het netwerkmodel, wordt aan deze nuttige informatie wat service-informatie toegevoegd, de header genoemd (op het 2e niveau wordt niet alleen de header toegevoegd, maar ook de trailer ). Dit proces van het toevoegen van overheadinformatie wordt inkapseling genoemd. Bij het ontvangen (verzenden van informatie van het lagere niveau naar het hogere), wordt deze service-informatie gescheiden en worden de initiële gegevens verkregen. Dit proces wordt de-encapsulatie genoemd. In de kern lijkt dit proces erg op het proces van het verzenden van een brief per post. Stel je voor dat je een brief naar je vriend wilt sturen. U schrijft een brief - dit is nuttige informatie. Als u het per post verzendt, verpakt u het in een envelop, schrijft u het adres van de ontvanger erop, dat wil zeggen, voegt een koptekst toe aan de nuttige informatie. In wezen is dit inkapseling. Na ontvangst van uw brief, kapselt uw vriend deze in - dat wil zeggen, scheurt de envelop en haalt er nuttige informatie uit - uw brief.


Demonstratie van het principe van inkapseling


Het OSI-model verdeelt alle functies die worden uitgevoerd tijdens de interactie van systemen in 7 niveaus: Fysiek (Fysiek) - 1, Kanaal (Datalink) -2, Netwerk (netwerk) - 3, Transport (transport) - 4, Sessie (Sessie) -5, vertegenwoordiger (presentatie) -6 en toegepast (toepassing) - 7.


Lagen van het open systemen interactiemodel


Laten we kort ingaan op het doel van elk van de niveaus van het interactiemodel voor open systemen.

De applicatielaag is het punt waarlangs applicaties communiceren met het netwerk (het toegangspunt tot het OSI-model). Met deze laag van het OSI-model worden de volgende taken uitgevoerd: netwerkbeheer, systeembezetbeheer, beheer van bestandsoverdracht, gebruikersidentificatie door hun wachtwoorden. Voorbeelden van protocollen van dit niveau zijn: HTTP, SMTP, RDP, etc. Heel vaak voeren applicatielaagprotocollen tegelijkertijd de functies uit van presentatie- en sessielaagprotocollen.


Dit niveau is verantwoordelijk voor het gegevenspresentatieformaat. Het converteert grofweg de van de applicatielaag ontvangen gegevens naar een formaat dat geschikt is voor verzending via het netwerk (en voert dienovereenkomstig de omgekeerde bewerking uit door informatie die van het netwerk wordt ontvangen om te zetten in een formaat dat geschikt is voor verwerking door toepassingen).


Op dit niveau vindt het opzetten, onderhouden en beheren van een communicatiesessie tussen twee systemen plaats. Het is dit niveau dat verantwoordelijk is voor het onderhouden van de communicatie tussen systemen gedurende de gehele periode waarin ze op elkaar inwerken.


De protocollen van deze laag van het OSI-netwerkmodel zijn verantwoordelijk voor de overdracht van gegevens van het ene systeem naar het andere. Op dit niveau worden grote datablokken verdeeld in kleinere blokken die geschikt zijn voor verwerking door de netwerklaag (zeer kleine datablokken worden gecombineerd tot grotere), deze blokken worden op de juiste manier gemarkeerd voor hun latere herstel aan de ontvangende kant. Wanneer de juiste protocollen worden gebruikt, kan deze laag ook controle bieden over de levering van netwerklaagpakketten. Het gegevensblok waarop een bepaalde laag actief is, wordt gewoonlijk een segment genoemd. Voorbeelden van protocollen van dit niveau zijn: TCP, UDP, SPX, ATP, etc.


Deze laag is verantwoordelijk voor het routeren (bepalen van de beste routes van het ene systeem naar het andere) datablokken van deze laag. Het gegevensblok op dit niveau wordt gewoonlijk een pakket genoemd. Ook is dit niveau verantwoordelijk voor de logische adressering van systemen (dezelfde IP-adressen), op basis waarvan routering plaatsvindt. De protocollen van dit niveau omvatten: IP, IPX, enz., apparaten die op dit niveau werken, zijn routers.


Deze laag is verantwoordelijk voor de fysieke adressering van netwerkapparaten (MAC-adressen), mediatoegangscontrole en foutcorrectie door de fysieke laag. Het gegevensblok dat in de datalinklaag wordt gebruikt, wordt een frame genoemd. Dit niveau omvat de volgende apparaten: schakelaars (niet alle), bruggen, enz. Een typische technologie die deze laag gebruikt, is Ethernet.


Voert de overdracht van optische of elektrische impulsen uit over het geselecteerde overdrachtsmedium. De apparaten van dit niveau bevatten allerlei soorten repeaters en hubs.


Het OSI-model zelf is geen praktische implementatie, het impliceert alleen een bepaalde set regels voor de interactie van systeemcomponenten. Een praktisch voorbeeld van het implementeren van een netwerkprotocolstack is de TCP/IP-protocolstack (evenals andere minder gebruikelijke protocolstacks).

Net als in elk ander kennisgebied zijn er in netwerkwetenschap twee fundamentele benaderingen van leren: van het algemene naar het bijzondere en vice versa. Welnu, het is niet zo dat mensen deze benaderingen in hun pure vorm in het leven gebruiken, maar toch kiest elke student in de beginfase een van de bovenstaande richtingen voor zichzelf. Voor hoger onderwijs (tenminste (post) Sovjetmodel) is de eerste methode meer typisch, voor zelfstudie meestal de tweede: een persoon die aan het netwerk werkte, loste van tijd tot tijd kleine administratieve taken van een enkele gebruiker op , en plotseling wilde hij erachter komen - maar hoe, eigenlijk is al deze onzin geregeld?

Maar het doel van dit artikel is niet een filosofische discussie over de methodologie van lesgeven. Ik wil beginnende netwerkers onder de aandacht brengen dat: algemeen en vooral, van waaruit je, als van een kachel, kunt dansen op de meest chique privéwinkels. Door het zevenlaagse OSI-model te begrijpen en de lagen ervan te "herkennen" in de technologieën die u al kent, kunt u gemakkelijk verder gaan in elke richting van de netwerkindustrie die u kiest. Het OSI-model is het raamwerk waaraan nieuwe kennis over netwerken wordt opgehangen.

Dit model wordt op de een of andere manier genoemd in bijna elke moderne literatuur over netwerken, evenals in veel specificaties van specifieke protocollen en technologieën. Zonder de behoefte te voelen het wiel opnieuw uit te vinden, besloot ik fragmenten uit het werk van N. Olifer, V. Olifer (Center for Information Technology) te publiceren, getiteld "The role of communication protocols and the functional purpose of the main types of corporate network equipment ”, die ik beschouw als de beste en meest uitgebreide publicatie over dit onderwerp.

hoofdredacteur

model-

Alleen omdat een protocol een overeenkomst is tussen twee op elkaar inwerkende entiteiten, in dit geval twee computers die op een netwerk draaien, volgt hier niet noodzakelijkerwijs uit dat het een standaard is. Maar in de praktijk gebruiken ze bij het implementeren van netwerken meestal standaardprotocollen. Dit kunnen bedrijfs-, nationale of internationale normen zijn.

De International Standards Organization (ISO) heeft een model ontwikkeld dat duidelijk de verschillende niveaus van systeeminteractie definieert, ze standaardnamen geeft en specificeert welk werk elk niveau moet doen. Dit model wordt het Open System Interconnection (OSI)-model of het ISO/OSI-model genoemd.

Het OSI-model verdeelt de communicatie in zeven niveaus of lagen (Figuur 1.1). Elk niveau behandelt een specifiek aspect van interactie. Het interactieprobleem wordt dus ontleed in 7 specifieke problemen, die elk onafhankelijk van de andere kunnen worden opgelost. Elke laag onderhoudt interfaces met hogere en lagere lagen.

Rijst. 1.1. ISO/OSI-interoperabiliteitsmodel voor open systemen

Het OSI-model beschrijft alleen systeembrede interactiemiddelen, niet eindgebruikerstoepassingen. Applicaties implementeren hun eigen communicatieprotocollen door toegang te krijgen tot systeemfaciliteiten. Houd er rekening mee dat een toepassing de functies van sommige van de bovenste lagen van het OSI-model kan overnemen, in welk geval het, indien nodig, toegang heeft tot systeemtools die de functies van de resterende onderste lagen van het OSI-model uitvoeren wanneer onderlinge samenwerking vereist.

Een eindgebruikerstoepassing kan systeemcommunicatietools gebruiken, niet alleen om een ​​dialoog tot stand te brengen met een andere toepassing die op een andere machine draait, maar eenvoudigweg om de diensten van een bepaalde netwerkservice te ontvangen, zoals toegang tot externe bestanden, het ontvangen van e-mail of afdrukken op een gedeelde printer .

Laat de applicatie dus een verzoek doen aan de applicatielaag, bijvoorbeeld aan een fileservice. Op basis van dit verzoek genereert de applicatielaagsoftware een bericht in een standaardformaat, waarin het service-informatie (header) en eventueel verzonden gegevens plaatst. Dit bericht wordt vervolgens naar de representatieve laag gestuurd. De presentatielaag voegt zijn eigen kop toe aan het bericht en geeft het resultaat door aan de sessielaag, die op zijn beurt zijn eigen kop toevoegt, enzovoort. Sommige implementaties van de protocollen zorgen voor de aanwezigheid in het bericht, niet alleen van de header, maar ook van de trailer. Ten slotte bereikt het bericht de laagste, fysieke laag, die het daadwerkelijk over de communicatielijnen verzendt.

Wanneer een bericht op het netwerk op een andere machine aankomt, gaat het sequentieel omhoog van laag naar laag. Elk niveau analyseert, verwerkt en verwijdert de kop van zijn niveau, voert de functies uit die bij dit niveau horen en geeft het bericht door aan het hogere niveau.

Naast de term "bericht" (bericht), zijn er andere namen die door netwerkspecialisten worden gebruikt om een ​​eenheid van gegevensuitwisseling aan te duiden. De ISO-normen gebruiken de term "Protocol Data Unit" (PDU) voor protocollen op elk niveau. Daarnaast worden vaak de namen frame (frame), packet (packet), datagram (datagram) gebruikt.

Laagfuncties van het ISO/OSI-model

Fysieke laag Deze laag behandelt de overdracht van bits over fysieke kanalen, zoals coaxkabel, twisted pair of glasvezelkabel. Dit niveau houdt verband met de kenmerken van fysieke gegevensoverdrachtmedia, zoals bandbreedte, ruisimmuniteit, golfimpedantie en andere. Op hetzelfde niveau worden de kenmerken van elektrische signalen bepaald, zoals de vereisten voor de fronten van de pulsen, de spannings- of stroomniveaus van het verzonden signaal, het type codering en de signaaloverdrachtssnelheid. Bovendien zijn de soorten connectoren en het doel van elke pin hier gestandaardiseerd.

Fysieke laagfuncties worden geïmplementeerd in alle apparaten die op het netwerk zijn aangesloten. Aan de computerkant worden fysieke laagfuncties uitgevoerd door een netwerkadapter of een seriële poort.

Een voorbeeld van een fysiek laagprotocol is de specificatie van 10Base-T Ethernet-technologie, die de kabel definieert die wordt gebruikt als een categorie 3 niet-afgeschermd getwist paar met een karakteristieke impedantie van 100 ohm, een RJ-45-connector, een maximale fysieke segmentlengte van 100 meters, een Manchester-code voor het weergeven van gegevens op een kabel en andere kenmerken van de omgeving en elektrische signalen.

Link laag Op de fysieke laag worden gewoon bits verzonden. Hierbij wordt geen rekening gehouden met het feit dat in sommige netwerken waarin communicatielijnen afwisselend worden gebruikt (gedeeld) door meerdere paren op elkaar inwerkende computers, het fysieke transmissiemedium bezet kan zijn. Daarom is een van de taken van de verbindingslaag het controleren van de beschikbaarheid van het transmissiemedium. Een andere taak van de linklaag is het implementeren van foutdetectie- en correctiemechanismen. Om dit te doen, worden op de datalinklaag bits gegroepeerd in sets die frames worden genoemd. De linklaag zorgt ervoor dat elk frame correct wordt verzonden door een speciale reeks bits aan het begin en einde van elk frame te plaatsen om het te markeren, en berekent ook een controlesom door alle bytes van het frame op een bepaalde manier op te tellen en een controlesom toe te voegen naar het kozijn. Wanneer een frame arriveert, berekent de ontvanger opnieuw de checksum van de ontvangen data en vergelijkt het resultaat met de checksum van het frame. Als ze overeenkomen, wordt het frame als geldig beschouwd en geaccepteerd. Als de checksums niet overeenkomen, wordt er een fout gegenereerd.

De verbindingslaagprotocollen die in lokale netwerken worden gebruikt, hebben een bepaalde structuur van verbindingen tussen computers en manieren om deze aan te pakken. Hoewel de linklaag zorgt voor de levering van een frame tussen twee willekeurige knooppunten van het lokale netwerk, doet hij dit alleen in een netwerk met een volledig gedefinieerde linktopologie, precies de topologie waarvoor deze is ontworpen. Veelgebruikte bus-, ring- en stertopologieën die worden ondersteund door LAN-linklaagprotocollen zijn veelgebruikte topologieën. Voorbeelden van verbindingslaagprotocollen zijn Ethernet-, Token Ring-, FDDI-, 100VG-AnyLAN-protocollen.

In LAN's worden link-layer-protocollen gebruikt door computers, bridges, switches en routers. In computers worden de functies van de linklaag geïmplementeerd door de gezamenlijke inspanningen van netwerkadapters en hun stuurprogramma's.

In wide area-netwerken, die zelden een reguliere topologie hebben, zorgt de datalinklaag voor de uitwisseling van berichten tussen twee naburige computers die via een individuele communicatielijn zijn verbonden. Voorbeelden van point-to-point-protocollen (zoals dergelijke protocollen vaak worden genoemd) zijn de veelgebruikte PPP- en LAP-B-protocollen.

Netwerkniveau Dit niveau dient om één transportsysteem te vormen dat verschillende netwerken combineert met verschillende principes voor het verzenden van informatie tussen eindknooppunten. Beschouw de functies van de netwerklaag op het voorbeeld van lokale netwerken. Het verbindingslaagprotocol van lokale netwerken zorgt voor de levering van gegevens tussen alle knooppunten, alleen in een netwerk met een geschikte typische topologie. Dit is een zeer strikte beperking die het niet mogelijk maakt om netwerken met een ontwikkelde structuur te bouwen, bijvoorbeeld netwerken die verschillende bedrijfsnetwerken combineren in een enkel netwerk, of zeer betrouwbare netwerken met redundante verbindingen tussen knooppunten. Om enerzijds de eenvoud van gegevensoverdrachtprocedures voor typische topologieën te behouden en anderzijds het gebruik van willekeurige topologieën mogelijk te maken, wordt een extra netwerklaag gebruikt. Op dit niveau wordt het begrip "netwerk" geïntroduceerd. In dit geval wordt een netwerk opgevat als een set computers die onderling zijn verbonden in overeenstemming met een van de standaard typische topologieën en met behulp van een van de verbindingslaagprotocollen die voor deze topologie zijn gedefinieerd voor gegevensoverdracht.

Binnen het netwerk wordt de levering van gegevens dus geregeld door de verbindingslaag, maar de levering van gegevens tussen netwerken wordt afgehandeld door de netwerklaag.

Netwerklaagberichten worden aangeroepen pakketjes. Bij het organiseren van pakketbezorging op netwerkniveau wordt het concept gebruikt "netwerknummer". In dit geval bestaat het adres van de ontvanger uit het netwerknummer en het nummer van de computer op dat netwerk.

Netwerken zijn onderling verbonden door speciale apparaten die routers worden genoemd. router is een apparaat dat informatie verzamelt over de topologie van onderlinge verbindingen en op basis daarvan netwerklaagpakketten doorstuurt naar het doelnetwerk. Om een ​​bericht over te dragen van een zender die zich in het ene netwerk bevindt naar een ontvanger die zich in een ander netwerk bevindt, is het nodig om een ​​bepaald aantal transittransmissies (hops) tussen netwerken uit te voeren, waarbij telkens de juiste route wordt gekozen. Een route is dus een reeks routers waar een pakket doorheen gaat.

Het probleem van het kiezen van het beste pad heet routering en de oplossing ervan is de hoofdtaak van de netwerklaag. Dit probleem wordt nog verergerd door het feit dat de kortste weg niet altijd de beste is. Het criterium voor het kiezen van een route is vaak het tijdstip van gegevensoverdracht langs deze route, het hangt af van de bandbreedte van communicatiekanalen en verkeersintensiteit, die in de loop van de tijd kunnen veranderen. Sommige routeringsalgoritmen proberen zich aan te passen aan veranderingen in de belasting, terwijl andere beslissingen nemen op basis van langetermijngemiddelden. Routekeuze kan ook gebaseerd zijn op andere criteria, zoals transmissiebetrouwbaarheid.

De netwerklaag definieert twee soorten protocollen. Het eerste type verwijst naar de definitie van regels voor de overdracht van pakketten met gegevens van eindknooppunten van een knooppunt naar een router en tussen routers. Het zijn deze protocollen waarnaar meestal wordt verwezen als het over netwerklaagprotocollen gaat. De netwerklaag bevat ook een ander type protocol genaamd protocollen voor routering van informatie-uitwisseling. Deze protocollen worden door routers gebruikt om informatie te verzamelen over de topologie van onderlinge verbindingen. Netwerklaagprotocollen worden geïmplementeerd door softwaremodules van het besturingssysteem, evenals door software en hardware van routers.

Voorbeelden van netwerklaagprotocollen zijn het IP Internetworking Protocol van de TCP/IP-stack en het IPX Packet Internetworking Protocol van de Novell-stack.

Transportlaag Op de weg van de afzender naar de ontvanger kunnen pakketten beschadigd raken of verloren gaan. Hoewel sommige applicaties hun eigen foutafhandeling hebben, zijn er enkele die er de voorkeur aan geven om meteen met een betrouwbare verbinding af te rekenen. Het is de taak van de transportlaag om ervoor te zorgen dat de applicaties of bovenste lagen van de stapel - applicatie en sessie - gegevens verzenden met de mate van betrouwbaarheid die ze nodig hebben. Het OSI-model definieert vijf serviceklassen die door de transportlaag worden geleverd. Dit soort diensten verschillen in de kwaliteit van de geleverde diensten: urgentie, de mogelijkheid om onderbroken communicatie te herstellen, de beschikbaarheid van multiplexfaciliteiten voor meerdere verbindingen tussen verschillende applicatieprotocollen via een gemeenschappelijk transportprotocol, en vooral het vermogen om te detecteren en te corrigeren transmissiefouten, zoals vervorming, verlies en duplicatie van pakketten.

De keuze van de serviceklasse van de transportlaag wordt enerzijds bepaald door de mate waarin de taak om de betrouwbaarheid te waarborgen wordt opgelost door de applicaties zelf en protocollen die hoger zijn dan de transportlagen, en anderzijds door deze keuze hangt af van hoe betrouwbaar het gehele datatransportsysteem online is. Dus, bijvoorbeeld, als de kwaliteit van communicatiekanalen erg hoog is, en de kans op optreden van fouten die niet worden gedetecteerd door lagere laagprotocollen klein is, dan is het redelijk om een ​​van de lichtgewicht transportlaagdiensten te gebruiken die niet belast zijn met talloze controles, handshaking en andere methoden om de betrouwbaarheid te verbeteren. Als de voertuigen in eerste instantie erg onbetrouwbaar zijn, is het raadzaam om zich te wenden tot de meest ontwikkelde transportlaagservice die werkt met de maximale middelen voor het detecteren en elimineren van fouten - door vooraf een logische verbinding tot stand te brengen, controle van berichtbezorging met behulp van checksums en cyclische het nummeren van pakketten, het vaststellen van levertijden, enz.

In de regel worden alle protocollen, beginnend vanaf de transportlaag en hoger, geïmplementeerd door de software van de eindknooppunten van het netwerk - componenten van hun netwerkbesturingssystemen. Voorbeelden van transportprotocollen zijn de TCP- en UDP-protocollen van de TCP/IP-stack en het SPX-protocol van de Novell-stack.

Sessielaag De sessielaag biedt conversatiecontrole om bij te houden welke kant momenteel actief is en biedt ook een middel voor synchronisatie. Met deze laatste kun je checkpoints invoegen in lange transfers, zodat je in geval van storing terug kunt gaan naar het laatste checkpoint, in plaats van helemaal opnieuw te beginnen. In de praktijk gebruiken maar weinig applicaties de sessielaag en wordt deze zelden geïmplementeerd.

Presentatielaag Deze laag geeft de zekerheid dat de informatie die door de applicatielaag wordt doorgegeven, ook door de applicatielaag in een ander systeem wordt begrepen. Indien nodig voert de presentatielaag de transformatie uit van gegevensformaten in een gemeenschappelijk presentatieformaat, en bij de receptie voert dienovereenkomstig de omgekeerde transformatie uit. Zo kunnen applicatielagen bijvoorbeeld syntactische verschillen in datarepresentatie overwinnen. Op dit niveau kunnen gegevensversleuteling en -ontsleuteling worden uitgevoerd, waardoor de geheimhouding van gegevensuitwisseling onmiddellijk wordt gegarandeerd voor alle applicatiediensten. Een voorbeeld van een protocol dat op de presentatielaag werkt, is het SSL-protocol (Secure Socket Layer), dat beveiligde berichtenuitwisseling biedt voor de applicatielaagprotocollen van de TCP/IP-stack.

Applicatielaag De applicatielaag is eigenlijk niet meer dan een set van verschillende protocollen waarmee netwerkgebruikers toegang krijgen tot gedeelde bronnen zoals bestanden, printers of hypertext webpagina's, en hun samenwerking organiseren, bijvoorbeeld met behulp van het e-mailprotocol. De eenheid van gegevens waarop de applicatielaag werkt, wordt meestal genoemd bericht .

Er is een zeer grote verscheidenheid aan applicatielaagprotocollen. Hier zijn slechts enkele voorbeelden van de meest voorkomende implementaties van bestandsservices: NCP in het Novell NetWare-besturingssysteem, SMB in Microsoft Windows NT, NFS, FTP en TFTP, die deel uitmaken van de TCP/IP-stack.

Het OSI-model, hoewel erg belangrijk, is slechts een van de vele communicatiemodellen. Deze modellen en de bijbehorende protocolstapels kunnen verschillen in het aantal lagen, hun functies, berichtformaten, diensten die op de bovenste lagen worden geleverd en andere parameters.

Kenmerk van populaire stapels communicatieprotocollen

De interactie van computers in netwerken vindt dus plaats in overeenstemming met bepaalde regels voor het uitwisselen van berichten en hun formaten, dat wil zeggen in overeenstemming met bepaalde protocollen. Een hiërarchisch georganiseerde reeks protocollen die het probleem van interactie tussen netwerkknooppunten oplossen, wordt een stapel communicatieprotocollen genoemd.

Er zijn veel protocolstacks die veel worden gebruikt in netwerken. Dit zijn stapels, die internationale en nationale normen zijn, en stapels met een merk, die wijdverbreid zijn geworden door de wijdverbreide uitrusting van een bepaald bedrijf. Voorbeelden van populaire protocolstacks zijn Novell's IPX/SPX-stack, de TCP/IP-stack die wordt gebruikt op internet en veel netwerken op basis van het UNIX-besturingssysteem, de OSI-stack van de International Standards Organization, de DECnet-stack van Digital Equipment Corporation en nog enkele andere.

Het gebruik van een of andere stapel communicatieprotocollen in het netwerk bepaalt grotendeels het gezicht van het netwerk en zijn kenmerken. In kleine netwerken kan slechts één stapel worden gebruikt. In grote bedrijfsnetwerken die verschillende netwerken combineren, worden in de regel meerdere stapels parallel gebruikt.

Communicatieapparatuur implementeert lagere-laagprotocollen die meer gestandaardiseerd zijn dan hogere-laagprotocollen, en dit is een voorwaarde voor succesvolle interoperabiliteit tussen apparatuur van verschillende fabrikanten. De lijst met protocollen die door een bepaald communicatieapparaat worden ondersteund, is een van de belangrijkste kenmerken van dit apparaat.

Computers implementeren communicatieprotocollen in de vorm van corresponderende software-elementen van het netwerkbesturingssysteem. Protocollen op verbindingsniveau worden bijvoorbeeld gewoonlijk geïmplementeerd als stuurprogramma's voor netwerkadapters en protocollen op het hoogste niveau hebben de vorm van server- en clientcomponenten van netwerkdiensten.

Het vermogen om goed te werken in de omgeving van een bepaald besturingssysteem is een belangrijk kenmerk van communicatieapparatuur. Vaak lees je in advertenties voor een netwerkadapter of hub dat deze speciaal is ontworpen om op een NetWare- of UNIX-netwerk te werken. Dit betekent dat de hardwareontwikkelaars de prestaties hebben geoptimaliseerd voor de protocollen die in dit netwerkbesturingssysteem worden gebruikt, of voor deze versie van hun implementatie, als deze protocollen in verschillende besturingssystemen worden gebruikt. Vanwege de eigenaardigheden van de implementatie van protocollen in verschillende besturingssystemen, is een van de kenmerken van communicatieapparatuur de certificering voor het vermogen om in de omgeving van dit besturingssysteem te werken.

Op de lagere niveaus - fysiek en kanaal - gebruiken bijna alle stapels dezelfde protocollen. Dit zijn goed gestandaardiseerde Ethernet-, Token Ring-, FDDI- en enkele andere protocollen die het gebruik van dezelfde apparatuur in alle netwerken mogelijk maken.

De protocollen van het netwerk en hogere lagen van de bestaande standaardstacks zijn zeer divers en komen in de regel niet overeen met de gelaagdheid die wordt aanbevolen door het ISO-model. Met name in deze stapels worden de functies van de sessie- en presentatielaag meestal gecombineerd met de applicatielaag. Deze discrepantie is te wijten aan het feit dat het ISO-model is ontstaan ​​als resultaat van een veralgemening van reeds bestaande en daadwerkelijk gebruikte stacks, en niet omgekeerd.

OSI-stack

Er moet onderscheid worden gemaakt tussen de OSI-protocolstack en het OSI-model. Terwijl het OSI-model conceptueel de procedure voor de interactie van open systemen definieert, de taak opdeelt in 7 niveaus, het doel van elk niveau standaardiseert en standaardnamen voor de niveaus introduceert, is de OSI-stack een reeks zeer specifieke protocolspecificaties die een overeengekomen protocolstapel. Deze protocolstack wordt ondersteund door de Amerikaanse overheid in haar GOSIP-programma. Alle computernetwerken die na 1990 in overheidsgebouwen zijn geïnstalleerd, moeten de OSI-stack rechtstreeks ondersteunen of de middelen bieden om in de toekomst naar die stapel te migreren. De OSI-stack is echter populairder in Europa dan in de VS, omdat er in Europa minder oude netwerken zijn geïnstalleerd die hun eigen protocollen gebruiken. Er is ook een sterke behoefte aan een gemeenschappelijke stapel in Europa, aangezien er een groot aantal verschillende landen zijn.

Dit is een internationale, fabrikantonafhankelijke norm. Het kan interoperabiliteit bieden tussen bedrijven, partners en leveranciers. Deze interactie wordt bemoeilijkt door problemen met adressering, naamgeving en gegevensbeveiliging. Al deze problemen in de OSI-stack zijn gedeeltelijk opgelost. De OSI-protocollen vereisen veel CPU-verwerkingskracht, waardoor ze meer geschikt zijn voor geavanceerde machines in plaats van pc-netwerken. De meeste organisaties plannen voorlopig de overgang naar de OSI-stack. Onder degenen die in deze richting werken, zijn de Amerikaanse marine en NFSNET. Een van de grootste fabrikanten die OSI ondersteunt, is AT&T. Het Stargroup-netwerk is volledig gebaseerd op de OSI-stack.

Om voor de hand liggende redenen voldoet de OSI-stack, in tegenstelling tot andere standaardstacks, volledig aan het OSI-interoperabiliteitsmodel, het bevat specificaties voor alle zeven lagen van het Open Systems Interconnection Model (Figuur 1.3).


Rijst. 1.3. OSI-stack

Op de De OSI-stack ondersteunt Ethernet-, Token Ring-, FDDI-, LLC-, X.25- en ISDN-protocollen. Deze protocollen zullen in andere delen van de handleiding in detail worden besproken.

Diensten netwerk, vervoer en sessie niveaus zijn ook beschikbaar in de OSI-stack, maar ze zijn niet erg gebruikelijk. De netwerklaag implementeert zowel verbindingsloze als verbindingsloze protocollen. Het transportprotocol van de OSI-stack, in overeenstemming met de functies die daarvoor in het OSI-model zijn gedefinieerd, verbergt de verschillen tussen verbindingsgerichte en verbindingsloze netwerkdiensten, zodat gebruikers ongeacht de onderliggende netwerklaag de gewenste servicekwaliteit krijgen. Om dit te waarborgen, vereist de transportlaag dat de gebruiker de gewenste servicekwaliteit specificeert. Er zijn 5 klassen van transportdiensten gedefinieerd, van de laagste klasse 0 tot de hoogste klasse 4, die verschillen in de mate van fouttolerantie en vereisten voor gegevensherstel na fouten.

Diensten toepassingslaag omvatten bestandsoverdracht, terminalemulatie, directoryservice en e-mail. Hiervan zijn de meest veelbelovende de directoryservice (X.500-standaard), e-mail (X.400), virtual terminal-protocol (VT), file transfer, access and control protocol (FTAM), transfer en job control protocol ( JTM). Onlangs heeft ISO zijn inspanningen gericht op diensten op het hoogste niveau.

X.400

is een reeks aanbevelingen van het International Consultative Committee on Telegraphy and Telephony (CCITT) die systemen voor het doorsturen van elektronische berichten beschrijven. Tot op heden zijn X.400-aanbevelingen het populairste berichtenprotocol. De X.400-aanbevelingen beschrijven het model van het berichtensysteem, de protocollen voor interactie tussen alle componenten van dit systeem, evenals de vele soorten berichten en de mogelijkheden die de afzender heeft voor elk type bericht dat wordt verzonden.

De X.400-aanbevelingen definiëren de volgende minimaal vereiste reeks services die aan gebruikers moeten worden geleverd: toegangscontrole, onderhoud van unieke systeembericht-ID's, berichtbezorging of niet-bezorgingsmelding met reden, indicatie van het type berichtinhoud, indicatie van transformatie van berichtinhoud, verzending en bezorgtijdstempels, het selecteren van een bezorgingscategorie (spoedeisend, niet-dringend, normaal), multicast-bezorging, vertraagde bezorging (tot een bepaald tijdstip), contentconversie om samen te werken met incompatibele mailsystemen, zoals telex- en faxdiensten, bevraging of een bepaald bericht is afgeleverd, mailinglijsten, die een geneste structuur kunnen hebben, middelen om berichten te beschermen tegen ongeautoriseerde toegang, op basis van een asymmetrisch cryptosysteem met openbare sleutel.

Het doel van de aanbevelingen X.500 is de ontwikkeling van wereldwijde helpdeskstandaarden. Het proces van het afleveren van een bericht vereist kennis van het adres van de ontvanger, wat een probleem is met grote netwerken, dus het is noodzakelijk om een ​​helpdesk te hebben om u te helpen de adressen van afzenders en ontvangers te krijgen. Over het algemeen is een X.500-service een gedistribueerde database met namen en adressen. Alle gebruikers komen mogelijk in aanmerking om in te loggen op deze database met een bepaalde set attributen.

De volgende bewerkingen zijn gedefinieerd in de database met namen en adressen:

  • lezen - een adres krijgen met een bekende naam,
  • query - een naam krijgen van bekende adresattributen,
  • wijziging, inclusief het verwijderen en toevoegen van records in de database.

De belangrijkste uitdagingen bij het implementeren van de X.500-aanbevelingen vloeien voort uit de reikwijdte van dit project, dat beweert een wereldwijde referentiedienst te zijn. Daarom is software die X.500-aanbevelingen implementeert erg omslachtig en stelt hoge eisen aan de hardwareprestaties.

Protocol VT lost het probleem van incompatibiliteit tussen verschillende terminalemulatieprotocollen op. Momenteel moet de gebruiker van een IBM PC-compatibele personal computer drie verschillende programma's aanschaffen om terminals van verschillende typen te emuleren en verschillende protocollen te gebruiken om gelijktijdig te kunnen werken met de VAX-, IBM 3090- en HP9000-computers. Als elke hostcomputer ISO-zou hebben, zou de gebruiker slechts één programma nodig hebben dat het VT-protocol ondersteunt. In zijn standaard heeft ISO de veelgebruikte functies voor terminalemulatie verzameld.

Bestandsoverdracht is de meest voorkomende computerservice. Alle toepassingen hebben toegang tot bestanden, zowel lokaal als op afstand, nodig - teksteditors, e-mail, databases of externe opstartprogramma's. ISO voorziet in een dergelijke dienst in het protocol FTAM. Samen met de X.400-standaard is dit de meest populaire standaard in de OSI-stack. FTAM biedt faciliteiten voor het lokaliseren en openen van bestandsinhoud en omvat een reeks richtlijnen voor het invoegen, vervangen, uitbreiden en wissen van bestandsinhoud. FTAM biedt ook faciliteiten voor het manipuleren van een bestand als geheel, inclusief het maken, verwijderen, lezen, openen, sluiten van een bestand en het selecteren van de kenmerken ervan.

Protocol voor overdracht en taakbeheer JTM stelt gebruikers in staat taken in te dienen die op de hostcomputer moeten worden voltooid. De taakbesturingstaal, die taakoverdracht mogelijk maakt, vertelt de hostcomputer wat hij moet doen en met welke programma's en bestanden. Het JTM-protocol ondersteunt traditionele batchverwerking, transactieverwerking, taakinvoer op afstand en toegang tot gedistribueerde databases.

TCP/IP-stack

De TCP/IP-stack, ook wel de DoD-stack en de internetstack genoemd, is een van de meest populaire en veelbelovende communicatieprotocolstacks. Als het momenteel voornamelijk in UNIX-netwerken wordt gedistribueerd, is de implementatie ervan in de nieuwste versies van netwerkbesturingssystemen voor personal computers (Windows NT, NetWare) een goede voorwaarde voor de snelle groei van het aantal installaties van de TCP/IP-stack .

De stack is meer dan 20 jaar geleden ontwikkeld op initiatief van het Amerikaanse ministerie van Defensie (DoD) om het experimentele ARPAnet-netwerk te verbinden met andere satellietnetwerken als een set gemeenschappelijke protocollen voor een heterogene computeromgeving. Het ARPA-netwerk ondersteunde ontwikkelaars en onderzoekers op militair gebied. In het ARPA-netwerk werd de communicatie tussen twee computers uitgevoerd met behulp van het internetprotocol (IP), dat tot op de dag van vandaag een van de belangrijkste is in de TCP / IP-stack en wordt weergegeven in de naam van de stapel.

De University of Berkeley heeft een grote bijdrage geleverd aan de ontwikkeling van de TCP/IP-stack door de stack-protocollen te implementeren in haar versie van het UNIX-besturingssysteem. De wijdverbreide acceptatie van het UNIX-besturingssysteem leidde tot de wijdverbreide acceptatie van het IP-protocol en andere stapelprotocollen. Deze stack wordt ook gebruikt door internet, waarvan de Internet Engineering Task Force (IETF) de belangrijkste bijdrage levert aan de ontwikkeling van de standaarden van de stack, gepubliceerd in de vorm van RFC-specificaties.

Aangezien de TCP/IP-stack werd ontwikkeld vóór de komst van het ISO/OSI Open Systems Interconnection-model, hoewel het ook een gelaagde structuur heeft, is de overeenkomst tussen de niveaus van de TCP/IP-stack en de niveaus van het OSI-model nogal willekeurig .

De structuur van de TCP/IP-protocollen is weergegeven in figuur 1.4. TCP/IP-protocollen zijn verdeeld in 4 lagen.

Rijst. 1.4. TCP/IP-stack

laagste ( niveau IV ) - het niveau van gateway-interfaces - komt overeen met de fysieke en datalinklagen van het OSI-model. Dit niveau is niet gereguleerd in TCP/IP-protocollen, maar het ondersteunt alle populaire fysieke en datalink-niveaustandaarden: voor lokale kanalen is dit Ethernet, Token Ring, FDDI; point-to-point-verbindingen via WAN-seriële verbindingen en X.25 en ISDN-netwerkprotocollen. Er is ook een speciale specificatie ontwikkeld die het gebruik van ATM-technologie als linklaagtransport definieert.

Volgende niveau ( niveau III ) is de internetwerklaag die zich bezighoudt met de verzending van datagrammen met behulp van verschillende lokale netwerken, X.25 territoriale netwerken, speciale communicatielijnen, enz. Als het belangrijkste protocol van de netwerklaag (in termen van het OSI-model), het gebruikte protocol in de stapel is IK P, dat oorspronkelijk was ontworpen als een protocol voor het verzenden van pakketten in samengestelde netwerken, bestaande uit een groot aantal lokale netwerken, verenigd door zowel lokale als wereldwijde verbindingen. Daarom werkt het IP-protocol goed in netwerken met een complexe topologie, waarbij rationeel gebruik wordt gemaakt van de aanwezigheid van subsystemen daarin en economisch de bandbreedte van communicatielijnen met lage snelheid wordt verbruikt. Het IP-protocol is een datagramprotocol.

De internetworking-laag omvat ook alle protocollen die te maken hebben met het samenstellen en wijzigen van routeringstabellen, zoals protocollen voor het verzamelen van routeringsinformatie. RUST IN VREDE(Routing Internet Protocol) en OSPF(Open Shortest Path First), evenals het Internet Control Message Protocol ICMP(Internet Control Message Protocol). Dit laatste protocol is bedoeld om informatie uit te wisselen over fouten tussen de router en de gateway, het bronsysteem en het ontvangstsysteem, dat wil zeggen om feedback te organiseren. Met behulp van speciale ICMP-pakketten wordt gerapporteerd over de onmogelijkheid om een ​​pakket af te leveren, over het overschrijden van de levensduur of duur van de pakketsamenstelling uit fragmenten, over afwijkende parameterwaarden, over het wijzigen van de doorstuurroute en het type service, over de status van het systeem enz.

Volgende niveau ( niveau II) wordt basis genoemd. Het transmissiecontroleprotocol werkt op dit niveau. TCP(Transmission Control Protocol) en User Datagram Protocol UDP(Gebruikersdatagramprotocol). Het TCP-protocol zorgt voor een stabiele virtuele verbinding tussen applicatieprocessen op afstand. Het UDP-protocol zorgt voor de overdracht van applicatiepakketten met behulp van de datagrammethode, dat wil zeggen zonder een virtuele verbinding tot stand te brengen, en vereist daarom minder overhead dan TCP.

Top niveau ( niveau I) wordt toegepast genoemd. In de loop der jaren van gebruik in de netwerken van verschillende landen en organisaties heeft de TCP / IP-stack een groot aantal protocollen en services op applicatieniveau verzameld. Deze omvatten veelgebruikte protocollen zoals het FTP-bestandskopieerprotocol, het telnet-terminalemulatieprotocol, het SMTP-mailprotocol dat wordt gebruikt in internet-e-mail en de Russische tak RELCOM, hypertext-services voor toegang tot externe informatie, zoals WWW en vele andere. Laten we dieper ingaan op enkele ervan, die het nauwst verband houden met het onderwerp van deze cursus.

Protocol SNMP(Simple Network Management Protocol) wordt gebruikt om netwerkbeheer te organiseren. Het regelprobleem is hier opgedeeld in twee taken. De eerste taak heeft betrekking op de overdracht van informatie. Protocollen voor de overdracht van besturingsinformatie definiëren de procedure voor interactie tussen de server en het clientprogramma dat op de host van de beheerder wordt uitgevoerd. Ze definiëren de berichtformaten die worden uitgewisseld tussen clients en servers, evenals de formaten voor namen en adressen. De tweede taak heeft betrekking op gecontroleerde gegevens. De normen bepalen welke gegevens in de gateways moeten worden opgeslagen en verzameld, de namen van deze gegevens en de syntaxis van deze namen. De SNMP-standaard definieert de specificatie van de netwerkbeheerinformatiedatabase. Deze specificatie, bekend als de Management Information Base (MIB), definieert de gegevenselementen die een host of gateway moet opslaan en de toegestane bewerkingen daarop.

Protocol voor bestandsoverdracht FTP(File Transfer Protocol) implementeert externe bestandstoegang. Om een ​​betrouwbare overdracht te garanderen, gebruikt FTP het verbindingsgerichte protocol - TCP - als transport. Naast het protocol voor bestandsoverdracht biedt FTP nog andere diensten. Dus de gebruiker krijgt de mogelijkheid om interactief te werken met een externe machine, hij kan bijvoorbeeld de inhoud van zijn mappen afdrukken, FTP stelt de gebruiker in staat om het type en formaat van de opgeslagen gegevens te specificeren. Ten slotte voert FTP gebruikersauthenticatie uit. Gebruikers zijn volgens het protocol verplicht om hun gebruikersnaam en wachtwoord op te geven voordat ze toegang krijgen tot het bestand.

Binnen de TCP/IP-stack biedt FTP de meest uitgebreide bestandsservices, maar is ook het meest complex om te programmeren. Toepassingen die niet alle functies van FTP nodig hebben, kunnen een ander, voordeliger protocol gebruiken - het eenvoudigste protocol voor bestandsoverdracht TFTP(Trivial File Transfer Protocol). Dit protocol implementeert alleen bestandsoverdracht en het verbindingsloze protocol, UDP, dat eenvoudiger is dan TCP, wordt gebruikt als transport.

Protocol telnet biedt een stroom van bytes tussen processen en tussen een proces en een terminal. Meestal wordt dit protocol gebruikt om de terminal van een externe computer te emuleren.

IPX/SPX-stack

Deze stack is de originele protocolstack van Novell die het in het begin van de jaren tachtig voor zijn NetWare-netwerkbesturingssysteem heeft ontwikkeld. De protocollen Internetwork Packet Exchange (IPX) en Sequenced Packet Exchange (SPX) waaraan de stack zijn naam ontleent, zijn directe aanpassingen van de XNS-protocollen van Xerox, die veel minder vaak voorkomen dan IPX/SPX. IPX/SPX-protocollen zijn toonaangevend op het gebied van installaties, en dit is te wijten aan het feit dat het NetWare-besturingssysteem zelf de leiding heeft met een aandeel van installaties op een wereldwijde schaal van ongeveer 65%.

De familie van Novell-protocollen en hun overeenkomst met het ISO/OSI-model wordt weergegeven in afbeelding 1.5.

Rijst. 1.5. IPX/SPX-stack

Op de fysieke en datalinklagen Novell-netwerken gebruiken alle populaire protocollen van deze niveaus (Ethernet, Token Ring, FDDI en andere).

Op de netwerklaag protocol dat op Novell-stack draait IPX, evenals protocollen voor het routeren van informatie-uitwisseling RUST IN VREDE En NLSP(vergelijkbaar met het OSPF-protocol van de TCP/IP-stack). IPX is het protocol dat zich bezighoudt met de adressering en routering van pakketten op Novell-netwerken. De routeringsbeslissingen van IPX zijn gebaseerd op de adresvelden in de pakketkop, evenals informatie uit protocollen voor de uitwisseling van routeringsinformatie. IPX gebruikt bijvoorbeeld informatie die wordt geleverd door RIP of NetWare Link State Protocol (NLSP) om pakketten door te sturen naar de doelcomputer of de volgende router. Het IPX-protocol ondersteunt alleen datagramberichten, wat computerbronnen bespaart. Het IPX-protocol vervult dus drie functies: het adres instellen, de route bepalen en datagrammen uitzenden.

De transportlaag van het OSI-model in de Novell-stack komt overeen met het SPX-protocol, dat verbindingsgerichte berichtenuitwisseling implementeert.

Bovenop applicatie-, presentatie- en sessieniveaus NCP- en SAP-protocollen werken. Protocol NCP(NetWare Core Protocol) is een protocol voor communicatie tussen een NetWare-server en een werkstationshell. Dit applicatielaagprotocol implementeert een client-server-architectuur op de bovenste lagen van het OSI-model. Met behulp van de functies van dit protocol maakt een werkstation verbinding met een server, wijst servermappen toe aan lokale stationsletters, scant het bestandssysteem van de server, kopieert externe bestanden, wijzigt hun kenmerken, enz., en deelt ook een netwerkprinter tussen werkstations.

(Service Advertising Protocol) - serviceaankondigingsprotocol - conceptueel vergelijkbaar met het RIP-protocol. Net zoals het RIP-protocol routers in staat stelt routeringsinformatie uit te wisselen, stelt het SAP-protocol netwerkapparaten in staat om informatie uit te wisselen over beschikbare netwerkservices.

Servers en routers gebruiken SAP om reclame te maken voor hun services en netwerkadressen. Met het SAP-protocol kunnen netwerkapparaten voortdurend bijwerken welke services momenteel beschikbaar zijn op het netwerk. Bij het opstarten gebruiken servers SAP om hun diensten aan de rest van het netwerk te adverteren. Wanneer de server wordt afgesloten, gebruikt deze SAP om het netwerk te melden dat de service is beëindigd.

Op Novell-netwerken verzenden NetWare 3.x-servers elke minuut SAP-broadcastpakketten. SAP-pakketten vervuilen het netwerk in hoge mate, dus een van de belangrijkste taken van routers die naar wereldwijde koppelingen gaan, is het filteren van het verkeer van SAP-pakketten en RIP-pakketten.

De eigenaardigheden van de IPX/SPX-stack zijn te wijten aan de eigenaardigheden van het NetWare-besturingssysteem, namelijk de oriëntatie van de vroege versies (tot 4.0) om te werken in kleine lokale netwerken, bestaande uit personal computers met bescheiden middelen. Daarom had Novell protocollen nodig die een minimale hoeveelheid RAM vereisten (beperkt tot 640 KB op IBM-compatibele computers met MS-DOS) om te implementeren en die snel zouden werken op processors met een lage verwerkingskracht. Als gevolg hiervan werkten de protocollen van de IPX/SPX-stack tot voor kort goed in lokale netwerken en niet zo goed in grote bedrijfsnetwerken, omdat ze langzame wereldwijde verbindingen overbelasten met broadcast-pakketten die intensief worden gebruikt door verschillende protocollen van deze stack (bijvoorbeeld , om communicatie tussen clients en servers tot stand te brengen).

Deze omstandigheid, en het feit dat de IPX/SPX-stack eigendom is van Novell en moet worden gelicentieerd door Novell, heeft de distributie ervan tot NetWare-netwerken lange tijd beperkt. Tegen de tijd dat NetWare 4.0 werd uitgebracht, had Novell echter grote wijzigingen aangebracht in de protocollen om ze geschikt te maken voor bedrijfsnetwerken, en dat gaat nog steeds door. Nu is de IPX/SPX-stack niet alleen geïmplementeerd in NetWare, maar ook in verschillende andere populaire netwerkbesturingssystemen - SCO UNIX, Sun Solaris, Microsoft Windows NT.

NetBIOS/SMB-stack

Microsoft en IBM hebben samengewerkt aan netwerktools voor personal computers, dus de NetBIOS/SMB-protocolstack is hun gezamenlijke geesteskind. NetBIOS-tools verschenen in 1984 als een netwerkuitbreiding van de standaardfuncties van het IBM PC basic input / output system (BIOS) voor het IBM PC Network-netwerkprogramma, dat op applicatieniveau (Fig. 1.6) de SMB (Server Message Block ) protocol om netwerkdiensten te implementeren.

Rijst. 1.6. NetBIOS/SMB-stack

Protocol NetBIOS werkt op drie niveaus van het open systemen interactiemodel: netwerk, vervoer en sessie. NetBIOS kan een service op een hoger niveau bieden dan de IPX- en SPX-protocollen, maar heeft geen routeringsmogelijkheid. NetBIOS is dus geen netwerkprotocol in de strikte zin van het woord. NetBIOS bevat veel nuttige netwerkfuncties die kunnen worden toegeschreven aan de netwerk-, transport- en sessielagen, maar het kan niet worden gebruikt om pakketten te routeren, omdat het NetBIOS-frame-uitwisselingsprotocol niet zo'n concept als een netwerk introduceert. Dit beperkt het gebruik van het NetBIOS-protocol tot LAN's die geen subnetten hebben. NetBIOS ondersteunt zowel datagram- als verbindingsgebaseerde uitwisselingen.

Protocol MKB, overeenkomend met de applicatie- en presentatielagen van het OSI-model, regelt de interactie van het werkstation met de server. De SMB-functies omvatten de volgende bewerkingen:

  • Sessie beheer. Creëren en verbreken van een logisch kanaal tussen het werkstation en de netwerkbronnen van de bestandsserver.
  • Toegang tot bestanden. Het werkstation kan de bestandsserver aanspreken met verzoeken om mappen aan te maken en te verwijderen, bestanden aan te maken, te openen en te sluiten, bestanden te lezen en te schrijven, bestanden te hernoemen en te verwijderen, bestanden te zoeken, bestandskenmerken op te halen en in te stellen, records te blokkeren.
  • Printservice. Het werkstation kan bestanden in de wachtrij plaatsen voor afdrukken op de server en informatie over de afdrukwachtrij verkrijgen.
  • Berichtendienst. SMB ondersteunt eenvoudige berichtenuitwisseling met de volgende functies: een eenvoudig bericht verzenden; een uitzendbericht verzenden; stuur het begin van een berichtenblok; stuur de tekst van het berichtenblok; stuur het einde van het berichtenblok; verzend gebruikersnaam; de overdracht annuleren; machinenaam ophalen.

Vanwege het grote aantal toepassingen dat de API's van NetBIOS gebruikt, implementeren veel netwerkbesturingssystemen deze functies als een interface voor hun transportprotocollen. NetWare heeft een programma dat NetBIOS-functies emuleert op basis van het IPX-protocol, en er zijn NetBIOS-software-emulators voor Windows NT en de TCP/IP-stack.

Waarom hebben we deze waardevolle kennis nodig? (redactioneel)

Een collega stelde me eens een lastige vraag. Nou, zegt hij, je weet wat het OSI-model is ... En waarom heb je het nodig, wat is het praktische nut van deze kennis: is het mogelijk om te pronken voor dummies? Het is niet waar, het voordeel van deze kennis is een systematische aanpak om veel praktische problemen op te lossen. Bijvoorbeeld:

  • probleemoplossen (
probleemoplossen)

Een gebruiker (alleen een vriend) komt naar je toe als een beheerder (ervaren netwerker) en zegt - ik heb hier "maakt geen verbinding". Er is geen, zegt, netwerken en alles hier. Je begint het te begrijpen. Dus, op basis van de ervaring van het observeren van mijn buren, merkte ik dat de acties van een persoon die "zich niet bewust is van het OSI-model in zijn hart" gekenmerkt wordt door karakteristieke chaos: ofwel de draad zal trekken, of er zal plotseling iets oppikken in de browser. En dit leidt er vaak toe dat, zonder richting te gaan, zo'n "specialist" alles en overal zal trekken, behalve op het gebied van het probleem, en veel van zijn eigen en andermans tijd zal doden. Wanneer je je realiseert dat er interactieniveaus bestaan, zal de beweging consistenter zijn. En hoewel het startpunt anders kan zijn (in elk boek dat ik tegenkwam, waren de aanbevelingen iets anders), is het algemene logische uitgangspunt van probleemoplossing dit: als de interactie correct wordt uitgevoerd op X-niveau, dan op X-1 niveau is alles waarschijnlijk ook in orde. Tenminste voor elke specifieke moment tijd. Door probleemoplossing in IP-netwerken te produceren, begin ik persoonlijk te "graven" vanaf het tweede niveau van de DOD-stack, het is ook het derde niveau van OSI, het is ook internetprotocol. Ten eerste omdat het het gemakkelijkst is om een ​​"oppervlakkig onderzoek van de patiënt" uit te voeren (de patiënt zal eerder reageren dan niet reageren), en ten tweede, als hij, godzijdank, reageert, u onaangename manipulaties met testkabels kunt negeren , netwerkkaarten en showdowns en andere leuke dingen ;) Hoewel je in bijzonder moeilijke gevallen nog steeds vanaf het eerste niveau en op de meest serieuze manier moet beginnen.

  • verstandhouding met collega's

Om dit punt te illustreren, zal ik je zo'n fiets uit het leven als voorbeeld geven. Op een dag nodigden mijn vrienden van een klein bedrijf me uit om me te bezoeken om erachter te komen waarom het netwerk niet goed werkt, en om enkele aanbevelingen te doen over deze kwestie. Ik kom naar het kantoor. En ze hebben daar zelfs een admin, volgens de goede oude traditie een "programmeur" genoemd (maar in feite houdt hij zich voornamelijk bezig met FoxPro;) - een oude pre-perestroika verhardende IT-specialist. Wel, ik vraag hem, wat voor netwerk heb je? Hij: "Wat bedoel je? Nou, gewoon een netwerk." Netwerk, in het algemeen, als een netwerk. Welnu, ik heb suggestieve vragen: welk protocol wordt er op netwerkniveau gebruikt? Hij: "WAAR is dit?" Ik verduidelijk: "Nou, IP of IPX of wat dan ook..." "Oh", zegt hij, "ik denk het wel: IPX/iets anders!" Trouwens, "daar-daar-iets", zoals je misschien hebt gemerkt, bevindt zich iets hoger van het netwerkniveau, nou, dat is niet het punt ... Veelzeggend, hij heeft dit netwerk gebouwd en zelfs slecht begeleid. Het is niet verwonderlijk dat het wegkwijnde... ;) Als ik van OSI had geweten, zou ik in 5 minuten een schema hebben gekrabbeld - van 10Base-2 naar applicatieprogramma's. En ik zou niet onder de tafel hoeven te klimmen om de coaxdraden te bekijken.

  • nieuwe technologieën leren

Op dit belangrijke aspect ben ik in het voorwoord al stilgestaan ​​en ik zal het nog een keer herhalen: bij het bestuderen van een nieuw protocol moet je allereerst begrijpen a) in welke stapel(s) protocollen zijn plaats is en b) in welk deel van het stapel en met wie het van onderaf samenwerkt en met wie het van bovenaf met hem kan ... :) En hier komt volledige duidelijkheid in het hoofd uit. En de berichtformaten en API zijn anders - nou, dit is al een kwestie van technologie :)

netwerkmodel OSI(basisreferentiemodel van open systeeminteractie, eng. Open Systems Interconnection Basic Reference Model) - een abstract netwerkmodel voor communicatie en ontwikkeling van netwerkprotocollen.

Het model bestaat uit 7 boven elkaar gelegen niveaus. Lagen interageren met elkaar (verticaal) via interfaces, en kunnen interageren met een parallelle laag van een ander systeem (horizontaal) via protocollen. Elk niveau kan alleen communiceren met zijn buren en functies uitvoeren die alleen aan het niveau zijn toegewezen. Ondanks het bestaan ​​van andere modellen, ontwerpen de meeste netwerkfabrikanten tegenwoordig hun producten rond dit raamwerk.

OSI-niveaus

Elke laag van het OSI-model is verantwoordelijk voor een deel van de verwerking om gegevens voor te bereiden voor verzending via het netwerk.

Volgens het OSI-model reizen gegevens tijdens de verzending letterlijk van boven naar beneden door de lagen van het OSI-model van de verzendende computer en omhoog door de lagen van het OSI-model van de ontvangende computer. Op de ontvangende computer vindt het omgekeerde proces van inkapseling plaats. De bits komen aan op de fysieke laag van het OSI-model van de ontvangende computer. Tijdens het omhoog bewegen door de OSI-lagen van de ontvangende computer, zullen de gegevens de applicatielaag binnenkomen.

NiveauNaamBeschrijving 1Beschrijving 2
7. ToegepastDit is het niveau waarop eindgebruikers van eindgebruikers werken. Het maakt ze niet uit hoe gegevens worden verzonden, waarom en via welke plaats ... Ze zeiden "IK WIL!" - en wij, de programmeurs, moeten ze die geven. We kunnen elk netwerkspel als voorbeeld nemen: voor de speler werkt het op dit niveau.Wanneer een gebruiker gegevens wil verzenden, zoals e-mail, begint de applicatielaag met het proces van inkapseling. De applicatielaag is verantwoordelijk voor het verlenen van netwerktoegang tot applicaties. Informatie gaat door de bovenste drie lagen en wordt, bij de transportlaag, als data beschouwd.
6. Executive (Inleiding tot XML, SMB)Hier heeft de programmeur te maken met gegevens die van lagere niveaus worden ontvangen. Dit is in feite het omzetten en presenteren van gegevens in een gebruiksvriendelijke vorm.
5. Sessie (TLS, SSL-certificaten voor website, mail, NetBios)Deze laag stelt gebruikers in staat om "communicatiesessies" uit te voeren. Dat wil zeggen, het is op dit niveau dat de overdracht van pakketten transparant wordt voor de programmeur, en hij kan, zonder na te denken over de implementatie, gegevens rechtstreeks als een hele stroom overbrengen. Dit is waar de protocollen HTTP, FTP, Telnet, SMTP, enz. om de hoek komen kijken.
4. Transport (Poorten TCP, UDP)Regelt de overdracht van gegevens (netwerkpakketten). Dat wil zeggen, het controleert hun integriteit tijdens verzending, verdeelt de belasting, enz. Deze laag implementeert protocollen zoals TCP, UDP, enz. Voor ons is het van het grootste belang.Op de transportlaag worden gegevens opgesplitst in beter beheersbare segmenten, of transport-PDU's, voor een geordend transport over het netwerk. De PDU beschrijft gegevens terwijl deze van de ene laag van het OSI-model naar de andere gaan. Daarnaast bevat de transport-PDU informatie zoals poortnummers, volgnummers en handshakenummers die worden gebruikt voor betrouwbaar datatransport.
3. Netwerk (IP, ICMP-diagnoseprotocol voor netwerkcongestie)Regelt logisch netwerkadressering, routering, enz. Interessant voor ontwikkelaars van nieuwe protocollen en standaarden. IP-, IPX-, IGMP-, ICMP-, ARP-protocollen worden op dit niveau geïmplementeerd. Voornamelijk aangedreven door stuurprogramma's en besturingssystemen. Natuurlijk is het de moeite waard om hier te klimmen, maar alleen als je weet wat je doet en volledig vertrouwen in jezelf hebt.Op de netwerklaag wordt elk segment dat uit de transportlaag komt een pakket. Het pakket bevat logische adressering en andere besturingsgegevens van laag 3.
2. Kanaal (WI-FI, wat is Ethernet)Dit niveau regelt de waarneming van elektronische signalen door de logica (elektronische elementen) van hardwareapparaten. Dat wil zeggen, door op dit niveau te interageren, zet de hardware de bitstroom om in elektrische signalen en vice versa. Wij zijn er niet in geïnteresseerd, want wij ontwikkelen geen hardware, chips etc. Het niveau betreft netwerkkaarten, bridges, switches, routers, etc.Op de linklaag wordt elk pakket dat vanuit de netwerklaag aankomt een frame. Het frame bevat het fysieke adres en foutcorrectiegegevens.
1. Hardware (fysiek) (laser, elektriciteit, radio)Regelt de overdracht van fysieke signalen tussen hardwareapparaten in het netwerk. Dat wil zeggen, het regelt de overdracht van elektronen door draden. Wij zijn er niet in geïnteresseerd, want alles wat zich op dit niveau bevindt wordt aangestuurd door hardware (de implementatie van dit niveau is de taak van fabrikanten van hubs, multiplexers, repeaters en andere apparatuur). We zijn geen amateur-radiofysici, maar game-ontwikkelaars.Op fysiek niveau wordt het frame bits. Via een netwerkmedium worden bits één voor één verzonden.

We zien dat hoe hoger het niveau, hoe hoger de abstractiegraad van dataoverdracht naar het werken met de data zelf. Dit is het hele punt van het OSI-model: naarmate we hoger en hoger op de sporten van zijn ladder klimmen, geven we steeds minder om hoe gegevens worden verzonden, we raken meer en meer geïnteresseerd in de gegevens zelf, in plaats van in de middelen voor het doorgeven ervan. Wij, als programmeurs, zijn geïnteresseerd in lagen 3, 4 en 5. We moeten de tools die ze bieden gebruiken om lagen 6 en 7 te bouwen waar eindgebruikers mee kunnen werken.

netwerklaag

De OSI-netwerklaag implementeert de IP-protocollen (Internet Protocol Structure IPv4, IPv6), IPX, IGMP, ICMP, ARP.

Het is noodzakelijk om te begrijpen waarom er een behoefte was om een ​​netwerklaag te bouwen, waarom netwerken gebouwd met behulp van datalink en fysieke laagtools niet konden voldoen aan de eisen van gebruikers.

Ook is het mogelijk om een ​​complex, gestructureerd netwerk te creëren met de integratie van verschillende basisnetwerktechnologieën door middel van de link layer: hiervoor kunnen enkele soorten bridges en switches worden gebruikt. Natuurlijk wordt het verkeer in zo'n netwerk over het algemeen willekeurig gevormd, maar aan de andere kant wordt het ook gekenmerkt door enkele patronen. In de regel doen sommige gebruikers die aan een gemeenschappelijke taak werken (bijvoorbeeld medewerkers van één afdeling) in een dergelijk netwerk meestal verzoeken aan elkaar of aan een gemeenschappelijke server, en slechts soms hebben ze toegang nodig tot de bronnen van computers op een andere afdeling. Daarom worden computers op het netwerk, afhankelijk van het netwerkverkeer, in groepen verdeeld, die netwerksegmenten worden genoemd. Computers worden samengevoegd tot een groep als de meeste van hun berichten zijn bedoeld (geadresseerd) aan computers van dezelfde groep. De opdeling van het netwerk in segmenten kan door middel van bridges en switches. Ze schermen het lokale verkeer binnen een segment af door geen frames daarbuiten door te laten, behalve die welke zijn geadresseerd aan computers in andere segmenten. Zo valt een netwerk uiteen in afzonderlijke subnetten. Vanuit deze subnetten kunnen in de toekomst samengestelde netwerken van voldoende grote afmetingen worden gebouwd.

Het idee van subnetting is de basis voor het aanleggen van samengestelde netwerken.

Het netwerk heet composiet(internet of internet), als het kan worden weergegeven als een verzameling van meerdere netwerken. De netwerken waaruit een samengesteld netwerk bestaat, worden subnetten, samenstellende netwerken of gewoon netwerken genoemd, die elk op hun eigen link-layer-technologie kunnen werken (hoewel dit niet vereist is).

Maar dit idee tot leven brengen met behulp van repeaters, bruggen en schakelaars heeft zeer belangrijke beperkingen en nadelen.

    In een netwerktopologie die is gebouwd met zowel repeaters als bruggen of switches, mogen er geen lussen zijn. Inderdaad, een bridge of switch kan het probleem van het afleveren van een pakket op een bestemming alleen oplossen als er slechts één pad is tussen de afzender en de ontvanger. Hoewel tegelijkertijd de aanwezigheid van redundante koppelingen, die lussen vormen, vaak noodzakelijk is voor een betere taakverdeling en om de netwerkbetrouwbaarheid te vergroten door de vorming van redundante paden.

    Logische netwerksegmenten die zich tussen bruggen of switches bevinden, zijn slecht geïsoleerd van elkaar. Ze zijn niet immuun voor uitzendstormen. Als een station een broadcastbericht verzendt, wordt dit bericht verzonden naar alle stations van alle logische netwerksegmenten. De beheerder moet handmatig het aantal broadcast-pakketten beperken dat een node per tijdseenheid mag genereren. In principe zijn we er op de een of andere manier in geslaagd om het probleem van broadcaststorms te elimineren met behulp van het virtuele netwerkmechanisme (Debian D-Link VLAN-configuratie) dat in veel switches is geïmplementeerd. Maar in dit geval, hoewel het vrij flexibel is om groepen stations te creëren die zijn geïsoleerd door verkeer, zijn ze volledig geïsoleerd, dat wil zeggen dat knooppunten van een virtueel netwerk geen interactie kunnen hebben met knooppunten van een ander virtueel netwerk.

    In netwerken die zijn gebouwd op basis van bruggen en schakelaars, is het nogal moeilijk om het probleem van verkeerscontrole op te lossen op basis van de waarde van de gegevens in het pakket. In dergelijke netwerken is dit alleen mogelijk met behulp van aangepaste filters, waarbij de beheerder te maken heeft met de binaire weergave van de inhoud van de pakketten.

    De implementatie van het transportsubsysteem alleen door middel van de fysieke en link-lagen, waaronder bruggen en switches, leidt tot een onvoldoende flexibel, single-level adresseringssysteem: het MAC-adres wordt gebruikt als het adres van het ontvangende station - een adres dat is vast verbonden met de netwerkadapter.

Alle tekortkomingen van bruggen en schakelaars hebben alleen te maken met het feit dat ze werken met behulp van linklaagprotocollen. Het punt is dat deze protocollen het concept van een netwerkdeel (of subnet of segment) niet expliciet definiëren, dat zou kunnen worden gebruikt bij het structureren van een groot netwerk. Daarom besloten de ontwikkelaars van netwerktechnologieën om de taak van het bouwen van een samengesteld netwerk naar een nieuw niveau toe te vertrouwen - het netwerk.

In het artikel van vandaag wil ik teruggaan naar de basis en praten over OSI Open Systems Interconnectie Modellen. Dit materiaal zal nuttig zijn voor beginnende systeembeheerders en iedereen die geïnteresseerd is in het bouwen van computernetwerken.

Alle componenten van het netwerk, van het datatransmissiemedium tot de apparatuur, functioneren en werken met elkaar samen volgens een reeks regels die worden beschreven in de zogenaamde open systemen interactiemodellen.

Interactiemodel voor open systemen OSI(Open System Interconnection) is ontwikkeld door de International Standards Organization ISO (International Standards Organization).

Volgens het OSI-model zijn gegevens die van bron naar bestemming worden verzonden: zeven niveaus . Op elk niveau wordt een specifieke taak uitgevoerd, die uiteindelijk niet alleen de levering van gegevens op de eindbestemming garandeert, maar ook de overdracht ervan onafhankelijk maakt van de daarvoor gebruikte middelen. Zo wordt compatibiliteit bereikt tussen netwerken met verschillende topologieën en netwerkapparatuur.

De opdeling van alle netwerkfaciliteiten in lagen vereenvoudigt de ontwikkeling en toepassing ervan. Hoe hoger het niveau, hoe moeilijker de taak die het oplost. De eerste drie lagen van het OSI-model ( fysiek, kanaal, netwerk) zijn nauw verbonden met het netwerk en de gebruikte netwerkapparatuur. De laatste drie niveaus sessie, presentatielaag, applicatie) worden geïmplementeerd door middel van het besturingssysteem en applicatieprogramma's. transport laag fungeert als intermediair tussen beide groepen.

Voordat ze over het netwerk worden verzonden, worden de gegevens opgesplitst in: pakketjes , d.w.z. stukjes informatie die op een bepaalde manier zijn georganiseerd zodat ze begrijpelijk zijn voor ontvangende en verzendende apparaten. Bij het verzenden van gegevens wordt het pakket sequentieel verwerkt door middel van alle niveaus van het OSI-model, van de applicatielaag tot de fysieke laag. Op elke laag controleert u de informatie van die laag (genaamd pakketkop ), die nodig is voor een succesvolle overdracht van gegevens via het netwerk.

Als gevolg hiervan begint dit netwerkbericht te lijken op een meerlagige sandwich, die "eetbaar" zou moeten zijn voor de computer die het heeft ontvangen. Om dit te doen, moet u zich houden aan bepaalde regels voor de uitwisseling van gegevens tussen netwerkcomputers. Dergelijke regels heten protocollen .

Aan de ontvangende kant wordt het pakket verwerkt door middel van alle niveaus van het OSI-model in omgekeerde volgorde, beginnend bij het fysieke en eindigend met de applicatie. Op elke laag lezen de overeenkomstige middelen, geleid door het protocol van de laag, de informatie van het pakket, verwijderen vervolgens de informatie die door de verzendende kant aan het pakket is toegevoegd en verzenden het pakket door middel van de volgende laag . Wanneer het pakket de applicatielaag bereikt, wordt alle besturingsinformatie uit het pakket verwijderd en keren de gegevens terug naar hun oorspronkelijke vorm.

Laten we nu de werking van elke laag van het OSI-model in meer detail bekijken:

Fysieke laag - de laagste, daarachter bevindt zich direct het communicatiekanaal waardoor informatie wordt verzonden. Hij neemt deel aan de organisatie van de communicatie, rekening houdend met de kenmerken van het medium voor gegevensoverdracht. Het bevat dus alle informatie over het datatransmissiemedium: het niveau en de frequentie van het signaal, de aanwezigheid van interferentie, het niveau van signaalverzwakking, de kanaalweerstand, enz. Bovendien is hij degene die verantwoordelijk is voor het verzenden van de informatiestroom en het omzetten ervan in overeenstemming met bestaande coderingsmethoden. Het werk van de fysieke laag wordt in eerste instantie toegewezen aan de netwerkapparatuur.
Het is vermeldenswaard dat het met behulp van de fysieke laag is dat de bekabelde en draadloze netwerken worden gedefinieerd. In het eerste geval wordt een kabel als fysiek medium gebruikt, in het tweede geval elke vorm van draadloze communicatie, zoals radiogolven of infraroodstraling.

Link laag voert de moeilijkste taak uit - biedt gegarandeerde gegevensoverdracht met behulp van fysieke laagalgoritmen en controleert de juistheid van de ontvangen gegevens.

Voordat de dataoverdracht wordt gestart, wordt de beschikbaarheid van het datatransmissiekanaal bepaald. Informatie wordt verzonden in blokken genaamd personeel , of frames . Elk zo'n frame wordt geleverd met een reeks bits aan het einde en het begin van het blok, en wordt ook aangevuld met een controlesom. Wanneer een dergelijk blok op de verbindingslaag wordt ontvangen, moet de ontvanger de integriteit van het blok controleren en de ontvangen controlesom vergelijken met de controlesom die in de samenstelling ervan is opgenomen. Als ze overeenkomen, worden de gegevens als geldig beschouwd, anders wordt een fout hersteld en is een hertransmissie vereist. In ieder geval wordt er een signaal naar de afzender gestuurd met het resultaat van de operatie, en dit gebeurt bij elk frame. De tweede belangrijke taak van de linklaag is dus het controleren van de juistheid van de data.

De linklaag kan zowel in hardware (bijvoorbeeld met behulp van switches) als met behulp van software (bijvoorbeeld een netwerkadapterstuurprogramma) worden geïmplementeerd.

netwerklaag noodzakelijk om werkzaamheden aan gegevensoverdracht uit te voeren met een voorlopige bepaling van het optimale pad voor pakketten. Aangezien een netwerk kan bestaan ​​uit segmenten met verschillende topologieën, is de belangrijkste taak van de netwerklaag het bepalen van het kortste pad en het gelijktijdig omzetten van de logische adressen en namen van netwerkapparaten naar hun fysieke representatie. Dit proces heet routering en het belang ervan kan nauwelijks worden overschat. Met een routeringsschema dat voortdurend wordt bijgewerkt vanwege het optreden van verschillende soorten "congestie" in het netwerk, wordt de gegevensoverdracht zo snel mogelijk en met maximale snelheid uitgevoerd.

transport laag wordt gebruikt om betrouwbare gegevensoverdracht te organiseren, waardoor het verlies van informatie, de onjuistheid of duplicatie ervan wordt geëlimineerd. Tegelijkertijd wordt de naleving van de juiste volgorde bij het verzenden en ontvangen van gegevens gecontroleerd, door ze in kleinere pakketten te verdelen of ze te combineren in grotere om de integriteit van de informatie te behouden.

sessielaag is verantwoordelijk voor het creëren, onderhouden en onderhouden van een communicatiesessie gedurende de tijd die nodig is om de overdracht van de volledige hoeveelheid gegevens te voltooien. Bovendien synchroniseert het de verzending van pakketten door de levering en integriteit van het pakket te controleren. Tijdens de gegevensoverdracht worden speciale controlepunten gecreëerd. Als de zend-ontvangst mislukt, worden de ontbrekende pakketten opnieuw verzonden vanaf het dichtstbijzijnde controlepunt, waardoor de volledige hoeveelheid gegevens zo snel mogelijk kan worden overgedragen, wat over het algemeen een goede snelheid oplevert.

Presentatie laag (of, zoals het ook wel wordt genoemd, uitvoerend niveau ) intermediair is, is zijn belangrijkste taak het omzetten van gegevens van een formaat voor verzending via een netwerk naar een formaat dat begrijpelijk is voor een hoger niveau, en vice versa. Bovendien is hij verantwoordelijk voor het in één formaat brengen van gegevens: wanneer informatie wordt verzonden tussen twee totaal verschillende netwerken met een verschillend gegevensformaat, moet deze, voordat deze wordt verwerkt, in een vorm worden gebracht die begrijpelijk is voor zowel de ontvanger en de afzender. Op dit niveau worden algoritmen voor versleuteling en gegevenscompressie toegepast.

Toepassingslaag - de laatste en hoogste in het OSI-model. Verantwoordelijk voor netwerkcommunicatie met gebruikers - applicaties die informatie nodig hebben van netwerkdiensten op alle niveaus. Hiermee kunt u alles te weten komen wat er is gebeurd tijdens de gegevensoverdracht, evenals informatie over fouten die zijn opgetreden tijdens de gegevensoverdracht. Bovendien zorgt deze laag voor de werking van alle externe processen die worden uitgevoerd via netwerktoegang - databases, e-mailclients, bestandsdownloadmanagers, enz.

Op internet vond ik een foto waarop een onbekende auteur presenteerde OSI-netwerkmodel in de vorm van een hamburger. Ik vind het een heel memorabel beeld. Als je plotseling in een bepaalde situatie (bijvoorbeeld bij een sollicitatiegesprek) alle zeven lagen van het OSI-model in de juiste volgorde uit het hoofd moet opsommen, onthoud dan deze foto en het zal je helpen. Voor het gemak heb ik de niveaunamen van het Engels naar het Russisch vertaald: dat was alles voor vandaag. In het volgende artikel zal ik het onderwerp voortzetten en bespreken.

Absoluut beter om met theorie te beginnen en dan, soepel, door te gaan naar de praktijk. Daarom zullen we eerst het netwerkmodel (theoretisch model) beschouwen, en dan zullen we een beetje het gordijn openen over hoe het theoretische netwerkmodel past in de netwerkinfrastructuur (op netwerkapparatuur, gebruikerscomputers, kabels, radiogolven, enz.).

Dus, netwerkmodel is een interactiemodel van netwerkprotocollen. En protocollen zijn op hun beurt standaarden die bepalen hoe verschillende programma's gegevens uitwisselen.

Laat me het uitleggen aan de hand van een voorbeeld: bij het openen van een pagina op internet stuurt de server (waar de pagina die wordt geopend zich bevindt) gegevens (hypertekstdocument) naar uw browser via het HTTP-protocol. Dankzij het HTTP-protocol weet uw browser bij het ontvangen van gegevens van de server hoe deze moeten worden verwerkt en verwerkt deze met succes, zodat u de gevraagde pagina krijgt.

Als je nog niet weet wat een pagina op internet is, zal ik het in een notendop uitleggen: elke tekst op een webpagina is ingesloten in speciale tags die de browser vertellen welke tekstgrootte, de kleur, de locatie op het pagina (links, rechts of in het midden). Dit geldt niet alleen voor tekst, maar ook voor afbeeldingen, formulieren, actieve elementen en in het algemeen alle inhoud, d.w.z. wat er op de pagina staat. De browser handelt bij het detecteren van tags volgens hun instructies en toont u de verwerkte gegevens die in deze tags zijn ingesloten. U kunt zelf de tags van deze pagina zien (en deze tekst tussen de tags), ga hiervoor naar het menu van uw browser en selecteer - bekijk broncode.

Laten we niet te veel afdwalen, "Netwerkmodel" is een noodzakelijk onderwerp voor degenen die specialist willen worden. Dit artikel bestaat uit 3 delen en voor jou heb ik geprobeerd om niet saai, begrijpelijk en kort te schrijven. Voor meer details of voor aanvullende verduidelijking, schrijf in de opmerkingen onderaan de pagina, en ik zal je zeker helpen.

We zullen, net als in de Cisco Networking Academy, twee netwerkmodellen overwegen: het OSI-model en het TCP / IP-model (ook wel DOD genoemd), en tegelijkertijd zullen we ze vergelijken.

OSI staat voor Open Systeem Interconnectie. In het Russisch klinkt het als volgt: Netwerkmodel van interactie met open systemen (referentiemodel). Dit model mag gerust de standaard genoemd worden. Dit model wordt gevolgd door fabrikanten van netwerkapparatuur wanneer zij nieuwe producten ontwikkelen.

Het OSI-netwerkmodel bestaat uit 7 lagen en het is gebruikelijk om van onderaf te beginnen.

Laten we ze opsommen:

  • 7. Applicatielaag (applicatielaag)
  • 6. Presentatielaag of presentatielaag
  • 5. Sessielaag (sessielaag)
  • 4. Transportlaag
  • 3. Netwerklaag (netwerklaag)
  • 2. Linklaag (datalinklaag)
  • 1. Fysieke laag (fysieke laag)

Zoals hierboven vermeld, is het netwerkmodel een model voor de interactie van netwerkprotocollen (standaarden), en elk niveau heeft zijn eigen protocollen. Het is een saai proces om ze op te sommen (en er is niets aan te doen), dus het is beter om alles te analyseren met een voorbeeld, omdat de verteerbaarheid van het materiaal met voorbeelden veel hoger is;)

Toepassingslaag

De applicatielaag of applicatielaag is de bovenste laag van het model. Het communiceert gebruikerstoepassingen met het netwerk. We kennen allemaal deze toepassingen: surfen op het web (HTTP), mail verzenden en ontvangen (SMTP, POP3), bestanden ontvangen en ontvangen (FTP, TFTP), toegang op afstand (Telnet), enz.

Uitvoerend niveau

Presentatielaag of presentatielaag - het zet de gegevens om in het juiste formaat. Het is gemakkelijker te begrijpen met een voorbeeld: die afbeeldingen (alle afbeeldingen) die u op het scherm ziet, worden verzonden bij het verzenden van een bestand in de vorm van kleine porties van enen en nullen (bits). Dus wanneer u een foto naar uw vriend e-mailt, stuurt het SMTP-toepassingslaagprotocol de foto naar de onderste laag, d.w.z. tot op presentatieniveau. Waarbij je foto wordt omgezet in een handige vorm van data voor lagere niveaus, bijvoorbeeld in bits (enen en nullen).

Op precies dezelfde manier, wanneer uw vriend uw foto begint te ontvangen, ontvangt hij deze in de vorm van allemaal dezelfde enen en nullen, en het is de weergavelaag die de bits omzet in een volwaardige foto, zoals JPEG.

Zo werkt dit niveau met protocollen (standaarden) voor afbeeldingen (JPEG, GIF, PNG, TIFF), encodings (ASCII, EBDIC), muziek en video (MPEG), etc.

sessielaag

Sessielaag of sessielaag (sessielaag) - zoals de naam al aangeeft, organiseert het een communicatiesessie tussen computers. Een goed voorbeeld is audio- en videoconferentie, op dit niveau wordt ingesteld welke codec het signaal zal coderen, en deze codec moet op beide machines aanwezig zijn. Een ander voorbeeld is het SMPP-protocol (Short message peer-to-peer protocol), met behulp waarvan bekende SMS- en USSD-verzoeken worden verzonden. En het laatste voorbeeld: PAP (Password Authentication Protocol) is een oud protocol om een ​​gebruikersnaam en wachtwoord zonder encryptie naar een server te sturen.

Ik zal niets meer zeggen over het sessieniveau, anders duiken we in de saaie kenmerken van de protocollen. En als ze (functies) je interesseren, schrijf me dan brieven of laat een bericht achter in de comments met een verzoek om het onderwerp in meer detail te onthullen, en een nieuw artikel zal niet lang duren;)

transport laag

De transportlaag (transportlaag) - deze laag zorgt voor de betrouwbaarheid van de gegevensoverdracht van de afzender naar de ontvanger. In feite is alles heel eenvoudig, je communiceert bijvoorbeeld via een webcam met je vriend of leraar. Is er behoefte aan een betrouwbare levering van elk bit van het verzonden beeld? Natuurlijk niet, als er een paar bits verloren gaan van de streaming video, merk je het niet eens, zelfs het beeld zal niet veranderen (misschien zal de kleur van één pixel op 900.000 pixels veranderen, die zal flitsen met een snelheid van 24 beelden per seconde).

En laten we nu een voorbeeld geven: een vriend stuurt je (bijvoorbeeld via mail) belangrijke informatie of een programma in het archief. Dit archief download je naar je computer. Hier is 100% betrouwbaarheid nodig, want. als er een paar bits verloren gaan bij het downloaden van het archief, kunt u het later niet uitpakken, d.w.z. de benodigde gegevens extraheren. Of stel je voor dat je een wachtwoord naar een server stuurt, en onderweg gaat er een bit verloren - het wachtwoord zal zijn vorm al verliezen en de waarde zal veranderen.

Dus wanneer we video's op internet bekijken, zien we soms wat artefacten, vertragingen, ruis, enz. En als we tekst van een webpagina lezen, is het verlies (of vervormen) van letters niet toegestaan, en als we programma's downloaden, gaat ook alles foutloos.

Op dit niveau zal ik twee protocollen belichten: UDP en TCP. Het UDP-protocol (User Datagram Protocol) verzendt gegevens zonder een verbinding tot stand te brengen, bevestigt de levering van gegevens niet en probeert het niet opnieuw. Het TCP-protocol (Transmission Control Protocol), dat een verbinding tot stand brengt vóór verzending, bevestigt de levering van gegevens, herhaalt zich indien nodig, garandeert de integriteit en de juiste volgorde van de gedownloade gegevens.

Daarom gebruiken we voor muziek, video, videoconferenties en oproepen UDP (we dragen gegevens over zonder verificatie en zonder vertraging), en voor tekst, programma's, wachtwoorden, archieven, enz. – TCP (gegevensoverdracht met ontvangstbevestiging, kost meer tijd).

netwerklaag

Netwerklaag - Deze laag definieert het pad waarover de gegevens worden verzonden. En trouwens, dit is het derde niveau van het OSI-netwerkmodel, en er zijn apparaten die gewoon apparaten van het derde niveau worden genoemd - routers.

We hebben allemaal gehoord van het IP-adres, en dat is wat IP (Internet Protocol) doet. Een IP-adres is een logisch adres op een netwerk.

Er zijn nogal wat protocollen op dit niveau en we zullen al deze protocollen later in aparte artikelen en voorbeelden in meer detail analyseren. Voor nu zal ik slechts een paar van de populaire opsommen.

Zoals iedereen heeft gehoord over het IP-adres en het ping-commando, is dit hoe het ICMP-protocol werkt.

Dezelfde routers (waar we in de toekomst mee gaan werken) gebruiken protocollen van dit niveau voor het routeren van pakketten (RIP, EIGRP, OSPF).

Link laag

De linklaag (datalinklaag) - die hebben we nodig voor de interactie van netwerken op fysiek niveau. Waarschijnlijk heeft iedereen wel eens van het MAC-adres gehoord, hier is het het fysieke adres. Apparaten met een verbindingslaag - switches, hubs, enz.

IEEE (Institute of Electrical and Electronics Engineers - Institute of Electrical and Electronics Engineers) definieert de verbindingslaag als twee sublagen: LLC en MAC.

LLC - Logical Link Control, ontworpen om te communiceren met het bovenste niveau.

MAC - Media Access Control, ontworpen om te communiceren met het lagere niveau.

Laat me het uitleggen aan de hand van een voorbeeld: uw computer (laptop, communicator) heeft een netwerkkaart (of een andere adapter), dus er is een stuurprogramma om ermee te communiceren (met een kaart). Bestuurder is wat programma- het bovenste subniveau van het kanaalniveau, waardoor het net mogelijk is om te communiceren met de lagere niveaus, of liever met de microprocessor ( ijzer) is het onderste subniveau van de linklaag.

Er zijn veel typische vertegenwoordigers op dit niveau. PPP (Point-to-Point) is een protocol om twee computers rechtstreeks met elkaar te verbinden. FDDI (Fiber Distributed Data Interface) - de standaard verzendt gegevens over een afstand tot 200 kilometer. CDP (Cisco Discovery Protocol) is een eigen (eigen) protocol van Cisco Systems, waarmee u aangrenzende apparaten kunt ontdekken en informatie over deze apparaten kunt krijgen.

Fysieke laag

De fysieke laag (fysieke laag) is de onderste laag die de datastroom direct overdraagt. Protocollen zijn ons allemaal bekend: Bluetooth, IRDA (infrarood), koperdraden (twisted pair, telefoonlijn), wifi, enz.

Conclusie

Dus hebben we het OSI-netwerkmodel geanalyseerd. Laten we in het volgende deel beginnen met het TCP / IP-netwerkmodel, het is kleiner en de protocollen zijn hetzelfde. Om de CCNA-tests met succes te doorstaan, moet u verschillen vergelijken en identificeren, wat zal worden gedaan.