Distributed algorithms, essential to networks of all kinds, are presented using the highly intuitive and technically elegant Petri net technique in this text for students and practitioners. A variety of distributed algorithms are presented, and proven correct using temporal logic.