KR20010056756A - Method for communication processing of TCP/IP socket connection between client processes and server processes - Google Patents

Method for communication processing of TCP/IP socket connection between client processes and server processes Download PDF

Info

Publication number
KR20010056756A
KR20010056756A KR1019990058350A KR19990058350A KR20010056756A KR 20010056756 A KR20010056756 A KR 20010056756A KR 1019990058350 A KR1019990058350 A KR 1019990058350A KR 19990058350 A KR19990058350 A KR 19990058350A KR 20010056756 A KR20010056756 A KR 20010056756A
Authority
KR
South Korea
Prior art keywords
message
client
server
processor
processes
Prior art date
Application number
KR1019990058350A
Other languages
Korean (ko)
Other versions
KR100566238B1 (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 KR1019990058350A priority Critical patent/KR100566238B1/en
Publication of KR20010056756A publication Critical patent/KR20010056756A/en
Application granted granted Critical
Publication of KR100566238B1 publication Critical patent/KR100566238B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

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

PURPOSE: A TCP/IP socket communication processor method between client processors and sub processors is provided to set a socket connection to a message routing processor without directly setting a socket connection to a sub processor, relay a message by a message routing processor and perform a traffic distribution of a sub processor using a message routing processor. CONSTITUTION: A client processor sets a socket connection using a message routing processor, and an inherent ID is transferred to a log-in message, and a message routing process is logged in, and a sub processor sets a socket connection with a message routing processor, and the inherent ID and an inherent ID of the processor group are transferred to the log-in message for thereby logging the message routing processor. The client processor transfers a message to the message routing processor, and the message routing processor extracts a destination information from the message from the client processor and routes a message to a file descriptor generated when connecting with the processor. If it is needed that the sub processor processes a message from the message routing processor and the set communication channel, and a result of the process is transferred to the client processor, the transmission site information included in the message is set as a destination information, and the process result message is transferred to the routing processor.

Description

복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓 통신처리 방법{Method for communication processing of TCP/IP socket connection between client processes and server processes}Method for communication processing of TCP / IP socket connection between client processes and server processes}

본 발명은 복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간TCP/IP 소켓 통신처리 방법에 관한 것으로, 보다 상세하게는 컴퓨터 네트워크상에 분산되어 있는 프로세스간의 통신수단으로 이용되는 TCP/IP 소켓 통신방법을 이용하여 복수개의 클라이언트 프로세스와 동일 기능을 수행하는 복수개의 서버 프로세스간의 효율적인 통신이 가능하도록 한 복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓 통신처리 방법에 관한 것이다.The present invention relates to a method for processing TCP / IP socket communication between a plurality of client processes and a plurality of server processes, and more particularly, to use a method of TCP / IP socket communication used as a communication means between processes distributed on a computer network. The present invention relates to a TCP / IP socket communication processing method between a plurality of client processes and a plurality of server processes to enable efficient communication between a plurality of server processes performing the same function as a plurality of client processes.

대량의 정보를 처리하기 위한 방법으로 동일기능을 수행하는 서버 프로세스를 분산된 컴퓨터에 수용하여 제공하는 방법이 널리 사용되고 있다. 이러한 분산구조는 요구되는 처리용량에 따라 시스템 증설을 통한 처리성능 확장을 손쉽게 할 수 있는 장점이 있다. 이러한 분산된 프로세스간 통신수단으로 TCP/IP 소켓을 이용한 통신방법이 널리 사용되고 있다.As a method for processing a large amount of information, a method of accommodating and providing a server process performing the same function in a distributed computer is widely used. Such a distributed structure has an advantage that the processing performance can be easily extended through system expansion according to the required processing capacity. As a distributed interprocess communication means, a communication method using a TCP / IP socket is widely used.

