Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR FACILITATING THE EXTENDED USAGE OF RETRANSMISSION CDR FIELD TO IMPROVE DUPLICATE DETECTION MECHANISM AND REDUCE CHARGING DATA LOSS DUE TO INTERNAL ERRORS
Document Type and Number:
WIPO Patent Application WO/2018/178505
Kind Code:
A1
Abstract:
A method, apparatus and computer program product are provided for facilitating usage of a retransmission field of a Charging Data Record (CDR). An exemplary method may comprise generating one or more CDRs, the one or more CDRs comprised of raw charging data, wherein generation of the CDR comprises marking each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and transmitting each of the one or more CDRs to a post-processing system.

Inventors:
ZEVALLOS, Cesar (Haagan Urheilutie 20 B 20, Helsinki, 00320, FI)
Application Number:
FI2017/050228
Publication Date:
October 04, 2018
Filing Date:
March 31, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NOKIA TECHNOLOGIES OY (Karaportti 3, Espoo, 02610, FI)
International Classes:
H04W4/24; G06F11/07; H04L12/14; H04M15/00
Foreign References:
US20020009053A12002-01-24
US20080125082A12008-05-29
US20150189097A12015-07-02
US20140011472A12014-01-09
Other References:
3GPP: "3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Telecommunication management; Charging management; IP Multimedia Subsystem (IMS) charging (Release 14)", 3GPP TS 32.260 V.14.1.0, 17 March 2017 (2017-03-17), XP055544002, Retrieved from the Internet [retrieved on 20170704]
Attorney, Agent or Firm:
NOKIA TECHNOLOGIES OY et al. (Ari Aarnio, IPR DepartmentKarakaari 7, Espoo, 02610, FI)
Download PDF:
Claims:
THAT WHICH IS CLAIMED:

1. A method for facilitating usage of a retransmission field of a Charging Data Record (CDR), the method comprising:

generating one or more CDRs, the one or more CDRs comprised of raw charging data, wherein generation of the CDR comprises:

marking each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and

transmitting each of the one or more CDRs to a post-processing system.

2. The method according to Claim 1 , wherein the one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

3. The method according to Claim 1 or Claim 2, further comprising:

generating, prior to the detection of the internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data and, exclude from composition, the retransmission field.

4. The method according to any of Claims 1 to 3, further comprising: identifying a lack of synchronization during a handover between a previous active node and a new active node due to the internal error; and

determining, immediately or near immediately, to report the potentially duplicate

charging data.

5. The method according to any of Claims 1 to 4, wherein the raw charging data is received via an Rf interface.

6. The method according to any of Claims 1 to 5, wherein generation of the CDR is performed at an EPC Gateway device.

7. A method comprising:

receiving, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate; and

causing a duplicate prevention mechanism to perform a check, for duplicates, of the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate.

8. The method according to Claim 7, wherein the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate.

9. The method according to Claim 7 or Claim 8, wherein a remaining subset of one or more CDRs comprise raw charging data and, exclude from composition, the retransmission field.

10. An apparatus for facilitating usage of a retransmission field of a Charging Data Record (CDR), the apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to:

generate one or more CDRs, the one or more CDRs comprised of raw charging data, wherein the at least one memory and computer program code configured to, with the processor, cause the apparatus to generate the CDR comprises computer program code configured to, with the processor, cause the apparatus to:

mark each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and

transmit each of the one or more CDRs to a post-processing system.

11. An apparatus according to Claim 10, wherein the one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

12. An apparatus according to Claim 10 or Claim 11, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

generate, prior to the detection of the internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data and, exclude from composition, the retransmission field.

13. An apparatus according to any of Claim 10 to 12, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

identify a lack of synchronization during a handover between a previous active node and a new active node due to the internal error; and

determine, immediately or near immediately, to report the potentially duplicate

charging data.

14. An apparatus according to any of Claims 10 to 13, wherein the raw charging data is received via an Rf interface.

15. An apparatus according to any of Claims 10 to 14, wherein generation of the CDR is performed at an EPC Gateway device.

16. An apparatus for facilitating usage of a retransmission field of a Charging Data

Record (CDR), the apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to: receive, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate; and

cause a duplicate prevention mechanism to perform a check, for duplicates, of the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate.

17. An apparatus according to Claim 16, wherein the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate.

18. An apparatus according to Claim 16 or Claim 17, wherein a remaining subset of one or more CDRs comprise raw charging data and, exclude from composition, the retransmission field.

19. A computer program product facilitating usage of a retransmission field of a

Charging Data Record (CDR)comprising a non-transitory computer readable medium having program code portions stored thereon, the program code portions configured, upon execution, to:

generate one or more CDRs, the one or more CDRs comprised of raw charging data, wherein the program code portions configured, upon execution to generate the CDR further comprises program code portions configured, upon execution, to: mark each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and

transmit each of the one or more CDRs to a post-processing system.

20. A computer program product according to Claim 19, wherein the one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

21. A computer program product according to Claim 19 or Claim 20, wherein the program code portions are further configured, upon execution, to

generate, prior to the detection of the internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data and, exclude from composition, the retransmission field.

22. A computer program product according to any of Claims 19 to 21, wherein the program code portions are further configured, upon execution, to:

identify a lack of synchronization during a handover between a previous active node and a new active node due to the internal error; and

determine, immediately or near immediately, to report the potentially duplicate

charging data.

23. A computer program product according to any of Claims 19 to 21, wherein the raw charging data is received via an Rf interface.

24. A computer program product according to any of Claims 19 to 21, wherein

generation of the CDR is performed at an EPC Gateway device.

25. A computer program product comprising a non-transitory computer readable

medium having program code portions stored thereon, the program code portions configured, upon execution, to:

receive, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate; and

cause a duplicate prevention mechanism to perform a check, for duplicates, of the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate.

26. A computer program product according to Claim 25, wherein the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate.

27. A computer program product according to Claim 25 or Claim 26, wherein a

remaining subset of one or more CDRs comprise raw charging data and, exclude from composition, the retransmission field.

Description:
METHOD AND APPARATUS FOR FACILITATING THE EXTENDED USAGE OF RETRANSMISSION CDR FIELD TO IMPROVE DUPLICATE DETECTION MECHANISM AND REDUCE CHARGING DATA LOSS DUE TO INTERNAL

ERRORS TECHNOLOGICAL FILED

[0001] An example embodiment of the present invention relates generally to Wireless Network Standards and, more particularly, to evolved packet core (EPC) Charging, which is described in 3 GPP TS 32.240, 32.251, 32.298. BACKGROUND

[0002] Service providers provide voice and data services to end-users, via user equipment (UE), such as smart phones, laptop or tablet computers, video game systems or the like. Examples may include streaming audio, streaming video, Voice over Internet Protocol (VoIP), online gaming, etc. The data services are managed by a Packet-Switched (PS) core network, which interfaces the UE with one or more external Packet Data Networks (PDN), such as the Internet.

[0003] PS core networks, such as the Evolved Packet Core (EPC), allow end user devices to utilize the above-described voice and data service. UE that are served by a PS core network may subscribe to offline charging. Offline charging refers to a charging method where charging information for network resource usage is collected concurrently with the resource usage. When network elements in the PS core network provide voice or data services, the network elements are configured to report charging events to an Offline Charging System. Numerical limits may be set and/or other types of trigger conditions may be specified, such as described in the 3rd Generation Partnership Project (3 GPP) Technical Specification (TS) 32.251 , hereby incorporated by reference.

[0004] EPC products, often are faced with the problems of "Duplicate Charging" vs "Charging Data Loss". In particular, internal errors may result in potentially duplicate charging data and other errors may result in charging data loss. Conventional systems, where a gateway device is aware that it has lost synchronization, may favour deleting the charging data to duplicate charging. In this regard, areas for improving known and existing systems have been identified. Through applied effort, ingenuity, and innovation, solutions to improve such systems have been realized and are described in connection with embodiments of the present invention. BRIEF OVERVIEW

[0005] The present application is directed to various embodiments facilitating the use a 3GPP field "Retransmission" to provide information to, for example, an offline charging post-processing system (e.g., CGF or Billing System), the information indicative of, for example, internal errors in the EPC Gateway. Additionally or alternatively, the information may further indicate that the reported charging data may be duplicate, triggering the CGF or Billing Systems duplicate prevention mechanisms to check those particular CDRs, thus improving EPC Gateway quality, reducing charging data loss, and preventing duplicate charging error.

BRIEF SUMMARY

[0006] A method, apparatus and computer program product are provided in accordance with an example embodiment for facilitating usage of a retransmission field of a Charging Data Record (CDR).

[0007] In some embodiments, a method for facilitating usage of a retransmission field of a Charging Data Record (CDR) may be provided, the method comprising: generating one or more CDRs, the one or more CDRs comprised of raw charging data, wherein generation of the CDR comprises: marking each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and transmitting each of the one or more CDRs to a post-processing system.

[0008] In some embodiments, the one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

[0009] In some embodiments, the method may comprise generating, prior to the detection of the internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data and, exclude from composition, the retransmission field.

[0010] In some embodiments, the method may comprise identifying a lack of synchronization during a handover between a previous active node and a new active node due to the internal error; and determining, immediately or near immediately, to report the potentially duplicate charging data. In some embodiments, the raw charging data is received via an Rf interface. In some embodiments, generation of the CDR is performed at an EPC Gateway device.

[0011] In some embodiments, a method may be provided, the method comprise receiving, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate; and causing a duplicate prevention mechanism to perform a check, for duplicates, of the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate.

[0012] In some embodiments, the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate. In some embodiments, a remaining subset of one or more CDRs comprise raw charging data and, exclude from composition, the retransmission field.

[0013] In some embodiments, an apparatus for facilitating usage of a retransmission field of a Charging Data Record (CDR), the apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to: generate one or more CDRs, the one or more CDRs comprised of raw charging data, wherein the at least one memory and computer program code configured to, with the processor, cause the apparatus to generate the CDR comprises computer program code configured to, with the processor, cause the apparatus to: mark each of the one or more CDRs with a

retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and transmit each of the one or more CDRs to a post-processing system.

[0014] In some embodiments, wherein the one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

[0015] In some embodiments, the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to: generate, prior to the detection of the internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data and, exclude from composition, the retransmission field.

[0016] In some embodiments, the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to: identify a lack of synchronization during a handover between a previous active node and a new active node due to the internal error; and determine, immediately or near immediately, to report the potentially duplicate charging data. In some embodiments, the raw charging data is received via an Rf interface. In some embodiments, generation of the CDR is performed at an EPC Gateway device.

[0017] In some embodiments, an apparatus for facilitating usage of a retransmission field of a Charging Data Record (CDR) may be provided, the apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to: receive, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate; and cause a duplicate prevention mechanism to perform a check, for duplicates, of the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate.

[0018] In some embodiments, the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate. In some embodiments, a remaining subset of one or more CDRs comprise raw charging data and, exclude from composition, the retransmission field.

[0019] In some embodiments, a computer program product facilitating usage of a retransmission field of a Charging Data Record (CDR) may be provided, the computer program product comprising a non-transitory computer readable medium having program code portions stored thereon, the program code portions configured, upon execution, to: generate one or more CDRs, the one or more CDRs comprised of raw charging data, wherein the program code portions configured, upon execution to generate the CDR further comprises program code portions configured, upon execution, to: mark each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected, the retransmission field configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data; and transmit each of the one or more CDRs to a post-processing system.

[0020] In some embodiments, the one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

[0021] In some embodiments, the program code portions are further configured, upon execution, to generate, prior to the detection of the internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data and, exclude from composition, the retransmission field.

[0022] In some embodiments, the program code portions are further configured, upon execution, to: identify a lack of synchronization during a handover between a previous active node and a new active node due to the internal error; and determine, immediately or near immediately, to report the potentially duplicate charging data. In some embodiments, the raw charging data is received via an Rf interface. In some embodiments, generation of the CDR is performed at an EPC Gateway device.

[0023] In some embodiments, a computer program product may be provided, the computer program product comprising a non-transitory computer readable medium having program code portions stored thereon, the program code portions configured, upon execution, to: receive, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate; and cause a duplicate prevention mechanism to perform a check, for duplicates, of the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate.

[0024] In some embodiments, the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate. In some embodiments, a remaining subset of one or more CDRs comprise raw charging data and, exclude from composition, the retransmission field.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS [0025] Having thus described example embodiments of the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

[0026] Figure 1 is block diagram of a system that may be specifically configured in accordance with an example embodiment of the present invention;

[0027] Figure 2 is a block diagram of an apparatus that may be specifically configured in accordance with an example embodiment of the present invention; and

[0028] Figures 3 and 4 are flowcharts showing exemplary methods of operating an example apparatus in accordance with an embodiment of the present invention. DETAILED DESCRIPTION

[0029] Some embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all, embodiments of the invention are shown. Indeed, various embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like reference numerals refer to like elements throughout. As used herein, the terms "data," "content," "information," and similar terms may be used interchangeably to refer to data capable of being transmitted, received and/or stored in accordance with embodiments of the present invention. Thus, use of any such terms should not be taken to limit the spirit and scope of embodiments of the present invention.

[0030] Additionally, as used herein, the term 'circuitry' refers to (a) hardware-only circuit implementations (e.g., implementations in analog circuitry and/or digital circuitry); (b) combinations of circuits and computer program product(s) comprising software and/or firmware instructions stored on one or more computer readable memories that work together to cause an apparatus to perform one or more functions described herein; and (c) circuits, such as, for example, a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation even if the software or firmware is not physically present. This definition of 'circuitry' applies to all uses of this term herein, including in any claims. As a further example, as used herein, the term 'circuitry' also includes an implementation comprising one or more processors and/or portion(s) thereof and accompanying software and/or firmware. As another example, the term 'circuitry' as used herein also includes, for example, a baseband integrated circuit or applications processor integrated circuit for a mobile phone or a similar integrated circuit in a server, a cellular network device, other network device, and/or other computing device.

[0031] As defined herein, a "computer-readable storage medium," which refers to a non-transitory physical storage medium (e.g., volatile or non-volatile memory device), can be differentiated from a "computer-readable transmission medium," which refers to an electromagnetic signal.

[0032] Example embodiments of the present invention will now be de-scribed more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the invention are shown, indeed, the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein: rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Although the specification may refer to "an", "one", or "some"

embodiment(s) in several locations, this does not necessarily mean that each such reference is to the same embodiment(s), or that the feature only applies to a single embodiment. Single features of different embodiments may also be combined to provide other embodiments. Like reference numerals refer to like elements throughout.

[0033] The present invention is applicable to any user terminal, server, application server, corresponding component, and/or to any communication system or any

