msc { hscale = "3"; ue,hnb,hnbgw,cn; cn box cn [ label = "subscriber A send a SMS; signalling arrives at CN" ]; cn => hnbgw [ label = "SCCP UDT (RANAP Paging Command)" ]; hnbgw => hnb [ label = "RUA ConnectionlessTransfer (RANAP Paging Command)" ]; hnb => ue [ label = "RRC Paging" ]; ue box hnb [ label = "Radio Channel Establishment" ]; ue => hnb [ label = "RRC (CM PAGING RESP)" ] ; hnb => hnbgw [ label = "RUA CONNECT (RANAP Initial UE Msg (CM PAGING RESP))" ]; hnbgw => cn [ label = "SCCP CR (RANAP Initial UE Msg (CM PAGING RESP))" ]; cn >> hnbgw [ label = "SCCP CC" ]; --- [ label = "Optional retrieval of IMSI (if not given in CM or retrived from VLR by TMSI)" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP DirectTransfer (MM IDENTITY REQ))" ]; hnbgw => hnb [ label = "RUA DT (RANAP DirectTransfer (MM IDENTITY REQ))" ]; hnb => ue [ label = "RRC (MM IDENTITY REQ)" ]; ue >> hnb [ label = "RRC (MM IDENTITY RESP)" ]; hnb >> hnbgw [ label = "RUA DT (RANAP DirectTransfer (MM IDENTITY RESP))" ]; hnbgw >> cn [ label = "SCCP DT1 (RANAP DirectTransfer (MM IDENTITY RESP))" ]; --- [ label = "Mandatory activation of Integrity Protection" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP SecurityModeCommand (IK))" ]; hnbgw => hnb [ label = "RUA DT (RANAP SecurityModeCommand (IK))" ]; hnb >> hnbgw [ label = "RUA DT (RANAP SecurityModeResponse (IK))" ]; hnbgw >> cn [ label = "SCCP DT1 (RANAP SecurityModeResponse (IK))" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP CommonID)" ]; hnbgw => hnb [ label = "RUA DT (RANAP CommonID)" ]; --- [ label = "Optional Authentication" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP DirectTransfer (MM AUTH REQ))" ]; hnbgw => hnb [ label = "RUA DT (RANAP DirectTransfer (MM AUTH REQ))" ]; hnb => ue [ label = "RRC (MM AUTH REQ)" ]; ue >> hnb [ label = "RRC (MM AUTH RESP)" ]; hnb >> hnbgw [ label = "RUA DT (RANAP DirectTransfer (MM AUTH RESP))" ]; hnbgw >> cn [ label = "SCCP DT1 (RANAP DirectTransfer (MM AUTH RESP))" ]; --- [ label = "Optional activation of Encryption" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP SecurityModeCommand (IK+CK))" ]; hnbgw => hnb [ label = "RUA DT (RANAP SecurityModeCommand (IK+CK))" ]; hnb >> hnbgw [ label = "RUA DT (RANAP SecurityModeResponse (IK+CK))" ]; hnbgw >> cn [ label = "SCCP DT1 (RANAP SecurityModeResponse (IK+CK))" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP DirectTransfer (CP-DATA (RP-DATA (SMS DELIVER))))" ]; hnbgw => hnb [ label = "RUA DT (RANAP DirectTransfer (CP-DATA (RP-DATA (SMS DELIVER))))" ]; hnb => ue [ label = "RRC (CP-DATA (RP-DATA (SMS DELIVER)))" ]; ue => hnb [ label = "RRC (CP-ACK)" ]; hnb => hnbgw [ label = "RUA DT (RANAP DirectTransfer (CP-ACK))" ]; hnbgw => cn [ label = "SCCP DT1 (RANAP DirectTransfer (CP-ACK))" ]; ue => hnb [ label = "RRC (CP-DATA (RP-ACK)" ]; hnb => hnbgw [ label = "RUA DT (RANAP DirectTransfer (CP-DATA (RP-ACK)))" ]; hnbgw => cn [ label = "SCCP DT1 (RANAP DirectTransfer (CP-DTA (RP-ACK)))" ]; cn => hnbgw [ label = "SCCP DT1 (RANAP DirectTransfer (CP-ACK))" ]; hnbgw => hnb [ label = "RUA DT (RANAP DirectTransfer (CP-ACK))" ]; hnb => ue [ label = "RRC (CP-ACK)" ]; cn box cn [ label = "MAP MT Forward SM to GMSC/SMSC" ]; cn box hnb [ label = "RAB Release or Iu Release" ]; }