Roaming Call Flow

Hi All,

   Greeting from TelecomTigers Team,

As per request from many of our readers,
Here is a MT Call Flow, When Subscriber is in Roaming,
Following parameters are not taken here for simplicity i.e. Authentication, Ciphering, Paging, etc.



Postpaid Subscriber MT Call Flow :-

  • Mobile (MS A) dials Mobile (MS B) Number (which is of Circle 2 but currently in roaming at Circle 1).
  • "Connect" msg is sent from MS A to MSC A, which analyse B-Number & found it's of different circle, so it route the call to GMSC A.
  • After receiving IAM from GMSC A, GMSC B initiates the SRI request to HLR B.
  • In Normal Scenario, i.e. Postpaid MT call flow, GMSC B will initiate the SRI query to HLR B & HLR B will ask for PRN from MSC B (in which MS B currently present), & MSC B will respond to that query by providing MSRN number to GMSC B via HLR B, but here,
  • Since MS B is in Roaming at Circle 1, so HLR B will ask for PRN from MSC C, via GMSC B & GMSC C.
  • MSC C provides the MSRN to GMSC A via GMSC C & GMSC B
  • After receiving MSRN by GMSC A, MSC A routes the call to MSC C.
  • Now, ISUP msgs (IAM, ACM, ANM, REL, RLC) is sent from MSC A to MSC B, to complete the call.



SIP (Session Initiation Protocol) Call Flow

Hi All,

        We have already discussed the basics of SIP in our last post. Here we would like to share the SIP call flow. Here we have also included PSTNs, so that the reader can co-relate the message of SIP and ISUP.


Scenario:
 
     A Number wants to call  B Number which is catered by PSTN B.
  • PSTN A to MSS X protocol used in ISUP.
  • MSS X to MSS Y protocol used in SIP.
  • MSS Y to PSTN B protocol is ISUP.
1) After receiving IAM  from PSTN A with called party number as B number  MSS X after number analysis detects the B number has to be routed to MSS Y which is connected by SIP. MSS X send a INVITE message.
Major components of INVITE are "Called Party", "Calling Party", "Bearer information", "Codec".

2) MSS Y receives INVITE and responds with 100 (Trying) message.
This response indicates that the request has been received by the next-hop server and that some unspecified action is being taken on behalf of this call (for example, a database is being consulted). At the same time after number analysis its send IAM to PSTN B.

3) MSS Y send 183 message to MSS X. This message is called as Session progress indicated that session is in progress. In response to 183 MSS A sends PRACK. PRACK (PRovisional ACKnowledgement) is like any another request within a dialog.
** PRACK is response for 1XX mesages
    ACK is response for 2XX messages.

4) After analysis of B number PSTN B sends ACM with "Called Party status indicator = no indication" to MSS Y. MSS Y sends 200 message to MSS X in turn MSS X forwards ACM message to PSTN A.

5) When B number starts ringing PSTN B send CPG message with "Called Party status indicator = Subscriber free". Indicates that subscriber is free and ringing.
MSS Y send 180 ringing message to MSS X.

Which is communicated to PSTN A in CPG message and A number can hear a ringtone.

6) B number answers the call in response PSTN B send ANM message to MSS Y. MSS Y send 200(With ANM) message to MSS X. MSS X responds with ACK , also forwards ANM message to PSTN A. At this point of time speech path is through.

7) After conversation A number releases the call. REL is send from PSTN A to MSS X in response MSS X sends BYE message to MSS Y. MSS Y send the REL message to PSTN B.

8) PSTN B release the resources and respond with RLC message to MSS Y. MSS Y relays the 200(with RLC) message to MSS X. RLC is then forwarded to PSTN A. This complete the release of all resources used for call.


PostPaid Call Flow

Hi All,

        Many of our blog readers are asking for Postpaid Call Flow, So here's it goes,
     
Here we tried to explain very basic call flow from mobile to mobile.

   To make it simple following assumptions have been taken. A) Call is in same MSC and BSC. B) No Authentication, C)No Ciphering , D) Messages on Ater and Air interface are not consider, etc.


Call Flow Message Details:-
  1. CM Service Request – Message contains Global Cell Identity, Kind of Service required by subscriber e.g Voice, SMS, Fax, USSD. Mobile Identity e.g TMSI/IMSI.
  2. CM Service Accept – Message is in response of CM Service Request.
  3. Set Up - Message contains dialed number from Mobile A (i.e Mob B number) and speech Codec.
  4. Send Routing Info-Request (SRI) - After analysis of dialed numbers received from A in set up message, MSC recognizes its own MSISDN series and send SRI to HLR to get the Mobile station roaming number(MSRN). This messge contains B MSISDN, Interrogation type e.g Basic Call etc.
  5. Assignment Request - Message is to seize a channel for voice call for Mob A between MSC and BSC. Message contains Circuit Identification Code(CIC).
  6. Assignment Complete - Acceptance from BSC end that same CIC has been seized.
  7. Provide Roaming Number Request - HLR checks in its database to which VLR, Mob B is registered & ask for roaming number from that VLR. Message contains IMSI, MSISDN, VLR ID of Mob B.
  8. Provide Roaming Number Response - Message is response of roaming no. request and contains roaming number of Mob B. This message is for HLR. In this VLR checks its database & allocate one free MSRN from its MSRN pool for B number.
  9. Send Routing Info-Response - In this HLR forward same roaming number which it receives in above message to MSC.
  10. Paging Request - In this VLR checks the MSRN received from HLR & search which MSISDN is against that MSRN, now MSC checks the VLR database of that MSISDN to get the LAC & TMSI/IMSI of that MSISDN (Mob B) & initiates the paging request message to that particular LAC on the basis of TMSI/IMSI in that BSC. BSC now page to that LAC on the basis of IMSI/TMSI of Mob B. Message contains LAC, IMSI/TMSI, DPC of BSC.
  11. Paging Response - Mob B response to that paging with GCI (Global Cell Identity) to BSC that intern forwarded to MSC.
  12. Assignment Request - Message is to seize a channel for voice call for Mob B between MSC and BSC. Message contains Circuit Identification Code(CIC).
  13. Assignment Complete - Acceptance from BSC end that same CIC has been seized.
  14. Set Up - It is used to display Mob A number on Mob B handset.
  15. Alert - This message indicates Mob A that Mob B is connected & its ringing. The Ring Back Tone is send from MSC to Mob A.
  16. Connect - Mob B answers the call & connect message from Mob B is send to MSC, intern MSC sends connect message to Mob A indicating that phone has been answered & connects those 2 voice channels which were seized during the assignment complete message.
  17. Connect Acknowledge - To acknowledge the connection.

Saturday, April 14, 2012


Normal Prepaid (IN) Call Flow

Hi All,

      As Prepaid Call Flow with MNP is already posted, but still many of our friends ask us for detailed Normal Prepaid (IN) Call scenario, so here you go,




The above flow describes a basic direct dial call scenario with normal call termination:

1. Mobile A starts a new call by dialing Mobile B. 

2. The MSC sends an IDP (Initial Detection Point) event, which notifies the IN-SCP of the new call.
  IDP Message Contains :- A-Party no, B-Party no., Service key=90, A Party Location, Time stamp.
3. The IN SCP processes the request and after authorizing the user, the IN SCP sends 3 IN messages to the MSC - 
  • AC (Apply Charging) :-  Check the A-Party Balance / tariff related facilities & provides maximum granted time for a call.
  • CIQ (Call Information Query) :- IN request from the MSC for call information, like CAET - Call Attempt Elapsed Time (time between call ringing & user picks the call), CCET - Call Connect Elapsed Time (Duration of a call), CST - Call Stop Time (exact time when call disconnect), RC -Release Cause (Exact release cause due to which call got disconnected).
  • RRBCSM (Request Report Basic Call State Module) :- IN again request from MSC for detailed Release Cause.
4. Connect :- After getting everything OK i.e. all request from IN side have been done then IN sends a Connect message to MSC for further call processing & connect the call.

5. Activity Test :- After IN provides "connect" message to MSC, its a sort of ping message which is unidirectional, sent by IN to MSC, to know the progress of a call.

6. Once the connection is made, an event report (for answer event) is sent to SDP via IN-SCP.for preventing any revenue loss.

7. After conversation, when call gets disconnected, a new event report is sent to SDP via IN-SCP, which in turn instructs to release the call.

8. Once the call is released, a new Apply Charging Report (ACR) is sent to IN-SCP, which contains full time usage data of a call. This report is sent to SDP for accurate & final call charging.

