Botsing
In de informatica heeft een "botsing" twee verschillende betekenissen. De ene doet zich voor wanneer twee of meer sets gegevens worden gewijzigd en dezelfde uiteindelijke waarde opleveren. De andere is specifiek voor netwerken en doet zich voor wanneer twee apparaten tegelijkertijd gegevens verzenden.
1. Gegevensbotsing
Een gegevensbotsing kan optreden bij het hashen van gegevens of bij het berekenen van een controlesom. Een hashfunctie verkleint gegevens tot een kleinere waarde en wordt vaak gebruikt bij compressie en cryptografie. Hoewel de hashbewerking schijfruimte kan besparen, is het mogelijk dat twee verschillende invoerwaarden dezelfde uitvoer opleveren. Er kunnen meerdere hashfuncties worden gebruikt om dubbele waarden te voorkomen wanneer er een botsing optreedt.
Op dezelfde manier zijn controlesommen niet gegarandeerd uniek, omdat ze kleiner zijn dan de oorspronkelijke gegevens. Hoewel de kans vaak zeer klein is, kunnen twee verschillende gegevenssets theoretisch dezelfde controlesomwaarde opleveren. Een goed ontworpen algoritme moet dit risico tot een minimum beperken.
2. Netwerkbotsing
Een netwerkbotsing doet zich voor wanneer twee of meer apparaten tegelijkertijd gegevens via een netwerk proberen te verzenden. Als twee computers op een Ethernet-netwerk bijvoorbeeld op hetzelfde moment gegevens verzenden, zullen de gegevens "botsen" en wordt de verzending niet voltooid. Daarom bevestigen de meeste netwerkprotocollen dat pakketten zijn ontvangen voordat ze aanvullende gegevens verzenden.
Switches en routers kunnen botsingen verminderen door vóór het verzenden van gegevens te controleren of een transmissielijn vrij of "in gebruik" is. Een veelgebruikte methode is CSMA/CD, oftewel "Carrier-sense multiple access with collision avoidance." Hoewel het mogelijk is om botsingen te verminderen, kunnen ze niet volledig worden voorkomen. Als twee systemen bijvoorbeeld vaststellen dat een lijn vrij is en vervolgens exact op hetzelfde moment gegevens verzenden, kan er een botsing optreden. Dit kan worden opgelost door de gegevens na een willekeurige vertraging opnieuw te verzenden.
Test je kennis