Pular para o conteúdo principal

Guia de Operações do OmniPGW

OmniPGW - Plano de Controle do Gateway de Pacote (PGW-C)

por Omnitouch Network Services


Índice​

  1. Visão Geral
  2. Arquitetura
  3. Interfaces de Rede
  4. Conceitos Chave
  5. Introdução
  6. Configuração
  7. Monitoramento de Operações em Tempo Real (API OAM)
  8. Monitoramento & Métricas
  9. Documentação Detalhada
  10. Recursos Adicionais

Visão Geral​

OmniPGW é uma implementação de alto desempenho do Plano de Controle do Gateway de Pacote (PGW-C) para redes 3GPP LTE Evolved Packet Core (EPC), desenvolvida pela Omnitouch Network Services. Ele gerencia as funções do plano de controle para sessões de dados, incluindo:

  • Gerenciamento de Sessão - Criar, modificar e encerrar sessões de dados do UE (Equipamento do Usuário)
  • Alocação de Endereço IP - Atribuindo endereços IP a dispositivos móveis a partir de pools configurados
  • Controle de Políticas e Cobrança - Interagindo com o PCRF para aplicação de políticas e cobrança
  • Coordenação do Plano do Usuário - Controlando o PGW-U (Plano do Usuário) para encaminhamento de pacotes

O que o PGW-C Faz​

  • Aceita solicitações de sessão do SGW-C via interface S5/S8 (GTP-C)
  • Aloca endereços IP do UE a partir de pools de sub-rede configurados
  • Solicita decisões de políticas do PCRF via interface Gx (Diameter)
  • Programa regras de encaminhamento no PGW-U via interface Sxb (PFCP)
  • Gerencia a aplicação de QoS através de contextos de portadora e regras de QoS
  • Rastreia informações de cobrança para sistemas de faturamento

Arquitetura​

Visão Geral dos Componentes​

Arquitetura de Processos​

O PGW-C é construído sobre Elixir/OTP e utiliza uma arquitetura de processos supervisionados:

  • Supervisor da Aplicação - Supervisor de nível superior gerenciando todos os componentes
  • Corretores de Protocolo - Lidam com mensagens de protocolo de entrada/saída
  • Processos de Sessão - Um GenServer por conexão PDN ativa
  • Registros - Rastreiam recursos alocados (IPs, TEIDs, SEIDs, etc.)
  • Gerenciador de Nó PFCP - Mantém associações PFCP com peers PGW-U

Cada componente é supervisionado e será reiniciado automaticamente em caso de falha, garantindo a confiabilidade do sistema.


Interfaces de Rede​

O PGW-C implementa três interfaces principais 3GPP:

Interface S5/S8 (GTP-C v2)​

Propósito: Sinalização do plano de controle entre SGW-C e PGW-C

Protocolo: GTP-C Versão 2 sobre UDP

Mensagens Chave:

  • Solicitação/Resposta de Criação de Sessão
  • Solicitação/Resposta de Exclusão de Sessão
  • Solicitação/Resposta de Criação de Portadora
  • Solicitação/Resposta de Exclusão de Portadora

Configuração: Veja Configuração S5/S8

Interface Sxb (PFCP)​

Propósito: Sinalização do plano de controle entre PGW-C e PGW-U

Protocolo: PFCP (Protocolo de Controle de Encaminhamento de Pacotes) sobre UDP

Mensagens Chave:

  • Solicitação/Resposta de Configuração de Associação
  • Solicitação/Resposta de Estabelecimento de Sessão
  • Solicitação/Resposta de Modificação de Sessão
  • Solicitação/Resposta de Exclusão de Sessão
  • Solicitação/Resposta de Heartbeat

Configuração: Veja Documentação da Interface PFCP/Sxb

Interface Gx (Diameter)​

Propósito: Interface da Função de Regras de Políticas e Cobrança (PCRF)

Protocolo: Diameter (IETF RFC 6733)

