Abstract:
Methods, systems, and computer readable media for handset assisted resource utilization verification are disclosed. According to one method, first usage information is obtained from a mobile handset in response to the mobile handset being operated at a first time. Second usage information is obtained from the mobile handset in response to the mobile handset being operated at a second time. Based on the first and second usage information, an indication of network resource utilization is determined for the mobile handset between the first and second times. The first and second usage information may be obtained by polling the handset by sending query messages for the usage information to the handset or by triggering the handset to send the usage information in response to the expiration of a handset-implemented timer.

Description:
RELATED APPLICATIONS 
     This application claims the benefit of U.S. Provisional Patent Application Ser. No. 61/034,762 filed Mar. 7, 2008; the disclosure of which is incorporated herein by reference in its entirety. 
    
    
     TECHNICAL FIELD 
     The subject matter described herein relates to resource utilization by mobile handsets in mobile communications networks. More specifically, the subject matter relates to methods, systems, and computer readable media for handset assisted resource utilization verification. 
     BACKGROUND 
     In mobile communications networks, information concerning mobile resource usage is typically maintained by mobile handsets, home-network nodes, visited-network nodes, and billing nodes using a variety of methods. For example, mobile handsets and/or network nodes may maintain information, such as location information, network identification information, quality of service (QoS) information, and resource usage information in various databases, applications, and messages. Examples of such information may include the identity of the serving network operator, number of airtime minutes used, number of SMS messages sent or received, total data sent or received, and so on. 
     One problem associated with conventional mobile networks is that resource utilization information for roaming subscribers is not easily obtainable by home network operators. It may be desirable for home networks to monitor resource utilization by mobile subscribers, particularly when roaming, in order to ensure proper billing by roaming network providers. More generally, there exists a need for billing verification by mobile network operators. 
     Accordingly, in light of these difficulties, a need exists for improved methods and systems for verifying resource utilization in mobile communications networks. 
     SUMMARY 
     Methods, systems, and computer readable media for handset assisted resource utilization verification are disclosed. According to one method, first usage information is obtained from a mobile handset in response to the mobile handset being operated at a first time. Second usage information is obtained from the mobile handset in response to the mobile handset being operated at a second time. Based on the first and second usage information, an indication of network resource utilization is determined for the mobile handset between the first and second times. The first and second usage information may be obtained by polling the handset by sending query messages for the usage information to the handset or by triggering the handset to send the usage information in response to the expiration of a handset-implemented timer. 
     A system for determining an indication of network resource utilization by a mobile handset is also disclosed. The system includes a signaling node for operating in a mobile communications network and including a resource utilization verification module. The resource utilization verification module is configured to obtain first usage information from a mobile handset in response to the mobile handset being operated at a first time and to obtain second usage information from the mobile handset in response to the mobile handset being operated at a second time. A billing verification application determines, based on the first and second usage information, an indication of network resource utilization by the mobile handset between the first and second times. 
     The subject matter described herein for handset assisted resource utilization verification may be implemented using a computer program product comprising computer executable instructions embodied in a computer readable medium that when executed by the processor of a computer control the computer to perform steps. Exemplary computer readable media suitable for implementing the subject matter described herein includes disk memory devices, programmable logic devices, and application specific integrated circuits. In one implementation, the computer readable medium may include a memory accessible by a processor. The memory may include instructions executable by the processor for implementing any of the methods for handset assisted resource utilization verification described herein. In addition, a computer readable medium that implements the subject matter described herein may be distributed across multiple physical devices and/or computing platforms. 
     In one implementation, the subject matter described herein may be implemented by a particular machine, such as a computer programmed as described herein to implement the steps for handset assisted resource utilization verification. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The subject matter described herein will now be explained with reference to the accompanying drawings of which: 
         FIG. 1  is a network diagram of exemplary GSM networks for implementing handset assisted resource utilization verification according to an embodiment of the subject matter described herein; 
         FIG. 2  is a flow chart of an exemplary process for handset assisted resource utilization verification according to an embodiment of the subject matter described herein; 
         FIG. 3  is a table of exemplary roaming verification data suitable for verifying handset resource utilization according to an embodiment of the subject matter described herein; 
         FIG. 4  is a table of resource utilization verification data that may be generated by a resource utilization verification module according to an embodiment of the subject matter described herein; 
         FIG. 5  is an exemplary USSD message format for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein; 
         FIG. 6  is a block diagram illustrating an exemplary internal architecture of a mobile device suitable for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein; 
         FIG. 7  is a network diagram of exemplary GSM networks suitable for implementing handset assisted resource utilization verification according to an embodiment of the subject matter described herein; 
         FIG. 8  is a table of exemplary roaming verification data suitable for verifying handset resource utilization according to an embodiment of the subject matter described herein; and 
         FIG. 9  is a table illustrating exemplary resource utilization verification data that may be generated by a resource utilization verification module according to an embodiment of the subject matter described herein. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  is a network diagram of an exemplary mobile communications network suitable for implementing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Referring to  FIG. 1 , a mobile subscriber may be associated with a home network yet may be currently located in a different, visited mobile network (i.e., he is roaming). In order to provide an indication of resource utilization by the roaming subscriber to his home network, his roaming handset may assist in providing resource usage information that may be verified by the home network operator. In one embodiment, a resource utilization verification (RUV) module may be located in the home network and request (e.g., query) resource utilization information from the roaming handset based on a pre-configured trigger condition being met. For example, when the roaming subscriber moves between networks, cells, towers, etc., the handset may automatically send update location messages to a home location register (HLR) in order to provide current location information to the home network. These update location messages may then be intercepted by an RUV module located at, for example, a signal transfer point (STP) or other intermediate node located between the subscriber&#39;s handset and the HLR. Intercepting the update location may then trigger the RUV module to request first resource usage data from the subscriber. As the subscriber continues roaming, additional update location message may be generated and used to trigger additional resource usage data requests. 
     It is appreciated that in addition to home and visited GSM networks shown in  FIG. 1 , other network types may also be used for performing handset assisted resource utilization verification without departing from the scope of the subject matter described herein. Other suitable wireless networks may include American National Standards Institute (ANSI) interim standard (IS)-41, Internet multimedia subsystem (IMS), WiFi, WiMAX, and next generation network (NGN) networks. Returning to the GSM embodiment shown in  FIG. 1 , visited network  100  and home network  102  may be separate mobile communications networks operated by different mobile network operators (MNOs), such as Sprint, T-Mobile, etc. Roaming mobile subscriber (MS)  104  may be associated with home network  102  but may be currently located in visited network  100 . For example, roaming MS  104  may be connected to visited base station (BSS)  106  and visited mobile switching center (MSC)/visited location register (VLR)  108 . 
     In  FIG. 1 , when roaming MS  104  changes networks, cells, and/or status, a mobile application part (MAP) UPDATE_LOCATION message may be generated by visited MSC/VLR  108  and sent to home network  102 . For example, UPDATE_LOCATION message  110  may be generated in response to roaming MS  104  entering visited network  100 , connecting to BSS  106 , and/or becoming activated. UPDATE_LOCATION message  110  may then be used to trigger a first request for first resource usage information from roaming handset  104 . The format of UPDATE_LOCATION message  110  may be specified in 3GPP TS 09.02 (for MAP for GSM prior to Release 4) and in 3GPP TS 29.002 (for MAP for UMTS 3G and GSM Release 99 and later) which are incorporated herein by reference in their entireties. For example, UPDATE_LOCATION message  110  may include an international mobile subscriber identity (IMSI), MSC address, VLR number, home location register (HLR) number, and an invoke identifier for identifying the current location of roaming subscriber  104  within visited network  100 . 
     UPDATE_LOCATION message  110  may be transmitted from visited MSC/VLR  108  located in visited network  100  to HLR  112  located in home network  102 . However, before UPDATE_LOCATION message  110  is received by HLR  112 , RUV module  114  may intercept UPDATE_LOCATION message  110  and extract location information necessary for locating roaming MS  104  in order to formulate a request for first resource usage information associated with MS  104 . Subsequent UPDATE_LOCATION messages may trigger additional requests for updated handset resource usage information for later points in time. In this way, resource usage information may be obtained as MS  104  roams that may be verified by home network  102 . 
     After extracting location information necessary to create a resource usage request message, UPDATE_LOCATION message  110  may be forwarded to HLR  112  for normal processing. In the embodiment shown in  FIG. 1 , RUV module  114  may be co-located with a STP  116  in order to intercept UPDATE_LOCATION messages intended for HLR  112 . However, it is appreciated that in other embodiments RUV module  114  may be co-located with HLR  112 , located at a session border controller (SBC) (not shown), or at any other suitable, dedicated or not, communications network node without departing from the scope of the subject matter described herein. 
     In an alternative, but related, embodiment, rather than triggering generation of a resource usage request based on interception of UPDATE_LOCATION message  110 , RUV module  114  may be configured to request resource usage information from roaming MS  104  after intercepting an INSERT_SUBSCRIBER_DATA message. For example, RUV module  114  may intercept MAP INSERT_SUBSCRIBER_DATA message  118  that is automatically returned by HLR  112  in response to receiving UPDATE_LOCATION message  110 . Conventionally, INSERT_SUBSCRIBER_DATA message  118  is used by HLR  112  for updating VLR  108  with subscriber data when, for example, a general packet radio service (GPRS) subscription has changed, a network access mode has changed, or the subscriber has changed data concerning one or more supplementary services. Like other MAP messages, INSERT_SUBSCRIBER_DATA message  118  is specified in 3GPP TS 09.02 and 3GPP TS 29.002, which are incorporated by reference herein in their entireties. After intercepting INSERT_SUBSCRIBER_DATA message  118 , RUV module  114  may extract location information used for locating roaming MS  104  and generating a subscriber resource usage request, the details of which will now be described in greater detail below. 
     One method for obtaining resource usage information from roaming MS  104  includes querying roaming MS  104  using an unstructured supplementary service data (USSD) REQUEST message requesting usage information from roaming MS  104  and receiving a USSD RESPONSE message in return. For example, RUV module  114  may generate and send USSD REQUEST message  120  requesting first resource usage information from handset  104  in response to one of the trigger conditions described above (e.g., intercepting UPDATE_LOCATION message and/or INSERT_SUBSCRIBER_DATA message). Roaming MS  104  may then return USSD RESPONSE message  122  containing first resource usage information to RUV module  114 . USSD RESPONSE message  122  may include first handset usage information such as a number of airtime minutes used, number of SMS messages sent, and/or number of SMS messages received. 
     At a second, later, point in time, such as when roaming MS  104  next changes networks, cells, and/or status, a second UPDATE_LOCATION message may be generated by visited MSC/VLR  108  and transmitted to home network  102 . For example, a second UPDATE_LOCATION message (not shown) may be generated in response to roaming MS  104  entering visited network  100 , connecting to BSS  106 , and/or becoming activated. Similar to first USSD REQUEST message  120 , second USSD REQUEST message (not shown) may request second resource usage data from roaming MS  104 . Also like first USSD RESPONSE message  120 , second USSD RESPONSE message (not shown) may include first handset usage information such as a number of airtime minutes used, a number of SMS messages sent, and/or a number of SMS messages received. Once at least two USSD RESPONSE messages are received by RUV module  114 , RUV module  114  may extract the first and second handset usage information from the first and second USSD RESPONSE messages and calculate an indication of network resource utilization by the mobile handset between the first and second times. This indication of network resource utilization may then be included in an RUV CDR  704  and forwarded to NOC/Billing office  126  for verification. 
     In order to respond to USSD REQUEST messages, such as USSD REQUEST message  120 , a USSD application may reside on roaming MS  104 . The USSD application may be configured to automatically respond to valid USSD requests without requiring user intervention. In addition to the network-based trigger conditions described above (e.g., intercepting UPDATE_LOCATION message  110  or INSERT_SUBSCRIBER_DATA message  118 ), time-based trigger conditions may also be used to initiate generation of USSD REQUEST message  120 . Time-based trigger conditions may include the elapsing of a preconfigured amount of time between queries and/or polling roaming MS  104  at preconfigured intervals, such as every three minutes. Polling intervals may also be shortened if a network operator wishes to obtain finer grain usage information. 
     Although RUV module  114  is particularly well suited to verify network resource utilization when a handset is roaming, RUV module  114  may also be used to verify network utilization between any two times desired by a network operator, whether handset  104  roams between different operator networks between the two times, between cells within the same home or visited network between the two times, or doesn&#39;t change locations at all. For example, any time handset  104  is activated, a registration message may be generated. The registration message can be used to trigger querying of the handset to obtain usage data, such as airtime usage data. 
       FIG. 2  is a flow chart of an exemplary process for updating location information for a roaming subscriber and requesting current usage information for handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Referring to  FIG. 2 , in step  200 , a MAP message is received. For example, MAP UPDATE_LOCATION message  110  may be received by RUV module  114 . 
     In step  202 , the MAP message is copied. For example, MAP message  110  may be copied rather than processed directly in order to limit any slowdown in the update location procedure associated with using information contained in the message for resource utilization verification purposes. 
     In step  204 , it is determined whether the message is a MAP UPDATE_LOCATION message. If so, control proceeds to step  206  where it is determined whether the MSC ID included in the UPDATE_LOCATION message is foreign (i.e., associated with a visited network). If not, control proceeds to step  208  where a USSD REQUEST message may be generated. 
     As mentioned above, in step  206 , it is determined whether the MSC ID included in a received UPDATE_LOCATION message is foreign. For example, MSC ID associated with MSC  108  belongs to visited network  100  and is therefore foreign to home network  102 . 
     In step  210 , location (or other non-usage) information may be extracted from the UPDATE_LOCATION message and stored in a roaming utilization verification database. After updating the roaming utilization verification database, control proceeds to step  208 . 
     As mentioned above, in step  208  a USSD REQUEST message may be generated for requesting usage information from a roaming MS. For example, USSD REQUEST message  120  may request a number of airtime minutes used, a number of SMS messages sent, and/or a number of SMS messages received from roaming MS  104 . 
     Finally, in step  212 , the USSD REQUEST message generated in step  210  may be routed to the roaming subscriber, where the requested resource usage information may be obtained and returned to RUV module  114  in a USSD RESPONSE message for verification. 
       FIG. 3  is a table of exemplary roaming verification data that may be inputted into a resource utilization verification module for handset assisted resource utilization verification according to an embodiment of the subject matter described herein. The information shown in  FIG. 3  may be originally included in and subsequently extracted from, for example, UPDATE_LOCATION message  110 , INSERT_SUBSCRIBER_DATA message  118 , and/or USSD RESPONSE message  122 . Referring to  FIG. 3 , columns  300 - 308  may include location or other non-usage data obtained from UPDATE_LOCATION message  110  and INSERT_SUBSCRIBER_DATA message  118 , while columns  310 - 314  may include resource usage information obtained from USSD RESPONSE message  122 . 
     Table  122  may be sorted in chronological order from oldest to most recent. For example, column  300  may include an MSC service begin time indicating when roaming MS  104  connected to visited MSC/VLR  108 . Similarly, column  302  may include an MSC service end time indicating when roaming MS  104  disconnected from visited MSC/VLR  108 . It is appreciated that each MSC service end time listed in column  302  will typically also be listed in column  300  as the MSC service begin time for the next entry because, as roaming MS  104  moves between different network and/or between different cells within the same network, roaming MS  104  is always associated with a serving MSC/VLR. In other words, unless MS  104  is not connected to any network (e.g., lack of coverage), then there are no gaps in time during which he is not connected to an MSC/VLR. 
     Column  304  includes a subscriber international mobile subscriber identity (IMSI) number. For example, column  304  includes IMSI_x associated with the subscriber during all monitored time periods. Column  306  includes a subscriber mobile subscriber ISDN number (MSISDN). However, it is appreciated that if the MSISDN is not required by NOC/Billing center  126 , then it may be sufficient to intercept/examine only UPDATE_LOCATION messages in order to obtain the desired information for resource utilization verification. 
     Column  310  includes a beginning and ending airtime minutes usage value indicating the total number of voice minutes consumed during a predetermined billing period (e.g., a month). Thus, according to column  310 , at Time1 roaming MS  104  used 543 minutes of airtime since the end of the last billing cycle and, at Time2 used 578 minutes of airtime from the same reference point. 
     Column  312  includes a beginning and ending count of the total number of simple message service (SMS) messages (i.e., text messages) received by roaming MS  104  at the beginning and ending times located in columns  300  and  302 , respectively. Thus, column  312  indicates that roaming MS  104  has received 76 SMS messages by Time1 and has still only received 76 messages by Time 2. 
     Similarly, column  314  includes a beginning and ending count of the total number of SMS messages sent by roaming MS  104  at the beginning and ending times located in columns  300  and  302 , respectively. Thus, column  314  indicates that roaming MS  104  has sent 233 SMS messages by Time1 and sent 236 messages by Time 2. It is appreciated that in addition to the SMS message counts shown in columns  312  and  314  of  FIG. 3 , counts for other message types may also be stored in table  122  without departing from the scope of the subject matter described herein. These messages types may include multimedia message service (MMS) messages, USSD messages, instant messages, HTTP messages, or any other type of message traffic for which network usage charges may be applied. 
       FIG. 4  is a table of resource utilization data that may be contained in an exemplary RUV message outputted by a resource utilization verification module for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Referring to  FIG. 4 , columns  400  and  402  may include MSC service begin and end times, respectively. These may be associated with a subscriber IMSI in column  404 , a subscriber MSISN in column  406 , a serving MSC ID/VLR ID in column  408 , and a roaming network operator in column  410 . Beginning in column  412 , information may be stored resulting from a calculation based on two or more data points included in, for example, a first and second USSD RESPONSE messages. In the embodiment shown in  FIG. 4 , the difference between the beginning and ending amount of used airtime minutes may be calculated for determining total airtime usage between Time1 and Time2. Referring to column  310 , which indicates that the beginning number of airtime minutes used is 543 and the ending number of airtime minutes used is 578, the difference between these values may be 35 minutes, which is stored in column  412 . Similarly, the difference between the beginning and ending number of SMS messages received included in column  312  (i.e., 76/76) may be calculated in order to determine a total number of SMS messages received between Time1 and Time2 is 0 messages, which is stored in column  414 . Finally, the difference between the beginning number of SMS messages sent at Time1 (i.e., 233) and the ending number of SMS messages sent at Time2 (i.e., 236) may be calculated in order to determine that the total number of SMS messages sent between Time1 and Time2 is 3 messages, which may be stored in column  416 . 
       FIG. 5  is an exemplary USSD message format for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Exemplary USSD message format  122  may be used for both REQUEST and RESPONSE type messages. In contrast to SMS, USSD is a session oriented service used for exchanging information where USSD functionality will be the same for all mobile subscribers, even while roaming, because USSD messages are always routed back to the home location register. A USSD message can be up to 182 alphanumeric characters in length and is compatible with all GSM handsets of Phase II or later. Additionally, the transmission of mobile- and network-originated USSD messages is described in greater detail in USSD standards document European Telecommunications Standards Institute (ETSI) GSM Technical Specification 03.90 Version 5.0.0: December 1996, the content of which are incorporated by reference herein in its entirety. For example, as specified in GSM Technical Specification 03.90 cited above, USSD Phase 2 supports network-initiated operation (e.g., both push and pull operations), MAP Phase 2 and MAP Phase 2+ specifications support multiple USSD commands, such as MAP_PROCESS_UNSTRUCTURED_SS_REQUEST, MAP_UNSTRUCTURED_SS_REQUEST, and MAP_UNSTRUCTURED_SS_NOTIFY messages. It is also appreciated that message types other than USSD may be used without departing from the scope of the subject matter described herein. These may include SMMS messages, SIP messages, SOAP messages, or another type of messages that could be used to trigger the handset to send usage information. 
     Referring to  FIG. 5 , the first byte of message  122  may include various header information used for routing and processing the message. For example, octet  500  may include an operation code (OP code) for indicating the operation requested by the message. For example, for resource utilization verification, an OP code that indicates to the handset that the USSD message is a USSD RUV query may be used. Octet  502  may include a sequence tag for indicating the sequence number of the USSD message and octet  504  may include a sequence tag length for indicating the length of the sequence tag. Similarly, octets  506  and  508  may include a parameter tag and a parameter length tag, respectively, for storing a parameter and its length. Octet  510  may include a data coding scheme for indicating the encoding used for the payload. A second parameter tag and parameter tag length may be included in octets  512  and  514  for storing another parameter and its length. Finally, octet  516  may include a handset usage data payload. The handset usage data payload may include any and/or all of the information shown in  FIG. 3  such as airtime usage, call log data, SMS log data, LAC/Cell ID, and so on. According to one embodiment, handset usage data payload  516  may be encrypted using any number of well-known encryption techniques. Such encryption may prevent unethical mobile virtual roaming network operators (MVNOs) from intercepting and tampering with usage data provided by a roaming subscriber&#39;s handset. 
       FIG. 6  is a block diagram illustrating an internal architecture of an exemplary mobile device for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Referring to  FIG. 6 , roaming MS  104  may be a GSM device and may therefore include a GSM transmitter  600  and GSM receiver  602  for communicating wirelessly with a GSM base station. GSM transmitter  600  and receiver  602  may be associated with a USSD application handler  604  for handling USSD sessions (i.e., REQUEST and RESPONSE message exchanges) associated with obtaining handset usage information. For example, USSD application handler  604  may receive USSD queries and pass the payloads to roaming verification application  606 . Roaming verification application  606  may generate response data for the USSD queries and pass the response data to USSD application handler  606 . USSD application handler  606  may package the response data in a USSD response message and pass the response message to GSM xmit application  600 . GSM xmit application  600  may forward the response message to the requesting RUV application. 
       FIG. 7  is a network diagram of exemplary home and visited GSM networks suitable for implementing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Referring to  FIG. 7 , roaming MS  104  may be associated with home network  102  but may be currently located in visited mobile network  100 . Roaming MS  104  may be configured with a roaming verification application, such as roaming verification application  606 , for automatically sending handset usage data to RUV module  114 . For example, USSD message  702  may be automatically transmitted from roaming MS  104  to BSS  106  to visited MSC/VLR  108  and then to RUV module  114  in response to certain trigger conditions without requiring a query/response like shown in  FIG. 1 . However, like the configuration of  FIG. 1 , in the embodiment shown in  FIG. 7 , RUV module  114  may be co-located with signal transfer point (STP)  116  for purposes of illustration. 
     Referring to  FIG. 7 , when roaming MS  104  changes networks, cells, and/or status, UPDATE_LOCATION_REQUEST message  700  may be automatically generated and transmitted to home network  102 . For example, UPDATE_LOCATION message  110  may be generated in response to roaming MS  104  entering visited network  100 , connecting to BSS  106 , and/or being activated. However, in contrast to the query/response embodiment shown in  FIG. 1 , a dedicated resource verification application may automatically send usage information to RUV module  144  whenever a pre-configured trigger condition is met (e.g., UPDATE_LOCATION_REQUEST message  700  is generated). Similar to USSD RESPONSE message  122  described above, USSD message  702  may include first handset usage information such as IMSI, MSISDN, roaming network ID, LAC, and a last cell ID. 
     Subsequent USSD messages may be automatically generated and sent in a manner similar to that described above with and include updated handset resource usage information for later points in time. For example, a second USSD message (not shown) may automatically be generated in response to generating a second UPDATE_LOCATION_REQUEST message (not shown) and which includes second usage data for roaming MS  104 . Once two USSD messages are received by RUV module  114 , RUV module  114  may extract the first and second handset usage information from the first and second messages and calculate an indication of network resource utilization by the mobile handset between the first and second times. This indication of network resource utilization may be included in an RUV CDR  704  and forwarded to NOC/Billing office  126  for verification. NOC/billing office  127  may include a billing verification application  127  that uses the resource utilization data obtained from the handset for billing verification purposes. For example, billing verification application  127  may compare resource utilization data received from the handset with usage charges received from another network operator to determine whether the charges are accurate. 
     By automatically sending resource usage information from handset  104  without requiring that RUV module  114  send usage data queries to the handset, the processing burden on RUV module  114  may be reduced. Additionally, because it is not necessary for RUV module  114  to intercept, copy, and extract information from UPDATE_LOCATION and/or INSERT_SUBSCRIBER_DATA messages, the programming/operation of RUV module  114  may be simplified. 
       FIG. 8  is a table of exemplary roaming verification data that may be received by a resource utilization verification module for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. As shown in  FIG. 8 , Table  122  may be sorted in chronological order from oldest to most recent. Referring to table  122 , column  800  may include a location area code (LAC) service begin time indicating when roaming MS  104  changes location areas. In many cellular networks, the served area of the network may be divided into location areas, each of which may be comprised of one or more radio cells. Further, each location area is typically given a locally-/network-unique number (i.e., the LAC) used to identify the location area of a mobile subscriber. The LAC may be necessary to address the subscriber in the case of an incoming call and may form part of the larger location area identifier (LAI), which is an internationally unique location identifier. 
     Relatedly, column  802  may include a LAC service end time indicating when roaming MS  104  changes location areas. It is appreciated that each LAC service end time listed in column  802  will typically also be listed in column  800  as the LAC service begin time for the next entry. Column  804  includes a last Cell identifier/LAC indicating the most recent LAC/Cell ID associated with the subscriber. Column  806  includes a subscriber IMSI number that uniquely identifies all GSM/UMTS mobile phone users. Column  808  includes a subscriber MSISDN uniquely identifying a subscription in a GSM or UMTS mobile network (e.g., MSISDN_x). Column  810  includes a serving network operator ID. For example, between Time1 and Time2 and between Time3 until now, roaming MS  104  was served by T-Mobile. Yet between Time2 and Time3, roaming MS  104  was served by its home network operator. 
     Column  812  includes a beginning and ending airtime minutes usage value indicating the total number of voice minutes consumed during a predetermined billing period (e.g., a month). Thus, according to column  812 , at Time1 roaming MS  104  had used 543 minutes of airtime since the end of the last billing cycle and, at Time2 had used 578 minutes of airtime from the same reference point. 
     Column  814  includes a beginning and ending count of the total number of SMS messages received by roaming MS  104  at the beginning and ending times located in columns  800  and  802 , respectively. Thus, column  814  indicates that roaming MS  104  has received 76 SMS messages by Time1 and has still only received 76 messages by Time 2. 
     Similarly, column  816  includes a beginning and ending count of the total number of SMS messages sent by roaming MS  104  at the beginning and ending times located in columns  800  and  802 , respectively. Thus, column  816  indicates that roaming MS  104  sent 233 SMS messages by Time1 and sent 236 messages by Time 2. It is appreciated that in addition to the SMS message counts shown in columns  814  and  816  of  FIG. 8 , counts for other message types may also be stored in table  702  without departing from the scope of the subject matter described herein. 
       FIG. 9  is a table illustrating exemplary resource utilization data that may be contained in a resource utilization verification message for performing handset assisted resource utilization verification according to an embodiment of the subject matter described herein. Referring to  FIG. 9 , columns  900  and  902  may include MSC service begin and end times, respectively. These may be associated with a subscriber IMSI in column  904 , a subscriber MSISN in column  906 , a serving MSC ID/VLR ID in column  908 , and a roaming network operator in column  910 . Beginning in column  912 , information may be stored that results from a calculation based on two data points included in, for example, a pair of USSD RESPONSE messages. For example, referring to  FIG. 4 , the difference between the beginning and ending amount of used airtime minutes may be calculated for determining total airtime usage between Time1 and Time2. Column  812  indicates that the beginning number of airtime minutes used is 543 and the ending number of airtime minutes used is 578, and therefore the difference between these values is 35 minutes, which is stored in column  912 . Similarly, the difference between the beginning and ending number of SMS messages received included in column  814  (i.e., 76/76) may be calculated to determine a total number of SMS messages received between Time1 and Time2 of 0 messages, which is stored in column  914 . Finally, the difference between the beginning number of SMS messages sent at Time1 (i.e., 233) and the ending number of SMS messages sent at Time2 (i.e., 236) may be calculated to determine that the total number of SMS messages sent between Time1 and Time2 is 3 messages, which is stored in column  916 . 
     Although some of the examples above relate to triggering polling of a mobile handset based on GSM mobility management messages involving the handset, the subject matter described herein is not limited to using GSM mobility management messages to trigger the polling. For example, in a network where mobile devices use session initiation protocol (SIP) signaling, polling of the handset to obtain usage information may be triggered based on an IP multimedia subsystem (IMS) message, such as a SIP register message. 
     It will be understood that various details of the subject matter described herein may be changed without departing from the scope of the subject matter described herein. Furthermore, the foregoing description is for the purpose of illustration only, and not for the purpose of limitation, as the subject matter described herein is defined by the claims as set forth hereinafter.