How international roaming works

In this article, I will talk about how the international roaming service works and how the call and SMS go when roaming. Deciphering abbreviations can be found in this article.

About service

Roaming is a service that allows subscribers to make calls, use the data transfer service, use other services provided by the operator, being in the networks of other operators, including foreign ones, with which the subscriber's operator has a roaming agreement. At the same time, the subscriber's phone number remains unchanged.
National roaming g is an opportunity to use the services of a “foreign” network within one country.
International roaming is an opportunity to use the services of a mobile network of a foreign operator with which there is an agreement. This article will describe exactly this type of roaming.


The first action that occurs when you try to register on the network of a foreign partner is to check the subscriber for “validity”. This is done by the VLR / MSC, in whose area the MS is located. After the guest VLR / MSC receives the “Location Update” command from the MS, knowing the subscriber’s IMSI, sends a “Send Authentication Info” message to the HLR via the MAP; he, in turn, checks that the MS and the received IMSI are valid. If the verification is successful and the subscriber is "valid", the HLR sends the IMSI to the AUC. AUC generates a triplet (SRES, RAND, Kc) and sends it to the HLR, then the HLR sends this data to the VLR / MSC, which serves the MS. After the VLR / MSC has received this data, the VLR / MSC sends a RAND to the MS. Upon receiving the RAND request, MS substitutes the received RAND and Ki (recorded on the SIM card) and calculates the SRES, which it sends to the VLR / MSC. If SRES,

Update location

After VLC / MSC has authorized MS, it sends an “Update Location” message to the home HLR. This message is sent so that the HRL knows which VLR / MSC is in range. The “Update Location” message contains the IMSI of the subscriber and the GT VLR / MSC. HLR, having received the data, will check whether roaming service is connected. If the subscriber does not have a ban, then the HLR will delete the subscriber profile from the VLR / MSC where the subscriber was registered before this procedure by sending the message “Cancel Location”. The HLR also sends a subscriber profile to the VLC / MSC requesting this information using the “Insert Subscriber Data” message. After the VLR / MSC receives this information, the “Update location” will be completed, and the HLR will store in its subscriber profile the address of the VLR / MSC that requested the Update location. At this point, the “Update Location” is complete.
After these procedures, the subscriber is considered registered in the network, i.e. he can make and receive calls, SMS, use other available services. Let us consider in more detail the procedures for incoming and outgoing calls.

Incoming call

From subscriber A, a call arrives at subscriber B, which is in roaming. Subscriber A dials Subscriber A (MSISDN). If it is a call from the city network, then the IAM message of the ISUP subsystem will go to the GMSC, then the GMSC determines the HLR address based on the received MSISDN and sends the message "sendRoutingInfo" via the MAP protocol to the HLR. HLR, having received MSISND, determines the IMSI of subscriber B, as well as in which VLR / MSC the subscriber is located. Further, the HLR sends a “ProvideRoamingNumber” message to the VLR / MSC using the MAP protocol which contains the IMSI of subscriber B. The “ProvideRoamingNumber” message is used to request a temporary MSRN from the pool of numbers registered on the VLR / MSC. MSRN has the format (GT) of the country where the VLR / MSC serving the subscriber is located. An MSRN is issued at the time the call is established, then falls back into the MSRN number pool.
After the MSRN has been allocated, it is sent to the HLR; The HLR in turn sends this MSRN to the GMSC. The GMSC routes this call on the MSRN to the VLR / MSC serving Subscriber B by sending an IAM message to the ISUP on the dedicated MSRN.

In this article, the paging and call establishment procedure by ISUP will not be considered.

Outgoing call

Subscriber A, while roaming, calls Subscriber B. During an outgoing call, the first thing to do is the Authorization and Update Location procedures described above. First, the VLR / MSC in which subscriber A is registered sends the message “sendRoutingInfo” (which contains the MSISDN of caller B) to the GMSC. The GMSC, in turn, sends the IAM via the ISUP to the MSISDN. If the MSISND belongs to the wired network, then the call goes to the PBX serving the given subscriber number. If the MSISDN belongs to the mobile operator, then the IAM message goes to the GMSC of subscriber B. Next, the GMSC sends a sendRoutingInfo request to the HLR in order to find out the VLR / MSC address serving subscriber B and its IMSI. After the HLR has provided this information, the GMSC sends an IAM to this VLR / MSC.

Outgoing SMS

Subscriber A, while roaming, sends SMS to subscriber B. After the VLR / MSC has received a message from the subscriber, it transmits it through the SCCP provider to the SMSC of the home network via GMSC. SMSC sends the message "sendRoutingInfoForSM" to the HLR of subscriber B, after which the HLR responds with the VLR / MSC address (in whose area there is subscriber B) and IMSI to the SMS center. Next, the SMSC sends a “forwardSM” message to the VLR / MSC of subscriber B.

Incoming SMS

Subscriber A sends SMS to subscriber B, which is in roaming. The principle is similar to that described in the outgoing message. From the SMSC of subscriber A, through the SCCP provider, the message “sendRoutingInfoForSM” is sent to the GMSC, and then to the VLR / MSC, in the zone of which the subscriber B is located. After that, the VLR / MSC answers IMSI with its address. After this procedure, the message “forwardSM” is received from the SMSC of subscriber A. The VLR / MSC, upon receiving this message, attempts to deliver the subscriber's message. If the message is delivered, the VLR / MSC replies “forwardSM END”.

Home Routing
For homerouting, the HLR issues a dummy IMSI and a VLR / MSC address. SMS arrives at the virtual MSC, and then the virtual MSC sends SMS to the real MSC.

Also popular now: