Accelerate3g5 -- neels » History » Revision 8
Revision 7 (neels, 03/03/2017 12:02 AM) → Revision 8/25 (neels, 03/03/2017 12:05 AM)
h1. Accelerate3g5 -- neels
{{>toc}}
h2. Summary
Implement Osmocom 3G support integrated with the new libvlr, so that standard USIMs with full UMTS AKA can be used with the 3G OsmoMSC.
This is actually a prerequisite for the accelerate3g5 contestants to be able to use their USIMs with the nano3G (without going into reprogramming it).
h3. Participants
* Neels (nhofmeyr@sysmocom.de)
h2. Details
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.
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.
Related issues are: #1595 #1711 #1593
Work-in-progress is kept on the openbsc.git:neels/iu branch.
When done, this will become the new sysmocom/iu branch.
h2. Journal
_2017-02-28_
A first @git rebase@ resulted in numerous conflicts. Starting to resolve...
_2017-03-02_
Conflicts have been resolved, but of course the result doesn't compile.
Fixing all the errors, and will then need to test+debug, and also review all patches in detail.
Rate counters and the logging context are at least incomplete, probably more details and corner cases.
_later_
The merged branch compiled. Now the msc_vlr unit tests fail and there are probably still many other errors to resolve.
h2. Conclusions
I thought that GERAN means exactly A-interface and UTRAN means Iu-interface. But there's also GERAN-over-Iu.
RAN is the radio technology, so GERAN _does_ mean 2G BTS, but A and Iu are just the interfaces that these can be controlled with.
An MSC may employ an Iu interface to talk to both GERAN and UTRAN radio technology infrastructure.
And I thought that UMTS means 3G means UTRAN, but UMTS is "just" the R99 (Release 1999) extension of the protocols.
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.
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.
_todo: have the same UMTS auth over actual UTRAN+Iu_