KR100890061B1 - A System and Method for Processing a Diameter Message - Google Patents

A System and Method for Processing a Diameter Message Download PDF

Info

Publication number
KR100890061B1
KR100890061B1 KR1020070074061A KR20070074061A KR100890061B1 KR 100890061 B1 KR100890061 B1 KR 100890061B1 KR 1020070074061 A KR1020070074061 A KR 1020070074061A KR 20070074061 A KR20070074061 A KR 20070074061A KR 100890061 B1 KR100890061 B1 KR 100890061B1
Authority
KR
South Korea
Prior art keywords
message
diameter
processing unit
processing
command code
Prior art date
Application number
KR1020070074061A
Other languages
Korean (ko)
Other versions
KR20090010724A (en
Inventor
김동윤
Original Assignee
서울통신기술 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서울통신기술 주식회사 filed Critical 서울통신기술 주식회사
Priority to KR1020070074061A priority Critical patent/KR100890061B1/en
Publication of KR20090010724A publication Critical patent/KR20090010724A/en
Application granted granted Critical
Publication of KR100890061B1 publication Critical patent/KR100890061B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/23Reliability checks, e.g. acknowledgments or fault reporting

Abstract

본 발명의 일 측면에 따른 다이아미터 메시지를 처리하는 방법에 있어서, 다이아미터 프로세스부가 상기 다이아미터 메시지를 COMMAND CODE에 따라 분류하는 단계, 상기 다이아미터 프로세스부가 분류한 COMMAND CODE별 메시지를 해당 COMMAND CODE에 대응하는 기능 처리부로 분배하는 단계, 및 상기 기능 처리부가 상기 다이아미터 프로세스부로부터 수신한 메시지를 해당 COMMAND CODE에 따라 처리하는 단계를 포함한다.

Figure R1020070074061

다이아미터 메시지, COMMAND CODE

In the method for processing a diameter message according to an aspect of the present invention, the process of classifying the diameter message according to the COMMAND code, the diameter process unit, the COMMAND CODE message classified by the diameter process unit to the corresponding COMMAND CODE Distributing to the corresponding function processor, and processing the message received from the diameter processor by the function processor according to the corresponding command code.

Figure R1020070074061

Diameter message, COMMAND CODE

Description

다이아미터 메시지를 처리하는 시스템 및 방법{A System and Method for Processing a Diameter Message}A system and method for processing a diameter message

본 발명은 다이아미터 메시지를 처리하는 시스템 및 방법에 관한 것으로서, 홈 가입자 서버(HSS : Home Subscriber Server)가 CX나 SH 인터페이스를 통해 I-CSCF(Interrogating Call Session Control Function), S-CSCF(Serving Call Session Control Function), AS(Application Server)등의 시스템과 연동하여 다이아미터 메시지를 처리할 때 이 다이아미터 메시지를 해당 COMMAND CODE에 따른 별도의 프로세스로 분배하고 별도의 프로세스에서 각각의 고유의 절차를 수행한 후 응답 메시지를 전송하게 함으로서 명령어 처리속도가 빨라지도록 한 다이아미터 메시지를 처리하는 시스템 및 방법에 관한 것이다.The present invention relates to a system and method for processing a diameter message, wherein a Home Subscriber Server (HSS) is an Interrogating Call Session Control Function (I-CSCF) or a Serving Call (S-CSCF) through a CX or SH interface. When handling the diameter message in connection with the system such as Session Control Function) and AS (Application Server), the diameter message is distributed to a separate process according to the corresponding code, and each unique procedure is executed in a separate process. The present invention relates to a system and a method for processing a diameter message to speed up command processing by sending a response message.

일반적으로 다이아미터 프로토콜을 이용한 서버가 다이아미터 메시지를 처리할 경우 다이아미터 메시지의 COMMAND CODE에 따른 Function 을 호출하여 해당 메시지를 처리하거나 별도의 Thread를 호출하여 그 Thread에서 해당하는 메시지를 처 리하도록 되어 있다.In general, when the server using the diameter protocol processes the diameter message, it calls the function according to the command code of the diameter message to process the message or calls a separate thread to process the corresponding message in the thread. have.

종래 기술에 따른 다이아미터 메시지를 처리하는 시스템에 대하여 첨부한 도면을 참조하여 좀 더 구체적으로 설명해 보기로 한다.A system for processing a diameter message according to the prior art will be described in more detail with reference to the accompanying drawings.

도 1은 종래 기술에 따른 다이아미터 메시지를 처리하는 시스템에 대한 블록 구성을 나타낸 도면이다. 1 is a block diagram illustrating a system for processing a diameter message according to the prior art.

도 1에 따르면 홈 가입자 서버(HSS : Home Subscriber Server)(100)는 가입자 데이터에 대한 모든 자료를 보관하고 있으며 사용자 프로파일의 관리와 이동성 관리를 위한 정보 관리 기능 및 권한 검증, 보안을 위한 인증 등의 기능을 수행한다.Referring to FIG. 1, a home subscriber server (HSS) 100 stores all data on subscriber data, and includes information management functions and authority verification for user profile management and mobility management, authentication for security, and the like. Perform the function.

메시지 수신부(101)는 메시지를 수신해 메시지 해독부(102)로 전송한다.The message receiving unit 101 receives the message and transmits the message to the message decrypting unit 102.

메시지 해독부(102)는 수신한 메시지를 디코딩하고 홈 가입자 서버(100)가 처리할 수 있는 형태로 포맷팅한다. The message decryption unit 102 decodes the received message and formats it in a form that the home subscriber server 100 can process.

메시지 콜백부(103)는 메시지의 COMMAND CODE나 타입에 따라 CALL BACK 함수를 등록하여 해당 메시지가 수신되면 CALL BACK 함수를 호출한다. The message callback unit 103 registers a CALL BACK function according to the COMMAND CODE or type of the message, and calls the CALL BACK function when the corresponding message is received.

메시지 처리 로직부(104)는 메시지에 포함된 내용을 근거로 CALL BACK 함수를 이용해 데이터를 처리한다.The message processing logic unit 104 processes data using the CALL BACK function based on the contents included in the message.

이러한 홈 가입자 서버(HSS : Home Subscriber Server)는 여러 시스템 또는 응용 서버와 연동될 수 있다. 예를 들어 상기 여러 시스템은 S-CSCF 혹은 I-CSCF등이 될 수 있다. Such a home subscriber server (HSS) may be linked with various systems or application servers. For example, the various systems may be S-CSCF or I-CSCF.

S-CSCF(106)(Serving-CSCF)는 SIP(Session Initiated Protocol)를 기반으로 하여 멀티미디어 호 제어를 수행하는 CSCF(Call Session Control Function)의 하나로서 실제 홈 망에서 사용자의 호 요구를 처리하는 기능을 수행하며 다수개의 S-CSCF가 존재하도록 구성할 수 있다. S-CSCF 106 (Serving-CSCF) is a Call Session Control Function (CSCF) that performs multimedia call control based on Session Initiated Protocol (SIP) and handles user's call request in a real home network. Can be configured to exist multiple S-CSCF.

I-CSCF(105)(Interrogating-CSCF)는 다수의 S-CSCF중에서 사용자의 호 요구에 적합한 S-CSCF를 선택하는 기능과 홈 망에 위치하는 S-CSCF의 구성 정보를 보안 등의 목적으로 타 망에 보여주지 않는 기능을 수행할 수 있다. The I-CSCF 105 (Interrogating-CSCF) provides a function of selecting an S-CSCF from among a plurality of S-CSCFs for a user's call request and the configuration information of the S-CSCF located in a home network for security purposes. Can perform functions not shown on the network.

AS(Application Server)(107)는 가입자 정보 어드레스로 호를 설정하거나 멀티미디어 통신서비스 등록을 위한 접속 설정 프로토콜(SIP)을 지원한다.The application server (AS) 107 supports a connection establishment protocol (SIP) for establishing a call with a subscriber information address or registering a multimedia communication service.

CX 인터페이스는 I-CSCF, S-CSCF와 홈 가입자 서버(HSS : Home Subscriber Server)사이의 다이아미터 인터페이스의 규격 명칭이다. CX 인터페이스를 통해 주고 받는 DIAMETER COMMAND는 UAR(User-Authorization-Request), LIR(Location-Info-Request),SAR(Server-Assignment-Request), MAR(Multimedia-Auth-Request) 등이 있다. SH 인터페이스는 AS와 홈 가입자 서버(HSS : Home Subscriber Server)사이의 다이아미터 인터페이스 규격 명칭이고 SH 인터페이스를 통해 주고 받는 DIAMETER COMMAND는 UDR(User-Data-Request),PUR(Profile-Update-Request), SNR(Subscribe-Notifications-Request)등이 있다. The CX interface is the specification name of the diameter interface between the I-CSCF, S-CSCF, and the Home Subscriber Server (HSS). DIAMETER COMMAND exchanged through CX interface includes User-Authorization-Request (UAR), Location-Info-Request (LIR), Server-Assignment-Request (SAR), and Multimedia-Auth-Request (MAR). The SH interface is the name of the diameter interface specification between the AS and the Home Subscriber Server (HSS), and the DIAMETER COMMAND sent and received through the SH interface is UDR (User-Data-Request), PUR (Profile-Update-Request), Subscribe-Notifications-Request (SNR).

예를 들어 홈 가입자 서버(100)가 수신한 다이아미터 메시지에 포함된 명령어의 네임이 UAR(User-Authorization-Request)인 경우 임의의 Function 을 호출하여 이 Function 내에서 가입자 권한 검증에 관한 로직을 처리하고 SAR(For example, if the name of the command included in the diameter message received by the home subscriber server 100 is UAR (User-Authorization-Request), it calls an arbitrary function to process logic related to subscriber authorization verification within this function. And SAR (

Server-Assignment-Request)인 경우 또한 임의의 Function을 호출하여 그 함수에서 가입자의 프로파일을 수신받기 위한 로직을 처리하도록 한다. 이렇게 수신하는 메시지마다 별도의 함수를 호출하여 각각의 메시지를 처리하게 된다. Server-Assignment-Request) also calls an arbitrary function to process the logic to receive the subscriber's profile in that function. For each message received, a separate function is called to process each message.

결국, 상기 언급한 바와 같이 기존의 다이아미터 메시지를 처리하는 시스템 및 방법에서는, 홈 가입자 서버(HSS : Home Subscriber Server) 가 I-CSCF, S-CSCF나 AS와 DIAMETER 프로토콜 연동을 하는 과정에서 송수신되는 메시지의 양이 늘어나고 매번 메시지를 처리할 때마다 FUNCTION이나 THREAD를 호출해 처리해야 하므로 그 절차가 복잡해짐에 따라 일반적인 메시지 처리절차인 수신-해독-콜백-처리의 처리과정으로는 메시지를 빠르게 처리할 수 없다는 문제점을 안고 있다. As a result, in the system and method for processing an existing diameter message as mentioned above, a Home Subscriber Server (HSS: Home Subscriber Server) is transmitted and received in the process of interworking with the I-CSCF, S-CSCF, or AS with the DIAMETER protocol. As the volume of messages increases and each time a message is processed, FUNCTION or THREAD must be called to handle the process. As the procedure becomes more complicated, a normal message processing procedure, receive-decrypt-callback-processing, can process a message quickly. There is a problem that can not be.

따라서, 본 발명의 목적은 홈 가입자 서버(HSS : Home Subscriber Server) 가 I-CSCF, S-CSCF, AS와 DIAMETER 프로토콜 연동시 다이아미터 메시지를 해당 COMMAND CODE에 따라 독립된 별개의 프로세스로 분기하여 각각의 프로세스에서 고유의 절차를 수행한 후 다시 외부 시스템에 응답 메시지를 송신하도록 함으로서 종래에 비해 속도를 더욱 향상시키고 처리절차를 더욱 간편하게 하도록 하는 시스템 및 방법을 제공함에 있다.Accordingly, an object of the present invention is that a Home Subscriber Server (HSS) branches a diameter message into an independent separate process according to the corresponding COMMAND CODE when the Home Subscriber Server (HSS) interworks with the I-CSCF, S-CSCF, AS and DIAMETER protocols. By providing a response message to the external system after performing a unique procedure in the process to provide a system and method that further improves the speed and makes the processing procedure easier than in the prior art.

