# Netwerkprotocol

Een netwerkprotocol is een protocol, een afgesproken communicatiewijze, voor netwerkcomponenten. Door het toepassen van een standaard protocol, kunnen componenten van verschillende leveranciers met elkaar gegevens uitwisselen.

## Afspraken

Een netwerkprotocol bevat afspraken omtrent
* identificatie van de verschillende communicerende componenten,
* het onderhandelen over het tot stand komen van de communicatie,
* de betekenis van de over en weer gezonden gegevens en informatieblokken,
* het tot stand brengen en afbreken van de communicatiestroom.

## Verschillende implementaties

Er bestaan veel verschillende communicatieprotocollen die toch grotendeels overeenkomen. Om de verschillende praktijksituaties inzichtelijk te maken is een theoretisch model ontwikkeld om de verschillende niveaus binnen de communicatie inzichtelijk te maken, het ISO/OSI-model.
Er zijn twee belangrijke groepen van netwerkprotocollen.

### Leverancier afhankelijke protocollen

Dit zijn protocollen die door een leverancier van hard- of software zijn ontwikkeld om specifieke doelstellingen op het gebied van effectiviteit en efficiëntie te kunnen realiseren. De belangrijkste zijn:
* AppleTalk (van Apple);
* ARCNET (Datapoint);
* DECnet (van Digital Equipment Corporation);
* IPX/SPX (Novell);
* SMB/CIFS (Microsoft);
* NetBIOS (IBM).

### Standaardprotocollen

Dit zijn protocollen die in de standaardiseringscommissies zijn geratificeerd om communicatie tussen componenten, ongeacht de leverancier van die component, mogelijk te maken. Toepassing van standaardisatie betekent in de regel wel dat dergelijke standaardprotocollen minder effectief en minder efficiënt zijn, waardoor de prestaties over het algemeen minder hoog zijn dan die van de leverancierafhankelijke implementaties.
* Ethernet
* Internetprotocol

## Internet

Het internetprotocol is feitelijk een samenbundeling van een enorme hoeveelheid van kleinere standaardprotocollen. Het internetprotocol wordt ook wel TCP/IP genoemd. Zowel TCP als IP zijn weer afzonderlijke standaardprotocollen, die maar een beperkt onderdeel van het internetprotocol vormen. In feite is TCP/IP een soort afkorting voor een verzameling of familie protocollen, hoewel men het vaak het TCP/IP-protocol noemt.

## Standaardisatie

Er zijn verschillende organisaties die standaarden formaliseren. De belangrijkste op dit gebied zijn:
* IEEE - Amerikaans instituut van Ingenieurs, bepaald technische standaarden
* IETF - Internationale organisatie die internet standaarden bepaalt
* ISO - Internationale standaardisatie organisatie
* ITU - International organisatie die telecomstandaarden bepaalt

## RFC

De internetstandaarden worden via een Request For Comments (RFC) gepubliceerd. Enkele belangrijke RFC's voor netwerkprotocollen zijn:
* RFC-786 - User Datagram Protocol (UDP)
* RFC-791 - Internet Protocol (IP) uit september 1981
* RFC-793 - Transmission Control Protocol (TCP)
* RFC-1945 - Hypertext Transfer Protocol (HTTP)

### Humoristisch

Geheel onbelangrijke, maar wel heel grappige RFC's zijn:
* RFC-1149 - Standard for the transmission of IP datagrams on avian carriers
* RFC-2549 - IP over Avian Carriers with Quality of Service
* RFC-1216 - Ultra Low-Speed Networking (ULSNET), zie ook RFC-1217
* RFC-2324 - Hyper Text Coffee Pot Control Protocol
* RFC-3251 - Electricity over IP