KR20120108464A - Push server system for resolving a nat traversal and conrolling method therefor - Google Patents

Push server system for resolving a nat traversal and conrolling method therefor Download PDF

Info

Publication number
KR20120108464A
KR20120108464A KR1020110026356A KR20110026356A KR20120108464A KR 20120108464 A KR20120108464 A KR 20120108464A KR 1020110026356 A KR1020110026356 A KR 1020110026356A KR 20110026356 A KR20110026356 A KR 20110026356A KR 20120108464 A KR20120108464 A KR 20120108464A
Authority
KR
South Korea
Prior art keywords
push
message
push server
information
connection
Prior art date
Application number
KR1020110026356A
Other languages
Korean (ko)
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 KR1020110026356A priority Critical patent/KR20120108464A/en
Publication of KR20120108464A publication Critical patent/KR20120108464A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PURPOSE: A push server system for preventing a NAT(Network Address Translation) traversal and a control method thereof are provided to easily receive a PUSH message by maintaining NAT binding of a mobile communication terminal and a PUSH server. CONSTITUTION: Terminal equipment(1A-1N) periodically transmits a message for location registration information to higher level equipment through a session process. A PUSH server(2) always obtains a transmission path through the location registration information of the terminal equipment. The PUSH server transmits a PUSH message to corresponding terminal equipment using the obtained equipment transmission path. The PUSH server comprises a registrar module(3) transmitting a connection request message through the obtained transmission path in the state that the location registration message is received and a PUSH service module(4) transmitting the PUSH message. NAT equipment(5) changes a source IP address of the terminal equipment into a public IP address. A firewall(6) blocks service data using a different port. [Reference numerals] (7) Mobile radio communication network

Description

NAT TRAVERSAL을 해결한 PUSH서버시스템 및 그 제어방법{PUSH server system for resolving a NAT TRAVERSAL and conrolling method therefor}       PUSH server system for resolving a NAT TRAVERSAL and conrolling method therefor}

본 발명은 NAT TRAVERSAL을 해결한 PUSH서버시스템 및 그 제어방법에 관한 것으로, 특히 PUSH서버내에 Registra모듈을 구비한 후 이동통신단말기와 주기적으로 Register메시지를 통해 NAT Binding이 항상 유지되도록 관리하면서 그 경로를 통해 PUSH메시지를 전송하므로 그에 따라 PUSH서버시스템의 동작안정성을 향상시키는 NAT TRAVERSAL을 해결한 PUSH서버시스템 및 그 제어방법에 관한것이다.The present invention relates to a PUSH server system that solves NAT TRAVERSAL, and a control method thereof. In particular, after the Registra module is provided in the PUSH server, the mobile communication terminal periodically maintains NAT Binding through a register message and manages its path. The present invention relates to a PUSH server system and a method of controlling the NAT TRAVERSAL that improve the operational stability of the PUSH server system.

일반적으로 네트워크 기술은 무선 및 이동 통신 기술이 포함되어 더욱 확장되고 있는데, 이러한 네트워크를 통해 정보들은 데스크탑 시스템, 휴대폰, PDA, 노트북 컴퓨터 등과 같은 이동무선유니트를 통해 다운로드되어 널리 사용되게된다. 특히, 상기와 같은 정보통신의 두드러진 서비스특징은 "통지" 혹은 "경고" 특성이라고도 알려진 "푸쉬(이하 "PUSH"라함)" 특성이다. 이러한 PUSH특성은 전형적인 클라이언트/서버 모델에서, 클라이언트가 서버로부터 서비스 혹은 정보를 요청하In general, network technology is being further expanded by including wireless and mobile communication technology, through which information is downloaded and widely used through mobile wireless units such as desktop systems, mobile phones, PDAs, and notebook computers. In particular, the prominent service feature of such information communication is the "push" (hereinafter referred to as "PUSH") feature, also known as the "notification" or "warning" feature. This PUSH feature allows a client to request service or information from a server in a typical client / server model.

고, 서버는 클라이언트로 정보를 송신응답하는 형태의 "풀(pull)" 기술을 널리 사용하고있는데, 클라이언트는 서버로부터 정보를 끌어가져온다(pull). 예를 들면, 클라이언트 장치에서 URL(UniformResource Locator)을 기입하면 클라이언트가 관련 정보를 추출하기 위해 서버로 발송하는 것이 풀트랜잭션이다. 반면에, 상기 PUSH기술은 일반적으로 사전에 사용자 실행없이 하나 이상의 장치로 정보를 전송하는 방법을 일컫는다. 그러므로, 서버가 서버의 정보를 전송하기 전에 클라이언트로부터 명시적인 요청이 없고, 따라서 PUSH 기술은 본질적으로 서버-개시(開始) 트랜잭션을 포함한다. 그리고, 근년에는 상기와 같은 PUSH기술이 다양한 프로토콜과 이동통신통신기술과 점목되어 사용될 수 있다. 그러한 경우에, 이동 네트워크를 거쳐 통신하는 이동통신단말기와 같은 클라이언트는, "PULL" 기술과 같이 클라이언트와 서버 사이에 위치하는 NAT(Network AddressTranslator)를 통해 일반적으로 서버와의 통신 세션(예를 들면 SIP 통신 세션)을 시작하게되는데, 이때 상기 NAT는 클라이언트의 개인 IP 어드레스를 서버가 인식할 수 있는 공용 IP 어드레스로 바꿀 수 있다. In addition, the server widely uses a "pull" technique in the form of sending and responding information to the client, the client pulls the information from the server. For example, when a Uniform Resource Locator (URL) is entered at a client device, it is a full transaction that the client sends to the server to extract the relevant information. On the other hand, the PUSH technology generally refers to a method of transmitting information to one or more devices without user execution in advance. Therefore, there is no explicit request from the client before the server sends the server's information, so the PUSH technique essentially involves a server-initiated transaction. In recent years, the PUSH technology may be used in connection with various protocols and mobile communication technologies. In such a case, a client, such as a mobile terminal, communicating over a mobile network, typically has a communication session with the server (e.g. SIP) via a Network Address Translator (NAT) located between the client and the server, such as a "PULL" technology. Communication session), where the NAT can replace the client's private IP address with a public IP address that the server can recognize.

