Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPLICATION CONTROL INTERWORKING IN NETWORK
Document Type and Number:
WIPO Patent Application WO/2016/034192
Kind Code:
A1
Abstract:
Various communication systems may benefit from application control interworking in a network to expose certain service capabilities. For example, certain communication systems of the third generation partnership project (3GPP) that provide service capabilities that are exposed to application providers, for example, via open mobile alliance-application programming interface, may benefit from application control interworking in a network. Further, an application programming interface and the 3GPP system can act together to expose 3GPP service capabilities. A method may include receiving parameters of capabilities relating to an application server at a policy and charging rules function. The method may also include creating application detection and control rules based on the parameters received.

Inventors:
RASANEN JUHA ANTERO (FI)
Application Number:
PCT/EP2014/068491
Publication Date:
March 10, 2016
Filing Date:
September 01, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NOKIA SOLUTIONS & NETWORKS OY (FI)
International Classes:
H04L12/26; H04L29/08
Other References:
ALBAYRAK S ET AL: "Smart middleware for mutual service-network awareness in evolving 3GPP networks network aware applications & application aware networks", COMMUNICATION SYSTEMS SOFTWARE AND MIDDLEWARE AND WORKSHOPS, 2008. COMSWARE 2008. 3RD INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 6 January 2008 (2008-01-06), pages 44 - 50, XP031279641, ISBN: 978-1-4244-1796-4
"3rd Generation Partnership Project; Technical Specification Group Core Network and Terminals; Policy and Charging Control over Rx reference point (Release 12)", 3GPP STANDARD; 3GPP TS 29.214, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. CT WG3, no. V12.4.1, 3 July 2014 (2014-07-03), pages 1 - 61, XP050774570
HUAWEI ET AL: "The PCC supports TDF-bypass Operations", 3GPP DRAFT; S2-113135_CR 23203-B20 TDF ROUTING, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. SA WG2, no. Naantali; 20110711, 5 July 2011 (2011-07-05), XP050548457
Download PDF:
Claims:
WE CLAIM:

1 . A method, comprising : receiving parameters of capabilities relating to an application server at a policy and charging rules function; and creating application detection and control rules based on the parameters received.

2. The method of claim 1 , further comprising : creating policy and/or charging control rules based on the parameters received relating to the application server.

3. The method of claim 1 or claim 2, wherein the parameters comprise at least one of capabilities of identified application servers, application related capabilities and parameters for a plurality of different applications.

4. The method of any of claims 1 -3, further comprising : requesting subscription profile and/or subscription parameters of a user, wherein the subscription profile and/or subscription parameters comprise applications and/or services allowed for the user.

5. The method of any of claims 1 -4, further comprising : determining that a query to a service capability function should be made based on a configuration or a prior setup of a control protocol with the service capability function, or from the subscription profile and/or subscription parameters of the user.

6. The method of claim 1 , further comprising : receiving a message from a traffic detection function at the policy and charging rules function, wherein the message indicates detection of at least one of the plurality of applications.

7. The method of claim 1 or claim 6, further comprising: determining that a query to the service capability function should be made based on application related information or from the message sent by the traffic detection function.

8. The method of claim 1 , wherein the parameters comprise session information related to user equipment.

9. A method, comprising: receiving at least one of capabilities, application related capabilities and parameters for different applications from an application server; and providing the at least one of capabilities, application related capabilities and parameters for different applications to a policy and charging rules function in response to a request from the policy and charging rules function for the capabilities or parameters.

10. The method of claim 9, wherein the request is a request to obtain information related to applications/services offered by the application server, wherein the request identifies applications/services allowed for a user, and wherein the response further comprises the information related to applications/services offered by the application server.

1 1 . The method of claim 9 or claim 1 0, wherein the request identifies a detected application and/or the application server, and wherein the response comprises application related capabilities for the detected application and/or capabilities of the identified application server.

12. The method of any of claims 9-1 1 , further comprising: dynamically updating the status of network services to the application server based on updated indicators related to the application server received from the application server.

13. The method of any of claims 9-1 1 , further comprising: receiving updates from the application server relating to services that the application server provides.

