[ Referansemodeller ] Det fysiske laget ] Datalinje-laget ]
 

Gjestebok / Guestbook

Computer-nettverk

1. Referansemodeller

Kilde: Tanenbaum.
For å redusere kompleksiteten av designet, er de fleste nettverk organisert som en serie av lag, der hvert lag bygger på laget
under. Hvert lag tilbyr altså tjenester til laget over.


De forskjellige lagene snakker med hverandre gjennom SAPs, Service Access Points. Laget n's SAPs er stedene der laget n+1 can få tak i de tilbudte tjenestene. Hver SAP har en unik adresse.

For at lagene skal kunne snakke med hverandre, må man ha blitt enige om et sett med regler angående grensenittet. Laget n+1 sender gjerne en IDU (Interface Data Unit) til laget n gjennom SAP. IDU'en består at en SDU (Service Data Unit) og kontroll-informasjon. For å få overført SDUen, kan det hende lag n må dele den opp i flere biter. Hver bit får sin header og blir sendt som en separat PDU (Protocol Data Unit).

Service-primitiver
En tjeneste (service) er spesifisert ved et sett av primitiver (operasjoner) som en bruker eller en annen enitet (en instans av et lag) kan bruke. Primitivene kan klassifiseres slik:
 
Primtive Mening
Request En entitet vil ha utført en tjeneste (service)
Indication En entitet skal bli informert om en hendelse (event)
Response En entitet vil svare på en hendelse (event)
Confirm Respons til en tidligere hendelse har kommet tilbake
De fleste primitiver tar parametere. Paramterne til en CONNECT.request kan for eksempel være hvilken maskin det skal koples til, hvilken type tjeneste (service) som ønskes, og maxiumum medlingsstørrelse.

1.1 OSI

 
     
    Lag Protokoll Lag (enhet som byttes)
    7. Applikasjon <--------------------- Applik.protokol -----------------> Applikasjon (APDU)
    6. Presentasjon <--------------------- Presentasj.protokoll -----------------> Presentasjon (PPDU)
    5. Session <--------------------- Session-protokoll -----------------> Session (SPDU)
    4. Transport <--------------------- Transprotokoll -----------------> Transport (TPDU)
    3. Nettverk Nettverksprotokoll(h-r) intern subnetprot. Nettverksprotokoll Nettverk (Packet)
    2. Datalinje (d.link) Datalinkprotokoll(h-r) intern subnetprot. Datalinkprotokoll Datalinje (Frame)
    1. Fysisk Fysisk (host-router) " Fysisk Fysisk (Bit)
     
 

1.1.1 Det fysiske laget

Det fyiske laget transporterer rå data (bits) over en kommunikasjonskanal. Hovedpoenget er at når man har sendt en 1-bit, skal det komme frem en 1-bit og ikke en 0-bit. Det man spør seg om er her typisk hvor mange volt som skal brukes for å representere 1 og hvor mange som skal representere 0, hvor mange mikrosekunder en bit varer, om man kan sende samtidig i begge retninger, hvordan forbindelsen blir etablert og hvordan den tas ned, hvor mange pins nettverkskoplingen har og hva hver pin brukes til.
 

1.1.2 Datalinjelaget

Datalinjelaget (data link layer) tar den rå bitstrømmen fra det fysiske laget og gjør så den virker fri for uoppdagede transmisjonsfeil for nettverkslaget. Dette gjør den ved å be senderen bryte input-dataene opp i data-rammer (data frames), sende rammene sekvensielt, og prosessere 'acknowledgement'-rammene som blir sendt tilbake fra mottakeren. For å gjenkjenne hvor en ramme starter og stopper, kan man for eksempel starte og ende hver ramme med et spesielt bit-mønster (bit pattern). Hvis disse bit-mønstrene tilfeldigvis skulle finnes inne i dataene, må man ta spesielle forhåndsregler så det ikke blir oppfattet som start/slutt på en ramme.

Det er opp til datalinjelaget å å løse problemer med ødelagte, forsvunne og duplikate rammer. I tillegg har laget ofte en viss mulighet for å regulere trafikken, slik at en rask sender ikke sender altfor mye data til en treg mottaker.

Hvis man kan sende data i begge retninger, kan det oppstå problemer hvis man skal sende en 'acknowledgement' fra A til B, samtidig som man prøver å sende data fra B til A. En løsning er piggybacking.