9. CIR (Call Information Report) :- By using the details which was noted in CIQ message, MSC makes a report i.e. CIR (which contains CAET, CCET, CST, RC) & sends to SDP via IN-SCP.

10. ERB (Evert Report BCSM) :- Another report send by MSC to IN, which contains actual release cause in details, which may be - Abandon, B-Party Busy, B-Party no answer, B-Party not reachable, route selection failure, disconnect.

11. Finally signaling terminates, which ends the call. 


            GPRS (General Packet Radio Service) is a packet based communication service for mobile devices that allows data to be sent and received across a mobile telephone network. It's a step towards 3G and is often referred to as 2.5G.
            It’s an upgrade to the existing network that sits along side the GSM network. Many of the devices such as the BTS and BSC are still used. Often devices need to be upgraded be it software, hardware or both. When deploying GPRS many of the software changes can be made remotely.
           There are however 2 New Functional Elements which play a major role in how GPRS works - SGSN & GGSN. In simple terms there are in practice two different networks working in parallel, GSM and GPRS.
           In any GSM network there will be several BSC’s. When implementing GPRS a software and hardware upgrade of this unit is required. The hardware upgrade consists of adding a PCU (Packet Control Unit). This extra piece of hardware differentiates data destined for the standard GSM network or Circuit Switched Data and data destined for the GPRS network or Packet Switched Data.
PCU can be a separate entity.



SGSN (Serving GPRS Support Node) - It takes care of some important tasks, including Routing, Handover and IP address assignment. Its a logical connection to the GPRS device. One job of the SGSN is to make sure the connection is not interrupted as you make your journey passing from cell to cell. It works out which BSC to “route” your connection through. If the user moves into a segment of the network that is managed by a different SGSN it will perform a handoff to the new SGSN, this is done extremely quickly and generally the user will not notice this has happened. Any packets that are lost during this process are retransmitted. The SGSN converts mobile data into IP and is connected to the GGSN via a tunneling protocol.

GGSN (Gateway GPRS support node) - It is the “last port of call” in the GPRS network before a connection between an ISP (Internet Service Provider) or corporate network’s router occurs. The GGSN is basically a gateway, router and firewall. It also confirms user details with RADIUS servers for security, which are usually situated in the IP network and outside of the GPRS network.
            The connection between the two GPRS Support Nodes is made with a protocol called GPRS Tunneling Protocol (GTP). GTP sits on top of TCP/IP and is also responsible for the collection of mediation and billing information. GPRS is billed on per megabyte basis.


GPRS Call Scenario :-
  • A subscriber accesses the Internet with GPRS mobile phone to set the APN (Access Point Names) & gateway IP address defined on subscription. In fact, APN is a logical name indicating the external data network in GGSN. A subscriber can select different GGSNs via different APNs. Currently, however, only one APN can be activated at a time. The purpose of selecting different APNs is to access the external network via different GGSNs, because without GGSN, a subscriber cannot access the PDN (Public Data Network). An APN consists of a fully qualified DNS (Domain Name Server) name e.g. airtellive.com.cn., which should be parsed by DNS to get the real IP address of GGSN.
  • The call reaches the SGSN of the GPRS network. The SGSN triggers the service in the corresponding SCP (Service Control Point) according to subscriber's authentication information on the HLR interconnected to the corresponding home SCP for processing.
  • The DNS parses the APN and get the IP address of the GGSN.
  • The call is routed to the GGSN according to the IP address.
  • The GGSN assigns the IP address to the subscriber.
  • After SCP verifies the subscriber, the subscriber begins to transmit data and log in to the external web sites via the gateway whose IP address is set in the mobile phone.
  • The subscriber may select the service from the portal web site to connect the SP/CP web site that provides the service, or enter the IP address of the SP/CP in the mobile phone to access the SP/CP web site.

Mobile Terminated (MT) SMS Flow
Here is a Simple Explanation of Mobile Terminated (MT) SMS Flow -


SMS MT Call Flow :-
  1. The Short Message is transferred from SMSC to SMS-GMSC.
  2. SMS-GMSC queries the HLR (SRI) & receives the routing information for the mobile subscriber (SRI-ACK).
  3. The SMS-GMSC sends the short message to the MSC using "Forward Short Message" (FSM) operation.
  4. The MSC retrieves the subscriber information from the VLR. This operation may include the Authentication Procedure.
  5. The MSC transfers short message to the Mobile Station (MS).
  6. The MSC returns the outcome of the "Forward Short Message" operation to the SMS-GMSC (FSM-ACK).
  7. If requested by the SMSC, it returns a status report indicating Delivery of the Short Message.