combination of different communication systems. The communication system may be a fixed communication system or a wireless communication system or a communication system utilizing both fixed networks and wireless networks. The protocols used the specifications of communication systems, transmitters, user terminals, base stations and access points, especially in wireless communication, develop rapidly. Such development may require extra changes to an embodiment. Therefore, all words and expressions should be interpreted broadly and they are intended to illustrate, not to restrict, the embodiment.

[0034] Embodiments of the present invention may be implemented in various devices and systems, where radio signals may be used to carry data between devices such as handheld and infrastructure communications devices. Examples of the devices comprise user equipment (UE), a mobile phone, a base station (BS), a Node-B (NB), an enhanced NB (eNB), a relay station and a server, for example.

[0035] User equipment (UE) may refer to any user communication device. A term "user equipment" as used herein may refer to any device having a communication capability, such as a wireless mobile terminal, a Personal Data Assistant (PDA), a smart phone, a personal computer (PC), a laptop computer, a desktop computer, etc. For example, the wireless communication terminal may be a TErrestrial Trunked RAdio (TETRA), an Universal Mobile Telecommunications System (UMTS), an LTE, LTE-A or Global System for Mobile Communications / Enhanced Data Rates for GSM Evolution (GSM/EDGE) smart mobile terminal.

System Architecture

[0036] Referring now to Figure 1, which illustrates an example system that supports communications between a plurality of stations 10 and one or more access points 12 (e.g., a high density system scenario where a plurality of access points may be deployed to a geographical area and may be operating on the same frequency channel), each access point may communicate with one or more stations and, in one embodiment, may communicate with a large number of stations, such as 6,000 or more stations. The access points may, in turn, communicate with a network 14. While the access points may communicate via an Long Term Evolution (LTE) or LTE- Advanced (LTE-A) network, other networks may support communications between the access points including those configured in accordance with wideband code division multiple access (W-CDMA), CDMA2000, global system for mobile communications (GSM), general packet radio service (GPRS), the IEEE 802.11 standard including, for example, the IEEE 802.11 ah or 802.1 lac standard or other newer amendments of the standard, wireless local access network (WLAN), Worldwide Interoperability for Microwave Access (WiMAX) protocols, universal mobile

telecommunications systems (UMTS) terrestrial radio access network (UTRAN) and/or the like.

[0037] The access points 12 and the stations 10 may communicate via wireline communications, but most commonly communicate via wireless communications. For example, the access points and the stations may communicate in a sub 1 GHz band as defined by IEEE 802.11 ah standard or in a 5GHz band, which may be defined by, for example, IEEE 802.1 lac standard. The access point may be embodied by any of a variety of network entities, such as an access point, a base station, a Node B, an evolved Node B (eNB), a radio network controller (RNC), a mobile device / a station (e.g., mobile telephones, smart phones, portable digital assistants (PDAs), pagers, laptop computers, tablet computers or any of numerous other hand held or portable communication devices, computation devices, content generation devices, content consumption devices, or combinations thereof), or the like. The stations may also be embodied by a variety of devices, such as sensors, meters or the like. The sensors and meters may be deployed in a variety of different applications including in utility applications to serve as a gas meter, a water meter, a power meter or the like, in environmental and/or agricultural monitoring applications, in industrial process automation applications, in healthcare and fitness applications, in building automation and control applications and/or in temperature sensing applications. Stations that are embodied by sensors or meters may be utilized in some embodiments to backhaul sensor and meter data. Alternatively, the stations may be embodied by mobile terminals or user equipment(s) (UE), such as mobile communication devices, e.g., mobile telephones, smart phones, portable digital assistants (PDAs), pagers, laptop computers, tablet computers or any of numerous other hand held or portable communication devices, computation devices, content generation devices, content consumption devices, or combinations thereof. In an embodiment in which the station is embodied by a mobile terminal, the communication between an access point and the station may serve to extend the range of Wi-Fi or another wireless local area network (WLAN), such as by extending the range of a hotspot, and to offload traffic that otherwise would be carried by a cellular or other network.

[0038] The access point 12 and/or the station 10 may be embodied as or otherwise include an apparatus 20 that is specifically configured to perform the functions of the respective device, as generically represented by the block diagram of Figure 2. While the apparatus may be employed, for example, by an access point or a station, it should be noted that the components, devices or elements described below may not be mandatory and thus some may be omitted in certain embodiments. Additionally, some embodiments may include further or different components, devices or elements beyond those shown and described herein.

Apparatus Architecture

[0039] Regardless of the type of device that embodies the station 10, the station 10 may include or be associated with an apparatus 20 as shown in Figure 2. In this regard, the apparatus may include or otherwise be in communication with a processor 22, a memory device 24, a communication interface 26 and a user interface 28. As such, in some embodiments, although devices or elements are shown as being in communication with each other, hereinafter such devices or elements should be considered to be capable of being embodied within the same device or element and thus, devices or elements shown in communication should be understood to alternatively be portions of the same device or element. [0040] In some embodiments, the processor 22 (and/or co-processors or any other processing circuitry assisting or otherwise associated with the processor) may be in communication with the memory device 24 via a bus for passing information among components of the apparatus. The memory device may include, for example, one or more volatile and/or non-volatile memories. In other words, for example, the memory device may be an electronic storage device (e.g., a computer readable storage medium) comprising gates configured to store data (e.g., bits) that may be retrievable by a machine (e.g., a computing device like the processor). The memory device may be configured to store information, data, content, applications, instructions, or the like for enabling the apparatus 20 to carry out various functions in accordance with an example embodiment of the present invention. For example, the memory device could be configured to buffer input data for processing by the processor. Additionally or alternatively, the memory device could be configured to store instructions for execution by the processor.

[0041] As noted above, the apparatus 20 may be embodied by a computing device 10 configured to employ an example embodiment of the present invention. However, in some embodiments, the apparatus may be embodied as a chip or chip set. In other words, the apparatus may comprise one or more physical packages (e.g., chips) including materials, components and/or wires on a structural assembly (e.g., a baseboard). The structural assembly may provide physical strength, conservation of size, and/or limitation of electrical interaction for component circuitry included thereon. The apparatus may therefore, in some cases, be configured to implement an embodiment of the present invention on a single chip or as a single "system on a chip." As such, in some cases, a chip or chipset may constitute means for performing one or more operations for providing the functionalities described herein.

[0042] The processor 22 may be embodied in a number of different ways. For example, the processor may be embodied as one or more of various hardware processing means such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing element with or without an accompanying DSP, or various other processing circuitry including integrated circuits such as, for example, an ASIC

(application specific integrated circuit), an FPGA (field programmable gate array), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, or the like. As such, in some embodiments, the processor may include one or more processing cores configured to perform independently. A multi-core processor may enable multiprocessing within a single physical package. Additionally or alternatively, the processor may include one or more processors configured in tandem via the bus to enable independent execution of instructions, pipelining and/or multithreading.

[0043] In an example embodiment, the processor 22 may be configured to execute instructions stored in the memory device 24 or otherwise accessible to the processor. Alternatively or additionally, the processor may be configured to execute hard coded functionality. As such, whether configured by hardware or software methods, or by a combination thereof, the processor may represent an entity (e.g., physically embodied in circuitry) capable of performing operations according to an embodiment of the present invention while configured accordingly. Thus, for example, when the processor is embodied as an ASIC, FPGA or the like, the processor may be specifically configured hardware for conducting the operations described herein. Alternatively, as another example, when the processor is embodied as an executor of software instructions, the instructions may specifically configure the processor to perform the algorithms and/or operations described herein when the instructions are executed. However, in some cases, the processor may be a processor of a specific device (e.g., a head mounted display) configured to employ an embodiment of the present invention by further configuration of the processor by instructions for performing the algorithms and/or operations described herein. The processor may include, among other things, a clock, an arithmetic logic unit (ALU) and logic gates configured to support operation of the processor. In one embodiment, the processor may also include user interface circuitry configured to control at least some functions of one or more elements of the user interface 28.

[0044] Meanwhile, the communication interface 26 may be any means such as a device or circuitry embodied in either hardware or a combination of hardware and software that is configured to receive and/or transmit data between the computing device 10 and a server 12. In this regard, the communication interface 26 may include, for example, an antenna (or multiple antennas) and supporting hardware and/or software for enabling

communications wirelessly. Additionally or alternatively, the communication interface may include the circuitry for interacting with the antenna(s) to cause transmission of signals via the antenna(s) or to handle receipt of signals received via the antenna(s). For example, the communications interface may be configured to communicate wirelessly with the head mounted displays 10, such as via Wi-Fi, Bluetooth or other wireless

communications techniques. In some instances, the communication interface may alternatively or also support wired communication. As such, for example, the

communication interface may include a communication modem and/or other hardware/software for supporting communication via cable, digital subscriber line (DSL), universal serial bus (USB) or other mechanisms. For example, the communication interface may be configured to communicate via wired communication with other components of the computing device.

[0045] The user interface 28 may be in communication with the processor 22, such as the user interface circuitry, to receive an indication of a user input and/or to provide an audible, visual, mechanical, or other output to a user. As such, the user interface may include, for example, a keyboard, a mouse, a joystick, a display, a touch screen display, a microphone, a speaker, and/or other input/output mechanisms. In some embodiments, a display may refer to display on a screen, on a wall, on glasses (e.g., near-eye-display), in the air, etc. The user interface may also be in communication with the memory 24 and/or the communication interface 26, such as via a bus.

[0046] Detailed descriptions of networks and systems can be found, for example, in Technical Specifications published by standardization bodies such as 3rd Generation Partnership Proj ect (3 GPP) .

High Level Overview and Definitions

[0047] A method, apparatus and computer program product are provided in accordance with an example embodiment for facilitating usage of a retransmission field of a CDR. That is, various embodiments are provided herein for facilitating the use a 3GPP

"Retransmission" field to provide information to, for example, an offline charging postprocessing system (e.g., CGF or Billing System), the information indicative of, for example, internal errors in the EPC Gateway. Additionally or alternatively, the information may further indicate that the reported charging data may be duplicate, triggering the CGF or Billing Systems duplicate prevention mechanisms to check those particular CDRs, thus improving EPC Gateway quality, reducing charging data loss, and preventing duplicate charging error

[0048] Internal errors in the EPC Gateway (e.g., GGSN, SGW, PGW) may be a result of any of several reasons, such as for example, an internal process restarting, an inter blade synchronization message getting lost or delayed, temporal lack of resources (e.g., CPU overload), software error in a rare scenario which was not detected during testing, etc. Such internal errors may be handled by the EPC Gateway such that, if possible (e.g., if error is not critical) it will try to recover from the error situation without interrupting the services being delivered to the end users. [0049] This may be achieved by implementing, for example:

1) Intra node error handling mechanisms (e.g., delay the sending or processing of internal messages in case of temporal overload, to assume certain parameters in case it detects corrupted values in such parameters); and

2) Inter node error handling mechanisms. This is achieved by having an active- standby mechanism (e.g., two computing nodes are used to serve the same bearer, a first node as active and a second as standby). If one node fails, the standby node takes over and continue serving the subscribers.

[0050] However, recovery cannot be achieved every time in a seamless manner.

Recovery from certain errors result in some information being lost. The present application is directed to various embodiments where recovering from internal errors result in the loss of information of the processing performed for the charging data before the error. In particular, the various embodiments described herein are directed to instances in which, after the recovery of the error, the computing node is not certain if such charging data has already been reported or not, because the information was lost due to the error.

[0051] Below are 2 real examples of this type of problems being experienced by operators: 1) It is a requirement of many Network Elements (the present application being

directed to EPC Gateways), to use a High Availability mechanism to keep a service running during the cases during hardware errors. In EPC, such mechanism may include having two independent nodes serving the same subscriber's bearer in which one node acts as an active node and the second node as a standby node. Active and Standby Node are synchronized by sending IP messages between nodes which include information about charging data being reported or not.

[0052] In an instance in which the active node fails, the standby node then becomes the new active node, allowing the EPC bearer to remain active and the subscriber session to be unaffected. In this instance, the new active node uses the last available synchronization information to know which was the last charging data being reported or not.

[0053] Synchronization between nodes is achieved by sending a message (normally an IP packet) with the synchronization information and getting as a reply the acknowledgement that the message was successfully received. It is in the nature of IP networks that IP packets can get lost or corrupted during transmission.

[0054] An EPC Gateway can serve millions of bearers, therefore at any moment there are thousands of synchronization messages being exchanged between active and standby nodes. Few of those messages may get corrupted during transmission. The corruption may be detected by the nodes because a synchronization message is not acknowledged within an acceptable time.

[0055] In an instance in which there is a switchover (e.g., an active node suddenly fails, triggering the standby node to become the new active node), there is the possibility that the old active node reported some charging data in CDRs but the synchronization message was lost before the switchover. Thus, the new active node is not certain if the charging data it shall report was already reported by the old active node.

[0056] In that case, the new active node may be configured to assume that the last charging data was not reported (i.e., the previous active node reported the charging data, but the synchronization message indicating that reporting got lost right before the switchover took place). Then the new active node reports again the same charging data (Duplicate Charging).

[0057] As another option, the new active node may be configured to assume that the last charging data was reported. Then the new active node does not report such charging data again. In the case where the error took place right before the old active node reported the charging data (charging data was not reported by the old active node, and the same charging data is not reported by the new active node), then operator experiences Loss of Charging Data (operator loses revenue due to charging data loss).

[0058]

2) A CDR is generated and reported through Ga interface towards the Charging

Gateway (CG). In normal operation, the CG will acknowledge the reception of the CDR, then the EPC Gateway will delete the CDR from its internal buffer (database) because it has already been successfully received.

[0059] In an instance of CGF malfunction, the CDR may be sent to the CGF but the acknowledgment may not arrive to the sender (e.g., the EPC Gateway), the sender has no information if the CDR was processed by the CGF or not. This case is solved by 3 GPP with the standard Duplicate Detection mechanism defined in 3GPP TS 32.295. However in an instance in which all CGFs fail for too long of a time, internal buffers at the EPC Gateway get full, then the EPC cannot wait any longer for a CGF to become responsive. Needing to make a decision about the CDRs that were transmitted but that were not acknowledged, a decision may be made to include those CDR in a CDR File and send those to permanent storage (e.g., duplicate charging, because some of those CDRs might have already been processed by the CGF) or a decision may be made to delete those CDRs (e.g., charging data loss, operators lose revenue because of deleting CDRs that have not been billed to the subscriber). The same situation may happen if the EPC Gateway experiences an internal error and needs to switchover (standby node becomes active). The old active node needs to make that same decision about the CDRs not acknowledged in its buffer before restarting (restarting will clear up the buffer of the node).

[0060] EPC products, often are faced with the problems of "Duplicate Charging" vs "Charging Data Loss". In particular, internal errors may result in potentially duplicate charging data and other errors may result in charging data loss.

[0061] In those instance in which the GW is aware that it has lost synchronization, the GW may deleting the charging data (i.e., charging data loss is preferable than duplicate charging) or it may enable local configuration to allow operator to select between the two options.

[0062] CDRs are post-processed by operator mediation software (e.g., in the Charging Gateway) as a previous step before sending those to their Billing Systems. As part of such post-processing, operators may cumulate partial CDRs from the same bearer into a single record which is sent to the billing system. Because every partial CDR may include timestamps and sequence numbers, operators may detect errors in CDRs (e.g., overlapping timestamps, gaps in timestamps, duplicate sequence number, missing sequence numbers, etc.), which may result in bug reports to the vendors of the EPC Gateways.

[0063] Duplicate Charging may have legal impacts to operators (e.g., where local legislations penalize, for example, with fines if an operator double charges a subscriber for the same service). Besides potential legal impact, duplicate charging may have a negative marketing impact.

Implementation

[0064] Charging Data Function (CDF) is the engine which creates the CDRs and once created, sends those to the CGF through Ga interface. Charging Trigger Function (CTF) is the engine which sends the raw charging data to the CDF through Rf interface. [0065] Embodiments of the present invention are directed to facilitating the extended usage of the CDR field "Retransmission" to include those instance where an internal error has been detected. According to 3GPP "Retransmission" CDR field may be present in the CDR in case the reported charging data has been received through Rf interface as

"Possibly Duplicate". That is, the "Retransmission" field may only be present in case of a standalone CDF, only when the charging data was sent by the CTF to more than one CDFs. Thus the same charging data may already have been processed by another CDF and passed to the billing system.

[0066] Therefore according to 3GPP, the CGF shall process all incoming CDRs marked with "Retransmission" field, to check if that charging data has already been reported in another CDR for the same bearer.

[0067] Because Rf interface is a diameter interface which is not widely used by operators, the "Retransmission" field is also rarely used.

[0068] In some embodiments, the EPC Gateways may be configured to mark all CDRs with the Retransmission field in those instances in which an internal error may result in duplicate charging. Additionally, in some embodiments, the EPC Gateway may be configured to generate CDRs immediately after the detection of the internal error which results in lack of synchronization. The generated CDR may include only the charging data which is potentially duplicate, and, in some embodiments, exclude charging data which is serviced after the internal error was resolved. The reason for closing the CDR is proposed to be "Management Intervention".

[0069] In some embodiments, if the EPC Gateway is aware of the loss of

synchronization due to an internal error, it will favor reporting (e.g., in a CDR marked with Retransmission field) the potentially duplicate charging data against not reporting such data (e.g., a charging data loss). The reason is that operator's mediation software shall remove duplicate charging data from CDRs marked with "Retransmission" CDR field. Thus, embodiments described herein may reduce the loss of charging data due to internal errors.

[0070] In some embodiments, the operator's Mediation software (e.g., used by the CGF to post-process CDRs) may drop those CDRs marked with "Retransmission" field only in the case where the CGF does not implement the 3 GPP handling of

"Retransmission" CDR field.

[0071] Thus, the charging data loss for such cases (e.g., CGF not supporting

"Retransmission") will be the same than in the conventional embodiments, with the difference that vendor quality is not anymore a problem, thus increasing the Quality perception of the EPC Gateway. Operators may then be forced to update their CGF in order to avoid charging data loss. The update in the CGF needed is only the standard 3GPP handling of Retransmission field.

[0072] The various embodiments described herein provide, for example, improved Quality of EPC Gateways. "Retransmission" CDR field is already part of 3GPP specifications. Therefore it is operator's responsibility to properly implement duplicate prevention by checking CDRs marked with the Retransmission field. Thus, if duplicate charging data is present in a CDR marked with "Retransmission" field, it is not a software problem in the EPC Gateway, but only the correct implementation of a 3 GPP requirement.

[0073] The various embodiments described herein provide reduced revenue loss for operators in case of internal errors. When the EPC Gateway is aware that certain charging data might or might not have been reported in CDRs, instead of deleting that data to avoid duplicate charging, it will favor reporting it in a CDR marked with "Retransmission" field. The operator's mediation software may then process those CDRs and for the cases where the charging data was not previously reported, it can charge for that data (e.g., resulting in the charging data not being lost).

[0074] Error situations which may cause loss of synchronization on reported charging data are mostly known due to operator's fault reports. Then marking of CDRs may be done to the detected scenarios (e.g., two are described above).

[0075] In the case of CGF, operators that currently don't use external Rf interface, may not have CGFs which can handle the "Retransmission" CDR field. However the handling proposed in this invention for that field is the same than 3 GPP proposes, then operators may request their CGF vendors to update their system according to 3GPP specifications.

Example Processes

[0076] Referring now to Figures 3 and 4, the operations performed, such as by the apparatus 20 of Figure 2, which will be described later, in order to extend the usage of a retransmission field of a CDR are illustrated. Figure 3 shows an example method for facilitating usage of a retransmission field of a Charging Data Record (CDR). More particular, Figure 2 shows an example method for facilitating the extended usage of retransmission CDR field to improve a duplicate detection mechanism and reduce charging data loss due to internal errors. [0077] As shown in block 305 of Figure 3, the apparatus may include means, such as the processor 22 or the like, for generating, prior to the detection of an internal error, one or more prior CDRs, wherein each of one or more prior CDRs generated prior to detection of the internal error comprise raw charging data. In some embodiments, as described above, the raw charging data may be received via an Rf interface. Moreover, as described above, in some embodiments, generation of the CDR may be performed at an EPC

