Event Hubs로 UE 사용량 모니터링

Azure Private 5G Core는 Event Hubs와 통합되도록 구성하여 UE 사용량을 모니터링할 수 있습니다. Event Hubs는 AP5GC와 원활하게 통합할 수 있는 빅 데이터 스트리밍 플랫폼이자 이벤트 수집 서비스입니다. 이 서비스는 낮은 대기 시간으로 초당 수백만 개의 이벤트를 처리할 수 있습니다. Event Hubs 인스턴스로 전송된 데이터는 실시간 분석 공급자나 일괄 처리 또는 스토리지 어댑터를 통해 변환되고 저장될 수 있습니다.

Azure Event Hubs에서 생성되는 모니터링 데이터를 기반으로 UE 사용량을 모니터링하고 Azure Monitor를 사용하여 이 데이터를 분석하거나 경고할 수 있습니다.

필수 조건

  • 공유 액세스 정책과 함께 Event Hubs 인스턴스가 있어야 합니다. 공유 액세스 정책에는 전송 및 수신 액세스가 구성되어 있어야 합니다.
  • Event Hubs 인스턴스에 대한 기여자 또는 소유자 역할이 있고 사이트의 Packet Core 컨트롤 플레인에 할당된 사용자가 할당한 관리 ID가 있어야 합니다.

Packet Core 컨트롤 플레인이 필요한 관리 ID로 구성되면 기본 공유 액세스 정책이 자동으로 생성됩니다.

UE 사용량 모니터링 구성

사이트를 만드는 중에 또는 이후 단계에서 패킷 코어 구성을 수정하여 UE 사용량 모니터링을 사용하도록 설정할 수 있습니다.

Event Hubs가 AP5GC 배포에서 데이터를 수신하면 .NET와 같은 SDK를 사용하여 애플리케이션을 작성하여 이벤트 데이터를 사용하고 메트릭을 생성할 수 있습니다.

Important

UE 사용량 모니터링을 사용하도록 설정한 후 관리 ID를 만드는 경우 더미 구성을 변경하여 패킷 코어 구성을 새로 고쳐야 합니다. 이는 배포에 영향을 주지 않고 그대로 둘 수 있는 변경이거나 즉시 되돌릴 수 있는 변경일 수 있습니다. 패킷 코어 인스턴스 수정을 참조하세요. 패킷 코어 구성을 새로 고치지 않으면 패킷 캡처가 실패합니다.

보고된 UE 사용량 데이터

구성되면 AP5GC는 모든 PDU 세션에 대한 QoS 흐름 수준당 데이터 사용량 보고서를 보냅니다. 다음 데이터가 보고됩니다.

데이터 이름 데이터 형식 설명
구독자 식별자(SUPI/IMSI) 문자열 UE와 연관된 식별자입니다.
IMEI 문자열 UE와 연결된 국제 모바일 장비 ID입니다.
제공되는 PLMN ID 문자열 UE와 연결된 제공되는 공용 토지 모바일 네트워크의 ID입니다.
이벤트 타임스탬프 DateTime UE 이벤트의 타임스탬프입니다.
총 데이터 볼륨(바이트) 정수 전송된 총 데이터 볼륨입니다. 바이트 단위로 측정됩니다.
업링크 데이터 볼륨 정수 전송된 업링크 데이터 볼륨입니다. 바이트 단위로 측정됩니다.
다운링크 데이터 볼륨 정수 전송된 다운링크 데이터 볼륨입니다. 바이트 단위로 측정됩니다.
APN/DNN 문자열 데이터 요소나 데이터 네트워크 이름입니다.
타임스탬프 첫 번째 사용량 DateTime 현재 UE 데이터 사용량에 전송되고 매핑될 첫 번째 IP 패킷의 타임스탬프입니다.
타임스탬프 마지막 사용량 DateTime 현재 UE 데이터 사용량에 전송되고 매핑될 마지막 IP 패킷의 타임스탬프입니다.
기간 정수 이 이벤트 데이터가 수집되는 기간(초)입니다.
RAN 식별자 문자열 UE와 연결된 무선 액세스 네트워크 식별자입니다.
RAT 형식 정수 무선 액세스 기술 형식입니다.
QCI/5QI 정수 서비스 식별자 품질입니다. 자세한 내용은 5G QoS(서비스 품질) 및 QoS 흐름을 참조하세요.
PDU 세션 ID 문자열 UE 이벤트에 대한 프로토콜 데이터 단위의 식별자입니다.
IP 주소 문자열 UE의 IP 주소입니다.
패킷 코어 컨트롤 플레인 ARM ID 문자열 UE와 연결된 패킷 코어 컨트롤 플레인 ARM의 식별자입니다.
패킷 코어 데이터 평면 ARM ID 문자열 UE와 연결된 패킷 코어 데이터 평면 ARM의 식별자입니다.
ARP Object 우선 순위 수준, 선점 기능 및 선점 취약성을 포함한 할당 및 보존 정책입니다. 자세한 내용은 5G QoS(서비스 품질) 및 QoS 흐름을 참조하세요.
- ArpPriorityLevel Int(1~15) 위의 ARP를 참조하세요.
- 선점 기능 문자열 위의 ARP를 참조하세요.
- 선점 취약성 문자열 위의 ARP를 참조하세요.

Azure Stream Analytics

Azure Stream Analytics를 사용하면 Event Hubs에서 스트리밍 데이터를 처리하고 분석할 수 있습니다. 자세한 내용은 Azure Stream Analytics를 사용하여 Event Hubs에서 데이터 처리를 참조하세요.

UE 사용량 스키마

다음 스키마는 Event Hubs에서 UE 사용량 메시지 유효성을 검사하는 데 사용됩니다.

{
  "type": "record",
  "name": "UeUsageReport",
  "namespace": "Microsoft.Azure.Pmn.EventHubAgent.Models",
  "doc": "Schema for the UE usage report data. The events will be serialized using this schema.",
    "fields": [{
        "name": "apnDnn",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "arp",
        "type": ["null", {
            "type": "record",
            "name": "Arp",
            "fields": [{
                "name": "preemptCap",
                "type": ["null", "string"],
                "default": null
            }, {
                "name": "preemptVuln",
                "type": ["null", "string"],
                "default": null
            }, {
                "name": "priorityLevel",
                "type": ["null", "int"],
                "default": null
            }]
        }],
        "default": null
    }, {
        "name": "downlinkDataVolumeBytes",
        "type": ["null", "long"],
        "default": null
    }, {
        "name": "durationSeconds",
        "type": ["null", "int"],
        "default": null
    }, {
        "name": "eventTimestamp",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "imei",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "imsi",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "ipAddress",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "pcControlPlaneId",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "pcDataPlaneId",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "pduSessionId",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "qci5QI",
        "type": ["null", "int"],
        "default": null
    }, {
        "name": "ranIdentifier",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "ratType",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "servingPlmnId",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "timestampFirstUsage",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "timestampLastUsage",
        "type": ["null", "string"],
        "default": null
    }, {
        "name": "totalDataVolumeBytes",
        "type": ["null", "long"],
        "default": null
    }, {
        "name": "uplinkDataVolumeBytes",
        "type": ["null", "long"],
        "default": null
    }]
}

다음 단계