KR101223907B1 - Server side relay apparatus and client side relay apparatus for configurating direct communication environment between server and client - Google Patents
Server side relay apparatus and client side relay apparatus for configurating direct communication environment between server and client Download PDFInfo
- Publication number
- KR101223907B1 KR101223907B1 KR1020110003723A KR20110003723A KR101223907B1 KR 101223907 B1 KR101223907 B1 KR 101223907B1 KR 1020110003723 A KR1020110003723 A KR 1020110003723A KR 20110003723 A KR20110003723 A KR 20110003723A KR 101223907 B1 KR101223907 B1 KR 101223907B1
- Authority
- KR
- South Korea
- Prior art keywords
- server
- port
- client
- side relay
- connection
- Prior art date
Links
Images
Classifications
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1091—Interfacing with client-server systems or between P2P systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/20—Repeater circuits; Relay circuits
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
본 발명은 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치 및 클라이언트측 중계장치에 관한 것으로, 서버와 클라이언트간을 공유기를 통해 연결시, 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현함으로써 서버나 클라이언트나 소프트웨어 수정 없이 공유기를 통해 서버와 클라이언트간의 접속을 연결할 수 있도록 한 것이다.The present invention relates to a server-side relay device and a client-side relay device for implementing a direct communication environment between the server and the client, when connecting the server and the client through a router, direct communication between the server and the client without modifying the server, client or software By implementing the environment, it is possible to connect the connection between the server and the client through the router without modifying the server, client or software.
Description
본 발명은 서버와 클라이언트간 통신 접속 기술에 관련한 것으로, 특히 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치 및 클라이언트측 중계장치에 관한 것이다.The present invention relates to a communication connection technology between a server and a client, and more particularly, to a server side relay apparatus and a client side relay apparatus for implementing a direct communication environment between a server and a client.
다양한 네트워크 서비스를 제공하는 서버는 클라이언트의 접속 요청을 처리하고, 디지털 데이터를 전달하는 역할을 한다. 현재 주류를 이루고 있는 IPv4 주소체계의 인터넷망에서 주소 부족 문제를 해결하기 위해 NAT(Network Address Translation) 기능을 구비한 공유기가 많이 사용되고 있다.A server providing various network services processes a client's connection request and delivers digital data. In order to solve the address shortage problem in the Internet network of the mainstream IPv4 address system, a router equipped with NAT (Network Address Translation) function is widely used.
공유기는 공유기 환경 내부에 존재하는 장치의 포트(Port)로부터 외부로 나가는 데이터는 차단하지 않지만, 한번이라도 외부로 나가는 데이터가 없었던 포트에 대해서는 외부로부터 들어오는 데이터를 차단하는 특징이 있다. 이러한 공유기의 특성으로 인해 공유기 환경에서 서버를 운영할 경우, 클라이언트가 공유기를 통과하여 서버에 직접 접속할 수 없는 문제가 발생하게 된다.The router does not block outgoing data from the port of a device existing inside the router environment, but it has a feature that blocks incoming data from a port that has never been outgoing. Due to the characteristics of the router, when the server is operated in the router environment, the client cannot directly access the server through the router.
이러한 문제를 해결하기 위해, 종래의 경우 포트 포워딩(Port Forwarding)이나 홀 펀칭(Hole Punching) 방법을 사용해 미리 서버가 사용하는 포트를 외부에 개방하는 방법을 사용했다.In order to solve this problem, in the related art, a port forwarding or hole punching method is used to open a port previously used by a server to the outside.
포트 포워딩 방법으로 공유기의 포트 포워딩 설정 기능을 통해 수동으로 서버가 사용하는 포트를 외부에 개방하는 수동 포트 포워딩 방법이 있다. 수동 포트 포워딩 방법을 사용할 경우, 수동 포트 포워딩은 네트워크 전문 지식이 필요하기 때문에 일반 사용자들이 직접 수동 포트 포워딩하기에는 무리가 있다. As a port forwarding method, there is a manual port forwarding method of manually opening a port used by the server through the router's port forwarding setting function. When using the manual port forwarding method, since manual port forwarding requires network expertise, it is not easy for ordinary users to manually perform manual port forwarding.
또한, 수동 포트 포워딩 방법은 서비스 포트가 늘어날수록 직접 공유기를 설정하고 포트들을 관리하는데 어려움이 커진다. 특히, 영상 전송 장치와 같이 개인용 서버들이 늘어나는 상황에서의 수동적인 공유기 설정 문제는 개인 서비스를 제공하는데 있어서 난제가 되고 있다.In addition, in the manual port forwarding method, as the service port increases, it becomes more difficult to directly configure the router and manage the ports. In particular, the problem of passive router setting in a situation in which personal servers are increasing, such as a video transmission device, has become a challenge in providing personal services.
한편, 포트 포워딩 방법으로 UPnP IGD(Universal Plug and Play Internet Gateway Device)와 같은 공유기가 지원하는 프로토콜을 통해 공유기 환경내의 서버가 사용자의 개입없이 포트 포워딩을 자동으로 수행하는 방법이 있다.Meanwhile, a port forwarding method includes a method in which a server in a router environment automatically performs port forwarding without user intervention through a protocol supported by a router such as UPnP IGD (Universal Plug and Play Internet Gateway Device).
그러나, 이 방법은 UPnP IGD를 통해 공유기 포트를 자동으로 등록하는 별도의 장치 또는 소프트웨어를 사용하더라도, 반드시 서버가 사용하는 포트를 알고 있어야 하기 때문에, 서버 장치와 연동을 위한 인터페이스가 필요하며, 이러한 자동 포트 포워딩 기능을 지원하지 않는 공유기가 아직 많기 때문에 사용에 있어 제한적일 수 밖에 없다.However, even if a separate device or software is used to automatically register the router port through UPnP IGD, this method requires an interface for interworking with the server device. There are still many routers that do not support port forwarding, so they are limited in use.
홀 펀칭 방법은 공유기가 한번이라도 데이터가 외부로 나간 적이 있던 포트에 대해서는 외부로부터 들어오는 데이터를 차단하지 않는다는 특성을 이용한 것으로, 서버가 외부 클라이언트로부터 접속을 기다리기 전에 사용하는 포트를 통해 미리 데이터를 보내 향후 공유기가 특정 서비스 포트로 들어오는 데이터를 막지 않도록 하는 방법이다.The hole punching method takes advantage of the feature that the router does not block incoming data for ports that have ever been out, and the data is sent in advance through the port that the server uses before waiting for access from external clients. This is a way to prevent the router from blocking data coming into a specific service port.
그러나, 이 방법은 네트워크 프로토콜과 공유기의 특성에 따라 접속 성공률이 다르며, 특히 공유기에 다수의 서버나 서비스 포트들이 있을 경우 경쟁으로 인해 성공률이 더욱 낮아지는 문제가 있다. 또한, 홀 펀칭을 위해서는 공유기에 미리 데이터를 보내 포트를 여는 과정 등이 필요하고, 공유기의 특성에 따라 클라이언트 주소와 종속적인 홀 펀칭이 필요할 경우 외부 네트워크에 별도의 접속 서버를 운영해야 하는 등 복잡하고, 연결된 서버들에 대해서 상당한 수정 없이는 적용이 불가능한 문제가 있다.However, this method has a different connection success rate according to the characteristics of the network protocol and the router. In particular, when there are a plurality of server or service ports in the router, the success rate is lowered due to competition. In addition, hole punching requires the process of sending data to the router in advance to open ports, and if the client address and hole punching are required depending on the characteristics of the router, a separate connection server must be operated in the external network. However, there is a problem that cannot be applied to the connected servers without significant modification.
그 밖에 외부 네트워크에 별도의 중계 서버를 운영하고, 서비스 서버와 클라이언트를 중계 서버에 연결해 중계 서버를 통해 데이터를 주고 받도록 하는 방법도 있다. 그러나, 이 방법은 비디오와 같이 데이터량이 큰 네트워크 서비스나 다수의 서버와 클라이언트를 대상으로 할 경우, 대용량 처리를 위한 비용 증가로 인해 실용적인 면에서 불리하고, 이 역시 중계 서버에 연결되는 서버와 클라이언트를 수정해야 하는 문제가 있다.In addition, there is a method of operating a separate relay server in an external network and connecting a service server and a client to the relay server to exchange data through the relay server. However, this method is disadvantageous in terms of practical use due to the increased cost for processing a large amount of data, such as video, or a network service with a large amount of data. There is a problem that needs to be corrected.
즉, 종래의 방법들은 서버와 클라이언트간을 공유기를 통해 연결시, 서버나 클라이언트나 소프트웨어를 수정하지 않고는 공유기를 사용할 수 없었다. 그런데, 이러한 수정 작업은 매우 전문성을 요하므로 현실적으로는 수정이 매우 어렵거나 불가능하였다.That is, the conventional methods cannot use the router when the server and the client are connected through the router without modifying the server, the client, or the software. However, such modifications are very difficult and impossible in reality because they require a lot of expertise.
따라서, 본 발명자는 서버와 클라이언트간을 공유기를 통해 연결시, 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수 있는 기술에 대한 연구를 하게 되었다.Therefore, the present inventors have studied a technology for implementing a direct communication environment between a server and a client without modifying the server, the client, or the software when the server and the client are connected through a router.
본 발명은 상기한 취지하에 발명된 것으로, 서버와 클라이언트간을 공유기를 통해 연결시, 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수 있는 서버측 중계장치 및 클라이언트측 중계장치를 제공함을 그 목적으로 한다.The present invention has been invented under the above-mentioned object, and provides a server-side relay apparatus and a client-side relay apparatus capable of implementing a direct communication environment between the server and the client without modifying the server, the client, or the software when connecting the server and the client through a router. The purpose is to provide.
상기한 목적을 달성하기 위한 본 발명의 일 양상에 따르면, 다수의 서버가 공유하는 서버측 공유기 환경내에 적용되어 다수의 서버에 대해 가상의 클라이언트로서 동작하는 서버측 중계장치가 각 서버 포트와 통신 접속을 처리하는 서버 포트 접속부와; 클라이언트측 중계장치 포트와 통신 접속을 처리하는 중계 포트 접속부와; 상기 서버 포트 접속부와 중계 포트 접속부간 포트 다중화 및 역다중화를 처리하는 포트 다중화/역다중화부와; 사용중인 포트 접속 관리 및 명령 처리를 수행하는 접속 관리부를 포함하여 이루어지는 것을 특징으로 한다.According to an aspect of the present invention for achieving the above object, a server-side relay device which is applied in a server-side router environment shared by a plurality of servers and operates as a virtual client for a plurality of servers, communicates with each server port. A server port connection unit for processing; A relay port connection portion for processing a communication connection with a client-side relay port; A port multiplexing / demultiplexing unit for processing port multiplexing and demultiplexing between the server port connecting unit and the relay port connecting unit; And a connection management unit that performs port connection management and command processing in use.
본 발명의 또 다른 양상에 따르면, 다수의 클라이언트가 공유하는 클라이언트측 공유기 환경내에 적용되어 다수의 클라이언트에 대해 가상의 서버로서 동작하는 클라이언트측 중계장치가 각 클라이언트 포트와 통신 접속을 처리하는 클라이언트 포트 접속부와; 서버측 중계장치 포트와 통신 접속을 처리하는 중계 포트 접속부와; 상기 클라이언트 포트 접속부와 중계 포트 접속부간 포트 다중화 및 역다중화를 처리하는 포트 다중화/역다중화부와; 사용중인 포트 접속 관리 및 명령 처리를 수행하는 접속 관리부를 포함하여 이루어지는 것을 특징으로 한다.According to another aspect of the present invention, a client port connection unit applied in a client-side router environment shared by a plurality of clients and operating as a virtual server for a plurality of clients, handles a communication connection with each client port. Wow; A relay port connection portion for processing a communication connection with a server-side relay port; A port multiplexing / demultiplexing unit for processing port multiplexing and demultiplexing between the client port connecting unit and the relay port connecting unit; And a connection management unit that performs port connection management and command processing in use.
본 발명은 서버와 클라이언트간을 공유기를 통해 연결시, 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현함으로써 서버나 클라이언트나 소프트웨어 수정 없이 공유기를 통해 서버와 클라이언트간의 접속을 연결할 수 있는 효과가 있다.According to the present invention, when the server and the client are connected through the router, the server and the client can implement a direct communication environment between the client without modifying the server, the client, or the software. It works.
또한, 본 발명은 일대다 포트 연결을 통해 포트 멀티플렉싱 및 포트 디멀티플렉싱 환경을 구현함으로써 공유기에 연결된 장치간의 충돌 가능성을 줄일 수 있어 접속 성공률을 향상시킬 수 있는 효과가 있다.In addition, the present invention implements a port multiplexing and port demultiplexing environment through a one-to-many port connection, thereby reducing the possibility of collision between devices connected to the router, thereby improving the connection success rate.
도 1 은 본 발명에서의 공유기를 통한 서버와 클라이언트간 연결 관계를 도시한 네트워크 연결 개요도이다.
도 2 는 본 발명에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치의 일 실시예의 구성을 도시한 블럭도이다.
도 3 은 본 발명에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치의 일 실시예의 구성을 도시한 블럭도이다.1 is a network connection schematic diagram illustrating a connection relationship between a server and a client through a router according to the present invention.
2 is a block diagram showing the configuration of an embodiment of a server-side relay apparatus for implementing a direct communication environment between the server and the client according to the present invention.
3 is a block diagram showing the configuration of an embodiment of a client-side relay apparatus for implementing a direct communication environment between a server and a client according to the present invention.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily understand and reproduce the present invention.
본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.In the following description of the present invention, detailed descriptions of well-known functions or configurations will be omitted if it is determined that the detailed description of the embodiments of the present invention may unnecessarily obscure the gist of the present invention.
본 발명 명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.The terms used throughout the present specification are terms defined in consideration of functions in the embodiments of the present invention, and may be sufficiently modified according to the intention, custom, etc. of the user or operator, and the definitions of these terms are used throughout the specification. It should be made based on the contents.
도 1 은 본 발명에서의 공유기를 통한 서버와 클라이언트간 연결 관계를 도시한 네트워크 연결 개요도이다. 도 1 에 도시한 바와 같이, 서버측 공유기(10)와 클라이언트측 공유기(20)가 외부 네트워크에 연결되며, 각각 서버측 공유기(10)에는 적어도 하나의 서버(30)가 연결되고, 클라이언트측 공유기(20)에는 적어도 하나의 클라이언트(40)가 연결되어 내부 네트워크를 형성한다.1 is a network connection schematic diagram illustrating a connection relationship between a server and a client through a router according to the present invention. As shown in FIG. 1, the server-
이 때, 서버측 공유기(10)와 클라이언트측 공유기(20) 내부에 서버측 중계장치(100)와, 클라이언트측 중계장치(200)가 각각 하드웨어적 또는 소프트웨어적 또는 이 둘을 결합한 방식으로 탑재되어, 서버와 클라이언트간 직접 통신 환경을 구현한다.At this time, the server-
도 2 는 본 발명에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치의 일 실시예의 구성을 도시한 블럭도이다. 이 실시예에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치(100)는 다수의 서버가 공유하는 서버측 공유기 환경내에 적용(서버측 공유기내에 탑재되거나 또는 서버측 공유기와 서버간에 별도로 설치)되어 다수의 서버에 대해 가상의 클라이언트로서 동작하며, 도 2 에 도시한 바와 같이, 서버 포트 접속부(110)와, 중계 포트 접속부(120)와, 포트 다중화/역다중화부(130)와, 접속 관리부(140)를 포함하여 이루어진다.2 is a block diagram showing the configuration of an embodiment of a server-side relay apparatus for implementing a direct communication environment between the server and the client according to the present invention. The server-
상기 서버 포트 접속부(110)는 각 서버 포트와 통신 접속을 처리한다. 즉, 이 서버 포트 접속부(110)는 각 서버의 물리적인 포트들과 물리적으로 인터페이싱되어 각 서버와 서버측 중계장치(100)간에 통신 접속이 되도록 한다.The server
상기 중계 포트 접속부(120)는 클라이언트측 중계장치 포트와 통신 접속을 처리한다. 즉, 이 중계 포트 접속부(120)는 적어도 하나의 클라이언트측 중계장치의 물리적인 포트와 물리적으로 인터페이싱되어 서버측 중계장치(100)와 클라이언트측 중계장치(200)간에 통신 접속이 되도록 한다.The
이 때, 상기 중계 포트 접속부(120)가 클라이언트측 중계장치(200)와 하나의 포트만을 이용해 통신 접속하도록 구현할 수 있다. 즉, 서버측 중계장치(100)와 각 클라이언트측 중계장치(200)간에 하나의 포트만을 이용해 통신 접속할 경우, 클라이언트측 중계장치(200)들간의 충돌 가능성을 줄일 수 있으므로, 클라이언트의 접속 성공률을 향상시킬 수 있다.In this case, the relay
상기 포트 다중화/역다중화부(130)는 상기 서버 포트 접속부(110)와 중계 포트 접속부(120)간 포트 다중화 및 역다중화를 처리한다. 즉, 서버측 중계장치(100)와 각 클라이언트측 중계장치(200)간에 하나의 포트만을 이용해 통신 접속되도록 구현할 경우, 서버측 중계장치(100)에는 다수의 서버들의 포트가 연결되므로, 일대다 포트 연결 관계를 형성하게 된다. The port multiplexing /
따라서, 상기 포트 다중화/역다중화부(130)가 다수의 서버 포트들 각각으로부터 수신된 데이터들을 특정 클라이언트측 중계장치 포트로 출력하는 포트 다중화가 수행될 수 있다.Therefore, the port multiplexing /
한편, 상기 포트 다중화/역다중화부(130)가 특정 클라이언트측 중계장치 포트로부터 수신된 데이터를 다수의 서버 포트들 각각으로 출력하는 포트 역다중화가 수행될 수 있다.Meanwhile, port demultiplexing by the port multiplexing /
상기 접속 관리부(140)는 사용중인 포트 접속 관리 및 명령 처리를 수행한다. 이 때, 상기 접속 관리부(140)가 클라이언트 중계장치(200)로부터의 특정 서버 접속 요구 명령에 따라, 해당 접속 요구된 서버 포트와 해당 클라이언트 중계장치 포트간의 접속 관리를 수행함으로써 마치 공유기가 없는 환경과 동일한 서버와 클라이언트간 직접 통신 환경을 구현할 수 있다.The
예컨대, 접속 관리부(140)가 서버를 대신해 각 서버가 사용하는 포트를 미리 클라이언트측에 개방함으로써 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수 있다.For example, the
이 때, 상기 접속 관리부(140)가 포트 포워딩(Port Forwarding)을 수행하여 각 서버가 사용하는 포트를 미리 클라이언트측에 개방하도록 구현함으로써 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수 있다.In this case, the
이 때, 상기 접속 관리부(140)가 홀 펀칭(Hole Punching)을 수행하여 각 서버가 사용하는 포트를 미리 클라이언트측에 개방하도록 구현함으로써 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수도 있다.At this time, the
따라서, 서버와 클라이언트간을 공유기를 통해 연결시, 이 실시예에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치(100)를 통해 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수 있어 서버나 클라이언트나 소프트웨어 수정 없이 공유기를 통해 서버와 클라이언트간의 접속을 연결할 수 있다.Accordingly, when the server and the client are connected through a router, the server and the client directly communicate with each other without modifying the server, the client, or the software through the server-
또한, 서버와 클라이언트간을 공유기를 통해 연결시, 이 실시예에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치(100)를 통해 일대다 포트 연결 관계를 가지도록 포트 멀티플렉싱 및 포트 디멀티플렉싱 환경을 구현함으로써 공유기에 연결된 장치간의 충돌 가능성을 줄일 수 있어 접속 성공률을 향상시킬 수 있게 된다.In addition, when the server and the client is connected through a router, the port multiplexing and the port decode so as to have a one-to-many port connection relationship through the server-
도 3 은 본 발명에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치의 일 실시예의 구성을 도시한 블럭도이다. 이 실시예에 따른 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치(200)는 다수의 클라이언트가 공유하는 클라이언트측 공유기 환경내에 적용(클라이언트측 공유기내에 탑재되거나 또는 클라이언트측 공유기와 클라이언트간에 별도로 설치)되어 다수의 클라이언트에 대해 가상의 서버로서 동작하며, 클라이언트 포트 접속부(210)와, 중계 포트 접속부(220)와, 포트 다중화/역다중화부(230)와, 접속 관리부(240)를 포함하여 이루어진다.3 is a block diagram showing the configuration of an embodiment of a client-side relay apparatus for implementing a direct communication environment between a server and a client according to the present invention. The client-
상기 클라이언트 포트 접속부(210)는 각 클라이언트 포트와 통신 접속을 처리한다. 즉, 이 클라이언트 포트 접속부(210)는 각 클라이언트의 물리적인 포트들과 물리적으로 인터페이싱되어 각 클라이언트와 클라이언트측 중계장치(200)간에 통신 접속이 되도록 한다.The client
상기 중계 포트 접속부(220)는 서버측 중계장치 포트와 통신 접속을 처리한다. 즉, 이 중계 포트 접속부(220)는 서버측 중계장치의 물리적인 포트와 물리적으로 인터페이싱되어 클라이언트측 중계장치(200)와 서버측 중계장치(100)간에 통신 접속이 되도록 한다.The
이 때, 상기 중계 포트 접속부(220)가 서버측 중계장치(100)와 하나의 포트만을 이용해 통신 접속하도록 구현할 수 있다. 즉, 클라이언트측 중계장치(200)와 서버측 중계장치(100)간에 하나의 포트만을 이용해 통신 접속할 경우, 클라이언트 중계장치(200)들간의 충돌 가능성을 줄일 수 있으므로, 서버의 접속 성공률을 향상시킬 수 있다.At this time, the relay
상기 포트 다중화/역다중화부(230)는 상기 클라이언트 포트 접속부(210)와 중계 포트 접속부(220)간 포트 다중화 및 역다중화를 처리한다. 즉, 클라이언트측 중계장치(200)와 서버측 중계장치(100)간에 하나의 포트만을 이용해 통신 접속되도록 구현할 경우, 클라이언트측 중계장치(200)에는 다수의 클라이언트들의 포트가 연결되므로, 일대다 포트 연결 관계를 형성하게 된다. The port multiplexing /
따라서, 상기 포트 다중화/역다중화부(230)가 다수의 클라이언트 포트들 각각으로부터 수신된 데이터들을 서버측 중계장치 포트로 출력하는 포트 다중화가 수행될 수 있다.Thus, the port multiplexing /
한편, 상기 포트 다중화/역다중화부(230)가 서버측 중계장치 포트로부터 수신된 데이터를 다수의 클라이언트 포트들 각각으로 출력하는 포트 역다중화가 수행될 수 있다.On the other hand, the port multiplexing /
상기 접속 관리부(240)는 사용중인 포트 접속 관리 및 명령 처리를 수행한다. 이 때, 상기 접속 관리부(240)가 특정 클라이언트로부터의 서버 접속 요구 명령에 따라, 해당 서버 접속 요구한 클라이언트 포트와 서버 중계장치 포트간의 접속 관리를 수행함으로써 마치 공유기가 없는 환경과 동일한 서버와 클라이언트간 직접 통신 환경을 구현할 수 있다.The
한편, 클라이언트측 중계장치(200)의 접속 관리부(240)의 경우 서버측 중계장치(100)의 접속 관리부(140)와는 달리 포트를 미리 외부에 개방하는 동작은 필요 없다.On the other hand, in the case of the
이상에서 설명한 바와 같이, 본 발명은 서버와 클라이언트간을 공유기를 통해 연결시, 서버나 클라이언트나 소프트웨어 수정 없이도 서버와 클라이언트간 직접 통신 환경을 구현할 수 있어 서버나 클라이언트나 소프트웨어 수정 없이 공유기를 통해 서버와 클라이언트간의 접속을 연결할 수 있으므로, 상기에서 제시한 본 발명의 목적을 달성할 수 있다.As described above, the present invention can implement a direct communication environment between the server and the client without modifying the server, the client or the software when connecting the server and the client through the router, so Since the connection between the clients can be connected, the object of the present invention as described above can be achieved.
또한, 서버와 클라이언트간을 공유기를 통해 연결시, 일대다 포트 연결 관계를 가지도록 포트 멀티플렉싱 및 포트 디멀티플렉싱 환경을 구현함으로써 공유기에 연결된 장치간의 충돌 가능성을 줄일 수 있어 접속 성공률을 향상시킬 수 있다.In addition, when the server and the client are connected through the router, the port multiplexing and port demultiplexing environment is implemented to have a one-to-many port connection relationship, thereby reducing the possibility of collision between the devices connected to the router, thereby improving the connection success rate.
본 발명은 첨부된 도면에 의해 참조되는 바람직한 실시예를 중심으로 기술되었지만, 이러한 기재로부터 후술하는 특허청구범위에 의해 포괄되는 범위내에서 본 발명의 범주를 벗어남이 없이 다양한 변형이 가능하다는 것은 명백하다.While the invention has been described with reference to the preferred embodiments, which are referred to by the accompanying drawings, it is apparent that various modifications are possible without departing from the scope of the invention within the scope covered by the following claims from this description. .
본 발명은 서버와 클라이언트간 통신 접속 기술분야 및 이의 응용 기술분야에서 산업상으로 이용 가능하다.The present invention is industrially applicable in the field of communication connection between a server and a client and its application field.
100 : 서버측 중계장치 110 : 서버 포트 접속부
120, 220 : 중계 포트 접속부 130, 230 : 포트 다중화/역다중화부
140, 240 : 접속 관리부 200 : 클라이언트측 중계장치
210 : 클라이언트 포트 접속부100: server side relay device 110: server port connection
120, 220: relay
140, 240: connection management unit 200: client-side relay device
210: client port connection
Claims (12)
각 서버 포트와 통신 접속을 처리하는 서버 포트 접속부와;
클라이언트측 중계장치 포트와 통신 접속을 처리하는 중계 포트 접속부와;
상기 서버 포트 접속부와 중계 포트 접속부간 포트 다중화 및 역다중화를 처리하는 포트 다중화/역다중화부와;
사용중인 포트 접속 관리 및 명령 처리를 수행하되, 클라이언트 중계장치로부터의 특정 서버 접속 요구 명령에 따라, 해당 접속 요구된 서버 포트와 해당 클라이언트 중계장치 포트간의 접속 관리를 수행하는 접속 관리부를;
포함하여 이루어지는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치.In a server-side relay device that is applied in a server-side router environment shared by a plurality of servers and operates as a virtual client for a plurality of servers,
A server port connection portion for processing a communication connection with each server port;
A relay port connection portion for processing a communication connection with a client-side relay port;
A port multiplexing / demultiplexing unit for processing port multiplexing and demultiplexing between the server port connecting unit and the relay port connecting unit;
A connection manager configured to perform port connection management and command processing in use, and perform connection management between the server connection request server port and the client relay port according to a specific server connection request command from the client relay device;
Server-side relay device for implementing a direct communication environment between the server and the client, characterized in that it comprises a.
상기 포트 다중화/역다중화부가:
다수의 서버 포트들 각각으로부터 수신된 데이터들을 특정 클라이언트측 중계장치 포트로 출력하는 포트 다중화를 수행하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치.The method of claim 1,
The port multiplexing / demultiplexing unit:
A server-side relay apparatus for implementing a direct communication environment between the server and the client, characterized in that for performing port multiplexing outputting data received from each of the plurality of server ports to a specific client-side relay port.
상기 포트 다중화/역다중화부가:
특정 클라이언트측 중계장치 포트로부터 수신된 데이터를 다수의 서버 포트들 각각으로 출력하는 포트 역다중화를 수행하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치.The method of claim 1,
The port multiplexing / demultiplexing unit:
A server-side relay apparatus for implementing a direct communication environment between the server and the client, characterized in that for performing port demultiplexing to output data received from a specific client-side relay port to each of the plurality of server ports.
상기 중계 포트 접속부가:
클라이언트측 중계장치와 하나의 포트만을 이용해 통신 접속하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치.The method of claim 1,
The relay port connection portion:
Server-side relay device for implementing a direct communication environment between the server and the client, characterized in that the client-side relay device and the communication connection using only one port.
상기 접속 관리부가:
포트 포워딩(Port Forwarding)을 수행하여 각 서버가 사용하는 포트를 미리 클라이언트측에 개방하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치.The method of claim 1,
The connection management unit:
A server-side relay apparatus for implementing a direct communication environment between the server and the client, characterized in that for opening the port used by each server in advance by performing port forwarding.
상기 접속 관리부가:
홀 펀칭(Hole Punching)을 수행하여 각 서버가 사용하는 포트를 미리 클라이언트측에 개방하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 서버측 중계장치.The method of claim 1,
The connection management unit:
Server-side relay device for implementing a direct communication environment between the server and the client, characterized in that for performing hole punching (Hole Punching) to open the port used by each server in advance.
각 클라이언트 포트와 통신 접속을 처리하는 클라이언트 포트 접속부와;
서버측 중계장치 포트와 통신 접속을 처리하는 중계 포트 접속부와;
상기 클라이언트 포트 접속부와 중계 포트 접속부간 포트 다중화 및 역다중화를 처리하는 포트 다중화/역다중화부와;
사용중인 포트 접속 관리 및 명령 처리를 수행하되, 특정 클라이언트로부터의 서버 접속 요구 명령에 따라, 해당 서버 접속 요구한 클라이언트 포트와 서버 중계장치 포트간의 접속 관리를 수행하는 접속 관리부를;
포함하여 이루어지는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치.In a client-side relay device applied in a client-side router environment shared by a plurality of clients and operating as a virtual server for a plurality of clients,
A client port connection for handling a communication connection with each client port;
A relay port connection portion for processing a communication connection with a server-side relay port;
A port multiplexing / demultiplexing unit for processing port multiplexing and demultiplexing between the client port connecting unit and the relay port connecting unit;
A connection manager configured to perform port connection management and command processing in use, and to perform connection management between a client port and a server relay port requested for the server connection according to a server connection request command from a specific client;
Client-side relay device for implementing a direct communication environment between the server and the client, characterized in that it comprises a.
상기 포트 다중화/역다중화부가:
다수의 클라이언트 포트들 각각으로부터 수신된 데이터들을 특정 서버측 중계장치 포트로 출력하는 포트 다중화를 수행하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치.The method of claim 8,
The port multiplexing / demultiplexing unit:
And a port multiplexing for outputting data received from each of the plurality of client ports to a specific server-side relay port.
상기 포트 다중화/역다중화부가:
특정 서버측 중계장치 포트로부터 수신된 데이터를 다수의 클라이언트 포트들 각각으로 출력하는 포트 역다중화를 수행하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치.The method of claim 8,
The port multiplexing / demultiplexing unit:
A client-side relay device for implementing a direct communication environment between the server and the client, characterized in that for performing port demultiplexing to output data received from a specific server-side relay port to each of the plurality of client ports.
상기 중계 포트 접속부가:
서버측 중계장치와 하나의 포트만을 이용해 통신 접속하는 것을 특징으로 하는 서버와 클라이언트간 직접 통신 환경 구현을 위한 클라이언트측 중계장치.The method of claim 8,
The relay port connection portion:
Client-side relay device for implementing a direct communication environment between the server and the client, characterized in that the server-side relay device and the communication connection using only one port.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110003723A KR101223907B1 (en) | 2011-01-13 | 2011-01-13 | Server side relay apparatus and client side relay apparatus for configurating direct communication environment between server and client |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110003723A KR101223907B1 (en) | 2011-01-13 | 2011-01-13 | Server side relay apparatus and client side relay apparatus for configurating direct communication environment between server and client |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120082302A KR20120082302A (en) | 2012-07-23 |
KR101223907B1 true KR101223907B1 (en) | 2013-01-21 |
Family
ID=46714150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110003723A KR101223907B1 (en) | 2011-01-13 | 2011-01-13 | Server side relay apparatus and client side relay apparatus for configurating direct communication environment between server and client |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101223907B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102618291B1 (en) * | 2022-10-28 | 2023-12-27 | 주식회사 안랩 | Client asset management system and client asset management method |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080067842A (en) * | 2007-01-17 | 2008-07-22 | 에스케이 텔레콤주식회사 | Apparatus for expanding base station |
-
2011
- 2011-01-13 KR KR1020110003723A patent/KR101223907B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080067842A (en) * | 2007-01-17 | 2008-07-22 | 에스케이 텔레콤주식회사 | Apparatus for expanding base station |
Also Published As
Publication number | Publication date |
---|---|
KR20120082302A (en) | 2012-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10237253B2 (en) | Private cloud routing server, private network service and smart device client architecture without utilizing a public cloud based routing server | |
US9203807B2 (en) | Private cloud server and client architecture without utilizing a routing server | |
KR101221551B1 (en) | Network controller based pass-through communication mechanism between local host and management controller | |
EP3493508A1 (en) | Separation of control plane function and forwarding plane function of broadband remote access server | |
US9781087B2 (en) | Private and secure communication architecture without utilizing a public cloud based routing server | |
JP5876877B2 (en) | Telecommunication network and method and system for efficient use of connection between telecommunication network and customer premises equipment | |
US9935930B2 (en) | Private and secure communication architecture without utilizing a public cloud based routing server | |
TW201002018A (en) | Method for predicting port number of NAT apparatus based on two STUN server inquiry results | |
WO2007036160A1 (en) | An apparatus, system and method for realizing communication between the client and the server | |
TWI484804B (en) | Data management methods for use in a network system and systems thereof | |
CN108810124B (en) | Remote access control system for large number of multimedia terminals in public network environment | |
US20050232273A1 (en) | Communications system and a gateway device | |
US20110145426A1 (en) | Networking method of communication apparatus, communication apparatus and storage medium | |
JP2008278529A (en) | Method and system for transparent transmission of data traffic between data processing devices, corresponding computer program product, and corresponding computer-readable storage medium | |
WO2016184283A1 (en) | Data stream management method and system for virtual machine | |
KR101223907B1 (en) | Server side relay apparatus and client side relay apparatus for configurating direct communication environment between server and client | |
JP5926164B2 (en) | High-speed distribution method and connection system for session border controller | |
GB2531831A (en) | Private and secure communication architecture without utilizing a public cloud based routing server | |
US20160316021A1 (en) | Remote out of band management | |
GB2496380A (en) | Private cloud server and client architecture using e-mail/SMS to establish communication | |
US8285853B2 (en) | Message and system for implementing the inter-access of stack members | |
WO2018068238A1 (en) | Cable media converter management method, apparatus and system | |
CN114928459A (en) | Connection method and computer readable medium for private communication architecture | |
GB2532832A (en) | Private and secure communication architecture without utilizing a public cloud based routing server | |
CN115883256B (en) | Data transmission method, device and storage medium based on encryption tunnel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20151109 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20161207 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20171218 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190107 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20200102 Year of fee payment: 8 |