분산되어 있는 서버 프로세스와 통신을 하기 위한 방법으로는 클라이언트 프로세스가 분산된 서버 프로세스들에 대한 정보를 직접 가지고 각각의 서버 프로세스와의 소켓 연결설정을 하고, 연결된 소켓을 통하여 통신을 하는 방법이 있다. 이러한 직접 연결방법은 클라이언트 프로세스가 연결된 다수의 서버 프로세스의 상태를 직접 관리해야 하며, 서버 프로세스와의 연결해제시 연결 재설정 등과 같은 기능을 수용하여야 하므로, 클라이언트 프로세스의 구조가 복잡해지는 단점이 있다.As a method for communicating with distributed server processes, a client process directly establishes a socket connection with each server process with information about distributed server processes, and communicates through a connected socket. This direct connection method directly manages the state of a plurality of server processes to which the client process is connected, and has a disadvantage in that the structure of the client process is complicated because it must accommodate a function such as resetting a connection when disconnecting from the server process.

뿐만 아니라, 복수개의 서버프로세스에 대한 트래픽 분배를 클라이언트 프로세스가 직접 관장하여 처리하여야 하며, 클라이언트 프로세스가 복수개 일 경우, 클라이언트 프로세스간에 서버 프로세스에 대한 트래픽에 대한 정보교환을 통하여 트래픽 분배를 고려하지 않으면, 특정 서버 프로세스로 트래픽이 집중될 수 있는문제점이 있다.In addition, the traffic distribution for a plurality of server processes must be directly managed by the client process, and if there are a plurality of client processes, unless the traffic distribution is considered through the exchange of information on the server process between the client processes, The problem is that traffic can be concentrated to specific server processes.

서버프로세스 측면에서는 다수의 클라이언트와 소켓 연결설정 및 연결된 소켓의 관리 등의 기능을 서버 프로세스가 직접 수행해야 하므로, 서버 프로세스의 구조가 복잡해지는 문제점이 있다.In terms of the server process, since the server process must directly perform a function such as establishing a socket connection with a plurality of clients and managing a connected socket, the structure of the server process is complicated.

본 발명에서는 상기에 기술한 바와 같은 문제점을 감안하여 클라이언트 프로세스와 서버 프로세스 사이에 메시지 라우팅 프로세스를 두어 메시지 라우팅 프로세스로 하여금 클라이언트 프로세스와 서버 프로세스간의 통신을 중계하도록 한다.In the present invention, in view of the above-described problems, a message routing process is provided between the client process and the server process so that the message routing process can relay the communication between the client process and the server process.

즉, 클라이언트 프로세스는 서버 프로세스로 직접 소켓연결 설정을 하는 대신에 메시지 라우팅 프로세스로 소켓 연결설정을 하며, 서버 프로세스도 메시지 라우팅 프로세스로 소켓연결설정을 하도록 하고, 메시지 라우팅 프로세스가 메시지를 중계하도록 하고, 서버 프로세스로의 트래픽 분산을 메시지 라우팅 프로세스가 수행할 수 있도록 한 복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓 통신처리 방법을 제공함에 그 목적이 있다.In other words, the client process establishes the socket connection with the message routing process instead of establishing the socket connection directly with the server process, the server process also establishes the socket connection with the message routing process, and the message routing process relays the message. It is an object of the present invention to provide a method for processing TCP / IP socket communication between a plurality of client processes and a plurality of server processes to enable a message routing process to distribute traffic to server processes.

도 1은 기존의 복수개 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓통신 처리 구성도.1 is a configuration diagram of TCP / IP socket communication processing between a plurality of existing client processes and a plurality of server processes.

도 2는 본 발명이 적용되는 복수개 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓통신 처리 구성도.2 is a configuration diagram of TCP / IP socket communication processing between a plurality of client processes and a plurality of server processes to which the present invention is applied.

도 3은 본 발명에 따른 프로세스 로그인 처리 흐름도.3 is a process login process flow diagram in accordance with the present invention.

도 4는 본 발명에 따른 전달메시지 처리 흐름도.4 is a flowchart of a delivery message processing according to the present invention;

