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