Bearbeitung Prüfungsvorleistung für Verteilte Systeme
Go to file
Dimitrios b1c4fc0e8a Copy src from Leuchter; create SyslogClient and Server; modify justfile and gitignore 2026-04-11 18:08:52 +02:00
src Copy src from Leuchter; create SyslogClient and Server; modify justfile and gitignore 2026-04-11 18:08:52 +02:00
.gitignore Copy src from Leuchter; create SyslogClient and Server; modify justfile and gitignore 2026-04-11 18:08:52 +02:00
README.md Copy src from Leuchter; create SyslogClient and Server; modify justfile and gitignore 2026-04-11 18:08:52 +02:00
justfile Copy src from Leuchter; create SyslogClient and Server; modify justfile and gitignore 2026-04-11 18:08:52 +02:00
pom.xml Copy src from Leuchter; create SyslogClient and Server; modify justfile and gitignore 2026-04-11 18:08:52 +02:00

README.md

Verteilte_Systeme

Bearbeitung Prüfungsvorleistung für Verteilte Systeme

Syslog-Logging-System (RFC 5424)

Dieses Projekt implementiert einen Syslog-Server und einen Test-Client auf Basis von UDP. Es beinhaltet eine automatische Service-Discovery.

Projektstruktur & Klassen

  • pom.xml: Die Maven-Konfigurationsdatei. Sie verwaltet Abhängigkeiten und die Java-Version.
  • justfile: Automatisierungsskript für Windows (PowerShell) und Linux, um Befehle wie just clean oder just exec zu nutzen.
  • vs.SyslogServer: Der Hauptdienst. Er startet zwei parallele Threads:
    • Syslog-Service: Empfängt Log-Nachrichten auf Port 514.
    • Discovery-Service: Antwortet auf Broadcast-Anfragen auf Port 8888.
  • vs.SyslogClient: Test-Client, der den Server via Broadcast sucht und eine standardkonforme Nachricht sendet.
  • vs.SyslogMessage: Repräsentiert eine Nachricht gemäß RFC 5424.
  • vs.AsciiChars / vs.StructuredData: Hilfsklassen zur Validierung und Formatierung von Zeichenketten gemäß Spezifikation.

Funktionsablauf (Service Discovery)

  1. Broadcast: Der Client sendet ein UDP-Paket an 255.255.255.255:8888.
  2. Antwort: Der Server empfängt den Broadcast und sendet ein leeres UDP-Paket an den Client zurück.
  3. Identifikation: Der Client liest die IP-Adresse des Absenders aus dem Antwort-Paket aus.
  4. Logging: Der Client sendet die eigentliche Syslog-Nachricht direkt an die ermittelte IP auf Port 514.

Ausführung

  • Server starten: just exec SyslogServer
  • Client starten: just exec SyslogClient
  • Aufräumen: just clean