그러면, 상기와 같은 종래 NAT가 포함된 PUSH통신시스템을 도 1을 참고로 살펴보면, 각종 컨텐츠정보들을 처리하고 필요한 정보를 얻기위해 세션과정을 통해 상위장비로 자신의 정보를 제공하여 등록하는 클라이언트장비(70A-N)와;      Then, referring to FIG. 1 of the conventional PUSH communication system including a NAT as described above, a client device that registers by providing its own information to a higher level device through a session process in order to process various content information and obtain necessary information ( 70A-N);

상기 클라이언트장비(70A-N)로부터 제공된 개별정보를 등록관리하고 PUSH할 컨텐츠정보가 있을 경우 이를 클라이언트장비(70A-N)로 전송하는 PUSH서버(71)와;      A PUSH server 71 for registering and managing individual information provided from the client device 70A-N and transmitting the content information to the client device 70A-N if there is content information to be pushed;

상기 클라이언트장비(70A-N)와 PUSH서버(71)사이에 설치되어 클라이언트장비(70A-N)의 로컬 IP 주소와 글로벌 IP 주소를 참조하여 이 메시지에 포함된 클라이언트장비(70A-N)의 로컬 IP 주소를 글로벌 IP 주소로 변환하거나 혹은 그 역의 과정을 수행하는 NAT장비(72)와;       It is installed between the client device 70A-N and the PUSH server 71 to refer to the local IP address and the global IP address of the client device 70A-N and the local address of the client device 70A-N included in this message. A NAT device 72 for converting the IP address into a global IP address or vice versa;

상기 클라이언트장비(70A-N)와 PUSH서버(71)사이에 설치되어 데이터푸시서비스에 할당된 포트 번호를 참조하여 이 포트번호에 해당하는 포트를 이용하는 서비스 데이터만을 통과시키고, 다른 포트를 이용하는 서비스 데이터를 차단하는 방화벽(73)을 포함하여 구성된다.     Installed between the client device 70A-N and the PUSH server 71, the service data using only the port corresponding to the port number is passed by referring to the port number assigned to the data push service, and the service data using another port. It is configured to include a firewall 73 to block the.

한편, 상기와 같은 종래 NAT가 포함된 PUSH통신시스템의 동작은 먼저, 각각의 클라이언트장비(70A-N)들이 PUSH서버(71)에 등록하기위해 세션과정을 거치게되는데, 이때, 상기 클라이언트장비(70A-N)와 PUSH서버(71)사이에는 NAT장비(72)와 방화벽(73)이 존재하기 때문에 클라이언트장비(70A-N)와 PUSH서버(71)가 서로 통신하려면 이들 장비들을 통과해야한다.      On the other hand, the operation of the PUSH communication system including the conventional NAT as described above, first, each of the client equipment (70A-N) undergoes a session process to register with the PUSH server 71, the client device (70A) Since the NAT device 72 and the firewall 73 exist between -N) and the PUSH server 71, the client device 70A-N and the PUSH server 71 must pass through these devices to communicate with each other.

즉, 상기 클라이언트장비(70A-N)들이 PUSH서버(71)에 등록할 경우에, 상기 NAT장비(72)는 그 등록하는 클라이언트장비(70A-N)의 로컬 IP 주소를 글로벌 IP 주소로 변환하여 방화벽(73)으로 전송한다. 그리고, 상기 방화벽(73)은 NAT장비(72)로부터 전송되온 데이터를 데이터 푸시 서비스에 할당된 포트 번호일 경우 PUSH서버(71)로 전송한다. 그러면, 상기 PUSH서버(71)는 그 세션과정중에 각각의 클라이언트장비들(70A-N)로부터 NAT장비(72)와 방화벽(73)을 거쳐 전송받은 해당 클라이언트장비들(70A-N)의 개별정보 예컨대, 로컬 IP 주소와 글로벌IP 주소, 데이터 푸시 서비스에 할당된 포트 번호 등과 같은 클라이언트장비들(70A-N)에 대한 정보를 전송받아 등록시킨다.      That is, when the client devices 70A-N register with the PUSH server 71, the NAT device 72 converts the local IP address of the registering client device 70A-N into a global IP address. Send to firewall 73. The firewall 73 transmits the data transmitted from the NAT device 72 to the PUSH server 71 when the port number is assigned to the data push service. Then, the PUSH server 71 is the individual information of the client devices 70A-N received from the client devices 70A-N through the NAT device 72 and the firewall 73 during the session process. For example, information about client devices 70A-N such as a local IP address, a global IP address, and a port number assigned to a data push service is received and registered.

