OsmoMGW » History » Version 26
dexter, 08/10/2022 12:11 PM
1 | 1 | neels | h1. OsmoMGW |
---|---|---|---|
2 | |||
3 | 3 | laforge | OsmoMGW, the Osmocom Media Gateway, is a Media Gateway for handling user plane (voice) traffic in cellular networks. |
4 | 1 | neels | |
5 | 12 | laforge | OsmoMGW supports the IETF "MGCP":https://tools.ietf.org/html/rfc3435 (Media Gateway Control Protocol) for control from Call Agents, such as those present in [[OsmoBSC:]] and [[OsmoMSC:]]. |
6 | 3 | laforge | |
7 | 24 | dexter | At the moment (August 2022), OsmoMGW implements RTP proxy / RTP bridge type endpoints, to each of which two RTP connections can be established. It also implements RTP / E1 endpoints that allow bridging RTP voice streams to bit synchronous E1 lines. Since each codec uses a specific TRAU format, the codec support is currently limited to GSM-FR and GSM-EFR (16k I.460 subslot). |
8 | 3 | laforge | |
9 | We are planning to add endpoint types for |
||
10 | * classic E1/T1 timeslots (64kBps alaw/ulaw) |
||
11 | * announcement/playout end-points |
||
12 | * conference endpoints |
||
13 | |||
14 | OsmoMGW is the generalized version of an earlier much more special-purpsoe implementation called osmo-bsc_mgcp. |
||
15 | |||
16 | h2. Situation in a typical Osmocom cellular network |
||
17 | |||
18 | 20 | dexter | h3. Use by [[OsmoBSC:]] with [[OsmoBTS:]] |
19 | 3 | laforge | |
20 | {{graphviz_link() |
||
21 | digraph G { |
||
22 | rankdir = LR; |
||
23 | OsmoBTS -> OsmoBSC [label="Abis/IP"]; |
||
24 | 19 | dexter | OsmoBSC -> "core network" [label="3GPP AoIP"]; |
25 | 3 | laforge | OsmoBSC -> OsmoMGW [label="MGCP"]; |
26 | 1 | neels | OsmoBTS -> OsmoMGW [label="RTP",dir=both]; |
27 | 20 | dexter | OsmoMGW -> "core network" [label="RTP",dir=both]; |
28 | {rank=same OsmoBSC OsmoMGW} |
||
29 | OsmoMGW [color=red]; |
||
30 | } |
||
31 | }} |
||
32 | |||
33 | h3. Use by [[OsmoBSC:]] with E1 BTS |
||
34 | |||
35 | {{graphviz_link() |
||
36 | digraph G { |
||
37 | rankdir = LR; |
||
38 | "E1 BTS" -> OsmoBSC [label="Abis/E1"]; |
||
39 | OsmoBSC -> "core network" [label="3GPP AoIP"]; |
||
40 | OsmoBSC -> OsmoMGW [label="MGCP"]; |
||
41 | "E1 BTS" -> OsmoMGW [label="TRAU/E1",dir=both]; |
||
42 | 19 | dexter | OsmoMGW -> "core network" [label="RTP",dir=both]; |
43 | 3 | laforge | {rank=same OsmoBSC OsmoMGW} |
44 | OsmoMGW [color=red]; |
||
45 | } |
||
46 | }} |
||
47 | |||
48 | 25 | dexter | h3. Use by [[OsmoHNBGW:]] |
49 | |||
50 | {{graphviz_link() |
||
51 | digraph G { |
||
52 | rankdir = LR; |
||
53 | hNodeB -> OsmoHNBGW [label="Iuh"]; |
||
54 | OsmoHNBGW -> "core network" [label="IuCS"]; |
||
55 | OsmoHNBGW -> OsmoMGW [label="MGCP"]; |
||
56 | hNodeB -> OsmoMGW [label="IuUP/RTP",dir=both]; |
||
57 | OsmoMGW -> "core network" [label="RTP",dir=both]; |
||
58 | {rank=same OsmoHNBGW OsmoMGW} |
||
59 | OsmoMGW [color=red]; |
||
60 | } |
||
61 | }} |
||
62 | |||
63 | 6 | fixeria | h3. Use by [[OsmoMSC:]] |
64 | 3 | laforge | |
65 | {{graphviz_link() |
||
66 | digraph G { |
||
67 | rankdir = LR; |
||
68 | "2G RAN" -> OsmoMSC [label="3GPP AoIP"]; |
||
69 | 22 | dexter | OsmoMSC -> OsmoMGW [label="MGCP"]; |
70 | "2G RAN" -> OsmoMGW [label="RTP",dir=both]; |
||
71 | OsmoMSC -> OsmoSIP [label="MNCC"]; |
||
72 | OsmoSIP -> PBX [label="SIP Trunk"]; |
||
73 | OsmoMGW -> PBX [label="RTP",dir=both]; |
||
74 | {rank=same OsmoMSC OsmoMGW} |
||
75 | OsmoSIP [label="osmo-sip-connector"]; |
||
76 | OsmoMGW [color=red]; |
||
77 | "3G RAN" -> OsmoMGW [label="RTP",dir=both]; |
||
78 | "3G RAN" -> OsmoMSC [label="IuCS"]; |
||
79 | } |
||
80 | }} |
||
81 | |||
82 | 10 | laforge | {{include(cellular-infrastructure:MacroBinaryPackages)}} |
83 | |||
84 | 2 | neels | h2. User Manuals |
85 | 1 | neels | |
86 | 13 | daniel | * osmo-mgw user manual: http://ftp.osmocom.org/docs/latest/osmomgw-usermanual.pdf |
87 | 7 | laforge | * osmo-mgw VTY reference: http://ftp.osmocom.org/docs/latest/osmomgw-vty-reference.pdf |
88 | 3 | laforge | |
89 | 11 | laforge | h2. Source code |
90 | |||
91 | 15 | laforge | The source code is available from @gitea.osmocom.org@ (module @osmo-mgw@). |
92 | 11 | laforge | |
93 | Public read-only access is available via |
||
94 | <pre> |
||
95 | 15 | laforge | git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw |
96 | 11 | laforge | </pre> |
97 | |||
98 | 15 | laforge | You can browse it via gitea: https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw |
99 | 11 | laforge | |
100 | Contributions are welcome via [[cellular-infrastructure:Gerrit]]. |
||
101 | |||
102 | 8 | laforge | h2. Test Suite |
103 | |||
104 | We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]] |
||
105 | 15 | laforge | * source code: https://gitea.osmocom.org/ttcn3/osmo-ttcn3-hacks/src/branch/master/mgw |
106 | 8 | laforge | * results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-mgw-test/ |
107 | |||
108 | 3 | laforge | h2. Contact |
109 | |||
110 | 9 | laforge | * Contact us via the openbsc@ mailing list, see [[cellular-infrastructure:Mailing Lists]]. |
111 | * Contributions are welcome via [[cellular-infrastructure:Gerrit]]. |
||
112 | 15 | laforge | * Git repository browser at https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw |
113 | 14 | laforge | |
114 | {{include(cellular-infrastructure:MacroCommercialSupport)}} |