blob: 6a8f3e38faa76cffc808fecfba1e6ff5ff229798 [file] [log] [blame]
Daniel Willmann27780312018-07-31 18:53:45 +02001[[overview]]
2== Overview
3
4This manual should help you getting started with OsmoMGW. It will cover
5aspects of configuring and running the media gateway.
6
7[[intro_overview]]
8=== About OsmoMGW
9
10OsmoMGW is the Osmocom implementation of a media gateway to handle user
11plane (voice) traffic in cellular networks. It can connect and optionally
12transcode RTP voice streams between different network elements such as BTSs
13and external entities like SIP. It is typically co-located with both OsmoBSC
14and OsmoMSC and controlled by them via MGCP, the Media Gateway Control
15Protocol.
16
17[[fig-bsc]]
18.OsmoMGW used with OsmoBSC
19[graphviz]
20----
21digraph G {
22 rankdir = LR;
23 OsmoBTS -> OsmoBSC [label="Abis/IP"];
24 OsmoBSC -> OsmoMSC [label="3GPP AoIP"];
25 OsmoBSC -> OsmoMGW [label="MGCP"];
26 OsmoBTS -> OsmoMGW [label="RTP",dir=both];
27 OsmoMGW -> OsmoMSC [label="RTP",dir=both];
28 {rank=same OsmoBSC OsmoMGW}
29 OsmoMGW [color=red];
30}
31----
32
33[[fig-msc]]
34.OsmoMGW used with OsmoMSC
35[graphviz]
36----
37digraph G {
38 rankdir = LR;
39 BTS -> BSC [label="Abis"];
40 BSC -> OsmoMSC [label="3GPP AoIP"];
41 OsmoMSC -> OsmoMGW [label="MGCP"];
42 BSC -> OsmoMGW [label="RTP",dir=both];
43 OsmoMSC -> OsmoSIP [label="MNCC"];
44 OsmoSIP -> PBX [label="SIP Trunk"];
45 OsmoMGW -> PBX [label="RTP",dir=both];
46 {rank=same OsmoMSC OsmoMGW}
47 OsmoSIP [label="osmo-sip-connector"];
48 OsmoMGW [color=red];
49
50 hNodeB -> OsmoHNBGW [label="Iuh"];
51 OsmoHNBGW -> OsmoMSC [label="IuCS"];
52 hNodeB -> OsmoMGW [label="RTP",dir=both];
53}
54----
55
56=== Software Components
57
58OsmoMGW contains a variety of different software components, which well
59quickly describe in this section.
60
61==== MGCP Implementation
62
63OsmoMGW brings its own MGCP implementation through which OsmoMGW is
64controlled.
65
66The commands implemented are CRCX, MDCX, DLCX and RSIP. The command AUEP is
67implemented as a stub and will simply respond with OK.
68
69==== RTP implementation
70
71Support for IuUP which is used in 3G cells is quite lacking at the moment.
723G<->3G and 2G<->2G calls should work, but 3G<->2G does not.
73
74==== Audio transcoder
75
76Transcoding is currently not supported in OsmoMGW.
77
78=== Limitations
79
80Osmux is not yet supported in OsmoMGW.
81
82At the moment (July 2018), OsmoMGW only implements RTP proxy / RTP bridge
83type endpoints, to each of which two RTP connections can be established.
84We are planning to add endpoint types for:
85
86- classic E1/T1 timeslots (64kBps alaw/ulaw)
87- classic E1/T1 16k sub-slots with TRAU frames for classic BTS support
88- announcement/playout end-points
89- conference endpoints
90
91=== Additional resources
92
93You can find the OsmoMGW issue tracker and wiki online at
94
95- https://osmocom.org/projects/osmomgw
96- https://osmocom.org/projects/osmomgw/wiki
97
98RFC 3435 for MGCP is located at
99
100- https://tools.ietf.org/html/rfc3435