그리고, 상기 PUSH서버(71)는 상기와 같은 등록과정후에 PUSH 서비스데이터가 발생할 경우 이를 미리 등록된 해당 클라이언트장비들(70A-N)의 개별정보를 이용하여 해당 클라이언트장비들(70A-N)로 PUSH하게되는데, 이때, 상기 PUSH정보는 먼저, 해당 클라이언트장비(70A-N)의 기등록된 포트번호에 의해 방화벽(73)을 통과하여 NAT장비(72)로 전송된다. 그러면, 상기 NAT장비(72)는 상기 PUSH서버(71)로부터 제공된 해당 클라이언트장비(70A-N)의 개별정보에 포함된 로컬 IP 주소로 PUSH서버(71)의 글로벌 IP 주소를 변환하여 해당 클라이언트장비(70A-N)로 PUSH컨텐츠정보를 전송하여 통상의 PUSH서비스를 실행한다.      When the PUSH service data occurs after the registration process as described above, the PUSH server 71 uses the individual information of the client devices 70A-N registered in advance to the corresponding client devices 70A-N. In this case, the PUSH information is first transmitted to the NAT device 72 through the firewall 73 by the pre-registered port number of the client device 70A-N. Then, the NAT device 72 converts the global IP address of the PUSH server 71 into a local IP address included in the individual information of the corresponding client device 70A-N provided from the PUSH server 71, and the corresponding client device. The PUSH content information is transmitted to 70A-N to execute the normal PUSH service.

그러나, 상기와 같은 종래 NAT가 포함된 PUSH통신시스템은 PUSH서버가 데이터를 푸시하고자할 때마다, 클라이언트장비의 개별정보를 NAT장비와 방화벽에 제공해야하기 때문에 클라이언트장비들에 대한 개별정보를 유지하고 관리해야하는데, 이때, 상기와 같은 PUSH서버의 데이터 PUSH 대상은 하나의 클라이언트장비만이 아닌 다수의 클라이언트장비들도 포함하여 관리해야하기때문에 이들 모두의 정보를 유지관리하는 것이 PUSH서버에게 상당한 로드로 작용한다는 문제점이 있었다. However, in the PUSH communication system including the conventional NAT as described above, each time the PUSH server wants to push data, the individual information of the client device must be provided to the NAT device and the firewall. In this case, the data PUSH object of the PUSH server as described above must be managed not only with one client device but also with a plurality of client devices, so maintaining information of all of them is a significant load on the PUSH server. There was a problem that it works.

더나아가, 상기와 같은 종래 NAT가 포함된 PUSH통신시스템은 NAT장비가 일반적으로 클라이언트에 의해 개시된 세션에 대한 주소 변환을 수행할 뿐 PUSH서버에 의해 개시된 세션에 대한 주소변환을 수행하는 기능은 구비되어 있지 않기때문에 이 과정에서 PUSH 서비스가 중지되어 PUSH서비스의 안정성을 상당히 저하시킨다는 문제점이 있었다.      Moreover, the PUSH communication system including the conventional NAT as described above is provided with a function that the NAT device generally performs address translation for a session initiated by a client, and performs address translation for a session initiated by a PUSH server. In this process, there is a problem that the PUSH service is stopped in this process, which significantly lowers the stability of the PUSH service.

이에 본 발명은 상기와 같은 제반 문제점을 해결하기위해 발명된 것으로, PUSH서버와 이동통신단말기가 항상 NAT Binding이 유지되기 때문에 단말기가 NAT안에 위치해 있더라도 PUSH메시지를 용이하게 전송받을 수 있는 NAT TRAVERSAL을 해결한 PUSH서버시스템 및 그 제어방법을 제공함에 그 목적이 있다.Accordingly, the present invention has been invented to solve the above problems, and since the PUSH server and the mobile communication terminal always maintain NAT Binding, even if the terminal is located in the NAT solves NAT TRAVERSAL can be easily transmitted PUSH message Its purpose is to provide a PUSH server system and its control method.

본 발명의 또다른 목적은 이동통신단말기가 NAT환경하에 있더라도 별도의 장비를 추가하지 않고도 PUSH서버가 필요할 경우 그 확보된 경로를 통해 즉시 메시지를 전송할 수가 있기 때문에 망의 유지운용비용도 상당히 저감시키는 NAT TRAVERSAL을 해결한 PUSH서버시스템 및 그 제어방법을 제공하는데 있다.Another object of the present invention is to reduce the maintenance and maintenance costs of the network, because even if the mobile communication terminal is under a NAT environment, the PUSH server can immediately send a message through the secured path without requiring additional equipment. The present invention provides a PUSH server system that solves TRAVERSAL and its control method.

상기와 같은 목적을 달성하기위한 본 발명은 NAT장비를 통해 네트워크가 연결되는 PUSH시스템에 있어서, In the present invention for achieving the above object in the PUSH system that the network is connected through NAT equipment,

상기 PUSH시스템에, 각종 컨텐츠정보들을 처리하고 필요한 정보를 얻기위해 세션과정을 통해 상위장비로 위치등록정보를 위한 메시지를 주기적으로 전송하는 단말장비와;      A terminal device that periodically transmits a message for location registration information to a higher device through a session process in order to process various content information and obtain necessary information to the PUSH system;

상기 단말장비(1A-N)로부터 주기적으로 전송되는 단말장비의 위치등록정보를 통해 항시 전송경로를 확보하고 PUSH할 PUSH메시지가 있을 경우 그 확보된 장비의 전송경로를 이용하여 해당 단말장비로 PUSH메시지를 전송하는 PUSH서버를 포함하여 구성되는 NAT TRAVERSAL을 해결한 PUSH서버시스템을 제공한다.      Always secure the transmission path through the location registration information of the terminal equipment periodically transmitted from the terminal equipment (1A-N), if there is a PUSH message to push the PUSH message to the corresponding terminal equipment using the transmission path of the secured equipment Provides a PUSH server system that solves NAT TRAVERSAL, including a PUSH server for transmitting.