Mensagens Chave:

  • Solicitação/Resposta de Controle de Crédito Inicial (CCR-I/CCA-I)
  • Solicitação/Resposta de Controle de Crédito de Término (CCR-T/CCA-T)

Configuração: Veja Documentação da Interface Diameter Gx


Conceitos Chave​

Sessão PDN​

Uma Sessão PDN (Rede de Dados de Pacote) representa a conexão de dados de um UE a uma rede externa (como a Internet). Cada sessão tem:

  • Endereço IP do UE - Alocado a partir de um pool de sub-rede configurado
  • APN (Nome do Ponto de Acesso) - Identifica a rede externa
  • Contexto de Portadora - Contém parâmetros de QoS e informações de túnel
  • ID de Cobrança - Identificador único para faturamento
  • TEID (ID de Ponto de Extremidade do Túnel) - Identificador de túnel da interface S5/S8
  • SEID (ID de Ponto de Extremidade da Sessão) - Identificador de sessão da interface Sxb

Contexto de Portadora​

Uma portadora representa um fluxo de tráfego com características específicas de QoS:

  • Portadora Padrão - Criada com cada sessão PDN
  • Portadoras Dedicadas - Portadoras adicionais para necessidades específicas de QoS
  • EBI (ID de Portadora EPS) - Identificador único para cada portadora
  • Parâmetros de QoS - QCI, ARP, taxas de bits (MBR, GBR)

Regras PFCP​

O PGW-C programa o PGW-U com regras de processamento de pacotes:

  • PDR (Regra de Detecção de Pacotes) - Combina pacotes (uplink/downlink)
  • FAR (Regra de Ação de Encaminhamento) - Especifica o comportamento de encaminhamento
  • QER (Regra de Aplicação de QoS) - Aplica limites de taxa de bits
  • BAR (Regra de Ação de Bufferização) - Controla a bufferização de pacotes

Veja Documentação da Interface PFCP para detalhes.

Alocação de Endereço IP​

Os endereços IP do UE são alocados a partir de pools de sub-rede configurados:

  • Seleção baseada em APN - Diferentes APNs podem usar sub-redes diferentes
  • Alocação dinâmica - Seleção aleatória de IPs do intervalo disponível
  • Alocação estática - Suporte para endereços IP solicitados pelo UE
  • Detecção de colisão - Garante a atribuição única de IP

Veja Alocação de Pool de IP do UE para configuração, e IPv6 / Dual-Stack para operação PDN IPv6 e IPv4v6.


Introdução​

Pré-requisitos​

  • Elixir ~1.16
  • Erlang/OTP 26+
  • Conectividade de rede com SGW-C, PGW-U e PCRF
  • Compreensão da arquitetura EPC LTE

Iniciando o OmniPGW​

  1. Configure as definições de tempo de execução em config/runtime.exs
  2. Compile a aplicação:
    mix deps.get
    mix compile
  3. Inicie a aplicação:
    mix run --no-halt

Verificando a Operação​

Verifique os logs para um início bem-sucedido:

[info] Iniciando OmniPGW...
[info] Iniciando Exportador de Métricas em 127.0.0.42:42069
[info] Iniciando Corretor S5/S8 em 127.0.0.10
[info] Iniciando Corretor Sxb em 127.0.0.20
[info] Iniciando Corretor Gx
[info] Iniciando Gerenciador de Nó PFCP
[info] OmniPGW iniciado com sucesso

Acesse as métricas em http://127.0.0.42:42069/metrics (endereço configurado).


Configuração​

Toda a configuração em tempo de execução é definida em config/runtime.exs. Este arquivo é avaliado na inicialização da aplicação. Um exemplo completo segue; cada seção é descrita na tabela de referência abaixo e na Referência de Configuração.

# config/runtime.exs
import Config

# Configuração do Logger
config :logger, level: :info

config :pgw_c,
# Métricas (Prometheus)
metrics: %{
enabled: true,
ip_address: "10.0.0.20", # Rede de gerenciamento
port: 9090,
registry_poll_period_ms: 5_000
},

