Project

General

Profile

Feature #5759 » multi_rat_notes.txt

dexter, 05/17/2023 12:21 PM

 
1
Interfaces
2
==========
3

    
4
See also: LTE-Multi-RAT 2.1.3
5

    
6
Rel.7 SGSN:
7
      Gn: SGSN<->PDN-GW (GTPv1C, 3gpp ts 29.060)
8
      	  -> 3gpp ts 3gpp TS 29.060, section 7.5.14 RAN Information Management Messages (RIM)
9
	     Procedures: 3gpp TS 23.060, section 8.1.5, Messages: 3gpp TS 48.018
10
      Gn: SGSN<->MME
11
      Gr: SGSN<->HSS/HLR
12

    
13
Rel.8 SGSN:
14
      S4: SGSN<->SGW (GTPv2-C)
15
      S3: SGSN<->MME
16
      S6d: SGSN<->HSS/HLR (Diameter)
17

    
18
Direct tunneling (3G)
19
      S12: SGW<->RNC (GTPv1-U)
20

    
21
Interfaces using RIM: Gb (BSSGP), Iu (RANAP), Gn (GTPv1), S16 (GTPv2) Routing
22

    
23

    
24
====================
25
=      PS HO       =
26
====================
27

    
28
Cell Reselection from GRPS (Packet transfer mode or packet_idle) to E-UTRA (RRC idle)
29
Cell Reselection from E-UTRA (any state) to GERAN (packet_idle)
30
 ==> Fastest, but most complex
31

    
32

    
33
====================
34
=    CCO/NACC      =
35
====================
36

    
37
CCO + NACC from E-UTRAN (connected/DRX) to GERAN (packet_idle)
38
CCO + NACC rom GERAN (GPRS packet transfer) to E-UTRAN (RRC idle)
39
 ==> Medium complexity, can work without intervention by the network.
40
     UEs request cell info via RIM and perform the cell change based on that info.
41

    
42
== System information ==
43
- CCN (Cell Change Notification) must be enabled in SI (UTRAN/3G:PSI3g EUTRAN:SI2q)
44
  osmo-pcu already enables CCN in SI13
45
  
