KR20100079989A - Method for sending and receiving message in message network system - Google Patents

Method for sending and receiving message in message network system Download PDF

Info

Publication number
KR20100079989A
KR20100079989A KR20080138601A KR20080138601A KR20100079989A KR 20100079989 A KR20100079989 A KR 20100079989A KR 20080138601 A KR20080138601 A KR 20080138601A KR 20080138601 A KR20080138601 A KR 20080138601A KR 20100079989 A KR20100079989 A KR 20100079989A
Authority
KR
South Korea
Prior art keywords
messaging
message
application server
server
servers
Prior art date
Application number
KR20080138601A
Other languages
Korean (ko)
Other versions
KR101010911B1 (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 KR20080138601A priority Critical patent/KR101010911B1/en
Priority to JP2009289093A priority patent/JP5758572B2/en
Publication of KR20100079989A publication Critical patent/KR20100079989A/en
Application granted granted Critical
Publication of KR101010911B1 publication Critical patent/KR101010911B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/04Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access, e.g. scheduled or random access
    • H04W74/04Scheduled or contention-free access

Abstract

PURPOSE: A method for sending and receiving a message in a message network system is provided to minimize transmission delay time between application servers. CONSTITUTION: A plurality of second application servers(200) receives or transmits a message from the first application server(100). A messaging server(300) is respectively connected to both the first application server and the second application server. The first application server includes the first message connector. The first message connector transmits a service request message received from the outside to the messaging server.

Description

메시징 네트워크 시스템의 메시지 송수신 방법{METHOD FOR SENDING AND RECEIVING MESSAGE IN MESSAGE NETWORK SYSTEM}METHODO FOR SENDING AND RECEIVING MESSAGE IN MESSAGE NETWORK SYSTEM}

메시징 네트워크 시스템에 관한 것으로서, 보다 상세하게는, 메시징 네트워크 시스템에서 메시지를 송/수신하는 방법에 관한 것이다.The present invention relates to a messaging network system, and more particularly, to a method of transmitting / receiving a message in a messaging network system.

도 1은 종래 기술에 따른 메시징 네트워크 시스템의 연결 구조를 도시한 도면이다. 1 is a diagram illustrating a connection structure of a messaging network system according to the prior art.

도 1에 도시된 바와 같이, 종래 기술에 따른 메시징 네트워크 시스템(10)은 다수의 제 1 어플리케이션 서버(11), 다수의 제 2 어플리케이션 서버(12) 및 1 이상의 메시징 서버(13)를 포함한다. As shown in FIG. 1, a prior art messaging network system 10 includes a plurality of first application servers 11, a plurality of second application servers 12, and one or more messaging servers 13.

제 1 어플리케이션 서버(11) 및 제 2 어플리케이션 서버(12)는 각각 통신 가능한 터미널 노드(Terminal Node)로서, 예를 들어, 게임 서버, 게임 서버와 연결되는 로그인 서버, 랭킹 서버, 데이터베이스 서버, 채널리스트 서버, 공지 서버 등으로 구현될 수 있다. The first application server 11 and the second application server 12 are terminal nodes that can communicate with each other. For example, a game server, a login server connected to a game server, a ranking server, a database server, and a channel list. It may be implemented as a server, a known server.

제 1 어플리케이션 서버(11) 및 제 2 어플리케이션 서버(12)는 메시징 네트 워크를 구성하는 메시징 서버(13)들 중 하나에 연결된다. The first application server 11 and the second application server 12 are connected to one of the messaging servers 13 constituting the messaging network.

메시징 서버(13)는 제 1 어플리케이션 서버(11) 및 제 2 어플리케이션 서버(12) 사이의 메시지 송/수신을 수행하며, 서로 메시(mesh) 구조로 연결된 메시징 네트워크를 구성하고 있다. 예를 들어, 제 1 어플리케이션 서버(11-a)는 하나의 메시징 서버(13-1)에만 연결되어 있기 때문에, 메시지를 수신하려는 제 2 어플리케이션 서버(12-A)가 다른 메시징 서버(13-3)에 연결되어 있는 경우에는 그 메시징 서버(13-2)로 메시지를 전달해주는 방식으로 동작한다.The messaging server 13 performs message transmission / reception between the first application server 11 and the second application server 12 and forms a messaging network connected in a mesh structure to each other. For example, since the first application server 11-a is connected to only one messaging server 13-1, the second application server 12-A to receive a message is different from the messaging server 13-3. If it is connected to the), it operates in a manner that delivers the message to the messaging server (13-2).

또한, 메시징 서버(13)는 메시지 큐(Message Queue; MQ) 방식 즉, 제 1 어플리케이션 서버(11)가 송신한 메시지를 메시징 서버(13)에서 저장해 두었다가 요청하는 제 2 어플리케이션 서버(12)로 전달해주는 방식으로 동작한다 In addition, the messaging server 13 stores a message transmitted from the Message Queue (MQ) method, that is, the first application server 11 in the messaging server 13, and delivers the message to the second application server 12 that requests it. It works in a way

그러나, 상술한 바와 같은 종래의 메시징 네트워크 시스템에 따르면, 메시징 서버가 메시지 큐(MQ)에 메시지를 저장해 두고 요청하는 어플리케이션 서버로 전달하는 방식을 사용하기 때문에, 빠른 사용자 응답 시간이 필요한 인터넷 서비스에서 전달 지연 시간이 존재한다는 문제점이 있다. However, according to the conventional messaging network system as described above, since the messaging server stores a message in a message queue (MQ) and delivers the message to the requesting application server, the message is delivered from an Internet service requiring a fast user response time. There is a problem that there is a delay time.

또한, 종래 기술에 따른 메시징 네트워크 시스템에 따르면, 통신 대상이 되는 어플리케이션 서버의 위치에 따라 전달 지연 시간의 변동이 심하여 일관된 사용자 응답시간을 기대할 수 없다는 문제점이 있다.In addition, according to the messaging network system according to the prior art, there is a problem that can not expect a consistent user response time due to the fluctuation of the delivery delay time depending on the location of the application server to be communicated.

또한, 종래 기술에 따른 메시징 네트워크 시스템에 따르면, 임의의 어플리케이션 서버가 다량의 메시지를 생산하는 경우 해당 어플리케이션 서버가 연결된 메시징 서버에 과부하가 발생하게 되는데, 다른 메시징 서버가 충분이 그 부하를 감 당할 여력이 되어도 효과적으로 부하를 분산시킬 수가 없기 때문에, 과부하가 발생한 메시징 서버에 연결된 모든 어플리케이션 서버들의 성능 저하가 발생하는 문제점이 있다.In addition, according to the messaging network system according to the prior art, when any application server produces a large amount of messages, the messaging server to which the application server is connected is overloaded, and another messaging server can afford the load. In this case, since the load cannot be effectively distributed, performance of all application servers connected to the overloaded messaging server is degraded.

