Het opdelen van lange datatransmissies in frames gebeurt om verschillende belangrijke redenen:
* Foutdetectie en -correctie: Als een enkele bit beschadigd raakt tijdens de overdracht van een groot gegevensblok, kan het hele blok onbruikbaar zijn. Framing maakt het mogelijk dat foutdetectie (bijvoorbeeld controlesommen, CRC) en correctie (bijvoorbeeld voorwaartse foutcorrectiecodes) worden toegepast op kleinere, beheersbare frames. Als er een fout in een frame wordt gedetecteerd, hoeft alleen dat frame opnieuw te worden verzonden, en niet de hele gegevensstroom.
* Verbeterde efficiëntie bij foutafhandeling: Het opnieuw verzenden van een enkel klein frame is aanzienlijk efficiënter dan het opnieuw verzenden van een enorm datablok. Dit vermindert de latentie en het bandbreedteverbruik.
* Stroomcontrole: Met framing kunnen de zender en de ontvanger de snelheid van de gegevensoverdracht beheren. De ontvanger kan de afzender een signaal geven om langzamer te gaan als hij de gegevens niet snel genoeg kan verwerken. Dit voorkomt bufferoverflows bij de ontvanger.
* Meerdere toegang tot een kanaal: Bij gedeelde communicatiekanalen (zoals Ethernet) zorgt framing ervoor dat verschillende apparaten gegevens kunnen verzenden en ontvangen zonder elkaar te storen. Elk frame kan informatie bevatten die de beoogde ontvanger identificeert.
* Synchronisatie: Frames bieden synchronisatiepunten. De ontvanger kan gemakkelijk het begin en einde van elke data-eenheid identificeren, waardoor een juiste data-interpretatie wordt gegarandeerd, zelfs bij ruis of interferentie op het kanaal.
* Gemakkelijker opnieuw rangschikken: Als frames verloren gaan of in de verkeerde volgorde aankomen (wat vaak voorkomt bij draadloze of onbetrouwbare netwerken), maakt framing het gemakkelijker om het probleem op te sporen en de frames opnieuw te ordenen om de oorspronkelijke gegevensstroom te reconstrueren.
Kortom, framing verbetert de betrouwbaarheid, efficiëntie en beheersbaarheid van datatransmissie, vooral via luidruchtige of gedeelde kanalen. |