Skip to content

Network Infrastructure & System Requirements

Nicolas Gretten edited this page Nov 20, 2025 · 3 revisions

Overview

Architecture components

The connector consists of the following main components:

PDC application layer (Node.js):

  • Business logic
  • Communication layer (API calls)
  • Logging, configuration, authentication, credential, userIdentifier management

MongoDB database:

  • Store application configuration
  • Store logs
  • Must ensure persistence

System Requirements

Before starting the installation, ensure you have:

  • Operating System: Linux-based server (Ubuntu 20.04+ recommended)
  • One of:
    • Node.js 18+ and npm/pnpm
    • Docker & Docker compose
  • One of:
    • Database: MongoDB 5.0+ (can be self-hosted or MongoDB Atlas)
    • Docker: recommended 7.0+ (PDC image includes a mongodb instance)
  • SSL Certificates: Valid SSL certificates
  • Network Access: Internet connectivity for GitHub repositories and external services
  • Memory: Minimum 4GB RAM recommended
  • CPU: Minimum 2 cores recommended
  • Disk Space: 5GB+ available storage (recommended - variations depending on usage)

Network Architecture

flowchart LR

%% Internal PDC block
    subgraph PDC_App[PDC Application]
        PDC[PDC]
        DB[(MongoDB Database)]
        PDC -->|logs + configuration| DB
    end

%% Other PDC instances
    subgraph PDC_Network[Other PDCs]
        OtherPDC[Remote PDC Instance]
    end

%% External services
    subgraph External_Services[External Applications]
        Contract[Contract Manager]
        Consent[Consent Manager]
        API[Marketplace Services]
    end

%% Interactions
    PDC -->|Data Exchange| OtherPDC
    PDC -->|Contract Verification| Contract
    PDC <--> |Consent Management<br/>+ Triggers| Consent
    PDC -->|API Communication| API
Loading

Network Flow Matrix

Source Destination Protocol Port(s) Direction Purpose
PDC Mongodb TCP 27017 Outbound Logs, configuration, userIdentifier
PDC Remote PDC instance HTTPS 443 Outbound/Inbound Data exchange
PDC Contract manager HTTPS 443 Outbound Contract verification
PDC Consent manager HTTPS 443 Outbound/Inbound Bidirectional consent management
PDC Marketplace Services HTTPS 443 Outbound/Inbound API communication
Remote PDC PDC HTTPS 443 Inbound Data exchange

External Network Requirements

Service External Destination Protocol Port Purpose Required
PDC github.com HTTPS 443 Clone Prometheus-X repositories Yes
Load Balancer/Nginx All Services HTTP/HTTPS 80/443 Reverse proxy Yes

Client Access Requirements

Client Type Target Protocol Port Purpose
API Clients PDC API HTTPS 443 Programmatic access
Participants All Services via Load Balancer HTTPS 443 Platform interaction

Firewall Configuration

Inbound Rules:

  • Allow HTTPS (443) from all internet sources to load balancer
  • Allow HTTP (80) from all internet sources to load balancer (for SSL redirect)
  • Allow SSH (22) from management networks only
  • Allow custom monitoring ports if applicable

Outbound Rules:

  • Allow HTTPS (443) to github.com for repository access
  • Allow DNS (53) to DNS servers
  • Allow NTP (123) for time synchronization

Welcome to the Prometheus-X Dataspace Connector Wiki !

In order to grasp the full scope of the PDC, we recommend you visit the pages in the following order :


Experimental features

Clone this wiki locally