
Client-server modellen
De meeste protocollen, of verzameling van protocollen die de werking van één dienst definiëren, maken gebruik van het zogenaamde 'client-server' principe. De gebruiker beschikt daarbij over een applicatie, de client, op zijn pc via welke hij commando's geeft of vragen stelt die deze applicatie doorgeeft aan een 'server' elders op het Internet. De server geeft de client een antwoord, waarna de client eventueel opnieuw een commando kan geven of een vraag kan stellen aan deze server, of aan een andere server. Conceptueel worden er drie client-servermodellen gebruikt door de communicatieprotocollen van het Internet. Deze zijn weergegeven in figuur: 'Client-servermodellen'. Allereerst is er het klassieke model, waarbij een client een verbinding met een server maakt en gedurende deze verbinding een vraag- en antwoordspel uitvoert zonder dat de server de mogelijkheid heeft om hetzij zelf met andere servers te communiceren hetzij aan de client een verwijzing te geven naar een andere server. Indien de gebruiker naast deze server nog een andere wil raadplegen zal hij daarvoor in dit model zelf - handmatig - met die andere server een verbinding moeten opzetten. Dit model wordt gehanteerd bij protocollen zoals ftp en telnet (zie verder hieronder). Het wordt gebruikt bij bijvoorbeeld het raadplegen van een bibliotheekcatalogus.
Afbeelding: Drie
Client-servermodellen (2.51 kb)
Bij het tweede client-servermodel heeft de server de mogelijkheid om te
communiceren met andere soortgelijke servers op het Internet. De server geeft
geen verwijzingen aan de client door naar andere servers, maar handelt zelf
alle communicatie met andere servers af. Dit principe wordt gehanteerd bij
bijvoorbeeld de e-mailprotocollen, bij X.500 en het Network News Transfer
Protocol (deze protocollen worden hieronder verder behandeld). Het is een
concept dat beheermatig heel prettig werkt omdat een client altijd met dezelfde
server communiceert, waardoor problemen gemakkelijker te voorkomen en op te
lossen zijn door netwerkbeheerders. De kwaliteit van diensten die zijn
gebaseerd op protocollen die met dit principe werken is dan ook meestal heel
goed (hoewel afhankelijk van de kwaliteit van een Internet provider). In het derde model kan
een server waarmee een client communiceert niet zelf een
verbinding maken met een andere server, maar kan wel aan de client een
verwijzing doorgeven naar een andere soortgelijke server, waarmee de client dan
automatisch - transparant voor de gebruiker - een verbinding kan opzetten. Dit
principe wordt in het WorldWide Web gehanteerd door het HyperText Transfer
Protocol (http; dit protocol wordt later in dit hoofdstuk nog beschreven) en
maakt dat gebruikers zonder dat ze dat in de gaten hebben van de ene server
naar de andere kunnen overgaan. Dit principe ligt waarschijnlijk ook ten
oorsprong aan de term 'netsurfen'. Netwerkbeheerders hebben vaak weinig invloed
op deze gang van zaken, waardoor de kwaliteit niet gegarandeerd kan worden. Het
is dan ook niet verwonderlijk dat zelfs bij het WorldWide Web dat met dit
principe zo populair is geworden, er al technieken bestaan die meer in de
richting gaan van het tweede model (proxy servers bijvoorbeeld).
X.500 kan ook volgens het derde model werken, maar dat
wordt op het nternet niet toegepast.
Nog maar enkele jaren geleden kende het Internet slechts een drietal van de in
figuur 'Drie client-server modellen' aangegeven communicatieprotocollen: Telnet (voor interactieve
toegang tot een computer), het File Transfer Protocol (ftp), voor het ophalen
of versturen van databestanden en het Simple Mail Transfer Protocol (SMTP) voor
het versturen van elektronische post. Alledrie deze protocollen zijn in de
jaren zeventig ontwikkeld.
Telnet en ftp
Telnet en ftp zijn redelijk basale maar tevens robuuste protcollen die volgens
het eerste van de hierboven genoemde client-servermodellen werken. Telnet
(RFC854) is het protocol waarmee een gebruiker vanaf de eigen computer op een
andere computer kan 'inloggen' om vervolgens op die computer te werken. FTP
(RFC959) is het protocol waarmee tussen twee computers op het Internet
bestanden kunnen worden uitgewisseld. Dat is vaak een uitstekend alternatief
voor het uitwisselen van diskettes, aangezien er geen beperkingen zijn wat
betreft de grootte van de bestanden en de ontvanger niet op PTT-post hoeft te
wachten die het schijfje bezorgt.
Beide protocollen kennen twee varianten: die waarbij de gebruiker zich vooraf
moet identificeren en die waarbij dat niet hoeft. Bij de laatste kan een
gebruiker dus anoniem verbinding maken met een computer. Dit dient
uiteraard alleen onder gecontroleerde omstandigheden te worden toegestaan, want
een 'te open verbinding' wordt door hackers vaak aangegrepen om systemen te
kraken.
Voor het raadplegen van algemene en vaak ook publieke informatie, zoals een
elektronische bibliotheekcatalogus, public domain software, het spoorboekje of
een telefoongids is het anoniem kunnen raadplegen of anoniem ophalen van data een
goede oplossing.
Telnet biedt de gebruiker in feite alleen een zogenaamde 'ASCII terminal'. Dit
betekent dat op de computer waarop is ingelogd alleen applicaties kunnen worden
gebruikt die met ASCII tekens aan te sturen zijn en die al hun weergave in
ASCII tekens doen. Een plaatje is er dus niet bij, maar simpele tekstverwerking
kan wel of een bibliotheekbestand raadpegen waarmee naar boektitels kan worden
gezocht.
Afbeelding: Voorbeeld Telnet
(3.55 kb)
Met ftp kunnen alle typen bestanden worden overgehaald, zowel ASCII bestanden als zogenaamde 'binaire' bestanden. Het is erg populair voor het aanbieden van public domain software, het uitwisselen van grafische en audio bestanden en opgemaakte teksten en dergelijke.
Afbeelding: Voorbeeld FTP
(5.24 kb)
Ftp is slechts een simpel hulpmiddel voor het overhalen van bestanden. Het biedt geen mogelijkheid om anders dan aan de naam van een file op een ftp-server, te zien wat voor type bestand het is en het biedt ook geen mogelijkheid om een bestand verder te verwerken. Feitelijk is ftp alleen nuttig als een gebruiker van tevoren al precies weet welk bestand hij waar vandaan wil halen.