KR101144190B1 - 메시지 전송 시스템 및 방법 - Google Patents

메시지 전송 시스템 및 방법 Download PDF

Info

Publication number
KR101144190B1
KR101144190B1 KR1020100112776A KR20100112776A KR101144190B1 KR 101144190 B1 KR101144190 B1 KR 101144190B1 KR 1020100112776 A KR1020100112776 A KR 1020100112776A KR 20100112776 A KR20100112776 A KR 20100112776A KR 101144190 B1 KR101144190 B1 KR 101144190B1
Authority
KR
South Korea
Prior art keywords
client
message
server
relay
relay server
Prior art date
Application number
KR1020100112776A
Other languages
English (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 KR1020100112776A priority Critical patent/KR101144190B1/ko
Application granted granted Critical
Publication of KR101144190B1 publication Critical patent/KR101144190B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1091Interfacing with client-server systems or between P2P systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1859Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

메시지 전송 시스템 및 방법이 개시된다. 본 발명의 일 실시예에 따른 메시지 전송 시스템은, 하나 이상의 클라이언트로 메시지를 송신하는 메시지 푸시 서버, 하나 이상의 클라이언트와 접속되며, 상기 메시지 푸시 서버로부터 상기 메시지를 수신하여 접속된 클라이언트로 송신하는 하나 이상의 릴레이 서버, 및 상기 하나 이상의 릴레이 서버 각각과 접속된 클라이언트의 정보가 저장되는 접속 정보 저장 데이터베이스를 포함하며, 상기 메시지 푸시 서버는, 메시지를 전송하고자 하는 클라이언트의 접속 정보를 상기 접속 정보 저장 데이터베이스로부터 전송 받고, 상기 클라이언트가 현재 접속 중인 릴레이 서버를 경유하여 상기 메시지를 송신한다.

Description

메시지 전송 시스템 및 방법{System and method for transmitting message}
본 발명은 서버와 클라이언트간 비 연결 지향형 통신 방식에 있어 서버 메시지의 실시간 전송 기술과 관련된다.
IP 기반 네트워크에서 서버와 클라이언트 간의 연결 방식은 크게 TCP를 이용한 방식과 UDP를 이용한 방식으로 나뉘어질 수 있다.
TCP와 UDP의 가장 큰 차이는 서버와 클라이언트 간의 연결 방식에 있다. TCP는 연결 지향적(connection oriented) 프로토콜로서, 서버는 클라이언트의 연결을 위한 서버 소켓을 가지며, 클라이언트는 미리 정해진 포트를 통하여 서버와 연결되고, 연결이 완료된 이후에는 연결된 소켓을 통하여 데이터를 전송한다. 반면, UDP는 비연결적(connectionless) 프로토콜로서, TCP와 달리 데이터를 송신하기 위한 연결 절차가 없으며 단순히 전송할 데이터와 함께 목적지의 아이피 주소/포트 정보를 실어 보내게 된다.
만약 서버 측에서 클라이언트로 메시지를 푸시(push)하려고 할 경우, 상기 클라이언트가 TCP 방식으로 통신하는 경우에는 기 설정된 접속 경로를 통하여 클라이언트로 실시간 메시지 전송이 가능하다. 그러나 상기 클라이언트가 UDP 방식으로 연결된 경우에는 UDP의 특성 상 클라이언트가 서버에 메시지가 존재하는 지 여부를 확인하기 전까지는 서버 메시지가 클라이언트에 전달되지 않는 문제가 있다.
본 발명은 상기와 같은 과제를 해결하기 위한 것으로서, 본 발명의 실시예들은 서버와 클라이언트 간에 UDP 통신 방식으로 통신을 수행하는 경우에도 서버 측의 메시지를 클라이언트 측으로 전송 가능하도록 하는 데 그 목적이 있다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 메시지 전송 시스템은, 하나 이상의 클라이언트로 메시지를 송신하는 메시지 푸시 서버; 하나 이상의 클라이언트와 접속되며, 상기 메시지 푸시 서버로부터 상기 메시지를 수신하여 접속된 클라이언트로 송신하는 하나 이상의 릴레이 서버; 및 상기 하나 이상의 릴레이 서버 각각과 접속된 클라이언트의 정보가 저장되는 접속 정보 저장 데이터베이스를 포함하며, 상기 메시지 푸시 서버는, 메시지를 전송하고자 하는 클라이언트의 접속 정보를 상기 접속 정보 저장 데이터베이스로부터 전송 받고, 상기 클라이언트가 현재 접속 중인 릴레이 서버를 경유하여 상기 메시지를 송신한다.
한편, 본 발명의 일 실시예에 따른 메시지 전송 방법은, 릴레이 서버에서, 클라이언트로부터 접속 요청을 수신하는 단계; 상기 릴레이 서버에서, 상기 접속 요청을 송신한 상기 클라이언트의 접속 정보를 접속 정보 저장 데이터베이스에 저장하는 단계; 상기 릴레이 서버에서, 메시지 푸시 서버로부터 메시지를 수신하는 단계; 및 상기 릴레이 서버에서, 수신된 상기 메시지를 상기 클라이언트로 송신하는 단계를 포함한다.
한편, 본 발명의 다른 실시예에 따른 메시지 전송 방법은, 클라이언트에서, 릴레이 서버 할당 서버로 접속 가능한 릴레이 서버 목록을 요청하는 단계; 상기 클라이언트에서, 상기 릴레이 서버 할당 서버로부터 접속 가능한 릴레이 서버 목록을 수신하는 단계; 상기 클라이언트에서, 수신된 상기 서버 목록에 포함된 릴레이 서버 중 하나의 릴레이 서버로 접속 요청을 송신하는 단계; 상기 클라이언트에서, 상기 접속 요청을 송신한 릴레이 서버로부터 접속 응답을 수신하는 단계; 상기 클라이언트에서, 접속된 릴레이 서버로 소정 주기마다 접속 유지 메시지를 송신하는 단계; 및 상기 클라이언트에서, 접속된 상기 릴레이 서버로부터 메시지를 수신하는 단계를 포함한다.
본 발명의 실시예들에 따를 경우, 실시예들은 서버와 클라이언트 간에 UDP 통신 방식으로 통신을 수행하는 경우에도 클라이언트의 별도 요청 없이 서버 측의 메시지를 클라이언트 측으로 실시간으로 전송 가능한 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 메시지 전송 시스템(100)을 나타낸 전체 구성도이다.
도 2는 본 발명의 일 실시예에 따른 메시지 전송 방법에 있어, 클라이언트(110)가 메시지 전송 시스템(100)에 접속하는 과정을 나타낸 순서도(200)이다.
도 3은 본 발명의 일 실시예에 따른 메시지 전송 방법에 있어, 클라이언트(110)가 메시지 푸시 서버(102)가 클라이언트(110)로 메시지를 전송하는 과정을 나타낸 순서도(300)이다.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하의 실시예는 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
도 1은 본 발명의 일 실시예에 따른 메시지 전송 시스템(100)을 나타낸 전체 구성도이다.
도시된 바와 같이, 본 발명의 일 실시예에 따른 메시지 전송 시스템은 메시지 푸시 서버(102), 하나 이상의 릴레이 서버(104), 접속 정보 저장 데이터베이스(106), 릴레이 서버 할당 서버(108) 및 클라이언트(110)를 포함한다.
메시지 푸시 서버(102)는 클라이언트(110)로 메시지를 송신하기 위한 서버이다. 일반적으로 서버는 클라이언트의 요청이 있을 경우 이에 대한 응답을 송신하도록 구성되나, 본 발명의 실시예에서의 메시지 푸시 서버(102)는 클라이언트(110)의 요청 없이 필요한 메시지를 클라이언트로 푸시(push)하도록 구성된다.
릴레이 서버(104)는 하나 이상의 클라이언트(110)와 접속되며, 메시지 푸시 서버(102)로부터 메시지를 수신하여 이를 접속된 클라이언트(110)로 송신하는 서버이다. 즉, 릴레이 서버(104)는 메시지 푸시 서버(102)와 클라이언트(110) 간의 메시지 전송을 중계(relay)한다. 도시된 바와 같이, 본 발명의 실시예에서는 하나 이상의 릴레이 서버(104)가 존재하며, 각각의 클라이언트(110)는 이러한 릴레이 서버(104) 중 하나에 접속되어 메시지 푸시 서버(102)로부터 메시지를 전송 받는다.
접속 정보 저장 데이터베이스(106)는 릴레이 서버(104) 각각과 접속된 클라이언트(110)의 정보가 저장된다. 각 릴레이 서버(104)는 새로운 클라이언트(110)가 접속되면, 접속된 클라이언트(110)의 접속 정보를 접속 정보 저장 데이터베이스(106)에 기록한다. 이때 상기 클라이언트의 접속 정보는 접속된 클라이언트(110)의 아이피(IP)/접속 포트, 클라이언트(110)가 현재 접속 중인 릴레이 서버(104)의 아이피/포트 정보를 포함하여 구성될 수 있다. 만약 접속된 클라이언트(110)가 NAT의 내부에 있을 경우, 전술한 클라이언트(110)의 아이피/접속 포트는 상기 NAT에 의하여 매핑된 아이피/포트 정보일 수 있다. 이에 따라 접속 정보 저장 데이터베이스(106)에는 현재 메시지 전송 시스템(100)에 접속된 모든 클라이언트(110)의 정보 및 각 클라이언트(110)가 접속되어 있는 릴레이 서버(104)의 정보가 저장된다. 이후, 메시지 푸시 서버(102)에서 특정 클라이언트(110)로 메시지를 전송하려 할 경우, 메시지 푸시 서버(102)는 메시지를 전송하고자 하는 클라이언트(110)가 현재 접속 중인 릴레이 서버(104)의 정보를 접속 정보 저장 데이터베이스(106)로부터 전송 받고, 수신된 정보에 포함된 릴레이 서버(104) 정보를 경유하여 클라이언트(110)로 메시지를 송신한다.
릴레이 서버 할당 서버(108)는 릴레이 서버(104) 각각과 연결되어 각 릴레이 서버(104) 별로 접속된 클라이언트의 수를 모니터링한다. 만약 본 발명의 일 실시예에 따른 메시지 전송 시스템(100)에 새로 접속하려는 클라이언트(110)가 존재하는 경우, 해당 클라이언트(110)는 먼저 릴레이 서버 할당 서버(108)에 접속 가능한 릴레이 서버의 목록을 요청하게 되며, 릴레이 서버 할당 서버(108)는 현재 접속 가능한 릴레이 서버 목록을 클라이언트(110)에 제공한다. 상기 접속 가능한 릴레이 서버 목록은 현재 접속 클라이언트의 수가 최대 접속 수보다 작은 릴레이 서버(104)들의 목록으로 구성될 수 있다. 또한 상기 접속 가능한 릴레이 서버 목록에는 접속 가능한 릴레이 서버(104) 각각의 현재 접속 클라이언트 수가 포함될 수 있다. 이에 따라 상기 목록을 제공받은 클라이언트(110)는 접속 가능한 릴레이 서버(104) 중 동시 접속자 수가 가장 적은 릴레이 서버(104)로 접속을 요청할 수 있다.
클라이언트(110)는 본 발명의 실시예에 따른 메시지 전송 시스템(100)에 접속되어 메시지 푸시 서버(102)로부터 메시지를 전송받기 위한 단말이다. 본 발명의 실시예에서 클라이언트(110)의 예로는 PC, 휴대폰, PDA, 스마트폰 등의 네트워크 통신 가능한 사용자 단말을 포함한다. 전술한 바와 같이, 클라이언트(110)는 메시지 푸시 서버(102)로부터 메시지를 수신하기 위하여 릴레이 서버(104) 중 하나에 접속하여야 한다. 이에 따라 클라이언트(110)는 먼저 릴레이 서버 할당 서버(108)로부터 현재 접속 가능한 릴레이 서버의 목록을 제공받고, 이를 이용하여 릴레이 서버(104) 중 하나에 접속을 수행한다. 이때 클라이언트(110)는 UDP 통신 방식을 이용하여 릴레이 서버(104)와 접속될 수 있다.
TCP와 달리 UDP의 경우 서버와 클라이언트간에 별도의 커넥션이 이루어지지 않으므로, UDP 접속이 유지되기 위해서는 접속 당사자들이 주기적으로 해당 접속을 갱신해 주어야 한다. 이를 위하여, 본 발명의 실시예에서는 클라이언트(110)에서 릴레이 서버(104)로 주기적으로 접속 유지 메시지(Keep Alive 메시지)를 전송함으로써 클라이언트(110)와 릴레이 서버(104)간의 접속이 유지되도록 한다. 만약, 릴레이 서버(104)에 메시지가 수신되면, 릴레이 서버(104)는 해당 메시지를 전송할 클라이언트(110)로부터 주기적으로 Keep Alive 메시지가 수신되는지의 여부를 판단하고, 상기 Keep Alive 메시지가 주기적으로 수신되는 경우에만 수신된 메시지를 클라이언트(110)로 송신한다. 즉, 본 발명의 실시예에서 각 릴레이 서버(104)에 접속된 클라이언트(110)의 접속 유지 여부는 클라이언트(110)로부터 주기적으로 Keep Alive 메시지가 수신되는지의 여부에 따라 판단될 수 있다. 상기 Keep Alive 메시지의 전송 주기는 UDP 프로토콜의 특성 및 접속 유지 시간 등을 감안하여 적절하게 정해질 수 있다. 한편, 만약 기 설정된 소정 시간 동안 특정 클라이언트(110)로부터 Keep Alive 메시지가 수신되지 않는 경우, 릴레이 서버(104)는 해당 클라이언트(110)와의 연결을 종료하고, 접속 정보 저장 데이터베이스(106)에 기록된 해당 클라이언트(110)의 접속 정보를 삭제한다.
도 2는 본 발명의 일 실시예에 따른 메시지 전송 방법에 있어, 클라이언트(110)가 메시지 전송 시스템(100)에 접속하는 과정을 나타낸 순서도(200)이다.
먼저, 클라이언트(110)가 릴레이 서버 할당 서버(108)로 접속 가능한 릴레이 서버 목록을 요청하면(202), 릴레이 서버 할당 서버(108)는 현재 접속 가능한 릴레이 서버(104)의 목록을 클라이언트(110)로 전송한다(204). 전술한 바와 같이, 상기 접속 가능한 릴레이 서버 목록에는 현재 접속 가능한 릴레이 서버의 접속 주소(IP/Port) 및 각 릴레이 서버 별 현재 접속중인 클라이언트의 수를 포함할 수 있으며, 이에 따라 클라이언트(110)는 상기 접속 가능한 릴레이 서버 중 현재 접속 중인 클라이언트의 수가 가장 적은 릴레이 서버로 접속을 수행할 수 있다.
상기 목록을 제공받은 클라이언트(110)는 수신된 상기 서버 목록에 포함된 릴레이 서버(104) 중 하나로 접속 요청을 송신한다(206). 상기 접속 요청을 수신한 릴레이 서버(104)는 수신된 상기 접속 요청으로부터 상기 클라이언트의 접속 정보를 추출하여 접속 정보 저장 데이터베이스(106)에 저장하고(208), 클라이언트(110)로 상기 접속 요청에 대응되는 접속 응답을 송신한다(210). 상기 클라이언트의 접속 정보는 클라이언트(110) 및 릴레이 서버(104)의 아이피 및 접속 포트를 포함함은 전술한 바와 같다.
이후, 클라이언트(110)는 접속된 릴레이 서버(104)로 기 설정된 소정 주기마다 Keep Alive 메시지를 송신함으로써 릴레이 서버(104)와의 연결이 유지될 수 있도록 한다(212).
도 3은 본 발명의 일 실시예에 따른 메시지 전송 방법에 있어, 클라이언트(110)가 메시지 푸시 서버(102)가 클라이언트(110)로 메시지를 전송하는 과정을 나타낸 순서도(300)이다.
먼저, 메시지 푸시 서버(102)는 접속 정보 저장 데이터베이스(106)에 메시지를 보내려는 클라이언트(110)의 접속 정보를 요청하고(302), 접속 정보 저장 데이터베이스(106)는 메시지 푸시 서버(102)에 해당 정보를 제공한다(304). 상기 클라이언트의 접속 정보는 클라이언트(110)의 IP 및 포트, 클라이언트(110)가 현재 접속 중인 릴레이 서버(104)의 IP 및 포트 정보를 포함함은 전술하였다.
이후, 메시지 푸시 서버(102)는 수신된 정보에 포함된 릴레이 서버(104)로 메시지를 전송하며(306). 메시지를 수신한 릴레이 서버(104)는 수신된 상기 메시지를 클라이언트(110)로 전송한다(310). 이때, 릴레이 서버(104)는 상기 메시지 전송 시 메시지를 전송할 클라이언트(110)의 현재 접속 유지 여부를 판단하고(308), 클라이언트(110)가 현재 접속 중인 경우에만 메시지를 전송한다. 이때 클라이언트(110)가 현재 접속 중인지의 여부는, 클라이언트(110)로부터 주기적으로 Keep Alive 메시지가 수신되는지의 여부에 따라 판단될 수 있다. 만약 클라이언트(110)로부터 소정 시간 이상 Keep Alive 메시지가 수신되지 않는 경우, 릴레이 서버(104)는 클라이언트(110)와의 접속을 종료하고, 접속 정보 저장 데이터베이스(106)에 기록된 클라이언트(110)의 접속 정보를 삭제한다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다.
그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100 : 메시지 전송 시스템 102 : 메시지 푸시 서버
104 : 릴레이 서버 106 : 접속 정보 저장 데이터베이스
108 : 릴레이 서버 할당 서버 110 : 클라이언트

Claims (18)

  1. 메시지 전송 시스템으로서,
    하나 이상의 클라이언트로 메시지를 송신하는 메시지 푸시 서버;
    하나 이상의 클라이언트와 접속되며, 상기 메시지 푸시 서버로부터 상기 메시지를 수신하여 접속된 클라이언트로 송신하는 하나 이상의 릴레이 서버;
    상기 하나 이상의 릴레이 서버 각각과 접속된 클라이언트의 정보가 저장되는 접속 정보 저장 데이터베이스; 및
    상기 하나 이상의 릴레이 서버 각각과 접속된 클라이언트의 수를 모니터링하며, 상기 메시지 전송 시스템에 접속하려는 클라이언트의 요청 시 해당 클라이언트가 접속 가능한 릴레이 서버 목록을 전송하는 릴레이 서버 할당 서버를 포함하며,
    상기 메시지 푸시 서버는, 메시지를 전송하고자 하는 클라이언트의 접속 정보를 상기 접속 정보 저장 데이터베이스로부터 전송 받고, 상기 클라이언트가 현재 접속 중인 릴레이 서버를 경유하여 상기 메시지를 송신하는, 메시지 전송 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 접속 가능한 릴레이 서버 목록은, 각 릴레이 서버 별 현재 접속중인 클라이언트의 수를 포함하는, 메시지 전송 시스템.
  4. 제3항에 있어서,
    상기 메시지 전송 시스템에 접속하려는 클라이언트는, 상기 접속 가능한 릴레이 서버 목록을 수신하고, 릴레이 서버 중 현재 접속중인 클라이언트의 수가 가장 적은 릴레이 서버와 접속하는, 메시지 전송 시스템.
  5. 제1항에 있어서,
    상기 릴레이 서버는, 새로운 클라이언트가 접속되면 접속된 클라이언트의 접속 정보를 상기 접속 정보 저장 데이터베이스에 저장하는, 메시지 전송 시스템.
  6. 제5항에 있어서,
    상기 클라이언트의 접속 정보는, 상기 접속된 클라이언트의 IP 및 포트, 상기 클라이언트가 현재 접속 중인 릴레이 서버의 IP 및 포트 정보를 포함하는, 메시지 전송 시스템.
  7. 하나 이상의 클라이언트로 메시지를 송신하는 메시지 푸시 서버;
    하나 이상의 클라이언트와 접속되며, 상기 메시지 푸시 서버로부터 상기 메시지를 수신하여 접속된 클라이언트로 송신하는 하나 이상의 릴레이 서버; 및
    상기 하나 이상의 릴레이 서버 각각과 접속된 클라이언트의 정보가 저장되는 접속 정보 저장 데이터베이스를 포함하며,
    상기 메시지 푸시 서버는, 메시지를 전송하고자 하는 클라이언트의 접속 정보를 상기 접속 정보 저장 데이터베이스로부터 전송 받고, 상기 클라이언트가 현재 접속 중인 릴레이 서버를 경유하여 상기 메시지를 송신하며,
    상기 릴레이 서버는, 상기 메시지 푸시 서버로부터 메시지가 수신되면, 수신된 메시지를 송신할 클라이언트의 현재 접속 유지 여부를 판단하고, 상기 메시지를 송신할 클라이언트가 현재 접속중인 경우 상기 메시지를 전송하는, 메시지 전송 시스템.
  8. 제7항에 있어서,
    상기 클라이언트의 현재 접속 유지 여부는, 상기 메시지를 송신할 클라이언트로부터 주기적으로 접속 유지 메시지가 수신되는지의 여부에 따라 판단되는, 메시지 전송 시스템.
  9. 릴레이 서버에서, 클라이언트로부터 접속 요청을 수신하는 단계;
    상기 릴레이 서버에서, 상기 접속 요청을 송신한 상기 클라이언트의 접속 정보를 접속 정보 저장 데이터베이스에 저장하는 단계;
    상기 릴레이 서버에서, 메시지 푸시 서버로부터 메시지를 수신하는 단계; 및
    상기 릴레이 서버에서, 상기 클라이언트의 현재 접속 유지 여부를 판단하는 단계; 및
    상기 릴레이 서버에서, 상기 클라이언트가 현재 접속 중인 경우 상기 메시지를 상기 클라이언트로 송신하는 단계를 포함하는 메시지 전송 방법.
  10. 제9항에 있어서,
    상기 메시지 푸시 서버로부터 수신된 메시지는, 상기 메시지를 전송할 상기 클라이언트의 접속 정보가 포함되는, 메시지 전송 방법.
  11. 제9항 또는 제10항에 있어서,
    상기 클라이언트의 접속 정보는, 접속된 상기 클라이언트의 IP 및 포트, 상기 클라이언트가 현재 접속 중인 릴레이 서버의 IP 및 포트 정보를 포함하는, 메시지 전송 방법.
  12. 삭제
  13. 제9항에 있어서,
    상기 클라이언트가 현재 접속 중인지의 여부는, 상기 클라이언트로부터 주기적으로 접속 유지 메시지가 수신되는지의 여부에 따라 판단되는, 메시지 전송 방법.
  14. 제13항에 있어서,
    상기 릴레이 서버는, 상기 클라이언트로부터 소정 시간 이상 접속 유지 메시지가 수신되지 않는 경우 상기 클라이언트와의 접속을 종료하는, 메시지 전송 방법.
  15. 제14항에 있어서,
    상기 릴레이 서버는, 상기 클라이언트와의 접속이 종료되는 경우, 상기 접속 정보 저장 데이터베이스에 기록된 상기 클라이언트의 접속 정보를 삭제하는, 메시지 전송 방법.
  16. 클라이언트에서, 릴레이 서버 할당 서버로 접속 가능한 릴레이 서버 목록을 요청하는 단계;
    상기 클라이언트에서, 상기 릴레이 서버 할당 서버로부터 접속 가능한 릴레이 서버 목록을 수신하는 단계;
    상기 클라이언트에서, 수신된 상기 서버 목록에 포함된 릴레이 서버 중 하나의 릴레이 서버로 접속 요청을 송신하는 단계;
    상기 클라이언트에서, 상기 접속 요청을 송신한 릴레이 서버로부터 접속 응답을 수신하는 단계;
    상기 클라이언트에서, 접속된 릴레이 서버로 소정 주기마다 접속 유지 메시지를 송신하는 단계; 및
    상기 클라이언트에서, 접속된 상기 릴레이 서버로부터 메시지를 수신하는 단계;
    를 포함하는 메시지 전송 방법.
  17. 제16항에 있어서,
    상기 접속 가능한 릴레이 서버 목록은, 접속 가능한 릴레이 서버 및 각 릴레이 서버 별 현재 접속중인 클라이언트의 수를 포함하는, 메시지 전송 방법.
  18. 제17항에 있어서,
    상기 클라이언트는, 상기 접속 가능한 릴레이 서버 중 현재 접속중인 클라이언트의 수가 가장 적은 릴레이 서버와 접속하는, 메시지 전송 방법.
KR1020100112776A 2010-11-12 2010-11-12 메시지 전송 시스템 및 방법 KR101144190B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100112776A KR101144190B1 (ko) 2010-11-12 2010-11-12 메시지 전송 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100112776A KR101144190B1 (ko) 2010-11-12 2010-11-12 메시지 전송 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR101144190B1 true KR101144190B1 (ko) 2012-05-14

Family

ID=46271769

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100112776A KR101144190B1 (ko) 2010-11-12 2010-11-12 메시지 전송 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101144190B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101319940B1 (ko) 2011-10-31 2013-10-21 주식회사 유비벨록스모바일 세션 릴레이 서버를 이용한 푸시 시스템 및 방법
KR101429027B1 (ko) 2012-08-24 2014-08-11 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 메시지 박스 푸싱 방법 및 시스템
KR101659579B1 (ko) * 2015-05-29 2016-09-23 주식회사 코이노 퍼블리쉬-서브스크라이브 방식을 이용한 서버 다중화 서비스 제공장치 및 그 방법
CN110505275A (zh) * 2019-07-16 2019-11-26 北京奇艺世纪科技有限公司 数据传输方法、系统、服务器及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003288298A (ja) * 2002-03-27 2003-10-10 Hitachi Ltd プッシュサービス情報中継装置およびプッシュサービス情報中継方法
KR20040041943A (ko) * 2002-11-12 2004-05-20 한국전자통신연구원 푸쉬기반 멀티미디어 메시징 서비스 방법
JP2007325190A (ja) * 2006-06-05 2007-12-13 Ntt Docomo Inc プッシュゲートウェイ、在圏登録サーバ、携帯端末、プッシュシステム及びプッシュ方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003288298A (ja) * 2002-03-27 2003-10-10 Hitachi Ltd プッシュサービス情報中継装置およびプッシュサービス情報中継方法
KR20040041943A (ko) * 2002-11-12 2004-05-20 한국전자통신연구원 푸쉬기반 멀티미디어 메시징 서비스 방법
JP2007325190A (ja) * 2006-06-05 2007-12-13 Ntt Docomo Inc プッシュゲートウェイ、在圏登録サーバ、携帯端末、プッシュシステム及びプッシュ方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101319940B1 (ko) 2011-10-31 2013-10-21 주식회사 유비벨록스모바일 세션 릴레이 서버를 이용한 푸시 시스템 및 방법
KR101429027B1 (ko) 2012-08-24 2014-08-11 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 메시지 박스 푸싱 방법 및 시스템
KR101659579B1 (ko) * 2015-05-29 2016-09-23 주식회사 코이노 퍼블리쉬-서브스크라이브 방식을 이용한 서버 다중화 서비스 제공장치 및 그 방법
CN110505275A (zh) * 2019-07-16 2019-11-26 北京奇艺世纪科技有限公司 数据传输方法、系统、服务器及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN101699801B (zh) 一种数据传输方法及传输数据的虚拟对等网络系统
CN103248665B (zh) 一种用于分享第三方应用的方法、系统和装置
CN101146047B (zh) 一种路由模式下控制上网终端数量的方法、系统和网关
KR101240552B1 (ko) 미디어 키 관리 및 상기 미디어 키를 이용한 피어-투-피어 메시지 송수신 시스템 및 방법
CN104811478A (zh) 无线终端设备的远程控制系统及远程控制方法
US8369323B1 (en) Managing voice-based data communications within a clustered network environment
KR20180044806A (ko) 대응하는 디바이스인 제1 유형 네트워크의 고객 댁내 장비에 접속되도록 구성된 디바이스에서 구현되는 방법
KR101144190B1 (ko) 메시지 전송 시스템 및 방법
CN113411215A (zh) 基于opc ua的时间敏感网络集中用户配置方法及系统
CN103780505A (zh) 业务处理方法和装置
JP2018085776A (ja) 負荷分散装置、中継装置、負荷分散方法及びプログラム
CN102413069B (zh) 一种泛在网中通过组播方式进行下载的方法和系统
CN104821909A (zh) 端对端的数据传输方法和系统
KR20100044966A (ko) 세션 관리 프로토콜을 이용하여 사설망을 원격관리하기 위한 방법, 장치 및 시스템
KR101375133B1 (ko) 통합 sns 게이트웨이
CN103929438A (zh) 基于网页浏览器通信的防火墙穿越方法、设备和系统
EP2494769B1 (en) Communications system
CN103916489B (zh) 一种单域名多ip的域名解析方法及系统
WO2018196270A1 (zh) 一种存储路由器及基于路由器的数据存储中转方法
CN103546487A (zh) 一种基于ios平台的移动办公装置
US8416711B1 (en) Systems and methods for sharing availability status information between network nodes
US9866644B2 (en) Terminal, message distribution system, message distribution method, and computer-readable medium
CN107071038B (zh) 一种传输多媒体数据的方法及装置
KR20120052444A (ko) 모바일 메시징 서비스에서의 파일 전송을 지원하는 파일 전송 관리 시스템 및 파일 전송 관리 방법
KR100744844B1 (ko) 피투피(p2p) 통신 방법 및 장치

Legal Events

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

Payment date: 20150305

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170309

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180403

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 8