aboutsummaryrefslogtreecommitdiffstats
path: root/doc/manuals/mgw
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manuals/mgw')
-rw-r--r--doc/manuals/mgw/classic-bsc.msc39
-rw-r--r--doc/manuals/mgw/osmo-bsc-new-mgw-e1.msc50
-rw-r--r--doc/manuals/mgw/osmo-bsc-new-mgw.msc71
-rw-r--r--doc/manuals/mgw/osmo-bsc-old-sccplite.msc64
4 files changed, 224 insertions, 0 deletions
diff --git a/doc/manuals/mgw/classic-bsc.msc b/doc/manuals/mgw/classic-bsc.msc
new file mode 100644
index 000000000..56d288997
--- /dev/null
+++ b/doc/manuals/mgw/classic-bsc.msc
@@ -0,0 +1,39 @@
+# MO Call on a classic E1 Abis BTS with classic E1 A BSC
+# not actually supported by OsmoBSC (nor planned), for refrence only
+msc {
+ hscale=2;
+ ms [label="MS"], bts [label="E1 BTS"], bsc[label="OsmoBSC"], trau[label="TRAU"], m_sc[label="MSC"];
+
+ ms box m_sc [label="We assume a SDCCH is already established"];
+ ...;
+
+ ms -> m_sc [label="DTAP CC SETUP"];
+ ms <- m_sc [label="DTAP CC CALL PROCEEDING"];
+
+ bsc <- m_sc [label="BSSAP ASSGN REQ"];
+ bsc box m_sc [label="E1 TS for PCM specified by CIC"];
+ bts <- bsc [label="RSL CHAN ACT"];
+ bts -> bsc [label="RSL CHAN ACT ACK"];
+ bts box bsc [label="E1 TS + 16k sub-slot configured for given lchan"];
+ ms <-> bsc [label="Assignment"];
+ bsc -> m_sc [label="BSSAP ASSGN CMPL"];
+
+ ...;
+ trau <- m_sc [label="PCM Audio in full E1 slot"];
+ bts <- trau [label="A-bis TRAU frames on 16k sub-slot"];
+
+ ...;
+ ms <- m_sc [label="DTAP CC CONNECT"];
+ ms -> m_sc [label="DTAP CC CONNECT ACK"];
+ trau <-> m_sc [label="PCM Audio in full E1 slot"];
+ bts <-> trau [label="A-bis TRAU frames on 16k sub-slot"];
+ --- [label="Voice Call in Progress"];
+ ms <- m_sc [label="DTAP CC DISCONNET"];
+ ms <- m_sc [label="DTAP CC RELEASE"];
+ ms <- m_sc [label="DTAP CC RELEASE COMPL"];
+ ...;
+ bsc <- m_sc [label="BSSMAP CLEAR CMD"];
+ bsc -> m_sc [label="BSSMAP CLEAR COMPL"];
+ bsc <- m_sc [label="SCCP RLSD"];
+ bsc -> m_sc [label="SCCP RLC"];
+}
diff --git a/doc/manuals/mgw/osmo-bsc-new-mgw-e1.msc b/doc/manuals/mgw/osmo-bsc-new-mgw-e1.msc
new file mode 100644
index 000000000..04b114fff
--- /dev/null
+++ b/doc/manuals/mgw/osmo-bsc-new-mgw-e1.msc
@@ -0,0 +1,50 @@
+# MO-Call with E1 BTS + OsmoBSC with true 3GPP AoIP (planned
+# osmo-bsc_mgcp has to be extended to true MGW functionality!
+msc {
+ hscale=2;
+ ms [label="MS"], bts [label="E1 BTS"], bsc[label="OsmoBSC"], mgcp[label="osmo-bsc_mgcp"], m_sc[label="MSC"];
+
+ ms box m_sc [label="We assume a SDCCH is already established"];
+ ...;
+
+ ms -> m_sc [label="DTAP CC SETUP"];
+ ms <- m_sc [label="DTAP CC CALL PROCEEDING"];
+
+ m_sc box m_sc [label="Bind arbitrary local port (4000)"];
+ bsc <- m_sc [label="BSSAP ASSGN REQ (3GPP AoIP MSC:4000)"];
+ bts <- bsc [label="RSL CHAN ACT"];
+ bts -> bsc [label="RSL CHAN ACT ACK"];
+ ms <-> bsc [label="Assignment"];
+ ...;
+
+ mgcp <- bsc [label="MGCP CRCX ts1/ss2@mgw (MSC:4000)"];
+ mgcp box mgcp [label="Bind to MGW-local RTP Port (3000)\nConnect to MSC:4000"];
+ mgcp -> bsc [label="MGCP CRCX ts1/ss2@mgw OK (MGW:3000)"];
+ ...;
+
+ bsc -> m_sc [label="BSSAP ASSGN CMPL (3GPP AoIP MGW:3000)"];
+ m_sc box m_sc [label="Connect remote RTP to MGW addr from ASSGN CMPL"];
+ ...;
+
+ mgcp <=> m_sc [label="RTP Audio MGW:3000 MSC:4000"];
+ bts <=> mgcp [label="TRAU Frame Audio (E1 TS1 SS2)"];
+ ms <=> bts [label="Um Audio (bidirectional)"];
+ ms <-> m_sc [label="DTAP CC ALERTING"];
+ ...;
+
+ ms <- m_sc [label="DTAP CC CONNECT"];
+ ms -> m_sc [label="DTAP CC CONNECT ACK"];
+ --- [label="Voice Call in Progress"];
+ ms <- m_sc [label="DTAP CC DISCONNET"];
+ ms <- m_sc [label="DTAP CC RELEASE"];
+ ms <- m_sc [label="DTAP CC RELEASE COMPL"];
+ ...;
+ bsc <- m_sc [label="BSSMAP CLEAR CMD"];
+ bsc -> m_sc [label="BSSMAP CLEAR COMPL"];
+ bsc <- m_sc [label="SCCP RLSD"];
+ bsc -> m_sc [label="SCCP RLC"];
+ ...;
+ mgcp <- bsc [label="MGCP DLCX ts1/ss2@mgw"];
+ mgcp box mgcp [label="Release MSC-facing local RTP port (3000)"];
+ mgcp -> bsc [label="MGCP DLCX ts1/ss2@mgw OK"];
+}
diff --git a/doc/manuals/mgw/osmo-bsc-new-mgw.msc b/doc/manuals/mgw/osmo-bsc-new-mgw.msc
new file mode 100644
index 000000000..e618bb721
--- /dev/null
+++ b/doc/manuals/mgw/osmo-bsc-new-mgw.msc
@@ -0,0 +1,71 @@
+# MO-Call with OsmoBTS + OsmoBSC with true 3GPP AoIP (planned)
+msc {
+ hscale=2;
+ ms [label="MS"], bts [label="OsmoBTS"], bsc[label="OsmoBSC"], mgcp[label="osmo-bsc_mgcp"], m_sc[label="MSC"];
+
+ ms box m_sc [label="We assume a SDCCH is already established"];
+ ...;
+
+ ms -> m_sc [label="DTAP CC SETUP"];
+ ms <- m_sc [label="DTAP CC CALL PROCEEDING"];
+
+ m_sc box m_sc [label="Bind arbitrary local port (4000)"];
+ bsc <- m_sc [label="BSSAP ASSGN REQ (3GPP AoIP MSC:4000)"];
+ bts <- bsc [label="RSL CHAN ACT"];
+ bts -> bsc [label="RSL CHAN ACT ACK"];
+ ms <-> bsc [label="Assignment"];
+ ...;
+
+ # connect BTS RTP with BSC-MGW RTP
+ bts <- bsc [label="IPA CRCX"];
+ bts box bts [label="Bind to BTS-local RTP Port (1000)"];
+ bts -> bsc [label="IPA CRCX ACK (BTS:1000)"];
+ bsc -> mgcp [label="MGCP CRCX rtpbridge/2@mgw (BTS:1000)"];
+ mgcp box mgcp [label="Bind to MGW-local RTP Port (2000)\nConnect to BTS:1000"];
+ bsc <- mgcp [label="MGCP CRCX rtpbridge/2@mgw OK (MGW:2000)"];
+ bts <- bsc [label="IPA MDCX (MGW:2000)"];
+ bts box bts [label="Connect RTP socket to remote (MGW) RTP Port"];
+ bts -> bsc [label="IPA MDCX ACK"];
+ #bsc -> mgcp [label="MGCP MDCX rtpbridge/2@mgw (optional)"];
+ #bsc <- mgcp [label="MGCP MDCX rtpbridge/2@mgw OK (optional)"];
+ ...;
+
+ mgcp <- bsc [label="MGCP CRCX rtpbridge/2@mgw (MSC:4000)"];
+ mgcp box mgcp [label="Bind to MGW-local RTP Port (3000)\nConnect to MSC:4000"];
+ mgcp -> bsc [label="MGCP CRCX rtpbridge/2@mgw OK (MGW:3000)"];
+ ...;
+
+ bsc -> m_sc [label="BSSAP ASSGN CMPL (3GPP AoIP MGW:3000)"];
+ m_sc box m_sc [label="Connect remote RTP to MGW addr from ASSGN CMPL"];
+ ...;
+
+ mgcp <=> m_sc [label="RTP Audio MGW:3000 MSC:4000"];
+ bts <=> mgcp [label="RTP Audio BTS:1000 MGW:2000"];
+ ms <=> bts [label="Um Audio (bidirectional)"];
+ ms <-> m_sc [label="DTAP CC ALERTING"];
+ ...;
+
+ ms <- m_sc [label="DTAP CC CONNECT"];
+ ms -> m_sc [label="DTAP CC CONNECT ACK"];
+ --- [label="Voice Call in Progress"];
+ ms <- m_sc [label="DTAP CC DISCONNET"];
+ ms <- m_sc [label="DTAP CC RELEASE"];
+ ms <- m_sc [label="DTAP CC RELEASE COMPL"];
+ ...;
+ bsc <- m_sc [label="BSSMAP CLEAR CMD"];
+ bsc -> m_sc [label="BSSMAP CLEAR COMPL"];
+ bsc <- m_sc [label="SCCP RLSD"];
+ bsc -> m_sc [label="SCCP RLC"];
+ ...;
+ mgcp <- bsc [label="MGCP DLCX rtpbridge/2@mgw"];
+ mgcp box mgcp [label="Release MSC-facing local RTP port (3000)"];
+ mgcp -> bsc [label="MGCP DLCX rtpbridge/2@mgw OK"];
+
+ mgcp <- bsc [label="MGCP DLCX rtpbridge/2@mgw"];
+ mgcp box mgcp [label="Release BTS-facing local RTP port (2000)"];
+ mgcp -> bsc [label="MGCP DLCX rtpbridge/2@mgw OK"];
+
+ bts <- bsc [label="IPA DLCX"];
+ bts box bts [label="Release BTS-local RTP port (1000)"];
+ bts -> bsc [label="IPA DLCX OK"];
+}
diff --git a/doc/manuals/mgw/osmo-bsc-old-sccplite.msc b/doc/manuals/mgw/osmo-bsc-old-sccplite.msc
new file mode 100644
index 000000000..067721c46
--- /dev/null
+++ b/doc/manuals/mgw/osmo-bsc-old-sccplite.msc
@@ -0,0 +1,64 @@
+# MO-Call with OsmoBTS + OsmoBSC using A/IP with IPA/SCCPlite
+# Supported since 2010 using osmo-bsc + osmo-bsc_nat
+msc {
+ hscale=2;
+ ms [label="MS"], bts [label="OsmoBTS"], bsc[label="OsmoBSC"], mgcp[label="osmo-bsc_mgcp"], m_sc[label="MSC"];
+
+ ms box m_sc [label="We assume a SDCCH is already established"];
+ ...;
+
+ ms -> m_sc [label="DTAP CC SETUP"];
+ ms <- m_sc [label="DTAP CC CALL PROCEEDING"];
+
+ bsc <- m_sc [label="BSSAP ASSGN REQ"];
+ bts <- bsc [label="RSL CHAN ACT"];
+ bts -> bsc [label="RSL CHAN ACT ACK"];
+ ms <-> bsc [label="Assignment"];
+ bsc -> m_sc [label="BSSAP ASSGN CMPL"];
+
+ ...;
+ bts <- bsc [label="IPA CRCX"];
+ bts box bts [label="Bind to BSC-local RTP Port"];
+ bts -> bsc [label="IPA CRCX ACK"];
+ bts <- bsc [label="IPA MDCX"];
+ bts box bts [label="Connect RTP socket to remote (bsc_mgcp) RTP Port"];
+ bts -> bsc [label="IPA MDCX ACK"];
+
+ mgcp <- m_sc [label="MGCP CRCX 1@mgw"];
+ mgcp box mgcp [label="Bind to BTS-local RTP Port"];
+ mgcp -> m_sc [label="MGCP CRCX 1@mgw OK"];
+ mgcp <- m_sc [label="MGCP MDCX 1@mgw (recvonly) "];
+ mgcp box mgcp [label="Connect RTP socket to remote (MSC) RTP Port"];
+ mgcp -> m_sc [label="MGCP MDCX 1@mgw OK"];
+ mgcp <= m_sc [label="RTP Audio"];
+ bts <= mgcp [label="RTP Audio"];
+ ms <= bts [label="Um Audio (unidirectional)"];
+ ms <- m_sc [label="DTAP CC ALERTING"];
+
+ ...;
+ mgcp <- m_sc [label="MGCP MDCX (sndrecv) "];
+ mgcp box mgcp [label="Switch to bi-directional audio"];
+ mgcp -> m_sc [label="MGCP MDCX OK"];
+ mgcp <=> m_sc [label="RTP Audio"];
+ bts <=> mgcp [label="RTP Audio"];
+ ms <=> bts [label="Um Audio (bidirectional)"];
+ ...;
+ ms <- m_sc [label="DTAP CC CONNECT"];
+ ms -> m_sc [label="DTAP CC CONNECT ACK"];
+ mgcp <- m_sc [label="MGCP MDCX 1@mgw (sndrecv) "];
+ mgcp box mgcp [label="Why?"];
+ mgcp -> m_sc [label="MGCP MDCX 1@mgw OK"];
+ --- [label="Voice Call in Progress"];
+ ms <- m_sc [label="DTAP CC DISCONNET"];
+ ms <- m_sc [label="DTAP CC RELEASE"];
+ ms <- m_sc [label="DTAP CC RELEASE COMPL"];
+ ...;
+ bsc <- m_sc [label="BSSMAP CLEAR CMD"];
+ bsc -> m_sc [label="BSSMAP CLEAR COMPL"];
+ bsc <- m_sc [label="SCCP RLSD"];
+ bsc -> m_sc [label="SCCP RLC"];
+ ...;
+ mgcp <- m_sc [label="MGCP DLCX 1@mgw"];
+ mgcp box mgcp [label="Release local RTP port"];
+ mgcp -> m_sc [label="MGCP DLCX 1@mgw OK"];
+}