60 likes | 183 Vues
This project outlines a reliable multicast protocol designed for distributed systems, ensuring that every client receives each packet exactly once. The consensus mechanism is based on Lamport timestamps, where clients agree on the ordering of messages. By implementing a change-view protocol, the system handles voluntary and involuntary participation gracefully, maintaining consistent message ordering. The approach allows dynamic participation, adjustable dimensions, and a fully versatile color spectrum. Features include reliable messaging, no player limits, and session IDs for ordered operations.
E N D
Project: Gedistribueerde Systemen Bart Stukken Bjorn Schobben Wietse Jorissen
Consensus • Basis : reliablemulticast • Iedereen krijgt elk pakket slechts 1 keer • Alle clients akkoord (hun Lamport) • Enkel request of agree sturen • N pakketten per request = dicide • Max alle Lamports = ordering • N² pakketten totaal op netwerk • Heartbeats niet geordend, wel consensus ronde • View = session-id
Ordering • Eigen logische klok • Lamport te weinig (happend before) • Vector te groot (N clients) • minLamport = consensus set • maxLamport = netwerk afgesproken ordering • Random = collisiondecision • Iedereen gelijke kansen • Ring object • Zodat … < 254 < 255 < 0 < 1 < 2 < …
Membership • Vrijwillige participatie • Join/Leave request (niet consensus) • Changeview bericht (consensus) • Onvrijwillig vertrekken • Heartbeats • Antwoord: Client nog aanwezig • Geen antwoord: Client crash/dc • Changeview bericht (consensus)
Features • Reliable Multicast • Geen speler limiet • Instelbare dimensie en winconditie • Volledig kleurenspectrum • Pauzeren • Consistente volgorde van berichten • Dynamisch deelnemen • Vrijwillig en onvrijwillig (+/-) vertrekken