Skip to content

v1.0

Latest

Choose a tag to compare

@snonux snonux released this 12 Jul 10:59
· 396 commits to master since this release

Release v1.0

Release Notes

We're excited to announce the first major release of VS-Sim, a comprehensive distributed systems simulator for educational and research purposes. This release represents a complete implementation of the simulator framework with extensive documentation and example protocols.

🚀 New Features

Complete Simulator Framework

  • Visual Process Simulation: Interactive visualization of distributed processes with real-time state tracking and color-coded status indicators
  • Multiple Time Models: Support for both Lamport timestamps and vector clocks to study different approaches to logical time in distributed systems
  • Protocol Implementation Suite: Ready-to-use implementations of fundamental distributed systems protocols including:
    • Berkeley time synchronization
    • Two-phase and one-phase commit protocols
    • Reliable and basic multicast
    • Ping-pong communication patterns
    • Broadcast protocols

Advanced Simulation Controls

  • Event-Driven Architecture: Comprehensive event system supporting process crashes, recoveries, and custom protocol events
  • Configurable Process Behavior: Adjustable clock variance, crash probabilities, and message delivery characteristics per process
  • Serialization Support: Save and restore simulation states to analyze different scenarios and share configurations

Educational Resources

  • Complete Documentation: Comprehensive thesis documentation (273 pages) covering theoretical foundations, implementation details, and usage examples
  • Example Simulations: Pre-configured simulation scenarios demonstrating key distributed systems concepts
  • Interactive GUI: User-friendly interface with preference editors, logging capabilities, and real-time visualization

📚 Documentation & Examples

Academic Foundation

  • Theoretical Background: Detailed coverage of distributed systems concepts, time synchronization, and consensus algorithms
  • Implementation Guide: Step-by-step explanation of the simulator architecture and protocol development
  • Visual Diagrams: UML class diagrams and sequence diagrams illustrating system interactions

Ready-to-Use Scenarios

  • Time Synchronization: Compare internal vs. external time synchronization approaches
  • Consensus Protocols: Explore commit protocols with configurable process failures
  • Communication Patterns: Study multicast reliability and broadcast storm scenarios

🛠 Technical Implementation

Robust Architecture

  • Modular Design: Clean separation between core simulation engine, protocols, and user interface
  • Extensible Protocol Framework: Abstract base classes enabling easy implementation of custom protocols
  • Comprehensive Testing: Included test scenarios and validation frameworks

Developer Resources

  • Complete Source Code: Full Java implementation with detailed comments and documentation
  • API Documentation: Generated Javadoc covering all public interfaces and classes
  • Build System: Ant-based build configuration for easy compilation and deployment

🎯 Use Cases

This release enables users to:

  • Study Distributed Systems Concepts: Visualize how different protocols behave under various failure scenarios
  • Prototype New Algorithms: Use the framework to implement and test custom distributed protocols
  • Educational Demonstrations: Create interactive lessons showing distributed systems behavior in real-time
  • Research Validation: Test theoretical concepts with configurable simulation parameters

📦 What's Included

  • Complete VS-Sim application (VS-Sim.jar)
  • Full source code with build scripts
  • Comprehensive documentation and thesis
  • Example simulation configurations
  • API documentation (Javadoc)
  • Educational materials and diagrams

This initial release provides a solid foundation for distributed systems education and research, offering both theoretical depth and practical implementation tools for exploring complex distributed algorithms.