| # 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"]; |
| } |