Kolize
V informatice má „kolize“ dva různé významy. K jedné dochází, když jsou upraveny dvě nebo více sad dat a vznikne stejná výsledná hodnota. Druhý význam se týká konkrétně počítačových sítí a označuje situaci, kdy dvě zařízení vysílají data současně.
1. Kolize dat
Ke kolizi dat může dojít při hašování dat nebo při výpočtu kontrolního součtu. Hašovací funkce převádí data na menší hodnotu a často se používá při kompresi a v kryptografii. Hašovací operace sice může ušetřit místo na disku, ale je možné, že dva různé vstupy vytvoří stejný výstup. Při kolizi lze použít více hašovacích funkcí, aby se zabránilo duplicitním hodnotám.
Podobně není zaručeno, že kontrolní součty budou jedinečné, protože jsou menší než původní data. Přestože je pravděpodobnost často velmi nízká, dvě různé sady dat mohou teoreticky vytvořit stejnou hodnotu kontrolního součtu. Dobře navržený algoritmus by měl toto riziko minimalizovat.
2. Kolize v síti
Ke kolizi v síti dochází, když se dvě nebo více zařízení pokusí současně vysílat data přes síť. Pokud například dva počítače v síti Ethernet odešlou data ve stejném okamžiku, data se „srazí“ a jejich přenos nebude dokončen. Proto většina síťových protokolů potvrzuje, že byly přijaty pakety, a teprve poté vysílá další data.
Přepínače a směrovače mohou kolize omezit tím, že před vysíláním dat kontrolují, zda je přenosová linka nečinná, nebo „se používá“. Běžnou metodou je CSMA/CD neboli „Carrier-sense multiple access with collision avoidance“. Kolize je sice možné omezit, ale nelze se jim úplně vyhnout. Pokud například dva systémy zjistí, že je linka nečinná, a poté vyšlou data přesně ve stejnou dobu, může dojít ke kolizi. Tu lze vyřešit opakovaným odesláním dat po náhodně dlouhé prodlevě.
Otestujte své znalosti