Mobile Originated (MO) SMS Flow
Here is a simple explanation of Mobile Originated SMS flow.


SMS MO Call Flow :-
  1. The mobile station transfers the short message to the MSC.
  2. The MSC queries the VLR to verify that the message transfer does not violate the supplementary services invoked or the restrictions imposed on the subscriber.
  3. The MSC sends the short message to the SMS-IWMSC (Inter-Working MSC for SMS) using the “forward Short Message” operation.
  4. The SMS-IWMSC delivers the short message to the SMSC (Short Message Service Centre).
  5. The SMSC acknowledges the successful outcome of the “forward Short Message” operation to the MSC.
  6. The MSC returns the outcome of the short message operation to the mobile station.

GSM Mobile Terminated Call

A Land Line Subsriber calling a Mobile Subscriber.

The main difference between a call to an MS and a call from an MS is that, the exact location of MS is unknown. Hence, the MS must be located using paging before a connection can be established. 

  1. The PSTN subscriber dials the MS’s telephone number (MSISDN), the MSISDN is analyzed in the PSTN, which identifies that this is a call to a mobile network subscriber. A connection is established to the MS’s home GMSC. The PSTN sends an Initial Address message (IAM) to the GMSC.
  2. The GMSC analyzes the MSISDN to find out which HLR, the MS is registered in, and queries the HLR for information about how to route the call to the serving MSC/VLR. The HLR looks up the MSISDN and determines the IMSI and the SS7 address for the MSC/VLR that is servicing the MS. The HLR also checks if the service, “call forwarding to C-number” is activated, if so, the call is rerouted by the GMSC to that number.
  3. The HLR then contacts the servicing MSC/VLR and asks it to assign a MSRN to the call. [MSRN - Mobile Station Routing Number].
  4. The MSC/VLR returns an MSRN via HLR to the GMSC.
  5. The GMSC sends an Initial Addressing message (IAM) to the servicing MSC/VLR and uses the MSRN to route the call to the MSC/VLR. Once the servicing MSC/VLR receives the call, the MSRN can be released and may be made available for reassignment.
  6. The MSC/VLR then orders all of its BSCs and BTSs to page the MS. Since the MSC/VLR does not know exactly which BSC and BTS the MS is monitoring, the page will be sent out across the entire Location Area(LA). 
  7. When the MS detects the paging message to the BTS’s in the desired LA. The BTS’s transmit the message over the air interface using PCH. To page the MS, the network uses an IMSI or TMSI valid only in the current MSC/VLR service area.
  8. When the MS detects the paging message, it sends a request on RACH for a SDCCH.
  9. The BSC provides a SDCCH, using AGCH.
  10. SDCCH is used for the call set-up procedures. Over SDCCH all signaling preceding a call takes place. This includes: Marking the MS as “active” in the VLR. Authentication procedure (Start ciphering, Equipment identification).
  11. The MSC/VLR instructs the BSC/TRC to allocate an idle TCH. The BTS and MS are told to tune to the TCH. The mobile phone rings. If the subscriber answers, the connection is established.



A Mobile User calling a Land Line Subscriber.
  1. MS after dialing a number & pressing SEND key, sends Channel Request(Chan_Req) message on RACH to ask for a signaling channel (Radio Resources). [RACH - Random Access Channel]
  2. The BSC allocates a Traffic Channel(TCH) using AGCH. TCH allocation assigns a specific Frequency & a Timeslot on that frequency. [AGCH - Access Grant Channel]
  3. The MS sends a call setup request through SDCCH, to the MSC/VLR. [SDCCH - slow dedicated control channel]. Over SDCCH, all signaling takes place. This includes: marking the MS status as active in the VLR
  4. Then comes Authentication Procedure which includes Ciphering (The channel is ciphered so as to protect the call), Equipment Identification, etc.
  5. The MSC/VLR instructs the BSC to allocate an Idle TCH (this message contains the dialed digits and other information needed for call establishment). The BTS and MS are told to tune to the TCH. 
  6. The MSC allocates a voice circuit on one the digital trunks between the MSC and the BSS.
  7. MSC informs the BSS about the allocated voice circuit. The call is also switched from signaling to voice.
  8. The BSS notifies the Mobile about the changeover to voice mode.
  9. The MSC routes the call and sends the call towards the called subscriber.
  10. The PSTN indicates to the MSC that it has received all the digits and the called subscriber is being rung.
  11. The MSC informs the mobile that the called subscriber is being alerted via a ring.
  12. The called subscriber answers the call.

(GSM) Mobile to Mobile Call Flow, Within Same MSC/BSC
Hi Friends,

Here I tried to explain very basic call flow from mobile to mobile.

To make it simple following assumptions have been taken. A) Call is in same MSC and BSC. B) No Authentication, C)No Ciphering , D) Messages on Ater and Air interface are not consider, etc.



Call Flow Mesage Details:-
  1. CM Service Request – Message contains Global Cell Identity, Kind of Service required by subscriber e.g Voice, SMS, Fax, USSD. Mobile Identity e.g TMSI/IMSI.
  2. CM Service Accept – Message is in reponse of CM Service Request.
  3. Set Up - Message contains dailed number from Mobile A (i.e Mob B number) and speech Codec.
  4. Send Routing Info-Request (SRI) - After analysis of dialed numbers received from A in set up message, MSC recognises its own MSISDN series and send SRI to HLR to get the Mobile station roaming number(MSRN). This messge contains B MSISDN, Interrogation type e.g Basic Call etc.
  5. Assignment Request - Message is to seize a channel for voice call for Mob A between MSC and BSC. Message contains Circuit Identification Code(CIC).
  6. Assignment Complete - Acceptance from BSC end that same CIC has been seized.
  7. Provide Roaming Number Request - HLR checks in its database to which VLR, Mob B is registered & ask for roaming number from that VLR. Message contains IMSI, MSISDN, VLR ID of Mob B.
  8. Provide Roaming Number Response - Message is response of roaming no. request and contains roaming number of Mob B. This message is for HLR. In this VLR checks its database & allocate one free MSRN from its MSRN pool for B number.
  9. Send Routing Info-Response - In this HLR forward same roaming number which it receives in above message to MSC.
  10. Paging Request - In this VLR checks the MSRN recieved from HLR & search which MSISDN is against that MSRN, now MSC checks the VLR database of that MSISDN to get the LAC & TMSI/IMSI of that MSISDN (Mob B) & initiates the paging request message to that particular LAC on the basis of TMSI/IMSI in that BSC. BSC now page to that LAC on the basis of IMSI/TMSI of Mob B. Message contains LAC, IMSI/TMSI, DPC of BSC.
  11. Paging Response - Mob B response to that paging with GCI (Global Cell Identity) to BSC that inturn forwarded to MSC.
  12. Assignment Request - Message is to seize a channel for voice call for Mob B between MSC and BSC. Message contains Circuit Identification Code(CIC).
  13. Assignment Complete - Acceptance from BSC end that same CIC has been seized.
  14. Set Up - It is used to display Mob A number on Mob B handset.
  15. Alert - This message indicates Mob A that Mob B is connected & its ringing. The Ring Back Tone is send from MSC to Mob A.
  16. Connect - Mob B answers the call & connect message from Mob B is send to MSC, inturn MSC sends connect message to Mob A indiacting that phone has been answered & connects those 2 voice channels which were seized during the assignment complete message.
  17. Connect Acknowledge - To acknowledge the connection.

BASIC ISUP CALL FLOW



  • Initial Address Message (IAM) — First message sent to inform the partner switch (here MSC2) that a call has to be established on the CIC contained in the message. Contains the called and calling number, type of service (speech or data) and many more optional parameters.

  • Subsequent Address Message (SAM) — In case the IAM did not contain the full called number, one or more SAMs may follow containing additional digits.

  • Address Complete Message (ACM) — Message returned from the terminating switch (here MSC2) when the subscriber is reached and the phone starts ringing.

  • Answer Message (ANM) — Sent when the subscriber picks up the phone. Normally charging starts at this moment.

  • Release (REL) — Sent to clear the call when a subscriber goes on hook.

  • Release complete (RLC) — Acknowledgement of the release – the timeslot is idle afterwards and can be used again. This is also sent (without a preceding Release message) if the terminating switch determines that the call cannot be completed. The terminating switch also sends a Cause Value to explain the reason for the failure, e.g., "User busy".