[MERGED] osmo-gsm-manuals[master]: Add Message Sequence Chart for a MO calls with ext. MNCC han...

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Tue Jul 11 17:12:43 UTC 2017


Harald Welte has submitted this change and it was merged.

Change subject: Add Message Sequence Chart for a MO calls with ext. MNCC handler
......................................................................


Add Message Sequence Chart for a MO calls with ext. MNCC handler

Change-Id: Ida10fc7ccb345b8cd084c4ecc5f4f7d4ce6c98a0
---
A common/chapters/nitb_mncc_mo_rtp.msc
A common/chapters/nitb_mncc_mo_tch.msc
2 files changed, 196 insertions(+), 0 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/common/chapters/nitb_mncc_mo_rtp.msc b/common/chapters/nitb_mncc_mo_rtp.msc
new file mode 100644
index 0000000..768827a
--- /dev/null
+++ b/common/chapters/nitb_mncc_mo_rtp.msc
@@ -0,0 +1,104 @@
+msc {
+	hscale="4";
+	ms [label="MS"], bts [label="BTS"], nitb [label="NITB"], emh [label="External MNCC Hdlr"];
+
+	|||;
+	...		[label="Mobile Originated call handled via OsmoNITB, no RTP proxy, IPBTS and external MNCC Handler"];
+	|||;
+	---		[label="User on A-side dials a MO call from his phone"];
+	ms <=> nitb	[label="RF Channel Establishment"];
+	...;
+
+	# MS sends CC SETUP, deliver it to MNCC
+	ms -> nitb 	[label="CC SETUP [MSISDN]"];
+	nitb rbox nitb	[label="CSTATE_INITIATED"];
+	nitb -> emh	[label="MNCC-SETUP.ind [CALLING, BEARER_CAP,
+FACILITY, CALLED, USERUSER, SSVERSION, CCCAP"];
+	emh rbox emh	[label="1 CALL_INIT"];
+	...;
+
+	---		[label="Exact time of RTP-CREATE up to Ext MNCC Hdlr"];
+	nitb <- emh	[label="MNCC_RTP_CREATE[.req]"];
+	bts <- nitb	[label="RSL IPA CRCX"];
+	bts -> nitb	[label="RSL IPA CRCX ACK (BTS-IP, BTS-PORT)"];
+	nitb -> emh	[label="MNCC_RTP_CREATE[.cnf] (BTS-IP, BTS-PORT)"];
+	...;
+
+	nitb <- emh	[label="MNCC-CALL-PROC.req [BEARER_CAP, FACILITY, PROGRESS]"];
+	emh rbox emh	[label="3 MO_CALL_PROC"];
+	nitb rbox nitb	[label="CSTATE_MO_CALL_PROC"];
+	ms <- nitb	[label="CC CALL PROCEDING"];
+	...;
+
+	# optional
+	---		[label="Optional PROGRESS, can happen 0-N times"];
+	nitb <- emh	[label="MNCC-PROGRESS.req [USERUSER]"];
+	emh rbox emh	[label="3 MO_CALL_PROC"];
+	ms <- nitb	[label="CC PROCEDING"];
+	...;
+
+	# optional
+	---		[label="Optional; Indicates when B-side is ringing"];
+	nitb <- emh	[label="MNCC-ALERT.req [FACILITY, PROGRESS, USERUSER]"];
+	emh rbox emh	[label="4 CALL_DELIVERED"];
+	nitb rbox nitb	[label="CSTATE_CALL_DELIVERED"];
+	ms <- nitb	[label="CC ALERTING"];
+	...;
+
+	# ask the BTS to connect its RTP stream to the given IP+PORT
+	---		[label="Exact time of RTP-CONNECT up to Ext MNCC Hdlr"];
+	nitb <- emh	[label="MNCC_RTP_CONNECT[.req] (EMH-IP, EMH-PORT)"];
+	bts <- nitb	[label="RSL IPA MDCX (EMH-IP, EMH-PORT)"];
+	bts -> nitb	[label="RSL IPA MDCX ACK"];
+	nitb -> emh	[label="MNCC_RTP_CONNECT[.cnf] (BTS-IP, BTS-PORT)"];
+	...;
+
+	---		[label="User on B-side answers the call"];
+	nitb <- emh	[label="MNCC-SETUP.rsp [FACILITY, PROGRERSS, CONNETED, USERUSER]"];
+	emh rbox emh	[label="? CONNECT_INDICATION"];
+	nitb rbox nitb	[label="CSTATE_CONNECT_IND"];
+	ms <- nitb	[label="CC CONNECT"];
+	...;
+
+	ms -> nitb	[label="CC CONNECT ACK"];
+	nitb rbox nitb	[label="CSTATE_ACTIVE"];
+	nitb -> emh	[label="MNCC-SETUP-COMPL.ind"];
+	emh rbox emh	[label="10 ACTIVE"];
+	...;
+	...;
+	...;
+
+	---		[label="User on A-side hangs up the call"];
+	ms -> nitb	[label="CC DISCONNECT"];
+	nitb rbox nitb	[label="CSTATE_DISCONNET_REQ"];
+	nitb -> emh	[label="MNCC-DISC.ind [CAUSE, FACILITY, USERUSER, SSVERSION]"];
+	emh rbox emh	[label="12 DISCONNET_IND"];
+	...;
+
+	nitb <- emh	[label="MNCC-RELEASE.req [CAUSE, FACILITY, USERUSER]"];
+	emh rbox emh	[label="19 RELEASE_REQ"];
+	nitb rbox nitb	[label="CSTATE_RELEASE_REQ"];
+	ms <- nitb	[label="CC RELEASE"];
+	...;
+
+	ms -> nitb	[label="CC RELEASE COMPLETE"];
+	nitb -> emh	[label="MNCC-RELEASE.cnf [CAUSE, FACILITY, USERUSER, SSVERSION]"];
+	...;
+
+	ms <=> nitb	[label="RF Channel Release"];
+	...;
+
+
+
+	# bridge two voice calls (by call reference) inside NITB
+#	nitb <- emh	[label="MNCC_BRIDGE"];
+
+#	nitb <- emh	[label="MNCC_FRAME_DROP"];
+#	nitb <- emh	[label="MNCC_FRAME_RECV"];
+
+	# not implemented so far
+#	nitb <- emh	[label="MNCC_RTP_FREE"];
+
+	# direct input/output of voice frames via MNCC socket
+#	nitb <- emh	[label="MNCC_TCHF_FRAME, GSM_TCHF_FRAME_EFR, GSM_TCHH_FRAME, GSM_TCH_FRAME_AMR"];
+}
diff --git a/common/chapters/nitb_mncc_mo_tch.msc b/common/chapters/nitb_mncc_mo_tch.msc
new file mode 100644
index 0000000..0a44a92
--- /dev/null
+++ b/common/chapters/nitb_mncc_mo_tch.msc
@@ -0,0 +1,92 @@
+# Mobile Originated call handled via OsmoNITB with RTP proxy or E1 BTS # and external MNCC Handler
+msc {
+	hscale="4";
+	ms [label="MS"], bts [label="BTS"], nitb [label="OsmoNITB"], emh [label="External MNCC Hdlr"];
+
+	|||;
+	...		[label="Mobile Originated call handled via OsmoNITB with RTP proxy or E1 BTS and external MNCC Handler"];
+	|||;
+	---		[label="User on A-side dials a MO call from his phone"];
+	ms <=> nitb	[label="RF Channel Establishment"];
+	...;
+
+	# MS sends CC SETUP, deliver it to MNCC
+	ms -> nitb 	[label="CC SETUP [MSISDN]"];
+	nitb rbox nitb	[label="CSTATE_INITIATED"];
+	nitb -> emh	[label="MNCC-SETUP.ind [CALLING, BEARER_CAP,
+FACILITY, CALLED, USERUSER, SSVERSION, CCCAP"];
+	emh rbox emh	[label="1 CALL_INIT"];
+	...;
+
+	nitb <- emh	[label="MNCC-CALL-PROC.req [BEARER_CAP, FACILITY, PROGRESS]"];
+	emh rbox emh	[label="3 MO_CALL_PROC"];
+	nitb rbox nitb	[label="CSTATE_MO_CALL_PROC"];
+	ms <- nitb	[label="CC CALL PROCEDING"];
+	...;
+
+	# optional
+	---		[label="Optional PROGRESS, can happen 0-N times"];
+	nitb <- emh	[label="MNCC-PROGRESS.req [USERUSER]"];
+	emh rbox emh	[label="3 MO_CALL_PROC"];
+	ms <- nitb	[label="CC PROCEDING"];
+	...;
+
+	# optional
+	---		[label="Optional; Indicates when B-side is ringing"];
+	nitb <- emh	[label="MNCC-ALERT.req [FACILITY, PROGRESS, USERUSER]"];
+	emh rbox emh	[label="4 CALL_DELIVERED"];
+	nitb rbox nitb	[label="CSTATE_CALL_DELIVERED"];
+	ms <- nitb	[label="CC ALERTING"];
+	...;
+
+	# ask the BTS to connect its RTP stream to the given IP+PORT
+	---		[label="Exact time of MNCC_FRAME_RECV is up to Ext MNCC Hdlr"];
+	nitb <- emh	[label="MNCC_FRAME_RECV[.req]"];
+	ms -> nitb	[label="TCH Voice Frame (TRAU or RTP)"];
+	nitb ->emh [label="{GSM_{TCHF,TCHH}_FRAME,GSM_TCHF_FRAME_EFR,GSM_TCH_FRAME_AMR}"];
+	ms -> nitb	[label="TCH Voice Frame (TRAU or RTP)"];
+	nitb ->emh [label="{GSM_{TCHF,TCHH}_FRAME,GSM_TCHF_FRAME_EFR,GSM_TCH_FRAME_AMR}"];
+	...		[label="Unidirectional voice frames continue"];
+
+	---		[label="User on B-side answers the call"];
+	nitb <- emh	[label="MNCC-SETUP.rsp [FACILITY, PROGRERSS, CONNETED, USERUSER]"];
+	emh rbox emh	[label="? CONNECT_INDICATION"];
+	nitb rbox nitb	[label="CSTATE_CONNECT_IND"];
+	ms <- nitb	[label="CC CONNECT"];
+	...;
+
+	ms -> nitb	[label="TCH Voice Frame (TRAU or RTP)"];
+	nitb ->emh 	[label="{GSM_{TCHF,TCHH}_FRAME,GSM_TCHF_FRAME_EFR,GSM_TCH_FRAME_AMR}"];
+	...;
+	nitb <- emh	[label="{GSM_{TCHF,TCHH}_FRAME,GSM_TCHF_FRAME_EFR,GSM_TCH_FRAME_AMR}"];
+	ms <- nitb	[label="TCH Voice Frame (TRAU or RTP)"];
+	...		[label="Bi-directional voice frames continue"];
+
+	ms -> nitb	[label="CC CONNECT ACK"];
+	nitb rbox nitb	[label="CSTATE_ACTIVE"];
+	nitb -> emh	[label="MNCC-SETUP-COMPL.ind"];
+	emh rbox emh	[label="10 ACTIVE"];
+	...;
+	...;
+	...;
+
+	---		[label="User on A-side hangs up the call"];
+	ms -> nitb	[label="CC DISCONNECT"];
+	nitb rbox nitb	[label="CSTATE_DISCONNET_REQ"];
+	nitb -> emh	[label="MNCC-DISC.ind [CAUSE, FACILITY, USERUSER, SSVERSION]"];
+	emh rbox emh	[label="12 DISCONNET_IND"];
+	...;
+
+	nitb <- emh	[label="MNCC-RELEASE.req [CAUSE, FACILITY, USERUSER]"];
+	emh rbox emh	[label="19 RELEASE_REQ"];
+	nitb rbox nitb	[label="CSTATE_RELEASE_REQ"];
+	ms <- nitb	[label="CC RELEASE"];
+	...;
+
+	ms -> nitb	[label="CC RELEASE COMPLETE"];
+	nitb -> emh	[label="MNCC-RELEASE.cnf [CAUSE, FACILITY, USERUSER, SSVERSION]"];
+	...;
+
+	ms <=> nitb	[label="RF Channel Release"];
+	...;
+}

-- 
To view, visit https://gerrit.osmocom.org/3178
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ida10fc7ccb345b8cd084c4ecc5f4f7d4ce6c98a0
Gerrit-PatchSet: 1
Gerrit-Project: osmo-gsm-manuals
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list