Core 4G e 5G privado.
Multi-tenant. Em produção.
— não é wrapper, não é caixa-preta.
JV-CORE é um core móvel 3GPP completo operando como plataforma multi-tenant. Você provisiona instâncias isoladas, conecta sua RAN, e opera redes privadas em escala — com REST API, observabilidade nativa e SLA real.
Uma plataforma. Múltiplos cores isolados.
RAN-vendor agnostic.
Topologia de referência: UEs conectam via RAN 3GPP (eNB / gNB), atravessam as funções de rede do JV-CORE — isoladas por tenant — e saem para a Data Network. Plano de controle SBA (HTTP/2 + JSON) no 5G, GTP/Diameter no 4G.
| Interface | Protocolo | Endpoints · Função |
|---|---|---|
| N1 | NAS over RRC | UE ↔ AMF · sinalização NAS, registration, PDU session |
| N2 | NGAP / SCTP | gNB ↔ AMF · sinalização do plano de controle 5G |
| N3 | GTP-U / UDP | gNB ↔ UPF · plano de usuário 5G |
| N4 | PFCP / UDP | SMF ↔ UPF · separação CP/UP |
| N6 | IP | UPF ↔ DN · saída para internet / MEC |
| N8 | HTTP/2 SBI | AMF ↔ UDM · subscription data, mobility |
| S1-MME | S1AP / SCTP | eNB ↔ MME · plano de controle 4G |
| S1-U | GTP-U / UDP | eNB ↔ SGW · plano de usuário 4G |
| S6a | Diameter / SCTP | MME ↔ HSS · autenticação e perfil do UE |
Funções de rede inclusas.
Conjunto completo de NFs 3GPP para 4G EPC e 5G SA. Cada função é containerizada e escalável horizontalmente por tenant.
UE attach + PDU session.
Fluxo típico de registration e estabelecimento de PDU session de um UE em 5G Standalone.
Isolamento real entre tenants.
Cada tenant recebe seu próprio conjunto de NFs, PLMN dedicado, subscriber database isolado, políticas e métricas separadas. Sem compartilhamento de plano de controle.
PLMN dedicado por tenant
Cada operação tem seu MCC/MNC próprio. Sem colisão de identidade de rede entre clientes.
Subscriber DB isolada
UDM/HSS por tenant. Credenciais (K, OPc) nunca cruzam fronteira.
Policy & slicing
QoS profiles, APN/DNN e network slicing configurados independentemente.
Observabilidade por tenant
Métricas, logs e alarmes namespaceados. RBAC controla quem vê o quê.
Capacidade & conformidade.
Limites operacionais e padrões 3GPP suportados na release atual.
| Parâmetro | Valor |
|---|---|
| 3GPP Release | Release 17 (5G SA) · Release 15 (4G EPC) |
| Network Functions 5G | AMF, SMF, UPF, UDM, AUSF, PCF, NRF, NSSF, NEF |
| Network Functions 4G | MME, SGW-C/U, PGW-C/U, HSS, PCRF, SMSF |
| Subscribers / tenant | até 1M provisionados · 100k+ ativos simultâneos |
| PDU sessions / tenant | até 80k concorrentes (depende de plano) |
| UPF throughput | 10 Gbps por instância · escala horizontal |
| Latência plano de usuário | < 5 ms (UPF processing, single-hop) |
| Alta disponibilidade | Active-active · state replication · failover < 2 s |
| RAN compatível | qualquer eNB/gNB 3GPP-compliant (Nokia, Huawei, Ericsson, ZTE, small cells) |
| Bandas suportadas | LTE: B1, B3, B7, B8, B28, B40 · 5G NR: n3, n7, n28, n41, n78 |
| Deployment | Linux x86_64 · ARM64 · Kubernetes (k3s/k8s) · bare-metal |
| Hardware mínimo (tenant) | 4 vCPU · 8 GB RAM · 50 GB SSD |
| Provisionamento | REST API · CLI (jvcore) · Web console |
| Logs / auditoria | structured JSON · syslog/RFC5424 · retenção configurável |
Operável por código.
Tudo que o painel faz, a API faz. Provisione, escale, audite e integre com seu BSS/CRM.
# Cria um tenant 5G SA com PLMN dedicado $ jvcore tenant create acme \ --plmn 72445 \ --release r17 \ --plan standard # Provisiona um subscriber via parâmetros $ jvcore sub create acme \ --imsi 724450000000001 \ --msisdn +5592999000001 \ --k 465B5CE8B199B49FAA5F0A2EE238A6BC \ --opc E8ED289DEBA952E4283B54E88E6183CA \ --apn acme.iot # Provisionamento em massa via CSV $ jvcore sub provision acme --from-csv sims-jan.csv ✓ 12,847 subscribers · 0 errors · 6.2s # Métricas em tempo real $ jvcore metrics acme --watch subscribers: 12847 sessions: 8412 throughput_up: 412 Mbps throughput_dn: 1.8 Gbps attach_p99: 87 ms handover_p99: 31 ms
# Provisiona um subscriber via REST POST /v1/tenants/acme/subscribers Authorization: Bearer $JVCORE_TOKEN Content-Type: application/json { "imsi": "724450000000001", "msisdn": "+5592999000001", "security": { "k": "465B5CE8B199B49FAA5F0A2EE238A6BC", "opc": "E8ED289DEBA952E4283B54E88E6183CA", "amf": "8000" }, "session_profile": { "dnn": "acme.iot", "qos_5qi": 9, "ambr": { "ul": "10M", "dl": "50M" } } } → 201 Created { "id": "sub_01HKQM...", "status": "provisioned" }
from jvcore import Client client = Client(token="$JVCORE_TOKEN") tenant = client.tenants.get("acme") # Provisiona em batch with open("sims.csv") as f: result = tenant.subscribers.bulk_create( csv=f, on_conflict="skip", dry_run=False, ) print(f"created=", result.created, "errors=", result.errors) # Stream de eventos do core (attach, detach, handover) async for ev in tenant.events.stream(): if ev.type == "attach.failed": alert(ev.imsi, ev.cause)
Onde roda.
Três modelos de deployment cobrindo do PoC ao operador regional.
JV-CORE Cloud
Nós operamos. Você consome via API. Multi-tenant, SLA garantido, on-ramp em horas.
- data center São Paulo (LATAM)
- SLA 99.95% control plane
- BYOC: APN/DNN, charging, billing
- start em ≤ 24h
Dedicado
Instância dedicada em sua infra (AWS, GCP, Azure, on-prem). Cluster K8s gerenciado.
- K8s ≥ 1.27 · Helm chart
- nodes: 4 vCPU / 8 GB mínimo
- multi-AZ opcional
- upgrades via GitOps
Edge / bare-metal
Para sites isolados (mineração, agro, indústria). Linux + containers, sem dependência de cloud.
- Linux x86_64 / ARM64
- operação air-gapped
- UPF colocada na borda
- HA local entre 2-3 nós