TCP/IP

advertisement
Voorbeeld
objecten
(“wie”)
Betaalautomaat
klant
bank
betaalautomaat
interface
(“wat”)
service-punt
(“waar”)
“Black box” en decompositie
Betaalautomaat
bank
klant
computer
flappentap
communicatiesysteem
betaalautomaat
hiërarchische
decompositie
in 2 lagen
Voorbeeld 3-laags
hiërarchische decompositie
Blair
tolk E-F
secretary
peer-
overleg
peer-
overleg
peer-
overleg
fax
berichtendienst
EU-topoverleg
Schröder
tolk F-D
Sekretär
Standaardmodel
ISO-OSI Referentiemodel
ISO = International Standards Organization
O = Open
van verschillende merken
S = Systems
I
= Interconnection
m.b.t. telematica
Terminologie
interface
protocol
medium
Verloop van het protocol
Data
Data
niveau
niveau
n niveau
n
n
niveau
niveau
n niveau
n
n
service user
peer
Protocol
Protocol
Service
Ctrl Info
Data Data
Unit Unit
Protocol
Protocol
Service
Data Data
Unit Unit
Ctrl Info
service provider
niveau n-1
Service
Data Unit
niveau n-1
Service
Data Unit
Protocol-beschrijving
geboden diensten
aan bovenliggende laag
protocol
entiteit
communicatie
met peer
gevraagde diensten
van onderliggende laag
ISO-OSI 7-lagenmodel
7
6
5
4
3
2
1
0
applicatie
presentatie
sessie
transport
netwerk
data link
fysiek
medium (draad, glasvezel, radio, ...)
ISO-OSI 7-lagenmodel
applicatie
file transfer, WWW, e-mail, ...
transport
communicatie tussen processen
netwerk
communicatie tussen computers
data link
versturen van frames over een LAN
fysiek
medium
versturen van bits
versturen van signaal
ISO-OSI Reference model
OSI is niet een protocol-beschrijving
maar biedt houvast door vaste terminologie
ik heb een goed idee
voor een nieuw protocol...
...voor de netwerk-laag!
Voorbeeld protocollen
applicatie
HTTP FTP SMTP
transport
TCP
netwerk
IP
Transmission Control Protocol
Internet Protocol
data link
fysiek
medium
V34
HyperText/File/Mail
Transfer Protocol
(ISDN)
TCP/IP is
grondslag van
“het” Internet
Standaardisatie-strijd
ISO
OSI-model
IETF
IETF
protocollen
TCP/IP model
applicatie
applicatie
transport
TCP
transport
netwerk
IP
internet
data link
fysiek
wij gaan mooi
niet jullie model
gebruiken!
host-tonetwork
Media
Via een draad
“Twisted pair”
2 gevlochten koperdraadjes
Coax-kabel
kern met afscherming
Glasvezel-kabel
buigzame lichtgeleider
De fysieke laag
Hoe kun je media en signalen gebruiken
om bits te transporteren?
Fysieke protocol-laag
Doel: realisatie van een bit-stream
fysieke laag
medium (draad, glasvezel, radio, ...)
Fysieke protocol-laag
Functies:
Modulatie/demodulatie
bits naar signaal-elementen en terug
Multiplexing
meerdere verbindingen via één medium
Synchronisatie
Relaying
De datalink-laag
Hoe kun je een betrouwbare verbinding
maken in punt-naar-punt netwerken?
Datalink protocol-laag
Doel: realisatie van een betrouwbare
verbinding
datalinklaag
fysieke laag
medium
Datalink protocol-laag
Functies:
Verdeling in frames
Foutdetectie en -correctie
Her-transmissie (na gedetecteerde fouten)
Flow control
(voorkomt overstroming)
Access control
(bij gemeenschappelijk medium)
Medium Access
Hoe kun je met z’n allen één draad
gebruiken?
De netwerk-laag
Hoe kun je netwerken die intern direct
verbonden zijn, met elkaar koppelen?
Netwerk protocol-laag
Doel: versturen van packets tussen
computers in verschillende netwerken
netwerklaag
packet
datalinklaag
frame
fysieke laag
bit
medium
signaal
naam van verstuurde ding
Opbouw van een
inter-netwerk
host
host
netwerk
host
host
host
router
host
router
host
netwerk
host
host
netwerk
host
router
host
netwerk
host
host
router
host
host
host
Router (= Switch = Gateway)
Functie van een router: store and forward:
accepteer packets en stuur ze door...
naar host van bestemming
of anders...
naar de andere router
of, als er meerdere
zijn, naar de beste
router
router
host
netwerk
router
host
host
Voorbeeld netwerklaag:
IP = Internet Protocol
Hoe werkt het Internet Protocol?
Opbouw IP-packet
32 bits
ver head
sie len
type
packet length
identificatie
time to live
wordt
elke stap
verlaagd;
voorkomt
rondzingen
fragment nr
protocol
header checksum
5
words
adres afzender
adres bestemming
evt. opties (afhankelijk van headlen)
<13
frame
<65k
words
bytes
Opbouw IP-adres
0 netwerk
10
host
netwerk
110
126 netwerken à 16M hosts
netwerk
1110
16k netwerken à 64k hosts
host
host
2M netwerken à 254 hosts
multicast-groep
11110
gereserveerd
getal . getal . getal . getal
131 . 211 . 80
. 7
routers hebben
meerdere
IP-adressen!
Internet Control
Message Protocol
Bij problemen, bijvoorbeeld
host onbereikbaar
time-to-live is nul geworden
checksum klopt niet
wordt het packet weggegooid en
gaat er een foutmeldings-packet terug
naar de afzender
De transport-laag
Hoe kunnen processen over een netwerk
communiceren?
Transport protocol-laag
Segmenteren van continue datastroom in
afzonderlijke segmenten
Herstel van in netwerk-laag kwijtgeraakte
packets, aflevering in volgorde
Adresseren van aparte processen
(eventueel meerdere) op host
Voorbeeld transport-laag:
TCP = Transport Control Protocol
Service access points:
IP-adres plus “poort”
16-bits nummer
van een proces
niet te verwarren
met de hardware-term!
De applicatie-laag
Wat zullen we eens voor leuks gaan doen
met dat Internet ?
FTP: File transfer protocol
Server accepteert op poort 20 verbinding
met een client en leest een regel tekst.
Is het eerste woord “dir”, dan stuurt-ie
een directory-listing naar de client
Is het eerste woord “get”, dan stuurt-ie
de inhoud van het tweede woord
Is het eerste woord “put”, dan ontvangt-ie
een file
enz.
protocol: afspraak wat de reactie
zal zijn bij diverse berichten
DNS: Domain name server
Server accepteert op poort 53 verbinding
met een client en leest een regel tekst.
Dat moet een domein-adres zijn,
bijvoorbeeld “infix.cs.uu.nl”
Hij antwoordt wat het overeenkomstige
IP-adres is: “131.211.80.7”
Telnet: “tele-werken”
Server accepteert op poort 23 verbinding
met een client en leest een regel tekst.
Dat moet een commando zijn
Hij stuurt de output daarvan terug
SMTP: Simple Mail
Transfer Protocol
Server accepteert op poort 25 verbinding
met een client en leest regels tekst.
De eerste regel is, geheel volgens protocol,
de tekst “HELO”
Vervolgens ontspint zich, volgens protocol,
een hele dialoog, waarmee mail
uitgewisseld wordt
En nog veel meer
protocollen...
HTTP (op poort 80)
Hyper Text Transfer Protocol
NNTP (op poort 119)
Network News Transfer Protocol
IRC
Internet Relay Chat
Download