OsmoMSC » History » Version 15
laforge, 05/11/2018 11:15 AM
1 | 1 | neels | h1. OsmoMSC |
---|---|---|---|
2 | |||
3 | 4 | laforge | OsmoMSC is the Osmocom implementation of a Mobile Switching Center (MSC). |
4 | |||
5 | It implements the following interfaces: |
||
6 | * 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 | * 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 | * Osmocom CTRL interface for programmatic access to internal state/configuration |
||
14 | |||
15 | 6 | laforge | h2. Position in a typical network |
16 | |||
17 | 4 | laforge | {{graphviz_link() |
18 | digraph G { |
||
19 | rankdir = LR; |
||
20 | OsmoBTS -> OsmoBSC [label="Abis/IP"]; |
||
21 | OsmoBSC -> OsmoMSC [label="3GPP AoIP"]; |
||
22 | 8 | laforge | hNodeB -> OsmoHNBGW [label="Iuh"]; |
23 | OsmoHNBGW -> OsmoMSC [label="IuCS"]; |
||
24 | 4 | laforge | OsmoMSC -> OsmoHLR [label="GSUP"]; |
25 | OsmoMSC -> OsmoSIP [label="MNCC"]; |
||
26 | OsmoMSC [color=red]; |
||
27 | 11 | laforge | { rank=same; OsmoMSC; OsmoMGW }; |
28 | OsmoMSC -> OsmoMGW [label="MGCP"]; |
||
29 | 4 | laforge | OsmoSIP [label="osmo-sip-connector"]; |
30 | 8 | laforge | OsmoSIP -> PBX [label="SIP Trunk"]; |
31 | 4 | laforge | } |
32 | }} |
||
33 | |||
34 | h2. History |
||
35 | |||
36 | 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 | |||
38 | 13 | laforge | {{include(cellular-infrastructure:MacroBinaryPackages)}} |
39 | |||
40 | 7 | laforge | h2. Manuals |
41 | |||
42 | * "osmomsc-usermanual.pdf":http://ftp.osmocom.org/docs/latest/osmomsc-usermanual.pdf |
||
43 | * "osmomsc-vty-reference.pdf":http://ftp.osmocom.org/docs/latest/osmomsc-vty-reference.pdf |
||
44 | 13 | laforge | |
45 | h2. Source code |
||
46 | |||
47 | The source code is available from @git.osmocom.org@ (module @osmo-msc@). |
||
48 | |||
49 | Public read-only access is available via |
||
50 | <pre> |
||
51 | git clone git://git.osmocom.org/osmo-msc.git |
||
52 | </pre> |
||
53 | |||
54 | You can browse it via cgit: https://git.osmocom.org/osmo-msc |
||
55 | |||
56 | Contributions are welcome via [[cellular-infrastructure:Gerrit]]. |
||
57 | 7 | laforge | |
58 | 12 | laforge | h2. Test Suite |
59 | |||
60 | We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]] |
||
61 | * source code: http://git.osmocom.org/osmo-ttcn3-hacks/tree/msc |
||
62 | * results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-msc-test/ |
||
63 | |||
64 | 4 | laforge | h2. Contact |
65 | |||
66 | 15 | laforge | * Contact us via the openbsc@ mailing list, see [[cellular-infrastructure: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 |