도 5는 본 발명에 따른 서버 프로세스의 수신메시지 처리 흐름도.5 is a received message processing flowchart of a server process according to the present invention.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

1 : 클라이언트 프로세스 2 : 서버 프로세스1: client process 2: server process

3 : 메시지라우팅 프로세스3: message routing process

상기와 같은 목적을 달성하기 위해 본 발명에서 제안하는 복수개의 클라이언트 프로세스와 동일 기능을 수행하는 복수개의 서버 프로세스간 TCP/IP 소켓통신 방법은, 클라이언트 프로세스 및 서버 프로세스가 메시지 라우팅 프로세스로 소켓 연결설정 및 로그인을 하고, 연결설정 요구를 받은 메시지 라우팅 프로세스는 연결 요구를 승낙하고, 승낙시 생성된 file descriptor와 로그인 정보에 실려온 각 프로세스의 고유 ID정보를 함께 기록, 관리하는 제 1단계;In order to achieve the above object, a TCP / IP socket communication method between a plurality of server processes performing the same function as a plurality of client processes proposed by the present invention includes a client process and a server process establishing a socket connection as a message routing process. The message routing process of logging in and receiving a connection establishment request may include: a first step of accepting a connection request and recording and managing a file descriptor generated at the time of acceptance and the unique ID information of each process carried in the login information together;

클라이언트 프로세스가 메시지 라우팅 프로세스간에 연결설정된 소켓을 통하여 전달하고자 하는 메시지를 메시지 라우팅 프로세스로 전달하고, 메시지 라우팅 프로세스는 메시지에 포함된 목적지 정보를 참조하여, 해당 서버 프로세스를 선택하여 서버 프로세스로 메시지를 중계하는 제 2단계; 및The client process delivers the message to the message routing process through the socket established between the message routing processes, and the message routing process refers to the destination information included in the message and selects the corresponding server process to relay the message to the server process. A second step of doing; And

메시지를 수신한 서버 프로세스는 관련 기능을 수행하고, 클라이언트 프로세스로 그 결과를 전달할 필요가 있을 때, 결과메시지를 메시지 라우팅 프로세스에게 전달하고, 메시지 라우팅 프로세스는 이 메시지를 해당 클라이언트 프로세스에게 전달하는 제 3단계를 포함하고;The server process that receives the message performs the relevant function and, when necessary to deliver the result to the client process, delivers the result message to the message routing process, and the message routing process forwards the message to the client process. Including a step;

복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간의 소켓 통신처리 절차를 제공하는 것을 특징으로 한다.A socket communication processing procedure between a plurality of client processes and a plurality of server processes is provided.

상술한 목적 및 특징들, 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다.The above objects, features, and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings.

이하 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2 은 본 발명에 의한 프로세스 통신처리 방법이 적용되는 컴퓨터 네트워크 상의 시스템 구성도로서, 서버상의 기능의 처리를 요구하는 복수개의 클라이언트 프로세스(1)와 클라이언트 프로세스의 요구를 받아 해당 기능을 수행하는 서버 프로세스(2), 이들 프로세스간의 통신을 중계하는 메시지 라우팅 프로세스(3)으로 구성된다.2 is a system configuration diagram on a computer network to which a process communication processing method according to the present invention is applied, and a plurality of client processes 1 requesting processing of functions on a server and a server performing a function by receiving a request from the client process. Process 2, and a message routing process 3 for relaying communication between these processes.

상기와 같이 구성된 컴퓨터 네트워크상에 분산된 클라이언트 프로세스와 서버 프로세스로 구성된 시스템의 동작 과정을 살펴보면 하기와 같다.An operation process of a system composed of a client process and a server process distributed on the computer network configured as described above is as follows.

도 3에 도시된 바와같이 프로세스 로그인 과정은 다음과 같다.As shown in FIG. 3, the process login process is as follows.

클라이언트 프로세스의 소켓클라이언트가 메시지 라우팅 프로세스의 소켓서버로 소켓연결 설정을 요구한다. 메시지 라우팅 프로세스로부터 연결설정 요구가 승낙되면, 이 때 생성된 file descriptor를 통하여, 자신의 고유ID가 포함된 로그인 메시지를 메시지 라우팅 프로세스에게 전달한다. 클라이언트 프로세스로부터 연결설정 요구를 승인한 메시지 라우팅 프로세스는 연결 설정 승인시 시스템에서 부여한 file descriptor와 연결 승인 후 클라이언트 프로세스로부터 수신한 로그인 메시지에 실려온 클라이언트 프로세스의 고유 ID를 함께 기록하여 두고, 생성된 file descriptor를 통하여 로그인 확인메시지를, 클라이언트 프로세스에게 전달한다. 클라이언트 프로세스는 메시지 라우팅 프로세스로부터 로그인 확인메시지를 수신한다. 로그인 확인 메시지를 주고 받은 이후 클라이언트 프로세스와 메시지 라우팅 프로세는 메시지를 주고 받을 수 있는 통화로가 설정된 상태가 된다.The socket process of the client process requests a socket connection to the socket server of the message routing process. If the connection establishment request is accepted from the message routing process, the login message including its own ID is transmitted to the message routing process through the file descriptor generated at this time. The message routing process that approves the connection establishment request from the client process records the file descriptor given by the system when the connection establishment is approved and the unique ID of the client process included in the login message received from the client process after the connection approval. It sends a login confirmation message to the client process. The client process receives a login confirmation message from the message routing process. After sending and receiving a login confirmation message, the client process and the message routing process set up a call path for sending and receiving messages.

한편, 서버 프로세스의 소켓클라이언트가 메시지 라우팅 프로세스의 소켓서버로 소켓연결 설정을 요구한다. 메시지 라우팅 프로세스로부터 연결설정 요구가 승인되면, 이 때 생성된 file descriptor를 통하여, 자신의 고유ID, 자신이 속한 서버 프로세스 그룹 ID가 포함된 로그인 메시지를 메시지 라우팅 프로세스에게 전달한다. 서버 프로세스로부터 연결설정 요구를 승인한 메시지 라우팅 프로세스는 연결 설정 승인시 시스템에서 부여한 file descriptor와 연결 승인 후 서버 프로세스로부터 수신한 로그인 메시지에 실려온 서버프로세스의 고유 ID, 서버 프로세스의 그룹ID를 함께 기록하여 두고, 생성된 file descriptor를 통하여 로그인 확인메시지를 서버 프로세스에게 전달한다. 서버 프로세스는 메시지 라우팅 프로세스로부터 로그인 확인메시지를 수신한다. 로그인 확인 메시지를 주고 받은 이후 서버 프로세스와 메시지 라우팅 프로세는 메시지를 주고 받을 수 있는 통화로가 설정된 상태가 된다.Meanwhile, the socket client of the server process requests a socket connection to the socket server of the message routing process. If the connection establishment request is approved from the message routing process, the login message including its own ID and the server process group ID to which it belongs is transmitted to the message routing process through the file descriptor generated at this time. The message routing process that accepts the connection establishment request from the server process records the file descriptor given by the system when the connection establishment is approved, the unique ID of the server process, and the group ID of the server process, which are included in the login message received from the server process after the connection is approved. The login confirmation message is transmitted to the server process through the generated file descriptor. The server process receives a login confirmation message from the message routing process. After sending and receiving a login confirmation message, the server process and the message routing process set up a call path for sending and receiving messages.

다음은 상기와 같은 통화로가 설정된 상태에서의 메시지 전달 처리 과정을 도 4을 참조로 설명하면 다음과 같다.Next, a message transfer process in a state in which a call path is set as described above will be described with reference to FIG. 4.

1단계를 거쳐 클라이언트 프로세스와 메시지 라우팅 프로세스간의 통신체널, 서버 프로세스와 메시지 라우팅 프로세스간의 통신체널이 생성된다.In one step, a communication channel between the client process and the message routing process, and a communication channel between the server process and the message routing process is created.

클라이언트 프로세스에서 특정기능을 수행하는 서버 프로세스와 통신을 하고자 할 때, 그러한 기능을 수행하는 서버 프로세스가 포함되어 있는 서버 프로세스 그룹ID를 목적지로 명기하고, 발신지 정보에는 자신의 고유ID를 기록한 헤더 정보를 포함한 전달메시지를 메시지 라우팅 프로세스에게 전달한다. 메시지 라우팅 프로세스는 등록된 모든 file descriptor에서 메시지 수신 유무를 감지하고 있다가 특정 file descriptor에서 메시지 수신이 감지되면, 해당 file descriptor에서 메시지를 읽고, 이 메시지에 포함된 목적지 정보를 추출한다. 메시지 라우팅 프로세스는 자신에게 로그인 한 서버 프로세스 중에 해당 서버 프로세스 그룹ID에 속한 서버 프로세스가 존재하는지를 확인한다. 만일 해당되는 서버 프로세스가 한 개가 존재하면, 그 서버 프로세스와 연결 설정시 생성된 file descriptor로 메시지를 라우팅하고, 해당되는 서버 프로세스가 복수개 존재하면, 트래픽 균등 배분 알고리즘(예로 rotary 방식 배분, cyclic 방식 배분, 서버프로세스간 특정 비율 배분)에 따라 전달할 서버 프로세스를 결정하고, 그 서버 프로세스와 연결 설정시 할당받은 file descriptor로 메시지를 라우팅한다.When a client process wants to communicate with a server process that performs a specific function, it specifies the server process group ID that contains the server process that performs that function as the destination, and the source information contains header information that records its own ID. Deliver the forwarded message to the message routing process. The message routing process detects the presence or absence of a message in all registered file descriptors. If a message reception is detected in a specific file descriptor, the message routing process reads the message from the file descriptor and extracts destination information included in the message. The message routing process checks whether a server process belonging to the server process group ID exists among the server processes logged in to it. If there is one corresponding server process, route the message to the file descriptor created when establishing a connection with the server process, and if there are multiple corresponding server processes, a traffic equalization algorithm (eg, rotary distribution, cyclic distribution) In this case, the server process to be delivered is determined according to the specific ratio allocation between the server processes, and the message is routed to the file descriptor allocated when establishing the connection with the server process.

만일 헤더정보에 포함된 목적지 정보가 그룹ID가 아닌 개별 프로세스ID인 경우에는 해당 프로세스ID를 가진 프로세스가 연결설정이 되어 있는지 확인하고, 연결이 되어 있으면, 해당 프로세스와 연결 설정시 부여 받은 file descriptor로 메시지를 라우팅한다.If the destination information included in the header information is an individual process ID instead of a group ID, check whether the process with the corresponding process ID is established. If the connection is established, use the file descriptor given when establishing the connection with the corresponding process. Route the message.

그리고 서버 프로세스의 수신 메시지 처리 과정을 도 5를 참조하여 설명하면 다음과 같다.A process of processing a received message of a server process will now be described with reference to FIG. 5.

서버 프로세스는 메시지 라우팅 프로세스와의 연결 설정시 시스템에서 부여 받은 file descriptor에서 메시지 수신 유무를 감지하고 있다가, 메시지 수신사실이 감지되면, 해당 file descriptor에서 수신 메시지를 읽고, 메시지에 포함된 헤더정보에서 클라이언트 프로세스의 고유ID 정보를 추출하고 클라이언트 프로세스의 전달메시지를 처리한다. 클라이언트 프로세스에게 처리결과를 전달할 필요가 있을 경우, 목적지를 클라이언 프로세스 고유ID로 기록하고 발신지를 자신의 서버 프로세스ID로 기록한 헤더정보를 포함하는 처리결과 메시지를 메시지 라우팅 프로세스에게 전달한다.When the server process establishes a connection with the message routing process, the server process detects whether a message is received from the file descriptor given by the system. If a message is received, the server process reads the received message from the corresponding file descriptor and reads the header information included in the message. Extract unique ID information of client process and process delivery message of client process. When it is necessary to deliver the processing result to the client process, it sends the processing result message including the header information that records the destination as the client process unique ID and the originating address as its server process ID to the message routing process.

한편, 클라이언트 프로세스의 처리결과메시지 수신과정은 다음과 같다.Meanwhile, the process of receiving a process result message of the client process is as follows.

클라이언트 프로세스는 메시지 라우팅 프로세스와 연결설정에서 생성된 filedescriptor에 메시지 수신유무를 감지하고 있다가, 메시지 수신이 감지되면, file descriptor로부터 메시지를 읽고, 서버 프로세스의 처리결과 메시지를 수신한다. 해당 처리결과를 보낸 서버 프로세스와 추가적인 통신이 필요하면, 처리결과메시지와 함께 온 헤더정보의 발신지 정보에 있는 서버 프로세스 고유ID를 보내고자 하는 메시지의 헤더정보의 목적지 정보로 기록하고, 자신의 고유ID를 발신지 정보로 기록한 헤더정보를 포함한 메시지를 메시지 라우팅 프로세스로 전달한다.The client process detects whether a message is received in the filedescriptor generated by the message routing process and the connection setup. If the message is detected, the client process reads the message from the file descriptor and receives the processing result message of the server process. If additional communication with the server process that sent the processing result is necessary, the server process unique ID in the source information of the header information that came with the processing result message is recorded as the destination information of the header information of the message to be sent, and its unique ID. Sends the message containing the header information recorded as source information to the message routing process.

상기와 같은 본 발명은, 컴퓨터 네트워크상에 TCP/IP 소켓통신을 하는 복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간에 통신을 하는데 있어, 메시지 라우팅 프로세스를 도입하여, 클라이언트 프로세스와 서버 프로세스간에 직접 통신하는데 따른 클라이언트 프로세스 및 서버 프로세스의 복잡도를 줄이고, 다수의 프로세스로 트래픽을 효과적으로 분산시켜 하나의 프로세스로 트래픽이 집중되는 것을 방지 할 수 있는 효과가 있다.As described above, the present invention provides a communication between a plurality of client processes and a plurality of server processes that perform TCP / IP socket communication on a computer network, and introduces a message routing process to directly communicate between a client process and a server process. This reduces the complexity of client and server processes and effectively distributes traffic to multiple processes, preventing traffic from being concentrated in one process.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the spirit of the present invention for those skilled in the art to which the present invention pertains, and the above-described embodiments and accompanying It is not limited to the drawing.

Claims (2)

컴퓨터 네트워크상에 연결된 시스템상에서 복수개의 클라이언트 프로세스와 서버프로세스간에 TCP/IP 소켓통신을 하는데 있어서,In TCP / IP socket communication between multiple client processes and server processes on a system connected to a computer network, 메시지 라우팅 프로세스를 두고, 클라이언트 프로세스가 메시지 라우팅 프로세스로 소켓 연결설정을 하고, 로그인 메시지에 자신의 고유 ID를 전달하여 메시지 라우팅 프로세스로 로그인 하고, 서버 프로세스도 메시지 라우팅 프로세스와 소켓 연결 설정을 하고, 로그인 메시지에 자신의 고유 ID 및 프로세스 그룹의 고유 ID를 전달하여 메시지 라우팅 프로세스로 로그인 하는 제 1단계;With the message routing process, the client process establishes a socket connection to the message routing process, logs in to the message routing process by passing its own ID to the login message, and the server process establishes a socket connection with the message routing process, and logs in. Logging in to a message routing process by passing a unique ID of the group and a unique ID of the process group to the message; 상기 제 1단계에서 로그 인 수행 후, 클라이언트 프로세스는 서버 프로세스에게 전달할 메시지를 메시지 라우팅 프로세스에게 전달하고, 메시지 라우팅 프로세스는 클라이언트 프로세스로부터 받은 메시지에서 목적지 정보를 추출하고, 그 프로세스와 연결 설정시 생성된 file descriptor로 메시지를 라우팅하는 제 2단계; 및After performing the login in the first step, the client process delivers a message to the server process to the message routing process, and the message routing process extracts destination information from the message received from the client process, and is generated when establishing a connection with the process. routing the message to a file descriptor; And 상기 제 2단계 수행 후, 서버 프로세스는 메시지 라우팅 프로세스와 설정된 통신 채널에서 수신한 메시지를 처리하고, 그 처리 결과를 클라이언트 프로세스에게 전달할 필요가 있는 경우, 수신된 메시지에 포함된 발신지 정보를 목적지 정보로 하고, 자신의 고유 ID를 발신지 정보로 포함한 처리결과 메시지를 메시지 라우팅 프로세스에게 전달하는 제 3단계를 포함하고;After performing the second step, when the server process needs to process the message received in the communication channel established with the message routing process and deliver the processing result to the client process, the source information included in the received message is used as the destination information. And a third step of delivering a processing result message including the unique ID as source information to the message routing process; 클라이언트 프로세스는 처리결과 메시지를 수신하고, 해당 서버 프로세스와계속 통신할 필요가 있을 경우, 처리결과 메시지에 실려온 발신지 정보의 서버 프로세스 고유 ID를 목적지 정보로 하는 메시지를 메시지 라우팅 프로세스에게 전달함으로써, 클라이언트 프로세스와 서버 프로세스간의 추가 통신이 가능한 것을 특징으로 하는 복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓 통신처리 방법.When the client process receives the processing result message and needs to continue to communicate with the corresponding server process, the client process delivers a message to the message routing process using the server process unique ID of the source information included in the processing result message as the destination information. TCP / IP socket communication processing method between a plurality of client processes and a plurality of server processes, characterized in that additional communication between the server process and the server process. 제 1 항에 있어서,The method of claim 1, 상기 제 2단계에서 클라이언트 프로세스로부터 받은 메시지에서 추줄된 목적지 정보가 프로세스 고유 ID정보이면, 해당 프로세스의 file descriptor로 메시지를 라우팅하고, 목적지 정보가 프로세스 그룹 ID정보이면 트랙픽 분배 알고리즘에 따라 전달할 프로세스를 결정하는 것을 특징으로 하는 복수개의 클라이언트 프로세스와 복수개의 서버 프로세스간 TCP/IP 소켓 통신처리 방법.If the destination information deduced from the message received from the client process in the second step is process unique ID information, the message is routed to the file descriptor of the corresponding process. If the destination information is process group ID information, the process to be delivered is determined according to the traffic distribution algorithm. TCP / IP socket communication processing method between a plurality of client processes and a plurality of server processes.
KR1019990058350A 1999-12-16 1999-12-16 Method for communication processing of TCP/IP socket connection between client processes and server processes KR100566238B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990058350A KR100566238B1 (en) 1999-12-16 1999-12-16 Method for communication processing of TCP/IP socket connection between client processes and server processes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990058350A KR100566238B1 (en) 1999-12-16 1999-12-16 Method for communication processing of TCP/IP socket connection between client processes and server processes

Publications (2)

Publication Number Publication Date
KR20010056756A true KR20010056756A (en) 2001-07-04
KR100566238B1 KR100566238B1 (en) 2006-03-29

Family

ID=19626402

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990058350A KR100566238B1 (en) 1999-12-16 1999-12-16 Method for communication processing of TCP/IP socket connection between client processes and server processes

Country Status (1)

