OSI netværksmodellen (The Open Systems Interconnection model ) er en netværksmodel af stakken (lageret) af OSI/ISO netværksprotokoller. Gennem denne model kan forskellige netværksenheder interagere med hinanden. Modellen definerer forskellige niveauer af systeminteraktion. Hvert niveau udfører visse funktioner i denne interaktion.
OSI-modellen blev udviklet i slutningen af 1970'erne [1] for at understøtte en række computernetværksteknikker, der dengang konkurrerede om brug i store nationale netværksinteraktioner i Frankrig, Storbritannien og USA. I 1980'erne blev det et arbejdsprodukt fra International Organization for Standardization (ISO) Open Systems Interoperability Group . Modellen formåede ikke at give en fuldstændig beskrivelse af netværket og blev ikke understøttet af arkitekter i de tidlige dage af internettet, som senere fandt vej til den mindre præskriptive TCP/IP, hovedsageligt ledet af Internet Engineering Task Force (IETF) .
I begyndelsen og midten af 1970'erne var netværket stort set enten statssponsoreret ( NPL-netværk i Storbritannien, ARPANET i USA, CYCLADES i Frankrig) eller udviklet af leverandører ved hjælp af proprietære standarder såsom IBM Systems Network Architecture og Digital Equipment Corporation DECnet . Offentlige datanetværk var lige begyndt at dukke op, og i slutningen af 1970'erne brugte de X.25- standarden .
Et eksperimentelt pakkeskiftesystem i Storbritannien omkring 1973-1975 afslørede behovet for at definere højere lags protokoller [2] . Efter offentliggørelsen af UK National Computing Center Why Distributed Computing er resultatet af en større undersøgelse af fremtidige computersystemkonfigurationer [3] fremlagde Storbritannien sagen for en International Standards Commission til at dække dette område ved en international organisation for Standardiseringsmøde (ISO) i Sydney i marts 1977 [4] .
Siden 1977 har ISO fulgt et program for at udvikle fælles standarder og metoder til netværk. En lignende proces var under udvikling i Den Internationale Rådgivende Komité for Telegrafi og Telefoni (CCITT). Begge organer har udviklet dokumenter, der definerer lignende netværksmodeller. OSI-modellen blev først defineret i sin oprindelige form i Washington i februar 1978 af franskmanden Hubert Zimmermann , et let ændret udkast til standard blev offentliggjort af ISO i 1980 [4] .
Modeludviklere skulle stå over for konkurrerende prioriteter og interesser. Tempoet i den teknologiske forandring nødvendiggjorde at definere standarder, som nye systemer kunne konvergere til, snarere end at standardisere procedurer ex post, mens den traditionelle tilgang til standardudvikling var den modsatte [5] . Selvom det ikke i sig selv var en standard, gav den en ramme, hvorfra fremtidige standarder kunne defineres [6] .
I 1983 blev CCITT- og ISO-dokumenterne slået sammen og dannede dermed den grundlæggende Open Systems Interconnection Reference Model, almindeligvis omtalt som Open Systems Interconnection Reference Model ( OSI ) eller blot OSI-modellen. Det fusionerede dokument blev offentliggjort i 1984 af både ISO som ISO 7498-standarden og den omdøbte CCITT (nu Telecommunication Standardization Sector of the International Telecommunication Union eller ITU-T) som X.200-standarden [7] .
OSI bestod af to hovedkomponenter: en abstrakt netværksmodel kaldet basisreferencemodellen eller syvlagsmodel og et sæt netværksprotokoller . Baseret på ideen om en konsistent protokollagsmodel, der definerer interaktionen mellem netværksenheder og software, var OSI-referencemodellen et stort fremskridt i standardiseringen af netværkskoncepter.
Konceptet med syvlagsmodellen blev beskrevet i amerikaneren Charles Bachmans arbejde fra Honeywell Information Systems [8] . Forskellige aspekter af OSI-rammen er udviklet fra erfaringer med NPL, ARPANET, CYCLADES, EIN og International Networking Working Group ( IFIP WG6.1). I denne model var netværksinteraktionssystemet opdelt i lag. Inden for hvert lag implementerede et eller flere objekter dets funktionalitet. Hver enhed interagerede kun direkte med laget direkte under det og gav midlerne til brug for laget over det.
OSI blev således et forsøg fra industrideltagere på at blive enige om fælles netværksstandarder for at sikre kompatibilitet med udstyr fra forskellige producenter [9] . For store netværk blev flere sæt netværksprotokoller ofte understøttet, og mange enheder kunne ikke kommunikere med andre enheder netop på grund af manglen på fælles protokoller.
I slutningen af 1980'erne og begyndelsen af 1990'erne, med hensyn til opbygning af de mest pålidelige computernetværk med OSI-modellen, begyndte Internet Protocol Suite (TCP / IP) aktivt at konkurrere , som begyndte at blive meget brugt i netværk med udstyr fra forskellige producenter til arbejder på internettet [10 ] [11] . OSI-modellen bruges dog stadig som reference til undervisning og dokumentation [12] .
OSI-modellen, som blev defineret i ISO/IEC 7498-serien af standarder, består af følgende dele:
ISO/IEC 7498-1 er også udgivet som ITU-T Rec. X.200 [13] . Nogle protokolspecifikationer var også tilgængelige under ITU-T X-serien. Tilsvarende ISO- og ISO/IEC-standarder for OSI-modellen var tilgængelige fra ISO. Ikke alle af dem er gratis [14] .
Kommunikationsprotokoller tillader en struktur på én vært at kommunikere med en tilsvarende søskendestruktur på en anden vært.
Ved hvert lag N udveksler to enheder dataenheder ( PDU'er ) ved hjælp af lagets protokol på deres respektive enheder. Hver PDU indeholder en Service Data Unit ( SDU ) forbundet med en øvre eller nedre protokol.
Databehandling af to samarbejdende OSI-kompatible enheder foregår som følger:
Model | |||||
---|---|---|---|---|---|
Niveau | Datatype (PDU [15] ) | Funktioner | Eksempler | Udstyr | |
værtslag _ |
7. Anvendt (ansøgning) | Data | Adgang til onlinetjenester | HTTP , FTP , POP3 , SMTP , WebSocket | Værter (netværksklienter), |
6. Præsentation | Repræsentation og kryptering af data | ASCII , EBCDIC , JPEG , MIDI | |||
5. Session (session) | Sessionsledelse | RPC , PAP , L2TP , gRPC | |||
4. Transport (transport) | Segmenter
(segment) / Datagram (datagram) |
Direkte kommunikation mellem endepunkter og pålidelighed | TCP , UDP , SCTP , porte | ||
Medier [16] lag |
3. Netværk (netværk) | Pakker _ | Rutebestemmelse og logisk adressering | IPv4 , IPv6 , IPsec , AppleTalk , ICMP | Router , netværksgateway , |
2. Kanal (datalink) | Bits (bit)/ Frames (ramme) |
Fysisk adressering | PPP , IEEE 802.22 , Ethernet , DSL , ARP , NIC . | Netværksbro , switch , | |
1. Fysisk (fysisk) | bits _ | Arbejde med medier, signaler og binære data | USB , RJ ("twisted pair", koaksial, fiberoptisk), radiokanal | koncentrator , |
I litteraturen er det mest almindeligt at begynde at beskrive lagene i OSI-modellen fra det 7. lag, kaldet applikationslaget, hvor brugerapplikationer får adgang til netværket. OSI-modellen slutter med det 1. lag - det fysiske, som definerer de standarder, der kræves af uafhængige producenter for datatransmissionsmedier:
Enhver protokol af OSI-modellen skal interagere enten med protokoller i dets lag eller med protokoller en over og/eller under dets lag. Interaktioner med protokoller på deres niveau kaldes horisontale, og dem med niveauer et højere eller lavere kaldes vertikale. Enhver protokol i OSI-modellen kan kun udføre funktionerne i dets lag og kan ikke udføre funktionerne i et andet lag, som ikke udføres i protokollerne for alternative modeller.
Hvert niveau, med en vis grad af konditionalitet, har sin egen operand - et logisk udeleligt dataelement, der kan betjenes på et separat niveau inden for rammerne af modellen og de anvendte protokoller: på det fysiske niveau er den mindste enhed en smule , på datalinkniveau kombineres information til rammer, på netværksniveau - til pakker (datagrammer), på transporten - i segmenter. Ethvert stykke data, der er logisk kombineret til transmission - en ramme, en pakke, et datagram - betragtes som en besked. Det er budskaber i generel form, der er operander af sessions-, præsentations- og anvendelsesniveauer.
De underliggende netværksteknologier inkluderer det fysiske lag og linklaget.
ApplikationslagApplikationslag (applikationslag; engelsk applikationslag ) - det øverste niveau af modellen, som sikrer interaktionen mellem brugerapplikationer og netværket:
Applikationslagsprotokoller: RDP , HTTP , SMTP , SNMP , POP3 , FTP , XMPP , OSCAR , Modbus , SIP , TELNET og andre.
Definitionerne af applikationslagets og præsentationslagets protokol er meget vage, og om en protokol tilhører et eller andet lag, for eksempel HTTPS-protokollen, afhænger af den endelige service, som applikationen leverer.
I tilfælde af at en protokol, såsom HTTPS, bruges til at se en simpel webside gennem en browser, kan det betragtes som en applikationslagsprotokol. I samme tilfælde, hvis HTTPS-protokollen bruges som en lavniveauprotokol til overførsel af finansielle oplysninger, for eksempel ved brug af ISO 8583-protokollen, vil HTTPS-protokollen være en præsentationslagsprotokol, og ISO 8583-protokollen vil være en applikationslagsprotokol. Det samme gælder for andre applikationslagsprotokoller. .
PræsentationslagPræsentationslaget giver protokolkonvertering og datakodning /dekodning . Applikationsanmodninger modtaget fra sessionslaget konverteres på præsentationslaget til et format til transmission over netværket, og data modtaget fra netværket konverteres til et applikationsformat. På dette niveau kan komprimering/dekomprimering eller kryptering/dekryptering udføres, samt omdirigere anmodninger til en anden netværksressource, hvis de ikke kan behandles lokalt.
Præsentationslaget er normalt en mellemprotokol til transformation af information fra nabolag. Dette tillader kommunikation mellem applikationer på uens computersystemer på en måde, der er gennemsigtig for applikationerne. Præsentationslaget giver formatering og transformation af koden. Kodeformatering bruges til at sikre, at applikationen modtager oplysninger til behandling, der giver mening for den. Om nødvendigt kan dette lag oversætte fra et dataformat til et andet.
Præsentationslaget beskæftiger sig ikke kun med formaterne og præsentationen af data, det beskæftiger sig også med de datastrukturer, der bruges af programmer. Lag 6 sørger således for organisering af data under deres overførsel.
For at forstå, hvordan dette fungerer, skal du forestille dig, at der er to systemer. Den ene bruger EBCDIC Extended Binary Information Interchange Code , såsom IBM mainframe , til at repræsentere dataene , og den anden bruger den amerikanske standard ASCII Information Interchange Code (brugt af de fleste andre computerproducenter). Hvis disse to systemer skal udveksle information, så er et præsentationslag nødvendigt for at udføre transformationen og oversætte mellem de to forskellige formater.
En anden funktion, der udføres på præsentationsniveau, er datakryptering, som bruges i tilfælde, hvor det er nødvendigt at beskytte transmitterede informationer mod adgang fra uautoriserede modtagere. For at udføre denne opgave skal processerne og koden på visningsniveau udføre datatransformationer. På dette niveau er der andre rutiner, der komprimerer tekster og konverterer grafiske billeder til bitstreams, så de kan overføres over netværket.
Standarder på præsentationsniveau definerer også, hvordan grafik præsenteres. Til disse formål kan PICT -formatet, et billedformat, der bruges til at overføre QuickDraw-grafik mellem programmer, bruges.
Et andet repræsentationsformat er det taggede TIFF -billedfilformat , som almindeligvis bruges til bitmapbilleder i høj opløsning . Den næste præsentationslagsstandard, der kan bruges til grafik, er den, der er udviklet af Joint Photographic Expert Group; i daglig brug omtales denne standard blot som JPEG .
Der er en anden gruppe præsentationsniveaustandarder, der definerer præsentationen af lyd og film. Dette inkluderer Musical Instrument Digital Interface , MIDI , til digital repræsentation af musik, udviklet af Cinematography Expert Group, MPEG -standarden , der bruges til at komprimere og kode videoer på cd'er, gemme dem i digitaliseret form og sende med hastigheder på op til 1 .5 Mbps, og QuickTime er en standard, der beskriver lyd- og videoelementer for programmer, der kører på Macintosh- og PowerPC-computere.
Præsentationsprotokoller : AFP - Apple Filing Protocol , ICA - Independent Computing Architecture , LPP - Lightweight Presentation Protocol, NCP - NetWare Core Protocol , NDR - Netværksdatarepræsentation , XDR - ekstern datarepræsentation , X.25 PAD - Packet Assembler / Disassembler Protocol
SessionslagSessionslaget ( engelsk session layer ) af modellen sikrer vedligeholdelsen af en kommunikationssession, hvilket gør det muligt for applikationer at interagere med hinanden i lang tid. Laget administrerer sessionsoprettelse/-afslutning, informationsudveksling, opgavesynkronisering, bestemmelse af retten til at overføre data og sessionsvedligeholdelse i perioder med inaktivitet af applikationen.
Sessionslagsprotokoller: H.245 ( Call Control Protocol for Multimedia Communication ), ISO-SP (OSI Session Layer Protocol (X.225, ISO 8327)), iSNS ( Internet Storage Name Service ), L2F ( Layer 2 Forwarding Protocol ), L2TP ( Layer 2 Tunneling Protocol ), NetBIOS ( Network Basic Input Output System ), PAP ( Password Authentication Protocol ), PPTP ( Point-to-Point Tunneling Protocol ), RPC ( Remote Procedure Call Protocol ), RTCP ( Real-time Transport Control Protocol ), SMPP ( Short Message Peer-to-Peer ), SCP ( Session Control Protocol ), ZIP ( Zone Information Protocol ), SDP ( Sockets Direct Protocol )...
TransportlagModellens transportlag ( engelsk transportlag ) er designet til at sikre pålidelig dataoverførsel fra afsender til modtager. Samtidig kan niveauet af pålidelighed variere over en bred vifte. Der er mange klasser af transportlagsprotokoller, lige fra protokoller, der kun giver grundlæggende transportfunktioner (f.eks. dataoverførselsfunktioner uden bekræftelse), til protokoller, der sikrer, at flere datapakker leveres til destinationen i den korrekte rækkefølge, multiplekse multiple data streams, leverer dataflowkontrolmekanisme og garanterer gyldigheden af de modtagne data. For eksempel er UDP begrænset til dataintegritetskontrol inden for et enkelt datagram og udelukker ikke muligheden for at miste en hel pakke eller duplikere pakker, hvilket overtræder den rækkefølge, som datapakker modtages i; TCP giver pålidelig kontinuerlig datatransmission, eksklusive tab af data eller overtrædelse af rækkefølgen af deres ankomst eller duplikering, det kan omfordele data ved at opdele store dele af data i fragmenter og omvendt, lime fragmenter ind i én pakke.
Transportlagsprotokoller: ATP ( AppleTalk Transaction Protocol ), CUDP ( Cyclic UDP ), DCCP ( Datagram Congestion Control Protocol ), FCP ( Fibre Channel Protocol ), IL ( IL Protocol ), NBF ( NetBIOS Frames protokol ), NCP ( NetWare Core Protocol ) ), SCTP ( Stream Control Transmission Protocol ), SPX ( Sequenced Packet Exchange ), SST ( Structured Stream Transport ), TCP ( Transmission Control Protocol ), UDP ( User Datagram Protocol ).
NetværkslagNetværkslaget ( engelsk netværkslag ) af modellen er designet til at bestemme stien til datatransmission. Ansvarlig for oversættelse af logiske adresser og navne til fysiske, fastlæggelse af de korteste ruter, switching og routing, sporing af problemer og "congestion" i netværket.
Netværkslagsprotokoller dirigerer data fra en kilde til en destination. Enheder, der opererer på dette niveau ( routere ) kaldes betinget enheder på det tredje niveau (i henhold til niveaunummeret i OSI-modellen).
Netværkslagsprotokoller: IP/IPv4/IPv6 ( internetprotokol ), IPX ( Internetwork Packet Exchange ), X.25 (delvist implementeret på lag 2), CLNP (forbindelsesfri netværksprotokol), IPsec ( internetprotokolsikkerhed ).
Routing protokoller - RIP ( Routing Information Protocol ), OSPF ( Open Shortest Path First ).
LinklagLinklaget ( eng. data link layer ) er designet til at sikre netværks interaktion på det fysiske niveau og kontrollere fejl, der kan opstå. Den pakker de data, der modtages fra det fysiske lag, repræsenteret i bits, i rammer , kontrollerer dem for integritet og retter om nødvendigt fejl (eller genererer en genanmodning om en beskadiget ramme) og sender den til netværkslaget. Linklaget kan interagere med et eller flere fysiske lag og styre og administrere denne interaktion.
IEEE 802 - specifikationen opdeler dette niveau i to underniveauer: MAC ( media access control ) regulerer adgangen til et delt fysisk medie, LLC ( logical link control ) leverer netværkslagstjeneste .
Switche , broer og andre enheder fungerer på dette niveau . Disse enheder bruger lag 2-adressering (efter lagnummer i OSI-modellen).
Link Layer Protocols: ARCnet , ATM , Controller Area Network (CAN), Econet , IEEE 802.3 ( Ethernet ), Ethernet Automatic Protection Switching (EAPS), Fiber Distributed Data Interface (FDDI), Frame Relay , High-Level Data Link Control (HDLC ) ) ), IEEE 802.2 (leverer LLC-funktioner til IEEE 802 MAC-underlaget), linkadgangsprocedurer, D-kanal (LAPD), IEEE 802.11 trådløst LAN , LocalTalk , Multiprotocol Label Switching (MPLS), Point-to-Point Protocol (PPP) , Point-to-Point Protocol over Ethernet (PPPoE), Serial Line Internet Protocol (SLIP, forældet), StarLan , Token ring , Unidirectional Link Detection (UDLD), x.25 , ARP .
Ved udvikling af protokolstakke løses problemer med støjkorrigerende kodning på dette niveau. Disse kodningsmetoder inkluderer Hamming-kode , blokkodning, Reed-Solomon-kode .
I programmering repræsenterer dette niveau netværkskortdriveren ; i operativsystemer er der en softwaregrænseflade til interaktion mellem kanal- og netværksniveauer med hinanden. Dette er ikke et nyt niveau, men blot en implementering af modellen til et specifikt OS. Eksempler på sådanne grænseflader: ODI , NDIS , UDI .
Fysisk lagDet fysiske lag ( engelsk fysisk lag ) er det nederste niveau af modellen, som bestemmer metoden til at overføre data præsenteret i binær form fra en enhed (computer) til en anden. Forskellige organisationer er involveret i at udarbejde sådanne metoder, herunder: Institut for elektriske og elektroniske ingeniører , Electronic Industry Alliance , European Telecommunications Standards Institute og andre. De transmitterer elektriske eller optiske signaler til et kabel eller radioluft og modtager dem derfor og konverterer dem til databits i overensstemmelse med metoderne til kodning af digitale signaler .
Hubs , signalrepeatere og mediekonvertere fungerer også på dette niveau .
Fysiske lagfunktioner implementeres på alle enheder, der er tilsluttet netværket. På computersiden udføres fysiske lagfunktioner af en netværksadapter eller en seriel port. Det fysiske lag refererer til de fysiske, elektriske og mekaniske grænseflader mellem to systemer. Det fysiske lag definerer sådanne typer af datatransmissionsmedier som fiber , parsnoet , koaksialkabel , satellitdatalink osv. Standardtyper af netværksgrænseflader relateret til det fysiske lag er: V.35 , RS-232 , RS-485 , RJ -11 , RJ-45 , AUI og BNC stik .
Ved udvikling af protokolstakke løses problemer med synkronisering og lineær kodning på dette niveau. Disse kodningsmetoder omfatter NRZ -kode , RZ-kode , MLT-3 , PAM5 , Manchester II .
Fysiske lagprotokoller: IEEE 802.15 ( Bluetooth) , IRDA , EIA RS-232 , EIA-422 , EIA-423 , RS-449 , RS-485 , DSL , ISDN , SONET/SDH , 802.11 Wi-Fi , E- sløjfe radiointerface , ITU og ITU-T , TransferJet , ARINC 818 , G.hn / G.9960 , Modbus Plus .
Da protokoller (for eksempel TCP / IP) udviklet ved hjælp af andre netværksinteraktionsmodeller er blevet de mest populære og praktisk brugte, er det yderligere nødvendigt at beskrive den mulige inklusion af individuelle protokoller af andre modeller i forskellige lag af OSI-modellen.
TCP/IP- familien har tre transportprotokoller: TCP, som er fuldt kompatibel med OSI og giver validering af datamodtagelse; UDP , som kun svarer til transportlaget ved tilstedeværelsen af en port, som sikrer udveksling af datagrammer mellem applikationer, hvilket ikke garanterer modtagelse af data; og SCTP , som blev designet til at løse nogle af manglerne ved TCP og tilføjer nogle nye funktioner. Der er omkring to hundrede flere protokoller i TCP/IP-familien, hvoraf den mest berømte er ICMP -serviceprotokollen , der bruges til interne behov for at sikre driften; resten er heller ikke transportprotokoller.
I IPX/SPX -familien vises porte i IPX-netværkslagsprotokollen, hvilket muliggør udveksling af datagrammer mellem applikationer (operativsystemet reserverer nogle af sockets til sig selv). SPX-protokollen supplerer til gengæld IPX med alle andre transportlagsfunktioner i fuld overensstemmelse med OSI.
Til værtsadressen bruger ICX en identifikator dannet ud fra et fire-byte netværksnummer (tildelt af routere ) og MAC-adressen på netværksadapteren.
I slutningen af 1990'erne blev syvlags OSI-modellen kritiseret af individuelle forfattere. Især i bogen "UNIX. System Administrator's Guide" Evi Nemeth skrev :
Mens ISO -komiteerne skændtes om deres standarder, var hele konceptet med netværk ved at ændre sig bag deres ryg, og TCP/IP -protokollen blev introduceret rundt om i verden .
<…>
Og så, da ISO-protokollerne endelig blev implementeret, dukkede en række problemer op:
<…>
Nu indrømmer selv de mest ivrige tilhængere af disse protokoller, at OSI gradvist er på vej mod at blive en lille fodnote på computerhistoriens sider.
— Evie Nameth [17]Selvom OSI-modellen stadig bruges som reference til undervisning og dokumentation [12] , har de OSI-protokoller, der oprindeligt blev udtænkt til denne model, ikke vundet popularitet. Nogle ingeniører hævder, at OSI-referencemodellen stadig er relevant for cloud computing. Andre mener, at den originale OSI-model ikke matcher moderne netværksprotokoller og foreslår i stedet en forenklet tilgang [18] .
ISO standarder | |
---|---|
| |
1 til 9999 |
|
10000 til 19999 |
|
20000+ | |
Se også: Liste over artikler, hvis titler begynder med "ISO" |
TCP / IP-protokoller efter lag af OSI-modellen | Grundlæggende|
---|---|
Fysisk | |
kanaliseret | |
netværk | |
Transportere | |
session | |
Repræsentation | |
Anvendt | |
Andet anvendt | |
Liste over TCP- og UDP-porte |