# Diameter/Gx (interface PCRF)
diameter: %{
listen_ip: "0.0.0.0",
host: "omnipgw.epc.mnc001.mcc001.3gppnetwork.org",
realm: "epc.mnc001.mcc001.3gppnetwork.org",
peer_list: [
%{
host: "pcrf-primary.epc.mnc001.mcc001.3gppnetwork.org",
realm: "epc.mnc001.mcc001.3gppnetwork.org",
ip: "10.0.1.30",
initiate_connection: true
},
%{
host: "pcrf-backup.epc.mnc001.mcc001.3gppnetwork.org",
realm: "epc.mnc001.mcc001.3gppnetwork.org",
ip: "10.0.2.30",
initiate_connection: true
}
]
},

# S5/S8 (interface SGW-C)
s5s8: %{
local_ipv4_address: "10.0.0.20"
},

# Sxb/PFCP (interface PGW-U)
sxb: %{
local_ip_address: "10.0.0.20"
},

# Seleção de UPF
upf_selection: %{
rules: [
%{
name: "Internet Padrão",
priority: 1,
match_field: :apn,
match_regex: ~r/^internet/,
upf_pool: [
%{remote_ip_address: "10.0.0.21", remote_port: 8805, weight: 100},
%{remote_ip_address: "10.0.0.22", remote_port: 8805, weight: 0} # Standby
]
}
],
fallback_pool: [
%{remote_ip_address: "10.0.0.21", remote_port: 8805, weight: 100}
]
},

# Pools de IP do UE
ue: %{
subnet_map: %{
"internet" => [
"100.64.0.0/18" # 16.382 IPs
],
"ims" => [
"100.64.64.0/22" # 1.022 IPs
],
"enterprise.corp" => [
"10.100.0.0/16" # 65.534 IPs
],
default: [
"100.64.127.0/24" # 254 IPs
]
}
},

# Opções de Configuração de Protocolo
pco: %{
primary_dns_server_address: "8.8.8.8",
secondary_dns_server_address: "8.8.4.4",
p_cscf_ipv4_address_list: ["10.0.0.50", "10.0.0.51"],
ipv4_link_mtu_size: 1400
}

A configuração é estruturada em várias seções:

Visão Geral da Configuração​

Referência Rápida de Configuração​

SeçãoPropósitoDocumentação
metricsExportador de métricas PrometheusGuia de Monitoramento
diameterInterface Gx para PCRFConfiguração Diameter Gx
s5s8Interface GTP-C para SGW-CConfiguração S5/S8
sxbInterface PFCP para PGW-UConfiguração PFCP
uePools de endereços IP do UEConfiguração de Pool de IP
pcoOpções de Configuração de ProtocoloConfiguração PCO
CDRCobrança offline e relatórios de usoFormato CDR
chargingModo de cobrança online/offline, sobreposição de quebra de vidroSobrescrição de Cobrança

Veja o Guia Completo de Configuração para informações detalhadas.


Monitoramento de Operações em Tempo Real (API OAM)​

O OmniPGW expõe uma API OAM REST para monitoramento e operações em tempo real, fornecendo visibilidade instantânea sobre o status do sistema. Consulte esses endpoints de leitura sob demanda (ou em um intervalo de polling / a partir de um script) para uma visão operacional ao vivo - sem necessidade de acesso à linha de comando ao host ou consultas de métricas brutas.

Acessando a API OAM​

A API é servida sobre HTTPS/TLS. Todas as rotas são servidas sob o prefixo /api.

https://<omnipgw-ip>:8443/

A documentação interativa da API (Swagger UI) está disponível em:

https://<omnipgw-ip>:8443/api/docs

Exemplo de verificação de saúde (use -k para um certificado de laboratório autoassinado):

curl -k https://localhost:8443/api/status
{"result":"ok"}

Endpoints Disponíveis:

