

Innføring i datakommunikasjon
Gyldendal-TISIP-serien – databøker på norsk!
Gyldendal Akademisk og Stiftelsen TISIP ved Høgskolen i Sør-Trøndelag har gått sammen om å utvikle en portefølje av databøker på norsk, som er skreddersydde for pensummarkedet ved universitet og høgskoler. De passer også godt for selvstudium og etterutdanning.
Målet med bokserien er å utvikle litteratur som er fullt på høyde med den engelskspråklige, både faglig og pedagogisk. Bøkene skal alltid være faglig à jour og ha gode nettsider som er tilpasset behovet til studenter og forelesere.
Per Borgesen: Dynamiske websider, 1. utgave 2003
Marie Christensen og Louis Harder Fischer: Utvikling av multimedier, 1. utgave 2004
Mads E. Eilertsen og Arne B. Mikalsen: Linux tjenestedrift, 1. utgave 2003
Helge Hafting og Mildrid Ljosland: Algoritmer og datastrukturer, 1. utgave 2003
Ø. Hallsteinsen, B. Klefstad og O. Skundberg: Innføring i datakommunikasjon, 1. utgave 2005
Kjell Toft Hansen og Tore Mallaug: Databaser, 2. utgave 2008
Tore Berg Hansen og Greta Hjertø: Kvalitet og programvareutvikling, 1. utgave 2003
Svend Andreas Horgen: Webprogrammering i PHP, 2. utgave 2005
Else Lervik og Vegard B. Havdal: Programmering i Java, 3. utgave 2004
Else Lervik og Mildrid Ljosland: Programmering i C++, 1. utgave 2003
Geir Maribu: Praktisk Linux, 2. utgave 2006
Bokserien ble i 2005 tildelt Rosings språkpris, utdelt av Den Norske Dataforening og Norsk språkråd. Fra juriens begrunnelse:
«Årets språkpris går til en kandidat som i flere år har gjort en innsats for å utarbeide og produsere IKT-lærebøker av høy faglig kvalitet på norsk. De har vist at det ikke bare er mulig å lage og selge norskspråklige lærebøker i IKT-fag, men også at norsk er et fullgodt og funksjonelt fagspråk på et område som ellers er sterkt preget av sitt engelskspråklige opphav.»
Øyvind Hallsteinsen, Bjørn Klefstad, Olav Skundberg

Innføring i datakommunikasjon