46
== Messages (GERAN) ==
47
RAN: PACKET_MEASUREMENT_ORDER
48
RAN: PACKET_CELL_CHANGE_ORDER
49
RAN: CHELL_CHANGE_CONTINUE
50
RAN: PS_HANDOVER_COMMAND
51
RAN: PACKET_NEIGHBOUR_CELL_DATA
52
MS: PACKET_CELL_CHANGE_NOTIFICATION
53

    
54
== Steps (GPRS) ==
55
(UE makes sure that CCN (Cell Change Notification) is enabled in SI (UTRAN/3G:PSI3g EUTRAN:SI2q)
56

    
57
- UE wants to change to a different cell on a different RAT, but does not have the system information to perform the
58
  cell change yet.
59
- UE sends PACKET_CELL_CHANGE_NOTIFICATION to network to propose a cell (can be one or more)
60
- Network sends PACKET_NEIGHBOUR_CELL_DATA back (multiple messages)
61
- Network sends PACKET_CELL_CHANGE_CONTINUE, UE changes cell autonomously
62
- (Network may also respond with PACKET_CELL_CHANGE_ORDER (CCO) or a PS_HANDOVER_COMMAND)
63

    
64
  MS                                       PCU                               open5gs
65
  |                                         |                                   |
66
  |----PACKET_CELL_CHANGE_NOTIFICATION----->|                                   |
67
  |                                      +-----------------------------------------+
68
  |<------PACKET_NEIGHBOUR_CELL_DATA-----|                                         |
69
  |<------PACKET_NEIGHBOUR_CELL_DATA-----|       RIM RAN INFORMATION REQUEST       |
70
  |<------PACKET_NEIGHBOUR_CELL_DATA-----|                                         |
71
  |<------PACKET_NEIGHBOUR_CELL_DATA-----|                                         |
72
  |                                      +-----------------------------------------+
73
  |                                         |                                   |
74
  |<------PACKET_CELL_CHANGE_CONTINUE-------|                                   |
75
  |                                         |                                   |
76
  
77
== Interfaces ==
78
Gb/BSSGP (2g/GPRS)
79
Iu/RANAP (3g)
80
Gn/GTPv1/RIM (SGSN<==>MME)
81
S16/GTPv2/RIM (rel. 8 only, interconnects multiple SGSN)
82

    
83
== Specs ==
84
3gpp TS 44.060 (GPRS/RLCMAC), section 8.8 Network Assisted Cell Change procedures
85
3gpp TS 48.018 (BSSGP), section 8c Signalling procedures between RIM SAPs
86
3gpp TS 25.413 (RANAP), section 9.2.3.30-9.2.3.32 (message descriptions)
87
3gpp TS 29.060 (GTP-C), section 7.5.14, RAN Information Management Messages (RIM)
88
                        section 7.7.43, RAN Transparent Container
89
3gpp TS 23.060, section 8.1.5 RAN Information Management (RIM) procedures (Addressing, Routing, Relaying)
90

    
91
== Open5gs ==
92
grep for RIM:
93
  lib/gtp/v1/message.c: RIM related message definitions are present.
94
  lib/asn1c/: NGAP, S1AP, A lot of asn1c generated code.
95
  lib/gtp/v1/support/cache/tlv-msg-70.py
96
  lib/gtp/v1/support/cache/tlv-type-list.py
97
  lib/ngap/ogs-ngap.h: includes some of the header files for the asn1c RIM message encoder/decoder 
98
  lib/s1ap/ogs-s1ap.h: includes some of the header files for the asn1c RIM message encoder/decoder
99
  lib/sbi/openapi/model/ngap_ie_type.c: ngap_ie_typeArray[] with RIM stuff
100
  lib/sbi/openapi/model/ngap_ie_type.h: enum with RIM stuff
101
  ==> Message definitions present, but no code that makes use of them.
102

    
103
== Open Questions ==
104
  - ttcn3-hnbgw-test has no NACC tests. Does osmo-hnbgw have any RIM support? Is this in scope as well?
105
  - osmo-sgsn: We apparantly support Gn towards MME, but what about the traffic?
106
  - osmo-sgsn: is RIM routing properly tested?
107

    
108
== Milestones ==
109
  - osmo-pcu: TTCN3 testsuite tests inter RAT inbound/outbound NACC and osmo-pcu behaves as expected
110
    In this milestone we toughen osmo-pcu so that it will fully support 3G/4G NACC. This is our first step
111
    towards better interoperability.
112
       ToDo: * Extend osmo-pcu and related TTCN3 testsuite so that 3G/4G PacketCellChangeNotification is
113
               is handled / tested properly
114
               - Osmo-pcu does not understand 3G/4G PacketCellChangeNotification, see:
115
                 nacc_fsm.c:fill_neigh_key_from_bts_pkt_cell_chg_not()
116
               - TTCN3 libraries also do not model 3G/4G PacketCellChangeNotification, see: 
117
                 RLCMAC_CSN1_Types.ttcn:PacketCellChangeNotification
118
             * Extend osmo-pcu TTCN3 testsuite so that inbound NACC is tested
119
               - osmo-pcu should support inbound NACC requests, but the TTCN3 tests do cover this
120

    
121
  - osmo-sgsn: Gn interface switching between GGSN and MME
122
    This is an optional milestone since the MME can carry out all functions of a classic GGSN.
123
    When implemented, all non LTE capable UEs would get their IP packet anchor in the classic GGSN,
124
    all others would get the IP packet anchor in the EPC (evolved packet core).
125

    
126
  - osmo-hnbgw: TTCN3 testsuite tests DirectInformationTransfer (RIM) and osmo-hnbgw behaves as expected
127
    Similar to osmo-pcu we toughen osmo-hnbgw so that it will fully support 3G/4G NACC.
128
       ToDo: * In hnbgw_ranap.c:ranap_rx_initiating_msg we can see that messages with procedure code
129
       	       DirectInformationTransfer are dropped. Those messages, which come from the HNB, will contain
130
	       the RIM Ran Information Requests. (DirectInformationTransfer->InterSystemInformationTransferType->
131
	       rIM-Transfer, see also 3GPP TS 25.413, section 9.1.54) Also in hnbgw_cn.c:cn_ranap_rx_initiating_msg()
132
	       we do not know what to do with a DirectInformationTransfer. All this seems to be more or less just
133
	       about transparently forwarding those messages to the CN.
134
	     * Extend osmo-hnbgw TTCN3 testsuite so that it verifes that DirectInformationTransfer works.
135

    
136
  - osmo-sgsn: OsmoSGSN has a TTCN3 test that tests a RAN information Request with a GERAN cell TC_bssgp_rim_single_report.
137
    This should be/is extended so that also UTRAN and EUTRAN cells are queried Also we need to add tests that check if the
138
    reverse direction actually works (MME asks via Gn interface for GERAN cell info).
139
       ToDo: * Extend TTCN3 testsuite so that it tests the GERAN originated RAN information Request with a 4G target
140
       	       cell. (Also add a test that tests the same with a 3G cell, the request might have to be routed through
141
	       RANAP, so this might require the completion of the RANAP part first.) In sgsn_rim.c:sgsn_rim_rx_from_gb we
142
	       see that we should be able to query GERAN and even EUTRAN cells. But apparantly we lack support for EUTRAN
143
	       cells.
144
             * In osmo-iuh.git, iu_client.c:cn_ranap_handle_co we can see that no DirectInformationTransfer (Not to be
145
               confused with DirectTransfer) is supported. Also the code that uses the iu_client in osmo-sgsn has no
146
	       knowlegde about DirectInformationTransfer, so RIM support for 3G/RANAP is missing and needs to be
147
	       implemented.
148

    
149
   - open5gs: A TTCN3 testsuite that tests the RIM capabilities exists and open5gs is extended so that RIM containers are routed
150
              between S1/ENBs and Gn/GTP.
151
       ToDo: * As it seems open5gs has no RIM support. The message definitions are present but no procedures are
152
       	       implemented. This means we have to extend open5gs with RIM capabilities first. We also need a testsuite
153
	       to do the implementation, so adding RIM support and developing the testsuite will have to be done in
154
	       parallel.
155

    
156

    
157
====================
158
=       CR         =
159
====================
160
    
161
Cell Reselection from GRPS (Packet transfer mode or packet_idle) to E-UTRA (RRC idle)
162
Cell Reselection from E-UTRA (any state) to GERAN (packet_idle)
163
 ==> Slowest method, UEs search for new cell as soon as they lose signal.
164

    
165
== Steps ==
166
- UE looses signal
167
- State change: RRC_CONNECTED / GSM_CONNECTED => RRC_IDLE / PACKET_IDLE
168
- Cell Reselection
169
- Connection establishment on selected cell
170

    
171
== Conclusion ==
172
- This method is the simplest possible but also the most inefficient.
173
- Simple because no communication betwen E-UTRAN and GERAN is required.
174
- Already works with Osmocom and open5gs.
175

    
(1-1/2)
Add picture from clipboard (Maximum size: 48.8 MB)