또한, 종래 기술에 따른 메시징 네트워크 시스템에 따르면, 수신 대상이 되는 어플리케이션 서버가 그룹인 경우 메시징 서버는 그 그룹에 속한 임의의 어플리케이션 서버로 메시지를 전송하는데, 어플리케이션 서버가 연결된 메시징 서버에 따라 트래픽이 집중되는 현상이 발생한다는 문제점이 있다.In addition, according to the messaging network system according to the prior art, when the receiving application server is a group, the messaging server sends a message to any application server belonging to the group, traffic is concentrated according to the messaging server to which the application server is connected There is a problem that occurs.

또한, 종래 기술에 따른 메시징 네트워크 시스템에 따르면, 메시징 서버가 메시 구조로 연결되어 있기 때문에 효과적인 메시지 전달을 위해 모든 어플리케이션이 어느 메시징 서버에 연결되어 있는지를 알아야 하며, 이를 위해 각 메시징 서버는 자신에게 연결된 어플리케이션 목록을 다른 메시징 서버와 교환해야 한다. 이러한 오버헤드는 메시징 서버 수가 증가됨에 따라 더 늘어나게 되어, 대량의 트래픽을 지원해야 하는 서비스의 경우 아무리 메시징 서버를 추가하여도 원하는 성능을 기대할 수 없다는 문제점이 있다.In addition, according to the prior art messaging network system, since messaging servers are connected in a mesh structure, it is necessary to know which messaging server is connected to all applications for effective message delivery. You must exchange the list of applications with another messaging server. This overhead is increased as the number of messaging servers increases, and there is a problem in that a service that needs to support a large amount of traffic cannot expect desired performance even if additional messaging servers are added.

또한, 종래 기술에 따른 메시징 네트워크 시스템에 따르면, 임의의 메시징 서버에 장애가 발생하면 그 메시징 서버에 연결된 모든 어플리케이션 서버에 장애가 발생하게 되며, 이러한 장애는 그 어플리케이션 서버가 다른 메시징 서버를 찾아 접속하고, 접속 정보가 다른 모든 메시징 서버로 전파될 때까지 계속된다는 문제점이 있다.In addition, according to the messaging network system according to the prior art, if any messaging server fails, all application servers connected to the messaging server will fail, and this failure will cause the application server to find and connect to another messaging server. The problem is that the information continues until it is propagated to all other messaging servers.

본 발명의 일 실시예는 어플리케이션 서버 간에 필요한 홉 수를 최소로 하고 메시지 큐(MQ)를 없앰으로써 어플리케이션 서버 간의 전송 지연 시간을 최소화할 수 있어 인터넷 서비스 사용자로 하여금 빠른 사용자 응답 시간이 가능한 메시징 네트워크 시스템을 제공한다.An embodiment of the present invention is to minimize the number of hops required between the application server and to eliminate the message queue (MQ) to minimize the transmission delay between the application server messaging network system that allows the user of the Internet service fast user response time To provide.

또한, 본 발명의 일 실시예는 메시징 서버 간에 교환하는 정보가 없기 때문에 메시징 서버 수에 따른 오버헤드가 발생하지 않으므로 메시징 서버를 추가한 만큼 전체 메시징 네트워크의 성능이 일정하게 증가할 수 있는 메시징 네트워크 시스템을 제공한다.In addition, according to an embodiment of the present invention, since there is no information exchanged between messaging servers, the overhead of the number of messaging servers does not occur, so that the performance of the entire messaging network can be increased constantly as more messaging servers are added. To provide.

또한, 본 발명의 일 실시예는 어플리케이션 서버가 송신하는 메시지는 각 메시징 서버로 골고루 분산되므로 메시징 서버 간의 부하 분산이 효과적으로 이루어질 수 있는 메시징 네트워크 시스템을 제공한다.In addition, an embodiment of the present invention provides a messaging network system that can be effectively distributed load between the messaging server because the message sent by the application server is evenly distributed to each messaging server.

또한, 본 발명의 일 실시예는 메시징 네트워크 상의 각 어플리케이션 서버는 모든 메시징 서버에 연결되어 있기 때문에 한 메시징 서버에 장애가 발생하더라도 즉각 다른 메시징 서버를 통해 메시지를 주고 받을 수 있는 메시징 네트워크 시스템을 제공한다.In addition, an embodiment of the present invention provides a messaging network system capable of immediately sending and receiving messages through another messaging server even if one messaging server fails because each application server on the messaging network is connected to all messaging servers.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측 면은 메시징 네트워크 시스템에 있어서, 복수의 제 1 어플리케이션 서버, 상기 제 1 어플리케이션 서버로부터 메시지를 수신하거나 메시지를 송신하는 복수의 제 2 어플리케이션 서버 및 상기 제 1 어플리케이션 서버 및 상기 제 2 어플리케이션 서버 모두와 각각 연결된 메시징 서버를 포함하되, 상기 제 1 어플리케이션 서버와 제 2 어플리케이션 서버는 상기 메시징 서버를 라운드로빈 방식으로 선택하는 것인 메시징 네트워크 시스템을 제공한다. As a technical means for achieving the above-described technical problem, a first aspect of the present invention is a messaging network system, a plurality of first application server, a plurality of agents for receiving or transmitting a message from the first application server; And a messaging server connected to each of the second application server and both the first and second application servers, wherein the first and second application servers select the messaging server in a round-robin fashion. Provide a system.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 2 측면은 메시징 네트워크 시스템의 메시지 송/수신 방법에 있어서, 복수의 제 1 어플리케이션 서버와 메시징 네트워크 상의 모든 메시징 서버 간의 연결을 설정하는 단계, 복수의 제 2 어플리케이션 서버와 메시징 네트워크 상의 모든 메시징 서버 간의 연결을 설정하는 단계, 상기 제 1 어플리케이션 서버로부터의 서비스 요청 메시지를 메시징 네트워크 상의 모든 메시징 서버를 대상으로 라운드로빈 방식으로 선택하여 전송하는 단계 및 상기 서비스 요청 메시지에 대응하는 상기 제 2 어플리케이션 서버의 응답 메시지를 메시징 네트워크 상의 모든 메시징 서버를 대상으로 라운드로빈 방식으로 선택하여 전송하는 단계를 포함하는 메시징 네트워크 시스템의 메시지 송/수신 방법을 제공한다.As a technical means for achieving the above technical problem, the second aspect of the present invention provides a method for transmitting and receiving a message in a messaging network system, the method comprising: establishing a connection between a plurality of first application servers and all messaging servers on the messaging network; Establishing a connection between the plurality of second application servers and all the messaging servers on the messaging network, and selecting and transmitting a service request message from the first application server to all the messaging servers on the messaging network in a round robin manner. And selecting and transmitting a response message of the second application server corresponding to the service request message to all the messaging servers on the messaging network in a round robin manner. Provided.