상기한 목적을 달성하기 위한 본 발명의 일 측면에 따른 다이아미터 메시지를 처리하는 시스템의 일 측면에 따르면, 수신한 다이아미터 메시지를 각각의 COMMAND CODE별로 메시지 처리부에 분배하는 다이아미터 프로세스부 및 상기 다이아미터 프로세스부로부터 수신한 다이아미터 메시지를 각각의 COMMAND CODE별로 처리하여 다이아미터 프로세스부로 전송하는 메시지 처리부를 포함하는 다이아미터 메시지를 처리하는 시스템을 포함한다. According to an aspect of a system for processing a diameter message according to an aspect of the present invention for achieving the above object, a diameter processor for distributing a received diameter message for each COMMAND CODE to a message processing unit and the diamond It includes a system for processing a diameter message including a message processing unit for processing the diameter message received from the meter process unit for each COMMAND CODE and transmits to the diameter process unit.

상기 메시지 처리부는, 각각의 COMMAND CODE별로 메시지를 처리하는 기능 처리부를 포함하는 것을 특징으로 한다.The message processing unit may include a function processing unit processing a message for each COMMAND CODE.

상기 기능 처리부는, UAR 처리부, LIR 처리부, SAR 처리부, MAR 처리부, UDR 처리부, PUR 처리부, SNR 처리부 중 적어도 하나 이상을 포함하는 것을 특징으로 한다. The function processing unit may include at least one of a UAR processing unit, an LIR processing unit, a SAR processing unit, a MAR processing unit, a UDR processing unit, a PUR processing unit, and an SNR processing unit.

상기 메시지 처리부는, 상기 COMMAND CODE별로 구성된 각각의 메시지 큐로 들어온 메시지만을 기능에 맞게 처리하는 것을 특징으로 한다. The message processing unit may be configured to process only a message entered into each message queue configured for each COMMAND CODE according to a function.

상기 다이아미터 프로세스부는, 상기 다이아미터 메시지를 해당 COMMAND CODE별로 분류한 후 메시지 처리부로 분배하는 메시지 분배부, 상기 메시지 처리부로부터 각 COMMAND CODE별로 처리된 결과 메시지를 수신하는 메시지 대기부, 상기 다이아미터 메시지를 인코딩하여 응답 메시지를 생성하는 메시지 인코딩부, 및 상기 인코딩된 메시지의 길이를 검증하여 해당하는 다이아미터의 하위 프로토콜에 따라 메시지를 전송하는 메시지 전송부를 포함하는 것을 특징으로 한다. The diameter processor may classify the diameter message according to the corresponding code, and then distribute the message to a message processor. A message waiting unit configured to receive a result message processed for each COMMAND code from the message processor, and the diameter message. Message encoding unit for generating a response message by encoding a, and a message transmitter for verifying the length of the encoded message to transmit the message in accordance with the lower protocol of the corresponding diameter.

상기 메시지 분배부는, 메시지에 INDEX를 할당한 후 상기 INDEX 정보를 상기 분류된 COMMAND CODE별로 저장하는 MSG 참조 테이블을 포함하는 것을 특징으로 한다.The message distribution unit may include an MSG reference table that allocates INDEX to a message and stores the INDEX information for each classified COMMAND CODE.

상기 메시지 대기부는, 메시지 큐 다중화 방식 또는 MULTI-THREAD로 구성하는 것을 특징으로 한다. The message waiting unit may be configured by a message queue multiplexing method or MULTI-THREAD.

한편, 상기한 목적을 달성하기 위한 본 발명의 다른 측면에 따른 다이아미터 메시지를 처리하는 방법의 일 측면에 따르면 다이아미터 메시지를 처리하는 방법에 있어서, 다이아미터 프로세스부가 상기 다이아미터 메시지를 COMMAND CODE에 따라 분류하는 단계, 상기 다이아미터 프로세스부가 분류한 COMMAND CODE별 메시지를 해당 COMMAND CODE에 대응하는 기능 처리부로 분배하는 단계; 및 상기 기능 처리부가 상기 다이아미터 프로세스부로부터 수신한 메시지를 해당 COMMAND CODE에 따라 처리하는 단계를 포함한다. On the other hand, according to one aspect of the method for processing a diameter message according to another aspect of the present invention for achieving the above object, in the method for processing a diameter message, the diameter processor unit in the COMMAND CODE Classifying according to the method, distributing the COMMAND CODE message classified by the diameter processor to a function processor corresponding to the corresponding COMMAND CODE; And processing, by the function processor, a message received from the diameter processor according to the corresponding COMMAND CODE.

상기 분류단계는, 다이아미터 프로세스부가 다이아미터 메시지를 수신하는 단계, 수신한 다이아미터 메시지의 헤더부를 디코딩하여 COMMAND 부분을 식별하는 단계, 식별한 COMMAND 정보에 따라 다이아미터 메시지에 INDEX를 할당하는 단계, 및 메시지에 INDEX를 할당한 후 상기 COMMAND 정보와 함께 상기 메시지에 관한 정보를 저장하여 분류하는 단계를 포함한다. The classifying step may include: receiving, by the diameter processor, a diameter message, identifying a COMMAND portion by decoding a header of the received diameter message, assigning an INDEX to the diameter message according to the identified COMMAND information, And after allocating INDEX to the message, storing and classifying information about the message together with the COMMAND information.

상기 다이아미터 프로세스부가 상기 메시지 처리부로부터 해당 COMMAND CODE에 따른 메시지 처리 결과를 수신하는 단계, 상기 다이아미터 프로세스부가 상기 수신한 메시지에 대한 응답 메시지를 생성하는 단계, 상기 다이아미터 프로세스부가 생성한 응답 메시지를 외부 시스템으로 전송하는 단계를 더 포함한다. Receiving, by the diameter processor, a message processing result according to the corresponding command code from the message processor, generating, by the diameter processor, a response message to the received message, and generating a response message generated by the diameter processor The method further includes transmitting to an external system.

