I datakommunikation är en buffert ett minnesregion som används för att tillfälligt lagra data medan den överförs mellan två enheter eller processer som arbetar med olika hastigheter eller med olika dataöverföringsfunktioner. Dess huvudsakliga syften är:
* hastighetsmatchning: Om en avsändare överför data snabbare än en mottagare kan bearbeta den, fungerar bufferten som ett tillfälligt hållområde. Avsändaren kan fortsätta att sända utan att vänta på att mottagaren ska komma ikapp. På samma sätt, om en mottagare bearbetar data snabbare än en avsändare överför, kan bufferten lagra inkommande data tills mottagaren är klar.
* Flödeskontroll: Buffertar hjälper till att hantera flödet av data för att förhindra dataförlust eller överflöde. Om en buffert är full kan avsändaren signaleras för att sluta överföra tills utrymmet blir tillgängligt i bufferten. Detta förhindrar avsändaren från att överväldiga mottagaren.
* Felhantering: Om fel uppstår under överföringen kan data behöva återföras. Buffertar ger en tillfällig lagringsplats för uppgifterna, vilket möjliggör vidarebefordran utan att förlora de redan mottagna uppgifterna.
* Datatransformation: Buffertar kan också användas för att tillfälligt lagra data medan de konverteras från ett format till ett annat (t.ex. konvertering mellan olika karaktärkodningar).
I huvudsak fungerar buffertar som en stötdämpare eller mellanhand, och utjämnar avvikelser i hastighet och tidpunkt mellan datakällor och destinationer, vilket gör datakommunikationen mer tillförlitlig och effektiv.