5G와 4G 코어망을 공부하다 보면 NRF, PCF, UDR, PCRF, Gx, Rx 같은 용어가 쏟아지는데, 각각이 어떤 역할을 하고 서로 어떻게 연결되는지 헷갈리기 쉽습니다. 이번 글에서는 이 개념들을 하나씩 정리하고, 마지막에 전체 그림으로 엮어보겠습니다.
목차
- NRF(Network Repository Function) — NF들의 전화번호부
- PCF(Policy Control Function) — 정책을 결정하는 두뇌
- UDR(Unified Data Repository) — 가입자 데이터의 단일 저장소
- Gx / Rx — 4G의 정책 인터페이스
- PCRF(Policy and Charging Rules Function) vs PCF — 세대 간 비교
- 전체 구조로 보기
1. NRF (Network Repository Function) — NF들의 전화번호부
5G 코어는 AMF, SMF, PCF, UDR 같은 여러 NF(Network Function)가 서비스 기반 인터페이스(SBI)로 통신하는 구조입니다. 이때 "어떤 NF가 어디에 있고, 어떤 서비스를 제공하는지"를 관리하는 것이 NRF입니다. 3GPP TS 29.510에 정의되어 있습니다.
제공 서비스: Nnrf_NFManagement
| 오퍼레이션 | 설명 |
|---|---|
| NFRegister | NF가 자신의 프로필(타입, 지원 서비스, IP/FQDN 등)을 등록 |
| NFUpdate | 등록된 프로필을 부분 수정 |
| NFDeregister | NF 삭제(정상 종료 시) |
| NFStatusSubscribe/Notify | 특정 NF의 상태 변화 구독 및 통지 |
동작 흐름은 간단합니다. NF가 기동되면 NRF에 등록하고, 주기적으로 하트비트를 보내 살아있음을 알립니다. 다른 NF는 필요한 NF를 찾을 때 Nnrf_NFDiscovery 서비스로 NRF에 조회합니다. 즉 NRF는 "나 여기 있어요"라고 알리는 창구이자, "이 서비스 하는 애 어디 있어?"라고 찾는 창구입니다.
2. PCF (Policy Control Function) — 정책을 결정하는 두뇌
PCF는 세션·과금·이동성 관련 정책을 결정해 다른 NF에 전달하는 역할을 합니다. 3GPP TS 23.503에 정의되어 있습니다.
PCF가 제공하는 주요 서비스
| 서비스 | 소비자 | 설명 |
|---|---|---|
| Npcf_SMPolicyControl | SMF | 세션(PDU Session) 단위 QoS/과금 정책 |
| Npcf_AMPolicyControl | AMF | 이동성 정책 |
| Npcf_UEPolicyControl | AMF | UE 정책(URSP 등) |
| Npcf_PolicyAuthorization | AF/NEF | 애플리케이션 요청 기반 QoS 제어 |
가장 핵심적인 흐름은 Npcf_SMPolicyControl입니다. SMF가 PDU 세션을 생성할 때 PCF에 정책을 요청하면, PCF는 UDR에서 가입자 정책 데이터를 조회하고 AF 요청(있다면)을 반영해 PCC Rule을 만들어 SMF에 내려줍니다.
3. UDR (Unified Data Repository) — 가입자 데이터의 단일 저장소
UDR은 가입자 관련 데이터를 통합 저장하는 NF입니다(TS 29.504). 4G에서는 HSS, SPR 등으로 흩어져 있던 데이터를 5G에서는 UDR로 통합하고, 그 위에 UDM(로직 담당)을 두는 구조로 재설계했습니다.
저장 데이터 유형
| 데이터 그룹 | 내용 | 주 사용 NF |
|---|---|---|
| Subscription Data | 인증 정보, 접속/이동성 가입 정보 | UDM, AMF |
| Policy Data | 정책 프로파일(QoS, 과금 등급) | PCF |
| Exposure Data | AF가 NEF 경유로 설정한 데이터 | NEF |
| Application Data | PFD 등 | NEF, PCF |
제공 서비스는 Nudr_DataRepository로, 사실상 CRUD API(Query/Create/Update/Delete/Subscribe)입니다. PCF가 정책 데이터를 조회할 때, NEF가 노출 데이터를 다룰 때 모두 이 UDR을 거칩니다.
4. Gx / Rx — 4G의 정책 인터페이스
Gx, Rx는 4G EPC의 PCC(Policy and Charging Control) 구조에서 쓰이는 Diameter 기반 인터페이스입니다(TS 29.212, TS 29.214). 5G의 Npcf_SMPolicyControl, Npcf_PolicyAuthorization에 각각 대응합니다.
Gx — PCRF ↔ PGW(PCEF)
PCRF가 결정한 PCC Rule을 PGW에 전달해 실제 트래픽에 적용시키는 인터페이스입니다.
- CCR-I / CCA-I: PDN 연결 생성 시 초기 정책 요청/응답
- CCR-U / CCA-U: 세션 중 정책 갱신
- RAR / RAA: PCRF가 능동적으로 정책 변경을 push
- CCR-T / CCA-T: 세션 종료
Rx — PCRF ↔ AF
AF(대표적으로 IMS의 P-CSCF)가 특정 미디어 흐름에 필요한 QoS를 동적으로 요청하는 인터페이스입니다.
- AAR / AAA: 미디어 세션 정보 전달 및 QoS 승인 요청/응답
- STR / STA: 세션 종료 시 정책 해제
대표 사용 예는 VoLTE입니다. 통화 연결 시 P-CSCF가 Rx로 PCRF에 QoS를 요청하면, PCRF가 이를 Gx로 PGW에 반영해 Dedicated Bearer를 생성합니다.
5. PCRF vs PCF — 세대 간 비교
PCRF(4G)와 PCF(5G)는 "정책 결정자"라는 본질은 동일하지만, 통신 방식과 기능 범위가 다릅니다.
| 구분 | PCRF (4G) | PCF (5G) |
|---|---|---|
| 통신 방식 | Diameter (Gx, Rx, Sp, Gxx) | HTTP/2 REST API (SBI) |
| 데이터 포맷 | AVP | JSON |
| 가입자 데이터 저장소 | SPR | UDR로 통합 |
| 이동성 정책 | 별도 기능 없음(MME 처리) | Npcf_AMPolicyControl로 직접 관여 |
| UE 자체 정책(URSP) | 없음 | Npcf_UEPolicyControl로 신규 지원 |
| NF 탐색 | 고정 연결 위주 | NRF를 통한 동적 Discovery |
4G ↔ 5G 인터페이스 대응 관계
| 4G (Diameter) | 5G (SBI) | 역할 |
|---|---|---|
| Gx (PCRF↔PGW) | Npcf_SMPolicyControl (PCF↔SMF) | 세션 정책/QoS/과금 |
| Rx (PCRF↔AF) | Npcf_PolicyAuthorization (PCF↔AF/NEF) | 앱 요청 기반 QoS |
| Sp (PCRF↔SPR) | Nudr (PCF↔UDR) | 가입자 정책 데이터 조회 |
| Gy (PCEF↔OCS) | Nchf_ConvergedCharging (SMF↔CHF) | 온라인 과금 |
6. 전체 구조로 보기
5G SBA 구조
NF들이 NRF에 등록하고, SMF/AMF/AF가 각자의 목적에 맞는 Npcf_* 서비스로 PCF와 통신하며, PCF는 UDR에서 정책 데이터를 조회합니다.
4G EPC PCC 구조
PGW(PCEF)와 AF가 각각 Gx, Rx로 PCRF와 통신하고, PCRF는 Sp로 SPR에서 가입자 정책을 조회합니다.
정리
- NRF: NF들의 등록/탐색을 관리하는 전화번호부 역할
- PCF: 세션·이동성·앱 QoS 정책을 결정하는 두뇌, UDR에서 데이터를 가져와 정책을 만듦
- UDR: 가입자 관련 모든 데이터를 저장하는 단일 저장소, PCF·UDM·NEF가 함께 조회
- Gx/Rx: 4G에서 PCRF가 PGW·AF와 통신하던 Diameter 인터페이스, 5G에서는 Npcf_SMPolicyControl·Npcf_PolicyAuthorization으로 대체
- PCRF → PCF: 같은 역할(정책 결정)을 계승하면서 통신 방식을 HTTP/2 기반 SBI로 현대화하고, 이동성·UE 정책까지 영역을 확장한 진화 관계
결국 5G SBA는 4G에서 각 인터페이스별로 흩어져 있던 기능(Gx, Rx, Sp 등)을 NRF 기반의 동적 서비스 탐색 구조로 통합하고, 데이터 저장소를 UDR로 일원화한 것이 핵심 변화라고 볼 수 있습니다.