다이아미터 메시지를 COMMAND CODE별로 각각의 프로세스로 분배하여 처리함으로서 메시지 처리 속도가 향상되는 효과를 가져올 수 있다.By distributing the diameter message to each process by COMMAND CODE, the message processing speed can be improved.

또한, 다이아미터 메시지가 향후 추가되는 경우에도 단순히 별도의 메시지 큐를 추가하면 되고, 프로세스의 기능을 추가할 경우에도 각 프로세스에서 국한되어 기능을 추가하면 되므로 처리 절차가 보다 간편해지는 효과를 가져오게 된다. In addition, even if a diameter message is added in the future, a separate message queue may be simply added, and when adding a function of a process, a process may be simplified since only a function may be added in each process. .

이하 본 발명에 따른 다이아미터 메시지를 처리하는 시스템 및 방법에 대해 첨부한 도면을 참조하여 상세히 설명한다. 여기서, 도1에 도시된 구성요소와 동일한 구성요소에 관해서는 그 설명을 생략하고 본 발명의 주요 특징과 연관되는 구성요소들에 대하여만 구체적으로 설명하기로 한다. 아울러, 홈 가입자 서버(HSS : Home Subscriber Server)와 연동되는 시스템으로는 I-CSCF나 S-CSCF에 한정하지 않는다.Hereinafter, a system and method for processing a diameter message according to the present invention will be described in detail with reference to the accompanying drawings. Here, the same components as those shown in FIG. 1 will be omitted, and only components related to the main features of the present invention will be described in detail. In addition, the system that is linked with the home subscriber server (HSS: Home Subscriber Server) is not limited to I-CSCF or S-CSCF.

도 2는 다이아미터 메시지의 헤더 정보를 나타낸 도면이다.2 is a diagram illustrating header information of a diameter message.

도 2에 도시된 바와 같이 다이아미터 메시지의 헤더 정보는 다이아미터 메시지의 길이를 판단하기 위한 Message Length, 명령어의 식별자인 Command-Code, 외부 시스템과 다이아미터 프로세스부(201)가 서로 송수신하는 메시지의 매칭 여부를 확인하기 위한 ID인 Hop-by-Hop ID, 송수신 하는 메시지의 중복을 방지하기 위해 사용되는 End-to-End ID를 포함할 수 있다.As shown in FIG. 2, header information of a diameter message includes a message length for determining a length of a diameter message, a command-code which is an identifier of a command, and a message transmitted and received by an external system and the diameter processor 201. It may include a hop-by-hop ID, which is an ID for confirming a match, and an end-to-end ID, which is used to prevent duplication of messages transmitted and received.

도 3은 본 발명에 따른 메시지 처리부의 구성을 도시한 도면이다. 3 is a diagram illustrating a configuration of a message processing unit according to the present invention.

도 3에 도시된 바와 같이 메시지 처리부(202)는 다이아미터 메시지의 분산 처리가 가능하도록 각 COMMAND CODE에 따라 스택을 다르게 구성해 각 스택에서는 해당 명령어에 관한 연산만 처리하도록 한다. As shown in FIG. 3, the message processing unit 202 configures a stack differently according to each COMMAND CODE to enable distributed processing of the diameter message so that each stack processes only operations related to the corresponding instruction.

도 4는 본 발명에 따른 다이아미터 메시지를 처리하는 시스템에 대한 블록 구성을 나타낸 도면이다. 4 is a block diagram illustrating a system for processing a diameter message according to the present invention.

도 4에 도시된 바와 같이 다이아미터 메시지를 처리하는 시스템은 다이아미터 프로세스부(201), 메시지 처리부(202)를 포함할 수 있다. 다이아미터 메시지 처리 시스템은 I-CSCF 서버(211), S-CSCF 서버(212), AS 서버(213)등과 연동될 수 있다. 다이아미터 프로세스부(201)는 메시지 수신부(203), 메시지 해독부(204), 메시지 분배부(205), 메시지 송신부(208), 메시지 인코딩부(207), 메시지 대기부(206)를 포함할 수 있으며 메시지 분배부(205)는 MSG 참조 테이블을 포함할 수 있다. 메시지 처리부(202)는 프로세스부와 기능 처리부를 포함할 수 있다. 상기 각 프로세스부는 CX 프로세스부(209)와 SH 프로세스부(210)등이 될 수 있으며, CX 프로세스부(209)는 UAR 처리부, LIR 처리부, SAR 처리부, MAR 처리부 등, SH 프로세스부(210)는 UDR 처리부, PUR 처리부, SNR 처리부 등을 포함할 수 있다. As shown in FIG. 4, the system for processing a diameter message may include a diameter processor 201 and a message processor 202. The diameter message processing system may be linked with the I-CSCF server 211, the S-CSCF server 212, the AS server 213, and the like. The diameter processor 201 may include a message receiver 203, a message decoder 204, a message distributor 205, a message transmitter 208, a message encoder 207, and a message waiter 206. Message distribution unit 205 may include an MSG reference table. The message processor 202 may include a processor and a function processor. Each process unit may be a CX process unit 209 and an SH process unit 210, and the like, and the CX process unit 209 may include a UAR processor, an LIR processor, a SAR processor, a MAR processor, and the like. It may include a UDR processing unit, a PUR processing unit, an SNR processing unit and the like.

메시지 수신부(203)는 다이아미터 프로토콜의 하위 프로토콜인 TCP나 SCTP 프로토콜을 사용하여 다이아미터 메시지를 수신하고 수신한 길이를 검증한다. The message receiving unit 203 receives the diameter message using the TCP or SCTP protocol, which is a lower protocol of the diameter protocol, and verifies the received length.

메시지 해독부(204)는 도면 2에서 설명한 다이아미터 메시지를 디코딩하여 디코딩한 메시지의 헤더 정보 중 COMMAND CODE 부분을 식별한다. 또한 헤더부의 HOP-BY-HOP ID을 검증하여 외부 시스템이 송신한 메시지와 매칭하는지 판단하며 헤더부의 END-TO-END ID를 검증하여 이전에 수신한 메시지와 현재 수신한 메시지가 중복되지 않았는지 판단하여 중복되지 않은 경우 다이아미터 메시지를 저장한다. The message decoding unit 204 decodes the diameter message described with reference to FIG. 2 and identifies a COMMAND CODE portion of header information of the decoded message. In addition, the HOP-BY-HOP ID in the header is verified to determine whether it matches the message sent by the external system. The END-TO-END ID in the header is verified to determine whether the previously received message and the currently received message are not duplicated. Saves the diameter message if it is not a duplicate.