Broadcast-nettverk har en ekstra problem i datalinjelaget: hvordan skal man kontrollere tilgangen til den delte kanalen? Et spesielt underlag (sublayer) av datalinjelaget, medium-aksess-laget, tar seg av dette.
 

1.1.3 Nettverkslaget

Nettverkslaget finner ut hvor man skal sende en pakke for å få den helt fra A til B. Laget må vite hvor det skal sende pakken videre, ikke bare i riktig retning, men også utenom routere som har for mye trafikk. Nettverkslaget teller ofte også pakker fra forskjellige kunder, slik at det kan tas betalt for nettverkstrafikken. I tillegg må laget overkomme problemer med forskjellige nettverk, slik at data kan reise på heterogene, sammenkoplede nettverk (internet).

I broadcast-nettverk er routingen så simpel at nettverkslaget er tynt eller tilogmed ikke eksisterer.
 

1.1.4 Transportlaget

Transportlagets funksjon er å ta imot data fra sesjonslaget (the session layer), dele dataene i mindre deler hvis det er nødvendig, sende disse til nettverkslaget, og forsikre seg om at alle delene kommer korrekt frem på den andre enden.

Vanligvis oppretter transportlaget en nettverksforbindelse for hver transportforbindelse som sesjonslaget krever. Men hvis trasnportforbindelsen krever høy dataoverføringshastighet, kan transportlaget opprette flere nettverksforbindelser og dele datene mellom forbindelsene. På den annen side, hvis det å opprette en nettverksforbindelse er kostnadskrevende, kan transportlaget multiplekse flere transportforbindelser på den samme nettverksforbindelsen for å redusere kostnadene. Uansett skal multipleksingen være transparent for sesjonslaget.

Transportlaget bestemmer også typen tjeneste det skal tilby sesjonslaget, for eksempel en feilfri point-to-point-kanal som leverer meldinger eller bytes i den rekkefølgen de er sendt.

Transportlaget er det første laget i modellen som er ekte end-to-end. Lagene 1-3 er lenkede (de snakker med sine nærmeste naboer), mens 4-7 er end-to-end.

Det er også en del flytkontroll i transportlaget.

1.1.5 Sesjonslaget

1.1.6 Presentasjonslaget

1.1.7 Applikasjonslaget

 

1.2 TCP/IP

Ble først definert av Cerf & Kahn i 1974.
 

1.2.1 Internet-laget

Et pakkesvitsjet nettverk basert på et forbindelsesløst internettverkslag. Dette lagets jobb er å la maskiner (hosts) sende pakker til nettverket slik at de kan reise uavhengig av hverandre til et mål (muligens på et annet nettverk). Pakkene kan godt komme frem i en annen rekkefølge enn de ble sendt ut, og det er da de øvre lagenes jobb å ordne pakkene igjen. Internet-laget definerer et pakkeformat og en protokoll kalt IP (Internet Protocol). Internet-laget skal altså levere pakkene til korrekt adresse, to viktige ingredienser her er routing og å unngå forstoppelse.
 

1.2.2 Transportlaget

Transportlagets oppgave er å la to maskiner føre en samtale. Transportlaget i TCP/IP-modellen har to definerte ende-til-ende protokoller: 1) TCP & 2) UDP.
 

1.2.2.1 TCP

TCP (Transmission Control Protocol) er en pålitelig forbindelsesorientert protokoll som lover å la en byte-strøm (byte stream) som kommer fra en maskin å bli levert uten feil til en annen maskin. Den fragmenterer den innkommende byte-strømmen (fra applikasjonslaget) og sender disse fragmentene til internet-laget, for så å sette dem sammen igjen på den andre siden. TCP tar seg også av flytkontroll, den sikrer at en rask sender ikke sender mer enn en treg mottaker kan ta imot.
 

1.2.2.2 UDP

UDP (User Datagram Protocol) er en upålitelig, forbindelsesløs protokoll. Den brukes ofte der det er viktigere å levere fort enn "riktig", f.eks.  ved overføring av tale og video.
 

1.2.3 Applikasjonslaget

Applikasjonslaget inneholder alle protokollene på høyere nivå: telnet, ftp (file transport protcol), SMTP (simple mail transport protcol), DNS (domain name server), gopher, wais, NNTP, HTTP (Hyper Text Tranfer Protocol), osv.