본 발명의 다른 특징은 PUSH서버의 레지스트라모듈이 단말장비들로부터 위치등록정보신호들을 전송받아 해당 단말장비들의 위치정보를 등록시키는 단말장비 위치등록정보과정과;      Another feature of the present invention includes a terminal equipment location registration information process in which a registrar module of a PUSH server receives location registration information signals from terminal devices and registers location information of corresponding terminal devices;

상기 단말장비 위치등록정보과정후에 단말장비가 그 확보된 전송경로를 통해 PUSH서버의 레지스트라모듈로 주기적으로 위치등록정보를 전송하여 NAT Binding 상태를 유지하는 NATbinding과정과;A NATbinding process in which, after the terminal device location registration information process, the terminal device periodically transmits the location registration information to the registrar module of the PUSH server through the secured transmission path to maintain the NAT Binding state;

상기 NATbinding과정후에 PUSH서버의 레지스트라모듈이 PUSH서버의 PUSH서비스모듈에 주기적으로 폴링하여 전송할 PUSH메시지가 있는 지를 하는 PUSH메시지확인과정과;A PUSH message checking step of checking whether a PUSH message to be transmitted is periodically polled by a PUSH server's registrar module after the NATbinding process;

상기 PUSH메시지확인과정중에 확인한 결과 PUSH서비스모듈에 전송할 PUSH메시지가 있을 경우 PUSH서버의 레지스트라모듈이 단말장비들로 커네션연결요청신호를 전송하여 전송경로를 확보하는 커네션연결요청과정과;A connection connection request process for securing a transmission path by transmitting a connection connection request signal to terminal devices by a registrar module of the PUSH server when a PUSH message to be transmitted to the PUSH service module is found during the PUSH message checking process;

상기 커네션연결요청과정후에 PUSH서버의 PUSH서비스모듈이 레지스트라모듈의 커넥션연결요청메시지를 통해 확보된 해당 단말장비의 커넥션연결정보를 목적지주소로 하여 PUSH메시지를 전송하는 PUSH메시지전송과정을 포함하여 구성되는 NAT TRAVERSAL을 해결한 PUSH서버시스템의 제어방법을 제공한다.
After the connection connection request process, the PUSH service module of the PUSH server includes a PUSH message transmission process of transmitting a PUSH message using the connection connection information of the corresponding terminal device obtained through the connection connection request message of the registrar module as a destination address. Provides control method of PUSH server system that solves NAT TRAVERSAL.

상기와 같은 본 발명은 PUSH서버내에 Registra모듈을 구비한 후 이동통신단말기와 주기적으로 Register메시지를 통해 NAT Binding이 항상 유지되도록 관리하면서 그 경로를 통해 PUSH메시지를 전송하므로써, PUSH서버와 이동통신단말기가 항상 NAT Binding이 유지되기 때문에 단말기가 NAT안에 위치해 있더라도 PUSH메시지를 용이하게 전송받을 수 있으므로 그에따라 PUSH서버시스템의 동작안정성을 향상시키는 효과가 있다.The present invention as described above is provided with a Registra module in the PUSH server, and the PUSH server and the mobile communication terminal by transmitting a PUSH message through the path while managing to maintain the NAT Binding always through the Register message periodically with the mobile communication terminal Since the NAT Binding is always maintained, PUSH messages can be easily transmitted even if the terminal is located in the NAT, thereby improving the operational stability of the PUSH server system.

또한, 본 발명에 의하면, 이동통신단말기가 NAT환경하에 있더라도 별도의 장비를 추가하지 않고도 PUSH서버가 필요할 경우 그 확보된 경로를 통해 즉시 메시지를 전송할 수가 있기 때문에 망의 유지운용비용도 상당히 저감시키는 효과도 있다.In addition, according to the present invention, even if the mobile communication terminal is in a NAT environment, it is possible to immediately transmit a message through the secured path when a PUSH server is needed without adding a separate device, thereby significantly reducing the maintenance operation cost of the network. There is also.

도 1은 종래 NAT가 포함된 PUSH통신시스템의 일례를 설명하는 설명도.
도 2는 본 발명에 의한 NAT TRAVERSAL을 해결한 PUSH서버시스템을 설명하는 설명도.
도 3은 본 발명의 플로우차트.
1 is an explanatory diagram illustrating an example of a PUSH communication system including a conventional NAT.
2 is an explanatory diagram illustrating a PUSH server system that solves NAT TRAVERSAL according to the present invention;
3 is a flowchart of the present invention.

이하, 본 발명을 첨부된 예시도면에 의거하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 의한 PUSH시스템은 도 2에 도시된 바와같이 각종 컨텐츠정보들을 처리하고 필요한 정보를 얻기위해 세션과정을 통해 상위장비로 위치등록정보를 위한 메시지를 주기적으로 전송하는 단말장비(1A-N)와;PUSH system according to the present invention is a terminal equipment (1A-N) to periodically transmit a message for the location registration information to the higher-level equipment through the session process in order to process various content information and obtain necessary information as shown in FIG. Wow;

상기 단말장비(1A-N)로부터 주기적으로 전송되는 단말장비의 위치등록정보를 통해 항시 전송경로를 확보하고 PUSH할 PUSH메시지가 있을 경우 그 확보된 장비의 전송경로를 이용하여 해당 단말장비(1A-N)로 PUSH메시지를 전송하는 PUSH서버(2)를 포함하여 구성된다.      Always secure the transmission path through the location registration information of the terminal equipment periodically transmitted from the terminal equipment (1A-N), if there is a PUSH message to push the corresponding terminal equipment (1A-) by using the transmission path of the secured equipment N) is configured to include a PUSH server (2) for sending a PUSH message.