메시지 분배부(205)는 다이아미터 메시지를 COMMAND CODE별로 구분하여 메시 지 처리부의 각 프로세스부로 분배한다. The message distributor 205 divides the diameter message by the COMMAND CODE and distributes the message to each processor.

구체적으로 메시지 분배부(205)는 다이아미터 메시지를 관리하기 위해 메시지에 INDEX를 할당하고 메시지의 헤더부에서 식별한 COMMAND CODE 부분을 참고하여 각 메시지에 관한 INDEX 정보를 상기의 COMMAND 별로 MSG 참조 테이블에 저장한다. 그 후에 COMMAND CODE에 따라 각각의 CX 프로세스부 또는 SH 프로세스부로 IPC 전송을 한다. IPC 전송이란 INTER PROCESS COMMUNICATION의 약자로 프로세스간의 통신 방법을 의미하며 본 발명의 경우 한 쪽 프로세스에서는 QUEUE에 데이터를 쌓고 다른 한쪽에서는 그 QUEUE의 데이터를 꺼내 처리하는 방식을 이용한다.Specifically, the message distribution unit 205 allocates INDEX to the message to manage the diameter message, and references the COMMAND CODE portion identified in the header of the message, and sends the INDEX information for each message to the MSG reference table for each COMMAND. Save it. After that, IPC transmission is performed to each CX process unit or SH process unit according to the COMMAND CODE. IPC transmission stands for INTER PROCESS COMMUNICATION, which means a communication method between processes. In the present invention, one process accumulates data in a QUEUE, and the other uses a method of extracting and processing data of the QUEUE.

메시지 대기부(206)는 COMMAND CODE별로 처리된 결과메시지를 수신하는 부분으로서 시스템의 성능에 따라 MULTI-THREAD 방식이나 다중화 방식을 이용하여 구성할 수 있다. The message waiting unit 206 is a part for receiving a result message processed for each COMMAND CODE and may be configured using a MULTI-THREAD method or a multiplexing method according to the performance of the system.

MULTI-THREAD 방식이란 수신해서 데이터 처리하는 함수를 여러개의 THREAD로 나누어서 일을 처리하는 것으로서 CPU가 여러개인 시스템에서 좀 더 효율적으로 데이터 처리가 가능하다. MESSAGE QUEUE 다중화 방식이란 메시지를 명령어 별로 여러곳으로 전달하고 그 결과를 메시지 대기부 자체를 여러 개로 나누어서 수신할 수 있다. 메시지를 여러개의 대기부로 안전하게 전송하기 위해서 한 순간에는 하나의 프로세스만이 접근 가능하도록 하는 SEMAPHORE 등의 시스템 함수를 이용할 수도 있다. The MULTI-THREAD method divides the function of receiving and processing data into several THREADs to process the work, which enables more efficient data processing in a system with multiple CPUs. MESSAGE QUEUE The multiplexing method can deliver a message to several places for each command and receive the result by dividing the message queue itself into several places. You can also use system functions such as SEMAPHORE to securely send a message to multiple waits, so that only one process can access it at a time.

메시지 인코딩부(207)는 다이아미터 메시지의 응답 메시지를 생성하는 것으로서 메시지 처리부(202)로부터 수신한 메시지를 해당 메시지의 HOP-BY-HOP ID 및 END-TO-END ID를 판별한 후 응답 메시지를 생성한다.The message encoding unit 207 generates a response message of the diameter message. The message encoding unit 207 determines the HOP-BY-HOP ID and the END-TO-END ID of the message received from the message processing unit 202, and then generates the response message. Create

메시지 송신부(208)는 외부 시스템으로 해당 다이아미터 프로토콜의 하위 프로토콜에 맞게 인코딩된 응답 메시지를 전송한다.The message transmitter 208 transmits the response message encoded to the lower protocol of the corresponding diameter protocol to the external system.

메시지 처리부(202)는 다이아미터 프로세스부(201)가 수신한 다이아미터 메시지를 처리하는 부분이다. 메시지 처리를 위해 메시지 처리부(202)는 메시지를 인터페이스별로 구분하는 프로세스부와 각 프로세스부에서 메시지의 COMMAND CODE에 따른 QUEUE를 구성한 후 해당 메시지를 처리하는 기능 처리부를 포함할 수 있다. 실시예로 CX나 SH 인터페이스를 통해 메시지를 처리하는 프로세스부와 기능 처리부를 언급하였으나 본원 발명은 이에 한정되지는 않는다. The message processing unit 202 is a part that processes the diameter message received by the diameter processing unit 201. For message processing, the message processing unit 202 may include a process unit for classifying a message for each interface, and a function processing unit for processing a corresponding message after configuring a QUEUE according to the COMMAND CODE of the message in each process unit. As an embodiment, a processor and a function processor for processing a message through a CX or SH interface are described, but the present invention is not limited thereto.

COMMAND CODE별로 CX나 SH 프로세스부로 분배된 다이아미터 메시지를 각각의 기능단위로 수행한 후 그 결과 메시지를 다이아미터 프로세스부(201)로 전송한다. 메시지 분배부(205)가 메시지를 해당 COMMAND CODE별로 분류하여 메시지 처리부(202)로 분배하기 때문에 메시지 처리부(202)는 자신의 QUEUE로 들어온 메시지만을 기능에 맞게 처리할 수 있다.After the diameter message distributed to the CX or SH process unit for each COMMAND CODE is performed in each functional unit, the result message is transmitted to the diameter process unit 201. Since the message distributing unit 205 classifies the message by the corresponding COMMAND CODE and distributes the message to the message processing unit 202, the message processing unit 202 may process only the message that enters its QUEUE according to a function.

