Datakom_Sammendrag_V3

Kommunikasjon mellom prosesser
MELDING
HTTP (Hyper Text Transfer Protocol)
FTP (File Transfer Protocol)
simple mail transfer protocol
7 bits ASCII
SMTP (Simple mail Transfer Protocol)
sender mail fra server til server
Protokoll:- Protokoll er et sett med regler og
konvensjoner for tolkning av data
Kommunikasjon mellom enheter på likestilte lag
Push-protokoll
Mail
Post office protocol 3
Hva er Datakommunikasjon?- Transmisjon av digitale data
mellom to eller flere enheter
POP3
Protokoller
henter/sender mail
mellom klient og server
http brukes når mailen er i nettleser
Coax kabel
Pull-protokoll
Satelitt radio kanaler
IMAP
Radio kanaler
Internet Message Access Protocol
alternativ til POP3
bedre for sending av media
Fysiske medium
Fiberoptisk
behandler hver forespørsel uten å koble brukeren opp mot
tidligere prosesser
eks. HTTP
TP (Kobber)
Stateless protocol
Frekvensspektrummet av en link er delt opp mellom
kollingene som er
Behandler hver forespørsel som selvstendige
transaksjoner
lagrer ingen informasjon hos serveren
Frekvensdelt multipleksing (FDM)
Tidsdelt multipleksing (TDM)
Dedikerte resursjer
Linjesvitsjing: (Dedicated resources)- Dedikert
transmisjonskanal (i nettverket)- Egen reservet linje i
nettverket- Forbindelse må kobles opp før overføring av
data kan begynne
Raskere prosesseringstid ved nodene (klar rute)
Mindre kompleksitet i endesystemene (eks. telefon)
Fordeler
En protokoll som holder status på forbindelser og bruker
Stateful protocol
STDM
Packet
Switching(store-and-f
orward)
Tjenestekvalitet
eks. FTP
statistical time division multiplexing
deler opp meldinger i pakker
Subtopic
faste forsinkelser
Deler opp heler frekvensbåndet i mindre deler (Kanaler)
Bruker får tildelt en kanal
Garantert leveranse
Konstant tilgang til Båndbredde
FDM(frequency division
multiplexing)
lese header + forwarding
Kan sende konstant over linken
Proseseringsforsinkelse
kø til link
Konstant tilgang til mediet
Kø forsinkelse
Switching
Forsinkelse
ut på link
Eks. FM-Radio
Transmisjonsforsinkelse
å faktisk sende over linken
Circuit
Switching(dedicated
resources)
Utbredelsesforsinkelse
Deler opp tiden i mindre deler (tidsslotter)
TDM(time division
multiplexing)
skiller mellom
Svitsjing i Nettverk:-For å koble sammen sender og
mottaker slik at de kan utveksle data
Forbindelsen settes opp med rutingsalgoritmer, men det er
mulighet for alternative ruter dersom en link går ned
Bruker får tildelt en tidsslott
Stopper og sender hele tiden
Sender med hele båndbredden i det bestemte tidsslottet
Benytter adressen til mottaker for å overføre pakker videre i
nettverket
komplekst nettverk
ulemper
- Til adresse- Fra adresse- Adresse til
neste node i nettverket
dårlig utnyttelse av stilletid
Pakkesvistsjing: (Stored and forward)-Flere brukere deler på
overføringskapasitetern- Kommunikasjon mellom sender
mottaker skjer ved hjelp av pakker- Optimal utnyttelse av
bredbånd-Pakker blir satt i kø hos svitsj/ ruter
Datagramnettverk
To pakker fra samme klient kan benytte seg av forskjellige
ruter til destinasjon
Sentralisert system
Klienter kommer med forsprøsel til server
kan ha dynamisk IP
Eks.- Brukt i
Internett- IP
Klient
kan komme å gå som den ønsker
Linjen må settes opp og reserveres før man kan sende
data. Linjen er da opptatt, selv i stille tid
har fast IP adresse
Server
Benytter virtuelle-kanalnummer for å videresende pakker til
riktig mottaker
står klar til å svare på forespørsler
Klient-Server-Arkitektur
Virtuell-Kanal-Nettverk (VC Network)
Arkitektur
Alle noder i nettverket må holde orden på tilstande til en
oppkobling
Periodisk kobling mellom hosts, kalt peers
Alle pakker fra klienten benytter samme rute til destinasjon
desentralisert system
Applikasjoner utnytter direkte kommunikasjon mellom
mellom par
Servere
Host:-Host er
endesystemer
Hver peer tilføyer service kapasitet til systemet ved å
distrubiere mottatte filer til andre peers.
selvskalerende
Eksempel: BitTorrent
Kliener
"pool resources"
Internett:-Et nett av nettverk-Flere
nettverk koblet sammen
World Wide Web er applikasjon som kjører på Internett
Peer-to-Peer-Arkitektur
NAT problemetNetwork
adress translation
Støtter applikasjoner i å kommunisere mellom prosesser
software grensesnitt mellom applikasjonslaget og
transportlaget
Meldinger sendes nedover i stacken -> ender opp hos
mottakers applikasjonslag
Destinasjons IP
Socket:-Grensesnitt mellom applikasjonslaget og
transportlaget-Applikasjonsprogrammer leser og skriver
data fra/ til socket for å overføre/ motta informasjon fra/ til
en applikasjon hos en annne vert
Trenger (UDP)
Destinasjons Portnummer
Socket (API), 4 tupler
Overordnet
Avsender IP
5. Applikasjonslaget
STMP
Kan og ha (TCP)
Kildeportnummer
Applikasjonslaget
HTTP
FTP
Protokoller
Trojansk Hest
gjemmer seg i uskyldig programvare
DNS
selvreplikerende
Virus
Subtopic
henger seg på et kjørbart program og sprer seg
eks. E-mail tillegg
MALWARE
Tilbyr logisk kommunikasjon mellom prosesser
selvreplikerende + selveksikverende
trenger ikke eksekveres for å kjøre
ORM
Pakkene blir lagt i segmenter
kan utnytte sårbarheter i programvare på både servere og PCer
Tilbyr forbindelsesorienterte og forbindelsesløse tjenester
4. Transportlaget
Internett Protocol Stack (TCP/IP)
TCP
lagrer info om brukeren i en database til en nettside
Protokoller
UDP
1. headerline av HTTPresponse message
Cookies
2. headerline i neste HTTP request message
slik fungerer det
Tilbyr logisk kommunikasjon mellom hoster
3. Cookie-filen blir holdt på brukerens host
Webtjeneren bruker filen, sendes med i HTTPmeldingene
Pakker på dette laget kalles datagram
4. Back-end database på webside hvor brukerens ID lagres
3. Nettverkslaget
Levering av datagram ved hjelp av IP og ruting
OSFP
Protokoller
server lagrer nettsider som er mye brukt
Service modell
Proxy
Punkt til punkt levering (Node til node)
bruker conditional get for å sjekke om infoen er oppdatert
sparer mye båndbredde på store nett
Pakker på dette laget kalles rammer
2. Linklaget
Tilbyr ulike tjenester for sikker levering
ARP
lagrer objekter (bilder++) på endesystemet for å få raskere
tilgang neste gang
Caching
Protokoller
Hensik:- Mappe IP-adresser mot en tekstbasert
adresse.
Flytter fysiske bits fra ende til ende
assosiere et hostnavn el. mal med en eller flere IP-adresser
"Bits på ledning"
Avhengig av medium
1. Fysiske lag
spørr først Root DNS, får adressen til en Autorativ DNS
Protokoller
Spørr Autorativ DNS, får adressen til Local DNS osv.
iterativ
skjer alltid via din egen lokaleDNS
spørremetoder
7. Applikasjonslaget
spørr først Root DNS, den spørr Autorativ DNS, som igjen
spørr Local DNS osv.
rekursiv
Tilbyr uavhengighet mellom forskjellige data fremstillinger
6. Presentasjonslaget
Root level DNS
Oversetter fra applikasjonsformat til nettverksfromat, og
nettverksformat til appliksajonsformat
Skiller en periode ved punktum (.)
.no, .com,
Top level DNS
Etablerer, drifter og avslutter kobling mellom applikasjonene
5. Sesjonslaget
Burkt til å indikere land/ region eller organisasjon
OSI
Connection coordination
Variable navn som blir brukt til å identifisere en organisasjon
4. Transportlaget
Seccond level DNS
vg, db, adressa
DNS(domain name
system)
3. Nettverkslaget
Hierarkiet
Tilleggs navn
2. Linklaget
Sub domene
eksempel.vg, test.db
1. Fysiske lag
Definisjon på Network Service Model- egenskapene ved
ende-til-ende transport av pakker mellom sendende og
mottakende endesystem
Brukt til å identifisere en spsifikk resurs
Host
Eksempelvis en bestemt datamaskin
Innkapsuleringsprinsippet:- Dataenhet fra laget ovenfor blir
tilført en header (evt. trailer) i laget under. Denne headeren
(evt. traileren) inneholder informasjon som er nødvendig
for å ivareta mottakende lags oppgaver.
Eks:- TCP segment ankommer nettverkslaget -> segmentet blir
innkapsulert av en IP-header.
host-a.eksempel.vg
Local DNS
proxy, universitet, hus
Svarer på forespørsle fra klient(/andre servere), og går
tilbake i lyttemodus for å vente på nye forespørsler
A - standard host name til IPadresse
CNAME - canonical name, peker til et annet host name
Tjeneren (serveren) er alltid oppkoblet
DNS mapping
Client - Server arkitektur
Benytter flere tjener for å fordele påtrykk på resurssene
MX - mail exchange servertype
NS - Alias, Name server
eks.WebFTP
bruker en TCP kobling for å sende og motta flere (HTTP)
forespørsler og svar
Persistent connection
keep-alive
Non-persistent connection
BITS ON WIRE
Åpner en ny kobling for hver eneste forespørsel og svars-par
Fysiske laget
flytter de fysiske bits fra ende til ende
Persistent /non-persistent
Microsoft Outlook
Eksempel på User Agents
Apple Mail
Elektronisk Mail
User Agent:- Brukergrensesnitt for mail
systemet
Tilbyr grensesnitt som:Lese- Svare- VideresendeForfatte
CDMA-En metode for å få tilgang til alle enheter på et
nettverk- "Ikke gjennom, men rundt fjellet via andre"Brukes mye i mobile nettverk CSMA/CA
WiFi 802.11-
RTS/CTS- "request to send"- "clear to send"- for å få tilbake
tilgangen på "gjemte" terminaler- på samme måte som
CDMA, bare med et access point i mellom, og ikke en
terminal
SEGMENT
Logisk kommunikasjon mellom applikasjonsprosesser som
kjøre på forskjellige hoster
Bluetooth- Kort avstand- Lite energi- Lite
kostnad - I steden for kabel over korte
avstander
Demultipleksing (opp):- Segmente fra transportlaget blir splittet
opp til meldinger i applikasjonslaget
Mobilitet
Zigbee- enda svakere enn
bluetooth- termostater,
lyssensorer osv
Multipleksing/ Demultipleksing:-Skjer i socket mellom
applikasjon og transportlaget
Datacom
Multipleksing (ned):- Meldinger i applikasjonslaget blir lagt
sammen til segment i transprotlaget
2G/3G/4G-
Mobilt IP
Rettferdig, har algoritmer som passer på at om flere brukere er på
nettet, vil de over tid justere seg til å bruke like mye bånd bredde
Subtopic
Header: 20 Bytes
Direkte routing
Koblingsorientert/ Forbindelsesorientert protokoll
Routing
Indirekte routing:-
Passer godt for applikasjoner som er avhengig av høy
pålitelighet
Bruksområde
Legger inn en liten forsinkelse slik at data blir lastet inn
Løsning på problem med
Jitter:-Buffring
Jitter:-Nettverksforsinkelse kan være variabel.Variasjonen
i denne forsinkelsen kalles jitter
VoIP (Voice over IP):Toveis kommunikasjon
Subtopic
Transmisjonstid er lite kritisk
HTTP
Multimedia Nettverking
HTTPs
DASH (Dynamic Adaptive streaming over HTTP):Muliggjør høy kvalitets streaming av media innhold over
Internett levert fra HTTP web servere
Multimedianett
Protokoller
SMTP
FTP
Telnet
RAMME/FRAM
E
Tilbyr:Punkt-til-punkt
levering (node til node)
oppkobling
3-way handshake:-Oppkobling/ nedkobling
ved bruk av TCP
Må initiere en kobling
nedkobling
802.3 - Ethernett
noe
Pull protokoll
802.11 -WIFI (Trådløst)
rdt 3.0
Definerer hva skjer dersom to sender til samme tid
Dersom bus er konstant opptatt,Kan
kollisjoner skje så ofte at ytelsen
går ned drastisk
SR (Selective Repeat)
Håndterer kollisjoner når de skjer
CSMA/CD (Colision Detection)
Pipelining (Grupper med pakker):- Sender opptil flere pakker før
man har mottat ack for hver av pakkene
RDT
CSMA(Carrier Sence Multiple Accsess):[Sence before
transmitt]- MAC prookoll- Detetekter om annen trafikk
sender, dersom ikke, er det klart for trasmisjon på det delte
mediumet
Bra for 802.3
http://www.ccs-labs.org/teaching/rn/animations/gbn_sr/
TCP (Transmission Controll Protocol)
Stop-n-Wait (En og en pakke):- Sender en
pakke for å så vente på ack
Hver node signaliserer en intensjon om å sendefør
transmisjon begynner
Har en overflødig overhead -> reduserer ytelse
CSMA/CA (Colition Advoidence)
Pålitelig dataoverføring
Sjeksum
Protokoller
bra for 802.11
Transportlaget
MAC protokoll
9
Sekvensnummer
1/18:2/7
Kummulativ kvittering
Kommunikasjonsteknikk som avgjør om en node er klar til å
sende data
Polling-node har annsvaret for å fordele
tilgang
Implementert funksjonaliteter
Spesiel serie med bit som sendes rundt i et tolken-ring
nettverk
Timer på elsdste ikke kvitterte pakke
Sende og mottaksbuffer
Taking-Turns
Kun en ack
(Data-)Linklaget
Token"stafettpinne"
Flytkontroll
Three way handshake
avgjør hvem som får sende
Retransmisjon:- Dersom sender ikke mottar en ack på at pakke er
ankommet hot mottaker, innen en hviss tidsrom, vil den anta at
pakken er tapt, og sende den på nytt
ALOHA
Parity Check
In-order-delivery:- Selv om pakker ikke ankommer
mottaker i riktig rekkefølge, vil pakkene bli reorganiser
ved mottak hos mottaker
Checksum
CRC
Error detection
Overbelastnings kontroll (Congestion Control):Forsinker transmisjon når nettverket er overbelastet
Sender mer data enn nødvendig for å detektere feil
EDC (Error detection correction bits)
Urettferdig, tar ikke hensyn til hvor mange som er på nettet
Aldri 100% pålitelig
Header: 8 Bytes
ARP - Kobling mellom IP- og MAC adresser"Finne MAC-adressen når IP-adressen er kjent"
Forbindelsesløs protokoll
Bruksområde
Point to Point
Passer godt for applikasjoner som er avhengig av raskt og
effektv transmisjon
To typer linker
Broadcast
DNS
DHCP
TDMA
Protokoller
UDP (User Datagram Protocol)
CDMA
RIP
Kanalpartisjonerning
VoIP
FDMA
Ingen overbelastningskontroll
DATAGRAM
Ikke pålitelig
Logisk kommunikasjon mellom hoster
Fase 1. Slow start
(SS)
Best effort-"Jeg gjør så godt jeg kan, men kan ikke
love noe"
Eksponensielt
SSTHRESH < cwnd
Fase 2. Congestion Avoidance
(CA)
IPv4
cwnd + prRTT
Metningskontroll (TCP forbindelse)
Lineært
IP
IPv4 Header
Ved tre duplikate ACK
Fase 3. Fast Recovery
(FR)
TAP/Timer -> SS
IPv6- 128 bits
IP-adresse- ingen
sjekksum
ICMP (Internett Controll Message Protocol)brukes for å sende feil-meldinger
1. DHCP - Dicover
Protokoller
2. DHCP - Offer
DHCP (4 lag)
DHCP (Dynamic Host Configuration Protocol)- administrerer
TCP/IP konfig. - Sender ut IP-adresser, nettverksmaske,
standardruter og DNS-service til alle klienter på nettet.
3. DHCP - Request
4. DHCP - ACK
Klienten skal dynamisk motta en IP-adresse fra et nettverk når
klienten kobler til en server
Hvordan får en klient en IP-adresse?Spørre -> DHCP, tildelt dynamisk-Sette
en IP-adresse statsik
BGP (Border Gateway Protocol)- Oppretter
semi-permanent TCP-link mellom to rutere
OSPF (Open Shortest Path First)Free-for-all protocoll- Finner ruten
med lavest kostnad
RIP (Router Information Protocol)- bruker ant. hopp
til å beregne avstand/kostnad. - oppdaterer hvert
30.sek- max 15 hopp
Multicast:- Levering av en kopi av en pakke sendt fra en kilde
noede til en delmengde av de andre nettverksnodene
Nettverkslaget
Broadcast:- Levering av en pakke sendt fra en kilde node til alle
andre noder i nettverket
Casts
Unicast:- Sendigng av pakker til en egen nettverksdestinasjon
som er identifisert av en unik addresse
Forwarding: -Handling for å sende en pakke ut på en port og
inn på en annen port
Frowarding vs routing
Routing algoritmer blir benyttet
Routing: -Planlegge hele ruten fra start til
ende
Finne beste rute
Ruting i nettverket blir bestemt før sending
Sti fra sender til mottaker
VC Nummer frem til nærmeste ruter
VC (Virtual Circuit)
State protocol
Linjen må settes opp og reserveres før man kan sende
data. Linjen er da opptatt, selv i stille tid
Stateless protocol
Datagram
Forbindelsen settes opp med rutingsalgoritmer, men det er
mulighet for alternative ruter dersom en link går ned
Forwarding table
Router
Avhengig av informsjon av nettverket fra sine naboer
Blir satt inn i rutingtabellene + info fra naboer
Vektorer blir regnet ut -> avstand til naboer
Distance Vector (Fra nabo til nabo i nettverket)
Protokoll:-R
IP
Routing protocols
Dette blir bagrunnen for rutingstabeller
Alle ruterene i nettverket vet om hverandre (og hverandres
IP-adresser)
Protokoll:OSPF
Global
GBN (Go-Back-N)
Link State (Alle vet om alle)
Begrenset størrelse på transaksjon
RTT = Round Trip Time