Skip to content

Latest commit

 

History

History
38 lines (33 loc) · 2.19 KB

File metadata and controls

38 lines (33 loc) · 2.19 KB

Project Progress Tracker

Phase 1: The "Engine" (Backend Foundation)

  • Init: Setup Go module.
  • Parser: Implement gopacket streaming reader.
  • Stream Reassembly: Build the 5-tuple hash map to track TCP states.
  • Analyzer Modules:
    • Retransmission Detector: Track duplicate sequence numbers.
    • Timing Analyzer: Calculate deltas (SYN->SYN-ACK, Request->Response).
    • Pattern Matcher: Implement "Dillon's Symptoms" logic (Low MSS + High Retrans + Timeout).
    • Protocol Detection: Basic HTTP and TLS detection.
    • MSS Extraction: Extract MSS from TCP Options.

Phase 2: The API & Storage

  • API: Create POST /upload (streaming upload) and GET /analysis/:id.
  • Persistence: Design schema for Analyses, Streams.
    • Note: Implemented using SQLite and GORM for robust local persistence without Docker dependency.
  • Job Queue: Use Redis to track "Processing", "Completed", "Failed" states.
    • Current: Using Go goroutines (async) with synchronous state initialization.

Phase 3: The Frontend Dashboard

  • Upload UI: Drag-and-drop zone with progress bar.
  • Dashboard: Summary cards (Total Streams, Issues Found).
  • Stream List: Virtualized list/Table to handle streams.
    • Note: Implemented with Pagination (Top 50) and Filtering (Source, Dest, Protocol) for performance.
  • Detail View: The "Ladder Diagram" (Sequence Diagram).

Phase 4: Advanced Visuals & Polish

  • Network Topology: Use React Flow to visualize connections between IPs.
  • Packet Drill-down: Use react-hex-editor (or custom) to display raw packet payloads.
  • Timeline View: Implement a "Ladder Diagram" using Recharts.
  • Advanced Protocol Detection: Integrate go-dpi (or custom signatures) for deep packet inspection.
  • Reporting: Export to PDF/JSON.

Infrastructure & DevOps

  • Docker Setup: Dockerfiles and Compose created (but currently using local dev due to environment issues).
  • Local Dev: Configured Vite Proxy to bypass CORS issues seamlessly.
  • Git: Repository initialized and code pushed to GitHub.