메시지 처리부(2O2)의 COMMAND CODE에 맞게 기능처리를 할 수 있도록 구성된 MSG QUEUE는 도4와 같다. The MSG QUEUE configured to perform the function processing according to the command code of the message processing unit 202 is shown in FIG.

CX와 SH 인터페이스에 따른 COMMAND CODE의 네임과 축약형은 다음과 같다.The names and abbreviations of COMMAND CODE according to CX and SH interfaces are as follows.

CX - Command-NameCX-Command-Name AbbreviationAbbreviation CodeCode User-Authorization-RequestUser-Authorization-Request UARUAR 300300 User-Authorization-AnswerUser-Authorization-Answer UAAUAA 300300 Server-Assignment-RequestServer-Assignment-Request SARSAR 301301 Server-Assignment-AnswerServer-Assignment-Answer SAASAA 301301 Location-Info-RequestLocation-Info-Request LIRLIR 302302 Location-Info-AnswerLocation-Info-Answer LIALIA 302302 Multimedia-Auth-RequestMultimedia-Auth-Request MARMAR 303303 Multimedia-Auth-AnswerMultimedia-Auth-Answer MAAMAA 303303 Registration-Termination-RequestRegistration-Termination-Request RTRRTR 304304 Registration-Termination-AnswerRegistration-Termination-Answer RTARTA 304304 Push-Profile-RequestPush-Profile-Request PPRPPR 305305 Push-Profile-AnswerPush-Profile-Answer PPAPPA 305305

Sh-Command-NameSh-Command-Name AbbreviationAbbreviation CodeCode User-Data-RequestUser-Data-Request UDRUDR 306306 User-Data-AnswerUser-Data-Answer UDAUDA 306306 Profile-Update-RequestProfile-Update-Request PURPUR 307307 Profile-Update-AnswerProfile-Update-Answer PUAPUA 307307 Subscribe-Notifications-RequestSubscribe-Notifications-Request SNRSNR 308308 Subscribe-Notifications-AnswerSubscribe-Notifications-Answer SNASNA 308308 Push-Notification-RequestPush-Notification-Request PNRPNR 309309 Push-Notification-AnswerPush-Notification-Answer PNAPNA 309309

CX 프로세스부(209)는 CX 인터페이스를 통해 수신한 메시지를 처리하는 부분으로 다이아미터 메시지의 명령어에 따라 UAR, LIR, SAR, MAR 처리부 등의 기능 처리부를 포함할 수 있다. The CX processor 209 may process a message received through the CX interface, and may include a function processor such as a UAR, LIR, SAR, or MAR processor according to a command of a diameter message.

SH 프로세스부(210)는 SH 인터페이스를 통해 수신한 메시지를 처리하는 부분으로 다이아미터 메시지의 명령어에 따라 UDR, PUR, SNR 처리부 등을 포함할 수 있다.The SH processor 210 may process a message received through the SH interface, and may include a UDR, PUR, and SNR processor according to a command of a diameter message.

이와 같은 구성요소들을 포함한 본 발명에 따른 다이아미터 메시지를 처리하는 시스템의 동작에 대하여 설명해 보자. An operation of a system for processing a diameter message according to the present invention including such components will be described.

다이아미터 프로세스부(201)의 메시지 수신부(203)는 CX 인터페이스부와 SH 인터페이스를 통해 I-CSCF 서버(211), S-CSCF 서버(212)와 AS 서버(213)로부터 다이아미터 메시지를 수신한다. 이 때, 메시지 수신부(203)는 다이아미터 프로토콜의 하위 프로토콜에 따라 다이아미터 메시지를 수신한다. 메시지 해독부(204)는 메시지 수신부(203)가 수신한 메시지의 헤더부를 디코딩하여 COMMAND 부분을 식별한다. 메시지 해독부(104)가 메시지의 COMMAND부분을 식별하면 메시지 분배부(205)는 이 COMMAND 정보에 따라 메시지에 INDEX를 할당한 후 MSG 참조 테이블에 해당 메시지에 관한 정보를 저장하여 메시지를 분류한다. 이 저장된 메시지는 해당 명령어에 따라 메시지 처리부(202)의 각 기능 처리부로 분배된다. 이 때, 각 기능 처리부를 MESSAGE QUEUE로서 구성해 메시지 처리부(202)는 자신의 큐로 들어온 메시지만을 기능에 맞게 처리하도록 한다. 예를 들어 CX 인터페이스를 통해 수신한 메시지의 명령어가 UAR인 경우 CX 프로세스부의 UAR 처리부로 분배되고 UAR 처리부에서 해당 메시지를 처리하게 된다. 메시지를 각각의 COMMAND CODE에 따라 처리한 후 그 처리결과를 메시지 대기부(206)에서 수신한다. 이 메시지는 메시지 인코딩부(105)에서 메시지의 HOP-BY-HOP ID 및 END-TO-END ID를 이용해 인코딩된 후 메시지 송신부(106)를 통해 외부 시스템으로 송신된다. The message receiving unit 203 of the diameter processing unit 201 receives the diameter message from the I-CSCF server 211, the S-CSCF server 212 and the AS server 213 through the CX interface unit and the SH interface. . At this time, the message receiving unit 203 receives the diameter message according to the lower protocol of the diameter protocol. The message decryption unit 204 decodes the header portion of the message received by the message reception unit 203 to identify the COMMAND portion. When the message decryption unit 104 identifies the COMMAND portion of the message, the message distribution unit 205 classifies the message by allocating INDEX to the message according to the COMMAND information and storing the information about the message in the MSG reference table. This stored message is distributed to each function processing unit of the message processing unit 202 according to the corresponding command. At this time, each function processing unit is configured as a MESSAGE QUEUE so that the message processing unit 202 processes only the message entered into its own queue according to the function. For example, if the command of the message received through the CX interface is UAR, it is distributed to the UAR processing unit of the CX process unit, and the UAR processing unit processes the message. After the message is processed according to each COMMAND CODE, the processing result is received by the message waiting unit 206. The message is encoded using the HOP-BY-HOP ID and the END-TO-END ID of the message in the message encoding unit 105 and then transmitted to the external system through the message transmitting unit 106.

