KR100921491B1 - Message transmission method without loss in ring-type communication network - Google Patents
Message transmission method without loss in ring-type communication network Download PDFInfo
- Publication number
- KR100921491B1 KR100921491B1 KR1020050060880A KR20050060880A KR100921491B1 KR 100921491 B1 KR100921491 B1 KR 100921491B1 KR 1020050060880 A KR1020050060880 A KR 1020050060880A KR 20050060880 A KR20050060880 A KR 20050060880A KR 100921491 B1 KR100921491 B1 KR 100921491B1
- Authority
- KR
- South Korea
- Prior art keywords
- message
- token
- daemon
- received
- transmission
- Prior art date
Links
Images
Classifications
-
- 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]
- H04L12/42—Loop networks
- H04L12/427—Loop networks with decentralised control
- H04L12/433—Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
-
- 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
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer 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
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 토큰 링형 통신망 (토큰 ring network)에서 노드 간 메시지 전송 시 메시지의 무결성을 보장하기 위하여, 발생된 모든 메시지의 순서(ordering)를 보장하고 완전한 메시지의 전송을 보장하며, 멀티 케스팅을 통한 고 성능의 메시지 전송 서비스를 제공하기 위한 링형 통신망에서 손실없는 메시지 전송방법에 관한 것이다. 이를 위해, 본 발명은 a) 데몬이 토큰을 수신하면 토큰에 수신하지 못한 메시지의 전송요청이 있는지 확인하는 단계; b) 메시지의 전송요청이 있는 경우, 클라이언트수신버퍼를 확인하여 자신이 멀티캐스트할 메시지가 존재하는지 확인하는 단계; c) 멀티캐스트한 메시지를 시퀀스번호에 맞게 메시지 관리버퍼에 저장하는 단계; d) 메시지 관리버퍼를 검색하여 수신하지 못한 메시지가 존재하는지 확인하는 단계; e) 전체 시퀀스번호에 대한 정보를 토큰에 삽입하는 단계; 및 f) 다음 데몬으로 토큰을 전송하는 단계를 포함한다.The present invention ensures the ordering of all generated messages and ensures complete message transmission in order to ensure the integrity of messages when transmitting messages between nodes in a token ring network. The present invention relates to a lossless message transmission method in a ring-type communication network for providing a message transmission service of performance. To this end, the present invention comprises the steps of a) checking if the daemon receives a token, request for transmission of a message not received in the token; b) if there is a request to send a message, checking the client reception buffer to see if a message to be multicasted exists; c) storing the multicast message in the message management buffer according to the sequence number; d) searching for a message management buffer to check whether there is a message not received; e) inserting information about the entire sequence number into the token; And f) sending the token to the next daemon.
Description
도 1은 본 발명의 링형 통신망에서 손실없는 메시지 전송방법이 적용되는 통신시스템망을 개략적으로 도시한 구성도이다.1 is a block diagram schematically illustrating a communication system network to which a lossless message transmission method is applied in a ring communication network of the present invention.
도 2는 본 발명의 메시지 관리버터의 동작 알고리즘을 설명하기 위한 개념도이다.2 is a conceptual diagram illustrating an operation algorithm of the message management butter of the present invention.
도 3은 본 발명에 의한 링형 통신망에서 손실없는 메시지 전송방법을 설명하기 위한 개념도이다.3 is a conceptual diagram illustrating a lossless message transmission method in a ring communication network according to the present invention.
도 4는 본 발명의 토큰 수신시 처리 알고리즘을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a processing algorithm upon receiving a token of the present invention.
도 5는 본 발명의 멀티캐스트 수신시 처리 알고리즘을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a processing algorithm upon multicast reception according to the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
10...데몬정보관리 20...클라이언트정보관리10 ... Manage Daemon Information 20 ... Manage Client Information
30...메시지관리버퍼 40...클라이언트수신버퍼30 ...
50...클라이언트관리 50...메시지수신50 ...
70...메시지전송 80...토큰수신70 Send
90...토큰전송 95...클라이언트90.Token Transfer 95 ... Client
100, 200, 300, 400...데몬100, 200, 300, 400 ... daemon
본 발명은 토큰 링형 통신망 (토큰 ring network)에서 노드 간 메시지 전송 시 메시지의 무결성을 보장하기 위하여, 발생된 모든 메시지의 순서(ordering)를 보장하고 완전한 메시지의 전송을 보장하며, 멀티 케스팅을 통한 고 성능의 메시지 전송 서비스를 제공하기 위한 링형 통신망에서 손실없는 메시지 전송방법에 관한 것이다.The present invention ensures the ordering of all generated messages and ensures complete message transmission in order to ensure the integrity of messages when transmitting messages between nodes in a token ring network. The present invention relates to a lossless message transmission method in a ring-type communication network for providing a message transmission service of performance.
현재 대부분의 토큰 링형 통신망(토큰 ring network)에서 손실된 메시지의 재전송을 위하여 또 다른 토큰을 사용함으로써 시스템이 복잡해지며 또한 메시지 손실 발생 시 재전송 요청 및 응답을 위한 시간 소비가 많아 메시지 전송에 지연이 발생하며, 발생된 모든 메시지의 순서(ordering)를 완전하게 보장하지 않는 경우가 많다.In today's most token ring networks, the use of another token for retransmission of lost messages complicates the system and also causes delays in message transmission due to high time consumption for retransmission requests and responses in case of message loss. In many cases, the ordering of all generated messages is not completely guaranteed.
본 발명이 이루고자 하는 기술적 과제는 종래 기술의 문제점인 메시지 손실 발생 시 재전송 요청 및 응답을 위한 시간소비를 최소화하여 손실에 따른 메시지 전송지연을 감소시키며, 모든 메시지의 순서(ordering)를 완전하게 보장함으로써 메시지의 무결성을 보장하며, 멀티 케스팅을 통한 메시지 전송으로 메시지 손실없는 고 성능의 메시지 전송 서비스를 제공하는 것을 목적으로 하고 있다.The technical problem to be achieved by the present invention is to minimize the time spent for retransmission request and response when a message loss occurs, which is a problem of the prior art, to reduce the message transmission delay due to the loss, by ensuring the ordering of all messages completely It aims to guarantee the integrity of messages and to provide high performance message transmission services without message loss through message transmission through multicasting.
본 발명은 상술한 기술적 과제를 달성하기 위하여, 링형 통신망에서 메시지 전송방법에 있어서, a) 데몬이 토큰을 수신하면 토큰에 수신하지 못한 메시지의 전송요청이 있는지 확인하는 단계; b) 메시지의 전송요청이 있는 경우, 클라이언트수신버퍼를 확인하여 자신이 멀티캐스트할 메시지가 존재하는지 확인하는 단계; c) 멀티캐스트한 메시지를 시퀀스번호에 맞게 메시지 관리버퍼에 저장하는 단계; d) 메시지 관리버퍼를 검색하여 수신하지 못한 메시지가 존재하는지 확인하는 단계; e) 전체 시퀀스번호에 대한 정보를 토큰에 삽입하는 단계; 및 f) 다음 데몬으로 토큰을 전송하는 단계를 포함하는 링형 통신망에서 손실없는 메시지 전송방법을 제공한다.In order to achieve the above technical problem, the present invention provides a method for transmitting a message in a ring-type communication network, the method comprising the steps of: a) checking whether a request for transmission of a message not received in the token is received by the daemon; b) if there is a request to send a message, checking the client reception buffer to see if a message to be multicasted exists; c) storing the multicast message in the message management buffer according to the sequence number; d) searching for a message management buffer to check whether there is a message not received; e) inserting information about the entire sequence number into the token; And f) transmitting a token to a next daemon.
바람직하기로는 상기 단계 a)는 전송요청이 있으면 전송요청된 메시지가 자신의 관리버퍼에 있는지 확인하여 있으면 전송하고, 없으면 바로 단계 b)를 수행함을 특징으로 한다.Preferably, step a) is characterized in that if there is a transmission request, it checks whether the message requested to be sent is in its management buffer and transmits it, and if not, immediately performs step b).
더욱 바람직하기로는 상기 전송요청한 데몬이 1개이면 그 데몬에게만 유니캐스트하고, 1개 이상이면 멀티캐스트 함을 특징으로 한다.More preferably, if there is only one daemon requesting transmission, it is unicast only to that daemon, and if more than one daemon is multicast.
바람직하기로는 상기 멀티캐스트할 메시지가 존재하면 수신된 토큰에 포함된, 현재까지 망 내에서 멀티캐스된 전체 시퀀스번호의 다음번호부터 메시지에 인덱싱하여 메시지를 멀티캐스트 하고, 상기 멀티캐스트할 메시지가 존재하지 않으면 바로 단계 d)를 수행함을 특징으로 한다.Preferably, if the message to be multicasted exists, the message is multicasted by indexing the message from the next number of the entire sequence numbers multicasted in the network up to now, included in the received token, and the message to be multicasted exists. Otherwise, step d) is performed immediately.
더욱 바람직하기로는 수신하지 못한 메시지가 존재하면 수신하지 못한 메시 지의 시퀀스번호를 토큰정보에 삽입하고, 수신하지 못한 메시지가 존재하지 않으면 바로 단계 e)를 수행함을 특징으로 한다.More preferably, if there is an unreceived message, the sequence number of the unreceived message is inserted into the token information, and if the unreceived message does not exist, step e) is immediately performed.
바람직하기로는 상기 단계 e)에서 자신이 멀티캐스트한 메시지가 존재하지 않으면 수신된 토큰에 포함된 정보를 그대로 사용함을 특징으로 한다.Preferably, in step e), if the message multicasted by itself does not exist, the information included in the received token is used as it is.
이하 본 발명에 의한 링형 통신망에서 손실없는 메시지 전송방법에 대하여 첨부된 도면을 참조하여 보다 상세히 설명하기로 한다.Hereinafter, a method for transmitting a lossless message in a ring communication network according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 링형 통신망에서 손실없는 메시지 전송방법이 적용되는 통신시스템망을 개략적으로 도시한 구성도이다.1 is a block diagram schematically illustrating a communication system network to which a lossless message transmission method is applied in a ring communication network of the present invention.
도 1에 도시한 바와 같이, 손실없는 메시지 전송을 위하여 각 노드(컴퓨터)는 한 개의 데몬(100)과 여러 개의 클라이언트(CLIENT)(95)로 구성될 수 있다. As shown in FIG. 1, each node (computer) may be configured with one
데몬(100)은 메시지 전송, 손실된 메시지 복구, 클라이언트관리, 다른 데몬에 대한 정보관리 등을 담당하는 일종의 서버를 말한다. 클라이언트는 이러한 데몬에 접속하여 자신이 전달하고자 하는 메시지를 원하는 목적지에 손실 없이 안전하게 전달하고 또한 전달 받을 수 있다. 손실없는 메시지 전송을 위하여 토큰 방식을 사용한다. 데몬들 사이에 토큰이 순차적으로 로테이션되고, 메시지 손실 방지 및 완전한 순서보장을 위하여 토큰을 가진 데몬만이 메시지를 네트워크상에 멀티캐스팅 할 수 있는 권리를 가진다. 또한 한 노드(컴퓨터)에서 토큰을 독점하는 것을 방지하기 위하여 데몬이 토큰을 가졌을 경우 멀티캐스트 할 수 있는 최대 메시지 수는 제한된다. 통상 데몬의 멀티캐스트 메시지수는 10개 내지 20개 정도이다.Daemon 100 is a kind of server that is responsible for message transmission, lost message recovery, client management, information management for other daemons. Clients can access these daemons to securely deliver and receive messages they want to deliver to their desired destinations. Token transmission is used for lossless message transmission. Tokens are rotated sequentially between daemons, and only the daemon with the token has the right to multicast messages across the network to prevent message loss and to ensure complete ordering. Also, to avoid monopolizing the token on one node (computer), the maximum number of messages that can be multicasted if the daemon has a token is limited. Normally, the number of daemon multicast messages is about 10-20.
도 1에 의하면, 데몬(100)내에서 데몬정보관리(10)는 데몬이 시작되면 네크 워크 상에 동작 중인 다른 데몬이 있는지 찾아서 만약 존재한다면 그에 대한 정보를 저장하고 토큰 로테이션 순서를 결정하는 역할을 수행한다.According to FIG. 1, the daemon information management 10 in the
클라이언트 정보관리(20)는 클라이언트(95)가 데몬(100) 자신에게 접속되면 접속된 클라이언트에 대한 정보를 저장 관리한다.The
메시지 관리버퍼(30)는 자신이 네크워크상에 멀티캐스팅한 메시지와 다른 데몬으로부터 멀티캐스팅되어 수신된 모든 메시지가 저장되며, 네트워크상에서 동작 중인 모든 데몬에서 동기화를 이루며 동일하게 관리된다.The
클라이언트 수신버퍼(40)는 클라이언트(95)로부터 TCP/IP연결(5)을 통하여 전송된 메시지가 저장된다.The client receive
메시지전송(멀티캐스트)(70)은 데몬(100)이 이전 데몬으로부터 토큰(3)을 수신하면(80) 클라이언트 관리(50) 및 클라이언트수신버퍼(40)를 확인하여 메시지가 존재하면 해당 메시지를 네트워크상(9)에 멀티캐스트 전송하며(70), 멀티캐스트한 메시지는 메시지 관리버퍼(30)에 저장한다. 메시지를 멀티캐스트 전송할 때에는 각 메시지에 순서대로 시퀀스 번호를 삽입하여 멀티캐스트하고 멀티캐스트가 완료된 메시지는 시퀀스 번호를 메시지 관리버퍼(30)의 인덱스 번호에 맞추어 메시지 관리버퍼(30)에 저장한다. 도 2에 도시한 바와 같이, 메시지 관리버퍼(30)의 인덱스 번호는 예를 들면 8000번 까지 있으며 8000번 다음부터는 0번부터 다시 시작된다. 도 2에서, 메시지 관리버퍼 인덱스번호가 1인 관리버퍼에는 메시지 시퀀스번호가 1인 메시지가 저장되고, 메시지 관리버퍼 인덱스번호가 2인 관리버퍼에는 메시지 시퀀스번호가 2인 메시지가 저장되고, 메시지 관리버퍼 인덱스번호가 3인 관리버퍼에는 메시지 시퀀스번호가 3인 메시지가 저장되고, 메시지 관리버퍼 인덱스번호가 4인 관리버퍼에는 메시지 시퀀스번호가 4인 메시지가 저장된다.The message transmission (multicast) 70 checks the
메시지수신(멀티캐스트)(60)은 다른 데몬으로부터 UDP(User Datagram Protocol) 멀티캐스팅된 메시지(6)를 수신하고, 수신된 메시지의 시퀀스 번호를 확인하여 해당되는 메시지 관리버퍼(30)에 저장한다.The message receiving (multicast) 60 receives the UDP (User Datagram Protocol) multicasted
토큰 수신(80)시, 토큰에는 이전 데몬에서 부여된 최종 메시지(30)의 시퀀스 번호에 대한 정보 및 수신하지 못한 메시지가 존재하는지 여부(재전송 요구) 등에 대한 정보가 포함되어 있다. 데몬은 토큰정보로부터 최종 메시지 시퀀스번호에 대한 정보를 구하고, 자신이 멀티캐스트를 할 경우 메시지에 최종 시퀀스번호 다음 번호부터 삽입하여 다른 데몬들로 멀티캐스트를 한다. 토큰 전송(90)시 토큰은 토큰 채널(12)을 통하여 다음 데몬으로 유니캐스트 된다. Upon receipt of the
도 1에서, 클라이언트 수신버퍼(40)는 각 데몬에 접속되어 있는 클라이언트로부터 수신된 메시지가 저장되어 있으며, 데몬이 토큰을 수신하면 네트웍상의 다른 데몬들에게 멀티캐스트(전송)될 메시지를 저장한다.In FIG. 1, the
메시지 관리버퍼(30)는 다른 데몬들에게 멀티캐스트(전송)한 메시지와 다른 데몬들로부터 멀티캐스트(수신)된 메시지가 저장된다. 결국 자신이 전송한 메시지와 수신한 메시지가 모두 저장된다. 메시지 관리버퍼(30)에 저장할 때는 메시지의 시퀀스번호와 관리버퍼의 인덱스번호를 일치시켜 저장한다. 수신하지 못한 메시지의 존재 여부를 판단하기 위하여 토큰에는 다음의 두가지 중요한 정보가 포함되어 있다. The
첫째, 현재까지 전체 망 내에서 멀티캐스트된(전송된) 메시지 중에서 한개라도 수신하지 못한 데몬이 존재하는지 여부에 대한 정보를 포함한다. 만약 현재까지 전체 망 내에서 멀티캐스트된(전송된) 메시지 중에서 한개라도 수신하지 못한 데몬이 존재한다면 어떤 메시지를 수신하지 못했는지(수신하지 못한 메시지의 시퀀스번호), 수신하지 못한 데몬이 1개인지 여러 개인지 여부(1개라면 그 데몬에게만 유니캐스트, 1개 이상이라면 멀티캐스트)의 정보를 포함한다.First, it contains information on whether there is a daemon that has not received any of the multicasted (transmitted) messages in the whole network. If there are daemons that have not received any of the multicasted (transmitted) messages in the entire network so far, which message did not receive (sequence number of the unreceived message), and whether there is one daemon that did not receive it. Includes information about whether there are multiple individuals (unicast to only that daemon, multicast to more than one daemon).
둘째, 이전 데몬까지 멀티캐스트된 메시지의 전체 시퀀스번호를 포함한다. 토큰을 수신한 데몬은 메시지를 멀티캐스트 할때, 토큰에 포함된 전체 시퀀스번호의 다음번호부터 인덱싱하여 메시지를 멀티캐스트 한다.Second, it contains the full sequence number of the message multicasted up to the previous daemon. When a daemon receives a token, the daemon multicasts the message by indexing the next sequence number of the entire sequence number contained in the token.
도 3은 본 발명에 의한 링형 통신망에서 손실없는 메시지 전송방법의 특정예를 설명하기 위한 개념도이다. 도 3을 참조하여 본 발명의 링형 통신망에서 손실없는 메시지 전송방법에 대하여 설명하기로 한다.3 is a conceptual diagram illustrating a specific example of a lossless message transmission method in a ring communication network according to the present invention. A lossless message transmission method in a ring communication network of the present invention will be described with reference to FIG. 3.
데몬1(100)이 토큰을 소유했을 때 클라이언트수신버퍼(40)에 있는 메시지1를 시퀀스 번호 1을 삽입하여 멀티캐스트하고 데몬2(200)로 토큰을 전송한다. 다른 데몬들은 모두 메시지1을 정상적으로 수신하여 메시지관리버퍼(30)에 저장하였다. 메시지관리버퍼(30)에 저장할 때는 메시지의 시퀀스 번호에 따라 관리버퍼의 인덱스번호가 0번째부터가 아니고 1번째부터 저장되며 관리버퍼의 인덱스번호가 0번째에는 메시지의 시퀀스 번호가 맨 마지막 번째인 8000이 저장되며 계속 로테이션된다.When the daemon 1 (100) owns the token, the
데몬1(100)로부터 토큰을 수신한 데몬2(200)는 메시지 클라이언트수신버퍼(40)에 있는 두 개의 메시지에 시퀀스번호 2와 3을 삽입하여 멀티캐스트하고 데몬 3(300)으로 토큰을 전송한다. 데몬3(300)을 제외한 다른 데몬들은 모두 메시지2와 3을 정상적으로 수신하여 메시지관리버퍼(30)에 저장하였지만 데몬3(300)은 메시지3을 정상적으로 수신하지 못하였다.Receiving a token from daemon 1 (100), daemon 2 (200) multicasts by inserting
토큰을 수신한 데몬3(300)은 클라이언트수신버퍼(40)에 있는 메시지에 시퀀스번호 4를 삽입하여 멀티캐스트 한다. 다른 데몬들은 모두 메시지4를 정상적으로 수신하였지만 데몬2(200)는 메시지4를 정상적으로 수신하지 못하였다. 메시지 전송 후 데몬3(300)은 자신이 메시지3을 수신하지 못하였기 때문에 메시지3에 대한 재전송 요구 정보를 토큰에 삽입하여 다음 데몬4(400)으로 전송한다. 수신하지 못한 메시지에 대한 판단은 자신이 수신한 토큰으로부터 최종 시퀀스 번호와 자신이 관리하고있는 메시지 관리버퍼에 삽입되어 있는 메시지의 수를 비교하여 시퀀스 번호 몇 번을 수신하지 못하였는지 판단한다.Daemon 3 (300) receiving the token multicasts by inserting the
토큰을 수신한 데몬4(400)는 토큰으로부터 재전송 요구에 대한 정보를 확인하여 메시지관리버퍼(30)의 해당 인덱스 값에 해당하는 메시지3을 데몬3(300)으로만 전송한다. 만약 데몬4(400) 자신도 메시지3을 수신하지 못하였다면 다음 데몬으로 토큰을 전송할 때 메시지3을 수신하지 못한 데몬이 1개 이상이라는 정보를 삽입하여 전송하고, 이 토큰을 수신한 데몬은 메시지 3을 수신하지 못한 데몬이 한 개 이상이라는 것을 알고 메시지3을 모든 데몬으로 멀티캐스트한다. (이미 메시지3을 수신한 데몬들은 이 메시지를 무시한다.) 데몬4(400)는 자신의 새로운 메시지 5를 멀티캐스트한다. 모든 데몬은 메시지5를 수신하여 메시지관리버퍼(30)에 저장하였다. 그 후 데몬4(400)는 데몬1(100)로 토큰을 전송한다.Upon receiving the token, the daemon 4 (400) checks the information on the retransmission request from the token and transmits only the
토큰을 수신한 데몬1(100)은 메시지6과 메시지7를 멀티캐스트 한다. 데몬2(200)를 제외한 모든 데몬은 메시지6과 7를 수신하여 해당 메시지관리버퍼(30)에 저장하였다. 데몬2(200)는 메시지6은 수신하지 못했으며 메시지7만 정상적으로 수신하였다. 그 다음 데몬1(100)은 데몬2(200)로 토큰을 전송한다.Daemon 1 (100) receiving the
토큰을 수신한 데몬2(200)는 자신의 새로운 메시지인 메시지8과 9를 멀티캐스트하고 자신이 수신하지 못한 4번과 6번 메시지에 대하여 재전송 요구를 한다. 그 다음 데몬3(300)으로 이러한 정보가 포함된 토큰을 전송한다.Daemon 2 (200) receiving the token multicasts its own new messages,
토큰을 수신한 데몬3(300)은 재전송 요구가 있음으로 메시지관리버퍼(30)에서 해당 인덱스값에 해당하는 메시지 4와 6을 데몬2(200)로 전송한다. 그리고 자신의 새로운 메시지를 멀티캐스트 한다. 이러한 메시지 전송 흐름이 계속된다.Daemon 3 (300) receiving the token sends a
이상으로 손실없는 메시지 전송 동작에 대해서 설명한 바와 같이, 본 발명은 메시지 전송시 손실된 메시지를 각 데몬에서 토큰 수신시 판단하여, 재전송 요구 정보를 토큰에 삽입하여 다음 데몬으로 전송하여 손실된 메시지를 재전송받을 수 있다. As described above, a lossless message transmission operation is performed. The present invention determines a lost message at the time of receipt of a token at each daemon, inserts retransmission request information into the token, and then retransmits the lost message. I can receive it.
이하, 첨부된 도 4를 참조하여 토큰 수신시 처리 알고리즘에 대하여 설명하기로 한다.Hereinafter, a processing algorithm upon receiving a token will be described with reference to FIG. 4.
도 4는 본 발명의 토큰 수신시 처리 알고리즘을 설명하기 위한 흐름도이다. 도 4에서, 토큰이 수신되면 (400) 토큰 정보를 확인한다(402). 이 때 메시지에 대한 최종 시퀀스번호 및 재전송 요청 존재여부 확인한다.4 is a flowchart illustrating a processing algorithm upon receiving a token of the present invention. In Figure 4, the token is received (400) to confirm the token information (402). At this time, check the final sequence number of the message and whether there is a retransmission request.
토큰정보가 확인되면 재전송요청이 있는가를 확인하여 (404), 없으면 단계 418로 진행하고 있으면 단계 406으로 진행한다. 단계 404에서 재전송요청이 있으면, 메시지관리버퍼에 재전송요청된 메시지가 존재하는지 확인한다(406). 재전송요청된 메시지가 존재하는가를 확인하여(408), 존재하면 단계 412로 진행하고 존재하지 않으면 단계 410으로 진행한다. 단계 412에서 재전송요청된 데몬이 1개이상인가 확인하여 1개 이상이면 단계 416을 진행하고, 1개 이상이 아니면 단계 414로 진행한다. 단계 410에서는 해당 메시지를 수신하지 못한 데몬이 1개 이상이라는 정보를 셋팅하고 단계 418로 진행하고, 단계 414에서는 재전송요청한 데몬에게만 해당 메시지를 전송하고 단계 418로 진행하고, 단계 416에서는 모든 데몬에게 멀티캐스트 전송하고 단계 418로 진행한다.If the token information is confirmed, it is checked whether there is a retransmission request (404). If not, the process proceeds to step 418. If there is a retransmission request in
단계 418에서 클라이언트수신버퍼에 새로운 메시지가 존재하는가를 확인하여, 존재하지 않으면 단계 424로 진행하고 존재하면 단계 420에서 메시지에 시퀀스번호를 삽입하여 멀티캐스트한다. 멀티캐스트한 메시지는 시퀀스번호에 따라 메시지 관리버퍼에 저장한다(422). 단계 424에서 자신의 메시지관리버퍼를 확인하여 수신하지 못한 메시지가 존재하는지 확인한다. 단계 426에서 수신하지 못한 메시지가 존재하면 단계 428로 진행하여 해당 메시지를 수신하지 못한 데몬이 1개 이상이라는 정보가 셋팅되어 있는지 확인한다. 단계 426에서 수신하지 못한 메시지가 존재하지 않으면 단계 436으로 진행한다. 단계 430에서 정보가 셋팅되어 있으면 단계 432에서 1개 이상의 데몬이 해당 메시지를 수신하지 못하였다는 정보를 토큰에 삽입하고 단계 434로 진행한다. 단계 434에서 해당 메시지에 대한 재전송요청정보를 토큰에 삽입하고 단계 436을 진행한다.In
단계 436에서 최종 시퀀스번호에 대한 정보를 토큰에 삽입하고 다음 데몬으로 토큰 전송한다(438). 그 다음 단계440에서 메시지관리버퍼에 있는 메시지를 클라이언트로 전송하고 토큰수신대기한다(442).In
도 5는 본 발명의 멀티캐스트 수신시 처리 알고리즘을 설명하기 위한 흐름도이다. 5 is a flowchart illustrating a processing algorithm upon multicast reception according to the present invention.
도 5에서 멀티캐스트 수신하면(500), 수신된 메시지의 시퀀스번호를 확인하고(510), 그 다음 시퀀스번호에 따라 메시지관리버퍼에 저장하고(520), 메시지관리버퍼에 있는 메시지를 클라이언트에 전송하고(530), 멀티캐스트 수신 대기한다(540).When receiving the multicast in FIG. 5 (500), the sequence number of the received message is checked (510), and then stored in the message management buffer according to the sequence number (520), and the message in the message management buffer is transmitted to the client. In
일반적으로 UDP통신은 접속(CONNECTION)이 필요없기 때문에 편리한 점이 있는 반면에 메시지 손실이 발생 할 가능성이 존재한다. 이러한 메시지 손실 방지를 위하여 많은 비용을 투자하여 하드웨어적으로 해결하거나 복잡한 알고리즘을 통하여 시스템을 복잡하게 구성하는 경우가 많다. 그러나 본 발명에서는 단순한 알고리즘 사용과 멀티캐스트를 통한 전송속도의 개선을 통하여 네트워크상에서 보다 간편하게 손실없는 메시지전송을 가능하게 한다. In general, UDP communication is convenient because it does not require a connection, but there is a possibility of message loss. In order to prevent such a message loss, a large amount of money is often solved by hardware or a system is complicated by a complex algorithm. However, in the present invention, lossless message transmission is more easily performed on a network by using a simple algorithm and improving a transmission speed through multicast.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050060880A KR100921491B1 (en) | 2005-07-06 | 2005-07-06 | Message transmission method without loss in ring-type communication network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050060880A KR100921491B1 (en) | 2005-07-06 | 2005-07-06 | Message transmission method without loss in ring-type communication network |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070005844A KR20070005844A (en) | 2007-01-10 |
KR100921491B1 true KR100921491B1 (en) | 2009-10-13 |
Family
ID=37871223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050060880A KR100921491B1 (en) | 2005-07-06 | 2005-07-06 | Message transmission method without loss in ring-type communication network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100921491B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616080B (en) * | 2009-07-17 | 2011-06-22 | 北京星网锐捷网络技术有限公司 | Packet order preserving method of resilient packet ring, device and network equipment |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0701346A2 (en) | 1994-09-09 | 1996-03-13 | ABBPATENT GmbH | Method for consistent data transmission |
JPH10210032A (en) | 1997-01-24 | 1998-08-07 | Matsushita Electric Ind Co Ltd | Broadcast method |
KR20020051396A (en) * | 2000-12-22 | 2002-06-29 | 엘지전자 주식회사 | Multicast structure and its method using ring structure |
US20030061389A1 (en) | 2001-09-26 | 2003-03-27 | Sam Mazza | Multi-token totally ordered group communication protocol |
-
2005
- 2005-07-06 KR KR1020050060880A patent/KR100921491B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0701346A2 (en) | 1994-09-09 | 1996-03-13 | ABBPATENT GmbH | Method for consistent data transmission |
JPH10210032A (en) | 1997-01-24 | 1998-08-07 | Matsushita Electric Ind Co Ltd | Broadcast method |
KR20020051396A (en) * | 2000-12-22 | 2002-06-29 | 엘지전자 주식회사 | Multicast structure and its method using ring structure |
US20030061389A1 (en) | 2001-09-26 | 2003-03-27 | Sam Mazza | Multi-token totally ordered group communication protocol |
Also Published As
Publication number | Publication date |
---|---|
KR20070005844A (en) | 2007-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9900168B2 (en) | System and method for reliable multicast data transport | |
US7502860B1 (en) | Method and apparatus for client-side flow control in a transport protocol | |
CN102685204B (en) | Method and equipment for transmitting data resource | |
US7554992B2 (en) | Mobile device communications system and method | |
US5553083A (en) | Method for quickly and reliably transmitting frames of data over communications links | |
US7948921B1 (en) | Automatic network optimization | |
US9641492B2 (en) | Protocol link layer | |
JP4856344B2 (en) | System and method for displaying and maintaining redundant data sets utilizing DNA transmission (transmission) and transcription techniques | |
US20030039249A1 (en) | Method and system for efficient layer 3-layer 7 routing of internet protocol ("IP") fragments | |
Zhu et al. | Chronos: Serverless multi-user chat over NDN | |
JPH11161622A (en) | Communication system | |
US20050039048A1 (en) | Efficient new e-mail discovery | |
US7539191B1 (en) | System and method for securing route processors against attack | |
CN106059936B (en) | The method and device of cloud system Multicast File | |
JP2005025758A (en) | System and method for message-based scalable data transfer | |
CN112152914A (en) | Instant messaging method and system based on Beidou short message | |
Natarajan et al. | SCTP: What, why, and how | |
US8453229B2 (en) | Push type communications system | |
CN110771117B (en) | Session layer communication using ID-oriented network | |
US20040267960A1 (en) | Force master capability during multicast transfers | |
KR100921491B1 (en) | Message transmission method without loss in ring-type communication network | |
CN109792444B (en) | Play-out buffering in a live content distribution system | |
Cameron et al. | Transport multiplexing protocol (tmux) | |
Waters et al. | The interactive sharing transfer protocol version 1.0 | |
Gómez Montenegro et al. | Constrained Application Protocol (CoAP) over Bundle Protocol (BP) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120928 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20130930 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20140929 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20150930 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160929 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170928 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20181001 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20191001 Year of fee payment: 11 |