14. A method, comprising: maintaining at least one of a plurality of indicators indicated to a service capability function; and indicating, from an application server to the service capability function, the plurality of indicators related to the application server.

15. The method of claim 14, further comprising: providing indications related to applications supported by the application server to the service capability function.

16. The method of claim 14 or claim 15, wherein the maintaining comprises dynamically updating at least one of the plurality of indicators indicated to the service capability function.

17. The method of any of claims 14-16, further comprising: sending updates from the application server to the service capability function relating to services that the application server provides.

18. The method of any of claims 14-17, further comprising: indicating, by the application server, the application server's own identity to the service capability function.

19. The method of any of claims 14-18, wherein at least one of the plurality of indicators indicates whether or not the application server supports a control interface to provide session information to a network when a user session is established between a user equipment and the application server.

20. The method of any of claims 14-19, wherein at least one of the plurality of indicators indicates whether or not session information is provided for application when an application session is established between a user equipment the application server.

21. The method of any of claims 14-20, wherein at least one of the plurality of indicators indicates availability of application specific policy information.

22. An apparatus comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to receive parameters of capabilities relating to an application server at a policy and charging rules function; and create application detection and control rules based on the parameters received.

23. The apparatus of claim 22, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to create policy and/or charging control rules based on the parameters received relating to the application server.

24. The apparatus of claim 22 or claim 23, wherein the parameters comprise at least one of capabilities of identified application servers, application related capabilities and parameters for a plurality of different applications.

25. The apparatus of any of claims 22-24, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to request subscription profile and/or subscription parameters of a user, wherein the subscription profile and/or subscription parameters comprise applications and/or services allowed for the user.

26. The apparatus of any of claims 22-25, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to determine that a query to a service capability function should be made based on a configuration or a prior setup of a control protocol with the service capability function, or from the subscription profile and/or subscription parameters of the user.

27. The apparatus of claim 22, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to receive a message from a traffic detection function at the policy and charging rules function, wherein the message indicates detection of at least one of the plurality of applications.

28. The apparatus of claim 22 or claim 27, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to determine that a query to the service capability function should be made based on application related information or from the message sent by the traffic detection function.

29. The apparatus of claim 22, wherein the parameters comprise session information related to user equipment.

30. An apparatus, comprising: means for receiving parameters of capabilities relating to an application server at a policy and charging rules function; and means for creating application detection and control rules based on the parameters received.

31 . The apparatus of claim 30, further comprising: means for creating policy and/or charging control rules based on the parameters received relating to the application server.

32. The apparatus of claim 30 or claim 31 , wherein the parameters comprise at least one of capabilities of identified application servers, application related capabilities and parameters for a plurality of different applications.

33. The apparatus of any of claims 30-32, further comprising: means for requesting subscription profile and/or subscription parameters of a user, wherein the subscription profile and/or subscription parameters comprise applications and/or services allowed for the user.

34. The apparatus of any of claims 30-33, further comprising: means for determining that a query to a service capability function should be made based on a configuration or a prior setup of a control protocol with the service capability function, or from the subscription profile and/or subscription parameters of the user.

35. The apparatus of claim 30, further comprising: means for receiving a message from a traffic detection function at the policy and charging rules function, wherein the message indicates detection of at least one of the plurality of applications.

36. The apparatus of claim 30 or claim 35, further comprising: means for determining that a query to the service capability function should be made based on application related information or from the message sent by the traffic detection function.

37. The apparatus of claim 30, wherein the parameters comprise session information related to user equipment.

38. An apparatus, comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to receive at least one of capabilities, application related capabilities and parameters for different applications from an application server; and provide the at least one of capabilities, application related capabilities and parameters for different applications to a policy and charging rules function in response to a request from the policy and charging rules function for the capabilities or parameters.

39. The apparatus of claim 38, wherein the request is a request to obtain information related to applications/services offered by the application server, wherein the request identifies applications/services allowed for a user, and wherein the response further comprises the information related to applications/services offered by the application server.

40. The apparatus of claim 38 or claim 39, wherein the request identifies a detected application and/or the application server, and wherein the response comprises application related capabilities for the detected application and/or capabilities of the identified application server.

41 . The apparatus of any of claims 38-40, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to dynamically updating the status of network services to the application server based on updated indicators related to the application server received from the application server.

42. The apparatus of any of claims 38-41 , wherein wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to receive updates from the application server relating to services that the application server provides.

43. An apparatus, comprising: means for receiving at least one of capabilities, application related capabilities and parameters for different applications from an application server; and means providing the at least one of capabilities, application related capabilities and parameters for different applications to a policy and charging rules function in response to a request from the policy and charging rules function for the capabilities or parameters.

44. The apparatus of claim 43, wherein the request is a request to obtain information related to applications/services offered by the application server, wherein the request identifies applications/services allowed for a user, and wherein the response further comprises the information related to applications/services offered by the application server.

45. The apparatus of claim 43 or claim 44, wherein the request identifies a detected application and/or the application server, and wherein the response comprises application related capabilities for the detected application and/or capabilities of the identified application server.

46. The apparatus of any of claims 43-45, further comprising: means for dynamically updating the status of network services to the application server based on updated indicators related to the application server received from the application server.

47. The apparatus of any of claims 43-46, further comprising : receiving updates from the application server relating to services that the application server provides.

48. An apparatus, comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to maintain at least one of a plurality of indicators indicated to a service capability function; and indicate, from an application server to the service capability function, the plurality of indicators related to the application server.

49. The apparatus of claim 48, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to provide indications related to applications supported by the application server to the service capability function.

50. The apparatus of claim 48 or claim 49, wherein in maintaining at least one of a at least one of a plurality of indicators indicated to a service capability function, the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to dynamically update at least one of the plurality of indicators indicated to the service capability function.

51 . The apparatus of any of claims 48-50, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to send updates from the application server to the service capability function relating to services that the application server provides.

52. The apparatus of any of claims 48-51 , wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to indicate, by the application server, the application server's own identity to the service capability function.

53. The apparatus of any of claims 48-52, wherein at least one of the plurality of indicators indicates whether or not the application server supports a control interface to provide session information to a network when a user session is established between a user equipment and the application server.

54. The apparatus of any of claims 48-53, wherein at least one of the plurality of indicators indicates whether or not session information is provided for application when an application session is established between a user equipment the application server.

55. The apparatus of any of claims 48-54, wherein at least one of the plurality of indicators indicates availability of application specific policy information.

56. An apparatus, comprising: means for maintaining at least one of a plurality of indicators indicated to a service capability function; and means for indicating, from an application server to the service capability function, the plurality of indicators related to the application server.

57. The apparatus of claim 56, further comprising: means for providing indications related to applications supported by the application server to the service capability function.

58. The apparatus of claim 56 or claim 57, wherein the maintaining comprises means for dynamically updating at least one of the plurality of indicators indicated to the service capability function.

59. The apparatus of any of claims 56-58, further comprising: means for sending updates from the application server to the service capability function relating to services that the application server provides.

60. The apparatus of any of claims 56-59, further comprising: means for indicating, by the application server, the application server's own identity to the service capability function.

61 . The apparatus of any of claims 56-60, wherein at least one of the plurality of indicators indicates whether or not the application server supports a control interface to provide session information to a network when a user session is established between a user equipment and the application server.

62. The apparatus of any of claims 56-61 , wherein at least one of the plurality of indicators indicates whether or not session information is provided for application when an application session is established between a user equipment the application server.

63. The apparatus of any of claims 56-61 , wherein at least one of the plurality of indicators indicates availability of application specific policy information.

64. A non-transitory computer-readable medium encoded with instructions that, when executed in hardware, perform a process, the process comprising the method according to any of claims 1 -8.

65. A computer program product encoding instructions to perform a process, the process comprising the method according to any of claims 1 -8.

66. A non-transitory computer readable medium encoded with instructions that, when executed in hardware, perform a process, the process comprising the method according to any of claims 9-13.

67. A computer program product encoding instructions to perform a process, the process comprising the method according to any of claims 9-13.

68. A non-transitory computer readable medium encoded with instructions that, when executed in hardware, perform a process, the process comprising the method according to any of claims 14-21.

69. A computer program product encoding instructions to perform a process, the process comprising the method according to any of claims 14-21.

Description:
DESCRIPTION TITLE

APPLICATION CONTROL INTERWORKING IN NETWORK BACKGROUND: Field:

[0001] Various communication systems may benefit from application control interworking in a network to expose certain service capabilities. For example, certain communication systems of the third generation partnership project (3GPP) that provide service capabilities that are exposed to application providers, for example, via open mobile alliance-application programming interface (OMA-API(s)), may benefit from application control interworking in a network. Further, an application programming interface (API) and the 3GPP system can act together to expose 3GPP service capabilities.

Description of the Related Art: [0002] Architecture Enhancements for Service Capability is a new item being worked on by 3GPP. For example, 3GPP has been aiming at normative specifications within 3GPP Rel- 13. A number of measures can be applied either separately, or in various combinations to define and optimize the network architecture and required/related control procedures and interactions between network entities for introducing service capability exposure and enablement support in 3GPP specifications.

[0003] When the service capability exposure is applied to a mobile network that also supports application detection and control (ADC), the network also applies, as per current specifications, the ADC to the traffic between the user equipment (UE) and the application server (AS). This is described, for example, in 3GPP Technical Specification 23.203 and 29.212. In case of some servers and/or applications, this may cause redundant activities with parallel processing for the same purpose, extra message exchanges and bearer establishments or modifications that should be rectified as soon as the wanted information is available from the application server. This can be prevented with a simple configuration measure that excludes the servers from the list of possibly detectable applications by a traffic detection function (TDF). For example, one configuration measure may be to exclude the Internet Protocol (IP) addresses of the servers from the list of possibly detectable applications by TDF.

[0004] In order to optimize the network architecture and the policy and/or charging control of applications, it may be desirable in some cases to apply ADC to the traffic between a UE and an application server. Thus, for such cases, the configuration measure can close doors for optimization of the network architecture and for the optimization of policy and charging control procedures of different application servers and/or applications.

SUMMARY:

[0005] According to certain embodiments, a method can include receiving parameters of capabilities relating to an application server at a policy and charging rules function. The method can also include creating application detection and control rules based on the parameters received.

[0006] According to certain embodiments, a method can include receiving at least one of capabilities, application related capabilities and parameters for different applications from an application server. The method can also include providing the at least one of capabilities, application related capabilities and parameters for different applications to a policy and charging rules function in response to a request from the policy and charging rules function for the capabilities or parameters.

[0007] According to certain embodiments, a method can include maintaining at least one of a plurality of indicators indicated to a service capability function. The method can also include indicating, from an application server to the service capability function, the plurality of indicators related to the application server.

[0008] An apparatus, according to certain embodiments, can include at least one processor and at least one memory including computer program code. The at least one memory and the computer program code can be configured to, with the at least one processor, cause the apparatus at least to receive parameters of capabilities relating to an application server at a policy and charging rules function. The at least one memory and the computer program code can also be configured to, with the at least one processor, cause the apparatus at least to create application detection and control rules based on the parameters received.

[0009] An apparatus, in certain embodiments, can include means for receiving parameters of capabilities relating to an application server at a policy and charging rules function. The apparatus can also include means for creating application detection and control rules based on the parameters received.

[0010] An apparatus, according to certain embodiments, can include at least one processor and at least one memory including computer program code. The at least one memory and the computer program code can be configured to, with the at least one processor, cause the apparatus at least to receive at least one of capabilities, application related capabilities and parameters for different applications from an application server. The at least one memory and the computer program code can also be configured to, with the at least one processor, cause the apparatus at least to provide the at least one of capabilities, application related capabilities and parameters for different applications to a policy and charging rules function in response to a request from the policy and charging rules function for the capabilities or parameters.

[0011] An apparatus, in certain embodiments, can include means for receiving at least one of capabilities, application related capabilities and parameters for different applications from an application server. The apparatus can also include means for providing the at least one of capabilities, application related capabilities and parameters for different applications to a policy and charging rules function in response to a request from the policy and charging rules function for the capabilities or parameters.

[0012] An apparatus, according to certain embodiments, can include at least one processor and at least one memory including computer program code. The at least one memory and the computer program code can be configured to, with the at least one processor, cause the apparatus at least to maintain at least one of a plurality of indicators indicated to a service capability function. The at least one memory and the computer program code can also be configured to, with the at least one processor, cause the apparatus at least to indicate, from an application server to the service capability function, the plurality of indicators related to the application server.

[0013] An apparatus, in certain embodiments, can include means for maintaining at least one of a plurality of indicators indicated to a service capability function. The apparatus can also include means for indicating, from an application server to the service capability function, the plurality of indicators related to the application server.

BRIEF DESCRIPTION OF THE DRAWINGS:

[0014] For proper understanding of the invention, reference should be made to the accompanying drawings, wherein:

[0015] Figure 1 illustrates a basic, simplified architecture example, when a proposal is applied to a 3GPP environment, according to certain embodiments.

[0016] Figure 2 illustrates a signaling scenario wherein an application server and network exchange information and a user equipment attaches to the network, according to certain embodiments.

[0017] Figure 3 illustrates a signaling scenario wherein a traffic detection function detects an application and related information is available at a service capability function, according to certain embodiments.

[0018] Figure 4 illustrates a signaling scenario wherein the traffic detection function detects an application, related session information is available at an application server AS-x and a control interface exists between AS-x and a policy and/or charging enforcement function, according to certain embodiments.

[0019] Figure 5 illustrates a system according to certain embodiments.

[0020] Figure 6 illustrates a method according to certain embodiments.

[0021] Figure 7 illustrates another method according to certain embodiments.

[0022] Figure 8 illustrates yet another method according to certain embodiments.

DETAILED DESCRIPTION:

[0023] Certain embodiments may provide a simplified architecture, when service exposure is applied to a 3GPP network. An example of such architecture is shown in Figure 1 , which is based on 3GPP. According to Figure 1 , service exposure can be based on information exchange between an application server (AS-x) through an API and a service capability function (SCF)/API gateway function.

[0024] Figure 1 also shows a UE in communication with an access network, which is in communication with a packet data network gateway (P-GW). The P-GW may include a policy and charging enforcement function (PCEF). The P-GW is in communication with a TDF. The P-GW is also in communication with a policy and charging rules function (PCRF) via a Gx interface. The TDF is also in communication with the PCRF via an Sd interface. The TDF is further in communication with AS-x and AS-y. Figure 1 further shows that the PCRF is in communication with the SCF/API gateway function via an interface Xx defined as, for example, an Rx interface.

[0025] According to certain embodiments, various measures that can be applied separately or in various combinations can be obtained in light of the simplified architecture shown in Figure 1 . For example, the AS-x may indicate, in addition to its own identity, such as for example, an IP address, one or more issues to the SCF/API gateway (GW) function. For example, one issue may include whether or not the AS-x supports a control interface to provide session information to the network, such as for example, to PCRF, when a user session is established between a UE and the AS-x. This determination can be used by the network (PCRF, TDF), for example, for deciding whether the ADC should be applied to applications running on the AS-x.

[0026] Another issue may include adding granularity to the step above in the case where the AS-x supports provisioning of session information. For example, the addition of granularity may involve per application or per service, whether or not session information is provided for the application, when it is activated. Activation may occur, for example, when an application session is established between the UE and AS-x. This issue can be used by the network, such as PCRF, for example, for deciding on to which applications the ADC should be applied, and to which applications the ADC should not be applied.

[0027] A further issue may include an indication of the availability of application specific policy information and the information itself, including, for example, acceptable quality of service (QoS) or QoS ranges, charging control. This indication may be used by the network, such as by PCRF, to provide initial ADC and policy and/or charging control (PCC) rules accordingly. As discussed in more detail below, an example of such an implementation is shown in Figure 2, steps 7 - 13. This indication may also be used by the network without further session information provisioning when the network (ADC) detects the corresponding service start between the UE and AS-x, as shown in Figure 3, steps 1 - 8, which is further described in detail below.

[0028] According to certain embodiments, AS-x may dynamically update the information to keep the SCF/network abreast of the latest status, and accordingly the SCF/network may dynamically update the status of the exposed services.

[0029] Further details of the required behavior of the related network functions (PCRF, TDF, SCF and AS-x) in various cases/embodiments are described in more detail below with reference to Figures 2, 3 and 4.

[0030] Even though a standalone TDF can be used in these examples/embodiments, the same procedures and measures may also apply, when TDF is integrated in P-GW, such as, for example, being collocated with PCEF, in P-GW. In this case message exchanges between PCRF and P-GW replace message exchanges between PCRF and TDF, as discussed below.

[0031] Figure 2 illustrates an implementation of a signaling scenario where the AS and network (SCF) exchange information and a UE attaches to the network. As shown in Figure 2, at step 1 , SCF and AS-x exchange information. SCF exposes network services to AS-x. AS-x may indicate its capabilities and application related capabilities and parameters for different applications including the various issues indicated to the SCF/API GW described above.

[0032] At step 2, the UE can attach to the network via an attach request including parameters. At step 3, as a consequence of the UE attaching to the network, P-GW may obtain a request message for setting up a default session / context for the UE. At step 4, P-GW can request authorization and PCC rules for the session context from PCRF. Next, at step 5, PCRF may request the subscription profile/subscription parameters of the user from a subscription profile repository/user data repository (SPR/UDR). At step 6, the SPR/UDR may send the subscription profile/subscription parameters in its response to PCRF. The profile/parameters may contain/identify applications/services allowed for the user.

[0033] The PCRF may deduce, at step 7, for example, by configuration or from a prior setup of a control protocol with SCF or from the subscription profile/parameters that a query to the SCF is to be made. At step 8, the PCRF can send a request to SCF to get possible capability information related to AS-x and other application servers, and/or information related to applications/services offered by the application servers. The parameters in the request may identify applications/services allowed for the user. At step 9, SCF can send a response to PCRF. The response may contain capabilities of identified application servers and application related capabilities and parameters for different applications including, for example, the issues indicated to the SCF/API GW described above.

[0034] At step 10, the PCRF can use the information received from SCF and from SPR/UDR for creating ADC rules for TDF and/or PCC rules for P-GW that may include a policy and charging enforcement function (PCEF). PCRF may especially use the application server related information and/or application related information for deducing from/deciding on which of the detected applications should make the TDF send a report to PCRF and which should not.

[0035] At step 1 1 , PCRF may send a request message to TDF. The message may contain ADC rules. At step 12, TDF can send a response to PCRF. PCRF can send, at step 13, a response message to P-GW. The message may contain PCC Rules. The PCC rules may contain rules for policy enforcement for PCEF and/or rules for application detection, if TDF is integrated with PCEF in P-GW, in which case steps 1 1 and 12 can be omitted.

[0036] At step 14, P-GW can send a response to message 3. Finally, at step 15, the UE can get an acknowledgement for the attach request/message 2.

[0037] Figure 3 illustrates another implementation of a signaling scenario where TDF can detect an application to have related information available at the SCF, according to certain embodiments. At step A, SCF and AS-x may exchange information to update the statuses. Here, SCF may update the status of network services to AS-x. AS-x may indicate its capabilities and application related capabilities and parameters for different applications including the issues indicated to the SCF/API GW described above.

[0038] At step 1 , TDF can detect an application related to AS-x and indicated earlier (by SCF) to have related information, such as, for example, related to QoS, charging, available at the SCF. At step 2, TDF can send a message to PCRF to indicate the detection of an application. In addition to the regular application related information, the parameters may, but do not have to, indicate to PCRF a need to request further information from SCF.

[0039] The PCRF can, at step 3, deduce, for example, from the AS-x/application, related information received earlier from SCF, or from an indication sent by TDF in step 2 or by configuration that a query to the SCF shall be made to get application server/AS-x or application related information. At step 4, PCRF can send a request to SCF. The parameters in the request may identify the detected application and/or the application server, for example, through an IP address. At step 5, SCF can send a response to PCRF. The response may contain application related capabilities for the detected application and/or capabilities of the identified application server, such as, for example, the issues indicated to the SCF/API GW described above.

[0040] At step 6, PCRF can create PCC and/or ADC rules based on the application related information/parameters and/or the application server AS-x related information/parameters received from SCF. At step 7, PCRF can send a response message to TDF. The message may contain ADC rules. At step 8, PCRF may send a request message to P-GW. The message may contain PCC rules. The PCC rules may contain rules for policy enforcement for PCEF and/or rules for application detection, if TDF is integrated with PCEF in P-GW, in which case step 2 originates from P-GW, step 7 terminates at P-GW and steps 8 and 9 can be omitted. Finally, at step 9, P-GW can send a response to message 8 to PCRF.

[0041] Figure 4 illustrates another implementation of a signaling scenario where TDF can detect an application to have related session information available at the application server AS-x and that a control interface exists between AS-x and PCRF. At step 1 , a UE and an application server AS-x can exchange an IP packet/IP packets on the traffic channel/user plane. At step 2, TDF can detect an application related to the application server AS-x and indicated earlier (by SCF) that AS-x will provide related session information upon session establishment. Consequently, TDF can refrain from contacting PCRF.

[0042] At step 3, AS-x can set up an application session with UE in step 1 above, and deduce related session information/parameters. At step 4, AS-x can send session information/parameters in a request message to PCRF. At step 5, PCRF can send a response to AS-x. PCRF can, at step 6, create PCC and/or ADC rules based on the session information/parameters received from AS-x.

[0043] At step 7, PCRF can send a request message to P-GW. The message may contain PCC rules. The PCC rules may contain rules for policy enforcement for PCEF and/or rules for application detection, if TDF is integrated with PCEF in P-GW, in which case steps 9 and 10 can be omitted. At step 8, P-GW can send a response to PCRF. At step 9, PCRF may send a request message to TDF. The message may contain ADC rules. Finally, at step 10, TDF can send a response to message 9 to PCRF.

[0044] Certain embodiments may have various benefits and/or advantages. For example, in certain embodiments, crucial elements may include PCRF, PCEF/TDF and the to-be- defined (under work in 3GPP) SCF/API GW. According to certain embodiments, these entities can adapt to the capabilities of external application servers to get the most of the available services and applications. This suggests a number of measures that can be applied either separately or in various combinations.

[0045] Figure 5 illustrates a system according to certain embodiments of the invention. In one embodiment, a system may include multiple devices, such as, for example, at least one first network element, such as, for example, PCRF 510, at least one second network element, such as, for example, SCF 520, and at least one third network element, such as, for example, application server 530.

[0046] Each of these devices may include at least one processor, respectively indicated as 514, 524, and 534. At least one memory can be provided in each device, and indicated as 515, 525, and 535, respectively. The memory may include computer program instructions or computer code contained therein. The processors 514, 524, and 534 and memories 515, 525, and 535, or a subset thereof, can be configured to provide means corresponding to the various blocks of Figure 5.

[0047] Even though described as separate devices in Figure 1 , some of these devices, such as, for example, PCRF and SCF, may be integrated as functionalities in a single device.

[0048] As shown in Figure 5, transceivers 516, 526, and 536 can be provided, and each device may also include an antenna, respectively illustrated as 517, 527, and 537. Transceivers 516, 526, and 536 can each, independently, be a transmitter, a receiver, or both a transmitter and a receiver, or a unit or device that is configured both for transmission and reception.

[0049] Processors 514, 524, and 534 can be embodied by any computational or data processing device, such as a central processing unit (CPU), application specific integrated circuit (ASIC), or comparable device. The processor can be implemented as a single controller, or a plurality of controllers or processors.

[0050] Memories 515, 525, and 535 can be any suitable storage device, such as a non- transitory computer-readable medium. A hard disk drive (HDD), random access memory (RAM), flash memory, or other suitable memory can be used. The memories can be combined on a single integrated circuit as the processor, or may be separate from the one or more processors. Furthermore, the computer program instructions stored in the memory and which may be processed by the processors can be any suitable form of computer program code, for example, a compiled or interpreted computer program written in any suitable programming language.

[0051] The memory and the computer program instructions can be configured, with the processor for the particular device, to cause a hardware apparatus such as PCRF 510, SCF 520, and application server 530, to perform any of the processes described herein (see, for example, Figures 2-4 and 6-8). Therefore, in certain embodiments, a non- transitory computer-readable medium can be encoded with computer instructions that, when executed in hardware, perform a process such as one of the processes described herein. Alternatively, certain embodiments of the invention can be performed entirely in hardware.

[0052] Furthermore, although Figure 5 illustrates a system including a PCRF, SCF, and application server, embodiments of the invention may be applicable to other configurations, and configurations involving additional elements. For example, not shown, additional core network elements may be present, as illustrated in Figures 1 -4.

[0053] Figure 6 illustrates a method according to certain embodiments. As shown in Figure 6, a method can include, at step 610, receiving parameters of capabilities relating to a first network element, such as, for example, an application server, at a second network element, such as, for example, a policy and charging rules function. The method can also include, at step 620, creating application detection and control rules. The application detection and control rules can be based on the parameters received.

[0054] The method can further include, at step 630, creating policy and/or charging control rules. The policy and/or charging control rules can be created based on the parameters received relating to the first network element. The method can also include, at step 640, requesting subscription profile and/or subscription parameters of a user. The subscription profile and/or subscription parameters can include applications and/or services that are allowed for the user.

[0055] The method can further include, at step 650, determining that a query to a third network element, such as, for example, a service capability function, should be made based on a configuration or a prior setup of a control protocol with the third network element, or from the subscription profile and/or subscription parameters of the user. The method can also include, at step 660, receiving a message from a fourth network element, such as, for example, a traffic detection function, at the second network element. The message can indicate detection of at least one of a plurality of applications. The method can also include, at step 670, determining that a query to the third network element should be made based on application related information or from the message sent by the fourth network element.

[0056] Figure 7 illustrates another method according to certain embodiments. As shown in Figure 7, a method can include, at step 710, receiving capabilities and application related capabilities and parameters for different applications from a first network element, such as, for example, an application server. The method can also include, at step 720, providing the capabilities and application related capabilities and parameters for different applications to a second network element, such as, for example, a policy and charging rules function. The capabilities and application related capabilities and parameters can be provided in response to a request from the policy and charging rules function for the capabilities and parameters.

[0057] The method can further include, at step 730, dynamically updating the status of network services to the first network element based on updated indicators related to the first network element received from the first network element. The method can also or alternatively include, at step 740, receiving updates from the application server relating to services that the application server supports. The updates may indicate, for example, QoS and charging control related parameters related to the services that the application server supports.

[0058] Figure 8 illustrates yet another method according to certain embodiments. As shown in Figure 8, a method can include, at step 810, maintaining at least one of a plurality of indicators indicated to a first network element, such as, for example, a service capability function. The method can also include, at step 820, indicating the plurality of indicators related to a second network element, such as, for example, an application server. The plurality of indicators can be indicated from the second network element to the first network element.

[0059] The method can further include, at step 830, indicating the second network element's own identity to the first network element. The second network element's own identity can be indicated to the first network element by the second network element. The method can also or alternatively include, at step 840, providing indications related to applications supported by the second network element to the first network element. The method can further include, at step 850, sending updates from the application server to the service capability function relating to services that the application server provides.

[0060] One having ordinary skill in the art will readily understand that the invention as discussed above may be practiced with steps in a different order, and/or with hardware elements in configurations which are different than those which are disclosed. Therefore, although the invention has been described based upon these preferred embodiments, it would be apparent to those of skill in the art that certain modifications, variations, and alternative constructions would be apparent, while remaining within the spirit and scope of the invention. In order to determine the metes and bounds of the invention, therefore, reference should be made to the appended claims.

[0061] Glossary

3GPP Third Generation Partnership Project

ADC Application Detection and Control

API Application Programming Interface AS Application Server

ASIC Application Specific Integrated Circuit

CPU Central Processing Unit

GW Gateway

HDD Hard Disk Drive IP Internet Protocol

IP-CAN IP Connectivity Access Network

OMA Open Mobile Alliance

PCC Policy and/or Charging Control

PCEF Policy and Charging Enforcement Function PCRF Policy and Charging Rules Function

P-GW Packet Data Network Gateway

QoS Quality of Service

RAM Random Access Memory

SCF Service Capability Function SPR Subscription Profile Repository

TDF Traffic Detection Function UDR User Data Repository

UE User Equipment