Gateway device.

[0078] As shown in block 310 of Figure 3, the apparatus may include means, such as the processor 22 or the like, for identifying the internal error. For example, in some embodiments, the identification of the internal error may comprise, for example, identifying a lack of synchronization during a handover between a previous active node and a new active node.

[0079] As shown in block 315 of Figure 3, the apparatus may include means, such as the processor 22 or the like, for determining, immediately or near immediately, to report potentially duplicate charging data. For example, as described above, in some

embodiments, the apparatus may be configured to favor reporting the potentially duplicate data versus not reporting the potentially duplicate data.

[0080] As shown in block 320 of Figure 3, the apparatus may include means, such as the processor 22 or the like, for generating one or more CDRs. In some embodiments, the one or more CDRs comprise raw charging data. The generation of the CDR may comprise marking each of the one or more CDRs with a retransmission field in an instance in which an internal error is detected. The retransmission field may be configured to provide an indication that each of the one or more CDRs marked with the retransmission field comprises potentially duplicate raw charging data.

[0081] In some embodiments, the one or more CDRs marked with the retransmission field comprise only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which is serviced after the internal error was resolved.

[0082] As shown in block 325 of Figure 3, the apparatus may include means, such as the processor 22 or the like, for transmitting each of the one or more CDRs to a post- processing system.

[0083] Similar to Figure 3, Figure 4 shows an example method for facilitating usage of a retransmission field of a Charging Data Record (CDR). More particular, Figure 2 shows an example method for facilitating the extended usage of retransmission CDR field to improve a duplicate detection mechanism and reduce charging data loss due to internal errors. However, whereas Figure 3 is described from the perspective of, for example, a EPC gateway device or the like, Figure 4 is described from the perspective of, for example, a post processing system that may comprise or otherwise control a duplicate prevention mechanism or the like.

[0084] As shown in block 405 of Figure 4, the apparatus may include means, such as the processor 22 or the like, for receiving, at a post-processing system, one or more CDRs, each of the one or more CDRs comprised of raw charging data, a subset of the one or more CDRs comprising an indication provided within a retransmission field indicating that the raw charging data contained therein is potentially duplicate.

[0085] As shown in block 410 of figure 4, the apparatus 20 may include means, such as a processor 22 or the like, for, causing a duplicate prevention mechanism to perform a check, for duplicates, the subset of one or more CDRs that comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate. In some embodiments, the subset of one or more CDRs marked with the retransmission field comprises only raw charging data which is potentially duplicate, and excludes, from composition, any raw charging data which serviced such that it is not potentially duplicate. Moreover, in some embodiments, a remaining subset of one or more CDRs (i.e., those CDRs that do no comprise the indication provided within the retransmission field indicating that the raw charging data contained therein is potentially duplicate) comprise raw charging data and, exclude from composition, the retransmission field.

[0086] As described above, Figures 3 and 4 illustrate flowcharts of, for example method provided herein according to example embodiments of the invention. It will be understood that each block of the flowchart, and combinations of blocks in the flowchart, may be implemented by various means, such as hardware, firmware, processor, circuitry, and/or other communication devices associated with execution of software including one or more computer program instructions. For example, one or more of the procedures described above may be embodied by computer program instructions. In this regard, the computer program instructions which embody the procedures described above may be stored by a memory device 24 of an apparatus employing an embodiment of the present invention and executed by a processor 22 of the apparatus. As will be appreciated, any such computer program instructions may be loaded onto a computer or other

programmable apparatus (e.g., hardware) to produce a machine, such that the resulting computer or other programmable apparatus implements the functions specified in the flowchart blocks. These computer program instructions may also be stored in a computer- readable memory that may direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture the execution of which implements the function specified in the flowchart blocks. The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer- implemented process such that the instructions which execute on the computer or other programmable apparatus provide operations for implementing the functions specified in the flowchart blocks.

[0087] Accordingly, blocks of the flowchart support combinations of means for performing the specified functions and combinations of operations for performing the specified functions for performing the specified functions. It will also be understood that one or more blocks of the flowchart, and combinations of blocks in the flowchart, can be implemented by special purpose hardware-based computer systems which perform the specified functions, or combinations of special purpose hardware and computer instructions.

[0088] In some embodiments, certain ones of the operations above may be modified or further amplified. Furthermore, in some embodiments, additional optional operations may be included, such as illustrated by the dashed outline of blocks 305, 310, 315, and 325 in Figure 3. Modifications, additions, or amplifications to the operations above may be performed in any order and in any combination.

[0089] Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Moreover, although the foregoing descriptions and the associated drawings describe example embodiments in the context of certain example combinations of elements and/or functions, it should be appreciated that different combinations of elements and/or functions may be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, different combinations of elements and/or functions than those explicitly described above are also contemplated as may be set forth in some of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.