Upload
lamnhi
View
225
Download
0
Embed Size (px)
Citation preview
INF1040-Datakom-1© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Datakommunikasjon bak kulissene
Jfr. Cyganski kap. 4, 14, 15, 16, 19, 20
INF1040-Datakom-2© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Forutsetninger for datakommunikasjon
Sender og mottaker – såkalte endesystemer
Kommunikasjonsmedium – dvs. datanettet
Regler og prosedyrer – såkalte protokoller
Kommunikasjonsprogrammer – såkalte brukeragenter
Figur fra Bjørn Ness: Into the great wide open : ABC om kommunikasjonstjenester for universitetets IT-brukere
INF1040-Datakom-3© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Hovedutfordringer i datakommunikasjonDialogkontroll
Kodingsformater
Feiloppretting
Adressering
Ruting
Disse utfordringene møtes ved hjelp av avtaler om hvordankommunikasjonen skal skje – såkalte protokoller
Uten protokoller ville vi drukne i en sjø av 00101010100001011
Protokoller kan væreåpne eller proprietære!
INF1040-Datakom-4© Institutt for informatikk – Gerhard Skagestein 3. november 2004
ProtokollerDefinisjon: “Et avtalt sett med regler som gir orden og struktur til ulikesystemer i ulike situasjoner”
Du bruker protokoller hver eneste dag:
Når telefonen ringer og du tar den, sier du …
Du venter i køen foran minibankautomaten
Du stopper for rødt lys
Et brev har mottagerens adresse på et fastlagt sted og på et fastlagt format
Du vet hvordan du postlegger et brev
Protokoller er utelukkende basert på menneskelige konvensjoner, avtaler og gjensidig forståelse
INF1040-Datakom-5© Institutt for informatikk – Gerhard Skagestein 3. november 2004
LagdelingKomplekse systemer – som. f.eks. systemer for datakommunikasjon – bygges gjerne opp i såkalte lag.
Et bestemt lag benytter tjenester i laget under seg, og yter tjenester til laget over seg
Et overliggende lag kjenner ikke til “innmaten” i tjenestene i detunderliggende laget. Laget vet bare hvordan tjenesten skalanropes, og hvilket resultat som kan forventes. I tillegg kan detstilles krav til tjenestens kvalitet (hvor rask, hvor pålitelig, …)
Kjør meg tilIfi!Taxi
INF1040-Datakom-6© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Et eksempel på lagdeling - telefonsamtalenFysisk lag: Telefonapparater, telefonledninger, sentraler…
Oppsett av ende-til-ende-forbindelse: Slå telefonnummer, vent til anropet besvares
Etablering av dialog mellom to personer:”Dette er hos Jensen..” ”Dette er Pettersen… kunne jeg få snakkemed…” ”Hei, her er Per..”
Typisk telefondialog – partene snakker vekselvis
Avslutning av dialog: ”…Takk for praten”
Nedkobling av ende-til-ende-forbindelse:Legg på røret Protokoller kan også være
gjenstand for forhandlinger, f.eks. om hvilket språk som skalbenyttes
INF1040-Datakom-7© Institutt for informatikk – Gerhard Skagestein 3. november 2004
TCP/IP protokoll-stakkenApplication:Tilbyr et sett av mekanismer (et språk) tilapplikasjoner som vil kommunisere
HTTP, FTP, SMTPdine applikasjoner
Transport:Sørger for datatransport fra endesystem til endesystem
TCP, UDPNetwork:Finner veien gjennom nettverket fra maskin til maskin, adresserer, ruter og videresender data
IPLink:Datatransport mellom to naboer i nettverket, sikrerkorrekt overføring av data over et fysisk medium
Ethernet, PPPPhysical:Biter ”på ledningen”
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-8© Institutt for informatikk – Gerhard Skagestein 3. november 2004
OSI protokoll-stakken (OSI-modellen)OSI – Open Systems Interconnection
ISO-standard 7498
To ekstra lag sammenliknet med TCP/IP
Presentation:Oversetter mellom ulike dataformater, skjuler forskjeller i representasjon av informasjon
Session:Setter opp, kontrollerer og avslutter ”sessions” (jfr. telefonsamtalen), styrer dialogen mellom ende-prosesser
Få (ingen) produkter – i dag kun av teoretisk interesse
Presentation
Session
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-9© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Prinsippene i protokoll-stakkeneHvert lag utfører entydige og spesifikke oppgaver
En funksjon i et lag kommuniserer tilsynelatende med en motsvarende funksjon i det samme laget, men i en annen node
Hvert lag har bare kjennskap til tilgrensende lag
Et lag bruker tjenester fra laget under for å kunne utføre sine egne oppgaver
Et lag yter tjenester til laget over
Grensesnittene for tjenestene er standardisert– “innmaten” kan utformes fritt
INF1040-Datakom-10© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Lagdeling – logisk kommunikasjonEksempel:Transport
Ta imot data fra applikasjonslaget
Legg til mottaker-adresse ogsjekksum
Send data til mottakernoden
Vent på bekreftelse (”ack”)
INF1040-Datakom-11© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Lagdeling – fysisk kommunikasjon
INF1040-Datakom-12© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Fysiske forbindelserLedningsbundet samband (”guided electromagnetic waves”)
Elektrisk
Uskjermet tvunnet parkabel
Skjermet tvunnet parkabel
Koaksialkabel
Lys
Fiberoptisk kabel
Trådløse samband (”unguided electromagnetic waves”)
Radiobølger
Infrarødt lys
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-13© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Fysikkens lover gir begrensningerBegrenset signalhastighet – typisk ca. 2*108 m/s
Begrenset overføringskapasitet – typisk fra 10 Mbps til mange Gbps
Begrenset overføringslengde pga. dempning (”attenuation”), støy og interferens– jo lengre og jo tynnere kabel, jo større dempning
Originalsignal Dempet signal
signalhastighet
overføringskapasitet
I de fleste tilfeller er begrensninger i overføringskapasiteten mer plagsomt ennbegrensninger i signalhastigheten
INF1040-Datakom-14© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Elektriske kabler …
INF1040-Datakom-15© Institutt for informatikk – Gerhard Skagestein 3. november 2004
… og deres karakteristika
100 km
1 km
100 m
100 m
typisk lengde
60 dB10 MbpsKoaksialkabel tynn
20 dB150 MbpsKoaksialkabel tykk
37.5 dB10 Mbps -100 Mbps
Skjermet tvunnet parkabel
56 dB10 Mbps -100 Mbps
Uskjermet tvunnet parkabel
dempning pr 100 m ved 1000 Mhz
typisk kapasitet
kabeltype
økendepris
INF1040-Datakom-16© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Core-cladding boundary
Core and cladding with different indices of refraction
Fiberoptisk kabel
Cyganski figure 14.10
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-17© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Fordeler og ulemper med fiberoptiske kablerFordeler:
Mye høyere overføringskapasitet (Gbps) – kan etablere tusenvis avoverføringskanaler gjennom en eneste fiber
Immun overfor støy og interferens
Høy sikkerhet – sender ikke ut elektromagnetiske signaler– derfor umulige å tappe – forstyrrer ikke omgivelsene
Mindre dempning – mindre enn 0,2 dB/kmTypisk lengde 100 km mellom forsterkere
Pålitelig – særlig i ekstreme miljøer
Lettere og mer kompakt enn kobber
Ulemper:Kostnader for utstyr for å konvertere elektriske signaler til optiske ogvice versa
Krevende å skjøteINF1040-Datakom-18© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Fiberoptiske kabler er på fremmarsjBob Metcalfe:”I dag legges fiber med en hastighet på Mach 3”– i verden legges det altså én kilometer fiber per sekunddvs. to ganger rundt ekvator per døgn!
Stadig høyere overføringskapasiteter:Eksempelvis demonstrerte Siemens høsten 2000 7 terabits pr sekund (7 * 1012 bps) over en eneste fiber, oppnådd med 176 bølgelengder med 40 Gps.Dette tilsvarer mer enn 1000 bps for hvert eneste menneske på jorda!
(Kilde: Geir Steen-Olsen & Arnie Stalheim: Innføring i nettverk – infrastruktur)
INF1040-Datakom-19© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Trådløse samband
Signalhastighet = lyshastigheten 3*108 m/s
Radiospekteret består av mange frekvensbånd
Kommunikasjonsutstyr kan bruke ulike frekvenser
Regulerte frekvenser – bruken er regulert gjennom nasjonale og internasjonale avtaler
Frie frekvenser
Kilde: http://howstuffworks.lycoszone.com/radio-spectrum1.htm
Physical
Link
Network
Transport
Application
Physical hardware
Lav frekvens = lang periode Høy frekvens = kort periode
INF1040-Datakom-20© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Bånd i radiospekteret
MF• AM Radio• Maritimt
HF• Maritimt• Amatørradio
VHF• Televisjon• FM radio• Flytrafikk
UHF/SHF• Satellitt• Televisjon• Mobiltelefoner• Mikrobølger
EHF• Astronomi
~400-2400 MHz frekvensområdeFM radio 88-108 MHz
INF1040-Datakom-21© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Ulike trådløse forbindelserTrådløse forbindelser atskiller seg med hensyn på
Hvilket frekvensbånd som brukes
Enkeltfrekvens eller ”spread spectrum”
Effekt (og dermed dekningsområde)
Punkt-til-punkt eller kringkasting
Trådløse forbindelser er utsatt for avlytting – dette må kompenseres med sikkerhetstiltak (f.eks. kryptering)
INF1040-Datakom-22© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Det fysiske lagetFysisk topologi
Båndbredde
Multipleksing
Bit-synkronisering
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-23© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Fysisk topologi
kreveradressering
Punkt-til-punkt-topologi
Buss-topologi
Stjerne-topologi
Ring-topologi
Maske-topologi
INF1040-Datakom-24© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Båndbredde, basisbånd vs. bredbåndBåndbreddeTeoretisk mål for overføringskapasitet
Båndbredden kan utnyttes på to måter:
Basisbånd-signalering
» Signalet sendes digitalt og tar hele båndbredden
Bredbåndsignalering
» Signalet formidles ved å modulere en bærebølge(amplitude, frekvens, faseskift, …)som overføres analogt (!)
» Gir flere kanaler – flere signaler kan overføres samtidig(multipleksing)
Multipleksing kan ogsågjøres med tidsdeling
INF1040-Datakom-25© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Bit-synkronisering
Det kommer en strøm avbiter over overføringsmediet
Mottaker må væresynkronisert med avsender
Mottaker må få vite hvorhver byte begynner ogslutter
Husk at biter kan mistes påveien – hvordan forhindreat en tapt bit ødeleggerhele meldingen?
Cyganski Fig 4.1
INF1040-Datakom-26© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Point-to-point, asynkron overføring
Sender og mottaker må være enige om bitraten
Synkronisering mellom hver byte
Etter mottak av stop-bit venter mottager på neste start-bit og synkroniserer
I tillegg sendes ofte et paritetsbit
Må sende 11 bit for å overføre 8 bit data
Eksempel på standard: RS-232
Startbit
Databit 1
Databit 2
Databit 3
Databit 4
Databit 5
Databit 6
Databit 7
Databit 8
Stopbit
INF1040-Datakom-27© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Point-to-point, synkron overføring
Klokkingen overføres i parallell med dataene
på separat linje
integrert (spenningsendring = 0, ingen spenningsendring = 1)
En av sidene gir klokkingen, den andre tar klokkingen
Databit 1
Databit 2
Databit 3
Databit 4
Databit 5
Databit 6
Databit 7
Databit 8
Databit 9
Databit 10
Her: Integrertklokking
INF1040-Datakom-28© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Point-to-point, overføring i pakker
Eksempel: HDLC – High level data link protocol
En ramme startes og avsluttes med en flaggbyte = 01111110
Datamengden kan være stor (flere tusen biter)
Flagg
01111110
CRC
16 biter
Data
N * 8 biter
Kontroll
16 biter
Adresse
8 biter
Flagg
01111110
Standard HDLC ramme (”frame”)
HDLC-formatet dekkerogså Link-laget
INF1040-Datakom-29© Institutt for informatikk – Gerhard Skagestein 3. november 2004
HDLC Bit -stuffingEn protokoll som HDLC vil feile hvis flagg-byten forekommer ogsåandre steder i bitstrømmen
Husk at 01111110 = ASCII/UTF-8 “~”
Slutten på et tegn sammen med begynnelsen på et annet, eller f.eks. en RGB-verdi kan også gi 01111110
For å fikse dette problemet:Etter at flagg-byte er sendt:
Sender: Hvis du har sendt fem 1 etter hverandre, sett inn en ekstra 0
Mottaker: Hvis du har mottar fem 1 etter hverandre, etterfulgt aven 0, fjern 0’en
Dette kalles Bit Stuffing eller Zero Bit InsertionINF1040-Datakom-30© Institutt for informatikk – Gerhard Skagestein 3. november 2004
LinklagetKontrollerer dataflyt i det fysiske laget
Fysisk adressering
Feilhåndtering (ved hjelp av CRC)CRC – ”Cyclic Redundancy Check” – en sjekksum som gjør det mulig å kontrollere at dataene er korrekt overført
Flytkontroll (forhindre at sender sender mer enn mottaker kan motta)
Physical
Link
Network
Transport
Application
SjekksumCRC
DataPakke IDSenderadresse
Mottaker adresse
header
Pakke med ID = id OKMottakeradresse
Sender adresse
Jfr. HDLC-formatet
Physical hardware
INF1040-Datakom-31© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Lokalnett-teknologierEthernet, trådløse nett
Buss-topologi
Adressering ved hjelp av Ethernet-adresserOUI (Organizationally Unique Identifiers) 48 biterogså kalt MAC-adresserjf. Cyganski side 263
“Den høflige samtale” – Collision Detection Multiple Access
» Lytt på linjen
» Hvis det er stille, kan vi sende
» Sjekk om noen andre er begynt samtidig
» Ved kollisjon, avbryt sending og vent en tilfeldig tid førneste forsøk
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-32© Institutt for informatikk – Gerhard Skagestein 3. november 2004
NettverkslagetFinner veien gjennom nettverket fra maskin til maskin, adresserer, ruter og videresender dataSvitsjing
Linjesvitsjing(CCITT X.21) En fast forbindelse gjennom nettet opprettes og holdesoppe så lenge “sesjonen” varer.
Meldingssvitsjing (“store and forward”)Pakkesvitsjing(CCITT X.25) Dataene deles opp i mindre pakker som sendes uavhengig
av hverandre gjennom nettet. På mottakersiden må pakkene settessammen igjen i riktig rekkefølge. Hvis en pakke skulle være feilaktigeller mangle, må mottaker be avsender om å få den overført en gang til.
Logisk adressering og rutingMetafor: Transport av et vanlig brev
Eksempel på protokoll: IP (Internet Protocol)
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-33© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Transportlaget
Sørger for datatransport fra endesystem til endesystem
Skjuler kompleksiteten i underliggende lag
Kan tilby ulike transporttjenester
Forbindelsesløs – upålitelig
Forbindelsesorientert – pålitelig
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-34© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Forbindelsesorientert transporttjenesteOppstart
Etabler forbindelsen – Handshaking
Lager en tilstand i de to endesystemene
Under kommunikasjonen – forbindelse
Endesystemene forventer data fra kommunikasjonspartneren
Tilbakemelding til sender om at dataene er kommet vel fram (eller eventuelt ikke)
Avslutning av kommunikasjonen
Bryt ned forbindelsen (bye-bye)
Eksempel på protokoll: TCP (”Transmission Control Protocol”)
INF1040-Datakom-35© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Forbindelsesløs transporttjenesteOppstart
Ingen oppstart, bare begynn å sende data
Endesystemer må alltid forvente data
Under kommunikasjonen – ingen oppsatt forbindelse
Ingen bestemt tilstand i endesystemene
Sender vet ikke om mottaker forventer data
Ingen tilbakemelding til senderen om at dataene er kommet vel fram til mottaker
Sender må identifisere seg i hver melding
Avslutning av kommunikasjonen
Ingen nedkobling – bare slutt å sende data
Eksempel på protokoll: UDP (”User Datagram Protocol”)
Det enkle kanvære bra nok
INF1040-Datakom-36© Institutt for informatikk – Gerhard Skagestein 3. november 2004
ApplikasjonslagetApplikasjonslaget tilbyr egnede tjenester for egenutviklede applikasjonsprogrammerI tillegg tilbyr applikasjonslaget standardiserte tjenesterofte spesifikke for de underliggende protokollene
Internett-tjenester som bruker TCP
HTTPFTP (filoverføring)SMTP (e-post)Telnet (fjerninnloging)
Internett-tjenester som bruker UDP
Streaming media
Videokonferanser
Internett-telefoni
Navnetjenere
Physical
Link
Network
Transport
Application
Physical hardware
INF1040-Datakom-37© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Sammenkopling av nett
Ulike typer utstyr
Repeatere –forsterker signalet
Broer og svitsjer –sammenkopling i link-laget
Rutere –sammenkopling i nettverkslaget
Gateways –sammenkopling i applikasjonslaget
jf. Cyganski side 274
INF1040-Datakom-38© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Topologien i Internett
Flere mulige veier fra A til B
For hver “datapakke” velges “billigste” vei
ruter
ruter
ruter
ruter
ruterruter
ruter
A B
INF1040-Datakom-39© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Hvordan adressere maskiner
IP-adresse
Entydig adresse til maskiner tilknyttet Internett
Format: 4 tall med punktum mellom
Eks.: 128.39.177.105
DNS-adresse
Format: domene.domene . . . toppdomene
» Eks.: www.ifi.uio.no
Hierarkisk adressesystem
En maskin har bare én IP-adresse, men kan ha flere nodenavn
Hvorfor DNS-adresser?
• Enklere å huske
• Samme maskin kan ha flere navn
• DNS-adresse kan flyttes fra maskin til maskin
INF1040-Datakom-40© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Hvordan adressere maskiner (forts.)
OUI-adresse/MAC-adresse (Ethernet-adresse)
Entydig adresse på Ethernet-nettverkskort
Hvilken IP-adresse har maskinen med en gitt OUI-adresse?
Statisk tilordning – fast IP-adresse
Dynamisk tilordning – IP-adressen tildeles ved pålogging på nettet
Ruteren har tabeller over tilordningene
Hvordan vet vi om en maskin med en gitt IP-adresse befinner seg i lokalnettet eller ikke?
INF1040-Datakom-41© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Fra DNS-adresse til IP-adresse
NettleserNavnetjener
http://128.39.177.3/ . . .
lokal nodenavn/ nettadresse - tabell
tabell over andre navnetjenere som kan hjelpemed ukjente nodenavn
DNS-adresse
IP-adresse
Navnetjener
www.uio.no?
128.39.177.3
Web-tjener
Web-tjenerens administrator mågarantererenodenavnets nettadresse over en gitt periode
lokale navnetjenere
INF1040-Datakom-42© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Tjenestekvalitet (QoS – Quality of service)Kvalitetsparametre
Pålitelighet
Overføringskapasitet
Forsinkelse
…
Ulike anvendelser har ulike behov!Eksempler:
Overføring av tekst (forsinkelse OK, pakketap ikke OK)
Videostreaming (Bufrer hos mottaker – forsinkelse og pakketap er OK)
Toveis telefoni (Tåler bare små forsinkelser -> linjesvitsjing eller pakkesvitsjing med garantert QoS)
INF1040-Datakom-43© Institutt for informatikk – Gerhard Skagestein 3. november 2004
Hvordan bedre tjenestekvalitet?
Overdimensjonering av båndbredde
Trafikkprioritering
Optimalisering av pakkehåndtering i nodene
INF1040-Datakom-44© Institutt for informatikk – Gerhard Skagestein 3. november 2004
IPv6 vs. IPv4
Adresserom øket fra 32 bit til 128 bit-> gir mulighet for 1500 IP-objekter pr m2 på jordens overflate
Ryddigere IP-adresser – kortere ruting-tabeller
Enklere (automatisert) tildeling av IP-adresser
Innføring av tjenesteklasser-> mer effektiv behandling i nettverket-> prioritering mulig
Sikkerhetsmekanismer
IPv6 kan samkjøres med IPv4
INF1040-Datakom-45© Institutt for informatikk – Gerhard Skagestein 3. november 2004
OppsummeringLagdelte protokoller er sentrale i datakommunikasjonFysiske overføringsmedier
Ledningsbundet samband: Elektriske kabler, fiberoptiskekablerTrådløse samband: Radio, infrarødt
Multipleksing gir flere kanaler på samme fysiske samband:Tidsdeling, frekvensmodulasjonPoint-to-point-forbindelserLokalnett: Ethernet, Token Ring, …Fjernnett: Pakkesvitsjing, meldingssvitsjing, linjesvitsjingSammenkoblingsutstyr: Repeatere, svitsjer, rutere og “gateways”Lokalnett knyttes til fjernnett med rutere eller ”gateways”Adressering av maskiner – OUI/MAC, IP, DNSTjenestekvalitet – ulike anvendelser har ulike behov