Method and network node for enhancing message communication in a communication network
11363422 · 2022-06-14
Assignee
Inventors
- A. K. Diwahar (Chennai, IN)
- Suresh Babu Ambati (Chennai, IN)
- Savitha Aravindhan (Chennai, IN)
- R. Kumar (Chennai, IN)
- Divya Sundar (Chennai, IN)
Cpc classification
H04L67/34
ELECTRICITY
H04L67/51
ELECTRICITY
International classification
H04W84/18
ELECTRICITY
H04W40/24
ELECTRICITY
H04L67/51
ELECTRICITY
Abstract
A network node and method for enhancing message communication between a first network node and a second network node in a communication network is provided. The first network node receives an input message from the second network node wherein the input message contains at least one parameter. The first network node then identifies in the received input message the presence of the at least one parameter, wherein the parameter is unknown to the first network node. After identifying at least one unknown parameter, the first network node sends a request message to the second network node for obtaining meta-data associated with the identified unknown parameter. The first network node then receives a response message from the second network node containing the said obtained meta-data associated with the identified unknown parameter. After receiving the response message, the first network node updates the obtained meta-data associated with the unknown parameter.
Claims
1. A method for enhancing message communication between a first and a second network node in a communication network, the method being executed at the first network node and comprising: receiving an input message from the second network node wherein the input message contains at least one parameter; identifying in the received input message the presence of the at least one parameter, wherein the parameter is unknown to the first network node; sending a request message to the second network node for obtaining meta-data associated with the identified unknown parameter; receiving a response message containing said meta-data associated with the identified unknown parameter from the second network node; and updating the obtained meta-data associated with the identified unknown parameter in a data storage of the first network node, wherein after the updating of the obtained meta-data associated with the identified unknown parameter in the data storage, the first network node is capable of processing the input message and any future input message comprising the identified unknown parameter.
2. The method according to claim 1, wherein the request message is sent to the second network node upon determining a status of a learning capability associated with the first network node and the second network node.
3. The method according to claim 1, wherein sending the request message is carried out when it has been determined that the status of the learning capability is enabled for both the first network node and the second network node.
4. The according to claim 1, wherein the parameter further comprising: a parameter identifier, which identifies the parameter with a unique value; and a parameter data.
5. The method according to claim 1, wherein identifying presence of at least one parameter further comprising verifying that the parameter identifier of the parameter contained in the received input message is not present in any data storage of the first network node.
6. The method according to claim 1, wherein the sent request message, further comprising: the parameter identifier of the identified unknown parameter; and a unique request message identifier, for identifying the request message type.
7. The method according to claim 1, wherein the received response message, further comprising: the parameter identifier and the obtained meta-data associated with the identified unknown parameter contained in the request message; and a unique response message identifier, for identifying the response message type.
8. The method according to claim 1, wherein updating the obtained meta-data associated with the unknown parameter comprises: identifying the response message identifier; identifying the parameter identifier and the obtained meta-data associated with the identified unknown parameter contained in the received response message; and updating the obtained meta-data associated with the identified unknown parameter in the data storage of the first network node.
9. The method according to claim 1, wherein the message communication between the first and the second network node in the communication network is via a diameter protocol.
10. A first network node configured for enhancing message communication with a second network node in a communication network, the first network node comprising: a communication interface for communicating with the second network node in the communication network; a data storage; and a network controller configured to: receive an input message from the second network node wherein the input message contains at least one parameter; identify in the received input message the presence of at least one parameter, wherein the parameter is unknown to the first network node; send a request message to the second network node for obtaining meta-data associated with the identified unknown parameter; receive, a response message containing said meta-data associated with the identified unknown parameter from the second network node; and update the obtained meta-data associated with the identified unknown parameter in the data storage of the first network node, wherein after the update of the obtained meta-data associated with the identified unknown parameter in the data storage, the first network node is capable of processing the input message and any future input message comprising the identified unknown parameter.
11. The first network node of claim 10, wherein to send the request message to the second network node, the network controller is further configured to send the request message upon determining a status of a learning capability associated with the first network node and the second network node.
12. The first network node according to claim 10, wherein to send the request message, the network controller is further configured to carry out the sending of the request message when it has been determined that the status of the learning capability is enabled for both the first network node and the second network node.
13. The first network node according to claim 10, wherein the network controller is further configured to define the parameter, wherein the parameter further comprises: a parameter identifier, which identifies the parameter with a unique value; and a parameter data.
14. The first network node according to claim 10, wherein to identify presence of the at least one parameter, the network controller is further configured to verify that the parameter identifier of the parameter contained in the received input message is not present in any data storage of the first network node.
15. The first network node according to claim 10, wherein the network controller is further configured to define the sent request message, wherein the request message further comprising: the parameter identifier of the identified unknown parameter; and a unique request message identifier, for identifying the request message type.
16. The first network node according to claim 10, wherein the network controller is further configured to define the received response message, wherein the response message further comprising: the parameter identifier and the obtained meta-data associated with the identified unknown parameter contained in the request message; and a unique response message identifier, for identifying the response message type.
17. The first network node according to claim 10, wherein to update the obtained meta-data associated with the unknown parameter, the network controller is further configured to: identify the response message identifier; identify the parameter identifier and the obtained meta-data associated with the identified unknown parameter contained in the received response message; and update the obtained meta-data associated with the identified unknown parameter in the data storage of the first network node.
18. The first network node according to claim 10, wherein the message communication between the first and the second network node in the communication network is via a diameter protocol.
19. A method for enhancing message communication between a first and a second network node in a communication network, the method being executed at the second network node comprising: transmitting an input message to the first network node wherein the input message contains at least one parameter; receiving a request message from the first network node requesting meta-data associated with the parameter, wherein the parameter is unknown to the first network node; and transmitting, a response message to the first network node wherein, the response message containing said requested meta-data associated with the unknown parameter, wherein the first network node is capable of processing the input message and any future input message containing the unknown parameter after updating said requested meta-data associated with the unknown parameter in a data storage of the first network node.
20. A system for enhancing message communication between a first and a second network node in a communication network, the system is configured to: transmit an input message to the first network node from the second network node wherein the input message contains at least one parameter; identify by the first network node, in the received input message the presence of at least one parameter, wherein the parameter is unknown to the first network node; send a request message from the first network node to the second network node for obtaining meta-data associated with the identified unknown parameter; transmit, a response message to the first network node from the second network node, wherein the response message is containing the said requested meta-data associated with the identified unknown parameter; and update the obtained meta-data associated with the identified unknown parameter in the first network node, wherein after the update of the obtained meta-data associated with the identified unknown parameter in the data storage, the first network node is capable of processing the input message any future input message containing the identified unknown parameter.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The invention will now be described in more detail by means of some example embodiments and with reference to the accompanying drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
DETAILED DESCRIPTION
(9) The invention will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments of the invention are shown. However, other embodiments in many different forms are possible within the scope of the present disclosure. Rather, the following embodiments are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Like numbers refer to like elements throughout the description.
(10)
(11) The environment 100 shown in
(12) The network nodes 120 as illustrated in
(13) If a first network node 120 (here exemplified with network node 120a) needs to interface with second network node 120 (here exemplified with network node 120b) in the network 110, then the first network node 120a must have all the standard and vendor specific information element definitions in its dictionary for it to accept and process the Diameter messages that are sent by the second network node 120b and vice-versa. The Diameter messages that are sent between the first network node 120a, and the second network 120b in the communication network 110 may comprise multiple AVPs for which the corresponding dictionary in the first 120a and second 120b network nodes contains the definition of AVP such as name, description, type etc. which constitutes the meta-data. When the first network node 120a sends a request towards the second network node 120b with an unknown AVP, the second network node 120b can either reject the request completely or process the request partially by omitting this unknown AVP. An unknown AVP means the definition or meta-data of the AVP is not available in the dictionary of the pertaining receiving network node 120; here it refers to second network node 120b. When such unknown AVPs need to be included and made available for the complete processing of the request, the dictionary of the second network node 120b needs to be updated with the meta-data of the corresponding unknown AVPs. Currently, the process of updating these dictionaries is done manually by loading them in the dictionary of the network nodes 120 in the communication network 110. This process of updating the dictionaries results in manual intervention errors, overhead delay in identifying and processing the diameter messages in diameter network. Today, there is no mechanism available to dynamically learn about the unknown AVP definitions present in the diameter message and automatically update the corresponding dictionary of the network node 120 accordingly.
(14) In
(15) The method in
(16) Each step of the method 200 shown in
(17) After receiving the input message from the second network node 120b, the first network node 120a processes the input message to identify the parameters 211 contained in it. At step 220, the first network node 120a identifies in the received input message the presence of at least one parameter 211, wherein the parameter 212 is unknown to the first network node 120a. The method step of identifying the presence of at least one parameter 211 further comprises the process of verifying that the parameter identifier of the parameter 211 contained in the received input message is not present in any data storage of the first network node 120a. UP 212 denotes the unknown parameter in the input message.
(18) After identifying the unknown parameter 212, the first network node 120a then performs the step 230. At step 230, the first network node 120a sends a request message to the second network node 120b for obtaining the meta-data associated with the identified unknown parameter 212. The first network node 120a sends a request message to the second network node 120b upon determining a status of a learning capability associated with the first network node 120a and the second network node 120b. The method step of sending the request message is carried out by the first network node 120a when it has been determined that the status of the learning capability is enabled for both the first network node 120a and the second network node 120b.
(19) The learning capability status of a network node 120a, 120b is typically set as Boolean value of true or false i.e. enabled or disabled state. It denotes whether the network node 120a, 120b supports the aspect of dynamic learning. The learning capability status value for a network node 120a, 120b would be set either manually or automatically as per the specifications defined by the vendor providing the network node.
(20) When the first network node 120a identifies an unknown parameter 212 in the input message received from the second network node 120b then the first network node 120a can reject the input message completely; or process the input message partially by omitting this unknown parameter 212; or try to obtain i.e. learn the meta-data associated with the unknown parameter 212 for processing the input message. The process of rejecting the input message or partially processing by omitting the unknown parameter 212 or learning the meta-data is done based on the learning capability status of the first network node 120a. Since the input message is received from the second network node 120b, typically the second network node 120b would be having the meta-data associated with the identified unknown parameters 212. So, when the second network node 120b receives a request message from the first network node 120a for obtaining the meta-data associated with the identified unknown parameter 212, then the second network node 120b would either ignore the request message, not provide the requested meta-data; or process the request message, provide the requested meta-data to the first network node 120a. The process of ignoring the request or providing the requested meta-data is done based on the learning capability status of the second network node 120b. The table given below shows what process is performed by the first 120a and second network node 120b based on the status of the learning capability.
(21) TABLE-US-00001 Learning Learning Capability Capability Status of Status of First Second Network Network Process performed by Process performed by Node Node First Network Node Second Network Node Enabled Enabled Learn, send request Process, provide the to obtain the meta- requested meta-data data Enabled Disabled Reject input message Ignore, not provide or partially process the meta-data by omitting Disabled Enabled Reject input message Ignore, not provide or partially process the meta-data by omitting Disabled Disabled Reject input message Ignore, not provide or partially process the meta-data by omitting
(22) The request message sent from the first network node 120a to the second network node 120b may comprise the parameter identifier of the identified unknown parameter 212 and a unique request message identifier. The request message may comprise of a single parameter identifier associated with a single unknown parameter 212 or a list parameter identifiers associated with a list of unknown parameters 212. The request message identifier is used for uniquely identifying the request message type. When the second network node 120b receives the request message, the request message identifier helps the second network node 120b in identifying that the first network node 120a has sent a request for obtaining the meta-data associated with certain parameter(s) 211 whose corresponding parameter identifier is provided with the request message.
(23) After sending the request message, the first network node 120a performs the step 240. At step 240, the first network node 120a receives a response message from the second network node 120b. The response message contains the meta-data associated with the identified unknown parameter 212. The first network node 120a receives the response message from the second network node 120b based on the request message sent to the second network node 120b in the previous step 230. Thus, the first network node 120a obtains the meta-data associated with the unknown parameter 212 from the second network node 120b through the response message.
(24) The response message received from the second network node 120b at the first network node 120a may comprise the parameter identifier and the meta-data associated with the identified unknown parameter(s) 212 which was contained in the request message sent to the second network node 120b from the first network node 120a in the previous step 230; and a unique response message identifier. The response message may comprise a single parameter identifier associated with a single unknown parameter 212 and its corresponding meta-data or a list of parameter identifiers associated with a list of unknown parameters 212 and its corresponding meta-data. The response message identifier is used for uniquely identifying the response message type. When the first network node 120a receives the response message, the response message identifier helps the first network node 120a in identifying that the second network node 120b has sent a response containing the meta-data associated with the identified unknown parameter 212 whose corresponding parameter identifier(s) was provided with the request message sent to the second network node 120b from the first network node 120a in the previous step 230.
(25) After receiving the response message from the second network node 120b, the first network node 120a performs the step 250. At step 250, the first network node 120a updates the meta-data associated with the unknown parameter(s) 212 which is obtained from the second network node 120b through the response message received at the first network node 120a from the second network node 120b. The method step of updating the obtained meta-data associated with the unknown parameter 212 further comprises the process of identifying the response message identifier, then identifying the parameter identifier and the obtained meta-data associated with the identified unknown parameter 212 contained in the received response message; and updating the obtained meta-data associated with the identified unknown parameter(s) 212 in a data storage of the first network node 120a. So, after the updating the obtained meta-data associated with the identified unknown parameter(s) 212 in the data storage, the first network node 120a would be capable of processing any input message containing these unknown parameter(s) 212 in the future.
(26) The message communication between the first network node 120a and the second network node 120b in the communication network 110 for performing the method 200 is typically via a diameter protocol.
(27) The advantage of this method is that it enables any network node 120a, 120b in the network 110 to dynamically learn the meta-data whenever it encounters an unknown parameter 212 during message communication and automatically update its corresponding data storage without any manual intervention. This process of dynamic learning performed by the network node 120a, 120b to automatically update the data storage helps in reducing the errors, time, outages etc. when it is updated manually. The dynamic learning also aids to improve the overhead delay caused in identifying and processing the messages in any network node 120a, 120b of the network 110. This process of automatically updating the data storage of a network node 120a, 120b also benefits in reducing the lead time during activities such as: Integration—When a new network node 120 is introduced in the communication network 110 by a different vendor, the vendor specific parameters meta-data could be added automatically without any manual intervention and smoothly integrated without any downtime Launching of new services—Whenever a new feature is introduced in a network node by addition of new parameters 211, then these new parameters 211 would reflect automatically in other nodes 120 in the communication network 110, so that the application can make use of the new parameters 211. Introducing new protocol releases—Whenever a new release of standard protocol is upgraded in one of the network node 120 it would automatically get reflected in the other connected nodes in the communication network 110.
(28) In
(29) The method in
(30) Each step of the method 300 shown in
(31) After transmitting the input message, the second network node 120b performs the step 320. At step 320, the second network node 120b receives a request message from the first network node 120a. The request message contains the request for obtaining from the data storage of the second network node 120b, the meta-data associated with the parameter, wherein the parameter is unknown to the first network node 120a. The request message received at the second network node 120b from the first network node 120a must contain at least one unknown parameter. The request message may contain one or more unknown parameters.
(32) On receiving the request message, the second network node 120b processes the request message to identify the parameter(s) for which the meta-data is requested for. After identifying the parameter(s), it obtains the meta-data associated with the parameter(s) from the data storage. The second network node 120b then performs the step 330. At step 330, the second network node 120b transmits a response message to the first network node 120a. The response message transmitted to the first network node 120a contains the requested meta-data associated with the parameter(s). Thus, the second network node 120b facilitates in implementing the process of dynamic learning in the first network node 120a by providing the meta-data associated with parameter(s), wherein the parameter is unknown to the first network node 120a.
(33) The message communication between the first 120a and second 120b network node in the communication network 110 is enhanced by implementing process of dynamic learning. The process of dynamic learning is implemented through the method 200 performed in the first network node 120a and the method 300 performed in the second network node 120b as described above.
(34) The process of dynamic learning between the network nodes 120 in the communication network 110 provides the advantage of backward compatibility i.e. it does not impact in the current manner the network nodes 120 communicates with each other. The embodiments explained above shall exchange the dynamic learning information in an ongoing session or event and new messages need not be introduced specifically for this. The dynamic learning mechanism may be performed by introducing the parameters into new messages or via the existing messages sent between the network nodes 120 in the communication network 110.
(35) In
(36) In
(37) The network controller 123 of the first network node 120a is configured to perform the different processing steps as shown in
(38) Each processing step performed by the network controller 123 of the first network node 120a as shown in
(39) After receiving the input message from the second network node 120b, the network controller 123 of the first network node 120a processes the input message to identify the parameters contained in it. The network controller 123 of the first network node 120a identifies 520 in the received input message the presence of at least one parameter, wherein the parameter is unknown to the first network node 120a. The processing step of identifying the presence of at least one parameter further comprises the process of verifying that the parameter identifier of the parameter contained in the received input message is not present in the data storage 122 of the first network node 120a.
(40) After identifying the unknown parameter, the network controller 123 of the first network node 120a sends 530 a request message to the second network node 120b for obtaining the meta-data associated with the identified unknown parameter. The network controller 123 of the first network node 120a sends a request message to the second network node 120b upon determining a status of a learning capability associated with the first network node 120a and the second network node 120b. The processing step of sending the request message is carried out by the network controller 123 of the first network node 120a when it has been determined that the status of the learning capability is enabled for both the first network node 120a and the second network node 120b.
(41) The learning capability status of a network node 120a, 120b is typically set as Boolean value of true or false i.e. enabled or disabled state. It denotes whether the network node 120a, 120b supports the aspect of dynamic learning.
(42) The request message sent by the network controller 123 of the first network node 120a to the second network node 120b may comprise the parameter identifier of the identified unknown parameter and a unique request message identifier. The request message may comprise of a single parameter identifier associated with a single unknown parameter or a list parameter identifiers associated with a list of unknown parameters. The request message identifier is used for uniquely identifying the request message type. When the second network node 120b receives the request message, the request message identifier helps the second network node 120b in identifying that the first network node 120a has sent a request for obtaining the meta-data associated with certain parameter(s) whose corresponding parameter identifier is provided with the request message.
(43) After sending the request message, the network controller 123 of the first network node 120a receives 540 a response message from the second network node 120b. The response message contains the meta-data associated with the identified unknown parameter.
(44) The response message received from the second network node 120b at the network controller 123 of the first network node 120a may comprise the parameter identifier and the meta-data associated with the identified unknown parameter which was contained in the request message sent to the second network node 120b; and a unique response message identifier. The response message may comprise of a single parameter identifier associated with a single unknown parameter and its corresponding meta-data or a list of parameter identifiers associated with a list of unknown parameters and its corresponding meta-data. The response message identifier is used for uniquely identifying the response message type.
(45) After receiving the response message from the second network node 120b, the network controller 123 of the first network node 120a updates 550 the meta-data associated with the unknown parameter(s) which is obtained from the second network node 120b through the response message which is received at the first network node 120a from the second network node 120b. The processing step of updating the obtained meta-data associated with the unknown parameter further comprises the process of identifying the response message identifier, then identifying the parameter identifier and the obtained meta-data associated with the unknown parameter contained in the received response message; and updating the obtained meta-data associated with the identified unknown parameter(s) in the data storage 122 of the first network node 120a. So, after the updating the obtained meta-data associated with the identified unknown parameter(s) in the data storage 122, the first network node 120a would be capable of processing any input message containing these unknown parameter(s) in the future.
(46) The message communication between the first network node 120a and the second network node 120b in the communication network 110 is typically via a diameter protocol.
(47) According to an embodiment of the present invention, a system for enhancing message communication between a first network node 120a and a second network node 120b is provided. The first network node 120a and a second network node 120b is part of the communication network 110 as described above with reference to
(48) As already mentioned, in a 3GPP network, the network nodes typically communicate using Diameter protocol. There would be several diameter nodes over the 3GPP network for realizing a communication service.
(49) In
(50) Using the 3GPP network environment 600 illustrated in
(51) The different applications shown in the 3GPP network 600 which is implemented as a network node 120 in the communication network 110 (as described above with reference to
(52) The PCRF node 630 shown in
(53) For example let us consider the scenario wherein, the PCEF 610 needs to interface with the OCS 660 in the network 600. The OCS 660 sends a CER to PCEF 610. The PCEF then responds with a CEA to OCS 660. The connection is then ready for exchanging Diameter messages between the Diameter nodes PCEF 610 and OCS 660. AVPs are the basic units inside the Diameter message that carries the data where AVP corresponds to the parameter. There must be at least one AVP inside the Diameter message. Typically an AVP comprises: Avp-Vendor-Id: Vendor Specific Identification. For 3GPP, it is 10415 and the default value is 0. Avp-Code: The Unique identification along with the Vendor-Id to indicate the parameter. Avp-Flag: Mandatory Bit: If set, Indicates this AVP should be supported by the Diameter Nodes. Vendor-Id Bit: If Set, indicates the AVP contains the Vendor-Id populated. Protected Bit: If set then the AVP data is encrypted for End-to End Security. Avp-Length: This indicates the length including the Data, Vendor-Id, AVP Code and AVP Flags. Data: This is of zero or more Octets and contains the information/value for the parameter represented for the AVP-Code. The data in the AVP may contain again the set of AVP/AVPs and is called as Grouped AVPs.
(54) Typically, the Avp-Code and Avp-Vendor-Id of an AVP together as a combination attribute value is used for uniquely identifying an AVP across the different diameter nodes in the network 600. Here after the Avp-Code and Avp-Vendor-Id combination value of an AVP would be referred as ‘Avp-Identifier’ which corresponds to the parameter identifier. A sample illustration of an input Diameter message transmitted and an AVP contained in it is given below. Illustration of the Diameter input message: Flags: 0x80, Request Command Code: 272 Credit-Control ApplicationId: Diameter Credit Control Application (4) Hop-by-Hop Identifier: 0x0d7d0453 End-to-End Identifier: 0x50f00002 AVP: Session-Id(263) 1=21 f=−M- val=1473400084730 AVP: Auth-Application-Id(258) 1=12 f=−M- val=Diameter Credit Control Application (4) AVP: Destination-Realm(283) 1=25 f=−M- val=node2.ericsson.se AVP: Destination-Host(293) 1=31 f=−M- val=aaa://100.97.72.76:3868 AVP: Origin-Host(264) 1=21 f=−M- val=100.97.73.197 AVP: Origin-Realm(296) 1=25 f=−M- val=node1.ericsson.se AVP: Unknown(XX01) 1=y f=V--vnd-id=Z01 val=0x646566 Illustration of a single AVP in the above Diameter input message: AVP: Session-Id(263) 1=21 f=−M- val=1473400084730 Avp-Code: 263 Session-Id Avp-Flags: 0x40 0 . . . =Vendor-Specific: Not set . . . 1 . . . =Mandatory: Set . . . 0 . . . =Protected: Not set . . . 0 . . . =Reserved: Not set . . . 0 . . . =Reserved: Not set . . . 0 . . . =Reserved: Not set . . . 0 . . . =Reserved: Not set . . . 0 . . . =Reserved: Not set Avp-Length: 21 Session-Id: 1473400084730 Padding: 00
(55) The OCS 660 transmits an input message to the PCEF 610. The input message transmitted to the PCEF 610 may contain one or more AVPs. The OCS 660 would be having the definition or meta-data associated with these AVP(s) in its data storage 122. But these AVPs(s) may be unknown to the PCEF 610. An AVP(s) is unknown to the PCEF 610 means the definition or meta-data of the AVP is not available in the data storage 122 of the PCEF 610. A sample illustration of an input message transmitted from OCS 660 to PCEF 610 is given below. Illustration of a sample input message transmitted from OCS 660 to PCEF 610:
(56) TABLE-US-00002 <Diameter Header> ... AVP: Origin-Realm(296) 1=25 f=-M- val=node1.ericsson.se AVP: Unknown(XZ01) 1=y f=V-- vnd-id=Z01 val=0x646566 ... </Diameter Header>
</Diameter Header>
(57) Here, in the input message received containing the unknown AVP, ‘XZ01’ is the
(58) Avp-Code and ‘Z01’ is the Avp-Vendor-Id of the unknown AVP.
(59) On receiving the input message from OCS 660, the input message is processed by PCEF 610 to identify the AVP(s) contained in it. The PCEF 610 then identifies the AVP(s) which is unknown to it. The PCEF 610 identifies an unknown AVP(s) by verifying that the Avp-Identifier of the AVP(s) contained in the received input message is not present in its corresponding data storage 122. In the above sample input message received at PCEF 610 from OCS 660, the AVP with code=XZ01 and vendor-id=Z01 is unknown to the PCEF 610
(60) After identifying the unknown AVP(s), the PCEF 610 sends a request message to the OCS 660 for obtaining the meta-data associated with the identified unknown AVP. A request message is send to the OCS 660 from the PCEF 610 upon determining the learning capability status associated with the PCEF 610 and the OCS 660. The request message is sent from the PCEF 610 to the OCS 660 if, the learning capability status is enabled for both the PCEF 610 and the OCS 660.
(61) The learning capability status of the PCEF 610 and the OCS 660 is typically set as an attribute of Boolean type with value true or false i.e. enabled or disabled state. It denotes whether the PCEF 610 and the OCS 660 supports the aspect of dynamic learning. The learning capability status value for the PCEF 610 and the OCS 660 would be set either manually or automatically as per the specifications defined by the vendor providing the PCEF 610 and the OCS 660.
(62) When the PCEF 610 identifies an unknown AVP(s) in the input message received from the OCS 660 then the PCEF 610 can reject the input message completely or process the input message partially by omitting this unknown AVP(s) or try to obtain i.e. learn the meta-data associated with the unknown AVP(s) for processing the input message. The process of rejecting the input message or partially processing by omitting or learning the meta-data is done based on the learning capability status value of PCEF 610. Since the input message is received from the OCS 660, typically the OCS 660 would be having the meta-data associated with the identified unknown AVP(s). So, when the OCS 660 receives a request message from the PCEF 610 for obtaining the meta-data associated with the identified AVP(s) then the OCS 660 would ignoring the request message, not provide the requested meta-data or process the request message, provide the requested meta-data to the PCEF 610. The process of rejecting the request or providing the requested meta-data is done based on the learning capability status value of the OCS 660. The table given below shows what process is performed by the PCEF 610 and OCS 660 based the status of the learning capability.
(63) TABLE-US-00003 Learning Learning Capability Capability Status of Status of Process performed Process performed PCEF OCS by PCF by OCS Enabled Enabled Learn, send request Process, provide the to obtain the meta- requested meta-data data Enabled Disabled Reject input message Ignore, not provide or partially process the meta-data by omitting Disabled Enabled Reject input message Ignore, not provide or partially process the meta-data by omitting Disabled Disabled Reject input message Ignore, not provide or partially process the meta-data by omitting
(64) The request message sent from the PCEF 610 to the OCS 660 may comprise the Avp-Identifier of the identified unknown AVP(s) and a unique request message identifier. The request message may comprise of a single Avp-Identifier associated with a single unknown AVP or a list Avp-Identifiers' associated with a list of unknown AVPs. The request message identifier is used for uniquely identifying the request message type. When the OCS 660 receives the request message, the request message identifier helps the OCS 660 in identifying that the PCEF 610 has sent a request for obtaining the meta-data associated with certain AVP(s). A sample structure and illustration of a Diameter request message sent from the PCEF 610 to the OCS 660 is given below. Structure of a Diameter request message sent for requesting the unknown parameter meta-data:
(65) Diameter Message:
(66) TABLE-US-00004 < Diameter Header > .... *[AVP Diameter-Learning-Request (AVP Code:XX01, vendor-Id=Y01) ] ... AVP Diameter-Learning-Request::= < AVP Header: XX01, vendor-Id=Y01, Grouped> { Avp-Code XY01, vendor-Id=Y01 } { Avp-vendor-Id XY02, vendor-Id=Y01 } </Diameter Header >
(67) In the above structure { } indicates mandatory [ ] indicates optional *[ ] 0 or more occurrence. ‘XX01’ is the unique request message identifier used for identifying the request message which is sent for retrieving the unknown parameter meta-data. ‘XY01’ is the AVP representing the Avp-Code and ‘XY02’ is the AVP representing the Avp-Vendor-Id of the unknown AVP received in the input message. Illustration of a sample request message sent from PCEF 610 to OCS 660: Diameter Message
(68) TABLE-US-00005 <Diameter Header> ... AVP: Session-Id(263) 1=21 f=-M- val=1473400084730 AVP: Diameter-Learning-Request (XX01) 1=y f=V-- Grouped AVP: Avp-Code (XY01) 1=y f=V-- vendor-Id=Y01 val=XZ01 AVP: Avp-Vendor-Id (XY02) 1=y f=V-- vendor- Id=Y01 val=Z01 .... </Diameter Header > Here, in the above request message sent from PCEF 610 to OCS 660 ‘XX01’ is the unique request message identifier used for identifying the request message type; ‘XZ01’ is the Avp-Code and ‘Z01’ is the Avp-Vendor-Id of the unknown AVP.
(69) On receiving the request message from PCEF 610, the OCS 660 processes the request message to identify the AVP(s) for which the meta-data is requested for. After identifying the AVP(s), it obtains the meta-data associated with the AVP (s) from its data storage 122. The OCS 660 then transmits a response message to the PCEF 610 which contains the requested meta-data associated with the AVP(s). The response message sent to the PCEF 610 from the OCS 660 may comprise the Avp-Identifier and the meta-data associated with the identified unknown AVP(s) which was contained in the request message sent to the OCS 660 from the PCEF 610 and a unique response message identifier. The response message may comprise a single Avp-Identifier associated with a single unknown AVP and its corresponding meta-data or list of Avp-Identifier associated with a list of unknown AVPs and its corresponding meta-data. The response message identifier is used for uniquely identifying the response message type. When the PCEF 610 receives the response message, the response message identifier helps the PCEF 610 to identify that the OCS 660 has sent a response containing the meta-data associated with the identified unknown AVP(s). A sample structure and illustration of a Diameter response message received at OCS 660 from PCEF 610 is given below. Structure of a Diameter response message received containing the associated unknown parameter meta-data: Diameter Message
(70) TABLE-US-00006 <Diameter Header> AVP Diameter-Learning-Response ::= < AVP Header: XX02, vendor-Id=Y01 > { Avp-Code XY01, vendor-Id=Y01 } { Avp-vendor-Id XY02, vendor-Id=Y01 } { Avp-Name XY03, vendor-Id=Y01 } [ Avp-Description XY04, vendor-Id=Y01 ] { Avp-DataType XY05, vendor-Id=Y01 } [ Avp-Enumerated XY06, vendor-Id=Y01 ] [ Avp-OctetGrammer XY07, vendor-Id=Y01 ] [ Avp-Flags XY08, vendor-Id=Y01 ] Avp-Enumerated ::= < AVP Header: XY03, vendor-Id=Y01 > *[Avp-Enum-Value XY09, vendor-Id=Y01 ] *[Avp-Enum-Description XY10, vendor-Id=Y01 ] </Diameter Header>
(71) In the above structure { } indicates mandatory [ ] indicates optional *[ ] 0 or more occurrence. ‘XX02’ is the unique response message identifier used for identifying the response message which is received containing the associated unknown parameter meta-data. ‘XY01-XY10’ are the AVPs representing the meta-data such as code, type, name, vendor-id, enumerated, flags etc. of the unknown AVP. Illustration of a sample response message received at OCS 660 from PCEF 610: Diameter Message
(72) TABLE-US-00007 <Diameter Header> ... {AVP: Session-Id(263) 1=21 f=-M- val= 1473400084730 AVP: Diameter-Learning-Response (XX02) 1=y f=V-- Grouped AVP: Avp-Code (XY01) 1=y f=V-- vendor-Id=Y01 val=XZ01 AVP: Avp-Vendor-Id (XY02) 1=y f=V-- vendor- Id=Y01 val=Z01 AVP:Avp-Name (XY03) 1=y f=V-- vendor- Id=Y01 val=VendorUsername AVP:Avp-DataType (XY04) 1=y f=V-- vendor- Id=Y01 val=UTF8String ... </Diameter Header> Here, in the above response message received at OCS 660 from PCEF 610 XX02 is the unique response message identifier used for identifying the response message type; ‘XZ01’ is the Avp-Code, ‘Z01’ is the Avp-Vendor-Id, ‘VendorUsername’ is the Avp-Name and ‘UTF8String’ is the Avp-DataType which constitutes the meta-data of the unknown AVP.
(73) On receiving the response message from OCS 660, the response message is processed by PCEF 610 to identify the Avp-Identifier and the obtained meta-data associated with the unknown AVP(s) contained in the response message. Then, the identified meta-data associated with the unknown AVP(s) is updated in the data storage 122 of the PCEF 610. So, after the updating the obtained meta-data associated with the identified unknown AVP(s) in the data storage 122, the PCEF 610 would be capable of processing any input message containing these unknown AVP(s) in the future. Thus, the OCS 660 also facilitates in implementing the process of dynamic learning in the PCEF 610 by providing the meta-data associated with unknown AVP(s). A sample illustration of the AVP meta-data updated in the data storage 122 of the PCEF 610 is given below. Illustration of a AVP meta-data updated in the data storage 122 of the PCEF 610: <AVP_Def name=“VendorUsername” code=“XZ01” type=“UTF8String” vendorId=“Z01”/>
(74) The present invention can be applied for any Diameter based application/interface. By introducing the dynamic learning in a Diameter node the integration lead time can be greatly reduced, for diameter based interface updates; with ease of introducing new diameter information elements over the interface. It also facilitates in providing a flexible Diameter Network with less or no interface upgrade costs. The invention provides a mechanism to enhance RFC 6733 capability for exchanging the definition of vendor specific AVP between Diameter Systems.
(75) In
(76) In the example of
(77) The invention has mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the inventive concept, as defined by the appended patent claims.
(78) Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to “a/an/the element, apparatus, component, means, step, etc.” are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated. The use of “first”, “second” etc. for different features/components of the present disclosure are only intended to distinguish the features/components from other similar features/components and not to impart any order or hierarchy to the features/components.