Project

General

Profile

OsmoMSC » History » Version 14

laforge, 05/11/2018 11:15 AM

1 1 neels
h1. OsmoMSC
2 1 neels
3 4 laforge
OsmoMSC is the Osmocom implementation of a Mobile Switching Center (MSC).
4 4 laforge
5 4 laforge
It implements the following interfaces:
6 4 laforge
* 3GPP AoIP over M3UA or SUA towards BSCs, for example [[OsmoBSC:]], possibly via a STP like [[OsmoSTP:]]
7 9 laforge
* 3GPP IuCS over M3UA or SUA towards RNCs or HNBGWs, for example [[OsmoHNBGW:]], possibly via a STP like [[OsmoSTP:]]
8 10 laforge
* Osmocom [[cellular-infrastructure:GSUP]] towards an HLR such as [[OsmoHLR:]]
9 4 laforge
* SMPP v3.4 for external SMS entities (minimal SMSC is built-in)
10 4 laforge
* MGCP for controlling an external Media Gateway like [[OsmoMGW:]]
11 5 laforge
* MNCC for external call-control handlers, such as [[osmo-sip-connector:]] for SIP trunks
12 4 laforge
* Osmocom VTY interface for configuration + introspection
13 4 laforge
* Osmocom CTRL interface for programmatic access to internal state/configuration
14 4 laforge
15 6 laforge
h2. Position in a typical network
16 6 laforge
17 4 laforge
{{graphviz_link()
18 4 laforge
digraph G {
19 4 laforge
    rankdir = LR;
20 4 laforge
    OsmoBTS -> OsmoBSC [label="Abis/IP"];
21 4 laforge
    OsmoBSC -> OsmoMSC [label="3GPP AoIP"];
22 8 laforge
    hNodeB -> OsmoHNBGW [label="Iuh"];
23 8 laforge
    OsmoHNBGW -> OsmoMSC [label="IuCS"];
24 4 laforge
    OsmoMSC -> OsmoHLR [label="GSUP"];
25 4 laforge
    OsmoMSC -> OsmoSIP [label="MNCC"];
26 4 laforge
    OsmoMSC [color=red];
27 11 laforge
    { rank=same; OsmoMSC; OsmoMGW };
28 11 laforge
    OsmoMSC -> OsmoMGW [label="MGCP"];
29 4 laforge
    OsmoSIP [label="osmo-sip-connector"];
30 8 laforge
    OsmoSIP -> PBX [label="SIP Trunk"];
31 4 laforge
}
32 4 laforge
}}
33 4 laforge
34 4 laforge
h2. History
35 4 laforge
36 4 laforge
OsmoMSC was the result of splitting [[OsmoNITB:]] into three parts during the 2017 NITB-split.  Parts of [[OsmoNITB:]] became [[OsmoBSC:]], other parts became [[OsmoHLR:]], while the mobility management, call control and SMS handling became [[OsmoMSC:]].  At the time of the rewrite, the entire MSC and VLR state machines have been properly re-implemented using "osmo-fsm":http://ftp.osmocom.org/api/latest/libosmocore/core/html/group__fsm.html
37 4 laforge
38 13 laforge
{{include(cellular-infrastructure:MacroBinaryPackages)}}
39 13 laforge
40 7 laforge
h2. Manuals
41 7 laforge
42 7 laforge
* "osmomsc-usermanual.pdf":http://ftp.osmocom.org/docs/latest/osmomsc-usermanual.pdf
43 7 laforge
* "osmomsc-vty-reference.pdf":http://ftp.osmocom.org/docs/latest/osmomsc-vty-reference.pdf
44 13 laforge
45 13 laforge
h2. Source code
46 13 laforge
47 13 laforge
The source code is available from @git.osmocom.org@ (module @osmo-msc@).
48 13 laforge
49 13 laforge
Public read-only access is available via
50 13 laforge
<pre>
51 13 laforge
git clone git://git.osmocom.org/osmo-msc.git
52 13 laforge
</pre>
53 13 laforge
54 13 laforge
You can browse it via cgit:  https://git.osmocom.org/osmo-msc
55 13 laforge
56 13 laforge
Contributions are welcome via [[cellular-infrastructure:Gerrit]].
57 7 laforge
58 12 laforge
h2. Test Suite
59 12 laforge
60 12 laforge
We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]]
61 12 laforge
* source code: http://git.osmocom.org/osmo-ttcn3-hacks/tree/msc
62 12 laforge
* results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-msc-test/
63 12 laforge
64 4 laforge
h2. Contact
65 4 laforge
66 14 laforge
* Contact us via the openbsc@ mailing list, see [[cellular-infastructure:Mailing Lists]].
67 14 laforge
* Contributions are welcome via [[cellular-infrastructure:Gerrit]].
68 4 laforge
* Git repository browser at https://git.osmocom.org/osmo-msc
Add picture from clipboard (Maximum size: 48.8 MB)