PFCP
PFCP(Packet Forwarding Control Protocol)는 TS 29.244[1] 지정된 제어 플레인과 사용자 플레인 기능 간의 Sx / N4 인터페이스에서 사용되는 3GPP 프로토콜이다. 이는 5G 차세대 모바일 코어 네트워크 (일명 5GC[2] )에 도입된 주요 프로토콜 중 하나이지만 CUPS ( Control and User Plane Separation)를 구현하기 위해 4G / LTE EPC에서도 사용된다.[3] PFCP 및 관련 인터페이스는 모바일 가입자에게 4G 및 5G 서비스를 제공하는 대부분의 사업자가 배포한 모바일 코어 네트워크에서 사용되는 다양한 유형의 기능 요소 간의 상호 작용을 공식화한다. 이 두 가지 유형의 구성 요소는 다음과 같다.
- 대부분의 시그널링 절차를 처리하는 제어 평면(CP) 기능 요소(예 : 네트워크 연결 절차, 사용자 데이터 플레인 경로 관리 및 SMS 로 일부 경량 서비스 제공)
- 사용자 데이터 평면 (UP)이 CP 요소가 설정 한 규칙에 따라 대부분의 패킷 포워딩을 처리하는 기능 요소(예를 들어, IPv4, IPv6를 위한 패킷 포워딩의 - 심지어 미래에 5G가 적용된 이더넷에서도 가능한 - 다양한 지원 무선 사이 RAN들과 인터넷 또는 엔터프라이즈 네트워크를 나타내는 PDN ).
PFCP의 범위는 OpenFlow의 범위와 유사하지만 모바일 코어 네트워크의 특정 사용 사례를 제공하도록 설계되었다.
PFCP는 또한 TR-459 의 BroadBand Forum에서 정의한 바와 같이 세분화된 BNG 의 제어 평면과 사용자 평면 기능 간의 인터페이스에서 사용된다.
개요
[편집]개념과 구현에서 GTP와 유사하지만 PFCP는 이를 보완한다. Control-Plane의 시그널링 컴포넌트가 User-Plane 컴포넌트에 의해 수행되는 패킷 처리 및 포워딩을 관리하기 위한 제어 수단을 제공한다. 일반적인 EPC 또는 5G 패킷 게이트웨이는 프로토콜에 의해 2개의 기능 부분으로 분할되어 보다 자연스러운 진화와 확장성을 제공한다.
PFCP 프로토콜은 다음 3GPP 모바일 코어 인터페이스에서 사용된다.
- Sxa-SGW-C와 SGW-U 사이
- Sxb-PGW-C와 PGW-U 사이
- Sxc-TDF-C와 TDF-U 사이 (트래픽 감지 기능)
- N4-SMF와 UPF 사이
참고 : 병합된 SGW / PGW가 구현되는 경우 Sxa와 Sxb를 결합할 수 있다.
기능
[편집]Control-Plane 기능 요소(예 : PGW-C, SMF)는 사용자 평면 기능 요소 (예 : PGW-U, UPF), PFCP 세션을 설정, 수정 또는 삭제한다.
사용자 평면 패킷은 GTP-U 캡슐화를 사용하여 사용자 평면 패킷을 캡슐화함으로써 CP와 UP 기능간에 전달되어야 한다.(3GPP TS 29.281 [3] 참조) UP 기능에서 CP 기능으로 데이터를 전달하기 위해 CP 기능은 PFCP 세션 컨텍스트 당 PDR(들)을 제공해야 한다. PDI는 CP 기능으로 전달할 사용자 평면 트래픽을 식별하고 대상 인터페이스를 사용하는 FAR 세트를 사용한다. "CP function side"로 설정하고 GTP-U 캡슐화를 수행하고 PFCP 세션 및 PDR별로 CP 기능에서 고유하게 할당된 GTP-u F-TEID로 패킷을 전달하도록 설정한다. 그러면 CP 기능은 캡슐화 GTP-u 패킷의 헤더에서 F-TEID에 의해 전달된 데이터가 속하는 PDN 연결 및 베어러를 식별해야 한다. CP 기능에서 UP 기능으로 데이터를 전달하기 위해 CP 기능은 소스 인터페이스 "CP function side"로 설정된 PDI를 사용하여 PFCP 세션 컨텍스트 당 하나 이상의 PDR을 제공하고 PDR 당 UP 기능에서 고유하게 할당 된 GTP-u F-TEID 및 GTP-U 캡슐화 해제를 수행하고 패킷을 의도한 대상으로 전달하도록 설정된 FAR을 사용한다. URR 및 QER도 구성 할 수 있다.
세션 당 여러 PDR, FAR, QER, URR 및 / 또는 BAR이 전송된다.
다음은 논리적 연관 모델로 구성된 주요 개념이다.
- PDR-패킷 감지 규칙-데이터 패킷을 특정 처리 규칙과 일치시키기위한 정보를 포함한다. 외부 캡슐화와 내부 사용자 평면 헤더를 모두 일치시킬 수 있다. 포지티브 매칭에 다음 규칙을 적용할 수 있다.
- FAR-전달 작업 규칙-첫 번째 패킷 알림에 대한 트리거를 포함하여 PDR과 일치하는 패킷을 삭제, 전달, 버퍼링 또는 복제해야하는지에 대한 여부 및 방법을 규정하며 여기에는 패킷 캡슐화 또는 헤더 강화 규칙이 포함된다. 버퍼링의 경우 다음 규칙을 적용할 수 있다.
- BARs-버퍼링 동작 규칙-버퍼링 할 데이터의 양과 Control-Plane에 알리는 방법.
- QER- QoS 시행 규칙-게이팅 및 QoS 제어, 흐름 및 서비스 수준 표시를 제공하기위한 규칙이다.
- URR-사용보고 규칙-사용자 평면 기능에서 처리하는 트래픽을 계산하고 보고하기위한 규칙이 포함되어 있으며 제어 평면 기능에서 과금 기능을 활성화하는 보고서를 생성한다.
- FAR-전달 작업 규칙-첫 번째 패킷 알림에 대한 트리거를 포함하여 PDR과 일치하는 패킷을 삭제, 전달, 버퍼링 또는 복제해야하는지에 대한 여부 및 방법을 규정하며 여기에는 패킷 캡슐화 또는 헤더 강화 규칙이 포함된다. 버퍼링의 경우 다음 규칙을 적용할 수 있다.
비트 / 바이트 오프셋 | 0 | 1 | 2 | 삼 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0..3 바이트 | 버전 (1) | (예비 0) | MP | 에스 | 메시지 유형 | 메시지 길이 (바이트 단위, 처음 4 개 제외) | ||||||||||||||||||||||||||
바이트 4..11 | (S 플래그가 설정 됨) 경우 SEID; 그렇지 않으면 이러한 바이트가 누락된다. | |||||||||||||||||||||||||||||||
바이트 8..11 | ||||||||||||||||||||||||||||||||
바이트 4..7
또는 12..15 |
시퀀스 번호 | (MP 플래그 설정) 경우 메시지
우선 순위; 기타 (예비 0) |
(예비 0) | |||||||||||||||||||||||||||||
바이트 8. . (MsgLen + 4)
또는 16. . (MsgLen + 4) |
0 개 이상의 정보 요소 |
비트 / 바이트 오프셋 | 0 | 1 | 2 | 삼 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0..3 바이트 | 버전 (1) | (예비 0) | MP | 에스 | 메시지 유형 | 메시지 길이 (바이트 단위, 처음 4 개 제외) | ||||||||||||||||||||||||||
바이트 4..11 | (S 플래그가 설정 됨) 경우 SEID; 그렇지 않으면 이러한 바이트가 누락된다. | |||||||||||||||||||||||||||||||
바이트 8..11 | ||||||||||||||||||||||||||||||||
바이트 4..7
또는 12..15 |
시퀀스 번호 | (MP 플래그 설정) 경우 메시지
우선 순위; 기타 (예비 0) |
(예비 0) | |||||||||||||||||||||||||||||
바이트 8. . (MsgLen + 4)
또는 16. . (MsgLen + 4) |
0 개 이상의 정보 요소 |
IE는 독점적 인 인코딩을 갖거나 그룹화 된 것으로 정의된다. 그룹화 된 IE는 PFCP 메시지 페이로드 에서처럼 차례로 인코딩 된 다른 IE의 목록이다.
IE 유형 0..32767은 3GPP에 한정되며 Enterprise-ID 세트가 없다. IE 유형 32768..65535는 사용자 지정 구현에서 사용할 수 있으며 Enterprise-ID는 발급 당사자의 IANA SMI 네트워크 관리 사설 엔터프라이즈 코드[4]로 설정되어야한다.
Message Type | Message | Interface Applicability | Direction | Purpose | |||||
---|---|---|---|---|---|---|---|---|---|
Request | Response | Sxa | Sxb | Sxc | N4 | Request | Response | ||
0 | (Reserved) | ||||||||
(1..49) | Node Related Messages | ||||||||
1 | 2 | Heartbeat | X | X | X | X | CP ↔ UP | 다른 노드가 활성 상태인지 확인하기 위해 설정된 연결이 있는 통신 피어 간에 선택적으로 사용할 수 있다. Recovery-Timestamp는 다른 피어가 다시 시작되었는지 감지하는 데 사용된다. | |
3 | 4 | PFD Management | - | X | X | X | CP → UP | UP → CP | 일반 PFCP 세션 외부에서 애플리케이션 식별자별로 PFD를 프로비저닝하는 선택적 기능이다. |
5 | 6 | Association Setup | X | X | X | X | CP ↔ UP | CP와 UP 기능 요소 간의 연결을 설정하고 업데이트한다. 기능에 대해 다른 요소에 알리기 위해 선택적 기능 목록을 포함한다. 다른 구성 요소도 전달된다.
이 절차를 수행하기 전에 세션 관련 메시지를 교환해서는 안 된다. Association-Release는 CP에 의해서만 트리거되지만 UP은 Association-Update-Request의 일부로 이를 요청할 수 있다. | |
7 | 8 | Association Update | X | X | X | X | CP ↔ UP | ||
9 | 10 | Association Release | X | X | X | X | CP → UP | UP → CP | |
- | 11 | Version Not Supported | X | X | X | X | CP ↔ UP | 구현된 버전을 포함하지 않는 모든 요청에 대한 오류 응답(현재 버전 1만 정의됨). | |
12 | 13 | Node Report | X | X | X | X | UP → CP | CP → UP | 세션의 일부는 아니지만 잠재적으로 일반적인 정보(예: 사용자 평면 경로 오류)를 보고하기 위해 UP 기능에 의해 전송된다. |
14 | 15 | Session Set Deletion | X | X | - | CP → UP | UP → CP | 영향을 받는 모든 세션의 삭제를 요청하는 부분 실패를 나타내기 위해 CP 기능에 의해 전송된다. | |
(50..99) | Session Related Messages | ||||||||
50 | 51 | Session Establishment | X | X | X | X | CP → UP | UP → CP | CP에서 UP 트래픽을 처리하고 전달하기 위한 규칙 집합으로 구성된 세션을 설정, 수정 및 제거하는 데 사용된다. PFCP 애플리케이션 도메인의 주요 기능 메시지이다.
UP는 추가적인 Session-Report 메시지를 피할 수 있도록 답변에 Usage Report 정보를 포함할 수 있다. |
52 | 53 | Session Modification | X | X | X | X | |||
54 | 55 | Session Deletion | X | X | X | X | |||
56 | 57 | Session Report | X | X | X | X | UP → CP | CP → UP | 패킷 처리 및 전달 절차를 기반으로 하는 UP 사용 보고서 정보의 보고: 다운링크 데이터(대기 중인 새 패킷 알림), 사용 보고서(충전 목적을 위한 볼륨, 시간 등 기반 정보), 오류 및 비활성 표시. |
(100..255) | Other Messages |
전송
[편집]GTP-C와 매우 유사한 PFCP는 UDP를 사용한다. 포트 8805는 예약되어 있다.[5]
신뢰성을 위해 GTP-C와 유사한 재전송 전략이 사용되며 손실 된 메시지는 T1 간격으로 N1 회 전송된다. 트랜잭션은 3 바이트 길이의 시퀀스 번호, 통신 피어의 IP 주소 및 포트로 식별된다.
프로토콜에는 통신 피어의 가용성을 모니터링하고 재시작을 감지 할 수 있는 자체 하트 비트 요청 / 응답 모델이 포함되어 있다 (복구-타임 스탬프 정보 요소 사용).
제어 및 사용자 평면 기능 요소 간의 사용자 평면 패킷 교환의 경우 Sx-u 인터페이스의 경우 GTP-U 또는 N4-u 인터페이스의 경우 더 간단한 UDP 또는 이더넷 캡슐화 (표준이 아직 불완전하므로 확인 예정) .
같이 보기
[편집]각주
[편집]- ↑ 3GPP TS 29.244 LTE; Interface between the Control plane Plane and the User Plane of EPC Nodes
- ↑ “The 5G Core Network (5GC) – Part 1 – Network Entities”.
- ↑ Flynn, Kevin. “Control and User Plane Separation of EPC nodes (CUPS)”. 《www.3gpp.org》.
- ↑ https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers
- ↑ “Service Name and Transport Protocol Port Number Registry”. 《www.iana.org》.