Student Računarskog fakulteta Andrej Broćić je u četvrtak, 17. novembra 2022. godine odbranio diplomski rad na temu Algoritmi distribuiranog konsenzusa: Paxos i Raft pred komisijom koju su činili mentor dr Miloš Radenković i član dr Mladen Stanojević.
U uvodu svog rada Andrej je istakao sledeće:
Distribuirani sistem je sistem u kom više procesa međusobno komunicira i koordiniše svoje ponašanje razmenjujući poruke preko mreže. Jedan od centralnih problema koji postoji u distribuiranim sistemima jeste problem konsenzusa, koji podrazumeva da se više procesa dogovore oko jedne iste vrednosti. Težina rešavanja ovog problema potiče od činjenice da su procesi po svojoj prirodi nepouzdani- podležni otkazima i nepredvidivom ponašanju, recimo slanjem korumpiranih ili kontradiktornih poruka drugim procesima. Protokoli za ostvarivanje konsenzusa dizajnirani su u cilju postizanja međusobnog dogovora između ovakvih procesa i kao takvi moraju da zadovolje određene zahteve:
I. Dogovor (agreement): Svi procesi koji ne otkazuju moraju da postignu dogovor oko jedne(iste) vrednosti.
II. Integritet (integrity): Ukoliko su svi procesi koji ne otkazuju predložili vrednost v, onda je rezultat odluke bilo kog procesa koji ne otkazuje vrednost v.
III. Terminacija (termination/liveness): Svaki proces koji ne otkazuje mora svojevremeno da donese odluku o vrednosti.
…
U prošlosti pojavili su se mnogi algoritmi konsenzusa, ali samo dva dominiraju u praktičnim sistemima – Paxos, kao stariji algoritam koji je postao sinonim za distribuirani konsenzus i Raft, novije rešenje koje je predloženo kao jednostavnija alternativa za Paxos algoritam. Detaljnom uporednom analizom može se videti da su ova dva algoritma zapravo mnogo sličnija nego što to različiti načini njihove prezentacije sugerišu. Može se zaključiti da se, ako se Paxos objasni terminologijom korišćenom za Raft, razlike u njihovoj razumljivosti još znatnije umanjuju.
Kao što je prethodno naglašeno, jedna od najvećih razlika između Rafta i Paxos jeste način na koji su oni predstavljeni u svojim izvornim radovima. Ključni razlog koji se krije iza upeha Rafta, pored jednostavnosti i dizajna samog algortima, jeste pragmatičan pristup koji korišćen pri njegovom prezentovanju. Ovo je verovatno i razlog zbog kog je Raftuspeo da za kratko vreme stane rame uz rame sa starijim Paxosomkoji se u distribuiranim sistemima već odavno uspostavio kao najpoznatije rešenje problema konsenzusa. – zaključio je Andrej.