Bij datacommunicatie is een buffer een geheugengebied dat wordt gebruikt om gegevens tijdelijk op te slaan terwijl deze worden overgedragen tussen twee apparaten of processen die met verschillende snelheden werken of met verschillende mogelijkheden voor gegevensoverdracht. De belangrijkste doeleinden zijn:
* Snelheidsmatching: Als een zender gegevens sneller verzendt dan een ontvanger deze kan verwerken, fungeert de buffer als een tijdelijk opslaggebied. De zender kan doorgaan met zenden zonder te wachten tot de ontvanger heeft ingehaald. Op dezelfde manier, als een ontvanger gegevens sneller verwerkt dan een zender verzendt, kan de buffer binnenkomende gegevens opslaan totdat de ontvanger gereed is.
* Stroomcontrole: Buffers helpen bij het beheren van de gegevensstroom om gegevensverlies of -overloop te voorkomen. Als een buffer vol is, kan de zender worden gesignaleerd om te stoppen met zenden totdat er ruimte vrijkomt in de buffer. Dit voorkomt dat de zender de ontvanger overrompelt.
* Foutafhandeling: Als er tijdens de verzending fouten optreden, moeten de gegevens mogelijk opnieuw worden verzonden. Buffers bieden een tijdelijke opslagplaats voor de gegevens, waardoor hertransmissie mogelijk is zonder dat de reeds ontvangen gegevens verloren gaan.
* Gegevenstransformatie: Buffers kunnen ook worden gebruikt om gegevens tijdelijk op te slaan terwijl deze van het ene formaat naar het andere worden geconverteerd (bijvoorbeeld bij het converteren tussen verschillende tekencoderingen).
In wezen fungeren buffers als schokdemper of tussenpersoon, waardoor verschillen in snelheid en timing tussen gegevensbronnen en bestemmingen worden gladgestreken, waardoor de gegevenscommunicatie betrouwbaarder en efficiënter wordt. |