Skip to content

FermiHDI 3rd Party Licensing Documentation

This document outlines the third-party software, applications, libraries, and source codes integrated into the FermiHDI environment. It details their license types, usage, criticality, restrictions, and explicit conditions concerning code distribution or open-sourcing.

1. Core C++ Dependencies (Data Plane & Operations)

1.1 DPDK (Data Plane Development Kit)

  • License: BSD-3-Clause
  • Usage: Utilized extensively in hd_storage_node, hd_storage_controller, hd_message_bus_ingester, and libfermihdi_transport for kernel bypass networking and zero-copy User Space memory isolation.
  • Criticality: High. Crucial for the extreme throughput required by the FermiHDI interconnect.
  • Restrictions: Requires distribution of the copyright notice and license text.
  • Distribution/Attribution: Attribution is strictly required in all binaries and documentation.
  • Impact on Codebase: Does not require FermiHDI code to be open-sourced. Fully compatible with closed-source commercialization.

1.2 SPDK (Storage Performance Development Kit)

  • License: BSD-3-Clause
  • Usage: Used directly in libfermihdi_storage to communicate directly with NVMe drives bypassing kernel interrupts.
  • Criticality: High. Essential for millions of IOPS disk access on the Storage Nodes.
  • Restrictions: None beyond standard BSD redistribution notices.
  • Distribution/Attribution: Attribution required.
  • Impact on Codebase: Does not force FermiHDI to be open source.

1.3 Apache Arrow

  • License: Apache License 2.0
  • Usage: In-memory columnar data formatting during Storage Node filtering and query aggregation phases.
  • Criticality: High. Critical for the analytic math throughput.
  • Restrictions: Requires including the Apache 2.0 license, a NOTICE file (if they provide one), and stating any significant modifications made to Arrow code.
  • Distribution/Attribution: Attribution and Apache 2.0 license presentation required.
  • Impact on Codebase: Does not force FermiHDI to be open source.

1.4 OpenSSL (v3.0+)

  • License: Apache License 2.0
  • Usage: Core telemetry encryption, mTLS bindings in the proxy, and internal cluster identity management.
  • Criticality: High. FermiHDI cannot operate securely without it.
  • Restrictions: Standard Apache 2.0 restrictions apply.
  • Impact on Codebase: Does not force FermiHDI to be open source.

1.5 nlohmann/json

  • License: MIT License
  • Usage: Parsing Control Plane JSON schemas and configurations in C++ nodes.
  • Criticality: Low/Medium. Replaceable, but extensively used.
  • Impact on Codebase: Does not force FermiHDI to be open source.

1.6 Sentry Native (sentry-native)

  • License: MIT License
  • Usage: Capturing C++ crash dumps and propagating OTel Trace IDs dynamically.
  • Criticality: Medium.
  • Impact on Codebase: Does not force FermiHDI to be open source.

2. Go Dependencies (Control Plane)

2.1 OpenTelemetry Go (go.opentelemetry.io/otel) & OpAMP (opamp-go)

  • License: Apache License 2.0
  • Usage: Distributed tracing, metrics generation, and WebSocket dynamic configuration pushed from the DMS.
  • Criticality: Medium/High. Required to fulfill enterprise telemetry compliance.
  • Impact on Codebase: Does not force FermiHDI to be open source.

2.2 Sentry Go (getsentry/sentry-go)

  • License: MIT License
  • Usage: Capturing Go panics in the Proxy and DMS instances.
  • Criticality: Medium.
  • Impact on Codebase: Does not force FermiHDI to be open source.

2.3 JSONSchema Go (github.com/xeipuuv/gojsonschema)

  • License: Apache License 2.0
  • Usage: Validation of the strictly defined Node configurations mapped by the DMS.
  • Criticality: Medium.
  • Impact on Codebase: Does not force FermiHDI to be open source.

3. Web UI Dependencies (Astro/Javascript)

3.1 Astro & Vue.js

  • License: MIT License
  • Usage: Powers the frontend routing, DOM generation, and reactivity of the Deployment Management System WebUI.
  • Criticality: Medium. Strictly visual representations of the DMS API.
  • Impact on Codebase: Does not force FermiHDI to be open source.

3.2 Chart.js & Vue-ChartJS

  • License: MIT License
  • Usage: Analytics dashboards inside the DMS UI.
  • Impact on Codebase: Does not force FermiHDI to be open source.

3.3 Playwright

  • License: Apache License 2.0
  • Usage: Executed only in CI environments and testing suites simulating E2E telemetry visually.
  • Criticality: Low. Dev/Test dependency only.

Summary Conclusion

There are zero "copyleft" style licenses (like GPL, AGPL, or CDDL) compiled into the primary distribution paths of the FermiHDI system. All third-party libraries have been vetted as commercially permissive (MIT, BSD, Apache 2). The system natively allows you to commercialize, distribute, and protect the entirety of the closed-source codebase safely provided you include an ATTRIBUTIONS.txt file releasing the standard copyright notices required by the libraries above.