PropósitoEndpointSubstitui (página antiga)
Mergulho profundo em um assinante específico (IMSI/MSISDN/IP)POST /api/ue_searchPesquisa de UE
Listar / pesquisar sessões PDN ativasGET /api/sessions[?search=<imsi|msisdn|ip>]Sessões PGW
Uma sessão por IMSIGET /api/sessions/<imsi>Sessões PGW (detalhe)
Histórico de sessões / eventos de auditoriaGET /api/session_history[?type=&search=&page=&page_size=]Histórico de Sessão
Visão geral da topologia da redeGET /api/topologyTopologia da Rede
Utilização do pool de endereços IP do UEGET /api/ip_pools, GET /api/ip_pools/<name>Pools de IP
Status do UPF / peer PFCPGET /api/upf, GET /api/upf/<ip>Sessões PFCP / Status do UPF
Regras de seleção de UPF, saúde, configuração PCOGET /api/upf_selectionSeleção de UPF
Conectividade de peers Diameter (Gx/Gy)GET /api/diameter[?status=connected|disconnected], GET /api/diameter/<origin-host>Peers Diameter
Status de cobrança online (Gy) por sessãoGET /api/charging[?search=<imsi>], GET /api/charging/<imsi>Status Gy
Quebra de vidro: desativar cobrança online em toda a redePUT /api/charging/override, GET /api/charging/override, DELETE /api/charging/override-
Status de descoberta de DNS P-CSCFGET /api/pcscf_monitorMonitor P-CSCF
Verificação de saúdeGET /api/status-

Para uma visão estilo dashboard ao vivo, faça polling nos endpoints de coleção em um intervalo, por exemplo:

watch -n 2 'curl -sk https://localhost:8443/api/sessions'
watch -n 1 'curl -sk https://localhost:8443/api/diameter?status=disconnected'

Nota: a antiga página Logs (streaming de logs ao vivo) e a página Gy Simulator não têm equivalente na API OAM. Transmita logs do host / seu agregador de logs e use GET /api/charging para inspecionar o estado ao vivo de Gy/cobrança online.

Recursos Chave​

Dados Sob Demanda e Polling:

  • Cada endpoint retorna o estado atual ao vivo dos processos do OmniPGW
  • Faça polling em um intervalo com watch/cron/um script para uma visão que se atualiza automaticamente
  • Campos de status (por exemplo, peer connected/associated) são retornados explicitamente no JSON

Pesquisa & Filtro:

  • Pesquise sessões por IMSI, IP, MSISDN ou APN via GET /api/sessions?search=...
  • Filtre peers Diameter por ?status=connected|disconnected
  • Filtre o estado de cobrança por ?search=<imsi>

Registros de Detalhes Completos:

  • Endpoints por entidade (/api/sessions/<imsi>, /api/upf/<ip>, /api/diameter/<origin-host>, /api/charging/<imsi>) retornam estado completo como JSON
  • Inspecione a sessão completa, configuração de peer e capacidades

Controle de Acesso:

  • Servido sobre HTTPS/TLS na porta 8443
  • Vincule apenas ao IP de gerenciamento e utilize seus controles de acesso
  • Destinado à equipe de NOC/operações e uso de automação

Fluxos de Trabalho Operacionais​

Solução de Problemas de Sessão (Mergulho Profundo):

1. Usuário relata problema de conexão
2. POST /api/ue_search com um corpo JSON contendo o IMSI, MSISDN ou IP
3. Revise os detalhes abrangentes da sessão na resposta:
a) Sessões Ativas - Verifique se a sessão existe com os parâmetros corretos
b) Localização Atual - Verifique TAC, ID da Célula, rede servidora
c) Informações da Portadora - Verifique portadoras padrão e dedicadas
- QCI, MBR/GBR, Nomes de Regras de Cobrança
- Limites APN-AMBR
d) Informações de Cobrança - ID da sessão Gy, status de cota (também GET /api/charging/<imsi>)
e) Informações de Política - Sessão Gx, regras PCC instaladas
f) Eventos Recentes - GET /api/session_history?search=<imsi>
4. Se a sessão não for encontrada → GET /api/diameter?status=disconnected para conectividade PCRF