Country Link
KR (1) KR100566238B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020030952A (en) * 2000-10-19 2002-04-26 손창원 A Load Balancing Method for Application Services based on TCP Connection in the Clustered Internet Server Environment
KR100452505B1 (en) * 2001-08-31 2004-10-08 엘지전자 주식회사 Method for multi connection of socket in WLL system
KR100869421B1 (en) * 2001-02-26 2008-11-24 아바야 커뮤니케이션 이스라엘 리미티드 Splicing persistent connections
KR20110063083A (en) * 2009-12-04 2011-06-10 한국전자통신연구원 Method for constructing publish-subscribe network and supporting communication using hash function
US8214449B2 (en) 2009-12-01 2012-07-03 Electronics And Telecommunications Research Institute Method and apparatus for switching communication channel in shared memory communication environment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102130005B1 (en) * 2020-04-17 2020-07-03 국방과학연구소 Method and server for supporting transfer of data between applications

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3385166B2 (en) * 1996-10-09 2003-03-10 日本電信電話株式会社 Data transmission system
KR100260094B1 (en) * 1997-12-31 2000-07-01 강병호 Ipc cell exchange device and method of atm
KR100270664B1 (en) * 1998-10-13 2000-11-01 윤종용 Method of distributing pnni routindg function
KR20000067429A (en) * 1999-04-28 2000-11-15 김영환 Inter process communication using message routing function in home location register
KR100336942B1 (en) * 1999-08-17 2002-05-17 서평원 Transfer Message Broadcasting Method In Signaling Transfer Point

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020030952A (en) * 2000-10-19 2002-04-26 손창원 A Load Balancing Method for Application Services based on TCP Connection in the Clustered Internet Server Environment
KR100869421B1 (en) * 2001-02-26 2008-11-24 아바야 커뮤니케이션 이스라엘 리미티드 Splicing persistent connections
KR100452505B1 (en) * 2001-08-31 2004-10-08 엘지전자 주식회사 Method for multi connection of socket in WLL system
US8214449B2 (en) 2009-12-01 2012-07-03 Electronics And Telecommunications Research Institute Method and apparatus for switching communication channel in shared memory communication environment
KR20110063083A (en) * 2009-12-04 2011-06-10 한국전자통신연구원 Method for constructing publish-subscribe network and supporting communication using hash function

Also Published As

Publication number Publication date
KR100566238B1 (en) 2006-03-29

Similar Documents

Publication Publication Date Title
US7260599B2 (en) Supporting the exchange of data by distributed applications
KR100720307B1 (en) Protocol for instant messaging
US7461157B2 (en) Distributed server functionality for emulated LAN
US7372815B2 (en) Load distributing method among gatekeeper
US6892240B1 (en) Bidirectional communication system and method
US20070233844A1 (en) Relay device and communication system
US20030137976A1 (en) Method and apparatus for IP based metered service on demands network
JP2006302153A (en) Load balancing server
CN107528891B (en) Websocket-based automatic clustering method and system
EP2081336B1 (en) Business message transmission method, system and apparatus
CN105119787B (en) A kind of public internet access system and method based on software definition
HK1024364A1 (en) A method and system for an application dispatcher for server application
US11647069B2 (en) Secure remote computer network
JP2003069639A (en) xDSL STORAGE DEVICE, MULTICAST DELIVERY SYSTEM, AND DATA DELIVERY METHOD
KR100566238B1 (en) Method for communication processing of TCP/IP socket connection between client processes and server processes
JP4241760B2 (en) Load balancing system
KR100684166B1 (en) Multicast communication network system and method using the same
JP2002217973A (en) Multicast communication system
KR20010076613A (en) Interactive Satellite Communications System And Operation method
JP4374202B2 (en) Stream distribution computer, program, NAS device
US6917625B1 (en) Intelligent peripheral concentrator
KR100362206B1 (en) Method and Apparatus of improving efficiency of system that supports multi-network link in using routing dispersion method
KR20010075867A (en) Method of PVC control for frame relay interworking
JP2002207649A (en) Internet load-decentralized relaying connection system
JPH10271161A (en) Session control method for client server system through repeater

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

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee