Transcript
EMM Procedure: 6. Handover without TAU (3편)
- S1 Handover -
목 차
I. 시작하는 글
II. Concept of S1 Handover
III. Procedure of S1 Handover
IV. EPS Entity Information: Before/After S1 Handover
V. 마치는 글
EMM Case 6, 즉 intra-LTE 환경에서 발생하는 핸드오버 중 S1 핸드오버 절차를 다룬다. S1 프로토콜에서 핸드오버와 관련된 기능을 살펴보고, S1 핸드오버 절차를 단계별로 상세히 설명한다. EPC(MME)가 개입하여 eNB 간 핸드오버를 준비하는 과정, 끊김 없는 서비스를 제공하기 위해 핸드오버 단절 시간 동안 DL 패킷이 S-GW를 거친 indirect 터널을 통하여 전달되는 과정 및 핸드오버 후 EPS 베어러 경로를 변경하는 과정을 기술하고, S1 핸드오버 절차 전?후로 EPS 엔터티 내에 정보들이 어떻게 변경되는지 살펴본다.
2012년 7월 31일
www.netmanias.com
NMC Consulting Group (tech@netmanias.com)
약어표
AMBR Aggregated Maximum Bit Rate
ARP Allocation and Retention Priority
AS Access Stratum
ASME Access Security Management Entity
C-RNTI Cell Radio Network Temporary Identifier
DL Downlink
DRB Data Radio Bearer
EARFCN E-UTRA Absolute Radio Frequency Channel Number
ECGI E-UTRAN Cell Global Identifier
EMM EPS Mobility Management
eNB Evolved Node B
EPS Evolved Packet System
E-RAB E-UTRAN Radio Access Bearer
E-UTRA Evolved Universal Terrestrial Radio Access
E-UTRAN Evolved Universal Terrestrial Radio Access Network
GTP GPRS Tunneling Protocol
GUMMEI Globally Unique MME Identifier
HFN Hyper Frame Number
HSS Home Subscriber Server
LTE Long Term Evolution
MME Mobility Management Entity
NAS Non Access Stratum
NCC Next hop Chaining Counter
NH Next Hop
PCI Physical Cell ID
PDCP Packet Data Convergence Protocol
P-GW Packet Data Network Gateway
QCI QoS Class identifier
RRC Radio Resource Control
S1AP S1 Application Protocol
S-GW Serving Gateway
SN Sequence Number
TA Tracking Area
TAC Tracking Area Code
TAU Tracking Area Update
TEID Tunnel Endpoint IDentifier
UE User Equipment
UMTS Universal Mobile Telecommunication System
UL Uplink
I. 시작하는 글
“EMM Case 6. Handover without TAU (2편) ? X2 Handover” 기술문서[1]에서는 두 eNB 간에 핸드오버가 직접 수행되는 X2 핸드오버 절차를 다루었다. 이번 문서에서는 두 eNB 간 핸드오버가 EPC를 통해 수행되는 S1 핸드오버 절차를 다룬다. S1 핸드오버 절차 역시 X2 핸드오버와 마찬가지로 intra-LTE 환경(Source eNB와 target eNB는 같은 MME/S-GW에 연결되어 있음)과 source/target eNB 모두 사용자의 TAI(Tracking Area Identifier) list에 있는 TA에 속해 있는 경우에 대해 설명한다.
먼저 II 장에서 S1 핸드오버 개념을 정리하고, III 장에서 S1 핸드오버 절차를 상세히 기술한다. 이어서 IV 장에서 핸드오버 절차 전?후로 EPS 엔터티들이 갖는 정보가 어떻게 변하는지 정리한다.
II. S1 핸드오버 개념 (Concept of S1 Handover)
2.1 S1 프로토콜 스택
S1 핸드오버는 source eNB와 target eNB 간에 핸드오버가 S1 인터페이스를 통하여 수행된다. S1 인터페이스는 eNB와 EPC를 연결하는 인터페이스로, eNB는 제어 평면에서는 S1AP 시그널링을 통하여 MME와 통신하고, 사용자 평면에서는 GTP 터널을 통하여 S-GW와 통신한다. 그림 1은 S1 인터페이스 상에서 제어 평면과 사용자 평면의 프로토콜 스택을 나타낸다.
그림 1. Protocol Stack over S1 Interface
새로운 eNB가 설치될 때, eNB와 MME(들) 간에는 “S1 Setup” 절차가 수행된다. eNB는 MME(들)로 S1 Setup Request(eNB ID, eNB Name, TAC) 메시지를 전송하여 eNB configuration 정보를 알리고, MME는 eNB에게 S1 Setup Response(GUMMEI, MME Name, Relative MME Capacity) 메시지를 전송하여 eNB가 configuration 정보를 업데이트하도록 한다. Relative MME Capacity는 MME pool에 있는 MME 간 load balancing에 사용되는 정보로 UE connection 처리 능력에 대한 weight factor를 나타낸다. eNB는 여러 MME와 연결되어 있을 때, 새로운 UE connection을 어느 MME로 설정할지 이 값을 이용하여 결정한다.
eNB와 EPC 간 UE connection을 살펴보면, 제어 평면의 경우 eNB와 MME 간에 사용자별 시그널링은 S1AP (S1 Application Protocol) 시그널링 연결 로 제공되며 {eNB UE S1AP ID, MME UE S1AP ID}에 의해 구별된다. 사용자 평면의 경우 eNB와 S-GW 간에 사용자별 S1 베어러는 GTP(GPRS Tunneling Protocol) 터널로 제공되며 {하향 S1 TEID(S1 eNB TEID), 상향 S1 TEID(S1 S-GW TEID)}에 의해 구별된다.
2.2 핸드오버 관련 S1AP 절차와 S1AP 메시지
3GPP TS 36.413 Table 1과 Table 2는 S1AP 기본 절차를 나타내며 이들 절차들은 Non-UE 관련 절차와 UE 관련 절차를 모두 포함한다. 본 문서에서는 핸드오버 절차에 관한 문서로, UE 관련 절차 그 중에서도 III 장에서 기술될 핸드오버 관련 절차만을 설명하기로 한다. 표 1은 S1 핸드오버 관련 S1AP 기본 절차와 S1AP 메시지를 나타낸다.
표 1. S1 Messages for Handover related S1AP Elementary Procedures [2]
Elementary Procedure
-Handover Preparation
-Handover Resource Allocation
-Handover Cancellation
-UE Context Release
-eNB Status Transfer
-Handover Notification
Initiating Message
-Handover Required
-Handover Request
-Handover Cancel
-UE Context Release Command
-eNB Status Transfer
-Handover Notify
Response Message
Successful
-Handover Command
-Handover Request Acknowledge
-Handover Cancel
-UE Context Release Complete
--
--
Unsuccessful
-Handover Preparation Failure
-Handover Failure
-Acknowledge -
--
--
--
표 1의 메시지 중 III 장에서 사용되는 S1AP 메시지들(성공적으로 핸드오버가 수행될 때 사용되는 메시지들)을 아래에 간단히 기술하였다.
- Handover Required message: 핸드오버 준비 단계에서 사용되는 메시지로, source eNB가 MME로 전송하며 target eNB 정보와 source 셀에서의 radio 관련 정보를 포함함
- Handover Request message: 핸드오버 준비 단계에서 사용되는 메시지로, MME가 target eNB로 전송하며 사용자의 UE Context를 포함함
- Handover Request Acknowledge message: 핸드오버 준비 단계에서 사용되는 메시지로, target eNB에서 UE에 대한 자원 할당이 성공적인 경우 target eNB가 MME에게 전송함. Target eNB는 핸드오버 후 사용할 S1 베어러를 위한 하향 S1 TEID와, 핸드오버 중 DL 패킷 전달에 사용할 S1 베어러(indirect 터널)를 위한 하향 S1 TEID를 할당하여 전달함
- Handover Command message: 핸드오버 준비 단계에서 사용되는 메시지로, MME가 source eNB에게 전송함. UE가 target eNB로 접속 시 필요한 정보(Target C-RNTI, Target eNB AS Security 알고리즘, DRB ID 등)와 S-GW가 핸드오버 중 DL 패킷 전달에 사용할 S1 베어러(indirect 터널)를 위해 할당한 상향 S1 TEID가 전달됨
- eNB Status Transfer message: 핸드오버 실행 단계에서 사용되는 메시지로, source eNB가 MME를 통해 target eNB에게 전송하며 어느 패킷부터 송?수신 해야 하는지를 알림
- Handover Notify message: 핸드오버 완료 단계에서 사용되는 메시지로, target eNB가 MME로 전송하며 UE가 target eNB로 핸드오버를 마쳤음을 알림
- UE Context Release Command message: 핸드오버 완료 단계에서 사용되는 메시지로, MME가 source eNB에게 전송하며 UE Context 해제를 요청
- UE Context Release Complete message: 핸드오버 완료 단계에서 사용되는 메시지로, source eNB가 MME에게 전송하며 UE Context를 해제했음을 알림
2.3 S1 핸드오버 절차: One Shot
S1 핸드오버 절차는 1편[3]에서 기술한 바와 같이 준비 단계(Preparation), 실행 단계(Execution) 및 완료 단계(Completion)로 구분된다. III 장에서 본격적으로 S1 핸드오버 절차를 상세히 기술하기에 앞서, 전체 절차를 간단히 정리해 보도록 한다. 그림 2는 S1 핸드오버 전?중(준비/실행/완료단계)?후 과정을 “One Shot”으로 나타낸 것이다. 편의상 S-GW와 P-GW를 SAE-GW로 통합하여 나타내었고, source eNB와 target eNB는 SeNB와 TeNB로 기술하였다.
그림 2. Simplified Procedure of S1 Handover
S1 핸드오버 전 (Before S1 Handover)
사용자는 eNB A(에 있는 serving 셀)에 접속하여 서비스를 받고 있다. Measurement event가 발생하면 UE는 eNB A로 Measurement Report 메시지를 전송한다.
S1 핸드오버 준비 단계 (S1 Handover Preparation)
Source eNB(eNB A)는 Measurement Report 메시지에 있는 neighbor 셀의 신호세기 정보와 자신이 관리하고 있는 Neighbor Cell List 정보를 기반으로 어느 eNB로 핸드오버 할지 target eNB(eNB B)를 결정한다. Source eNB는 target eNB로 X2 connection을 이용하여 핸드오버 할 수 없음을 알고 S1 핸드오버를 결정하고, MME를 통하여 target eNB와 핸드오버를 실행하기 위한 준비를 한다. Source eNB와 target eNB는 모두 S1AP 시그널링을 통해 MME와 통신하며, 이 과정에서 target eNB는 사용자가 source eNB에서 제공받고 있는 서비스가 target eNB에서도 제공 가능하도록 미리 자원을 할당하고, MME는 UE가 target 셀에 접속하는데 필요한 정보들을 source eNB에게 전달한다.
또한 target eNB와 S-GW는 사용자가 핸드오버를 실행하는 동안 source eNB로 전달되는 DL 패킷을 S-GW를 거쳐 target eNB로 전달할 indirect 터널을 설정하기 위한 자원을 할당한다. Target eNB와 S-GW에서 자원 할당 과정은 다음과 같다.
- Source eNB가 Handover Required 메시지에 target eNB 정보를 담아 MME로 전송하면(1),
- MME는 target eNB가 AS Security 베이스 키를 만드는데 필요한 AS Security 정보를 UE Context 정보와 함께 Handover Request 메시지에 담아 target eNB로 전송하고(2),
- Target eNB는
- MME로부터 얻은 S1 S-GW TEID를 이용하여 핸드오버 후 상향 패킷을 전송할 상향 S1 베어러를 설정하고, 하향 S1 베어러를 위한 S1 target eNB TEID를 할당하며(3),
- UE가 target eNB로 접속을 시도하는 핸드오버 동안 source eNB가 DL 패킷을 전달할 indirect 터널 {source eNB ~ S-GW ~ target eNB} 구간 중 {S-GW ~ target eNB} 구간용 S1 target eNB TEID를 할당하고,
- UE가 target 셀로 접속할 때 필요한 정보(Target C-RNTI, Target DRB ID 등)를 포함하는 Handover Command 메시지를 구성하여
- 이를 Handover Request Ack 메시지에 담아 MME로 전송한다(4).
- MME는 이를 수신하여 Create Indirect Data Forwarding Tunnel Request 메시지에 target eNB가 할당한 indirect 터널용 S1 target eNB TEID를 담아 S-GW로 전송한다(5).
- S-GW는
- Target eNB로 indirect 터널을 설정하고(6),
- Indirect 터널 {source eNB ~ S-GW ~ target eNB} 구간 중 {source eNB ~ S-GW} 구간용 S1 S-GW TEID를 할당하여 Create Indirect Data Forwarding Tunnel Response 메시지에 담아 MME로 전송한다.
- MME는 Handover Command 메시지에 S-GW가 할당한 indirect 터널용 S1 S-GW TEID와 UE가 target 셀로 접속할 때 필요한 정보를 담아 source eNB로 전송한다(7).
- Source eNB는 S-GW로 indirect 터널을 설정한다(8).
8 과 6 과정으로부터 {source eNB ~ S-GW ~ target eNB}에 이르는 indirect 터널이 생성된다.
S1 핸드오버 실행 단계 (S1 Handover Execution)
이제 두 eNB 간에 핸드오버를 위한 준비를 모두 마쳤으므로 UE가 핸드오버를 하도록 할 차례이다.
- Source eNB는
- UE에게 target 셀에 접속하는 데 필요한 정보를 담아 Handover Command 메시지를 전송함으로써 target 셀로 핸드오버 할 것을 지시하고(1),
- MME를 통해 target eNB로 eNB Status Transfer 메시지를 전송하여 UE와 어느 상?하향 패킷부터 송?수신해야 하는지 알리고(2),
- S-GW로부터 수신되는 DL 패킷을 S-GW를 경유하여 target eNB와 설정된 indirect 터널을 통해 target eNB로 전송한다(3).
- UE는 source eNB와 접속을 끊고 target eNB로 접속한다(4).
- Target eNB는 UE가 성공적으로 접속하면 즉시 패킷 송수신이 가능해진다(5).
S1 핸드오버 완료 단계 (S1 Handover Completion)
MME는 UE가 target eNB로 핸드오버 할 것을 미리 알고 있으므로, X2 핸드오버와는 달리 target eNB가 핸드오버 실행 후 MME로 경로 변경을 요청하지 않는다. 대신 UE가 target eNB로 접속을 마치면 target eNB는 MME로 Handover Notify 메시지를 보내어 UE가 핸드오버 했음을 알린다.
- Target eNB는 UE가 접속을 마치면, MME로 Handover Notify 메시지를 전송하여 이를 알린다(1).
- MME는 이를 수신하여 S-GW로 S1 베어러 수정을 요청하고, S-GW는 하향 S1 베어러 경로를 target eNB로 변경한다(2).
- S-GW에서 경로를 변경하는 과정은 다음과 같다.
- S-GW는 source eNB로 향하는 하향 S1 베어러로 EM(End Marker) 패킷을 전송한 후 DL 패킷 전송을 중지하고,
- Target eNB로 향하는 하향 S1 베어러를 설정하여 target eNB로 DL 패킷을 전송한다.
- Target eNB에서 UE에게 DL 패킷을 전송하는 과정은 다음과 같다.
- Target eNB는 EM을 수신할 때까지 indirect 경로로 오는 패킷을 UE에게 전송하고,
- EM을 수신한 후에는 새로운 경로로 오는 패킷을 UE에게 전송한다.
- MME는
- Source eNB로 UE Context Release Command 메시지를 전송하여, source eNB에 있는 UE Context와 source eNB와 관련된 S1 자원을 해제하도록 하고(3),
- S-GW로 Delete Indirect Data Forwarding Tunnel Request 메시지를 전송하여 indirect 터널 자원을 해제하도록 한다(4).
S1 핸드오버 후 (After S1 Handover)
사용자는 eNB B(에 있는 serving 셀)에 접속하여 서비스를 받는다.
2.4 S1 핸드오버 전?후 사용자 상태 및 연결 정보
그림 3은 S1 핸드오버 전?중(실행 단계)?후에 사용자/제어 평면에서의 connection 설정과 UE와 MME의 사용자 상태를 나타낸다.
- S1 핸드오버 전
사용자는 EMM-Registered 및 ECM/RRC-Connected 상태에 있고 E-UTRAN 및 EPC에서 할당 받은 자원을 모두 유지하고 있다.
- S1 핸드오버 중
핸드오버 중에도 NAS 레벨의 사용자 상태는 변하지 않고 source eNB와 target eNB 모두 MME와는 S1-MME 인터페이스 상에 S1 시그널링 연결이 설정되고 있고, S-GW와는 S1-U 인터페이스 상에 DL 패킷 전달용 indirect 터널이 설정되어 있다. 그림 3에서 2)는 핸드오버 실행 단계(Handover Execution)에서 핸드오버 단절 시간 구간에 있을 때를 나타낸 것으로, 무선 구간 접속이 없으나 사용자 상태는 연결 상태로 유지된다.
- S1 핸드오버 후
사용자는 EMM-Registered 및 ECM/RRC-Connected 상태를 유지하며, 연결 정보를 보면 사용자 평면에서는 E-RAB(DRB와 S1 베어러) 경로가 변경되고 제어 평면에서는 새로운 RRC 연결이 설정된다.
그림 3. Connections and States before/after S1 Handover
III. S1 핸드오버 절차 (Procedure of S1 Handover)
이제 본격적으로 S1 핸드오버 절차를 단계별로 하나씩 살펴보도록 한다 . 그림 4는 S1 핸드오버 이전과 S1 핸드오버 준비 단계의 절차를 나타낸다.
그림 4. S1 Handover - Handover Preparation (핸드오버 준비 단계)
- 핸드오버 이전 단계
1) [UE - eNB] Measurement 보고 (Measurement Report)
UE에서 measurement event가 triggering된다 . UE는 이웃 셀들의 신호세기를 측정하여 eNB(serving 셀)로 Measurement Report 메시지를 전송한다.
- 핸드오버 준비 단계 (Handover Preparation)
2) [Source eNB] 핸드오버 결정 (Handover Decision)
Source eNB는 UE가 전송한 Measurement Report 메시지에 있는 정보와 자신이 관리하고 있는 Neighbor Cell List 정보에 기반하여 target eNB를 결정한다. Source eNB는 target eNB와 핸드오버용 X2 connection이 가용하지 않은 상태임을 알고 S1 핸드오버를 결정한다.
3) [Source eNB ? MME] MME로 핸드오버 요청
Source eNB는 MME로 Handover Required 메시지를 전송하여 target eNB로의 핸드오버를 요청한다. Handover Required 메시지는 다음과 같은 정보를 포함한다.
Handover Required (Handover Type, Target eNB ID, Source to Target Transparent Container)
- Handover Type: 발생한 핸드오버 종류를 나타냄. 이 경우는 “IntraLTE”임
- Target eNB ID: Target Global eNB ID와 Selected TAI 정보를 포함
- Source to Target Transparent Container: Source 셀에서의 radio 관련 정보를 EPC(MME)를 transparent하게 통과하여 target 셀로 전달하는데 사용됨
4) [MME] Target eNB에게 전달할 Security Context 도출
MME는 target eNB가 AS Security 베이스 키 를 도출할 수 있도록 Security Context로 {NCC, NH}를 구한다. NCC는 NCC 초기값(NCC0=0)을 1 증가시키고, NH는 NH 초기값(NH0)과 KASME로부터 도출한다.
- NCC1 = NCC0 + 1 = 1
- NH1 = KDF(NH0, KASME)
5) [Target eNB ? MME] Target eNB에게 핸드오버 요청
MME는 target eNB로 Handover Request 메시지를 전송하여 source eNB를 대신하여 핸드오버를 요청한다. Handover Request 메시지는 다음과 같은 정보를 포함한다.
Handover Request (UE-AMBR, E-RAB to be setup (E-RAB ID, QCI, ARP, S1 S-GW TEID), Source to Target Transparent Container, UE Security Capability, Security Context)
- UE-AMBR: HSS에 의해 제공되나 MME가 갱신할 수 있으며, eNB에 설정되어 non-GBR 베어러들의 aggregated MBR 값을 제어하는데 사용됨
- E-RAB to be setup: Source eNB에 설정되어 있는 UE의 E-RAB 정보로, E-RAB ID, QoS 파라미터, 상향 S1 베어러 정보[A]를 포함
- Source to Target Transparent Container: Source 셀에서의 radio 관련 정보(UE radio access capability, RRC configuration Info 등)를 EPC(MME)를 transparent하게 통과하여 target 셀로 전달하는데 사용됨
- UE Security Capability: UE가 지원하는 security 알고리즘 (암호화 및 무결성 알고리즘)
- Security Context: Target eNB가 AS Security 베이스 키인 KeNB*를 도출하는데 사용될 {NCC, NH}를 포함
6) [Target eNB] S1 핸드오버 준비
Target eNB는 Handover Request 메시지를 수신하여 곧 핸드오버 할 UE에게 끊김없는 서비스를 제공하기 위한 준비 작업에 착수한다.
(i) New S1 베어러 자원 할당: E-RAB to be setup 정보를 기반으로 source eNB가 제공하던 QoS를 target eNB에서도 제공가능한지 확인한다. 제공 가능한 경우 source eNB에 설정되어 있는 S1 S-GW TEID[A]를 이용하여 S-GW로 상향 S1 베어러를 설정하고, S1 Target eNB TEID[B]를 할당하여 핸드오버 후 사용할 하향 S1 베어러를 준비한다.
(ii) Indirect 터널 자원 할당: UE가 핸드오버를 실행하는 동안(즉, source eNB와 접속을 끊고 target eNB로 접속하는 동안) source eNB로 도착하는 DL 패킷을 S-GW를 거쳐 target eNB로 전달하기 위한 indirect 터널이 만들어져야 한다. Target eNB는 핸드오버용 S1 Target eNB TEID[C]를 할당하여, 이 후 S-GW가 S-GW와 target eNB 간 indirect 터널을 만들 수 있도록 한다.
(iii) UE가 사용할 무선 구간 자원 할당: E-RAB QoS 정보를 기반으로 UE가 무선 구간에서 사용할 RRC 자원을 예약하고(DRB ID 할당 등) C-RNTI 값을 할당한다.
(iv) KeNB* 도출: MME로부터 수신한 핸드오버용 Security Context 정보(NCC1, NH1) 를 이용하여 KeNB*를 도출하고, AS Security 키들(KRRCint, KRRCenc, KUPenc)을 구한다. 잠시 후 UE가 target eNB로 접속하면 UE와 target eNB는 이들 키 값을 이용하여 무선 구간에서 안전하게 통신할 수 있다. 그림 5는 KeNB* 도출 과정을 나타낸다. KeNB* 는 NH1, target 셀의 PCI(Physical Cell ID), target 셀 주파수(EARFCN-DL; E-UTRA Absolute Radio Frequency Channel Number-Downlink)로부터 구해진다.
그림 5. Derivation of KeNB* (S1 Handover case)
7) [Target eNB ? MME] 핸드오버 준비가 되었음을 알림
Target eNB는 S1 핸드오버를 위해 6)에서 준비한 자원들에 대한 정보를 Handover Request Ack 메시지를 통해 MME로 전달한다. Handover Request Ack 메시지는 다음과 같은 정보를 포함한다.
Handover Request Ack (E-RAB Admitted(E-RAB ID, S1 Target eNB TEID, DL S1 Target eNB TEID), Handover Command (Target C-RNTI, Target DRB ID, AS Security Algorithm of Target eNB))
- E-RAB Admitted :
- E-RAB ID: Target eNB에서 할당한 E-RAB ID
- S1 Target eNB TEID: S-GW가 target eNB로 S1 베어러를 설정할 수 있도록 target eNB가 할당한 하향 S1 TEID[B]
- DL S1 Target eNB TEID: DL 패킷 전달을 위한 핸드오버용 indirect 터널 생성을 위해 target eNB가 할당한 하향 S1 TEID[C]
- Handover Command: Target eNB에서 source eNB로 전달되는 Transparent Container로 UE가 target 셀로 접속하는데 필요한 target 셀의 radio 정보를 포함
- Target C-RNTI: Target 셀에서 UE를 식별하기 위해 UE에 할당한 C-RNTI
- Target DRB ID: Target eNB가 무선 구간에서 사용자 패킷을 전달하기 위해 설정한 DRB의 ID
- AS Security Algorithm of Target eNB: Target eNB가 선택한 AS Security 알고리즘
8) [MME ? S-GW] DL 패킷 전달용 S1 베어러를 설정할 것을 요청
MME는 S-GW로 Create Indirect Data Forwarding Tunnel Request 메시지를 전송하여, UE가 핸드오버 하는 동안 DL 패킷을 전달하기 위한 indirect 터널을 생성할 것을 요청한다. Create Indirect Data Forwarding Tunnel Request 메시지는 target eNB가 할당한 indirect 터널용 GTP TEID(S1 Target eNB TEID[C])를 포함한다.
9) [MME ? S-GW] DL 패킷 전달용 S1 베어러를 설정했음을 알림
S-GW는 Create Indirect Data Forwarding Tunnel Request 메시지를 수신하여 target eNB로 indirect 터널을 생성한다. 그리고 source eNB가 S-GW로 indirect 터널을 생성할 수 있도록 S1 S-GW TEID[D]를 할당하여 Create Indirect Data Forwarding Tunnel Response 메시지에 포함하여 MME로 전송한다.
10) [Source eNB ? MME] Target eNB가 핸드오버 준비를 마쳤음을 알림
MME는 9)에서 S-GW로부터 수신한 S1 S-GW TEID[D]와 7)에서 target eNB로부터 수신한 Handover Command 정보를 Handover Command 메시지에 포함하여 source eNB로 전송한다.
Source eNB는 Handover Command 메시지를 수신하여 target eNB와 EPC가 UE 핸드오버를 위한 준비가 완료되었음을 확인한다.
- 핸드오버 실행 단계 (Handover Execution)
그림 6은 S1 핸드오버 실행 단계의 절차를 나타낸다.
그림 6. S1 Handover - Handover Execution (핸드오버 실행 단계)
11) [UE ? Source eNB] UE에게 핸드오버를 명령함
Target eNB와 핸드오버 준비를 마친 source eNB는 UE에게 Handover Command 메시지를 전송함으로써 핸드오버를 명령한다. Handover Command 메시지는 RRC Connection Reconfiguration 메시지를 통하여 UE에게 전달된다.
12) [UE] 핸드오버 실행 시작
UE는 source eNB로부터 Handover Command 메시지를 수신하여 target 셀에서 사용할 C-RNTI와 DRB ID를 알고 source eNB로부터 detach 한다. 이제부터 UE는 source eNB와 패킷 송/수신이 중단되고, 핸드오버 단절 시간(handover interruption time) 구간이 시작된다.
13) [UE] AS Security Setup
UE는 target eNB 무선 구간에서 사용하게 될 AS Security 키들을 구한다. 먼저 AS Security 베이스 키인 KeNB*를 구하고(키 도출 함수는 그림 5와 같음), target eNB가 선택한 AS Security 알고리즘을 이용하여 AS Security 키들(KRRCint, KRRCenc, KUPenc)을 구한다.
14) ~ 15) [Source eNB ? MME, MME ? target eNB] UE와 송수신할 패킷 Number를 알림
Source eNB는 DL Count, UL Count를 포함하는 eNB Status Transfer 메시지를 MME를 통해 target eNB에게 전송함으로써 target eNB가 UE와 어느 패킷부터 송/수신해야 하는지 알린다. 여기서 Count는 PDCP PDU의 Count 값으로 HFN(Hyper Frame Number)과 PDCP SN(Sequence Number)으로부터 구성되는 32 bit의 값을 나타낸다. eNB Status Transfer 메시지 구성은 다음과 같다.
eNB Status Transfer (DL Count, UL Count)
- DL Count: UE로 전송할 첫 번째 패킷의 Count
- UL Count: UE로부터 수신할 첫 번째 패킷의 Count
Target eNB로 eNB Status Transfer 메시지를 전송하고 나면, source eNB는 S-GW로부터 수신되는 DL 패킷을 S1 인터페이스 상에 설정된 indiredt 터널을 이용하여 target eNB로 전송하기 시작한다. Target eNB는 source eNB가 전달하는 패킷을 버퍼링하면서 UE가 target eNB로 접속하기를 기다린다.
16) ~ 18) [UE, Target eNB] UE가 Target eNB로 접속
16) UE는 target eNB의 동기 신호를 검출하여 target eNB로 동기를 맞추고 non-contention 기반 random access를 수행하고, 17) Target eNB는 UE에게 timing alignment 정보와 UL Grant를 전송하고, 18) UE는 target eNB로 Handover Confirm 메시지를 RRC Connection Reconfiguration Complete 메시지를 통하여 전송한다.
이제 UE는 target eNB와 패킷 송/수신을 시작할 수 있고, 핸드오버 단절 시간 구간이 종료된다.
19) [Target eNB] UE에게 DL 패킷을 전송하기 시작
UE가 target eNB로 성공적으로 접속했으므로, target eNB는 버퍼링하고 있는 DL 패킷을 UE에게 전송하기 시작한다. UE에게 전달되는 DL 패킷의 전달 경로는 다음과 같다(그림 6, [A] 참조).
S5 베어러(P-GW to S-GW) ? S1 베어러(S-GW to source eNB) ? S1 베어러(source eNB to S-GW) ? S1 베어러(S-GW to target eNB) ? DRB(target eNB to UE)
또한 UE가 패킷을 송신하는 경우에 target eNB는 이를 수신하여 패킷 순서가 맞는지 확인하고, S-GW로 전달하기 시작한다. UE가 전송한 UL 패킷의 전달 경로는 다음과 같다(그림 6, [B] 참조).
DRB(UE to target eNB) ? S1 베어러(target eNB to S-GW) ? S5 베어러(S-GW to P-GW)
20) [UE ~ Target eNB] 무선 구간에서의 안전한 통신
UE와 target eNB 간 무선 구간에서 전송되는 RRC 시그널링 메시지 및 사용자 패킷은 AS Security 키들을 통하여 안전하게 전송된다. RRC 시그널링 메시지는 무결성 보호되고 암호화되어 전송되고, 사용자 패킷은 암호화되어 전송된다.
? 핸드오버 완료 단계 (Handover Completion)
그림 7은 S1 핸드오버 완료 단계의 절차를 나타낸다.
그림 7. S1 Handover - Handover Completion (핸드오버 완료 단계)
21) [Target eNB ? MME] EPS 베어러 (S1 베어러) 경로 변경 요청
UE가 성공적으로 접속하면 target eNB는 EPC(MME)로 자신의 ECGI와 TAI를 포함하는 Handover Notify 메시지를 전송하여, UE가 S1 핸드오버를 성공적으로 마쳤음을 알린다.
22) ~ 27) EPS 베어러 수정
MME는 S-GW에게 Modify Bearer Request 메시지를 전송하여 target eNB가 할당한 S1 Target eNB TEID[B]를 전달하면서 베어러 경로 수정을 요청한다. S-GW는 이를 수신하여 target eNB로 하향 S1 베어러를 설정한다. 만약 UE 초기 접속 과정에서 UE가 접속한 셀이 변경되면 보고하도록 설정되었으면, P-GW로 Modify Bearer Request 메시지를 전송하고 P-GW는 EPS 세션 수정 절차를 통하여 PCRF로 UE가 접속한 셀이 변경되었음을 보고한다.
28) ~ 29) [S-GW] EPS 베어러(S1 베어러) 경로 변경
S-GW는 DL 패킷 전송 경로를 source eNB에서 target eNB로 변경한다. 이를 위한 절차로, 먼저 source eNB와 설정되어 있는 S1 베어러로 마지막 패킷임을 나타내는 EM(End Marker)를 전송하고, 이 후 target eNB와 설정한 S1 베어러를 통해 DL 패킷을 전송한다.
30) [Target eNB] 패킷 Re-ordering
이제 target eNB는 indirect 터널을 통해 source eNB로부터 전달되어 오는 DL 패킷과 S-GW가 새로운경로로 전송하는 DL 패킷이 모두 수신될 수 있으므로, DL 패킷을 사용자에게 순서대로 전달할 수 있어야 한다. Target eNB는 먼저 indirect 터널을 통해 수신되는 DL 패킷을 사용자에게 전송하면서 EM이 수신되면 이전 경로로 전송된 마지막 패킷임을 인지하고 이 후 새로운 경로를 통해 수신되는 DL 패킷을 사용자에게 전송한다.
31) ~ 32) [Source eNB ?? MME] Source eNB에서 UE Context와 S1 자원을 해제
MME는 source eNB로 UE Context Release Command 메시지를 전송하여, source eNB가 S1 인터페이스 상에 갖고 있는 자원(S1 베어러 및 indirect 터널)과 UE Context를 해제해도 됨을 알린다.
Source eNB는 UE Context와 S1 자원을 해제하고 MME로 UE Context Release Complete 메시지를 전송하여 이를 알린다.
33) ~ 34) [MME ?? S-GW] S-GW에서 Indirect 터널을 해제
MME는 S-GW로 Delete Indirect Data Forwarding Tunnel Request 메시지를 전송하여 S-GW가 indirect 터널을 해제하도록 한다.
S-GW는 indirect 터널을 해제하고 MME로 Delete Indirect Data Forwarding Tunnel Response 메시지를 전송하여 이를 알린다.
IV. EPS Entity Information: Before/After S1 Handover
Intra-LTE 환경에서 S1 핸드오버 전?후에 EPS 엔터티에 있는 정보는 X2 핸드오버의 경우와 동일하므로, 이전 기술문서[1]를 참고하도록 한다(EPS 엔터티 정보와 관련하여 아래사항을 참고 바람).
- 핸드오버 관련 AS Security Context 정보는 X2/S1 핸드오버에 따라 다를 수 있으나, 핸드오버 security는 본 문서 범위 밖으로 여기서는 구체적으로 나타내지 않았음.
- 핸드오버 절차 도중 EPS 엔터티에 있는 정보는 X2/S1 핸드오버에 따라 다른 부분이 있으나, 핸드오버 중 생성되었다 삭제되는 정보는 나타내지 않았음.
V. 마치는 글
핸드오버 전?후로 MME와 S-GW가 변하지 않는 intra-LTE 환경에서 S1 핸드오버 절차를 살펴보았다. S1 핸드오버에서는 X2 핸드오버와는 달리, EPC는 UE가 핸드오버하기 전부터 핸드오버 할 것임을 알고 있다. 따라서 핸드오버 준비 단계부터 EPC가 개입하여 source eNB, target eNB와 협력하여 핸드오버를 수행하고, 핸드오버 단절 시간(handover interruption time) 동안에는 source eNB로 전달되는 DL 패킷을 S-GW를 통한 indirect 터널을 통하여 target eNB로 전달함으로써 패킷 손실을 방지함을 보았다.
EMM Case 6에서는 세 편에 걸쳐 intra-LTE 환경에서 LTE 핸드오버에 대하여 살펴보았다. 이어서 다음 문서에서는 휴지 상태에서 어떤 셀에 camping하고 있는 사용자가 이동하여 다른 셀에 camping할 때 발생하는 “셀 재선택(Cell Reselection)” 절차에 대해 설명한다(EMM Case 7과 EMM Case 9에 해당[6]).
참고문헌
[1] 넷매니아즈 기술문서, “LTE EMM Procedure: 6. Handover without TAU (2편) ? X2 Handover”, July 2012, https://www.netmanias.com/ko/?m=view&id=techdocs&no=5542
[2] 3GPP TS 36.413, “Evolved Universal Terrestrial Radio Access Network (E-UTRAN); S1 Application Protocol (S1AP)”
[3] 넷매니아즈 기술문서, “LTE EMM Procedure: 6. Handover without TAU (1편) ? Overview of Handover”, June 2012, https://www.netmanias.com/ko/?m=view&id=techdocs&no=5523
[4] 3GPP TS 36.331, “Evolved Universal Terrestrial Radio Access (E-UTRA); Radio Resource Control (RRC); Protocol Specification”
[5] 넷매니아즈 기술문서, “LTE Security II”, June 2011, https://www.netmanias.com/ko/?m=view&id=techdocs&no=5222
[6] 넷매니아즈 기술문서, “사용자 경험에 기반한 EMM 시나리오와 11가지 EMM Case들”,
September 2011, https://www.netmanias.com/ko/?m=view&id=techdocs&no=5303
[7] NMC 컨설팅 내부 리포트, “E2E LTE Network Design”, August 2010.
문서에서 사용하신 'intra-LTE' 라는 용어에 대해 "Source eNB와 target eNB는 같은 MME/S-GW에 연결되어 있음"이라고 정의를 해주셨는데요, 이 용어가 본문의
III. S1 핸드오버 절차 (Procedure of S1 Handover)
핸드오버 준비 단계 (Handover Preparation)에 있는 Handover Type "IntraLTE"와 혼용될 우려가 있어보입니다. Source eNB는 핸드오버 요청 시점에 MME/S-GW의 relocation 여부를 알지 못하며, 단지 E-UTRAN의 eNB로 handover 하기를 희망한다는 의도로 이 파라메터를 사용합니다. 그래서 규격에서도 Intra-LTE라는 용어대신 번거롭게 without MME and S-GW relocation 등의 표현을 사용하지 않나 생각됩니다.
그리고 좋은 코멘트도 감사드리구요.
We have a plan to translate all technical documents to English. But we are afraid it will take some time. --;;
As the first step, we are uploading simplified ppt files in English.
We will try to upload the remaining documents as soon as possible.
과제 진행으로 문서작성할 시간이 잘 안 나네요. 외국회원들은 영문버젼 빨리 올리라 하고 --;;;
가능한 빨리 재개하도록 노력하겠습니다.
주말 잘 보내세요~
Where can I find the 'simplified ppt files in English' ?
It's going to be uploaded next week.
Please wait some more..
Thanks for posting the english version. Looking forward to the english version of the other LTE scenarios.
Best regards.
보면 볼수록 좋은 문서라는 생각이 듭니다.