From ac42b589090c2ab59126f23c2c696b80d38775e2 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sat, 25 Aug 2018 11:20:39 +0200 Subject: chapters/gsup.adoc: add message sequence charts for SMS over GSUP Change-Id: I9a0536f285f98f24fec4d7318f1923782ed2e18c Related Change-Id: Ie0150756c33c1352bc4eb49421824542c711175c Related Change-Id: I549b6c8840a1e86caac09e77fb8bc5042d939e62 --- common/chapters/gsup_mo_smma.msc | 24 ++++++++++++++++++++++++ common/chapters/gsup_mo_sms.msc | 28 ++++++++++++++++++++++++++++ common/chapters/gsup_mt_sms.msc | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 common/chapters/gsup_mo_smma.msc create mode 100644 common/chapters/gsup_mo_sms.msc create mode 100644 common/chapters/gsup_mt_sms.msc diff --git a/common/chapters/gsup_mo_smma.msc b/common/chapters/gsup_mo_smma.msc new file mode 100644 index 0000000..ccf7524 --- /dev/null +++ b/common/chapters/gsup_mo_smma.msc @@ -0,0 +1,24 @@ +msc { + hscale="3"; + ms [label="MS"], omsc [label="MSC/VLR"], hlr [label="HLR"]; + + ms <-> omsc [label="Establishment, Auth, Ciph, ..."]; + ...; + ms -> omsc [label="CP-DATA(RP-SMMA)"]; + ms <- omsc [label="CP-ACK"]; + omsc -> hlr [label="GSUP ReadyForSM-Req (MR, Alert Reason)"]; + + |||; + ... [label="Successful delivery"]; + |||; + omsc <- hlr [label="GSUP ReadyForSM-Res (MR)"]; + ms <- omsc [label="CP-DATA(RP-ACK)"]; + ms -> omsc [label="CP-ACK"]; + + |||; + ... [label="Failed delivery"]; + |||; + omsc <- hlr [label="GSUP ReadyForSM-Err (MR, Cause)"]; + ms <- omsc [label="CP-DATA(RP-ERROR)"]; + ms -> omsc [label="CP-ACK"]; +} diff --git a/common/chapters/gsup_mo_sms.msc b/common/chapters/gsup_mo_sms.msc new file mode 100644 index 0000000..4cea871 --- /dev/null +++ b/common/chapters/gsup_mo_sms.msc @@ -0,0 +1,28 @@ +msc { + hscale="3"; + ms [label="MS"], omsc [label="MSC/VLR"], hlr [label="HLR"], smsc [label="SMSC"]; + + ms <-> omsc [label="Establishment, Auth, Ciph, ..."]; + ...; + ms -> omsc [label="CP-DATA(RP-DATA(SMS-SUBMIT))"]; + ms <- omsc [label="CP-ACK"]; + omsc -> hlr [label="GSUP MO-ForwardSM-Req (MR, DA=SMSC, OA=MSISDN, UI)"]; + hlr box hlr [label="Route based on DA\n(SMSC address)"]; + hlr -> smsc [label="GSUP MO-ForwardSM-Req (MR, DA=SMSC, OA=MSISDN, UI)"]; + + |||; + ... [label="Successful delivery"]; + |||; + hlr <- smsc [label="GSUP MO-ForwardSM-Res (MR)"]; + omsc <- hlr [label="GSUP MO-ForwardSM-Res (MR)"]; + ms <- omsc [label="CP-DATA(RP-ACK)"]; + ms -> omsc [label="CP-ACK"]; + + |||; + ... [label="Failed delivery"]; + |||; + hlr <- smsc [label="GSUP MO-ForwardSM-Err (MR, Cause)"]; + omsc <- hlr [label="GSUP MO-ForwardSM-Err (MR, Cause)"]; + ms <- omsc [label="CP-DATA(RP-ERROR)"]; + ms -> omsc [label="CP-ACK"]; +} diff --git a/common/chapters/gsup_mt_sms.msc b/common/chapters/gsup_mt_sms.msc new file mode 100644 index 0000000..f5addda --- /dev/null +++ b/common/chapters/gsup_mt_sms.msc @@ -0,0 +1,36 @@ +msc { + hscale="4"; + ms [label="MS"], omsc [label="MSC/VLR"], hlr [label="HLR"], smsc [label="SMSC"]; + + hlr <- smsc [label="GSUP MT-ForwardSM-Req (MR=0xFF, DA=IMSI/MSISDN, OA=SMSC, UI, MMS)"]; + hlr box hlr [label="Route based on IMSI/MSISDN"]; + omsc <- hlr [label="GSUP MT-ForwardSM-Req (MR=0xFF, DA=IMSI/MSISDN, OA=SMSC, UI, MMS)"]; + + |||; + ... [label="Connection establishment failure"]; + |||; + omsc -> hlr [label="GSUP MT-ForwardSM-Err (MR, Cause)"]; + hlr -> smsc [label="GSUP MT-ForwardSM-Err (MR, Cause)"]; + + |||; + ... [label="Failed delivery"]; + |||; + ms <-> omsc [label="Establishment, Auth, Ciph, ..."]; + ms <- omsc [label="CP-DATA(RP-DATA(SMS-DELIVER))"]; + ms -> omsc [label="CP-ACK"]; + ms -> omsc [label="CP-DATA(RP-ERROR)"]; + omsc -> hlr [label="GSUP MT-ForwardSM-Err (MR, Cause)"]; + ms <- omsc [label="CP-ACK"]; + hlr -> smsc [label="GSUP MT-ForwardSM-Err (MR, Cause)"]; + + |||; + ... [label="Successful delivery"]; + |||; + ms <-> omsc [label="Establishment, Auth, Ciph, ..."]; + ms <- omsc [label="CP-DATA(RP-DATA(SMS-DELIVER))"]; + ms -> omsc [label="CP-ACK"]; + ms -> omsc [label="CP-DATA(RP-ACK)"]; + omsc -> hlr [label="GSUP MT-ForwardSM-Res (MR)"]; + ms <- omsc [label="CP-ACK"]; + hlr -> smsc [label="GSUP MT-ForwardSM-Res (MR)"]; +} -- cgit v1.2.3