© Øyvind Hallsteinsen, Bjørn Klefstad og Olav Skundberg, Stiftelsen TISIP og Gyldendal Norsk Forlag 2008
1. utgave 2005
2. utgave, 6. opplag 2015
ISBN 978-82-05-38414-9
Omslagsfoto: Scanpix
Omslag: Kristin Berg Johnsen
Layout: Designlaboratoriet
Sats: Øyvind Hallsteinsen, Bjørn Klefstad og Olav Skundberg
Brødtekst: Times New Roman 10,5/12,5 pkt
Papir: 90 g My Soll Matt
Trykk: Dimograf, Polen, 2015
Boken er utgitt i samarbeid mellom
Stiftelsen TISIP og Gyldendal Akademisk
Alle henvendelser om boken kan rettes til Gyldendal Akademisk
Postboks 6730 St. Olavs plass 0130 Oslo
www.gyldendal.no/akademisk akademisk@gyldendal.no www.tisip.no
Verken Øyvind Hallsteinsen, Bjørn Klefstad, Olav Skundberg, Stiftelsen TISIP eller Gyldendal Akademisk tar ansvar for at programmene i boka og på bokas internettside kan brukes til annet enn undervisningsformål.
Det må ikke kopieres fra denne boka i strid med åndsverkloven eller avtaler om kopiering inngått med KOPINOR, interesseorgan for rettighetshavere til åndsverk. Kopiering i strid med lov eller avtale kan medføre erstatningsansvar og inndragning, og kan straffes med bøter eller fengsel.
Innhold
Innledning
Kapittel 1
Introduksjon til datakommunikasjon
1.1Introduksjon
1.2IKT og datakommunikasjon
1.3Hva er bredbånd?
1.4Kort om den historiske utviklingen
Kapittel 2 Grunnprinsipper
2.1Grunnprinsipper
2.2Standardisering
2.3Standardiseringorganisasjoner
2.3.1ISO
2.3.2ITU
2.3.3IEEE
2.3.4IETF
2.3.5W3C
2.3.6Arbeidsdelingen mellom standardiseringsorganisasjonene
2.3.7Norske standardiseringsorganisasjoner
2.4Lagdelte kommunikasjonsmodeller
2.4.1Innkapslingsprinsippet (innpakking og utpakking)
2.4.2Lagene og deres funksjoner
2.5Pakkesvitsjede nettverk
2.5.1Pakkesvitsjing
2.5.1.1Datagramnettverk
2.5.1.2Virtuell-kanal-nettverk
2.5.2Linjesvitsjing
2.6Klient–tjener-arkitektur
31
32
32
3.2.1Nettleseren
3.2.2Webtjeneren
3.2.3HTML
3.2.4URL
3.2.5HTTP
3.2.5.1HTTP-forespørsel
3.2.5.2HTTP-svar
3.2.6Metoder for å effektivisere webtjenesten
3.2.6.1Lokal mellomlagring
3.2.6.2Vedvarende forbindelser
3.2.6.3Vedvarende forbindelser med pipelining
3.2.6.4Parallelle forbindelser
3.2.6.5Informasjonskapsler
3.3.1E-postklienter
3.3.2E-posttjenere
3.3.3Sending av e-post med SMTP
3.3.4Formatet på e-post
3.3.4.1E-postformat og RFC 2822
3.3.4.2MIME
3.3.5Lesing av e-post med POP3 og IMAP4
3.4.1Navneoppslag i DNS sett fra sluttbruker
3.4.2DNS og virtuelle webtjenere
3.4.3Strukturen på domenenavn
3.4.4Forvaltning av
3.4.5Kort om implementeringen av
3.4.6DNS-håndtering av oppslag fra lokal navnetjener
3.4.7Flere funksjoner
3.5Om applikasjonslagets
Kapittel 4 Transportlaget
4.1Transportlagets oppgave
4.2Adressering på transportlaget
4.4Forbindelsesorientert og forbindelsesløs kommunikasjon
4.5Glidende vindu
4.6Deteksjon av bitfeil
4.6.2Andre feildeteksjonsmetoder
4.7Pålitelig dataoverføring med TCP
4.7.1TCP pakkeformat
4.7.2Etablering av forbindelse
4.7.3Pålitelig overføring av data
4.7.4Tilpasning til mottakers kapasitet – flytkontroll
4.7.5Tilpasning til nettets kapasitet, metningskontroll
4.7.6TCPs sendevindu
4.7.7TCPs tilstandskontroll
4.8Upålitelig dataoverføring med UDP
4.9Eksempler på bruk av porter
Kapittel 5
Nettverkslaget
5.1Nettverkslaget
5.2Ulike typer nettverk
5.3IP-adresser
5.4Nettadresser
5.4.1Nettmasker
5.4.2Oppdeling av nettadresser
5.4.3Klasseløse og klassebaserte nettadresser
5.5Reserverte IP-adresser
5.5.1Private IP-adresser
5.5.2Link lokale adresser
5.5.3Multicastadresser
5.6IP-protokollen
5.7Fragmentering av IP-pakker
5.8Protokoll for feilmelding og informasjon (ICMP)
5.9Rutere
Kapittel 6
Lenkelaget og det fysiske laget
6.1Oppgavene til lenkelaget og det fysiske laget
6.2Lenkelaget
6.2.1Praktisk håndtering av arbeidsoppgavene til lenkelaget
6.3Konstruksjon av nettverk
6.3.1Eksklusiv og delt tilgang
6.3.2Full dupleks-, halv dupleks- og simpleksforbindelser
6.3.3Punkt-til-punkt og multipunkt
6.3.4Kollisjonsdomene og kringkastingsdomene
6.3.5Teknologikombinasjoner
6.4Aksessmekanismer
6.4.1Konkurranse
6.4.2Stafettpinne (Token passing)
6.4.3Polling
84
85
87
89
6.5Det fysiske laget
6.5.1Praktisk håndtering av arbeidsoppgavene til det fysiske laget .
6.6Medier
6.6.1Valg av overføringsmedium
6.6.2Trådparkabler
6.6.3Fiber
6.6.4Trådløs kommunikasjon
6.7Analoge og digitale data og signaler
6.7.1Symboler, signaleringsrate og bitrate
6.7.2Digital signalering – sprangvis variasjon
6.7.3Analog signalering – modulering av bærebølge
6.7.4Synkronisering
6.8Multipleksing
6.8.1Frekvensdelt multipleksing
6.8.2Tidsdelt multipleksing
6.8.3Statistisk multipleksing
Kapittel 7 Ethernet og trådløse lokalnettverk
7.1Innledning
7.2Ethernet
7.2.1Hvordan Ethernet fungerer
7.2.2Regulering av tilgang til mediet med CSMA/CD
7.2.3Svitsjet Ethernet
7.2.4Kollisjonsdomene og kringkastingsdomene
7.2.5Ethernet rammeformat
7.2.6Behandling av Ethernet-rammer
7.2.7MAC-adresser
7.2.8Ethernet-standarder
7.3.1Ulike bruksområder, ulike løsninger
7.3.2Trådløse lokalnettverk
7.3.3Ytelse i trådløse lokalnettverk
7.3.4Operasjon i et trådløst lokalnettverk
7.3.5Regulering av tilgang til mediet med CSMA/CA
7.3.6Regulering av tilgang til mediet med 802.11 PCF
7.3.7Sikkerhet i trådløse lokalnettverk
7.3.7.1Wired Equivalent Privacy (WEP)
7.3.7.2MAC-aksessliste .
7.3.7.3Skjult nettverksnavn (ESSID)
7.3.7.4Wi-Fi Protected Access (WPA) .
7.3.7.5IEEE 802.11i (WPA2)
7.3.7.6Webinnlogging
7.3.7.7Virtuelt Privat Nettverk (VPN)
7.3.7.8Bruke krypterte protokoller .
Kapittel 8
Nettverk i praksis .
8.1Hvordan komme seg på nett?
8.1.1Forbindelsen til Internett
8.1.2Infrastrukturen
8.1.3Oppsett på datamaskinen
8.1.4Dynamic Host Configuration Protocol (DHCP)
8.1.5Kopling mellom IP- og MAC-adresser: ARP
8.1.6Network Address Translation (NAT)
8.1.6.1Statisk videresending av porter (port forwarding) .
8.1.7Alternativ infrastruktur
8.2Nettverkskomponenter
8.2.1Det fysiske laget – repeatere, mediekonvertere og huber
8.2.2Lenkelaget – broer, svitsjer og trådløse aksesspunkter .
8.2.3Nettverkslaget – rutere
8.2.4Over nettverkslaget – gateway
8.2.5Brannmurer
8.2.6Sikkerhetskomponenter
Kapittel 9 Teletjenester
9.1Teletjenester
9.2Infrastruktur for telekommunikasjon
9.2.1Tjenestenett
9.2.2Aksessnett
9.2.2.1Telefon
9.2.2.2Modem
9.2.2.3ISDN
9.2.2.4ADSL
9.2.2.5ADSL 2+
9.2.3Transportnett
9.3Bruk av teletjenester
9.4Digital Subscriber Lines – DSL
9.5ADSL
9.6ADSL2+
9.7SHDSL
9.8Very High Speed Digital Subscriber Line
9.9Sammenligning av egenskaper for ulike DSL-teknologier
9.10Teletjenester
9.10.1Faste leide linjer
9.10.2Frame Relay
9.10.3Asynchronous Transfer Mode
9.10.4Multiprotocol Label Switching (MPLS)
9.10.4.1Nordic Connect
9.10.5Triple play
182
182
185
186
189
190
9.10.6X.25-nett (smalbånd)
9.10.7Sammenligning av teletjenester
Kapittel 10
Mer om nettverking
10.1Innledning
10.2Nettverksteknologier på lenkelaget
10.2.1Virtuelle lokalnett (VLAN)
10.2.2Spanning Tree Protocol (STP)
10.3Nettverksteknologier på nettverkslaget
10.3.1Virtuelle private nett (VPN)
10.3.1.1Bakgrunn
10.3.1.2VPN-teknologier
10.3.2IP versjon 6 (IPv6) .
10.3.2.1Hva skiller IPv6 og IPv4?
10.4Rutingprotokoller og autonome systemer
10.4.1Rutingalgoritmer
10.4.2Autonome systemer
10.4.3Rutingprotokoller på Internett
10.5Nettverksadministrasjon
10.5.1Hvordan utføre administrasjon?
10.5.2Telnet og SSH
10.5.4Simple Network Management Protocol (SNMP)
10.5.5Network Management System (NMS)
10.6Sikker kommunikasjon
10.6.1Fire behov for sikker kommunikasjon
10.6.2Tre teknikker for å sikre kommunikasjonen
10.6.3Digitale sertifikat og PKI
10.7Multimedia
10.7.1Digitalisering og koding av lyd
10.7.2Digitalisering og koding av video
10.7.3Avspilling og kommunikasjon i sanntid
Vedlegg A
Hjelpeprogram
A.1Innledning
A.2Pakkeanalyse – Wireshark
A.2.1Installasjon av Wireshark
A.2.2Bruk av Wireshark
A.3Test konnektivitet – ping
A.4Spore rute på nettet – traceroute, tracert
A.5TCP/IP-oppsett – ipconfig og ifconfig
A.6Rutingtabell på PC – route og netstat
A.7Aktive sesjoner – netstat
A.8Informasjonssanking – whois
A.9Informasjonssanking – nslookup og dig
A.10Kopling mellom logiske og fysiske adresser – arp
A.11Teste tjenester – Telnet
A.12Referanser
Vedlegg B
Socketprogrammering
B.1Innledning
B.2Programkode for DatakomKlient
B.3Programkode for DatakomTjener
B.4Sammenhengen mellom programkode og pakker på nettet
Vedlegg C
Detaljer om Ethernet
C.1Innledning
C.2Historisk overblikk over Ethernet
C.3Ethernet rammeformat
C.4Behandling av Ethernet-rammer
Stikkord