여기서, 상기 PUSH서버(2)에는 단말장비(1A-N)로부터 주기적으로 위치등록메시지를 전송받아 NAT Binding이 항상 유지되도록 관리하면서 PUSH메시지가 있을 경우 그 위치등록메시지 수신시 확보된 경로를 통해 연결요청메시지를 전송하는 레지스트라모듈(3)과,      In this case, the PUSH server 2 receives the location registration message periodically from the terminal equipment 1A-N and manages to maintain the NAT Binding at all times, and if there is a PUSH message, the PUSH server 2 connects through the secured path when receiving the location registration message. A registrar module (3) for sending a request message,

상기 PUSH메시지가 생성될 경우 이를 레지스트라모듈(3)의 주기적인 폴링시 알려주고 레지스트라모듈(3)의 연결요청메시지에 따른 해당 단말장비(1A-N)의 소스 IP, PORT를 목적지주소로하여 PUSH메시지를 전송하는 PUSH서비스모듈(4)을 더 포함하여 구성한다.    When the PUSH message is generated, it is notified at the time of periodic polling of the registrar module 3 and the PUSH message using the source IP and PORT of the corresponding terminal equipment 1A-N according to the connection request message of the registrar module 3 as a destination address. It further comprises a PUSH service module (4) for transmitting the.

그리고, 상기 단말장비(1A-N)와 PUSH서버(2)사이에는 단말장비(1A-N)의 소스 IP 주소와 공용 IP 주소를 참조하여 이 메시지에 포함된 단말장비(1A-N)의 소스 IP 주소를 공용 IP 주소로 변환하거나 혹은 그 역의 과정을 수행하는 NAT장비(5)와;       And, between the terminal equipment (1A-N) and the PUSH server (2) with reference to the source IP address and the public IP address of the terminal equipment (1A-N) source of the terminal equipment (1A-N) included in this message A NAT device 5 for converting an IP address into a public IP address or vice versa;

상기 PUSH서버(2)에 의한 데이터PUSH서비스에 할당된 포트 번호를 참조하여 이 포트번호에 해당하는 포트를 이용하는 서비스 데이터만을 통과시키고, 다른 포트를 이용하는 서비스 데이터를 차단하는 방화벽(6)을 더 포함하여 구성될 수 있다.     It further includes a firewall 6 for passing only service data using a port corresponding to the port number by referring to a port number assigned to the data PUSH service by the PUSH server 2 and blocking service data using another port. Can be configured.

여기서, 상기 PUSH서버(2)는 이통망(7)을 경유하여 NAT장비(5)에 연결될 수 도 있고 혹은 직접연결될 수도 있다.       Here, the PUSH server 2 may be connected to the NAT device (5) via a communication network (7) or may be directly connected.

다음에는 상기와 같은 구성으로된 본 발명의 제어방법을 설명한다.Next, the control method of the present invention having the above configuration will be described.

본 발명의 방법은 도 3에 도시된 바와같이 초기상태(S1)에서 PUSH서버의 레지스트라모듈이 단말장비들로부터 위치등록정보신호들을 전송받아 해당 단말장비들의 위치정보를 등록시키는 단말장비 위치등록정보과정(S2)과;In the method of the present invention, as shown in FIG. 3, in the initial state S1, a registrar module of a PUSH server receives location registration information signals from terminal devices and registers location information of corresponding terminal devices. (S2);

상기 단말장비 위치등록정보과정(S2)후에 단말장비가 그 확보된 전송경로를 통해 PUSH서버의 레지스트라모듈로 주기적으로 위치등록정보를 전송하여 NAT Binding 상태를 유지하는 NATbinding과정(S3)과;A NATbinding process (S3) in which, after the terminal equipment location registration information process (S2), the terminal equipment periodically transmits the location registration information to the registrar module of the PUSH server through the secured transmission path to maintain a NAT binding state;

상기 NATbinding과정(S3)후에 PUSH서버의 레지스트라모듈이 PUSH서버의 PUSH서비스모듈에 주기적으로 폴링하여 전송할 PUSH메시지가 있는 지를 하는 PUSH메시지확인과정(S4)과;After the NATbinding process (S3), the PUSH message checking step (S4) for the registrar module of the PUSH server periodically polls the PUSH service module of the PUSH server and whether there is a PUSH message to be transmitted;

상기 PUSH메시지확인과정(S4)중에 확인한 결과 PUSH서비스모듈에 전송할 PUSH메시지가 없을 경우 PUSH서버의 레지스트라모듈이 전송경로확보과정(S3)으로 복귀하여 루프를 반복수행하는 루프수행과정과:If there is no PUSH message to be transmitted to the PUSH service module as a result of the PUSH message checking process (S4), the registrar module of the PUSH server returns to the transmission path obtaining process (S3) and repeats the loop.

상기 PUSH메시지확인과정(S4)중에 확인한 결과 PUSH서비스모듈에 전송할 PUSH메시지가 있을 경우 PUSH서버의 레지스트라모듈이 단말장비들로 커네션연결요청신호를 전송하여 전송경로를 확보하는 커네션연결요청과정(S5)과;If there is a PUSH message to be transmitted to the PUSH service module as a result of the PUSH message checking process (S4), the connection connection request process of the registrar module of the PUSH server transmitting the connection connection request signal to the terminal devices to secure the transmission path ( S5);