이와 같은 동작과 상응하는 본 발명에 따른 다이아미터 메시지를 처리하는 방법에 대하여 첨부한 도면 5를 참조하여 단계적으로 설명해 보자.A method of processing a diameter message according to the present invention corresponding to such an operation will be described step by step with reference to the accompanying drawings.

도 5는 본 발명에 따른 다이아미터 메시지를 처리하는 방법에 대한 동작 플로우챠트를 나타낸 도면이다.5 is a flowchart illustrating an operation of a method of processing a diameter message according to the present invention.

홈 가입자 서버(200)는 다이아미터 메시지를 수신한다(S301). 다이아미터 프로세스부가 수신한 메시지를 COMMAND CODE별로 분류한다(S302). 다이아미터 프로세스부는 분류된 COMMAND CODE별 메시지를 대응하는 메시지 처리부(202)의 해당 기능 처리부로 분배하고 (S303) 메시지 처리부가 해당 COMMAND CODE를 처리하게 된다(S304). 이어서, 다이아미터 프로세스부는 각 프로세스에서 처리된 메시지의 결과를 수신하고(S305) 이 메시지에 대한 응답메시지는 인코딩하여(S306) 외부 시스템으로 전송한다(S307). The home subscriber server 200 receives a diameter message (S301). The diameter process classifies the received message by the COMMAND CODE (S302). The diameter processing unit distributes the classified COMMAND CODE messages to the corresponding function processing unit of the corresponding message processing unit 202 (S303), and the message processing unit processes the corresponding COMMAND CODE (S304). Subsequently, the diameter processor receives the result of the message processed in each process (S305), and the response message to the message is encoded (S306) and transmitted to the external system (S307).

도 1은 종래 기술에 따른 다이아미터 메시지를 처리하는 시스템에 대한 블록 구성을 나타낸 도면.1 is a block diagram of a system for processing diameter messages according to the prior art;

도 2는 다이아미터 메시지의 헤더정보를 나타낸 도면.2 is a diagram illustrating header information of a diameter message.

도 3은 본 발명에서 다이아미터 메시지의 분산 처리가 가능하도록 한 메시지 큐 구조를 나타낸 도면.3 is a diagram illustrating a message queue structure enabling distributed processing of diameter messages in the present invention.

도 4는 본 발명에 따른 다이아미터 메시지를 처리하는 시스템에 대한 블록 구성을 나타낸 도면. 4 is a block diagram of a system for processing a diameter message according to the present invention;

도 5는 본 발명에 따른 다이아미터 메시지를 처리하는 방법에 대한 동작 플로우챠트를 나타낸 도면.5 is an operational flowchart of a method of processing a diameter message in accordance with the present invention.

Claims (10)

수신한 다이아미터 메시지를 각각의 COMMAND CODE별로 메시지 처리부에 분배하는 다이아미터 프로세스부; 및A diameter processor for distributing the received diameter message for each COMMAND CODE; And 상기 다이아미터 프로세스부로부터 수신한 다이아미터 메시지를 각각의 COMMAND CODE별로 처리하여 다이아미터 프로세스부로 전송하는 메시지 처리부를 포함하는 다이아미터 메시지를 처리하는 시스템. And a message processing unit for processing the diameter message received from the diameter processing unit for each COMMAND CODE and transmitting the same to the diameter processing unit. 제 1항에 있어서,The method of claim 1, 상기 메시지 처리부는 각각의 COMMAND CODE별로 메시지를 처리하는 기능 처리부를 포함하는 것을 특징으로 하는 다이아미터 메시지를 처리하는 시스템. And the message processing unit includes a function processing unit processing a message for each COMMAND CODE. 제 2항에 있어서,The method of claim 2, 상기 기능 처리부는,The function processing unit, UAR 처리부, LIR 처리부, SAR 처리부, MAR 처리부, UDR 처리부, PUR 처리부, SNR 처리부 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 다이아미터 메시지를 처리하는 시스템.  And a UAR processing unit, an LIR processing unit, a SAR processing unit, a MAR processing unit, a UDR processing unit, a PUR processing unit, and an SNR processing unit. 제 1항에 있어서,The method of claim 1, 상기 메시지 처리부는,The message processing unit, 상기 COMMAND CODE별로 구성된 각각의 메시지 큐로 들어온 메시지만을 해당 COMMAND CODE에 맞게 처리하는 다이아미터 메시지를 처리하는 시스템. The system for processing a diameter message for processing only messages entered into each message queue configured for each COMMAND CODE according to the corresponding COMMAND CODE. 제 1항에 있어서,The method of claim 1, 상기 다이아미터 프로세스부는,The diameter process unit, 상기 다이아미터 메시지를 해당 COMMAND CODE별로 분류한 후 메시지 처리부로 분배하는 메시지 분배부;A message distribution unit classifying the diameter message for each COMMAND CODE and distributing the message to a message processing unit; 상기 메시지 처리부로부터 각 COMMAND CODE별로 처리된 결과 메시지를 수신하는 메시지 대기부;A message waiting unit receiving a result message processed for each COMMAND CODE from the message processing unit; 상기 다이아미터 메시지를 인코딩하여 응답 메시지를 생성하는 메시지 인코딩부; 및A message encoding unit encoding the diameter message to generate a response message; And 상기 인코딩된 메시지의 길이를 검증하여 해당하는 다이아미터의 하위 프로토콜에 따라 메시지를 전송하는 메시지 송신부를 포함하는 다이아미터 메시지를 처리하는 시스템.And a message transmitter for verifying a length of the encoded message and transmitting a message according to a lower protocol of a corresponding diameter. 제 5항에 있어서,The method of claim 5, 상기 메시지 분배부는,The message distribution unit, 메시지에 INDEX를 할당한 후 상기 INDEX 정보를 상기 분류된 COMMAND CODE별로 저장하는 MSG 참조 테이블을 포함하는 것을 특징으로 하는 다이아미터 메시지를 처리하는 시스템.And an MSG reference table for storing the INDEX information for each classified COMMAND CODE after allocating an INDEX to a message. 제 5항에 있어서,The method of claim 5, 상기 메시지 대기부는,The message waiting unit, 메시지 큐 다중화 방식 또는 MULTI-THREAD로 구성하는 것을 특징으로 하는 다이아미터 메시지를 처리하는 시스템.A system for processing a diameter message, characterized in that it is configured as message queue multiplexing or MULTI-THREAD. 다이아미터 메시지를 처리하는 방법에 있어서,In the method of processing a diameter message, 다이아미터 프로세스부가 상기 다이아미터 메시지를 COMMAND CODE에 따라 분류하는 단계;Classifying, by a diameter processor, the diameter message according to a COMMAND CODE; 상기 다이아미터 프로세스부가 분류한 COMMAND CODE별 메시지를 해당 COMMAND CODE에 대응하는 기능 처리부로 분배하는 단계; 및Distributing the message for each COMMAND CODE classified by the diameter processor to a function processing unit corresponding to the COMMAND CODE; And 상기 기능 처리부가 상기 다이아미터 프로세스부로부터 수신한 메시지를 해 당 COMMAND CODE에 따라 처리하는 단계를 포함하는 다이아미터 메시지를 처리하는 방법.And processing, by the function processing unit, a message received from the diameter processing unit according to a corresponding COMMAND CODE. 제 8항에 있어서,The method of claim 8, 상기 분류단계는,The classification step, 다이아미터 프로세스부가 다이아미터 메시지를 수신하는 단계;The diameter processor receiving a diameter message; 수신한 다이아미터 메시지의 헤더부를 디코딩하여 COMMAND 부분을 식별하는 단계;Decoding a header portion of the received diameter message to identify a COMMAND portion; 식별한 COMMAND 정보에 따라 다이아미터 메시지에 INDEX를 할당하는 단계; 및Allocating INDEX to the diameter message according to the identified COMMAND information; And 메시지에 INDEX를 할당한 후 상기 COMMAND 정보와 함께 상기 메시지에 관한 정보를 저장하여 분류하는 단계를 포함하는 것을 특징으로 하는 다이아미터 메시지를 처리하는 방법. Allocating INDEX to a message and storing and classifying information about the message together with the COMMAND information. 제 8항에 있어서,The method of claim 8, 상기 다이아미터 프로세스부가 상기 메시지 처리부로부터 해당 COMMAND CODE에 따른 메시지 처리 결과를 수신하는 단계; Receiving, by the diameter processor, a message processing result according to a corresponding COMMAND CODE from the message processing unit; 상기 다이아미터 프로세스부가 상기 수신한 메시지에 대한 응답 메시지를 생 성하는 단계; 및Generating, by the diameter processor, a response message to the received message; And 상기 다이아미터 프로세스부가 생성한 응답 메시지를 외부 시스템으로 전송하는 단계를 더 포함하는 다이아미터 메시지를 처리하는 방법.Transmitting the response message generated by the diameter processor to an external system.
KR1020070074061A 2007-07-24 2007-07-24 A System and Method for Processing a Diameter Message KR100890061B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070074061A KR100890061B1 (en) 2007-07-24 2007-07-24 A System and Method for Processing a Diameter Message

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070074061A KR100890061B1 (en) 2007-07-24 2007-07-24 A System and Method for Processing a Diameter Message

Publications (2)

Publication Number Publication Date
KR20090010724A KR20090010724A (en) 2009-01-30
KR100890061B1 true KR100890061B1 (en) 2009-03-25

Family

ID=40489855

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070074061A KR100890061B1 (en) 2007-07-24 2007-07-24 A System and Method for Processing a Diameter Message

Country Status (1)

Country Link
KR (1) KR100890061B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040040599A (en) * 2002-11-07 2004-05-13 한국전자통신연구원 Building and handling method of diameter protocol peer table in a system using diameter protocol
US20060067338A1 (en) 2004-09-30 2006-03-30 Shiyan Hua Method and apparatus for providing distributed SLF routing capability in an internet multimedia subsystem (IMS) network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040040599A (en) * 2002-11-07 2004-05-13 한국전자통신연구원 Building and handling method of diameter protocol peer table in a system using diameter protocol
US20060067338A1 (en) 2004-09-30 2006-03-30 Shiyan Hua Method and apparatus for providing distributed SLF routing capability in an internet multimedia subsystem (IMS) network

Also Published As

Publication number Publication date
KR20090010724A (en) 2009-01-30

Similar Documents

Publication Publication Date Title
US8516115B2 (en) Passing information to and from an application server in a communication system
US9131026B2 (en) Method and system for establishing media channel based on relay
EP1514194B1 (en) Authentication for IP application protocols based on 3GPP IMS procedures
US8379655B2 (en) Data network and method for executing forking
US8769262B2 (en) VPN connection system and VPN connection method
CN102165751B (en) Hiding a device identity
US8254288B2 (en) Method and an arrangement for handling a service request in a multimedia network
CN102035798B (en) Service processing method, system and device for realizing disaster tolerance
US9271331B2 (en) Conditional execution of commands
CN101480013A (en) Technique for providing access to a media resource attached to a network-registered device
JP2009043042A (en) Authentication system and authentication method
JP4838881B2 (en) Method, apparatus and computer program product for encoding and decoding media data
CN101262485A (en) Authentication method and system, server and client
CN100484013C (en) Access equipment, conference access method and conference service system
CN101047832B (en) Implementing method for service capability authentication and its trigger of internet network TV
EP1732007A1 (en) Authentication proxy method, distribution management device, and authentication proxy method program
CN101227474A (en) Method for identifying authority of conversation initialized protocol user in soft switching network
CN101489266B (en) IMS user stage controlling method and system based on signature data
CN101018238B (en) User identification system, registration, service and route configuration method
US20090113063A1 (en) Authentication method and apparatus for integrating ticket-granting service into session initiation protocol
JP5211579B2 (en) Authentication system and authentication method using SIP
KR100890061B1 (en) A System and Method for Processing a Diameter Message
JP2015091125A (en) Method of expanding application interface for future application
US7844817B2 (en) Ensuring quality of service in a communications network
CN101635632B (en) Method, system and device for authentication and configuration

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130304

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140103

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141231

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151228

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170102

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171213

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20200121

Year of fee payment: 12