Home

TCPverbindingen

Een TCP-verbinding is een betrouwbare, verbindingsgerichte communicatiestroom tussen twee eindpunten over een IP-netwerk. De verbinding wordt opgebouwd via een drieweg-handdruk (SYN, SYN-ACK, ACK), waarbij beide kanten parameters zoals sequentienummers en vensters afspreken. Eenmaal opgezet kunnen de eindpunten data verzenden via TCP-segmenten die in volgorde en zonder duplicaten worden afgeleverd.

Kenmerken van TCP-verbindingen zijn onder meer betrouwbaarheid, doordat ontvangsten worden bevestigd en ontbrekende segmenten worden herhaald;

De terminering van een TCP-verbinding gebeurt doorgaans met een vierweg-handdruk waarbij een zijde een FIN verzendt

Schaal en adressering: elke verbinding wordt geïdentificeerd door een 4-tuple (bron-IP, bronpoort, doel-IP, doelpoort) en wordt

foutdetectie
via
checksums;
en
in-order
levering,
waardoor
de
verzonden
data
altijd
in
de
juiste
volgorde
bij
de
ontvanger
aankomt.
Daarnaast
zorgt
flow
control
via
een
ontvangersvenster
ervoor
dat
de
zender
nooit
meer
data
verzendt
dan
de
ontvanger
kan
verwerken.
Congestiecontrole
regelt
de
verzendsnelheid
om
netwerkcongestie
te
voorkomen;
veelal
met
algoritmes
zoals
Slow
Start,
Reno
of
Cubic,
aangepast
op
het
netwerkpad.
en
de
andere
zijde
bevestigt
met
een
ACK,
waarna
de
andere
zijde
eveneens
afsluit.
Een
verbinding
kan
ook
abrupt
worden
beëindigd
met
een
RST
als
er
een
fout
optreedt.
vaak
beheerd
via
sockets.
TCP
wordt
veel
gebruikt
voor
toepassingen
die
betrouwbaarheid
vereisen,
zoals
webverkeer
(HTTP/HTTPS),
e-mail
en
bestandsoverdracht.
In
tegenstelling
tot
TCP
biedt
UDP
een
connectionless
en
onbetrouwbare
service;
veel
toepassingen
bouwen
eventuele
betrouwbaarheid
en
ordre
op
hoog
niveau
op
boven
TCP
of
kiezen
UDP
voor
lage
latentie.
Voor
beveiliging
kan
een
TCP-verbinding
worden
versleuteld
met
TLS/SSL.