Pesquisa Rápida de Sessão:

1. Usuário relata problema
2. GET /api/sessions?search=<imsi|msisdn> (ou GET /api/sessions/<imsi>)
3. Verifique se a sessão existe com detalhes básicos:
- Endereço IP do UE alocado
- Parâmetros de QoS
- Pontos de extremidade de túnel estabelecidos
4. Para análise detalhada → POST /api/ue_search

Verificação de Saúde do Sistema:

1. GET /api/upf              → Verifique se todos os peers PGW-U estão "Associados"
2. GET /api/diameter?status=connected → Verifique se todos os peers PCRF estão "Conectados"
3. GET /api/sessions → Verifique a contagem de sessões ativas em relação à capacidade
4. GET /api/status → Verificação de saúde geral ({"result":"ok"})

Monitoramento de Capacidade:

  • Conte as entradas retornadas por GET /api/sessions
  • Compare com a capacidade licenciada/esperada
  • Identifique horários de pico de uso
  • Monitore a distribuição entre APNs; use GET /api/ip_pools para utilização por pool

API vs. Métricas​

Use a API OAM para:

  • Solução de problemas de assinantes em profundidade (POST /api/ue_search)
  • Detalhes e inspeção de estado de sessão individuais (GET /api/sessions/<imsi>)
  • Status de peers em tempo real (GET /api/upf, GET /api/diameter)
  • Verificações rápidas de saúde em todas as interfaces (GET /api/status)
  • Solução de problemas de usuários específicos por IMSI/MSISDN/IP
  • Análise de QoS de portadora (MBR, GBR, QCI)
  • Inspeção de regras de política e cobrança (GET /api/charging)
  • Histórico de sessões e trilhas de auditoria (GET /api/session_history)
  • Monitoramento de capacidade de pool de IP (GET /api/ip_pools)
  • Verificação de configuração e regras (GET /api/upf_selection)

Use Métricas Prometheus para:

  • Tendências históricas
  • Alertas e notificações
  • Gráficos de planejamento de capacidade
  • Análise de desempenho
  • Monitoramento de longo prazo

Melhor Prática: Use ambos juntos - a API OAM para operações imediatas, Prometheus para tendências e alertas.


Monitoramento & Métricas​

Além da API OAM, o OmniPGW expõe métricas compatíveis com Prometheus para monitoramento:

Métricas Disponíveis​

  • Métricas de Sessão

    • teid_registry_count - Sessões S5/S8 ativas
    • seid_registry_count - Sessões PFCP ativas
    • session_id_registry_count - Sessões Gx ativas
    • address_registry_count - Endereços IP do UE alocados
    • charging_id_registry_count - IDs de cobrança ativos
  • Métricas de Mensagens

    • s5s8_inbound_messages_total - Mensagens GTP-C recebidas
    • sxb_inbound_messages_total - Mensagens PFCP recebidas
    • gx_inbound_messages_total - Mensagens Diameter recebidas
    • Distribuições da duração do manuseio de mensagens
  • Métricas de Erros

    • s5s8_inbound_errors_total - Erros de protocolo S5/S8
    • sxb_inbound_errors_total - Erros de protocolo PFCP
    • gx_inbound_errors_total - Erros de Diameter
  • Métricas do Ciclo de Vida da Sessão

    • pgw_session_create_total{result,cause,pdn_type,rat_type} - Tentativas de criação de sessão PDN, divididas por resultado (success/failure), a causa GTP retornada, tipo de PDN (ipv4/ipv6/ipv4v6) e tipo de RAT
    • pgw_session_delete_total{pdn_type} - Exclusões de sessão PDN por tipo de PDN
    • pgw_session_modify_total - Solicitações de Modificação de Bearer tratadas
  • Métricas de Pool de IP de UE

    • ue_pool_addresses_allocated{pool,ip_version} - Endereços de UE alocados por pool (padrão APN) e versão de IP
    • ue_pool_addresses_total{pool,ip_version} - Capacidade total do pool
    • ue_pool_addresses_utilization_ratio{pool,ip_version} - Fração alocada (0.0-1.0); útil para alertas de exaustão do pool. Observe que pools que compartilham um intervalo de endereços contam cada uma das alocações compartilhadas
    • ue_ip_allocation_failures_total{ip_version,reason} - Falhas de alocação (pool_exhausted, already_registered)
  • Métricas de UPF / PFCP por Par

    • upf_peer_associated{peer_ip} - Estado de associação PFCP 1/0 por par
    • upf_peer_healthy{peer_ip} - Saúde 1/0 por par
    • upf_peer_missed_heartbeats{peer_ip} - Batimentos cardíacos consecutivos perdidos por par
    • upf_heartbeat_rtt - Distribuição do tempo de ida e volta do batimento PFCP, por peer_ip
  • Métricas de Bearer & QoS

    • pgw_bearer_create_total{type,qci} - Bearers criados por tipo (default/dedicated) e QCI
    • pgw_bearer_delete_total{type} - Bearers excluídos por tipo
  • Métricas de Par Diameter

    • diameter_peers_connected{application} - Pares Diameter conectados por aplicação (gx/gy/all)

Acessando Métricas​

As métricas são expostas via HTTP no endpoint configurado:

curl http://127.0.0.42:42069/metrics

Veja Guia de Monitoramento & Métricas para configuração de painel e alertas.


Documentação Detalhada​

Esta seção fornece uma visão abrangente de toda a documentação do OmniPGW. Os documentos estão organizados por tópico e caso de uso.

Estrutura da Documentação​

Documentação OmniPGW
├── OPERATIONS.md (Este Guia)
│
└── docs/
├── Configuração & Configuração
│ ├── configuration.md Referência completa do runtime.exs
│ ├── ue-ip-allocation.md Configuração do pool de IP
│ └── pco-configuration.md Configurações de DNS, P-CSCF, MTU
│
├── Interfaces de Rede
│ ├── pfcp-interface.md Sxb/PFCP (comunicação PGW-U)
│ ├── diameter-gx.md Gx (comunicação PCRF)
│ ├── diameter-gy.md Gy/Ro (comunicação OCS)
│ └── s5s8-interface.md S5/S8 (comunicação SGW-C)
│
└── Operações
├── session-management.md Ciclo de vida da sessão PDN
├── charging-override.md Sobrescrição de cobrança online
└── monitoring.md Métricas Prometheus & alertas

Documentação por Tópico​

🚀 Começando​

DocumentoDescriçãoPropósito
OPERATIONS.mdGuia principal de operações (este documento)Visão geral e início rápido

⚙️ Configuração​

DocumentoDescriçãoLinhas
configuration.mdReferência completa da configuração runtime.exs1,600+
ue-ip-allocation.mdGerenciamento e alocação do pool de IP de UE943
ipv6-dual-stack.mdOperação PDN IPv6 / IPv4v6 entre PGW-C e UPF-
pco-configuration.mdOpções de Configuração de Protocolo (DNS, P-CSCF, MTU)344

🔌 Interfaces de Rede​

DocumentoDescriçãoLinhas
pfcp-interface.mdInterface PFCP/Sxb para PGW-U1,355
diameter-gx.mdInterface Diameter Gx para PCRF (Controle de Política)941
diameter-gy.mdInterface Diameter Gy/Ro para OCS (Cobrança Online)1,100+
charging-override.mdSobrescrição de quebra de vidro para desabilitar cobrança online durante um incidente OCS-
s5s8-interface.mdInterface GTP-C S5/S8 para SGW-C456

📊 Operações & Monitoramento​

