# Infrastructure Requirements

## Production Environment

### Application Tier

| Component | Specification | Quantity |
|-----------|---------------|----------|
| Web/API Server | 4 vCPU, 8GB RAM, 100GB SSD | 2 (HA) |
| Load Balancer | 2 vCPU, 4GB RAM | 1 |

### Database Tier

| Component | Specification | Quantity |
|-----------|---------------|----------|
| PostgreSQL Primary | 4 vCPU, 16GB RAM, 500GB SSD | 1 |
| PostgreSQL Replica | 4 vCPU, 16GB RAM, 500GB SSD | 1 |
| Redis Cache | 2 vCPU, 4GB RAM | 1 |

### Blockchain Tier

| Component | Specification | Quantity |
|-----------|---------------|----------|
| Besu Node | 4 vCPU, 8GB RAM, 200GB SSD | 2 (min) |

## Network Requirements

### External Access

| Service | Port | Protocol |
|---------|------|----------|
| HTTPS | 443 | TCP |
| HTTP (redirect) | 80 | TCP |

### Internal Communication

| Service | Port | Protocol |
|---------|------|----------|
| PostgreSQL | 5432 | TCP |
| Redis | 6379 | TCP |
| Besu RPC | 8545 | TCP |
| Besu P2P | 30303 | TCP/UDP |

### Firewall Rules

```
# Inbound (public)
ALLOW 443/tcp FROM any
ALLOW 80/tcp FROM any

# Inbound (internal)
ALLOW 5432/tcp FROM app-servers
ALLOW 6379/tcp FROM app-servers
ALLOW 8545/tcp FROM app-servers

# Outbound
ALLOW 443/tcp TO any (external APIs)
ALLOW 53/udp TO dns-servers
```

## Storage

| Type | Size | Purpose |
|------|------|---------|
| Database | 500GB | Application data |
| File Storage | 1TB | Uploaded documents |
| Blockchain | 200GB | Ledger data |
| Backups | 2TB | Retention storage |

## Bandwidth

| Traffic Type | Estimated |
|--------------|-----------|
| API Requests | 100 Mbps |
| File Uploads | 200 Mbps peak |
| Blockchain Sync | 50 Mbps |
