Protokollstack - Protocol stack

Image
Protokollstapel av OSI -modellen

Den protokollstacken eller nätverksstacken är en implementering av ett datornätverk protokoll svit eller protokoll familjen . Några av dessa termer används omväxlande men strängt taget, sviten är definitionen av kommunikationsprotokollen , och stacken är mjukvaruimplementeringen av dem.

Individuella protokoll i en svit är ofta utformade med ett enda syfte i åtanke. Denna modulering förenklar design och utvärdering. Eftersom varje protokollmodul vanligtvis kommunicerar med två andra, är de vanligtvis tänkta som lager i en stapel protokoll. Det lägsta protokollet handlar alltid om interaktion på låg nivå med kommunikationshårdvaran. Varje högre lager lägger till ytterligare funktioner. Användarprogram hanterar vanligtvis bara de översta lagren.

Beskrivning av allmän protokollsvit

  T ~ ~ ~ T
 [A]     [B]_____[C]

Föreställ tre datorer: A , B och C . A och B har båda radioutrustning och kan kommunicera via airwaves med hjälp av ett lämpligt nätverksprotokoll (t.ex. IEEE 802.11 ). B och C är anslutna via en kabel och använder den för att utbyta data (igen, med hjälp av ett protokoll, till exempel Point-to-Point Protocol ). Ingen av dessa två protokoll kommer dock att kunna transportera information från A till C , eftersom dessa datorer är konceptuellt på olika nätverk. Ett nätverksprotokoll krävs för att ansluta dem.

Man kan kombinera de två protokollen för att bilda en kraftfull tredje, som behärskar både kabel- och trådlös överföring, men ett annat superprotokoll skulle behövas för varje möjlig kombination av protokoll. Det är lättare att lämna basprotokollen ensamma och utforma ett protokoll som kan fungera ovanpå något av dem ( Internetprotokollet är ett exempel). Detta kommer att göra två staplar med två protokoll vardera. Inter-nätverksprotokollet kommer att kommunicera med vart och ett av basprotokollet på deras enklare språk; basprotokollen kommer inte att prata direkt med varandra.

En begäran om dator A att sända en bit av data till C är tagen av den övre protokollet, som (genom de medel) vet att C är nåbar via B . Det, därför, instruerar det trådlösa protokollet för att sända datapaketet till B . På den här datorn kommer hanterarna av det nedre lagret att skicka paketet till protokollet mellan nätverk, som, när de inser att B inte är slutdestinationen, återigen kommer att aktivera funktioner på lägre nivå. Denna gång är kabeln protokoll som används för att skicka data till C . Där, är det mottagna paketet åter passera till den övre protokollet, vilket (med C är den destinationen) kommer att vidarebefordra den till en högre protokoll eller applikation på C .

I praktisk implementering är protokollstackar ofta uppdelade i tre huvudavsnitt: media, transport och applikationer. Ett särskilt operativsystem eller en plattform kommer ofta att ha två väldefinierade programvarugränssnitt: ett mellan media- och transportlagren och ett mellan transportlagren och applikationer. Media-to-transport-gränssnittet definierar hur transportprotokollprogramvara använder särskilda media- och hårdvarutyper och associeras med en enhetsdrivrutin . Exempelvis skulle denna gränssnittsnivå definiera hur TCP/IP -transportprogramvara skulle prata med nätverksgränssnittets styrenhet . Exempel på dessa gränssnitt inkluderar ODI och NDIS i Microsoft Windows- och DOS -miljön. Applikation-till-transport-gränssnittet definierar hur applikationsprogram använder transportlagren. Exempelvis skulle denna gränssnittsnivå definiera hur ett webbläsarprogram skulle prata med TCP/IP -transportprogram. Exempel på dessa gränssnitt inkluderar Berkeley-uttag och System V STREAMS i Unix-liknande miljöer och Winsock för Microsoft Windows.

Exempel

Image
Nätverksprotokollstacken som används av Amiga -programvaran
Exempel på protokollstapel och motsvarande lager
Protokoll Lager
HTTP Ansökan
TCP Transport
IP Internet eller nätverk
Ethernet Länk eller datalänk
IEEE 802.3ab Fysisk

Spannande lager

En viktig egenskap hos många gemenskaper för driftskompatibilitet baserad på en gemensam protokollstack är ett täckande lager , en term som myntats av David Clark

"Vissa protokoll är utformade med det specifika syftet att överbrygga skillnader i de nedre skikten, så att det inte krävs gemensamma överenskommelser där. I stället ger skiktet de definitioner som tillåter översättning mellan en rad tjänster eller tekniker som används nedan. Således, i lite abstrakta termer, på och ovanför ett sådant lager, bidrar gemensamma standarder till interoperation, medan översättningen under lagret används. Ett sådant lager kallas ett "spänningsskikt" i detta dokument. Som en praktisk fråga uppnås verklig interoperation av definition och användning av effektiva spännskikt. Men det finns många olika sätt att skapa ett spännskikt. "

I Internetprotokollstacken utgör Internet Protocol Suite ett täckande lager som definierar en bästa ansträngningstjänst för global routing av datagram i lager 3 . Den Internet är den gemenskap av driftskompatibilitet baserad på denna spanning lager.

Se även

Referenser

  1. ^ "Vad är en protokollstack?" . WEBOPEDIA. 24 september 1997 . Hämtad 2010-02-21 . En [protokollstack är en] uppsättning nätverksprotokollager som fungerar tillsammans. Den OSI-referensmodellen , som definierar sju protokollskikt kallas ofta en stapel, som är den uppsättning av TCP / IP-protokoll som definierar kommunikation över Internet.
  2. ^ Georg N. Strauß (2010-01-09). "OSI -modellen, del 10. Applikationsskiktet" . Ika-Reutte. Arkiverad från originalet 2012-03-20 . Hämtad 2010-02-21 . Applikationsskiktet är det översta lagret i OSI-modellen och tillhandahåller tjänster som direkt stöder användarprogram, till exempel databasåtkomst, e-post och filöverföringar.
  3. ^ David Clark (1997). Interoperation, öppna gränssnitt och protokollarkitektur . Den oförutsägbara säkerheten: Vitböcker . Nationella forskningsrådet. ISBN 9780309060363.