DocumentoDescriçãoLinhas
session-management.mdCiclo de vida e operações da sessão PDN435
monitoring.mdMétricas Prometheus, painéis Grafana, alertas807
data-cdr-format.mdFormato de arquivo CDR, configuração URR, cobrança offline847
qos-bearers.mdGerenciamento de QoS & bearer, controle de políticas448
troubleshooting.mdProcedimentos de solução de problemas e questões comuns687

🔧 Recursos Avançados​

DocumentoDescriçãoLinhas
pcscf-monitoring.mdDescoberta e monitoramento de saúde do P-CSCF894

Recursos da Documentação​

📈 Diagramas Mermaid​

Todos os documentos incluem gráficos Mermaid para compreensão visual:

  • Diagramas de arquitetura
  • Diagramas de sequência (fluxos de mensagens)
  • Máquinas de estado
  • Topologia de rede

💡 Exemplos Práticos​

Cada documento inclui:

  • Exemplos de configuração do mundo real
  • Configurações prontas para copiar e colar
  • Casos de uso comuns

🔍 Solução de Problemas​

Cada documento de interface inclui:

  • Questões comuns e soluções
  • Comandos de depuração
  • Métricas para diagnóstico

🔗 Referências Cruzadas​

Os documentos são amplamente interligados para fácil navegação.

Caminhos de Leitura​

Para Operadores de Rede​

  1. OPERATIONS.md - Visão geral (este documento)
  2. configuration.md - Configuração
  3. monitoring.md - Monitoramento
  4. session-management.md - Operações do dia a dia

Para Engenheiros de Rede​

  1. OPERATIONS.md - Visão geral da arquitetura (este documento)
  2. pfcp-interface.md - Controle do plano de usuário
  3. diameter-gx.md - Controle de políticas
  4. diameter-gy.md - Cobrança online
  5. s5s8-interface.md - Gerenciamento de sessão
  6. ue-ip-allocation.md - Gerenciamento de IP

Para Configuração & Implantação​

  1. configuration.md - Referência completa
  2. ue-ip-allocation.md - Pools de IP
  3. pco-configuration.md - Parâmetros de rede
  4. monitoring.md - Configurar monitoramento

Estatísticas do Documento​

  • Total de Documentos: 14
  • Total de Linhas: ~10,900+
  • Tamanho Total: ~265 KB
  • Diagramas Mermaid: 75+
  • Exemplos de Código: 150+

Conceitos Chave Abordados​

Arquitetura​

  • ✅ Separação do plano de controle/plano de usuário
  • ✅ Arquitetura OTP/Elixir
  • ✅ Supervisão de processos
  • ✅ Sessões baseadas em GenServer

Protocolos​

  • ✅ PFCP (Protocolo de Controle de Encaminhamento de Pacotes)
  • ✅ GTP-C v2 (Protocolo de Tunelamento GPRS)
  • ✅ Diameter (RFC 6733)

Interfaces 3GPP​

  • ✅ Sxb (PGW-C ↔ PGW-U)
  • ✅ Gx (PGW-C ↔ PCRF)
  • ✅ Gy/Ro (PGW-C ↔ OCS)
  • ✅ S5/S8 (SGW-C ↔ PGW-C)

Operações​

  • ✅ Gerenciamento de sessão
  • ✅ Estratégias de alocação de IP
  • ✅ Aplicação de QoS
  • ✅ Integração de cobrança
  • ✅ Monitoramento & alertas

Recursos Adicionais​

Especificações 3GPP​

EspecificaçãoTítulo
TS 29.274GTP-C v2 (interface S5/S8)
TS 29.244PFCP (interface Sxb)
TS 29.212Interface Diameter Gx (Controle de Política)
TS 32.299Aplicações de Cobrança Diameter (Gy/Ro)
TS 32.251Cobrança de domínio comutado por pacotes
TS 23.401Arquitetura EPC

Documentação Relacionada​

  • Referência de configuração: configuration.md - Referência completa do config/runtime.exs