Netwerkprotocollen zijn reeksen vaste regels die voorschrijven hoe gegevens moeten worden opgemaakt, verzonden en ontvangen, zodat computernetwerkapparaten – van servers en routers tot eindpunten – kunnen communiceren, ongeacht de verschillen in hun onderliggende infrastructuren, ontwerpen of standaarden.
Om met succes informatie te verzenden en te ontvangen, moeten apparaten aan beide zijden van een communicatie-uitwisseling protocolconventies accepteren en volgen. Ondersteuning voor netwerkprotocollen kan worden ingebouwd in software, hardware of beide.
Gestandaardiseerde netwerkprotocollen bieden een gemeenschappelijke taal voor netwerkapparaten. Zonder deze protocollen zouden computers niet weten hoe ze met elkaar in contact moeten komen. Als gevolg daarvan, behalve voor gespecialiseerde netwerken gebouwd rond een specifieke architectuur, weinig netwerken zou kunnen functioneren, en het internet zoals wij het kennen niet zou bestaan. Vrijwel alle eindgebruikers van netwerken vertrouwen op netwerkprotocollen voor connectiviteit.
Hoe netwerkprotocollen werken
Netwerkprotocollen splitsen grotere processen op in discrete, nauw omschreven functies en taken op elk niveau van het netwerk. In het standaardmodel, bekend als het Open Systems Interconnection (OSI)-model, regelen een of meer netwerkprotocollen de activiteiten op elke laag in de telecommunicatie-uitwisseling.
Een verzameling samenwerkende netwerkprotocollen wordt een protocolsuite genoemd. De TCP/IP-suite omvat talrijke protocollen over verschillende lagen — zoals de gegevens-, netwerk-, transport- en toepassingslagen — die samenwerken om internetconnectiviteit mogelijk te maken. Deze omvatten:
- Transmission Control Protocol (TCP), dat gebruik maakt van een reeks regels om berichten uit te wisselen met andere internetpunten op het niveau van informatiepakketten;
- User Datagram Protocol (UDP), dat fungeert als een alternatief communicatieprotocol voor TCP en wordt gebruikt om verbindingen met een lage latency en verlies tolererende verbindingen tussen toepassingen en het internet tot stand te brengen.
- Internet Protocol (IP), dat een reeks regels gebruikt om berichten op internetadresniveau te verzenden en te ontvangen; en
- aanvullende netwerkprotocollen, waaronder het Hypertext Transfer Protocol (HTTP) en File Transfer Protocol (FTP), die elk een reeks regels hebben gedefinieerd om informatie uit te wisselen en weer te geven.
Elk pakket dat via een netwerk wordt verzonden en ontvangen, bevat binaire gegevens. De meeste protocollen voegen aan het begin van elk pakket een header toe om informatie op te slaan over de afzender en de beoogde bestemming van het bericht. Sommige protocollen kunnen aan het eind ook een voettekst toevoegen met aanvullende informatie. Netwerkprotocollen verwerken deze headers en footers als onderdeel van de gegevens die zich tussen apparaten verplaatsen, om berichten van hun eigen soort te identificeren.
Netwerkprotocollen worden vaak vastgelegd in een industriestandaard — ontwikkeld, gedefinieerd en gepubliceerd door groepen als:
- de International Telecommunication Union
- het Institute of Electrical and Electronics Engineers
- de Internet Engineering Task Force
- de International Organization for Standardization
- het World Wide Web Consortium.
Grootste soorten netwerkprotocollen
In het algemeen hebben netwerken drie soorten protocollen — communicatie, zoals Ethernet; beheer, zoals het Simple Mail Transfer Protocol (SMTP); en beveiliging, zoals Secure Shell (SSH).
Vallend in deze drie brede categorieën zijn duizenden netwerkprotocollen die op uniforme wijze een uitgebreide verscheidenheid aan gedefinieerde taken afhandelen, waaronder authenticatie, automatisering, correctie, compressie, foutenbehandeling, het ophalen van bestanden, bestandsoverdracht, link aggregatie, routing, semantiek, synchronisatie en syntaxis.
Invoering van netwerkprotocollen
Om netwerkprotocollen te laten werken, moeten ze worden gecodeerd in software, hetzij een onderdeel van het besturingssysteem van de computer (OS) of als een toepassing, of geïmplementeerd in de hardware van de computer. De meeste moderne besturingssystemen beschikken over ingebouwde softwarediensten die bereid zijn sommige netwerkprotocollen te implementeren. Andere toepassingen, zoals webbrowsers, zijn ontworpen met softwarebibliotheken die alle protocollen ondersteunen die nodig zijn om de toepassing te laten functioneren. Bovendien wordt de ondersteuning van TCP/IP en routeringsprotocollen geïmplementeerd in directe hardware voor betere prestaties.
Wanneer een nieuw protocol wordt geïmplementeerd, wordt het toegevoegd aan de protocolsuite. De organisatie van protocolsuites wordt als monolithisch beschouwd, omdat alle protocollen op hetzelfde adres worden opgeslagen en op elkaar voortbouwen.
Vulnerabilities of network protocols
Een belangrijke kwetsbaarheid die in netwerkprotocollen wordt aangetroffen, is dat ze niet zijn ontworpen met het oog op beveiliging. Door hun gebrek aan bescherming kunnen kwaadwillige aanvallen, zoals afluisteren en cache-poisoning, soms het systeem aantasten. De meest voorkomende aanval op netwerkprotocollen is het adverteren van valse routes, waardoor verkeer via gecompromitteerde hosts gaat in plaats van via de juiste.
Netwerkprotocolanalysers zijn ontworpen en geïnstalleerd als reactie op deze kwetsbaarheden. Netwerkprotocolanalysers beschermen systemen tegen kwaadaardige activiteiten door firewalls, antivirusprogramma’s en antispyware-software aan te vullen.
Toepassingen van netwerkprotocollen
Netwerkprotocollen maken het moderne Internet mogelijk, omdat ze computers in staat stellen over netwerken te communiceren zonder dat gebruikers hoeven te zien of te weten welke achtergrondoperaties er plaatsvinden. Enkele specifieke voorbeelden van netwerkprotocollen en hun toepassingen zijn:
- Post Office Protocol 3 (POP3), de meest recente versie van een standaardprotocol dat wordt gebruikt voor het ontvangen van inkomende e-mails.
- Simple main transport Protocol, dat wordt gebruikt voor het verzenden en distribueren van uitgaande e-mails.
- File Transfer Protocol (FTP), dat wordt gebruikt voor het overbrengen van bestanden van de ene machine naar de andere.
- Telnet, dat een verzameling regels is die wordt gebruikt om een systeem met een ander systeem te verbinden via een remote login. In dit protocol is het systeem dat het verzoek om verbinding verzendt de lokale computer en het systeem dat de verbinding aanvaardt de externe computer.
Enkele andere voorbeelden van netwerkprotocollen zijn:
- Address Resolution Protocol
- Blocks Extensible Exchange Protocol
- Border Gateway Protocol
- Binary Synchronous Communications
- Canonical Text Services
- Domain name system
- Dynamic Host Configuration Protocol
- Enhanced Interior Gateway Routing Protocol
- HTTP over SSL
- Human interface device
- Internet Control Message Protocol
- Internet Message Access Protocol
- Gopher
- Media access control
- Network News Transfer Protocol
- Open Shortest Path First
- Post Office Protocol
- Secure Sockets Layer
- Simple Mail Transfer Protocol
- Telnet
- Terminal Network
- Thread
- Transmission Control Protocol
- Transport Layer Security
- Universele Beschrijving, Discovery and Integration
- User Datagram Protocol
- Voice over IP
- X10