Project

General

Profile

Accelerate3g5 -- neels » History » Version 19

neels, 03/04/2017 03:24 AM

1 1 neels
h1. Accelerate3g5 -- neels
2
3
{{>toc}}
4
5
h2. Summary
6
7
Implement Osmocom 3G support integrated with the new libvlr, so that standard USIMs with full UMTS AKA can be used with the 3G OsmoMSC.
8 7 neels
This is actually a prerequisite for the accelerate3g5 contestants to be able to use their USIMs with the nano3G (without going into reprogramming it).
9 1 neels
10 2 neels
h3. Participants
11
12 13 neels
* Neels (email: nhofmeyr@sysmocom.de / jabber: nhofmeyr@im.sysmocom.de )
13 2 neels
14 1 neels
h2. Details
15
16
For various reasons, the previously integrated HLR functionality is currently being split from OsmoNITB, on the "neels/vlr":http://git.osmocom.org/openbsc/log/?h=neels/vlr branch. UMTS AKA using the Milenage algorithm already works for 2G using that branch, but the "sysmocom/iu":http://git.osmocom.org/openbsc/log/?h=neels/vlr branch still lacks this capability.
17
18
Rebase the sysmocom/iu branch onto the neels/vlr branch and resolve all conflicts. Test and verify that 3G works with the sysmoUSIM-SJS1 using Milenage authentication.
19
20
Related issues are: #1595 #1711 #1593
21
22 8 neels
Work-in-progress is kept on the openbsc.git:neels/iu branch.
23
When done, this will become the new sysmocom/iu branch.
24
25 1 neels
h2. Journal
26
27
_2017-02-28_
28
A first @git rebase@ resulted in numerous conflicts. Starting to resolve...
29
30 3 neels
_2017-03-02_
31
Conflicts have been resolved, but of course the result doesn't compile.
32
Fixing all the errors, and will then need to test+debug, and also review all patches in detail.
33
Rate counters and the logging context are at least incomplete, probably more details and corner cases.
34 4 neels
_later_
35
The merged branch compiled. Now the msc_vlr unit tests fail and there are probably still many other errors to resolve.
36 3 neels
37 14 neels
_2017-03-03_
38 15 neels
Errors fixed, all tests pass, including msc_vlr end-to-end tests.
39 14 neels
Next up: actual tests with the nano3G, sysmoUSIMs and Galaxy phones.
40
41 18 neels
_2017-03-04_
42
The VLR needs to be extended to send CommonID and SecurityModeControl messages.
43
SecurityModeControl is also called 'integrity protection' ... but is it the same as the Ciphering Mode on GERAN?
44
If it is not the same, we need new states added to the VLR FSMs.
45
46 19 neels
_2017-03-04_
47
*The rebased branch works!*
48
The "openbsc.git:sysmocom/iu":https://git.osmocom.org/openbsc/log/?h=sysmocom/iu branch now contains the libvlr and is capable of full UMTS authentication using OsmoHLR.
49
50 1 neels
h2. Conclusions
51
52 9 neels
* I thought that GERAN means exactly A-interface and UTRAN means Iu-interface. But there's also GERAN-over-Iu.
53 10 neels
  RAN is the radio technology, so GERAN _does_ mean 2G BTS, but A and Iu are just the interfaces that these can be controlled over.
54 1 neels
  An MSC may employ an Iu interface to talk to both GERAN and UTRAN radio technology infrastructure.
55 10 neels
  See the new enum ran_type: so far OsmoMSC will support RAN_UTRAN_IU. We hope to add RAN_GERAN_A soon. There are no plans in sight to add RAN_GERAN_IU.
56
  The traditional OsmoNITB is BSC and MSC welded together, so it's more like GERAN over Abis.
57 16 neels
  GSM is the traditional name for 2G, GERAN means "GSM EDGE Radio Access Network", so it bascially is GSM + EDGE.
58
  UTRAN is the "Universal Terrestrial Radio Access Network" and basically means 3G, while the U lends itself to assuming it means UMTS, which I guess is not far from the truth.
59
  Wikipedia has nice articles and diagrams on these.
60 5 neels
61 9 neels
* And I thought that UMTS means 3G means UTRAN, but UMTS is "just" the R99 (Release 1999) extension of the protocols.
62 17 neels
  UMTS is used in 3G/UTRAN, yes, but for example UMTS Authentication can be negotiated over 2G networks. I know now because I implemented it for OsmoNITB.
63 9 neels
  As soon as the MSC says it is R99 capable in the SI3 MSCR bit and the MS is operated with a USIM which "replies" that it is R99 capable in the Classmark IEs sent during Location Updating, CM Service Request and Paging requests, both sides can/will authenticate using UMTS mutual authentication -- another prerequisite of course is that the HLR has UMTS authentication keys stored for this USIM.
64 5 neels
65 9 neels
* _todo: have the same UMTS auth over actual UTRAN+Iu_
Add picture from clipboard (Maximum size: 48.8 MB)