KR100717239B1 - Method and apparatus for providing reliable communication between member servers belonging to the same multicast group - Google Patents
Method and apparatus for providing reliable communication between member servers belonging to the same multicast group Download PDFInfo
- Publication number
- KR100717239B1 KR100717239B1 KR1020050054151A KR20050054151A KR100717239B1 KR 100717239 B1 KR100717239 B1 KR 100717239B1 KR 1020050054151 A KR1020050054151 A KR 1020050054151A KR 20050054151 A KR20050054151 A KR 20050054151A KR 100717239 B1 KR100717239 B1 KR 100717239B1
- Authority
- KR
- South Korea
- Prior art keywords
- server
- sequence
- message
- stored
- servers
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1881—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with schedule organisation, e.g. priority, sequence management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
본 발명은 동일한 멀티캐스트 그룹 내에 속하는 구성원 서버들 간에 신뢰성 있는 통신을 보장하기 위한 것으로, 본 발명에 따라 신뢰성 있는 통신을 제공하기 위한 방법은 상기 멀티캐스트 그룹에 속하는 제1 구성원 서버의 서버 시퀀스 저장부에 상기 제1 구성원 서버에 대응하는 제1 서버 시퀀스 및 상기 제1 구성원 서버와 동일한 멀티캐스트 그룹에 속하는 다른 구성원 서버들 각각에 대응하는 저장된 서버 시퀀스들을 유지하는 단계, 상기 멀티캐스트 그룹에 속하는 상기 다른 구성원 서버들에게 멀티캐스트 메시지를 송신할 때 상기 멀티캐스트 메시지에 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 제1 서버 시퀀스를 포함하여 전송하는 단계, 상기 멀티캐스트 메시지를 송신할 때마다 상기 서버 시퀀스 저장부에 유지된 상기 제1 서버 시퀀스를 소정의 값만큼 증가시키는 단계, 상기 구성원 서버와 동일한 멀티캐스트 그룹에 속하는 제2 구성원 서버로부터 최종 시퀀스 통지 메시지 - 상기 최종 시퀀스 통지 메시지는 상기 제2 구성원 서버의 제2 서버 식별자 및 상기 제2 구성원 서버에 대응하는 제2 서버 시퀀스를 포함함 - 를 수신하는 단계, 상기 최종 시퀀스 통지 메시지에 포함된 제2 서버 식별자를 참조하여 상기 서버 시퀀스 저장부에 저장된 상기 제2 서버 식별자에 대응하는 제2 저장된 서버 시퀀스를 식별하는 단계, 및 상기 제2 서버 시퀀스가 상기 제2 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 크거나 같은 경우, 상기 제2 구성원 서버에게 상기 제2 저장된 서버 시퀀스에 상기 소정의 값을 합산한 서버 시퀀스에 대응하는 멀티캐스 트 메시지의 재전송을 요구하는 단계를 포함한다. The present invention is to ensure reliable communication between member servers belonging to the same multicast group, and a method for providing reliable communication according to the present invention includes a server sequence storage unit of a first member server belonging to the multicast group. Maintaining a first server sequence corresponding to the first member server and stored server sequences corresponding to each of the other member servers belonging to the same multicast group as the first member server in the other member belonging to the multicast group. Transmitting a multicast message to member servers, including the first server identifier and the first server sequence identifying the first member server in the multicast message, each time the multicast message is transmitted. The first server held in the server sequence storage unit Increasing the sequence by a predetermined value, wherein a final sequence notification message is received from a second member server belonging to the same multicast group as the member server, wherein the final sequence notification message is a second server identifier of the second member server and the second; And a second server sequence corresponding to the member server, the second server identifier corresponding to the second server identifier stored in the server sequence storage with reference to the second server identifier included in the final sequence notification message. Identifying a stored server sequence, and if the second server sequence is greater than or equal to a sum of a predetermined value with the second stored server sequence, sending the predetermined member to the second stored server sequence in the second stored server sequence. Requesting retransmission of the multicast message corresponding to the server sequence sum of The.
멀티캐스트, UDP, 재전송 요청, 수신 확인 메시지, 서버 시퀀스 Multicast, UDP, Resend Request, Acknowledgment Message, Server Sequence
Description
도 1은 종래 발명에 따라 복수 개의 서비스 서버에 접속하는 사용자 단말기들의 네트워크 접속을 도시한 도면. 1 is a diagram illustrating a network connection of user terminals accessing a plurality of service servers according to the related art.
도 2는 종래 발명에 따라 사용자들의 로케이션 정보를 관리하기 위한 로케이션 서버와 서비스 서버들의 네트워크 접속을 도시한 도면. 2 is a diagram illustrating a network connection of a location server and a service server for managing location information of users according to the related art.
도 3은 본 발명에 따라 멀티캐스트 그룹으로 구성된 복수 개의 로케이션 서버와 서비스 서버 및 사용자 단말기의 네트워크 연결을 도시한 도면. 3 is a diagram illustrating a network connection between a plurality of location servers, a service server, and a user terminal configured in a multicast group according to the present invention.
도 4는 종래 기술에 따른 통신 제공 방법의 일실시예를 도시한 도면.4 illustrates an embodiment of a communication providing method according to the prior art.
도 5는 종래 기술에 따른 통신 제공 방법의 다른 실시예를 도시한 도면.5 illustrates another embodiment of a communication providing method according to the prior art.
도 6은 본 발명에 따라 동일한 멀티캐스트 그룹에 포함된 복수 개의 로케이션 서버의 네트워크 연결을 도시한 도면.6 illustrates network connections of a plurality of location servers included in the same multicast group in accordance with the present invention.
도 7은 본 발명에 따른 구성원 서버에서 최종 시퀀스 통지 메시지를 수신하여 처리하는 과정을 도시한 도면.7 is a diagram illustrating a process of receiving and processing a final sequence notification message in a member server according to the present invention.
도 8은 본 발명에 따른 구성원 서버에서 멀티캐스트 메시지를 수신하여 처리하는 과정을 도시한 도면.8 is a diagram illustrating a process of receiving and processing a multicast message in a member server according to the present invention.
도 9는 본 발명에 따라 구성원 서버간 신뢰성 있는 통신 방법을 제공하는 일실시예를 도시한 도면.9 illustrates an embodiment for providing a reliable communication method between member servers according to the present invention.
도 10은 본 발명에 따라 구성원 서버간 신뢰성 있는 통신 방법을 제공하는 다른 실시예를 도시한 도면.10 illustrates another embodiment for providing a reliable communication method between member servers according to the present invention.
도 11은 본 발명의 일실시예에 따른 신뢰성 있는 통신을 제공하기 위한 구성원 서버의 구성을 도시한 블록도.11 is a block diagram illustrating a configuration of a member server for providing reliable communication according to an embodiment of the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
1101: 서버 시퀀스 저장부 1102: 메시지 송신부1101: server sequence storage unit 1102: message transmission unit
1103: 서버 시퀀스 관리부 1104: 메시지 수신부1103: server sequence management unit 1104: message receiving unit
1105: 서버 시퀀스 검색부 1106: 재전송 요청부1105: server sequence search unit 1106: retransmission request unit
1107: 메시지 검색부 1107: message search unit
본 발명은 동일한 멀티캐스트 그룹 내에 속하는 구성원 서버들 간에 신뢰성 있는 통신을 보장하기 위한 통신 제공 방법 및 장치에 관한 것으로서, 더욱 상세하게는 멀티캐스트 그룹 내에 속하는 각 구성원 서버에 다른 구성원 서버들 각각에 대응하는 서버 시퀀스를 유지하여 구성원 서버들 간의 신뢰성 있는 통신을 제공하기 위한 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for providing communication for ensuring reliable communication between member servers belonging to the same multicast group, and more particularly, to each member server belonging to a multicast group corresponding to each of the other member servers. A method and apparatus for maintaining a server sequence to provide reliable communication between member servers.
도 1은 종래 발명에 따라 복수 개의 서비스 서버에 접속하는 사용자 단말기 들의 네트워크 접속을 도시한 도면이다. 1 is a diagram illustrating a network connection of user terminals accessing a plurality of service servers according to the related art.
도 1에서 사용자 PC(101, 102)를 사용하는 사용자는 인터넷(103)을 통하여 자신이 플레이하고 싶은 온라인 게임을 제공하는 게임 서버(104, 105, 106)에 접속한다. 예를 들어, 게임 서버(104, 105)는 고스톱 게임 서비스를 제공하고, 게임 서버(106)는 훌라 게임 서비스를 제공할 수 있다. 이 때 상기 사용자의 로그인/로그아웃은 각 게임 서버(104, 105, 106)에서 별도로 수행되고, 사용자의 로그인/로그아웃 정보도 각 게임 서버(104, 105, 106)에서 별도로 관리되었다. 따라서, 종래기술에서는 하나의 게임 서버에 로그인한 사용자는 다른 게임 서버에 로그인한 사용자의 현재 상태(예를 들어, 로그인했는지 로그아웃했는지 또는 어떤 게임을 하고 있는지)를 전혀 알 수 없었다.In Fig. 1, a user who uses the user PCs 101 and 102 connects to the
도 2는 종래 발명에 따라 사용자들의 로케이션 정보를 관리하기 위한 로케이션 서버와 서비스 서버들의 네트워크 접속을 도시한 도면이다.2 is a diagram illustrating a network connection between a location server and a service server for managing location information of users according to the related art.
도 1에 도시된 구성의 문제점을 해결하기 위하여 모든 게임 서버들(204, 205, 206)에서의 사용자들의 로그인/로그아웃 정보를 집중적으로 관리할 수 있는 로케이션 서버(Location Server)(207)가 제안 되었다. 사용자들이 자신의 사용자 PC(201, 202) 및 인터넷(103)을 통하여 자신이 플레이하고 싶은 온라인 게임을 제공하는 게임 서버(204, 205, 206)에 접속하면, 게임 서버들(204, 205, 206)은 사용자의 로그인/로그아웃 정보를 로케이션 서버(207)로 송신한다. 그러면, 로케이션 서버(207)는 모든 게임 서버들(204, 205, 206)에서의 사용자들의 로그인/로그아웃 정보를 집중적으로 관리하게 되므로, 어느 게임 서버에 로그인한 사용자들의 상태 도 사용자에게 제공할 수 있게 된다.In order to solve the problem of the configuration illustrated in FIG. 1, a
그러나, 현재 제공되고 있는 온라인 게임은 수백 대의 게임 서버들에 의하여 제공되고 있고, 이러한 게임 서버들 각각에 의하여 관리되던 로그인/로그아웃 정보의 관리를 하나의 로케이션 서버에서 관리하려고 하면 로케이션 서버에 대한 시스템의 부하(load)가 너무 커지는 문제점이 발생한다.However, currently provided online games are provided by hundreds of game servers, and if one attempts to manage the login / logout information managed by each of these game servers in one location server, the system for the location server The problem arises that the load of is too large.
따라서, 이러한 로케이션 서버에 대해 집중되는 시스템 부하의 문제를 해결하기 위하여 로케이션 서버를 멀티캐스트 그룹(multicast group)으로 구성하는 방식이 제안된다. 도 3은 본 발명에 따라 멀티캐스트 그룹으로 구성된 복수 개의 로케이션 서버와 서비스 서버 및 사용자 단말기의 네트워크 연결을 도시한 도면이다. 상기 멀티캐스트 그룹에 속하는 로케이션 서버들은 사용자의 로그인/로그아웃 상태와 관련하여 동일한 상태 정보를 가져야 한다.Therefore, in order to solve the problem of system load concentrated on the location server, a method of configuring the location server into a multicast group is proposed. 3 is a diagram illustrating a network connection between a plurality of location servers, a service server, and a user terminal configured as a multicast group according to the present invention. Location servers belonging to the multicast group should have the same status information in relation to the user's login / logout status.
따라서, 상기 멀티캐스트 그룹에 속하는 로케이션 서버들은 상기 사용자의 로그인/로그아웃 상태와 관련하여 동일한 상태 정보를 가지기 위해 상기 멀티캐스트 그룹에 속하는 하나의 로케이션 서버가 사용자의 로그인/로그아웃 메시지를 수신하면, 상기 로그인/로그아웃 메시지 수신에 응답하여 멀티캐스트 메시지를 생성하여 상기 동일 그룹에 속하는 다른 로케이션 서버들로 송신하게 된다. Therefore, when location servers belonging to the multicast group have the same status information with respect to the login / logout status of the user, when one location server belonging to the multicast group receives the login / logout message of the user, In response to receiving the login / logout message, a multicast message is generated and transmitted to other location servers belonging to the same group.
그런데, 상기 메시지의 송수신에 UDP(User Datagram Protocol) 통신과 같이 신뢰성이 보장되지 않는 통신 환경을 이용하는 경우, 메시지의 교환 과정에서 상기 메시지가 손실되는 경우가 발생한다. 로케이션 서버들 간의 신뢰성 있는 통신은 매우 중요하므로, 메시지 송신에 사용하는 매체 및 통신 수단이 신뢰성 있는 통신 을 보장하지 않는 경우에도 로케이션 서버들 간에 신뢰성 있는 통신을 제공하기 위한 방법 및 장치 개발의 필요성이 절실하게 요청되고 있다. However, when using a communication environment in which reliability is not guaranteed, such as UDP (User Datagram Protocol) communication, the message may be lost during the exchange of the message. Since reliable communication between location servers is very important, there is an urgent need to develop a method and apparatus for providing reliable communication between location servers even when the medium and communication means used for message transmission do not guarantee reliable communication. Is requested.
도 4는 종래 기술에 따른 통신 제공 방법의 일실시예를 도시한 도면이다. 도 4를 참조하면, 제1 서버(401)는 제2 서버(402)와 네트워크 연결되어 소정의 메시지를 송수신할 수 있다. 그러나 종래 기술의 UDP 통신 환경에서는 송수신 과정에서 상기 메시지가 손실될 수 있는 문제가 있었다. 4 is a diagram illustrating an embodiment of a communication providing method according to the prior art. Referring to FIG. 4, the
예를 들어, 제1 서버(401)에서 메시지 1, 메시지 2, 메시지 3를 제2 서버(402)로 차례로 전송하고, 메시지 4를 마지막으로 전송하였는데, 메시지 4가 전송 과정에서 손실되어 제2 서버(402)로 전달되지 못하는 문제점이 생길 수 있다. For example, the
이 경우, 제1 서버(401)가 메시지 5를 제2 서버로 전송하면, 제2 서버는 상기 메시지 4가 손실되었음을 판단하고, 제1 서버(401)로 재전송을 요청하게 된다. 상기 제1 서버(401)은 상기 재전송 요청에 따라 메시지 4를 제2 서버(402)로 재전송하게 된다. 그러나 이러한 손실 메시지의 재전송은 두 대의 서버간 메시지를 교환할 때, 적용될 수 있는 것이며, 상술한 바와 같이 동일 그룹에 속하는 서버가 복수일 경우, 상기 복수의 서버간 교환되는 메시지 중 일부가 손실되는 경우에는 적용되지 못하는 문제점이 있다. In this case, when the
또한 도 4는 손실된 메시지가 일련의 시퀀스 번호를 가지는 메시지 중 중간의 메시지, 즉, 메시지 3과 메시지 5 사이의 메시지 4가 손실된 경우, 손실 여부를 판별하여 재전송을 요구하는 경우이나, 일련의 시퀀스 번호를 가지는 메시지 중 마지막 메시지가 손실된 경우, 상기와 같은 방식으로 처리할 수 없는 문제점이 있다. In addition, FIG. 4 illustrates a case in which a lost message is a message in the middle of a message having a sequence number, that is, a
도 5는 종래 기술에 따른 통신 제공 방법의 다른 실시예를 도시한 도면이다. 도 5를 참조하면, 제1 서버(501)는 제2 서버(502)와 네트워크 연결되어 소정의 메시지를 송수신할 수 있다. 그러나 종래 기술의 UDP 통신 환경에서는 제1 서버(501) 에서 제2 서버(502)로 송신한 마지막 메시지가 손실되는 경우, 제2 서버에서는 이를 판별할 수 없어 제1 서버로 재전송을 요청할 수 없는 문제점이 있었다. 5 is a view showing another embodiment of a communication providing method according to the prior art. Referring to FIG. 5, the
예를 들어, 제1 서버(501)에서 메시지 1, 메시지 2, 메시지 3을 제2 서버(502)로 차례로 전송하고, 메시지 4를 마지막으로 전송하였는데, 메시지 4가 전송 과정에서 손실되어 제2 서버(502)로 전달되지 못하는 문제점이 생길 수 있다. For example, the
이 경우, 제 2 서버(502)는 상기 메시지 4가 손실되었음을 인식하지 못하거나, 또는 상당 시간이 지난 후에 다른 메시지가 수신되면 손실되었음을 인식하므로, 제1 서버(501) 및 제2 서버(502)간 데이터 및 상태가 불일치하게 되는 문제점이 있다. In this case, the
따라서, 상기와 같이 신뢰성 없는 통신 환경을 개선하여 서버간 메시지의 송수신을 신뢰성 있게 구현하여 동일 그룹에 속한 로케이션 서버간 데이터 및 상태가 동일하게 유지될 수 있도록 하는 통신 제공 방법 또는 장치 개발의 필요성이 절실하게 요청되고 있다.Therefore, there is an urgent need to develop a communication providing method or device for improving the unreliable communication environment as described above to reliably implement the transmission and reception of messages between servers so that data and states between location servers belonging to the same group can be kept the same. Is requested.
본 발명은 서버간 메시지의 송수신을 신뢰성 있게 구현하여 동일 멀티캐스트 그룹에 속한 로케이션 서버간 데이터 및 상태가 동일하게 유지될 수 있도록 하는 통신 제공 방법 또는 장치를 제공하는 것을 목적으로 한다.It is an object of the present invention to provide a communication providing method or apparatus for reliably implementing transmission and reception of messages between servers so that data and states between location servers belonging to the same multicast group can be kept the same.
또한 본 발명은 동일한 멀티캐스트 그룹에 속하는 구성원 서버 중 멀티캐스트 메시지를 다른 구성원 서버들로 전송한 제1 구성원 서버는 상기 멀티캐스트 메시지의 수신을 확인하는 최종 시퀀스 통지 메시지를 상기 다른 구성원 서버들로 전송함으로써, 다른 구성원 서버들이 손실된 멀티캐스트 메시지가 있는지를 확인하여 손실된 경우, 재전송 요청하도록 하여 동일 멀티캐스트 그룹에 속하는 구성원 서버들이 상호간의 메시지를 송수신할 때, 손실되는 메시지를 판별하여 재전송 요청하도록 함으로써, 신뢰성있는 통신을 제공하는 것을 다른 목적으로 한다.The present invention also provides a first member server that transmits a multicast message to other member servers among member servers belonging to the same multicast group to transmit a final sequence notification message confirming receipt of the multicast message to the other member servers. Thus, other member servers check for missing multicast messages and, if lost, request retransmission so that member servers belonging to the same multicast group send and receive messages to each other to determine the lost messages and retransmit them. By doing so, it is another object to provide reliable communication.
또한 본 발명은 멀티캐스트 메시지를 전송한 제1 서버는 일정한 시간 간격으로 제1 서버 식별자 및 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 다른 구성원 서버들로 전송함으로써, 제1 서버가 멀티캐스트 메시지를 전송한 후, 소정의 기간 동안 다른 멀티캐스트 메시지를 다른 서버들로 전송하지 않더라도, 다른 서버들이 제1 서버 시퀀스에 해당하는 메시지가 손실된 것을 판단하여 재전송을 요청할 수 있도록 하여 신뢰성 있는 통신을 제공하는 것을 또 다른 목적으로 한다. In addition, according to the present invention, the first server transmitting the multicast message transmits a final sequence notification message including the first server identifier and the first server sequence to other member servers at regular time intervals, whereby the first server transmits the multicast message. After transmitting, even if other multicast messages are not transmitted to other servers for a predetermined period of time, other servers can determine that the message corresponding to the first server sequence is lost and request retransmission to provide reliable communication. To do it for another purpose.
또한 본 발명은 전송된 메시지의 시퀀스를 판별하여 메시지의 손실 여부를 판단하고 재전송을 요청하여 수신함으로써, 손실된 메시지로 인한 오류를 방지하고, 동일 그룹에 속하는 구성원 서버들간 신뢰성있는 통신 방법으로 메시지를 송수신할 수 있도록 하는 것을 또 다른 목적으로 한다.In addition, the present invention by determining the sequence of the transmitted message to determine whether the message is lost, by requesting the retransmission to receive the error, to prevent errors due to the lost message, the message is transmitted in a reliable communication method between member servers belonging to the same group Another purpose is to allow transmission and reception.
또한 본 발명은 동일 그룹에 속하는 하나의 구성원 서버가 마지막으로 전송한 메시지가 손실되더라도 다른 구성원 서버에서 이를 판단하여 재전송을 요청함으로써, 신뢰성 있는 통신을 제공하는 것을 또 다른 목적으로 한다. Another object of the present invention is to provide reliable communication by requesting retransmission by determining that the other member server determines that the last message transmitted by one member server belonging to the same group is lost.
상기의 목적을 달성하고 상술한 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따라 동일한 멀티캐스트 그룹에 속하는 구성원 서버들 간의 신뢰성 있는 통신을 제공하기 위한 방법에 있어서, 상기 멀티캐스트 그룹에 속하는 제1 구성원 서버의 서버 시퀀스 저장부에 상기 제1 구성원 서버에 대응하는 제1 서버 시퀀스 및 상기 제1 구성원 서버와 동일한 멀티캐스트 그룹에 속하는 다른 구성원 서버들 각각에 대응하는 저장된 서버 시퀀스들을 유지하는 단계, 상기 멀티캐스트 그룹에 속하는 상기 다른 구성원 서버들에게 멀티캐스트 메시지를 송신할 때 상기 멀티캐스트 메시지에 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 제1 서버 시퀀스를 포함하여 전송하는 단계, 상기 멀티캐스트 메시지를 송신할 때마다 상기 서버 시퀀스 저장부에 유지된 상기 제1 서버 시퀀스를 소정의 값만큼 증가시키는 단계, 상기 구성원 서버와 동일한 멀티캐스트 그룹에 속하는 제2 구성원 서버로부터 최종 시퀀스 통지 메시지 - 상기 최종 시퀀스 통지 메시지는 상기 제2 구성원 서버의 제2 서버 식별자 및 상기 제2 구성원 서버에 대응하는 제2 서버 시퀀스를 포함함 - 를 수신하는 단계, 상기 최종 시퀀스 통지 메시지에 포함된 제2 서버 식별자를 참조하여 상기 서버 시퀀스 저장부에 저장된 상기 제2 서버 식별자에 대응하는 제2 저장된 서버 시퀀스를 식별하는 단계, 및 상기 제2 서버 시퀀스가 상기 제2 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 크거나 같은 경우, 상기 제2 구성원 서버에게 상기 제2 저장된 서버 시퀀스에 상기 소정의 값을 합산한 서버 시퀀스에 대응하는 멀티캐스트 메시지의 재전송을 요구하는 단계를 포함한다. In order to achieve the above object and to solve the above-mentioned problems of the prior art, in a method for providing reliable communication between member servers belonging to the same multicast group according to an embodiment of the present invention, the multicast group Maintain a first server sequence corresponding to the first member server and stored server sequences corresponding to each of the other member servers belonging to the same multicast group as the first member server in a server sequence storage of a first member server belonging to And when the multicast message is transmitted to the other member servers belonging to the multicast group, the multicast message includes a first server identifier identifying the first member server and the first server sequence. Step, each time the server transmits the multicast message, the server sequence Incrementing the first server sequence held in the second storage unit by a predetermined value, and a final sequence notification message from a second member server belonging to the same multicast group as the member server, wherein the final sequence notification message is the second member. And a second server identifier of a server and a second server sequence corresponding to the second member server, stored in the server sequence storage with reference to the second server identifier included in the final sequence notification message. Identifying a second stored server sequence corresponding to the second server identifier, and when the second server sequence is greater than or equal to a sum of a predetermined value to the second stored server sequence, the second member server. A multicast mesh corresponding to the server sequence obtained by adding the predetermined value to the second stored server sequence. A step of requesting retransmission.
또한 본 발명의 다른 실시예에 따른 하나의 그룹에 속하는 구성원 서버들 간의 신뢰성 있는 통신을 제공하기 위한 방법은 상기 그룹에 속하는 제1 구성원 서버의 서버 시퀀스 저장부에 상기 제1 구성원 서버에 대응하는 제1 서버 시퀀스 및 상기 다른 구성원 서버들 각각에 대응하는 저장된 서버 시퀀스들을 유지하는 단계, 상기 그룹에 속하는 상기 다른 구성원 서버들에게 메시지를 송신할 때 상기 메시지에 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 제1 서버 시퀀스를 포함하여 전송하는 단계, 상기 메시지를 송신할 때마다 상기 서버 시퀀스 저장부에 유지된 상기 제1 서버 시퀀스를 소정의 값만큼 증가시키는 단계, 및 일정한 시간 간격으로 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 서버 시퀀스 저장부에 저장된 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 상기 다른 구성원 서버들에게 송신하는 단계를 포함한다. In addition, a method for providing reliable communication between member servers belonging to a group according to another embodiment of the present invention may include a server corresponding to the first member server in a server sequence storage of a first member server belonging to the group. Maintaining a first server sequence and stored server sequences corresponding to each of the other member servers, the first server identifying the first member server in the message when sending a message to the other member servers belonging to the group; Transmitting, including an identifier and the first server sequence, increasing the first server sequence held in the server sequence storage by a predetermined value each time the message is transmitted, and at a predetermined time interval. 1 A first server identifier identifying a member server and a first server stored in said server sequence storage. Sending to the other member servers a final sequence notification message comprising a burr sequence.
또한 본 발명의 또 다른 실시예에 따른 하나의 그룹에 속하는 다른 구성원 서버들과의 신뢰성 있는 통신을 제공하기 위한 제1 구성원 서버에 있어서, 상기 제1 구성원 서버에 대응하는 제1 서버 시퀀스 및 상기 다른 구성원 서버들 각각에 대응하는 저장된 서버 시퀀스들을 저장하는 서버 시퀀스 저장부, 상기 그룹에 속하는 상기 다른 구성원 서버들에게 메시지를 송신할 때 상기 메시지에 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 제1 서버 시퀀스를 포함하여 전송하는 메시지 송신부, 및 상기 메시지를 송신할 때마다 상기 서버 시퀀스 저장부에 유지된 상기 제1 서버 시퀀스를 소정의 값만큼 증가시키는 서버 시퀀스 관리부를 포함한다. In addition, in a first member server for providing reliable communication with other member servers belonging to one group according to another embodiment of the present invention, the first server sequence corresponding to the first member server and the other A server sequence storage unit for storing stored server sequences corresponding to each of the member servers, a first server identifier identifying the first member server in the message when the message is sent to the other member servers belonging to the group; A message transmitter including a first server sequence, and a server sequence manager configured to increase the first server sequence held by the server sequence storage by a predetermined value each time the message is transmitted.
이하 첨부된 도면을 참조하여 본 발명에 따른 신뢰성 있는 통신 제공 방법 및 장치에 대하여 상세히 설명한다.Hereinafter, a method and apparatus for providing reliable communication according to the present invention will be described in detail with reference to the accompanying drawings.
도 6은 본 발명에 따라 동일한 멀티캐스트 그룹에 포함된 복수 개의 로케이션 서버의 네트워크 연결을 도시한 도면이다. 도 6을 참조하면, 제1 서버(600), 제2 서버(610), 제3 서버(620), 제4 서버(630)는 동일한 멀티캐스트 그룹에 포함되어 네트워크 연결될 수 있다. 상기 동일 멀티캐스트 그룹에 포함된 구성원 서버들은 각 구성원 서버의 서버 시퀀스 저장부에 자신의 서버 시퀀스 및 동일 멀티캐스트 그룹에 포함된 다른 구성원 서버들의 서버 시퀀스를 저장 및 유지할 수 있다. 일례로, 동일 멀티캐스트 그룹에 포함된 구성원 서버 중 제1 구성원 서버인 제1 서버(600)는 서버 시퀀스 저장부에 도면 부호(600)과 같이 제1 서버 및 동일한 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630) 각각에 대응하는 서버 시퀀스를 저장할 수 있다. 6 is a diagram illustrating network connections of a plurality of location servers included in the same multicast group according to the present invention. Referring to FIG. 6, the
예를 들어, 제1 서버(600)는 서버 시퀀스 저장부(601)에 제1 서버(600)의 시퀀스 "15", 제2 서버(610)의 시퀀스 "15", 제3 서버(620)의 시퀀스 "15" 및 제4 서버(630)의 시퀀스 "15"를 저장 및 유지한다. 상기 서버 시퀀스는 동일 멀티캐스트 그룹에 포함된 구성원 서버들간의 메시지 송수신과 관련된 시퀀스(sequence)이다.For example, the
동일 멀티캐스트 그룹에 속하는 구성원 서버 중 하나인 제1 서버(600)는 상기 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630)에게 멀티캐스트 메시지를 송신할 때, 상기 멀티캐스트 메시지에 상기 제1 서버(600) 서버를 식별하는 제1 서버 식별자 및 제1 서버 시퀀스를 포함하여 전송한다. The
상기 동일 멀티캐스트 그룹에 속하는 구성원 서버들은 상기 서버들에 저장된 데이터를 동기화하기 위해 하나의 구성원 서버가 외부 서버로부터 소정의 메시지를 수신하면, 이를 멀티캐스트 메시지로 생성하여 다른 구성원 서버들에게 전송하고, 다른 구성원 서버들은 멀티캐스트 메시지를 수신하여 데이터를 동기화한다. When member servers belonging to the same multicast group receive a predetermined message from an external server in order to synchronize data stored in the servers, the member servers generate a multicast message and transmit the same to other member servers. Other member servers receive multicast messages to synchronize data.
제1 서버(600)는 상기와 같은 멀티캐스트 메시지를 동일 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630)로 전송할 때, 상기 멀티캐스트 메시지에 제1 서버 식별자 및 제1 서버 시퀀스를 포함하여 전송한다. When the
제1 서버(600)는 상기 멀티캐스트 메시지를 송신할 때마다, 서버 시퀀스 저장부(601)에 유지된 제1 서버 시퀀스를 소정의 값만큼 증가시키고, 상기 소정의 값만큼 증가시킨 제1 서버 시퀀스를 상기 멀티캐스트 메시지(602)에 포함하여 전송할 수 있다. 일례로, 제1 서버(600)는 멀티캐스트 메시지를 송신할 때마다, 시퀀스 저장부(601)에 유지된 제1 서버 시퀀스를 "1"씩 증가시키고, 도면 부호(602)와 같이 멀티캐스트 메시지에 제1 서버 식별자 "LCS 1" 및 증가한 제1 서버 시퀀스인 "16"을 포함하여 다른 구성원 서버들(610, 620, 630)로 전송한다. 상기 증가시키는 값은 실시예에 따라 다양하게 설정 가능하다. Each time the
또한 제1 서버(600)는 실시예에 따라 서버 시퀀스(601)에 유지된 제1 서버 시퀀스를 상기 멀티캐스트 메시지에 포함하여 송신하고, 상기 제1 서버 시퀀스를 소정의 값만큼 증가시킬 수도 있다. 예를 들어, 도면 부호(603)를 참조하면 제1 서버는 멀티캐스트 메시지를 송신함에 따라 서버 시퀀스 저장부(601)에 유지된 제1 서버 시퀀스 "15"를 "16"으로 "1"만큼 증가시킨다. Also, according to an embodiment, the
상기와 같이 제1 서버는 제1 서버 시퀀스를 포함한 멀티캐스트 메시지를 송신하고 상기 제1 서버 시퀀스를 소정의 값만큼 증가시키거나 또는 상기 제1 서버 시퀀스를 소정의 값 만큼 증가시킨 후 제1 서버 시퀀스를 포함한 멀티캐스트 메시지를 송신할 수 있고 두 가지 경우 모두 멀티캐스트 메시지를 송신할 때마다 제1 서버 시퀀스를 소정의 값만큼 증가시키는 점에서 동일하므로, 상기 실시예 모두 본 발명에 속하거나 또는 균등 범위 내이다. 다만, 전자의 경우(제1 서버가 제1 서버 시퀀스를 포함한 멀티캐스트 메시지를 송신하고 상기 제1 서버 시퀀스를 소정의 값 만큼 증가시키는 경우), 후술할 최종 시퀀스 통지 메시지에 포함되는 서버 시퀀스는 상기 제1 서버(600)의 서버 시퀀스 저장부에 저장된 제1 서버 시퀀스에서 소정의 값을 감소시킨 값이 된다. 마찬가지로 후자의 경우(제1 서버가 제1 서버 시퀀스를 소정의 값만큼 증가시킨 후 제1 서버 시퀀스를 포함한 멀티캐스트 메시지를 송신하는 경우), 후술할 최종 시퀀스 통지 메시지에 포함되는 서버 시퀀스는 상기 제1 서버(600)의 서버 시퀀스 저장부에 저장된 제1 서버 시퀀스가 된다. As described above, the first server transmits a multicast message including a first server sequence and increases the first server sequence by a predetermined value, or increases the first server sequence by a predetermined value, and then first server sequence. Since both multicast messages can be transmitted, and both cases are the same in that the first server sequence is increased by a predetermined value every time the multicast message is transmitted, all of the above embodiments belong to the present invention or the equivalent range. Mine However, in the former case (when the first server transmits a multicast message including the first server sequence and increases the first server sequence by a predetermined value), the server sequence included in the final sequence notification message to be described later is The predetermined value is reduced in the first server sequence stored in the server sequence storage of the
상기 멀티 캐스트 메시지를 송신한 제1 서버(600)는 일정한 시간 간격으로 상기 제1 서버를 식별하는 제1 서버 식별자 및 상기 서버 시퀀스 저장부에 저장된 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 상기 구성원 서버와 동일한 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630)에게 전송한다. 상기 일정 시간 간격 역시 실시예에 따라 다양한 값으로 변경 가능하다. The
예를 들어, 제1 서버(600)가 제1 서버 시퀀스를 소정의 값만큼 증가시킨 후 제1 서버 시퀀스를 포함한 멀티캐스트 메시지를 송신하는 경우, 제1 서버(600)는 "5초" 간격으로 제1 서버 식별자 "LCS 1" 및 서버 시퀀스 저장부(603)에 저장된 제1 서버 시퀀스 "16" 포함하는 최종 시퀀스 통지 메시지(604)를 동일한 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630)에게 전송한다.For example, when the
한편, 제1 서버(600)가 서버 시퀀스 저장부(603)에 저장된 제1 서버 시퀀스 "15"를 포함한 멀티캐스트 메시지를 송신하고 상기 저장된 제1 서버 시퀀스를 소정의 값 만큼 증가시켜 "16"으로 기록하는 경우, 제1 서버(600)는 최종 시퀀스 통지 메시지(604)에 상기 저장된 제1 서버 시퀀스 "16"에서 소정의 값을 감소 시킨 서버 시퀀스인 "15"를 포함하여 동일한 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630)에게 전송한다. 이와 같은 경우에도 제1 서버(600)에서 다른 구성원 서버들(610, 620, 630)에게 자신의 전송한 멀티캐스트 메시지에 포함된 서버 시퀀스 및 자신의 서버 식별자를 포함한 최종 시퀀스 통지 메시지를 전송함은 동일하다. Meanwhile, the
상기 멀티캐스트 그룹에 속하는 다른 구성원 서버들(610, 620, 630)은 상기 최종 시퀀스 통지 메시지를 수신하면 상기 최종 시퀀스 통지 메시지에 포함된 제1 서버 식별자를 참조하여 각각의 구성원 서버의 서버 시퀀스 저장부에 저장된 제1 서버 식별자에 대응하는 제1 저장된 서버 시퀀스를 식별한다. 이미 설명한 바와 같이 멀티캐스트 그룹에 속하는 구성원 서버들은 각각 서버 시퀀스 저장부를 포함하고, 상기 서버 시퀀스 저장부에는 상기 멀티캐스트 그룹에 속하는 각 구성원 서버들의 서버 식별자 및 서버 시퀀스를 유지한다. When the
상기 식별 결과 구성원 서버에 저장된 제1 서버 시퀀스가 제1 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 크거나 같은 경우, 제1 구성원 서버로 상기 제1 저장된 서버 시퀀스에 소정의 값을 합산한 서버 시퀀스에 대응하는 멀티캐스트 메시지의 재전송을 요구한다. 상기와 같은 과정을 도 7을 참조하여 상세히 설명하면 다음과 같다. If the first server sequence stored in the member server is greater than or equal to the sum of the predetermined value in the first stored server sequence, the first member server adds the predetermined value to the first stored server sequence. Request retransmission of the multicast message corresponding to the sequence. The above process is described in detail with reference to FIG. 7 as follows.
도 7은 본 발명에 따른 구성원 서버에서 최종 시퀀스 통지 메시지를 수신하여 처리하는 과정을 도시한 도면이다. 도 7을 참조하면, 제1 서버(700), 제2 서버(710), 제3 서버(720), 제4 서버(730)는 동일 멀티캐스트 그룹에 포함되어 데이터를 동기화한다. 7 is a diagram illustrating a process of receiving and processing a final sequence notification message in a member server according to the present invention. Referring to FIG. 7, the
동일 멀티캐스트 그룹에 속하는 구성원 서버 중 제1 구성원 서버인 제1 서버(700)는 동일한 멀티캐스트 그룹에 속하는 제2 구성원 서버(710, 720, 730) 중 하나로부터 최종 시퀀스 통지 메시지를 수신한다. 상기 제2 구성원 서버가 최종 시퀀스 통지 메시지를 전송하는 과정은 도 6을 참조하여 설명한 바 있다. The
상기 최종 시퀀스 통지 메시지는 상기 제2 구성원 서버의 서버 식별자 및 상기 제2 구성원 서버에 대응하는 제2 서버 시퀀스를 포함한다. 예를 들어, 도 7에서 제4 서버(730)는 제1 서버(700)로 최종 시퀀스 통지 메시지(702)를 송신한다. 상기 최종 시퀀스 통지 메시지(702)는 제4 서버(730)의 서버 식별자 "LCS 4" 및 제4 서버(730)에 대응하는 서버 시퀀스 "16"을 포함한다. The final sequence notification message includes a server identifier of the second member server and a second server sequence corresponding to the second member server. For example, in FIG. 7, the
제1 서버(700)는 상기 수신한 최종 시퀀스 통지 메시지(702)에 포함된 서버 식별자 "LCS 4"를 참조하여 서버 시퀀스 저장부(701)에 저장된 서버 식별자 "LCS 4"에 대응하는 저장된 서버 시퀀스를 식별한다. 예를 들어, 저장된 서버 시퀀스는 "15"일 수 있다. The
제1 서버(700)는 최종 시퀀스 통지 메시지(702)에 포함된 서버 시퀀스가 서버 시퀀스 저장부(701)에 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 크거나 같은 경우, 제 4 서버에게 상기 저장된 서버 시퀀스에 소정의 값을 합산한 서버 시퀀스에 대응하는 멀티캐스트 메시지의 재전송을 요구한다. When the server sequence included in the final
예를 들어, 제1 서버(700)에서 수신한 최종 시퀀스 통지 메시지(702)에 포함된 서버 시퀀스 "16"이 서버 시퀀스 저장부(701)에 저장된 서버 시퀀스 "15"에 소정의 값인 "1"을 합산한 값과 같은 경우, 제1 서버(700)는 제4 서버(730)로 상기 저장된 "15"에 소정의 값인 "1"을 합산한 서버 시퀀스에 대응하는 멀티캐스트 메시지의 재전송을 요구하는 메시지(703)를 전송한다. For example, the server sequence "16" included in the final
따라서 본 발명에 따르면, 동일한 멀티캐스트 그룹에 속하는 구성원 서버 중 멀티캐스트 메시지를 다른 구성원 서버들로 전송한 서버는 상기 멀티캐스트 메시지의 수신을 확인하는 최종 시퀀스 통지 메시지를 상기 다른 구성원 서버들로 전송함으로써, 다른 구성원 서버들이 손실된 멀티캐스트 메시지가 있는지를 확인하여 손실된 경우, 재전송 요청하도록 한다. Therefore, according to the present invention, a server which transmits a multicast message to other member servers among member servers belonging to the same multicast group transmits a final sequence notification message confirming reception of the multicast message to the other member servers. In addition, other member servers check for missing multicast messages and request retransmission if they are lost.
따라서, 본 발명에 따르면, 동일 멀티캐스트 그룹에 속하는 구성원 서버들이 상호간의 메시지를 송수신할 때, 손실되는 메시지를 판별하여 재전송 요청하도록 함으로써, 신뢰성있는 통신을 제공할 수 있는 효과가 있다.Therefore, according to the present invention, when member servers belonging to the same multicast group transmit and receive messages to each other, the lost messages are determined to request retransmission, thereby providing reliable communication.
특히 멀티캐스트 메시지를 전송한 제1 서버는 일정한 시간 간격으로 제1 서버 식별자 및 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 다른 구성원 서버들로 전송함으로써, 제1 서버가 멀티캐스트 메시지를 전송한 후, 소정의 기간 동안 다른 멀티캐스트 메시지를 다른 서버들로 전송하지 않더라도, 다른 서버들이 제1 서버 시퀀스에 해당하는 메시지가 손실된 것을 판단하여 재전송을 요청할 수 있도록 하는 효과가 있다. 이러한 효과는 도 10을 참조하여 상세히 후술한다.In particular, the first server transmitting the multicast message transmits a final sequence notification message including the first server identifier and the first server sequence to other member servers at regular time intervals, whereby the first server transmits the multicast message. Thereafter, even if other multicast messages are not transmitted to other servers for a predetermined period of time, other servers can determine that the message corresponding to the first server sequence is lost and request retransmission. This effect will be described later in detail with reference to FIG.
도 8은 본 발명에 따른 구성원 서버에서 멀티케스트 메시지를 수신하여 처리하는 과정을 도시한 도면이다. 8 is a diagram illustrating a process of receiving and processing a multicast message in a member server according to the present invention.
도 8을 참조하면, 제1 서버(800), 제2 서버(810), 제3 서버(820), 제4 서버(830)는 동일 멀티캐스트 그룹에 포함되어 데이터를 동기화한다. Referring to FIG. 8, the
동일 멀티캐스트 그룹에 속하는 구성원 서버 중 제1 구성원 서버인 제1 서버(800)는 동일한 멀티캐스트 그룹에 속하는 제2 구성원 서버(810, 820, 830) 중 하나로부터 제2 멀티캐스트 메시지를 수신한다. 상기 제2 구성원 서버 중 하나의 서버가 동일 멀티캐스트 그룹에 속하는 나머지 구성원 서버들로 전송하는 메시지로서, 예를 들어, 제2 멀티캐스트 메시지는 상기 제2 구성원 서버(810, 820, 830)들 중 하나가 외부 서버로부터 수신한 메시지를 가공한 메시지일 수 있다. The
예를 들어, 상기 멀티캐스트 그룹에 속하는 구성원 서버들이 외부 서비스 서버의 사용자 로그인/로그아웃 정보를 관리하는 경우, 상기 구성원 서버들은 상기 사용자에 대한 로그인/로그아웃 상태를 동기화하여 동일하게 유지하여야 하므로, 하나의 구성원 서버는 상기 사용자에 대한 로그인/로그아웃 메시지를 외부 서비스 서버로부터 수신하여 상기 동일 그룹의 나머지 구성원 서버들로 전송하기 위한 멀티캐스트 메시지를 생성할 수 있다.For example, when member servers belonging to the multicast group manage user login / logout information of an external service server, the member servers must keep the same in synchronization with the login / logout status for the user. One member server may generate a multicast message for receiving a login / logout message for the user from an external service server and transmitting it to the remaining member servers of the same group.
제1 서버(800)는 제4 서버(830)로부터 멀티캐스트 메시지(802)를 수신한다. 상기 멀티캐스트 메시지(802)는 제2 구성원 서버인 제4 서버(830)의 서버 식별자 및 상기 제4 서버에 대응하는 서버 시퀀스를 포함한다. 즉, 멀티캐스트 메시지(802)는 제4 서버(830)의 서버 식별자 "LCS 4" 및 상기 제4 서버에 대응하는 서버 시퀀스 "17"을 포함할 수 있다.The
상기 제1 서버(800)는 상기 멀티캐스트 메시지(802)에 포함된 제2 서버 식별자를 참조하여 서버 시퀀스 저장부에 저장된 제2 서버 식별자에 대응하는 제2 저장된 서버 시퀀스를 식별한다. 예를 들어, 제1 서버(800)는 멀티캐스트 메시지(802)에 포함된 제4 서버(830)의 서버 식별자 "LCS 4"를 참조하여 서버 시퀀스 저장부(801)에 저장된 제4 서버 식별자 "LCS 4"에 대응하는 저장된 서버 시퀀스 "15"를 식별한다. The
제1 서버(800)는 상기 멀티캐스트 메시지에 포함된 제2 서버 시퀀스가 상기 제2 저장된 서버 시퀀스에 소정의 값을 합한 것보다 큰 경우, 상기 제2 구성원 서버에게 상기 제2 저장된 서버 시퀀스에 상기 소정의 값을 합산한 서버 시퀀스에 대응하는 멀티캐스트 메시지의 재전송을 요구한다. 예를 들어, 제1 서버(800)는 수신한 멀티캐스트 메시지(802)에 포함된 제4 서버의 서버 시퀀스 "17"이 서버 시퀀스 저장부(801)에 저장된 제4 서버의 서버 시퀀스 "15"에 소정의 값을 합한 것보다 큰 경우, 제4 서버(830)에게 상기 제4 서버의 서버 시퀀스에 소정의 값을 합산한 서버 시퀀스에 대응하는 멀티캐스트 메시지의 재전송을 요구한다. 일례로, 상기 소정의 값은 "1"일 수 있고, 제1 서버(800)는 멀티캐스트 메시지에 포함된 제4 서 버의 서버 시퀀스 "17"이 저장된 제4 서버의 서버 시퀀스 "15"에 "1"을 합한 값인 "16"보다 큰 경우, 서버 시퀀스 "16"에 대응하는 멀티캐스트 메시지의 재전송 요구 메시지(803)를 제4 서버(830)로 전송한다.When the second server sequence included in the multicast message is larger than the sum of a predetermined value with the second stored server sequence, the
재전송 요구 메시지(803)는 제4 서버가 재전송해야 할 멀티캐스트 메시지에 대한 서버 시퀀스를 포함한다. 상기 예의 경우, 재전송 요구 메시지는 제4 서버가 재전송해야 할 멀티캐스트 메시지에 대한 서버 시퀀스 "16"을 포함한다. The
제4 서버(830)는 제1 서버로부터 재전송 요구 메시지(803)를 수신하고, 구성원 서버들(800, 810, 820)에게 송신한 멀티캐스트 메시지를 저장하는 메시지 버퍼(804)에서 상기 제2 서버 시퀀스에 대응하는 멀티캐스트 메시지를 검색하여 제1 서버로 전송한다.The
상기 메시지 버퍼(804)는 동일 멀티캐스트 그룹에 속하는 구성원 서버 중 하나의 서버가 나머지 구성원 서버들로 전송한 멀티캐스트 메시지를 저장하는 저장 수단으로 소정의 데이터를 저장하는 저장 수단이다. 상기 멀티캐스트 메시지는 송신하는 서버 식별자 및 서버 시퀀스를 포함하고 있으므로, 제4 서버(830)는 상기 재전송 요구 메시지(803) 수신에 응답하여 상기 재전송 요구 메시지(803)에 포함된 서버 시퀀스 "16"에 대응하는 멀티캐스트 메시지(805)를 메시지 버퍼(804)에서 검색하여 이를 제1 서버(810)로 전송한다. The
따라서, 본 발명에 따르면 동일 멀티캐스트 그룹에 속하는 구성원 서버에서 동일 멀티캐스트 그룹에 속하는 다른 구성원 서버들로 연속된 시퀀스를 가지는 멀티캐스트 메시지들을 전송할 때, 상기 멀티캐스트 메시지를 수신하는 구성원 서버 에서 상기 멀티캐스트 메시지 중 손실되어 전송되지 않은 멀티캐스트 메시지를 판별하여 이를 재전송 요청할 수 있으므로, 신뢰성 있는 통신 환경을 구축할 수 있는 효과가 있다. Therefore, according to the present invention, when transmitting a multicast message having a continuous sequence from a member server belonging to the same multicast group to other member servers belonging to the same multicast group, the multi-message at the member server receiving the multicast message Since a multicast message that is lost and not transmitted among the cast messages can be determined and requested to be retransmitted, a reliable communication environment can be established.
특히, 복수의 구성원 서버들이 동일 멀티캐스트 그룹에 포함되고, 소정의 정보를 동기화하여 상기 정보를 분산 처리하는 경우, 상기 복수의 구성원 서버들은 동일한 상태 및 데이터를 유지하여 정확하게 동기화되어야 하는데, 본 발명에 따르면 상기 복수의 구성원 서버들의 멀티캐스트 수신 여부를 정확하게 판별하여 일부라도 손실된 경우 재전송 요청하여 재전송 받을 수 있으므로 동일 그룹에 속한 복수의 구성원 서버들이 동일한 상태 및 데이터를 유지하도록 할 수 있다. In particular, when a plurality of member servers are included in the same multicast group and the predetermined information is synchronized to distribute the information, the plurality of member servers must be synchronized exactly by maintaining the same state and data. According to the present invention, it is possible to accurately determine whether multicast reception of the plurality of member servers is performed and to request retransmission when some of them are lost, so that the plurality of member servers belonging to the same group can maintain the same state and data.
만약 동일 멀티캐스트 그룹에 포함된 구성원 서버들이 사용자의 로그인/로그아웃 정보를 관리하는 경우, 상기 구성원 서버들은 하나의 구성원 서버에서 수신한 로그인/로그아웃 메시지를 멀티캐스트 메시지로 수신하여 동일 상태를 유지하여 사용자의 로그인/로그아웃 정보를 분산 처리할 수 있는데, 상기 하나의 구성원 서버에서 다른 구성원 서버들로 전송한 멀티캐스트 메시지가 손실되는 경우, 상기 다른 구성원 서버들은 상기 손신된 멀티캐스트 메시지의 서버 시퀀스를 판별하여 상기 멀티캐스트 메시지를 전송한 서버로 재요청할 수 있으므로, 동일 멀티캐스트 그룹에 속하는 구성원 서버들의 데이터 및 상태가 일치하지 않아 발생할 수 있는 오류를 방지할 수 있는 효과가 있다. If member servers included in the same multicast group manage user login / logout information, the member servers receive the login / logout messages received from one member server as multicast messages and maintain the same status. It is possible to distribute the user's login / logout information by means of distribution. When the multicast message transmitted from one member server to other member servers is lost, the other member servers may perform a server sequence of the damaged multicast message. Since the multicast message can be re-requested to the server that transmitted the multicast message, it is possible to prevent an error that may occur because data and states of member servers belonging to the same multicast group do not match.
또한 상기와 같은 본 발명의 신뢰성 있는 통신 제공 방법은 상기와 같은 멀티캐스트 그룹에 속하는 구성원 서버들뿐 아니라, 복수의 서버를 포함한 어떠한 그 룹의 서버들 간의 통신에도 적용될 수 있다. 이 때, 상기 서버들은 다른 구성원 서버들로 멀티캐스트 메시지가 아닌 소정의 정보를 포함한 일반 메시지를 전송하고, 최종 통지 메시지를 일정 시간 간격으로 전송하여 메시지의 손실 여부를 판단할 수 있고, 또한 상기 전송된 메시지의 시퀀스를 판별하여 메시지의 손실 여부를 판단하여 재전송 요청하여 수신함으로써, 손실된 메시지로 인한 오류를 방지하고, 상기 구성원 서버들간 신뢰성있는 통신 방법으로 메시지를 송수신할 수 있는 효과가 있다. In addition, the method of providing a reliable communication of the present invention can be applied to communication between servers of any group including a plurality of servers as well as member servers belonging to the multicast group. In this case, the servers may transmit a general message including predetermined information other than the multicast message to other member servers, and transmit a final notification message at predetermined time intervals to determine whether the message is lost or not. By determining the sequence of lost messages to determine whether the message is lost and requesting retransmission, it is possible to prevent an error due to the lost message and to transmit and receive the message in a reliable communication method between the member servers.
도 9는 본 발명에 따라 구성원 서버간 신뢰성 있는 통신 방법을 제공하는 일실시예를 도시한 도면이다. 9 is a diagram illustrating an embodiment of providing a reliable communication method between member servers according to the present invention.
도 9를 참조하면, 본 발명에 따른 구성원 서버 중 제1 서버(901)는 동일 그룹에 속하는 다른 구성원 서버인 제2 서버(902)로 메시지 1, 메시지 2, 메시지 3 및 메시지 4를 차례로 전송한다. 이 때, 메시지 4가 전송 과정에서 손실될 수 있다. 제2 서버(902)는 상기 메시지 1. 메시지 2. 메시지 3을 수신하고, 상기 메시지를 전송한 제1 서버 식별자 및 상기 메시지들에 대한 서버 시퀀스를 서버 시퀀스 저장부에 저장한다. Referring to FIG. 9, a
제1 서버(901)는 메시지 5를 제2 서버(902)로 전송하고, 제2 서버(902)는 상기 메시지 5를 수신하여 저장한다. 제2 서버(902)는 서버 시퀀스 저장부에 저장된 서버 시퀀스와 상기 메시지 5의 서버 시퀀스를 비교하여 상기 메시지 5의 서버 시퀀스가 저장된 서버 시퀀스에서 소정의 값을 합산한 것보다 큰 경우, 상기 저장된 시퀀스에서 소정의 값을 합산한 서버 시퀀스에 대응하는 메시지인 메시지 4의 재전 송을 요청하는 재전송 요청 메시지를 제1 서버(901)로 전송한다.The
제1 서버(901)는 상기 재전송 요청 메시지를 수신한 후, 재전송 해야 할 메시지에 대한 서버 시퀀스에 대응하는 메시지 4를 메시지 버퍼에서 검색한 후, 제2 서버로 재전송한다. After receiving the retransmission request message, the
이와 같은 손실 메시지의 재전송은 동일 그룹에 속한 다른 구성원 서버들로부터 수신한 모든 메시지에 적용되어, 본 발명에 따른 구성원 서버는 하나의 그룹에 속한 다른 구성원 서버들로부터 수신한 메시지의 손실 여부를 판단하여 재전송을 요청할 수 있으므로, 신뢰성있는 통신 환경 속에서 메시지를 송수신할 수 있는 효과가 있다. The retransmission of such a lost message is applied to all messages received from other member servers belonging to the same group, so that the member server according to the present invention determines whether the message received from other member servers belonging to one group is lost or not. Since retransmission can be requested, the message can be transmitted and received in a reliable communication environment.
도 10은 본 발명에 따라 구성원 서버간 신뢰성 있는 통신 방법을 제공하는 다른 실시예를 도시한 도면이다. 10 illustrates another embodiment for providing a reliable communication method between member servers according to the present invention.
도 10을 참조하면, 제1 서버(1001) 및 제2 서버(1002)는 동일 그룹에 속한 구성원 서버이다. Referring to FIG. 10, the
본 발명에 따른 구성원 서버 중 제1 서버(1001)는 동일 그룹에 속하는 다른 구성원 서버인 제2 서버(1002)로 메시지 1, 메시지 2, 메시지 3 및 메시지 4를 차례로 전송한다. 이 때, 메시지 4가 전송 과정에서 손실될 수 있다. Among the member servers according to the present invention, the
제1 서버(1001)는 상기 메시지를 송신할 때마다 서버 시퀀스 저장부에 유지된 제1 서버 시퀀스를 소정의 값만큼 증가시키고, 일정 시간 간격으로 제1 서버(1001)를 식별하는 제1 서버 식별자 및 상기 서버 시퀀스 저장부에 저장된 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 제2 서버(1002)로 송신한다. Each time the
제2 서버(1002)는 제1 서버(1001)로부터 최종 시퀀스 통지 메시지를 수신하면, 상기 최종 시퀀스 통지 메시지에 포함된 제1 서버 식별자를 참조하여 저장된 서버 시퀀스를 식별하고, 최종 시퀀스 통지 메시지에 포함된 제1 서버 시퀀스가 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 크거나 같은 경우, 제1 서버(1001)로 상기 소정의 값을 합산한 서버 시퀀스에 대응하는 메시지의 재전송을 요구하는 재전송 메시지를 전송한다. When the
즉, 제1 서버(1001)는 최종 시퀀스 통지 메시지에 메시지 4에 해당하는 시퀀스인 "4"를 포함하여 제2 서버로 전송하고, 제2 서버(1002)에는 마지막으로 수신한 메시지 3에 해당하는 시퀀스인 "3"이 저장되어 있을 것이므로, 제2 서버(1002)는 메시지 4의 재전송을 요구하는 재전송 요청 메시지를 제1 서버로 전송한다. That is, the
제1 서버(1001)는 메시지 버퍼에서 상기 메시지 4를 검색하여 이를 제2 서버(1002)로 재전송한다. The
따라서, 본 발명에 따르면 메시지를 전송한 제1 서버는 일정한 시간 간격으로 제1 서버 식별자 및 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 다른 구성원 서버들로 전송함으로써, 제1 서버가 멀티캐스트 메시지를 전송한 후, 소정의 기간 동안 다른 메시지를 다른 서버들로 전송하지 않더라도, 다른 서버들이 제1 서버 시퀀스에 해당하는 메시지가 손실된 것을 판단하여 재전송을 요청할 수 있도록 하는 효과가 있다. Accordingly, according to the present invention, the first server that has sent the message transmits a final sequence notification message including the first server identifier and the first server sequence to other member servers at regular time intervals, whereby the first server sends the multicast message. After transmitting, even if other messages are not transmitted to other servers for a predetermined period of time, other servers can determine that the message corresponding to the first server sequence is lost and request retransmission.
본 발명은 동일 그룹에 속하는 하나의 구성원 서버가 마지막으로 전송한 메시지가 손실되더라도 다른 구성원 서버에서 이를 판단하여 재전송을 요청함으로써, 신뢰성 있는 통신을 제공하는 효과가 있다. 이러한 효과는 도 5에서 설명한 종래 기술의 문제점을 명확하게 해결하는 것이다.The present invention has the effect of providing reliable communication by requesting retransmission by determining that the other member server has lost the last message transmitted by one member server belonging to the same group. This effect clearly solves the problems of the prior art described in FIG.
본 발명에 따른 통신 제공 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The communication providing method according to the present invention can be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. The medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, or the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
도 11은 본 발명의 일실시예에 따른 신뢰성 있는 통신을 제공하기 위한 구성원 서버의 구성을 도시한 블록도이다. 도 11을 참조하면, 본 발명에 따라 하나의 그룹에 속하는 다른 구성원 서버들과의 신뢰성 있는 통신을 제공하기 위한 제1 구성원 서버는 서버 시퀀스 저장부(1101), 메시지 송신부(1102), 서버 시퀀스 관리부(1103), 메시지 수신부(1104), 서버 시퀀스 검색부(1104), 재전송 요청부(1105)를 포함한다. 11 is a block diagram showing the configuration of a member server for providing reliable communication according to an embodiment of the present invention. Referring to FIG. 11, according to the present invention, a first member server for providing reliable communication with other member servers belonging to one group includes a server
서버 시퀀스 저장부(1101)는 제1 구성원 서버에 대응하는 제1 서버 시퀀스 및 상기 다른 구성원 서버들 각각에 대응하는 저장된 서버 시퀀스들을 저장한다. 서버 시퀀스 저장부(1101)의 일실시예는 도 6의 도면 부호(601)을 참조하여 설명한 바 있다. The server
메시지 송신부(1102)는 상기 그룹에 속하는 상기 다른 구성원 서버들에게 메시지를 송신할 때 상기 메시지에 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 제1 서버 시퀀스를 포함하여 전송한다. When the
서버 시퀀스 관리부(1103)는 상기 메시지를 송신할 때마다 상기 서버 시퀀스 저장부에 유지된 상기 제1 서버 시퀀스를 소정의 값만큼 증가시킨다. 상기 소정의 값은 실시예에 따라 다양하게 설정될 수 있음은 이미 설명한 바와 같다. The
또한, 상기 메시지 수신부(1104)는 다른 구성원 서버들 중 하나인 제2 구성원 서버로부터 최종 시퀀스 통지 메시지를 수신한다. 상기 최종 시퀀스 통지 메시지는 상기 제2 구성원 서버의 제2 서버 식별자 및 상기 제2 구성원 서버에 대응하는 제2 서버 시퀀스를 포함한다. In addition, the
시퀀스 검색부(1105)는 상기 최종 시퀀스 통지 메시지에 포함된 제2 서버 식별자를 참조하여 상기 서버 시퀀스 저장부에 저장된 상기 제2 서버 식별자에 대응 하는 제2 저장된 서버 시퀀스를 식별한다. The
재전송 요청부(1106)는 상기 제2 서버 시퀀스가 상기 제2 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 크거나 같은 경우, 상기 제2 구성원 서버에게 상기 제2 저장된 서버 시퀀스에 상기 소정의 값을 합산한 서버 시퀀스에 대응하는 메시지의 재전송을 요구한다. The
이와 같이 구성원 서버의 재전송 요청부(1106)는 소정의 값을 합산한 서버 시퀀스에 대응하는 메시지의 재전송을 구성원 서버로 요구함으로써, 손실된 메시지를 판별하여 재전송 요청할 수 있는 효과가 있다. As described above, the
또한 상기 메시지 송신부(1102)는 일정한 시간 간격으로 상기 제1 구성원 서버를 식별하는 제1 서버 식별자 및 상기 서버 시퀀스 저장부에 저장된 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 상기 다른 구성원 서버들에게 송신한다.The
상기 메시지 송신부(1102)는 상기와 같이 최종 시퀀스 통지 메시지를 다른 구성원 서버들로 송신함으로써, 최종으로 다른 구성원 서버들이 상기 구성원 서버로부터 수신한 메시지의 시퀀스를 확인하도록 하는 효과가 있다. The
또한 메시지 수신부(1104)는 상기 다른 구성원 서버들 중 하나인 제2 구성원 서버로부터 제2 메시지를 수신한다. 상기 제2 메시지는 상기 제2 구성원 서버의 제2 서버 식별자 및 상기 제2 구성원 서버에 대응하는 제2 서버 시퀀스를 포함한다. In addition, the
서버 시퀀스 검색부(1105)는 상기 제2 메시지에 포함된 제2 서버 식별자를 참조하여 상기 서버 시퀀스 저장부에 저장된 상기 제2 서버 식별자에 대응하는 제2 저장된 서버 시퀀스를 식별한다. The server
재전송 요청부(1106)는 상기 제2 서버 시퀀스가 상기 제2 저장된 서버 시퀀스에 소정의 값을 합산한 것보다 큰 경우, 상기 제2 구성원 서버에게 상기 제2 저장된 서버 시퀀스에 상기 소정의 값을 합산한 서버 시퀀스에 대응하는 메시지의 재전송을 요구한다. The
또한 상기 메시지 수신부(1104)는 상기 다른 구성원 서버들 중 하나인 제2 구성원 서버로부터 재전송 요구 메시지를 수신할 수 있다. 상기 재전송 요구 메시지는 재전송해야 할 메시지에 대한 제2 서버 시퀀스를 포함한다. Also, the
또한 메시지 검색부(1107)는 구성원 서버에서 송신한 메시지를 저장하는 메시지 버퍼에서 상기 제2 서버 시퀀스에 대응하는 메시지를 검색하고, 상기 메시지 송신부(1102)는 상기 검색된 메시지를 상기 제2 구성원 서버에게 전송할 수 있다.In addition, the
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above-described embodiments, which can be variously modified and modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the present invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications thereof will belong to the scope of the present invention.
본 발명은 서버간 메시지의 송수신을 신뢰성 있게 구현하여 동일 멀티캐스트 그룹에 속한 로케이션 서버간 데이터 및 상태가 동일하게 유지될 수 있도록 하는 통신 제공 방법 또는 장치를 제공할 수 있다.The present invention can provide a communication providing method or apparatus that can reliably implement the transmission and reception of messages between servers so that data and states between location servers belonging to the same multicast group can be kept the same.
또한 본 발명은 동일한 멀티캐스트 그룹에 속하는 구성원 서버 중 멀티캐스트 메시지를 다른 구성원 서버들로 전송한 제1 구성원 서버는 상기 멀티캐스트 메시지의 수신을 확인하는 최종 시퀀스 통지 메시지를 상기 다른 구성원 서버들로 전송함으로써, 다른 구성원 서버들이 손실된 멀티캐스트 메시지가 있는지를 확인하여 손실된 경우, 재전송 요청하도록 하여 동일 멀티캐스트 그룹에 속하는 구성원 서버들이 상호간의 메시지를 송수신할 때, 손실되는 메시지를 판별하여 재전송 요청하도록 함으로써, 신뢰성있는 통신을 제공할 수 있다.The present invention also provides a first member server that transmits a multicast message to other member servers among member servers belonging to the same multicast group to transmit a final sequence notification message confirming receipt of the multicast message to the other member servers. Thus, other member servers check for missing multicast messages and, if lost, request retransmission so that member servers belonging to the same multicast group send and receive messages to each other to determine the lost messages and retransmit them. Thus, reliable communication can be provided.
또한 본 발명은 멀티캐스트 메시지를 전송한 제1 서버는 일정한 시간 간격으로 제1 서버 식별자 및 제1 서버 시퀀스를 포함하는 최종 시퀀스 통지 메시지를 다른 구성원 서버들로 전송함으로써, 제1 서버가 멀티캐스트 메시지를 전송한 후, 소정의 기간 동안 다른 멀티캐스트 메시지를 다른 서버들로 전송하지 않더라도, 다른 서버들이 제1 서버 시퀀스에 해당하는 메시지가 손실된 것을 판단하여 재전송을 요청할 수 있도록 하여 신뢰성 있는 통신을 제공할 수 있다. In addition, according to the present invention, the first server transmitting the multicast message transmits a final sequence notification message including the first server identifier and the first server sequence to other member servers at regular time intervals, whereby the first server transmits the multicast message. After transmitting, even if other multicast messages are not transmitted to other servers for a predetermined period of time, other servers can determine that the message corresponding to the first server sequence is lost and request retransmission to provide reliable communication. can do.
또한 본 발명은 전송된 메시지의 시퀀스를 판별하여 메시지의 손실 여부를 판단하여 재전송 요청하여 수신함으로서, 손실된 메시지로 인한 오류를 방지하고, 동일 그룹에 속하는 구성원 서버들간 신뢰성있는 통신 방법으로 메시지를 송수신할 수 있도록 한다.In addition, the present invention by determining the sequence of the transmitted message to determine whether the message is lost, re-transmission request received to prevent errors due to the lost message, and send and receive messages in a reliable communication method between member servers belonging to the same group Do it.
또한 본 발명은 동일 그룹에 속하는 하나의 구성원 서버가 마지막으로 전송한 메시지가 손실되더라도 다른 구성원 서버에서 이를 판단하여 재전송을 요청함으 로써, 신뢰성 있는 통신을 제공한다. In addition, the present invention provides reliable communication by requesting retransmission by determining by the other member server even if the last message transmitted by one member server belonging to the same group is lost.
Claims (14)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050054151A KR100717239B1 (en) | 2005-06-22 | 2005-06-22 | Method and apparatus for providing reliable communication between member servers belonging to the same multicast group |
PCT/KR2006/002408 WO2006137700A1 (en) | 2005-06-22 | 2006-06-22 | Method and apparatus for providing reliable communication between member servers belonging to same multicast group |
JP2008518034A JP2008544685A (en) | 2005-06-22 | 2006-06-22 | Method and apparatus for providing reliable communication between member servers belonging to the same multicast group |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050054151A KR100717239B1 (en) | 2005-06-22 | 2005-06-22 | Method and apparatus for providing reliable communication between member servers belonging to the same multicast group |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060134462A KR20060134462A (en) | 2006-12-28 |
KR100717239B1 true KR100717239B1 (en) | 2007-05-11 |
Family
ID=37570676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050054151A Expired - Fee Related KR100717239B1 (en) | 2005-06-22 | 2005-06-22 | Method and apparatus for providing reliable communication between member servers belonging to the same multicast group |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP2008544685A (en) |
KR (1) | KR100717239B1 (en) |
WO (1) | WO2006137700A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5076927B2 (en) * | 2008-01-30 | 2012-11-21 | 富士通株式会社 | Relay device, multicast processing program, and multicast processing method |
KR102821348B1 (en) * | 2023-03-15 | 2025-06-16 | 클릭트 주식회사 | Apparatus and method for transmitting spatial audio using multicast |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040002922A (en) * | 2001-04-20 | 2004-01-07 | 인터내셔널 비지네스 머신즈 코포레이션 | Efficient processing of multicast transmissions |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2586791B2 (en) * | 1992-09-11 | 1997-03-05 | 日本電気株式会社 | Broadcast management method |
JPH06224919A (en) * | 1993-01-25 | 1994-08-12 | Nec Corp | Lan system |
JP3378429B2 (en) * | 1996-03-26 | 2003-02-17 | 株式会社東芝 | Broadcast communication control device |
US6577599B1 (en) * | 1999-06-30 | 2003-06-10 | Sun Microsystems, Inc. | Small-scale reliable multicasting |
KR100310285B1 (en) * | 1999-12-23 | 2001-09-28 | 오길록 | Group communication method supporting fault-tolerant service in the real-time object-oriented distributed platform |
US6785713B1 (en) * | 2000-05-08 | 2004-08-31 | Citrix Systems, Inc. | Method and apparatus for communicating among a network of servers utilizing a transport mechanism |
AU2002234258A1 (en) * | 2001-01-22 | 2002-07-30 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
JP3920675B2 (en) * | 2002-03-22 | 2007-05-30 | 株式会社リコー | Data communication method, computer, program, and storage medium |
-
2005
- 2005-06-22 KR KR1020050054151A patent/KR100717239B1/en not_active Expired - Fee Related
-
2006
- 2006-06-22 WO PCT/KR2006/002408 patent/WO2006137700A1/en active Application Filing
- 2006-06-22 JP JP2008518034A patent/JP2008544685A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040002922A (en) * | 2001-04-20 | 2004-01-07 | 인터내셔널 비지네스 머신즈 코포레이션 | Efficient processing of multicast transmissions |
Also Published As
Publication number | Publication date |
---|---|
JP2008544685A (en) | 2008-12-04 |
WO2006137700A1 (en) | 2006-12-28 |
KR20060134462A (en) | 2006-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100545874B1 (en) | User's log information management method and system using location server belonging to a plurality of groups | |
CN105991412B (en) | Information push method and device | |
KR20120089591A (en) | System and method for managing multiple queues of non-persistent messages in a networked environment | |
KR101809365B1 (en) | Message Fragmentation Method using a MQTT Protocol in M2M/IoT Platforms | |
CN113056759A (en) | Method and system for network devices to obtain a trusted status representation of the status of a distributed ledger technology network | |
CN103684707A (en) | Server-side and user-side message transmission processing method, message transmission method and message transmission system | |
US20130151586A1 (en) | Message distribution server, sip server, and message distribution method | |
CN113412478B (en) | Message transmitting/receiving method, communication device, and program | |
CN102598637B (en) | Communication Systems | |
KR101993614B1 (en) | Method for providing push service, service server, and user terminal | |
CN108880994B (en) | Method and device for retransmitting mails | |
US20100094933A1 (en) | System and Method for Generating Exception Delay Messages when Messages are Delayed | |
KR100717239B1 (en) | Method and apparatus for providing reliable communication between member servers belonging to the same multicast group | |
CN109428684B (en) | A data transmission method, RLC entity and PDCP entity | |
US20190379758A1 (en) | Multicasting method in distributed cache environment, and distributed cache server using the same | |
CN117858035B (en) | Data processing method, device, computer equipment and medium for remote assistance | |
CN114422573A (en) | Message sending method and device, storage medium and electronic device | |
CN107786607B (en) | Message retransmission method, message retransmission server and user equipment | |
KR101553394B1 (en) | File transmission management system and file transmission mangement method for supporting file transmission in mobile messaging service | |
US20120054310A1 (en) | Terminal, intermediate node and communication method of the same | |
CN104639880A (en) | Method and system for video monitoring and centralized recording in GPRS network environment | |
CN115348333B (en) | Data transmission method, system and equipment based on UDP double-end communication interaction | |
CN115914152B (en) | Receipt information pushing method, system and storage medium | |
CN109788035B (en) | Data transmission method and device based on cloud monitoring and monitoring server | |
KR100727057B1 (en) | Method and system for checking message status |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
E90F | Notification of reason for final refusal | ||
PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
FPAY | Annual fee payment |
Payment date: 20100412 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
FPAY | Annual fee payment |
Payment date: 20120329 Year of fee payment: 7 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R14-asn-PN2301 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 8 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 9 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 10 |
|
L13-X000 | Limitation or reissue of ip right requested |
St.27 status event code: A-2-3-L10-L13-lim-X000 |
|
U15-X000 | Partial renewal or maintenance fee paid modifying the ip right scope |
St.27 status event code: A-4-4-U10-U15-oth-X000 |
|
FPAY | Annual fee payment |
Payment date: 20170328 Year of fee payment: 11 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 11 |
|
FPAY | Annual fee payment |
Payment date: 20180328 Year of fee payment: 12 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 12 |
|
PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
FPAY | Annual fee payment |
Payment date: 20190325 Year of fee payment: 13 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 13 |
|
PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 14 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 15 |
|
PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 16 |
|
R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20230505 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20230505 |