상기 커네션연결요청과정(S5)후에 PUSH서버의 PUSH서비스모듈이 레지스트라모듈의 커넥션연결요청메시지를 통해 확보된 해당 단말장비의 커넥션연결정보를 목적지주소로 하여 PUSH메시지를 전송하는 PUSH메시지전송과정(S6)을 포함하여 구성된다.After the connection connection request process (S5), the PUSH service module of the PUSH server transmits the PUSH message using the connection connection information of the corresponding terminal device secured through the connection connection request message of the registrar module as a destination address ( S6) is configured to include.

상기 PUSH메시지전송과정(S6)의 커넥션연결정보는 해당 장비의 소스 IP 및 PORT정보를 포함한다.
The connection connection information of the PUSH message transmission process S6 includes source IP and PORT information of the corresponding device.

환언하면, 본 발명의 PUSH서버(2)와 연결되는 각 단말장비들(1A-N)은 먼저, PUSH서버(2)에 등록하기위해 세션과정을 거치게된다. In other words, each terminal equipment 1A-N connected to the PUSH server 2 of the present invention first undergoes a session process to register with the PUSH server 2.

이때, 상기 단말장비(1A-N)는 단말장비(1A-N)와 PUSH서버(2)사이에 NAT장비(5)와 방화벽(6)이 설치되어 있기 때문에 자신의 위치정보를 등록하기위해서는 이들 장비들(5,6)을 먼저 거쳐야한다.At this time, the terminal equipment (1A-N) is installed between the terminal equipment (1A-N) and the PUSH server (2) NAT device (5) and the firewall (6) to register their location information The equipment (5, 6) must first go through.

따라서, 상기 단말장비(1A-N)는 그 위치등록정보에 자신을 식별할 수 있는 소스 IP와 데이터PUSH서비스에 할당된 포트번호를 포함하여 먼저, NAT장비(5)로 전송한다. 그러면, 상기 NAT장비(5)는 그 위치등록을 위한 단말장비(1A-N)의 소스 IP 주소를 PUSH서버(2)에게 할당되어 있는 공용 IP 주소로 변환하여 방화벽(6)으로 전송한다. 그리고, 상기 방화벽(6)은 NAT장비(5)로부터 전송되온 데이터를 데이터 푸시 서비스에 할당된 포트 번호일 경우 PUSH서버(2)로 전송한다. Therefore, the terminal equipment 1A-N first transmits to the NAT device 5 including the source IP for identifying itself in the location registration information and the port number assigned to the data PUSH service. Then, the NAT device 5 converts the source IP address of the terminal equipment 1A-N for location registration into a public IP address assigned to the PUSH server 2 and transmits it to the firewall 6. The firewall 6 transmits the data transmitted from the NAT device 5 to the PUSH server 2 when the port number is assigned to the data push service.

따라서, 상기 PUSH서버(2)의 레지스트라모듈(3)은 그 세션과정중에 각각의 클단말장비들(70A-N)로부터 NAT장비(5)와 방화벽(6)을 거쳐 전송받은 해당 단말장비들(1A-N)의 개별정보 예컨대, 소스 IP 주소와 공용 IP 주소, 데이터PUSH서비스에 할당된 포트번호 등과 같은 단말장비들(1A-N)에 대한 정보를 전송받아 등록시킨다.Accordingly, the registrar module 3 of the PUSH server 2 transmits the corresponding terminal devices received from the respective terminal devices 70A-N through the NAT device 5 and the firewall 6 during the session process. Individual information of 1A-N), for example, receives and registers information about terminal devices 1A-N such as a source IP address, a public IP address, and a port number allocated to a data PUSH service.

한편, 상기와 같은 과정을 거쳐 단말장비들(1A-N)이 위치를 등록한 후에 상기 단말장비들(1A-N)은 그 확보된 전송경로를 통해 주기적으로 PUSH서버(2)의 레지스트라모듈(3)로 계속 위치등록정보를 전송하므로 NAT Binding 상태를 유지한다. Meanwhile, after the terminal equipments 1A-N register the location through the above process, the terminal equipments 1A-N periodically register the registrar module 3 of the PUSH server 2 through the secured transmission path. Keeps the NAT Binding state as it continues to send location properties.

다시말해서, 상기 PUSH서버(2)의 레지스트라모듈(3)와 단말장비들(1A-N)사이에는 항상 데이터를 송수신할 수 있는 전송경로가 확보되게된다.In other words, between the registrar module 3 of the PUSH server 2 and the terminal equipments 1A-N, a transmission path capable of transmitting and receiving data is always secured.

또한, 상기 과정중에 PUSH서버(2)의 레지스트라모듈(3)은 PUSH서비스모듈(4)에 주기적으로 폴링하여 전송할 PUSH메시지가 있는 지를 확인한다.In addition, during the process, the registrar module 3 of the PUSH server 2 periodically checks whether there is a PUSH message to be transmitted by polling the PUSH service module 4.

그리고, 상기 폴링과정중에 PUSH서버(2)의 레지스트라모듈(3)은 PUSH서비스모듈(4)에 전송할 PUSH메시지가 없을 경우 계속 폴링과정을 반복수행한다.During the polling process, the registrar module 3 of the PUSH server 2 repeatedly performs the polling process when there is no PUSH message to be transmitted to the PUSH service module 4.

그러나, 상기 PUSH서버(2)의 레지스트라모듈(3)은 현재 PUSH서비스모듈(4)에 전송할 PUSH메시지가 있을 경우 단말장비들(1A-N)로 커네션연결요청신호를 전송한 후 그 응답을 받아 전송경로를 확인한 다음 그 커네션연결정보 즉, 해당 장비의 소스 IP 및 PORT정보를 PUSH서버(2)의 PUSH서비스모듈(4)로 전송한다.However, the registrar module 3 of the PUSH server 2 transmits the connection connection request signal to the terminal equipments 1A-N when there is a PUSH message to be transmitted to the PUSH service module 4, and then sends a response. After receiving the transmission path, the connection connection information, that is, source IP and PORT information of the corresponding equipment is transmitted to the PUSH service module 4 of the PUSH server 2.