전술한 본 발명의 과제 해결 수단 중 하나에 의하면, 어플리케이션 서버 간에 필요한 홉 수를 최소로 하고 메시지 큐(MQ)를 없앰으로써 어플리케이션 서버 간 의 전송 지연 시간을 최소화할 수 있어 인터넷 서비스 사용자로 하여금 빠른 사용자 응답 시간을 기대할 수 있다.According to one of the problem solving means of the present invention described above, by minimizing the number of hops required between the application server and eliminating the message queue (MQ), it is possible to minimize the transmission delay time between the application server allows the Internet service user to be a fast user You can expect a response time.

또한, 본 발명의 다른 과제 해결 수단 중 하나에 의하면, 메시징 서버 간에 교환하는 정보가 없기 때문에 메시징 서버 수에 따른 오버헤드가 발생하지 않으므로 메시징 서버를 추가한 만큼 전체 메시징 네트워크의 성능이 일정하게 증가한다.In addition, according to one of the other problem solving means of the present invention, since there is no information exchanged between the messaging server, the overhead according to the number of messaging servers does not occur, so that the performance of the entire messaging network is constantly increased as more messaging servers are added. .

또한, 본 발명의 또 다른 과제 해결 수단 중 하나에 의하면, 어플리케이션 서버가 송신하는 메시지는 각 메시징 서버로 골고루 분산되므로 메시징 서버 간의 부하 분산이 효과적으로 이루어질 수 있다.In addition, according to one of the other problem solving means of the present invention, since the message sent by the application server is evenly distributed to each messaging server, load balancing between the messaging servers can be effectively made.

또한, 본 발명의 또 다른 과제 해결 수단 중 하나에 의하면, 메시징 서버가 전달하는 메시지도 수신 그룹에 포함되어 있는 각 어플리케이션 서버에 골고루 분배되므로 어플리케이션 서버 간의 부하 분산도 효과적으로 이루어질 수 있다.In addition, according to one of the other problem solving means of the present invention, since the message delivered by the messaging server is evenly distributed to each application server included in the receiving group, load balancing between the application servers can be effectively achieved.

또한, 본 발명의 또 다른 과제 해결 수단 중 하나에 의하면, 메시징 네트워크 상의 각 어플리케이션 서버는 모든 메시징 서버에 연결되어 있기 때문에 한 메시징 서버에 장애가 발생하더라도 즉각 다른 메시징 서버를 통해 메시지를 주고 받을 수 있어 서비스에는 전혀 영향을 주지 않는다.In addition, according to one of the other problem solving means of the present invention, since each application server on the messaging network is connected to all the messaging server, even if one messaging server fails, it is possible to send and receive messages through another messaging server immediately Has no effect at all.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하 는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless otherwise stated.

이하에는 도 2 내지 도 9를 참조하여, 본 발명의 일 실시예에 따른 메시징 네트워크 시스템에서 메시지를 송/수신하는 방법을 설명한다.Hereinafter, a method of transmitting / receiving a message in a messaging network system according to an embodiment of the present invention will be described with reference to FIGS. 2 to 9.

도 2는 본 발명의 일 실시예에 따른 메시징 네트워크의 개념을 설명하기 위한 도면이다.2 is a view for explaining the concept of a messaging network according to an embodiment of the present invention.

도 2에 도시한 바와 같이, 본 발명의 일 실시예에 따른 메시징 네트워크는 가상적으로 하나의 메시징 버스를 제공하며, 메시징 네트워크 상의 어플리케이션 서버(100)는 이 메시징 버스를 공유하여 같은 네트워크에 연결된 다른 어플리케이션 서버와 통신할 수 있게 된다.As shown in FIG. 2, a messaging network in accordance with one embodiment of the present invention virtually provides one messaging bus, and the application server 100 on the messaging network shares this messaging bus to other applications connected to the same network. You will be able to communicate with the server.

도 3은 본 발명의 일 실시예에 따른 메시징 네트워크 시스템의 연결 구조를 도시한 도면이다.3 is a diagram illustrating a connection structure of a messaging network system according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 메시징 네트워크 시스템(1000)은 다수의 제 1 어플리케이션 서버(100), 다수의 제 2 어플리케이션 서 버(200) 및 1 이상의 메시징 서버(300)를 포함한다. Referring to FIG. 3, a messaging network system 1000 according to an embodiment of the present invention may include a plurality of first application servers 100, a plurality of second application servers 200, and one or more messaging servers 300. Include.

제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)는 통신 가능한 터미널 노드(Terminal node)로서, 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)의 각각은 메시징 네트워크 상의 모든 메시징 서버(300)와 연결된다. 즉, 제 1 어플리케이션 서버(100-a)는 메시징 서버(310) 및 메시징 서버(320)과 각각 연결되고, 제 2 어플리케이션 서버(200-A)도 메시징 서버(310) 및 메시징 서버(320)과 각각 연결된다.The first application server 100 and the second application server 200 are terminal nodes that can communicate, and each of the first application server 100 and the second application server 200 are all messaging servers on the messaging network. Connected with 300. That is, the first application server 100-a is connected to the messaging server 310 and the messaging server 320, respectively, and the second application server 200-A is also connected to the messaging server 310 and the messaging server 320. Each is connected.

메시징 서버(300)는 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200) 간의 메시지 전송을 수행하며, 효율적인 메시지 전송을 위해 전송 경로를 설정하거나 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200) 간의 연결 관계를 설정한다. The messaging server 300 performs a message transmission between the first application server 100 and the second application server 200, and establishes a transmission path for efficient message transmission or sets the first application server 100 and the second application server. A connection relationship between the 200 is set.

전술한 구성에서, 메시징 네트워크 상의 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)의 각각은 모든 메시징 서버(300)에 연결되는 중복된 스타 구조로 되어 있으며, 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)는 메시징 서버(300)를 라운드로빈 방식으로 선택한다. 이에 대한 자세한 설명은 후술하기로 한다. In the above-described configuration, each of the first application server 100 and the second application server 200 on the messaging network has a redundant star structure connected to all the messaging servers 300, the first application server 100 And the second application server 200 selects the messaging server 300 in a round robin manner. A detailed description thereof will be described later.

상술한 바와 같은 본 발명의 일 실시예에 따른 메시징 네트워크 시스템(1000)은 메시징 네트워크 상의 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)의 각각이 모든 메시징 서버(300)에 연결되는 중복된 스타 구조로 되어 있으므로, 어느 메시징 서버를 통하더라도 원하는 어플리케이션 서버로 접근 할 수 있다. 따라서, 임의의 메시징 서버에 장애가 발생하더라도 전체 메시징 네트워크는 정상적으로 운영될 수 있다. In the messaging network system 1000 according to an embodiment of the present invention as described above, each of the first application server 100 and the second application server 200 on the messaging network is connected to all the messaging servers 300. Because of its star structure, any messaging server can access any application server. Thus, even if any messaging server fails, the entire messaging network can operate normally.

또한, 본 발명의 일 실시예에 따른 메시징 네트워크 시스템(1000)은 메시징 네트워크 상의 각 메시징 서버는 모든 어플리케이션 서버와 직접 연결되어 있기 때문에 어플리케이션 서버 간의 메시지 중개를 위한 모든 정보를 자체적으로 저장하고 있다. 이로 인해 메시징 서버 간에 공유 정보를 싱크하기 위한 작업이 필요하지 않으므로, 메시징 서버를 추가함으로써 발생할 수 있는 운영 상의 부하 분산도 효과적으로 이루어질 수 있으며, 메시징 서버 간에 교환하는 정보가 없기 때문에 메시징 서버 수에 따른 오버헤드가 발생하지 않으므로 메시징 서버를 추가한 만큼 전체 메시징 네트워크의 성능이 일정하게 증가한다.In addition, the messaging network system 1000 according to an embodiment of the present invention stores all the information for message brokering between application servers because each messaging server on the messaging network is directly connected to all application servers. This eliminates the need for sinking shared information between messaging servers, so that the operational load balancing that can occur by adding messaging servers is also effective, and there is no information exchanged between messaging servers. Since no heads are generated, the performance of the entire messaging network increases consistently with the addition of messaging servers.

도 4는 본 발명의 일 실시예에 따른 메시징 네트워크 시스템의 세부 구성도이다. 4 is a detailed block diagram of a messaging network system according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)는 각각 제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)를 포함하고, 메시징 서버(310)는 필터 관리 모듈(311), 필터(312), 필터(313) 및 채널 관리 모듈(314)을 포함하여 이루어진다. Referring to FIG. 4, the first application server 100 and the second application server 200 according to an embodiment of the present invention include a first message connector 110 and a second message connector 210, respectively. The messaging server 310 includes a filter management module 311, a filter 312, a filter 313, and a channel management module 314.

제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)는 각각 제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)를 이용하여 메시징 서버(310)에 연결되어 외부로부터의 서비스 요청 메시지를 송/수신한다. The first application server 100 and the second application server 200 are connected to the messaging server 310 by using the first message connector 110 and the second message connector 210, respectively, to receive a service request message from the outside. Send / receive

제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)는 메시징 네트워크 상 의 다른 어플리케이션 서버와의 통신을 제공하며, 가상 소켓을 지원한다. The first message connector 110 and the second message connector 210 provide communication with other application servers on the messaging network and support virtual sockets.

제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)는 각각 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)의 요청에 따라, 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)를 메시징 네트워크 상의 모든 메시징 서버와 연결한다. 여기서, 제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)는 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)와 임의의 메시징 서버 사이의 연결이 일시적으로 종료된 경우에 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)에 통보하는 일 없이 자동으로 연결을 복구할 수 있으며, 이때, 연결 복구 과정에서의 메시지 송/수신은 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)가 메시징 네트워크 상의 모든 메시징 서버와 연결되기 때문에, 다른 메시징 서버를 통해서 정상적으로 처리할 수 있다. The first message connector 110 and the second message connector 210 may be configured according to the request of the first application server 100 and the second application server 200, respectively. 200) to all messaging servers on the messaging network. In this case, the first message connector 110 and the second message connector 210 may be connected to the first message server 100 when the connection between the first application server 100 and the second application server 200 and any messaging server is temporarily terminated. The connection may be automatically recovered without notifying the application server 100 and the second application server 200. In this case, the message transmission / reception in the connection recovery process may be performed by the first application server 100 and the second application. Because server 200 is connected to all messaging servers on the messaging network, it can normally process through other messaging servers.

또한, 제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)는 제 1 어플리케이션 서버(100) 및 제 2 어플리케이션 서버(200)로부터 요청된 메시지 전송이 불가능한 경우에, 이에 대한 알림 기능을 제공한다. 이때, 메시지 전송이 불가능한 경우로는, 대상 어플리케이션 서버가 메시징 네트워크에 연결되어 있지 않는 경우, 메시징 네트워크로의 연결 복구가 불가능 한 경우, 메시징 네트워크의 구성 상 대상 어플리케이션 서버로의 전달이 불가능한 경우, Session 전송 방식인 경우 및 메시지 전송 시 미리 지정된 타임아웃(Timeout)이 초과될 때까지 전송이 완료되지 않은 경우 등을 포함할 수 있다.In addition, the first message connector 110 and the second message connector 210 provide a notification function when the requested message transmission from the first application server 100 and the second application server 200 is impossible. . At this time, if the message transmission is impossible, if the target application server is not connected to the messaging network, if the connection to the messaging network is impossible, if the delivery to the target application server is impossible due to the configuration of the messaging network, the Session It may include the case of the transmission method and the case in which the transmission is not completed until a predetermined timeout is exceeded in the message transmission.

지금까지는 제 1 메시지 커넥터(110) 및 제 2 메시지 커넥터(210)가 제 1 어 플리케이션 서버(100) 및 제 2 어플리케이션 서버(200) 내에 존재하는 것을 예로 들어 설명하였지만, 이는 단지 예를 들어 설명하기 위한 것일 뿐, 이에 한정되는 것이 아니며, 각각을 메시징 네트워크 상의 별개의 모듈로 구현할 수도 있다. So far, the first message connector 110 and the second message connector 210 have been described as being present in the first application server 100 and the second application server 200 as an example, but this is merely described as an example. It is not intended to be limited thereto, but each may be implemented as a separate module on a messaging network.

한편, 본 발명의 일 실시예에 따른 메시징 서버(310)는 필터 관리 모듈(311), 필터(312) 및 채널 관리 모듈(313)을 포함하여 이루어진다.Meanwhile, the messaging server 310 according to an embodiment of the present invention includes a filter management module 311, a filter 312, and a channel management module 313.

필터 관리 모듈(311)은 ACL 필터(312) 및 Etc 필터(313)를 관리한다. 즉, 필터 관리 모듈(311)은 메시징 서버(310)가 수신하는 모든 메시지에 대해 ACL 필터(312) 및 Etc 필터(313)를 적용하며, ACL 필터(312) 및 Etc 필터(313)의 적용 후에 메시지의 허용/금지 여부를 판단하여 허용된 메시지만 대상 어플리케이션 서버로 송신한다. 이때, 필터 관리 모듈(311)은 금지된 메시지에 대해서는 필터의 설정에 따라 송신 어플리케이션 서버로 NAK 메시지를 발송할 수 있다.The filter management module 311 manages the ACL filter 312 and the Etc filter 313. That is, the filter management module 311 applies the ACL filter 312 and the Etc filter 313 to all messages received by the messaging server 310, and after applying the ACL filter 312 and the Etc filter 313. It determines whether the message is allowed or prohibited and sends only the allowed message to the target application server. At this time, the filter management module 311 may send a NAK message to the transmitting application server according to the filter setting for the prohibited message.

ACL 필터(312)는 각 메시지의 송/수신자 정보를 확인하여 권한 있는 어플리케이션 서버가 보낸 메시지인지를 검사한다. ACL 필터(312)는 적용되는 ACL 레벨에 따라 도메인 레벨과 메소드 레벨의 2가지 방식이 지원될 수 있다. The ACL filter 312 checks the sender / receiver information of each message to check whether the message is from a privileged application server. The ACL filter 312 may support two methods, a domain level and a method level, depending on the applied ACL level.

ACL 필터(312)가 도메인 레벨 방식인 경우에는 메시지의 송/수신자의 주소에서 도메인 아이디(Domain-ID)를 확인하여 허용된 도메인의 어플리케이션 서버가 보낸 메시지인지를 검사한다. 이때, 도메인 레벨의 ACL 검사를 위해 ACL 필터는 각 도메인의 어플리케이션 서버에 허용 또는 금지된 상태의 도메인 목록을 관리한다. When the ACL filter 312 is a domain level method, the domain ID is checked at the address of the sender / receiver of the message to check whether the message is sent by an application server of an allowed domain. At this time, the ACL filter manages the list of domains that are allowed or prohibited by the application server of each domain for ACL checking at the domain level.

ACL 필터(312)가 메소드 레벨 방식인 경우에는 도메인 레벨 방식의 ACL 필터가 수행하는 검사와 함께 메시지의 페이로드(Payload) 부분을 조사하여 허용된 커 맨드의 메시지인지를 추가로 검사한다. If the ACL filter 312 is a method level method, the payload portion of the message is examined by checking a message performed by a domain level ACL filter to further check whether the message is an allowed command.

표 1은 본 발명의 일 실시예에 따른 ACL 필터의 설정에 필요한 정보의 일 예이다. Table 1 is an example of information required for setting an ACL filter according to an embodiment of the present invention.

[표 1]TABLE 1

Figure 112008091105266-PAT00001
Figure 112008091105266-PAT00001

도 5는 본 발명의 일 실시예에 따른 메시지 전송 방법을 설명하기 위한 도면이다. 5 is a view for explaining a message transmission method according to an embodiment of the present invention.

도 5를 참조하면, 어플리케이션 서버(A) 및 어플리케이션 서버(B) 사이에 전송되는 메시지는 바이너리 데이터(Binary data) 형태의 메시지를 사용하며, 최대 메시지 크기는 4GB이지만 64KB보다 큰 메시지는 64KB 이내의 작은 단위로 나누어져 전송될 수 있다.Referring to FIG. 5, a message transmitted between an application server A and an application server B uses a message in the form of binary data. A maximum message size is 4 GB but a message larger than 64 KB is within 64 KB. It can be transmitted in small units.

메시지의 전송 시간은 메시지 전체를 송신 및 수신하는 시간과 메시지가 한 노드에서 다른 노드로 전달되는 시간의 합이다. 보통 인터넷 데이터 센터(IDC) 내의 한 노드에서 다른 노드로 전달되는데 걸리는 지연 시간은 예를 들어, 1ms 이내이지만, 메시지 자체를 송/수신하는 시간은 메시지의 크기에 비례한다. 예를 들어, 1MB 메시지의 경우 100Mbps 네트워크를 가정하면 메시지의 전송 시간은 80ms가 된다. The transmission time of a message is the sum of the time of sending and receiving the entire message and the time that the message is passed from one node to another. Usually, the delay time from one node to another node in the Internet data center (IDC) is within 1 ms, for example, but the time for transmitting / receiving the message itself is proportional to the size of the message. For example, assuming a 100Mbps network for a 1MB message, the transmission time of the message is 80ms.

더욱이, 메시지를 릴레이하는 서버, 즉, 메시징 서버(310)가 중간에 존재하는 경우에 메시지의 크기가 커지면 송/수신 시간이 2배로 늘어나지만, 메시지를 작은 단위로 나누어 전송하면 항상 그 작은 단위만큼의 전송시간만 더 소요된다.Moreover, if a server relaying a message, that is, a messaging server 310, is present in the middle, a larger message size doubles the transmission / reception time. Only takes more time.

도 6은 본 발명의 일 실시예에 따른 어플리케이션 서버에 부여되는 주소 체계를 설명하기 위한 도면이다. 6 is a diagram illustrating an address system provided to an application server according to an exemplary embodiment of the present invention.

도 6에 도시한 바와 같이, 본 발명의 일 실시예에 따른 메시징 네트워크 시스템(1000)은 각 어플리케이션 서버에 대해 소정의 주소(Address)가 부여되며, 각 어플리케이션 서버는 이 주소를 이용하여 다른 어플리케이션 서버와 통신할 수 있다. As shown in FIG. 6, the messaging network system 1000 according to an embodiment of the present invention is given a predetermined address to each application server, and each application server uses this address to provide another application server. Communicate with

주소 정보는 도메인 아이디(Domain-ID), 아이디씨 아이디(IDC-ID), 서버 아이디(Server-ID) 및 소켓 아이디(Socket-ID)를 포함한다. The address information includes a domain ID (ID-ID), IDC ID (IDC-ID), server ID (Server-ID), and socket ID (Socket-ID).

도메인 아이디(Domain-ID)는 동일한 기능을 수행하는 어플리케이션 서버들을 지정하는데 사용되며, 애니캐스트(Anycast)와 멀티캐스트(Multicast) 메시지는 보통 도메인 아이디(Domain-ID)를 기준으로 전송한다.Domain ID is used to designate application servers that perform the same function. Anycast and Multicast messages are usually transmitted based on Domain ID.

아이디씨 아이디(IDC-ID)는 어플리케이션 서버가 속한 IDC(Internet Data Center)를 구분하기 위해 사용되며, 아이디씨 아이디(IDC-ID) 값이 0이면 임의의 IDC로 메시지가 전송되며, 그 외의 값이면 해당 IDC로 메시지가 전송된다.IDC ID is used to distinguish the Internet Data Center (IDC) to which the application server belongs. If IDC ID is 0, the message is sent to any IDC. If so, the message is sent to the IDC.

서버 아이디(Server-ID)는어플리케이션 서버를 구별하기 위해 사용되며, 도메인 아이디(Domain-ID), 아이디씨 아이디(IDC-ID)와 결합하여 고유 ID가 된다. 메시징 네트워크 상의 모든 어플리케이션 서버는 각각의 서버 아이디(Server-ID)를 가진다. 예를 들어, 서버 아이디(Server-ID) 값이 0이면 애니캐스트(Anycast)로 해당 도메인(Domain)에 속한 임의의 어플리케이션 서버로 메시지가 전송되며, 서버 아이디(Server-ID) 값이 0xFFFF이면 멀티캐스트(Multicast)로 해당 도메인(Domain)에 속한 모든 어플리케이션 서버로 메시지가 전송된다.The server ID is used to distinguish the application server, and is combined with the domain ID and IDC ID to become a unique ID. Every application server on a messaging network has its own server ID (Server-ID). For example, if the Server-ID value is 0, the message is sent to any application server in the domain by Anycast, and if the Server-ID value is 0xFFFF, By multicast, messages are sent to all application servers in the domain.

소켓 아이디(Socket-ID)는 하나의 어플리케이션 서버 내에서 여러 개의 통신 채널을 사용하고자 하는 경우에 각 채널을 구별하기 위해 사용된다. Socket-ID is used to distinguish each channel when using multiple communication channels in one application server.

도 7은 본 발명의 일 실시예에 따른 메시징 네트워크 시스템의 부하 분산 방법을 설명하기 위한 도면이다. 7 is a diagram illustrating a load balancing method of a messaging network system according to an embodiment of the present invention.

도 7에 도시한 바와 같이, 본 발명의 일 실시예에 따른 메시징 네트워크 시스템은 특정 도메인(Domain)으로 애니캐스트(Anycast) 메시지를 전송할 때, 그 도메인 내에서 수신 대상이 될 어플리케이션 서버를 적절하게 분산하여 선택한다. 즉, 메시징 서버는 라운드로빈(Round-Robin) 방식으로 해당 도메인에 속한 어플리케이션 서버들에게 순서대로 돌아가면서 메시지를 전송한다. As shown in FIG. 7, the messaging network system according to an embodiment of the present invention properly distributes an application server to be received in a domain when transmitting an Anycast message to a specific domain. To select. In other words, the messaging server sends messages in a round-robin fashion to the application servers belonging to the corresponding domain.

예를 들어, 어플리케이션 서버(A)가 도메인 101로 보낸 3개의 애니캐스트 메시지는 도메인 101에 속해 있는 어플리케이션 서버(B, C, D)에 각각 하나씩 전달된다.For example, three anycast messages sent by the application server A to the domain 101 are delivered to each of the application servers B, C, and D belonging to the domain 101.

상술한 바와 같은 본 발명의 일 실시예에 따른 메시징 네트워크 시스템은 메시징 서버가 전달하는 메시지를 수신 그룹에 포함되어 있는 각 어플리케이션 서버에 골고루 분배하므로 어플리케이션 서버 간의 부하 분산이 효과적으로 이루어질 수 있다.As described above, the messaging network system according to the embodiment of the present invention evenly distributes the messages delivered by the messaging server to each application server included in the receiving group, thereby effectively balancing the load between the application servers.

도 8은 본 발명의 일 실시예에 따른 다중 IDC를 지원하는 메시징 네트워크 시스템을 설명하기 위한 도면이다.8 is a diagram illustrating a messaging network system supporting multiple IDCs according to an embodiment of the present invention.

도 8에 도시한 바와 같이, 본 발명의 일 실시예에 따른 메시징 네트워크 시스템은 메시징 서버가 여러 IDC에 분산 설치되어 동작할 수 있으며, 이때, 각 메시지 커넥터는 기본적으로 같은 IDC에 속한 메시징 서버로 메시지를 전송함으로써 IDC 간의 불필요한 통신 부하가 발생하는 것을 방지한다. 한편, 같은 IDC에 속한 모든 메시징 서버가 장애나 기타 사유로 통신이 불가능한 경우에는 타 IDC에 속한 메시징 서버로 메시지를 송신할 수 있다.As shown in FIG. 8, the messaging network system according to an embodiment of the present invention may operate with a messaging server distributed in multiple IDCs. In this case, each message connector basically sends a message to a messaging server belonging to the same IDC. By transmitting the A to prevent unnecessary communication load between IDCs. On the other hand, if all messaging servers belonging to the same IDC are unable to communicate due to failure or other reasons, the message can be sent to the messaging server belonging to another IDC.

도 9는 본 발명의 일 실시예에 따른 메시지의 송/수신 방법을 설명하기 위한 흐름도이다. 9 is a flowchart illustrating a message transmission / reception method according to an embodiment of the present invention.

단계(S11)에서 제 1 어플리케이션 서버(100)는 연결을 원하는 제 2 어플리케이션 서버(200)로의 연결 요청 메시지를 제 1 메시지 커넥터(110)로 전달하고, 단계(S12)에서 제 1 메시지 커넥터(110)는 메시징 네트워크 상의 모든 메시징 서버(300)와 제 1 어플리케이션 서버(100) 사이에 가상 연결을 설정한다. In operation S11, the first application server 100 transmits a connection request message to the second application server 200 to be connected to the first message connector 110, and in operation S12, the first message connector 110. ) Establishes a virtual connection between all messaging servers 300 and the first application server 100 on the messaging network.

단계(S13)에서 제 1 메시지 커넥터(110)는 제 1 어플리케이션 서버(100)와 연결된 모든 메시징 서버(300)를 대상으로 제 1 어플리케이션 서버(100)로부터의 연결 요청 메시지를 라운드로빈 방식으로 선택하여 전송한다. In step S13, the first message connector 110 selects a connection request message from the first application server 100 in a round robin manner to all the messaging servers 300 connected to the first application server 100. send.

단계(S14)에서 메시징 서버(300)는 제 1 메시지 커넥터(110)로부터 수신한 제 1 어플리케이션 서버(100)의 연결 요청 메시지에 포함된 목적지 정보를 확인한 다음, 단계(S15)에서 메시징 서버(310,320)는 해당하는 제 2 메시지 커넥터(210)로 메시지를 전송한다. In step S14, the messaging server 300 checks destination information included in the connection request message of the first application server 100 received from the first message connector 110, and then in step S15, the messaging servers 310 and 320. ) Transmits the message to the corresponding second message connector 210.

단계(S16)에서 제 2 메시지 커넥터(210)는 제 2 어플리케이션 서버(200)로 메시지를 전송한다. In operation S16, the second message connector 210 transmits a message to the second application server 200.

제 1 어플리케이션 서버(100)의 서비스 요청 메시지가 수신되면, 단계(S17)에서 제 2 어플리케이션 서버(200)는 응답 메시지를 제 2 메시지 커넥터(210)로 전달하고, 단계(S18)에서 제 2 메시지 커넥터(210)는 메시징 네트워크 상의 모든 메시징 서버(300)와 제 2 어플리케이션 서버(200) 사이에 가상의 연결을 설정한다. When the service request message of the first application server 100 is received, in operation S17, the second application server 200 transmits a response message to the second message connector 210, and in operation S18, the second message. Connector 210 establishes a virtual connection between all messaging servers 300 and second application server 200 on the messaging network.

단계(S19)에서 제 2 메시지 커넥터(210)는 제 2 어플리케이션 서버(200)와 연결된 모든 메시징 서버(300)를 대상으로 제 2 어플리케이션 서버(200)로부터의 연결 요청 메시지를 라운드로빈 방식으로 선택하여 전송한다. In operation S19, the second message connector 210 may select a connection request message from the second application server 200 in a round robin manner to all the messaging servers 300 connected to the second application server 200. send.

단계(S20)에서 메시징 서버(300)는 제 2 메시지 커넥터(210)로부터 수신한 제 2 어플리케이션 서버(200)의 연결 요청 메시지에 포함된 목적지 정보를 확인하고, 단계(S21)에서 메시징 서버(300)는 제 1 메시지 커넥터(110)로 메시지를 전송한다. In step S20, the messaging server 300 checks destination information included in the connection request message of the second application server 200 received from the second message connector 210, and in step S21, the messaging server 300. ) Sends a message to the first message connector 110.

마지막으로, 단계(S22)에서 제 1 메시지 커넥터(110)는 제 1 어플리케이션 서버(100)로 제 2 어플리케이션 서버(200)의 응답 메시지를 전송한다. Finally, in step S22, the first message connector 110 transmits a response message of the second application server 200 to the first application server 100.

전술한 구성에서, 시스템 장애 등으로 인해 제 1 어플리케이션 서버(100)와 연결된 메시징 서버(300) 중 제 1 메시징 서버(310)가 비정상적으로 종료되면, 제 1 메시지 커넥터(110)는 제 1 메시징 서버(310)와의 연결을 자동으로 복구하며, 이때, 연결 복구 과정에서의 메시지 송/수신은 제 1 어플리케이션 서버(100)와 연결 된 다른 메시징 서버, 즉, 제 2 메시징 서버(320)와의 연결을 수행한다. 이는 각 어플리케이션 서버가 메시징 네트워크 상의 모든 메시징 서버와 연결되어 있기 때문에, 다른 메시징 서버를 통해서 정상적으로 처리할 수 있다. In the above-described configuration, when the first messaging server 310 of the messaging server 300 connected to the first application server 100 is abnormally terminated due to a system failure, the first message connector 110 is connected to the first messaging server. The connection with the 310 is automatically restored, and in this case, the message transmission / reception in the connection recovery process is performed with another messaging server connected with the first application server 100, that is, with the second messaging server 320. do. This can be handled normally through other messaging servers because each application server is connected to every messaging server on the messaging network.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. One embodiment of the present invention can also be implemented in the form of a recording medium containing instructions executable by a computer, such as a program module executed by the computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transmission mechanism, and includes any information delivery media.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들 도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

도 1은 종래 기술에 따른 메시징 네트워크 시스템의 연결 구조를 도시한 도면이다. 1 is a diagram illustrating a connection structure of a messaging network system according to the prior art.

도 2는 본 발명의 일 실시예에 따른 메시징 네트워크의 개념을 설명하기 위한 도면이다.2 is a view for explaining the concept of a messaging network according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 메시징 네트워크 시스템의 연결 구조를 도시한 도면이다. 3 is a diagram illustrating a connection structure of a messaging network system according to an embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 메시징 네트워크 시스템의 세부 구성도이다. 4 is a detailed block diagram of a messaging network system according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 메시지 전송 방법을 설명하기 위한 도면이다. 5 is a view for explaining a message transmission method according to an embodiment of the present invention.

도 6은 본 발명의 일 실시예에 따른 어플리케이션 서버에 부여되는 주소 체계를 설명하기 위한 도면이다. 6 is a diagram illustrating an address system provided to an application server according to an exemplary embodiment of the present invention.

도 7은 본 발명의 일 실시예에 따른 메시징 네트워크 시스템의 부하 분산 방법을 설명하기 위한 도면이다. 7 is a diagram illustrating a load balancing method of a messaging network system according to an embodiment of the present invention.

도 8은 본 발명의 일 실시예에 따른 다중 IDC를 지원하는 메시징 네트워크 시스템을 설명하기 위한 도면이다.8 is a diagram illustrating a messaging network system supporting multiple IDCs according to an embodiment of the present invention.

도 9는 본 발명의 일 실시예에 따른 메시지의 송/수신 방법을 설명하기 위한 흐름도이다. 9 is a flowchart illustrating a message transmission / reception method according to an embodiment of the present invention.

Claims (9)

메시징 네트워크 시스템에 있어서,In a messaging network system, 복수의 제 1 어플리케이션 서버,A plurality of first application servers, 상기 제 1 어플리케이션 서버로부터 메시지를 수신하거나 메시지를 송신하는 복수의 제 2 어플리케이션 서버 및A plurality of second application servers for receiving or transmitting messages from the first application server; 상기 제 1 어플리케이션 서버 및 상기 제 2 어플리케이션 서버 모두와 각각 연결된 메시징 서버A messaging server connected to both the first application server and the second application server respectively; 를 포함하되,Including, 상기 제 1 어플리케이션 서버와 제 2 어플리케이션 서버는 상기 메시징 서버를 라운드로빈 방식으로 선택하는 것인 메시징 네트워크 시스템.The first application server and the second application server select the messaging server in a round-robin fashion. 제 1 항에 있어서,The method of claim 1, 상기 제 1 어플리케이션 서버는 외부로부터의 서비스 요청 메시지를 수신하여 상기 메시징 서버로 전송하는 제 1 메시지 커넥터를 포함하되,The first application server includes a first message connector for receiving a service request message from the outside and sending it to the messaging server, 상기 제 1 메시지 커넥터는, 상기 서비스 요청 메시지를 상기 메시징 네트워크 상의 모든 메시징 서버를 대상으로 라운드로빈 방식으로 전송하는 것인 메시징 네트워크 시스템.And wherein said first message connector sends said service request message to all messaging servers on said messaging network in a round-robin fashion. 제 2 항에 있어서,The method of claim 2, 상기 제 2 어플리케이션 서버는 상기 제 1 어플리케이션 서버로부터의 서비스 요청 메시지에 대응하는 응답 메시지를 상기 메시징 서버로 전송하는 제 2 메시지 커넥터를 포함하되,The second application server includes a second message connector for transmitting a response message corresponding to the service request message from the first application server to the messaging server, 상기 제 2 메시지 커넥터는 상기 응답 메시지를 상기 메시징 네트워크 상의 모든 메시징 서버를 대상으로 라운드로빈 방식으로 전송하는 것인 메시징 네트워크 시스템.And wherein said second message connector sends said response message to all messaging servers on said messaging network in a round-robin fashion. 제 3 항에 있어서,The method of claim 3, wherein 상기 메시징 서버는,The messaging server, 상기 제 1 어플리케이션 서버로부터 수신한 모든 메시지에 대해, 허용 또는 금지 여부를 판단하여 허용된 메시지만 상기 제 2 어플리케이션 서버로 전송하도록 메시지 필터를 제어하는 필터 관리 모듈A filter management module for controlling a message filter to determine whether to allow or prohibit all messages received from the first application server and to transmit only allowed messages to the second application server. 을 포함하는 것인 메시징 네트워크 시스템.Messaging network system comprising a. 제 3 항에 있어서,The method of claim 3, wherein 상기 제 1 메시지 커넥터 및 제 2 메시지 커넥터는, 상기 메시징 네트워크 상의 메시징 서버 중 하나의 메시징 서버와의 연결이 비정상적으로 종료된 경우에 상기 제 1 어플리케이션 서버 및 제 2 어플리케이션 서버 사이의 메시지 송/수신을 상기 메시징 네트워크 상의 다른 메시징 서버를 통해 수행하는 것인 메시징 네트워크 시스템.The first message connector and the second message connector are configured to transmit / receive a message between the first application server and the second application server when the connection with one of the messaging servers on the messaging network ends abnormally. Messaging network system through another messaging server on the messaging network. 메시징 네트워크 시스템의 메시지 송/수신 방법에 있어서,In the messaging network system message transmission / reception method, 복수의 제 1 어플리케이션 서버와 메시징 네트워크 상의 모든 메시징 서버 간의 연결을 설정하는 단계,Establishing a connection between the plurality of first application servers and all messaging servers on the messaging network; 복수의 제 2 어플리케이션 서버와 메시징 네트워크 상의 상기 모든 메시징 서버 간의 연결을 설정하는 단계,Establishing a connection between a plurality of second application servers and all said messaging servers on a messaging network; 상기 제 1 어플리케이션 서버로부터의 서비스 요청 메시지를 메시징 네트워크 상의 모든 메시징 서버를 대상으로 라운드로빈 방식으로 선택하여 전송하는 단계 및Selecting and transmitting a service request message from the first application server in a round robin manner to all messaging servers on a messaging network; 상기 서비스 요청 메시지에 대응하는 상기 제 2 어플리케이션 서버의 응답 메시지를 메시징 네트워크 상의 모든 메시징 서버를 대상으로 라운드로빈 방식으로 선택하여 전송하는 단계Selecting and transmitting a response message of the second application server corresponding to the service request message to all messaging servers on a messaging network in a round robin manner; 를 포함하는 메시징 네트워크 시스템의 메시지 송/수신 방법.Message transmission and reception method of a messaging network system comprising a. 상기 제 1 어플리케이션 서버로부터 수신한 메시지에 포함된 목적지 정보에 기초하여, 상기 수신한 메시지를 제 2 어플리케이션 서버로 전송하는 단계Transmitting the received message to a second application server based on destination information included in the message received from the first application server. 를 더 포함하는 메시징 네트워크 시스템의 메시지 송/수신 방법.Message transmission and reception method of the messaging network system further comprising. 제 6 항에 있어서,The method of claim 6, 상기 메시징 네트워크 상의 메시징 서버 중 하나의 메시징 서버와의 연결이 비정상적으로 종료된 경우에 상기 제 1 어플리케이션 서버 및 제 2 어플리케이션 서버 사이의 메시지 송/수신은 상기 메시징 네트워크 상의 다른 메시징 서버를 통해 수행하는 것인 메시징 네트워크 시스템의 메시지 송/수신 방법.Sending and receiving a message between the first application server and the second application server when the connection to one of the messaging servers on the messaging network is abnormally terminated through another messaging server on the messaging network. How to send and receive messages in an in-messaging network system. 청구항 제 6 항 내지 제 8 항 중 어느 한 항에 기재된 메시지 송/수신 방법의 각 단계를 컴퓨터 상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium having recorded thereon a program for performing on a computer each step of the message transmission / reception method according to any one of claims 6 to 8.
KR20080138601A 2008-12-31 2008-12-31 Method for sending and receiving message in message network system KR101010911B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20080138601A KR101010911B1 (en) 2008-12-31 2008-12-31 Method for sending and receiving message in message network system
JP2009289093A JP5758572B2 (en) 2008-12-31 2009-12-21 Message transmission / reception method of messaging network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20080138601A KR101010911B1 (en) 2008-12-31 2008-12-31 Method for sending and receiving message in message network system

Publications (2)

Publication Number Publication Date
KR20100079989A true KR20100079989A (en) 2010-07-08
KR101010911B1 KR101010911B1 (en) 2011-01-26

Family

ID=42575069

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20080138601A KR101010911B1 (en) 2008-12-31 2008-12-31 Method for sending and receiving message in message network system

Country Status (2)

Country Link
JP (1) JP5758572B2 (en)
KR (1) KR101010911B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3089435B1 (en) * 2014-01-20 2023-08-30 Huawei Technologies Co., Ltd. Service processing method and network device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4040628B2 (en) * 2003-02-27 2008-01-30 富士通株式会社 Communication control program
US9525566B2 (en) * 2003-07-31 2016-12-20 Cloudsoft Corporation Limited Self-managed mediated information flow
US8190780B2 (en) 2003-12-30 2012-05-29 Sap Ag Cluster architecture having a star topology with centralized services
WO2006004995A2 (en) * 2004-06-30 2006-01-12 Glenayre Electronics, Inc. Load balancing in a distributed telecommunications platform
TW200841189A (en) * 2006-12-27 2008-10-16 Ibm Technique for accurately detecting system failure
JP2008236543A (en) * 2007-03-22 2008-10-02 Hitachi Ltd Communication path control method and program, and communication apparatus

Also Published As

Publication number Publication date
KR101010911B1 (en) 2011-01-26
JP2010157225A (en) 2010-07-15
JP5758572B2 (en) 2015-08-05

Similar Documents

Publication Publication Date Title
US7562145B2 (en) Application instance level workload distribution affinities
CN101291205B (en) Backup data transmitting method, system, mirror-image server
CN102893556B (en) Method, system and equipment for source peer-to-peer Diameter based on capacity load Sharing
CN102404229B (en) System, device and method for load balancing
JP4756188B2 (en) Messaging application router
US20020143953A1 (en) Automatic affinity within networks performing workload balancing
US20110222442A1 (en) Routing requests for duplex applications
US20020143965A1 (en) Server application initiated affinity within networks performing workload balancing
US11251981B2 (en) Communication method and apparatus
CN102546559A (en) Method, equipment and system for end-to-end transmission of data in challenged network
CN107689878A (en) TCP length connection SiteServer LBSs based on name scheduling
CN111327650A (en) Data transmission method, device, equipment and storage medium
EP2764658A1 (en) Method for using intelligent router in charging system and apparatus associated therewith
WO2006065101A1 (en) Method for balancing load among subsystems in communication network system of bus network structure
CN102137104B (en) Transmission control protocol (TCP) long-connection access control method and device
CN103200214A (en) Method and system for processing off-line messages in centralized mode
KR101010911B1 (en) Method for sending and receiving message in message network system
CN102281580B (en) M2M system and service processing method thereof
JP5526780B2 (en) Load distribution system, service processing server, load distribution method, and load distribution program
KR101944744B1 (en) Message processing apparatus
CN105188087A (en) Business communication method and system based on short message gateway
US7647379B2 (en) System and method for re-routing messaging traffic to external resources
CN109451074B (en) Server load balancing processing method based on portal protocol
CN106060155A (en) P2P (Peer to Peer) resource sharing method and device
EP3210116B1 (en) Queue handling

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: 20131231

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151223

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170116

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180102

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 10