그러면, 상기 PUSH서버(2)의 PUSH서비스모듈(4)은 레지스트라모듈(3)의 커넥션연결요청메시지를 통해 확보된 해당 단말장비(1A-N)의 커넥션연결정보 즉, 해당 장비의 소스 IP 및 PORT정보를 목적지주소로 하여 PUSH메시지가 PUSH되게되는데, 이때 상기 커넥션연결정보가 포함된 PUSH메시지는 먼저, 해당 단말장비(1A-N)의 기등록된 포트번호에 의해 방화벽(6)을 통과하여 NAT장비(5)로 전송된다. 그러면, 상기 NAT장비(5)는 상기 PUSH서버(2)로부터 제공된 해당 단말장비(1A-N)의 개별정보에 포함된 소스 IP 주소로 PUSH서버(2)의 공용 IP 주소를 변환하여 해당 단말장비(1A-N)로 PUSH메시지정보를 전송하므로 단말장비가 NAT환경안에 위치하더라도 용이하게 PUSH서비스를 실행하게된다.Then, the PUSH service module 4 of the PUSH server 2 is the connection connection information of the corresponding terminal equipment 1A-N secured through the connection connection request message of the registrar module 3, that is, the source IP of the equipment and The PUSH message is pushed to the destination address using the PORT information. At this time, the PUSH message including the connection connection information is first passed through the firewall 6 by the pre-registered port number of the terminal equipment 1A-N. Transmitted to the NAT device (5). Then, the NAT device 5 converts the public IP address of the PUSH server 2 into the source IP address included in the individual information of the corresponding terminal device 1A-N provided from the PUSH server 2 to the corresponding terminal device. Since the PUSH message information is transmitted to (1A-N), even if the terminal equipment is located in the NAT environment, the PUSH service can be easily executed.

1A-N: 단말장비 2 : PUSH서버
3 :레지스트라모듈 4 : PUSH서비스모듈
5 : NAT 장비 6 : 방화벽
7 : 이통망
1A-N: Terminal Equipment 2: PUSH Server
3: registrar module 4: PUSH service module
5: NAT equipment 6: firewall
7: communication network

Claims (5)

NAT장비를 통해 네트워크가 연결되는 PUSH시스템에 있어서,
상기 PUSH시스템에, 각종 컨텐츠정보들을 처리하고 필요한 정보를 얻기위해 세션과정을 통해 상위장비로 위치등록정보를 위한 메시지를 주기적으로 전송하는 단말장비와;
상기 단말장비(1A-N)로부터 주기적으로 전송되는 단말장비의 위치등록정보를 통해 항시 전송경로를 확보하고 PUSH할 PUSH메시지가 있을 경우 그 확보된 장비의 전송경로를 이용하여 해당 단말장비로 PUSH메시지를 전송하는 PUSH서버를 포함하여 구성되는 NAT TRAVERSAL을 해결한 PUSH서버시스템.
In the PUSH system in which a network is connected through a NAT device,
A terminal device that periodically transmits a message for location registration information to a higher device through a session process to process various content information and obtain necessary information to the PUSH system;
Always secure the transmission path through the location registration information of the terminal equipment periodically transmitted from the terminal equipment (1A-N), if there is a PUSH message to push the PUSH message to the corresponding terminal equipment using the transmission path of the secured equipment PUSH server system that solves NAT TRAVERSAL, including a PUSH server for transmitting.
제1항에 있어서, 상기 PUSH서버는 단말장비로부터 주기적으로 위치등록메시지를 전송받아 NAT Binding이 항상 유지되도록 관리하면서 PUSH메시지가 있을 경우 그 위치등록메시지 수신시 확보된 경로를 통해 연결요청메시지를 전송하는 레지스트라모듈과,
상기 PUSH메시지가 생성될 경우 이를 레지스트라모듈의 주기적인 폴링시 알려주고 레지스트라모듈의 연결요청메시지에 따른 해당 단말장비의 커넥션연결정보를 목적지주소로하여 PUSH메시지를 전송하는 PUSH서비스모듈을 더 포함하여 구성되는 것을 특징으로 하는 NAT TRAVERSAL을 해결한 PUSH서버시스템.
The method of claim 1, wherein the PUSH server periodically receives a location registration message from the terminal equipment and manages to maintain NAT binding at all times, and if there is a PUSH message, the PUSH server transmits a connection request message through the secured path when receiving the location registration message. A registrar module,
When the PUSH message is generated, it is configured to include a PUSH service module for notifying the registrar module of periodic polling and transmitting the PUSH message with the connection address of the corresponding terminal equipment according to the connection request message of the registrar module as a destination address. PUSH server system that solves NAT TRAVERSAL, characterized in that.
제2항에 있어서, 상기 커넥션연결정보는 단말장비의 소스 IP 및 PORT정보를 포함하여 구성되는 것을 특징으로 하는 NAT TRAVERSAL을 해결한 PUSH서버시스템.      The PUSH server system of claim 2, wherein the connection connection information includes source IP and PORT information of a terminal device. PUSH서버의 레지스트라모듈이 단말장비들로부터 위치등록정보신호들을 전송받아 해당 단말장비들의 위치정보를 등록시키는 단말장비 위치등록정보과정과;
상기 단말장비 위치등록정보과정후에 단말장비가 그 확보된 전송경로를 통해 PUSH서버의 레지스트라모듈로 주기적으로 위치등록정보를 전송하여 NAT Binding 상태를 유지하는 NATbinding과정과;
상기 NATbinding과정후에 PUSH서버의 레지스트라모듈이 PUSH서버의 PUSH서비스모듈에 주기적으로 폴링하여 전송할 PUSH메시지가 있는 지를 하는 PUSH메시지확인과정과;
상기 PUSH메시지확인과정중에 확인한 결과 PUSH서비스모듈에 전송할 PUSH메시지가 있을 경우 PUSH서버의 레지스트라모듈이 단말장비들로 커네션연결요청신호를 전송하여 전송경로를 확보하는 커네션연결요청과정과;
상기 커네션연결요청과정후에 PUSH서버의 PUSH서비스모듈이 레지스트라모듈의 커넥션연결요청메시지를 통해 확보된 해당 단말장비의 커넥션연결정보를 목적지주소로 하여 PUSH메시지를 전송하는 PUSH메시지전송과정을 포함하여 구성되는 NAT TRAVERSAL을 해결한 PUSH서버시스템의 제어방법.
A terminal equipment location registration information process of receiving a registration information signal from terminal devices by a registrar module of the PUSH server and registering location information of corresponding terminal devices;
A NATbinding process in which, after the terminal device location registration information process, the terminal device periodically transmits the location registration information to the registrar module of the PUSH server through the secured transmission path to maintain the NAT Binding state;
A PUSH message checking step of checking whether a PUSH message to be transmitted is periodically polled by a PUSH server's registrar module after the NATbinding process;
A connection connection request process for securing a transmission path by transmitting a connection connection request signal to terminal devices by a registrar module of the PUSH server when a PUSH message to be transmitted to the PUSH service module is found during the PUSH message checking process;
After the connection connection request process, the PUSH service module of the PUSH server includes a PUSH message transmission process of transmitting a PUSH message using the connection connection information of the corresponding terminal device obtained through the connection connection request message of the registrar module as a destination address. Control method of PUSH server system that solved NAT TRAVERSAL.
제4항에 있어서, 상기 PUSH메시지전송과정은 단말장비의 소스 IP 및 PORT정보를 포함하여 커넥션연결정보를 구성하는 커넥션연결정보 구성단계를 더 포함하는 것을 특징으로 하는 NAT TRAVERSAL을 해결한 PUSH서버시스템의 제어방법.
5. The PUSH server system of claim 4, wherein the PUSH message transmission process further comprises a connection connection information configuring step of configuring connection connection information including source IP and PORT information of a terminal device. Control method.
KR1020110026356A 2011-03-24 2011-03-24 Push server system for resolving a nat traversal and conrolling method therefor KR20120108464A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110026356A KR20120108464A (en) 2011-03-24 2011-03-24 Push server system for resolving a nat traversal and conrolling method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110026356A KR20120108464A (en) 2011-03-24 2011-03-24 Push server system for resolving a nat traversal and conrolling method therefor

Publications (1)

Publication Number Publication Date
KR20120108464A true KR20120108464A (en) 2012-10-05

Family

ID=47280068

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110026356A KR20120108464A (en) 2011-03-24 2011-03-24 Push server system for resolving a nat traversal and conrolling method therefor

Country Status (1)

Country Link
KR (1) KR20120108464A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180075207A (en) * 2016-12-26 2018-07-04 주식회사 케이티 Data push function providing system and method in enterprise network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180075207A (en) * 2016-12-26 2018-07-04 주식회사 케이티 Data push function providing system and method in enterprise network

Similar Documents

Publication Publication Date Title
CN101331737B (en) Communication network device for universal plug and play and internet multimedia subsystems networks and communication method
CN104429037B8 (en) Method, equipment and system for being connected to communication equipment
CN102906730A (en) Shared heartbeat service for managed devices
CN101594376B (en) Method and corresponding device for registering CIM provider to CIMOM
CN101341720A (en) Virtual universal plug and play control point
CN101180852A (en) Method and system for the remote management of a machine via IP links of an IP multimedia subsystem, IMS
US20050267972A1 (en) Lightweight remote display protocol
CN105743964B (en) Method for sharing resources using virtual device driver and electronic device thereof
WO2010047470A3 (en) Content providing system and method for providing data service through wireless local area network, and cpns server and mobile communication terminal for the same
CN103647856A (en) Method and device for application (APP) to obtain media access control (MAC) address of terminal
JP2012150806A (en) Desktop sharing system and method
US20190028414A1 (en) System And Method For Providing a Communications Layer to Enable Full Participation in a Distributed Computing Environment That Uses Multiple Message Types
KR102270909B1 (en) Multimedia sharing method, registration method, server and proxy server
CA2533543A1 (en) System and method for managing communication for component applications
KR102025631B1 (en) Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof
KR20130052373A (en) Method and apparatus for brokering between server and device and computer readable recording medium
KR20120108464A (en) Push server system for resolving a nat traversal and conrolling method therefor
TWI674806B (en) Message pushing system, client equipment and message pushing method thereof
CN1925479B (en) Communication control unit and communication control method
EP2559197B1 (en) Method for controlling functions of device included in home network
KR20170025550A (en) Gateway and control method thereof
US9680940B2 (en) Method, device and system for acquiring data type definition
KR20140110172A (en) Method And Apparatus for Interworking with non-M2M compliant device
CN114363415B (en) Cross-domain video scheduling method, system, device and local area network server
KR100756855B1 (en) Remote object management duplexing method using mobile communication network and system thereof

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee