KR100764063B1 - Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor - Google Patents

Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor Download PDF

Info

Publication number
KR100764063B1
KR100764063B1 KR1020060096794A KR20060096794A KR100764063B1 KR 100764063 B1 KR100764063 B1 KR 100764063B1 KR 1020060096794 A KR1020060096794 A KR 1020060096794A KR 20060096794 A KR20060096794 A KR 20060096794A KR 100764063 B1 KR100764063 B1 KR 100764063B1
Authority
KR
South Korea
Prior art keywords
umtp
server
multicast
agent
udp
Prior art date
Application number
KR1020060096794A
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 KR1020060096794A priority Critical patent/KR100764063B1/en
Application granted granted Critical
Publication of KR100764063B1 publication Critical patent/KR100764063B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1827Network arrangements for conference optimisation or adaptation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]

Landscapes

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

Abstract

A method for UDP(User Datagram Protocol) multicast tunneling in a multicast-based multi-party collaboration environment, and a system therefor are provided to secure the stability of multicast connection by controlling a UMTP(UDP Multicast Tunneling Protocol) agent to be connected with another UMTP server when the connection between the UMTP agent and the UMTP server is released. A method for UDP multicast tunneling in a multicast-based multi-party collaboration environment includes the steps of: generating a UMTP server registration list by receiving registration information including an IP address and port information in a UMTP registration server from a UMTP server(S200); receiving the UMTP server registration list in a UMTP agent from the UMTP registration server(S220); checking the possibility of connection with the UMTP server included in the UMTP server registration list by the UMTP agent(S230); and attempting the connection with any one UMTP server included in the UMTP server registration list by the UMTP agent, and generating a UDP tunnel(S240,S250).

Description

멀티캐스트 기반 다자간 협업 환경에서의 유디피 멀티캐스트 터널링 방법 및 그 시스템{Method for UDP Multicast Tunneling in Multicast-Based Multi-Party Collaboration Environment, and System Therefor}Method for UDP Multicast Tunneling in Multicast-Based Multi-Party Collaboration Environment, and System Therefor}

도 1은 종래 제안된 UMTP 기반의 멀티캐스트 연결 시스템의 블록 구성도,1 is a block diagram of a conventional UMTP-based multicast connection system;

도 2는 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UMTP 서버와 UMTP 에이전트 및 UMTP 등록 서버의 블록 구성도,2 is a block diagram of a UMTP server, a UMTP agent, and a UMTP registration server in a multicast-based multi-party collaboration system according to an embodiment of the present invention;

도 3은 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법을 도시한 순서도, 3 is a flowchart illustrating a UDP multicast tunneling method in a multicast-based multi-party collaboration system according to an embodiment of the present invention;

도 4는 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법 중 UMTP 에이전트와 UMTP 서버 간의 연결 과정을 설명하는 도면,4 is a diagram illustrating a connection process between a UMTP agent and a UMTP server in a UDP multicast tunneling method in a multicast-based multiparty collaboration system according to an embodiment of the present invention;

도 5는 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법에 있어서 UMTP 에이전트와 UMTP 서버와의 연결을 확보하는 방법을 도시한 도면,5 is a diagram illustrating a method for securing a connection between a UMTP agent and a UMTP server in a UDP multicast tunneling method of a multicast-based multiparty collaboration system according to an embodiment of the present invention;

도 6은 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템의 블록 구성도,6 is a block diagram of a multicast-based multi-party collaboration system according to another embodiment of the present invention;

도 7은 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시 스템에 있어서 UDP 멀티캐스트 터널링 방법을 도시한 순서도이다. 7 is a flowchart illustrating a UDP multicast tunneling method in a multicast-based multi-party collaboration system according to a preferred embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for main parts of the drawings>

100 : 제 1 네트워크 110 : UMTP 서버100: first network 110: UMTP server

120 : 제 2 네트워크 130 : UMTP 에이전트120: second network 130: UMTP agent

140 : UMTP 등록 서버 300 : 공용 멀티캐스트 네트워크140: UMTP registration server 300: public multicast network

310 : UMTP 서버 320 : 사설 네트워크310: UMTP server 320: private network

330 : UMTP 에이전트 340 : UMTP 등록 서버330: UMTP agent 340: UMTP registration server

350 : 베뉴 서버 360 : NAT/방화벽350: Venue Server 360: NAT / Firewall

370 : UDP 터널 370 UDP tunnel

본 발명은 멀티캐스트 기반 다자간 협업 환경에서의 UDP 멀티캐스트 터널링 방법 및 그 시스템에 관한 것이다. 더욱 상세하게는, UMTP 서버의 등록 정보를 주기적으로 갱신하여 유지하고, UMTP 에이전트가 UMTP 서버와 효율적으로 UDP 터널을 생성하여 연결되며 그 연결 상태의 유지 여부를 확인하도록 하고, NAT/방화벽이 구비되는 사설 네트워크에 대해서도 멀티캐스트 연결이 가능하도록 하는 멀티캐스트 기반 다자간 협업 환경에서의 UDP 멀티캐스트 터널링 방법 및 그 시스템에 관한 것이다.The present invention relates to a method and system for UDP multicast tunneling in a multicast-based multiparty collaboration environment. More specifically, the registration information of the UMTP server is periodically updated and maintained, and the UMTP agent efficiently connects to the UMTP server by creating a UDP tunnel and checks whether the connection state is maintained, and a NAT / firewall is provided. The present invention relates to a UDP multicast tunneling method and system in a multicast-based multi-party collaboration environment enabling multicast connection to a private network.

다자간 협업 시스템은 원격지의 네트워크 접속자 상호간에 동일한 애플리케 이션을 공유하여 조작, 편집 등을 지원함과 동시에 상호 협업 수단으로 음성, 화상, 문자, 화이트 보드, 인스턴트 메시지 및 가상 작업 공간을 제공하여 효율적인 협업 환경을 제공하는 시스템을 의미한다. Multi-party collaboration system supports the same application among remote network users to support operation and editing, while providing voice, video, text, white board, instant message and virtual workspace as a means of mutual collaboration for efficient collaboration environment. Means providing system.

이러한 다자간 협업 시스템의 기능 또는 종류에 대해 간단히 설명하면 다음과 같다. 애플리케이션 공유 회의는 데이터를 공유하면서 화면 내용을 전송하고 추가 입력이 가능하도록 함으로써 회의에 참가한 클라이언트들이 자신의 PC 환경과는 상관없이 동일한 문서 환경에서 회의를 진행할 수 있도록 한다. 화이트보드 회의는 회의에 참가한 사용자가 화이트 보드 또는 특정 이미지 객체상에 의견을 제시할 수 있도록 한다. 비디오 회의는 원격지 간을 공중망이나 사설망 등의 매체로 연결하여 코덱을 통해 화상 그래픽 데이터를 압축 코딩해 실시간으로 동시에 송수신함으로써 실제 회의 상황에 가장 근접한 환경을 제공한다. 음성 회의는 원격지간, 다자간 음성 신호를 전달할 수 있도록 하며, 문자 회의는 다자간 문자 입력을 통해 회의를 할 수 있도록 한다. 최근에는 인스턴트 메신저(Instant Messenger) 시스템을 이용한 다자간 협업 시스템이 사용되는데, 이는 IMPP(Instant Messaging and Presence Protocol) 표준으로서 인터넷 프로토콜을 기반으로 하여 상대방의 상태를 실시간으로 확인하고 문자나 메일의 메시지 및 파일 등을 전송할 수 있도록 한다. Brief descriptions of the functions or types of such a multilateral collaboration system are as follows. Application sharing conferences allow screen transfers and additional input while sharing data, allowing clients to participate in the same document environment, regardless of their PC environment. Whiteboard meetings allow users who participate in a meeting to comment on a whiteboard or a specific image object. Video conferencing connects remote sites to a medium such as public or private networks, compresses and codes video graphic data through a codec to simultaneously transmit and receive video in real time, thereby providing an environment closest to a real conference situation. Voice conferencing enables the transmission of remote and multi-party voice signals, and text conferencing allows for conferencing through multi- text input. Recently, a multi-party collaboration system using an instant messenger system is used. It is an Instant Messaging and Presence Protocol (IMPP) standard, which is based on the Internet protocol to check the status of the other party in real time, and to send messages and files of text or mail. And so on.

이러한 다자간 협업 시스템 중에서, 액세스 그리드(Access Grid)는 공동 연구나 정책 결정을 위해서 다양한 분야의 연구자들이 원격지에서 서로 정보를 교환하고 협력할 수 있도록 하는 협업 시스템이다. 액세스 그리드는 여러 명이 동시에 볼 수 있도록 대형 스크린과 음향 장치를 이용하여 각 노드로부터 입력되는 비디오 영상, 발표 자료, 음성 등을 IP 멀티캐스트 네트워크(IP Multicast Network)를 통해 전송하여 공간적으로 떨어져 있는 사람들이 효율적으로 공동 작업을 할 수 있도록 서비스한다. 네이티브(Native) IP 멀티캐스트는 일-대-다 또는 다-대-다 통신에서 효율적인 방법으로 알려져 있다. 그러나, 관련된 배열과 작동의 복잡성과 곤란성으로 인해 대부분의 네트워크 서비스 제공자는 네이티브 IP 멀티캐스트를 지원하는 것을 꺼리는 실정이다.Among these multilateral collaboration systems, the Access Grid is a collaboration system that allows researchers in various fields to exchange information and cooperate with each other at remote locations for collaborative research or policy decision making. The access grid transmits video, presentations, and audio from each node through the IP Multicast Network using large screens and audio devices for simultaneous viewing by multiple people. Service to collaborate efficiently. Native IP multicast is known as an efficient method in one-to-many or many-to-many communication. However, due to the complexity and difficulty of the arrangement and operation involved, most network service providers are reluctant to support native IP multicast.

액세스 그리드 시스템에 있어서, 네이티브 IP 멀티캐스트의 활용가능성은 다자간 협업 환경의 전개에 매우 중요하다. 이러한 이유로 액세스 그리드 커뮤니티는 퀵브리지(QuickBridge)로 불리는 멀티캐스트 연결 솔루션을 사용해 왔다. 퀵브리지 서버는 멀티캐스트 가능한 네트워크에 위치하여 멀티캐스트 가능한 네트워크와 멀티캐스트 불가능한 네트워크 간의 데이터 전달을 수행한다. 멀티캐스트 불가능한 네트워크의 액세스 그리드 사용자들은 퀵브리지 서버로부터 UDP 유니캐스트 패킷으로 멀티캐스트 트래픽을 수신한다. 이러한 동작이 간단하고 직접이지만, 네트워크 대역폭의 낭비가 심한 단점이 있다. 게다가 멀티캐스트와 유니캐스트 주소 간의 일-대-일 매핑으로 인해 퀵브리지 서버는 연결된 사용자 수에 따라 개방된 포트(port)를 필요로 한다. 이에 따라 이러한 솔루션을 NAT(Network Address Translator) 및 방화벽(Firewall) 환경 하의 사용자에게 적용하는 것이 매우 어렵게 된다. For access grid systems, the availability of native IP multicast is critical for the deployment of multilateral collaboration environments. For this reason, the Access Grid community has used a multicast connectivity solution called QuickBridge. The Quickbridge server is located in a multicast-capable network to perform data transfer between a multicast-capable network and a non-multicast-capable network. Access grid users in non-multicast networks receive multicast traffic in UDP unicast packets from Quickbridge servers. Although this operation is simple and direct, there is a disadvantage in that the waste of network bandwidth is severe. In addition, because of the one-to-one mapping between multicast and unicast addresses, the Quickbridge server needs an open port based on the number of connected users. This makes it very difficult to apply these solutions to users under a network address translator (NAT) and firewall environment.

액세스 그리드와 같은 멀티캐스트 기반 다자간 협업 시스템의 활용을 위해서는 멀티캐스트 연결(Multicast Connectivity)에 대한 문제를 해결하여야 한다. 이 러한 연결 문제는, 첫째, 유니캐스트-온리(Unicast-only) 네트워크에서의 액세스 그리드 노드(Access Grid Node)의 연결, 둘째, NAT 또는 방화벽 존재하에서의 액세스 그리드로부터 또는 액세스 그리드로의 연결, 셋째, 좁은 대역폭 또는 낮은 성능의 액세스 그리드 노드로부터의 액세스 그리드 세션에 대한 연결의 문제를 들 수 있다. 이 중 첫 번째 문제는 상술한 퀵브리지를 이용하여 일부 해소할 수 있으나 두 번째와 세 번째 문제는 아직까지 명확한 해결책이 제시되지 않은 상태이다. In order to utilize a multicast-based multi-party collaboration system such as an access grid, the problem of multicast connectivity must be solved. This connection problem is firstly the connection of an Access Grid Node in a unicast-only network, second, the connection from or to the Access Grid in the presence of a NAT or firewall, and thirdly, A problem is the connection to access grid sessions from narrow bandwidth or low performance access grid nodes. The first problem can be partially solved by using the above-described quick bridge, but the second and third problems have not yet been given clear solutions.

본 발명자들은 상기한 문제를 일부 해소할 수 있는 방법으로서, UDP(User Datagram Protocol) 터널(Tunnel)을 이용하여 멀티캐스트 네트워크와 유니캐스트 네트워크를 연결하는 방법을 제안한 바 있다.(N. Kim and J. Kim, "UDP-tunneling based multicast connectivity solution for multi-party collaborative environments," in Proc . SPIE, Oct. 2005. 참조.) The present inventors have proposed a method of connecting a multicast network and a unicast network using a User Datagram Protocol (UDP) tunnel as a method to solve some of the above problems. (N. Kim and J) Kim, "UDP-tunneling based multicast connectivity solution for multi-party collaborative environments," in Proc . SPIE , Oct. 2005.)

도 1은 종래 제안된 UMTP 기반의 멀티캐스트 연결 시스템의 블록 구성도이다.1 is a block diagram of a conventional UMTP-based multicast connection system.

도 1에 도시된 바에 따르면, 멀티캐스트 가능한 제 1 네트워크(N1)와, 제 1 네트워크(N1)와 멀티캐스트 연결성을 갖지 않는 다른 네트워크(N2, N3, N4, N5)가 존재한다. 제 2 네트워크(N2)는 멀티캐스트 가능하지만 제 2 네트워크(N2)의 엔드 호스트(H4, H5, H6, H7)는 제 1 네트워크(N1)와 직접적으로 멀티캐스트 데이터그램(multicast datagram)을 교환할 수 없다. 이 시스템에서는 제 1 네트워크(N1)에 다수의 UMTP 서버(S1, S2, S3, S4)를 구비하고, 다른 네트워크(N2, N3, N4, N5)에는 UMTP 에이전트(A1, A2, A3, A4)를 구비하여 UMTP 서버와 이에 연결된 UMTP 에이 전트 간에 UDP 터널을 형성하여 멀티캐스트 연결성이 제공되도록 하였다.As shown in FIG. 1, there is a multicastable first network N1 and other networks N2, N3, N4, N5 that do not have multicast connectivity with the first network N1. The second network N2 is multicast capable, but the end hosts H4, H5, H6 and H7 of the second network N2 may exchange multicast datagrams directly with the first network N1. Can't. In this system, a plurality of UMTP servers S1, S2, S3, and S4 are provided in the first network N1, and UMTP agents A1, A2, A3, and A4 are provided in the other networks N2, N3, N4, and N5. By providing a UDP tunnel between the UMTP server and the UMTP agent connected to it to provide multicast connectivity.

이를 정리하면, UMTP(UDP Multicast Tunneling Protocol : R. Finlayson, "The UDP multicast tunneling protocol," Internet Draft, IETF, November 2003. 참조)에 기반하여, 멀티캐스트 가능한 네트워크측의 터널의 일단에 UMTP 서버를 구비하고, 터널의 타단에 UMTP 에이전트를 구비하여 UMTP 에이전트가 속하는 네트워크에서 멀티캐스트 가능한 네트워크에 접속하는 것을 가능하도록 한다. 이러한 연결에는 UMTP, UGMP(group management extension for the UMTP), 및 MPROBE(Multicast PROBE) 프로토콜이 사용된다. 먼저, UMTP는 UMTP 서버와 UMTP 에이전트 간에 UDP 터널을 형성하여 데이터 전송이 가능하도록 한다. 다음으로 UGMP를 이용하여, 엔드 호스트는 접속하고자 하는 멀티캐스트 주소를 위한 UDP 터널을 생성할 것을 UMTP 서버로 요청할 수 있다. 마지막으로 MPROBE 프로토콜은 UMTP 에이전트와 UMTP 서버 중에서 가능한 멀티캐스트 루프를 검출한다.In summary, based on UMTP (see UDP Multicast Tunneling Protocol: R. Finlayson, "The UDP multicast tunneling protocol," Internet Draft, IETF, November 2003.), a UMTP server is placed at one end of a multicast-capable network side tunnel. And a UMTP agent at the other end of the tunnel to enable access to a multicast-capable network in the network to which the UMTP agent belongs. These connections use UMTP, group management extension for the UMTP (UMP), and Multicast PROBE (MPROBE) protocols. First, UMTP forms a UDP tunnel between a UMTP server and a UMTP agent to enable data transmission. Next, using UGMP, the end host can request the UMTP server to create a UDP tunnel for the multicast address to be connected. Finally, the MPROBE protocol detects possible multicast loops between UMTP agents and UMTP servers.

그러나, UMTP 서버는 UMTP 에이전트로부터의 연결 요구에 대한 접속 수락(Addmission Control) 제어를 수행하지 않기 때문에 UMTP 서버는 지원할 수 있는 것보다 더 많은 UMTP 에이전트와 연결되는 문제가 발생한다. 이러한 문제는 UMTP 서버의 접속 실패를 초래할 수 있게 된다.However, since the UMTP server does not perform access control control on the connection request from the UMTP agent, the UMTP server has a problem of connecting with more UMTP agents than can be supported. This problem may result in connection failure of the UMTP server.

또한 전술한 바와 같이, NAT 또는 방화벽이 존재하는 상태에서는 멀티캐스트 연결성이 제공되지 않아 멀티캐스트 기반의 다자간 협업 시스템을 활용할 수 없는 문제점이 존재한다.In addition, as described above, in the presence of NAT or firewall, there is a problem in that multicast connectivity is not provided and a multicast-based multi-party collaboration system cannot be utilized.

상기와 같은 문제점을 해결하기 위해 본 발명은, 멀티캐스트 가능한 네트워크와 멀티캐스트 연결성을 갖지 않는 다른 네트워크의 연결성을 확보하기 위한 UDP 터널의 생성을 위하여 UMTP 등록 서버가 UMTP 서버의 정보를 등록받고 이를 UMTP 에이전트가 전송받아 활용할 수 있도록 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법 및 그 시스템을 제공함을 그 목적으로 한다. In order to solve the above problems, the present invention, the UMTP registration server receives the information of the UMTP server in order to create a UDP tunnel for securing the connectivity between the multicast-enabled network and another network that does not have multicast connectivity An object of the present invention is to provide a UDP multicast tunneling method and a system of a multicast-based multi-party collaboration system that an agent can receive and use.

또한, 본 발명은 UMTP 에이전트가 UMTP 서버와의 연결 허가 가능성을 확인하고, 가장 높은 품질의 UMTP 서버와 연결하도록 하며, UMTP 서버와의 연결이 해제되는 경우 이를 확인할 수 있도록 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법을 제공함을 그 목적으로 한다. In addition, the present invention is a multicast-based multi-party collaboration system that allows the UMTP agent to check the possibility of connection with the UMTP server, to connect with the highest quality UMTP server, and to check when the connection with the UMTP server is released. Its purpose is to provide a UDP multicast tunneling method.

또한, 본 발명은 NAT/방화벽이 존재하는 사설 네트워크와의 멀티캐스트 연결성이 가능하도록 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법을 제공함을 그 목적으로 한다. It is also an object of the present invention to provide a UDP multicast tunneling method of a multicast-based multi-party collaboration system that enables multicast connectivity with a private network where a NAT / firewall exists.

상기한 목적을 달성하기 위해 본 발명은, 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법에 있어서, (a) UMTP 등록 서버가 UMTP 서버로부터 아이피 주소 및 포트 정보를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하는 단계; (b) UMTP 에이전트가 상기 UMTP 등록 서버로부터 상기 UMTP 서버 등록 리스트를 수신하는 단계; (c) 상기 UMTP 에이전트가 상기 UMTP 서버 등록 리스트에 포함된 상기 UMTP 서버와의 연결 허가 가능성을 점검하는 단계; 및 (d) 상기 UMTP 에이전트가 상기 UMTP 서버 등록 리스트에 포함된 상기 UMTP 서버 중 어느 하나에 대해 연결을 시도하여 UDP 터널을 생성하는 단계를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법을 제공한다.In order to achieve the above object, the present invention, in the UDP multicast tunneling method of the multicast-based multi-party collaboration system, (a) UMTP registration server receives registration information including IP address and port information from the UMTP server UMTP Generating a server registration list; (b) a UMTP agent receiving the UMTP server registration list from the UMTP registration server; (c) checking, by the UMTP agent, the possibility of granting connection with the UMTP server included in the UMTP server registration list; And (d) the UMTP agent attempting to connect to any one of the UMTP servers included in the UMTP server registration list to generate a UDP tunnel. Provides a cast tunneling method.

또한, 본 발명은, 멀티캐스트 기반 다자간 협업 시스템에 있어서, 멀티캐스트 가능한 제 1 네트워크에 구비되어, 멀티캐스트 주소의 멀티캐스트 트래픽을 받아 요청자에게 전송하는 기능을 수행하는 UMTP 서버; 상기 제 1 네트워크와 멀티캐스트 연결성을 갖지 않는 제 2 네트워크에 구비되어, 상기 UMTP 서버와 UDP 터널을 생성함으로써 상기 멀티캐스트 트래픽의 전송을 가능하게 하는 UMTP 에이전트; 및 상기 UMTP 서버로부터 아이피 주소와 포트 번호를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하고, 상기 UMTP 에이전트의 요청에 따라 상기 UMTP 서버 등록 리스트를 상기 UMTP 에이전트로 전송하는 UMTP 등록 서버를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템을 제공한다. The present invention also provides a multicast-based multi-party collaboration system, comprising: a UMTP server provided in a multicast-capable first network and receiving a multicast traffic of a multicast address and transmitting the multicast traffic to a requestor; A UMTP agent provided in a second network having no multicast connectivity with the first network to enable transmission of the multicast traffic by creating a UDP tunnel with the UMTP server; And a UMTP registration server that receives registration information including an IP address and a port number from the UMTP server, generates a UMTP server registration list, and transmits the UMTP server registration list to the UMTP agent according to a request of the UMTP agent. It provides a multicast-based multi-party collaboration system characterized in that.

또한, 본 발명은, NAT/방화벽이 구비된 사설 네트워크와 외부 멀티캐스트 네트워크 간의 멀티캐스트 연결성 확보를 위한 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법에 있어서, (a) 상기 사설 네트워크에 구비된 UMTP 에이전트로부터 상기 멀티캐스트 네트워크에 구비된 UMTP 서버로 연결을 요청하는 단계; 및 (b) 상기 UMTP 에이전트와 상기 UMTP 서버간에 UDP 터널을 생성하는 단계를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법을 제공한다. The present invention also provides a UDP multicast tunneling method of a multicast-based multilateral collaboration system for securing multicast connectivity between a private network having a NAT / firewall and an external multicast network, wherein (a) the private network is provided. Requesting a connection from a UMTP agent to a UMTP server provided in the multicast network; And (b) provides a UDP multicast tunneling method of the multicast-based multi-party collaboration system comprising the step of creating a UDP tunnel between the UMTP agent and the UMTP server.

또한, 본 발명은, NAT/방화벽이 구비된 사설 네트워크와 외부 멀티캐스트 네 트워크 간의 멀티캐스트 연결성 확보를 위한 멀티캐스트 기반 다자간 협업 시스템에 있어서, 상기 사설 네트워크에 구비되어, 상기 사설 네트워크 내의 특정 호스트가 요청하는 멀티캐스트 주소의 멀티캐스트 트래픽을 받아 전송하는 기능을 수행하는 UMTP 에이전트; 상기 외부 멀티캐스트 네트워크에 구비되어, 상기 UMTP 에이전트와 UDP 터널을 생성함으로써 상기 멀티캐스트 트래픽의 전송을 가능하게 하는 UMTP 서버; 상기 UMTP 서버로부터 아이피 주소와 포트 번호를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하고, 상기 UMTP 에이전트의 요청에 따라 상기 UMTP 서버 등록 리스트를 상기 UMTP 에이전트로 전송하는 UMTP 등록 서버; 및 상기 사설 네트워크 내의 상기 호스트에게 멀티캐스트 그룹 주소 리스트를 제공하며, 협업을 위한 가상 공간을 제공하는 베뉴 서버를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템을 제공한다. The present invention also provides a multicast-based multi-party collaboration system for securing multicast connectivity between a private network having a NAT / firewall and an external multicast network, wherein the host is provided in the private network. A UMTP agent configured to receive and transmit multicast traffic of a requesting multicast address; A UMTP server provided in the external multicast network to enable transmission of the multicast traffic by creating a UDP tunnel with the UMTP agent; A UMTP registration server receiving registration information including an IP address and a port number from the UMTP server, generating a UMTP server registration list, and transmitting the UMTP server registration list to the UMTP agent according to a request of the UMTP agent; And it provides a multicast group address list to the host in the private network, and provides a multicast-based multi-party collaboration system comprising a Venue server for providing a virtual space for collaboration.

이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, in adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same components as much as possible, even if shown on different drawings. In addition, in describing the present invention, when it is determined that the detailed description of the related well-known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, the following will describe a preferred embodiment of the present invention, but the technical idea of the present invention is not limited thereto and may be variously modified and modified by those skilled in the art.

도 2는 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UMTP 서버와 UMTP 에이전트 및 UMTP 등록 서버의 블록 구성도이다. 2 is a block diagram of a UMTP server, a UMTP agent, and a UMTP registration server in a multicast-based multi-party collaboration system according to a preferred embodiment of the present invention.

도 2를 참조하면, 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템(10)은 멀티캐스트 가능한 제 1 네트워크(100)와, 상기 제 1 네트워크(100)와 멀티캐스트 연결성을 갖지 않는 제 2 네트워크(120)를 포함한다. 또한 도 2에는 도시되지 않았으나 제 1 네트워크(100)와 제 2 네트워크(120)에는 각각 하나 이상의 엔드 호스트, 즉 협업 단말이 구비된다. Referring to FIG. 2, a multicast-based multi-party collaboration system 10 according to a preferred embodiment of the present invention may include a first multicast-capable first network 100 and a first multicast connection having no multicast connectivity with the first network 100. 2 network 120. Although not shown in FIG. 2, each of the first network 100 and the second network 120 includes one or more end hosts, that is, a collaboration terminal.

제 1 네트워크(100)에는 하나 이상의 UMTP 서버(110)가 구비되는데, UMTP 서버(110)는 멀티캐스트 주소의 멀티캐스트 트래픽을 받아 요청자에게 전송하는 기능을 수행한다. One or more UMTP servers 110 are provided in the first network 100, and the UMTP server 110 receives a multicast traffic of a multicast address and transmits the multicast traffic to the requester.

한편, 제 2 네트워크(120)에는 상기 UMTP 서버(110) 중 어느 하나와 연결되기 위한 UMTP 에이전트(130)가 구비된다. UMTP 에이전트(130)는 UMTP 서버(110) 중 어느 하나와 연결되어 UDP를 이용한 터널을 생성함으로써 제 1 네트워크(100)와 제 2 네트워크(120)간의 데이터그램 전송이 가능하도록 한다. 제 2 네트워크(120)는 제 1 네트워크(100)와 멀티캐스트 연결성이 확보되지 않은 멀티캐스트 가능한 네트워크, 방화벽이 구비되는 네트워크, NAT가 구비되는 네트워크, 및 유니캐스트 네트워크 중 어느 하나일 수 있다. 또한 본 발명에 있어서는 상기 제 1 네트워크(110)와 연결되는 상기 제 2 네트워크(120)는 두 개 이상 포함될 수 있음은 물론이다. On the other hand, the second network 120 is provided with a UMTP agent 130 to be connected to any one of the UMTP server 110. The UMTP agent 130 is connected to any one of the UMTP servers 110 to create a tunnel using UDP to enable datagram transmission between the first network 100 and the second network 120. The second network 120 may be any one of a multicast-capable network, a network with a firewall, a network with NAT, and a unicast network, in which multicast connectivity with the first network 100 is not secured. In addition, in the present invention, of course, two or more second networks 120 connected to the first network 110 may be included.

본 발명의 특징적인 구성에 의하면, 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템(10)은 UMTP 등록 서버(140)를 구비한다. UMTP 등 록 서버(140)는 UMTP 서버(110)로부터 아이피 주소와 포트 번호를 주기적으로 등록받아 이를 저장하고, UMTP 에이전트(130)로부터 요청이 있는 경우 연결 가능한 UMTP 서버(110) 정보를 제공하는 기능을 수행한다. UMTP 등록 서버(140)는 주기적으로 활성화 상태에 있는 UMTP 서버(110)의 등록 정보를 업데이트하고, 일정 시간 이상 특정 UMTP 서버(110)로부터 정보 등록 요청을 받지 못하는 경우 해당 UMTP 서버(110)를 등록된 리스트로부터 삭제하는 기능을 수행한다. According to a characteristic configuration of the present invention, the multicast-based multiparty collaboration system 10 according to the preferred embodiment of the present invention includes a UMTP registration server 140. The UMTP registration server 140 periodically receives and stores an IP address and a port number from the UMTP server 110, and provides UMTP server 110 information that can be connected when requested by the UMTP agent 130. Do this. The UMTP registration server 140 periodically updates the registration information of the UMTP server 110 that is in an active state, and registers the UMTP server 110 when it does not receive the information registration request from the specific UMTP server 110 for a predetermined time. Deletes from a deleted list.

이러한 본 발명의 바람직한 실시예에 따른 멀티 캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법을 설명하면 다음과 같다. The UDP multicast tunneling method in the multicast based multi-party collaboration system according to the preferred embodiment of the present invention is as follows.

도 3은 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법을 도시한 순서도이고, 도 4는 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법 중 UMTP 에이전트와 UMTP 서버 간의 연결 과정을 설명하는 도면이다.3 is a flowchart illustrating a UDP multicast tunneling method in a multicast-based multi-party collaboration system according to a preferred embodiment of the present invention, and FIG. 4 is a UDP in a multicast-based multi-party collaboration system according to a preferred embodiment of the present invention. A diagram illustrating a connection process between a UMTP agent and a UMTP server among multicast tunneling methods.

UMTP 서버(110)는 UMTP 등록 서버(140)로 자신의 아이피 주소와 포트 정보를 포함하는 '등록(register)' 메시지를 전송하고, UMTP 등록 서버(140)는 이를 수신하여 UMTP 서버에 대한 등록 리스트를 생성하여 저장한다(S200). The UMTP server 110 transmits a 'register' message including its IP address and port information to the UMTP registration server 140, and the UMTP registration server 140 receives the registration message for the UMTP server. Create and store (S200).

UMTP 서버(110)는 상기 단계를 주기적으로 수행함으로써 UMTP 등록 서버(140)가 활성 상태에 있는 UMTP 서버 리스트를 갱신할 수 있도록 한다(S210). 이 때 UMTP 등록 서버(140)가 특정 UMTP 서버(110)로부터 일정 시간 이상 '등록' 메시지를 전송받지 못하는 경우에는 그 특정 UMTP 서버(110)는 활성 상태에 있지 않은 것으로 판단하고 UMTP 서버 등록 리스트에서 삭제한다. The UMTP server 110 periodically performs the above steps so that the UMTP registration server 140 can update the list of UMTP servers in the active state (S210). At this time, if the UMTP registration server 140 does not receive a 'registration' message from the specific UMTP server 110 for a predetermined time, it is determined that the specific UMTP server 110 is not in an active state, Delete it.

UMTP 에이전트(130)는 UMTP 등록 서버(140)로부터 UMTP 서버 등록 리스트를 수신한다(S220). The UMTP agent 130 receives a UMTP server registration list from the UMTP registration server 140 (S220).

UMTP 에이전트(130)는 UMTP 서버 등록 리스트를 이용하여 UMTP 서버 등록 리스트 상의 어느 하나의 UMTP 서버(110)와 실질적인 연결 절차를 수행하기 전에, 각 UMTP 서버(110)와의 연결 허가 가능성 및 연결 품질을 검사하도록 한다(S230). 이는 UMTP 서버(110)가 지원 가능한 것보다 더 많은 UMTP 에이전트(130)와 연결되는 것을 방지하고, 최선의 연결 상태를 보장하기 위함이다. 현재의 UMTP는 UMTP 에이전트(130)와 UMTP 서버(110) 간의 제어 절차를 규정하는데, 이는 단지 UMTP 에이전트(130)의 유효성을 검사하는 것에 불과하며, UMTP 서버(110)의 이용가능한 자원을 검사하지는 않는다. 또한, UMTP는 연결 속도도 측정하지 않는다. 이러한 문제를 해결하기 위해 상기 단계를 수행하도록 함이 바람직하다. The UMTP agent 130 checks the connection grantability and connection quality with each UMTP server 110 before performing the actual connection procedure with any one UMTP server 110 on the UMTP server registration list using the UMTP server registration list. To do (S230). This is to prevent the UMTP server 110 from connecting with more UMTP agents 130 than can be supported, and to ensure the best connection state. Current UMTP prescribes a control procedure between the UMTP agent 130 and the UMTP server 110, which merely validates the UMTP agent 130 and does not check the available resources of the UMTP server 110. Do not. UMTP also does not measure connection speeds. It is desirable to perform the above steps to solve this problem.

이러한 과정을 도 4를 참조하여 설명하면 다음과 같다. This process will be described with reference to FIG. 4.

UMTP 에이전트(130)는 먼저, UMTP 등록 서버(140)로부터 수신한 UMTP 서버 등록 리스트 상의 UMTP 서버(110)와의 연결 상태를 점검하는 신호를 전송한다(S230-1). 이를 위해 UMTP 에이전트(130)는 각각의 UMTP 서버(110)로 연결 상태 점검을 위한 점검 메시지(본 발명에서는 이를 'VISIT 메시지'로 호칭하도록 한다)를 전송한다. 이 VISIT 메시지에는 UMTP 에이전트(130)의 지역 시간 정보가 포함되는데, 이는 UMTP 서버(110)와의 연결 품질을 검사하기 위한 일 방법으로 UMTP 서버(110)와의 거리를 확인하기 위함이다. The UMTP agent 130 first transmits a signal for checking a connection state with the UMTP server 110 on the UMTP server registration list received from the UMTP registration server 140 (S230-1). To this end, the UMTP agent 130 transmits a check message (hereinafter, referred to as a 'VISIT message') for checking a connection state to each UMTP server 110. The VISIT message includes local time information of the UMTP agent 130, which is to check the distance from the UMTP server 110 as a method for checking the connection quality with the UMTP server 110.

VISIT 메시지를 정상적으로 수신한 UMTP 서버(110)는 UMTP 에이전트(130)로 점검 확인 메시지(본 발명에서는 이를 'VISIT_ACK 메시지'로 호칭하도록 한다)를 송신한다(S230-2). VISIT_ACK 메시지에는 VISIT 메시지로부터 획득한 시간 정보가 포함된다. UMTP 에이전트(130)는 UMTP 서버(110)로부터 VISIT_ACK 메시지를 수신함으로써, UMTP와의 왕복 시간(Round Trip Time : RTT)을 계산할 수 있고 이를 통해 해당 UMTP 서버(110)와의 거리 정보를 알 수 있다. 이러한 거리 정보를 이용하여 UMTP 에이전트(130)는 UMTP 서버(110)와의 연결 품질을 알 수 있다.The UMTP server 110 which normally receives the VISIT message transmits a check confirmation message (in the present invention, this is referred to as a 'VISIT_ACK message') to the UMTP agent 130 (S230-2). The VISIT_ACK message includes time information obtained from the VISIT message. The UMTP agent 130 may calculate a round trip time (RTT) with the UMTP by receiving the VISIT_ACK message from the UMTP server 110, and thus may know the distance information with the corresponding UMTP server 110. Using the distance information, the UMTP agent 130 may know the connection quality with the UMTP server 110.

다시 도 3을 참조하면, 다음으로 UMTP 에이전트(130)는 UMTP 서버(110)와의 연결을 시도한다(S240). 이러한 연결 시도는 UMTP 서버(110)와 거리가 가까운 순서로 수행되는 것이 바람직하다. UMTP 에이전트(130)와 UMTP 서버(110)와의 연결에 있어서는 UMTP 서버(110)의 자원 이용 가능성에 기초하여 연결 허가에 대한 제어가 이루어짐이 바람직하다. 도 4를 참조하여 상기 S240 단계를 구체적으로 설명하면, UMTP 에이전트(130)는 UMTP 서버(110)로 연결 요청 신호(본 발명에서는 이를 'PROBE 메시지'라고 호칭하도록 한다.)를 전송한다(S240-1). UMTP 서버(110)는 PROBE 메시지를 전송한 UMTP 에이전트(130)를 지원할 수 있는 가용 자원이 존재하는지를 판별한다(S240-2). UMTP 서버(110)의 현재 가용 자원이 충분한 경우에는 PROBE 메시지에 대해 연결 허가 신호(본 발명에서는 이를 'PROBE_ACK 메시지' 한다)를 UMTP 에이전트(130)로 전송하고(S240-3), 가용 자원이 충분하지 않은 경우에는 연결 불가 신호(본 발명에서는 이를 'PROBE_NACK 메시지'라 한다)를 UMTP 에이전트(130)로 전송한다(S240-4). Referring to FIG. 3 again, the UMTP agent 130 next attempts to connect with the UMTP server 110 (S240). The connection attempt is preferably performed in the order of close proximity to the UMTP server 110. In the connection between the UMTP agent 130 and the UMTP server 110, it is preferable to control connection permission based on the resource availability of the UMTP server 110. 4, the UMTP agent 130 transmits a connection request signal to the UMTP server 110 (in the present invention, this is referred to as a 'PROBE message') (S240-). One). The UMTP server 110 determines whether there are available resources that can support the UMTP agent 130 that has transmitted the PROBE message (S240-2). If the current available resources of the UMTP server 110 is sufficient, the connection permission signal (in the present invention, 'PROBE_ACK message') for the PROBE message is transmitted to the UMTP agent 130 (S240-3), the available resources are sufficient If not, a connection not available signal (in the present invention, this is called a 'PROBE_NACK message') is transmitted to the UMTP agent 130 (S240-4).

이러한 과정을 통해 UMTP 에이전트(130)는 최적의 UMTP 서버(110)와 연결되어 UDP 터널을 생성함으로써 네트워크 연결성을 확보한다(S250).Through this process, the UMTP agent 130 is connected to the optimal UMTP server 110 to secure the network connectivity by creating a UDP tunnel (S250).

한편, UMTP에서는 각각의 UMTP 에이전트(130)가 UMTP 서버(110)에 주기적으로 JOIN_GROUP 메시지를 전송함으로써 UMTP 서버(110)와의 연결을 유지하는 책임을 진다. 이러한 메커니즘은 UMTP 서버(110)가 갑작스럽게 고장나는 때에는 한계가 존재한다. 이러한 경우에 UMTP는 JOIN_GROUP 메시지를 위한 어떠한 승인(acknowledgement)도 규정하고 있지 않기 때문에 UMTP 서버(110)는 UMTP 에이전트(130)로 어떠한 통지도 전송하지 않은 상태로 종료하고, UMTP 에이전트(130)도 또한 UMTP 서버(110)의 고장을 인지하지 못하는 문제가 발생한다. Meanwhile, in UMTP, each UMTP agent 130 is responsible for maintaining a connection with the UMTP server 110 by periodically sending a JOIN_GROUP message to the UMTP server 110. This mechanism is limited when the UMTP server 110 suddenly fails. In this case, since UMTP does not specify any acknowledgment for the JOIN_GROUP message, the UMTP server 110 terminates without sending any notification to the UMTP agent 130, and the UMTP agent 130 also There is a problem that does not recognize the failure of the UMTP server 110.

이러한 문제를 해결하기 위해, 본 발명에 있어서는 UMTP 서버(110)가 UMTP 에이전트(110)의 JOIN_GROUP 메시지에 대해 승인하는 메시지('JOIN_ACK' 메시지라 호칭한다)를 전송하도록 하는 과정을 추가하도록 한다. In order to solve this problem, in the present invention, the UMTP server 110 adds a process of transmitting a message (called 'JOIN_ACK' message) acknowledging the JOIN_GROUP message of the UMTP agent 110.

도 5는 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법에 있어서 UMTP 에이전트와 UMTP 서버와의 연결을 확보하는 방법을 도시한 도면이다. FIG. 5 is a diagram illustrating a method for securing a connection between a UMTP agent and a UMTP server in a UDP multicast tunneling method of a multicast-based multilateral collaboration system according to an exemplary embodiment of the present invention.

먼저 UMTP 에이전트(130)는 제 1 UMTP 서버(110a)와 UDP 터널을 생성하여 연결되어 있는 상태라고 가정한다. UMTP 에이전트(130)는 UMTP 등록 서버(140)로부터 UMTP 서버 등록 리스트를 받은 상태이며, UMTP 서버 등록 리스트는 주기적으로 재수신받는 것도 가능하다. First, it is assumed that the UMTP agent 130 is connected to the first UMTP server 110a by creating a UDP tunnel. The UMTP agent 130 has received a UMTP server registration list from the UMTP registration server 140, and the UMTP server registration list may be periodically received again.

UMTP 에이전트(130)는 제 1 UMTP 서버(110a)로 JOIN_GROUP 메시지를 주기적 으로 전송하고, 제 1 UMTP 서버(110a)는 UMTP 에이전트(130)로 JOIN_ACK 메시지를 전송한다. 제 1 UMTP 서버(110a)에 문제가 발생한 경우, UMTP 에이전트(130)는 제 1 UMTP 서버(110a)로부터 JOIN_ACK 메시지를 수신받지 못하게 된다. JOIN_ACK 메시지를 수신받지 못한 경우 또는 추가적인 JOIN_GROUP 메시지의 송신에도 JOIN_ACK 메시지를 수신받지 못한 경우, UMTP 에이전트(130)는 제 1 UMTP 서버(110a)와의 연결이 불가한 것으로 판정하고 다른 UMTP 서버(110b, 110c, 110d)와의 연결을 시도한다. 이 경우 UMTP 에이전트(130)는 이미 갖고 있는 다른 UMTP 서버(110b, 110c, 110d)에 대한 연결 점검 결과를 이용하여 가장 연결 품질이 좋은 UMTP 서버로의 연결을 시도할 수도 있으며, 새롭게 다른 UMTP 서버(110b, 110c, 110d)로 VISIT 메시지를 전송함으로써 연결 상태를 점검한 후 최적의 UMTP 서버로 연결요청신호인 PROBE 메시지를 전송하여 연결을 시도할 수도 있다. The UMTP agent 130 periodically transmits a JOIN_GROUP message to the first UMTP server 110a, and the first UMTP server 110a transmits a JOIN_ACK message to the UMTP agent 130. When a problem occurs in the first UMTP server 110a, the UMTP agent 130 may not receive a JOIN_ACK message from the first UMTP server 110a. If the JOIN_ACK message is not received or if the JOIN_ACK message is not received even after the transmission of the additional JOIN_GROUP message, the UMTP agent 130 determines that the connection with the first UMTP server 110a is impossible and the other UMTP servers 110b and 110c are not received. , Try to connect to 110d). In this case, the UMTP agent 130 may attempt to connect to the UMTP server having the best connection quality by using the connection check result of other UMTP servers 110b, 110c, and 110d already owned. 110b, 110c, 110d) by checking the connection status by sending a VISIT message may be attempted by sending a PROBE message, a connection request signal to the optimal UMTP server.

다음으로 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템 및 UDP 멀티캐스트 터널링 방법을 설명하도록 한다. 이러한 본 발명의 또 다른 실시예는 기본적인 구성 요소의 기능과 방법은 전술한 바와 유사하므로 차이점을 위주로 설명하도록 한다. Next, a multicast-based multi-party collaboration system and a UDP multicast tunneling method according to another preferred embodiment of the present invention will be described. In still another embodiment of the present invention, since the functions and methods of the basic components are similar to those described above, the differences will be mainly described.

인터넷 통신에서 방화벽이 존재할 경우, 방화벽이 존재하는 네트워크와 다른 네트워크 간에는 멀티캐스트 연결성이 제공되지 않는다. 일반적으로 방화벽은 외부에서 내부로 들어오는 트래픽은 거부하고, 내부에서 외부로 나가는 트래픽은 허용하는 방식으로 동작한다. 이에 더불어 내부에서 외부로 나가는 트래픽 정보를 기억하여 이 트래픽에 대한 응답으로 오는 외부 트래픽을 허용한다. If a firewall is present in Internet communication, multicast connectivity is not provided between the network where the firewall exists and other networks. In general, a firewall works by denying traffic from outside to inside and allowing traffic from inside to outside. In addition, it remembers the traffic information from the inside to the outside and allows the external traffic coming in response to this traffic.

한편, NAT(Network Address Translator)는 OSI 모델의 3계층인 네트워크 계층에서 사설 IP 주소를 공인 IP 주소로 변환하는데 사용하는 통신망의 주소 변환기이다. 공개된 인터넷과 사설망 사이에 방화벽(Firewall)을 설치하여 외부 공격으로부터 사용자의 통신망을 보호하는 기본적인 수단으로 활용할 수 있다. 이때 외부 통신망 즉 인터넷망과 연결하는 장비인 라우터에 NAT를 설정할 경우 라우터는 자신에게 할당된 공인 IP주소만 외부로 알려지게 하고, 내부에서는 사설 IP주소만 사용하도록 하여 필요시에 이를 서로 변환시켜 준다. 따라서 외부 침입자가 공격하기 위해서는 사설망의 내부 사설 IP주소를 알아야 하기 때문에 공격이 불가능해지므로 내부 네트워크를 보호할 수 있다. On the other hand, NAT (Network Address Translator) is an address translator of a communication network used to convert a private IP address into a public IP address in the network layer, which is the third layer of the OSI model. By installing a firewall between the public Internet and a private network, it can be used as a basic means of protecting a user's network from external attacks. At this time, if NAT is set in the router, which is a device that connects to an external communication network, that is, the Internet network, the router only makes the public IP address assigned to itself known outside, and internally uses only the private IP address and converts it to each other when necessary. . Therefore, it is possible to protect the internal network because the attack is impossible because the external intruder needs to know the private IP address of the private network in order to attack.

NAT 및 방화벽이 존재하는 경우 내부의 사설 네트워크와 외부 네트워크의 연결 상태는 내부 호스트가 외부 호스트로 연결을 요청할 때만 생성되고 필터링 규칙은 네트워크 매니저에 의해 수동적으로 조절된다. 멀티캐스트 기반의 다자간 협업 시스템에 있어서는 영상과 음성을 각각 분리된 멀티캐스트 채널을 통해 전송하고 각각의 미디어 스트림은 RTP/RTCP(Real-time Transport Protocol/RTP Control Protocol) 쌍과 함께 작동한다. 따라서 사설 네트워크로 멀티캐스트 트래픽을 전송하기 위해서는 NAT와 방화벽은 각각의 미디어 트래픽에 대한 통신을 허용하는 많은 필터링 규칙을 유지할 필요가 있다. 그런데, 네트워크 매니저는 많은 내부 보안의 문제로 인해 멀티캐스트 트래픽 전송을 위한 많은 채널 또는 포트를 유지하거나 개방시키기를 꺼린다. In the presence of NAT and firewall, the connection state between the internal private network and the external network is created only when the internal host requests a connection to the external host, and filtering rules are manually controlled by the network manager. In multicast-based multiparty collaboration systems, video and audio are transmitted over separate multicast channels, and each media stream works in conjunction with a Real-time Transport Protocol / RTP Control Protocol (RTP / RTCP) pair. Thus, in order to send multicast traffic over a private network, NAT and firewalls need to maintain a number of filtering rules that allow communication for each media traffic. However, network managers are reluctant to maintain or open many channels or ports for multicast traffic transmission due to many internal security issues.

이러한 이유로 인해, NAT/방화벽을 우회하여 멀티캐스트 트래픽이 가능하도 록 하기 위해서는 다음과 같은 특징이 요구된다. 먼저, 연결은 사설 네트워크의 호스트에 의해 개시되어야 함에 따라 단지 NAT 내부의 호스트가 NAT 외부의 호스트로 패킷을 전송하여 연결 상태를 만들 수 있고, 그 패킷을 수신한 외부 호스트가 내부 호스트로 UDP 패킷을 전송할 수 있다. 다음으로 내부 및 외부 호스트의 통신 채널은 가능한한 최소한의 개방된 포트를 사용하여야 한다. 따라서 제어가 용이한 UDP 터널 트래픽을 만드는 것이 방화벽을 우회하기 위한 중요한 열쇠가 된다. For this reason, the following features are required to enable multicast traffic by bypassing NAT / firewall. First, as the connection must be initiated by a host in the private network, only a host inside the NAT can send a packet to a host outside the NAT to establish a connection state, and the external host receiving the packet can send a UDP packet to the internal host. Can transmit Next, internal and external host communication channels should use the least open ports possible. Therefore, making controllable UDP tunnel traffic is an important key to bypassing the firewall.

이러한 요건을 충족시키기 위해, 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템 및 방법은, 사설 네트워크에 구비된 UMTP 에이전트가 외부의 UMTP 서버로 패킷을 전송하여 연결을 시작하고, UMTP 에이전트와 UMTP 서버 간에 UDP 터널을 생성하여 정해진 포트를 통해 데이터를 교환하도록 한다. UMTP의 데이터 캡슐화가 이러한 데이터의 교환을 가능하게 한다. In order to meet these requirements, the multicast-based multi-party collaboration system and method according to another preferred embodiment of the present invention, the UMTP agent provided in the private network sends a packet to the external UMTP server to initiate the connection, UMTP Create UDP tunnel between agent and UMTP server to exchange data through designated port. The data encapsulation of UMTP enables this exchange of data.

이러한 구성을 보다 상세히 설명하면 다음과 같다. This configuration is described in more detail as follows.

도 6은 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템의 블록 구성도이다. 6 is a block diagram of a multicast-based multiparty collaboration system according to another preferred embodiment of the present invention.

본 발명의 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템(20)은, 공용 멀티캐스트 네트워크(300)와, NAT/방화벽(360)이 구비된 사설 네트워크(320)를 포함한다. The multicast-based multi-party collaboration system 20 according to another embodiment of the present invention includes a public multicast network 300 and a private network 320 provided with a NAT / firewall 360.

공용 멀티캐스트 네트워크(300)에는 UMTP 서버(310)가 구비되고, 멀티캐스트 데이터를 생산하는 생산자 호스트(312a, 312b, 312c)가 포함된다. 사설 네트워크(320)에는 UMTP 에이전트(330)가 구비되고, 멀티캐스트 데이터를 요청하여 수신 받는 소비자 호스트(332)가 포함된다. The public multicast network 300 includes a UMTP server 310 and includes producer hosts 312a, 312b, and 312c that produce multicast data. The private network 320 includes a UMTP agent 330 and includes a consumer host 332 that requests and receives multicast data.

UMTP 등록 서버(340)는 UMTP 서버(310)로부터 주기적으로 아이피 주소와 포트 번호를 등록받고, UMTP 에이전트(330)로 UMTP 서버 등록 리스트를 전송하는 기능을 수행한다. The UMTP registration server 340 periodically receives an IP address and a port number from the UMTP server 310 and transmits a UMTP server registration list to the UMTP agent 330.

UMTP 에이전트(330)는 소비자 호스트(332)로부터 멀티캐스트 주소에 대한 요청을 받아 이를 UMTP 서버(310)로 전송하는 기능을 수행한다. UMTP 에이전트(330)는 UMTP 등록 서버(340)로부터 UMTP 서버(310)의 주소를 받아 UMTP 서버(310)와 접속을 생성하는데, UMTP 서버(310)와 UMTP 에이전트(330)는 서로 간에 UDP 터널(370)을 생성한다. UMTP 서버(310)는 각 네트워크에서 발생하는 멀티캐스트 데이터를 캡슐화하여 서로에게 전송하고, 전송된 캡슐화된 데이터는 역캡슐화되어 각 네트워크에 멀티캐스트 전송됨으로써 상호 간에 멀티캐스트 연결성을 제공한다. The UMTP agent 330 receives a request for a multicast address from the consumer host 332 and transmits the request to the UMTP server 310. The UMTP agent 330 receives the address of the UMTP server 310 from the UMTP registration server 340 and creates a connection with the UMTP server 310. The UMTP server 310 and the UMTP agent 330 may use a UDP tunnel ( 370). The UMTP server 310 encapsulates and transmits multicast data generated in each network to each other, and the encapsulated data transmitted is decapsulated and multicasted to each network to provide multicast connectivity.

베뉴 서버(350)는 제공되는 협업 서비스들을 이용하여 참가자들이 공동 작업을 할 수 있는 가상의 공간을 마련하는 등 협업 환경을 중앙 집중 방식으로 관리하는 기능을 수행한다. 협업 환경에 참여하는 각 호스트는 생산자-소비자 모델에 따라 영상 또는 음성 정보를 제공하고 이용한다. 베뉴 서버(350)는 제공 가능한 협업 서비스에 대한 정보를 등록하여 저장하고 이러한 정보를 협업 서비스를 제공받기 원하는 호스트에 제공한다. 이를 위해 베뉴 서버(350)는 멀티캐스트 그룹에 대한 주소 정보를 구비한다. Venue server 350 performs a function of centrally managing a collaborative environment, such as providing a virtual space in which participants can collaborate using provided collaboration services. Each host participating in the collaborative environment provides and uses video or audio information according to the producer-consumer model. Venue server 350 registers and stores information on the cooperative service that can be provided, and provides the information to a host who wants to receive the cooperative service. To this end, the Venue Server 350 is provided with address information for the multicast group.

이러한 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법을 설명하면 다음과 같다. The UDP multicast tunneling method in the multicast based multi-party collaboration system according to another preferred embodiment of the present invention is as follows.

도 7은 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 UDP 멀티캐스트 터널링 방법을 도시한 순서도이다. 7 is a flowchart illustrating a UDP multicast tunneling method in a multicast-based multiparty collaboration system according to a preferred embodiment of the present invention.

먼저, UMTP 에이전트(330)가 포함된 사설 네트워크(320)에 NAT(360)가 존재하는지 여부를 검출하는 단계가 선행될 수 있다. UMTP 서버(310)는 자신에게 현재 연결된 UMTP 에이전트(330)의 리스트를 관리한다. NAT(360)의 존재를 파악하기 위해서 PROBE 패킷의 정보를 이용할 수 있다. PROBE 패킷은 UMTP 에이전트(330)로부터 UMTP 서버(310)로 전송되는데, PROBE 패킷에는 UMTP 에이전트(330)의 소스 주소(source address)가 포함된다. UMTP 서버(310)가 PROBE 패킷을 수신하면, PROBE 패킷에 포함된 소스 주소와 그 소켓으로부터 추출된 주소를 비교한다. 만약, 두개의 주소가 다르다면, UMTP 서버(310)가 NAT의 배후에 위치하는 것으로 판단한다. First, detecting whether the NAT 360 exists in the private network 320 including the UMTP agent 330 may be preceded. The UMTP server 310 manages a list of UMTP agents 330 currently connected to it. Information of the PROBE packet may be used to determine the existence of NAT 360. The PROBE packet is transmitted from the UMTP agent 330 to the UMTP server 310, and the PROBE packet includes a source address of the UMTP agent 330. When the UMTP server 310 receives the PROBE packet, the UMTP server 310 compares the source address included in the PROBE packet with the address extracted from the socket. If the two addresses are different, it is determined that the UMTP server 310 is located behind the NAT.

UMTP 등록 서버(340)는 UMTP 서버(310)로부터 아이피 주소 및 포트 번호를 전송받아 등록한다(S400). UMTP 서버(310)의 등록 정보는 주기적으로 갱신되는 것이 바람직하다. The UMTP registration server 340 receives and registers an IP address and a port number from the UMTP server 310 (S400). The registration information of the UMTP server 310 is preferably updated periodically.

사설 네트워크(320) 내에 위치하는 소비자 호스트(332)는 베뉴 서버(350)로부터 멀티캐스트 그룹 주소 리스트(350)를 수신한다(S410). 이후 소비자 호스트(332)는 UMTP 에이전트(330)로 원하는 멀티캐스트 주소에 대한 접속을 요청한다(S420). The consumer host 332 located in the private network 320 receives the multicast group address list 350 from the venue server 350 (S410). Thereafter, the consumer host 332 requests the UMTP agent 330 to access the desired multicast address (S420).

UMTP 에이전트(330)는 UMTP 등록 서버(340)로부터 UMTP 서버 등록 리스트를 수신하고, UMTP 서버 등록 리스트에 포함된 어느 하나의 UMTP 서버(310)와 UDP 터널(370)을 생성하여 연결한다(S430). 이러한 S430 단계 중, UMTP 에이전트(330)까 UMTP 등록 서버(340)로부터 UMTP 서버 등록 리스트를 수신하는 것은 최초 S400 단계와 동시 또는 그 전후에 이루어지는 것도 가능함은 물론이다. The UMTP agent 330 receives a UMTP server registration list from the UMTP registration server 340 and generates and connects one of the UMTP servers 310 and the UDP tunnel 370 included in the UMTP server registration list (S430). . Of these steps S430, the UMTP agent 330 receives the UMTP server registration list from the UMTP registration server 340 may be performed at the same time or before or after the first step S400.

UMTP 서버(310)는 멀티캐스트 데이터를 소비자 호스트(332)에서 요청된 멀티캐스트 주소로부터 수신하여 UMTP 에이전트(330)로 전송한다(S440). The UMTP server 310 receives the multicast data from the multicast address requested by the consumer host 332 and transmits the multicast data to the UMTP agent 330 (S440).

UMTP 에이전트(330)는 멀티캐스트 데이터를 소비사 호스트(332)로 전송한다(450). The UMTP agent 330 transmits the multicast data to the consumer host 332 (450).

이러한 과정을 통해 공용 멀티캐스트 네트워크(300)와 NAT/방화벽 기반의 사설 네트워크(320) 간의 멀티캐스트 연결성이 제공되며, 이렇게 형성된 UDP 터널(370)을 이용하여 데이터의 전송이 가능하게 된다.Through this process, multicast connectivity between the public multicast network 300 and the NAT / firewall-based private network 320 is provided, and data can be transmitted using the UDP tunnel 370 thus formed.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and various modifications, changes, and substitutions may be made by those skilled in the art without departing from the essential characteristics of the present invention. will be. Accordingly, the embodiments disclosed in the present invention and the accompanying drawings are not intended to limit the technical spirit of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by the embodiments and the accompanying drawings. . The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

이상에서 설명한 바와 같이 본 발명에 의하면, 멀티캐스트 기반 다자간 협업 환경의 유디피 멀티캐스트 터널링을 이용한 멀티캐스트 연결성을 제공함에 있어서, 이용가능한 UMTP 서버의 정보를 UMTP 등록 서버를 통해 UMTP 에이전트가 전송받을 수 있으므로 효과적인 연결이 가능하도록 한다. 또한, UMTP 에이전트가 UMTP 서버로 접속 요청시 UMTP 서버가 이에 대해 응답하는 신호를 생성함으로써 UMTP 서버와 UMTP 에이전트 간의 접속 실패를 방지할 수 있다. 또한, 본 발명에 의하면 UMTP 에이전트와 UMTP 서버의 접속이 해제된 경우 다른 UMTP 서버와의 연결이 가능하도록 제어함으로써 다자간 협업 시스템의 멀티캐스트 연결성의 안정화를 도모할 수 있다. As described above, according to the present invention, in providing multicast connectivity using the U-PD multicast tunneling of the multicast-based multi-party collaboration environment, the UMTP agent can receive information of the available UMTP server through the UMTP registration server. Therefore, effective connection is possible. In addition, when the UMTP agent requests a connection to the UMTP server, the UMTP server generates a signal in response to the UMTP server, thereby preventing a connection failure between the UMTP server and the UMTP agent. In addition, according to the present invention, when the connection between the UMTP agent and the UMTP server is released, it is possible to stabilize the multicast connectivity of the multilateral collaboration system by controlling the connection with another UMTP server.

또한, 본 발명에 의하면, NAT/방화벽이 포함된 사설 네트워크와 공용 멀티캐스트 네트워크 간에 UDP 터널을 형성하여 멀티캐스트 연결성을 제공할 수 있게 된다. In addition, according to the present invention, a UDP tunnel can be formed between a private network including a NAT / firewall and a public multicast network to provide multicast connectivity.

Claims (16)

멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법에 있어서, In the UDP multicast tunneling method of a multicast based multiparty collaboration system, (a) UMTP 등록 서버가 UMTP 서버로부터 아이피 주소 및 포트 정보를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하는 단계;(a) the UMTP registration server receiving registration information including IP address and port information from the UMTP server to generate a UMTP server registration list; (b) UMTP 에이전트가 상기 UMTP 등록 서버로부터 상기 UMTP 서버 등록 리스트를 수신하는 단계;(b) a UMTP agent receiving the UMTP server registration list from the UMTP registration server; (c) 상기 UMTP 에이전트가 상기 UMTP 서버 등록 리스트에 포함된 상기 UMTP 서버와의 연결 허가 가능성을 점검하는 단계; 및(c) checking, by the UMTP agent, the possibility of granting connection with the UMTP server included in the UMTP server registration list; And (d) 상기 UMTP 에이전트가 상기 UMTP 서버 등록 리스트에 포함된 상기 UMTP 서버 중 어느 하나에 대해 연결을 시도하여 UDP 터널을 생성하는 단계(d) the UMTP agent attempting to connect to any one of the UMTP servers included in the UMTP server registration list to generate a UDP tunnel; 를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of a multicast-based multi-party collaboration system comprising a. 제 1 항에 있어서, The method of claim 1, 상기 UMTP 등록 서버는 상기 UMTP 서버로부터 주기적으로 상기 등록 정보를 수신받아 상기 UMTP 서버 등록 리스트를 갱신하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.The UMTP registration server periodically receives the registration information from the UMTP server and updates the UMTP server registration list, characterized in that the UDP multicast tunneling method of the multicast based multi-party collaboration system. 제 1 항에 있어서, The method of claim 1, 상기 (c) 단계는, In step (c), (c1) 상기 UMTP 에이전트가 상기 UMTP 서버 등록 리스트 상의 상기 UMTP 서버로 연결 상태를 점검하기 위한 점검 메시지를 전송하는 단계; 및(c1) the UMTP agent sending a check message for checking a connection state to the UMTP server on the UMTP server registration list; And (c2) 상기 (c1) 단계에 따른 상기 점검 메시지를 수신한 상기 UMTP 서버가 상기 UMTP 에이전트로 점검 확인 메시지를 전송하는 단계(c2) the UMTP server receiving the check message according to step (c1) transmitting a check confirmation message to the UMTP agent 를 포함하여 이루어지는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of a multicast-based multi-party collaboration system, characterized in that comprises a. 제 3 항에 있어서, The method of claim 3, wherein 상기 (c1) 단계의 상기 점검 메시지에는 상기 UMTP 에이전트의 지역 시간 정보가 포함되고, 상기 (c2) 단계의 상기 점검 확인 메시지에는 상기 점검 메시지에서 획득한 상기 지역 시간 정보를 포함됨으로써 상기 UMTP 에이전트는 상기 UMTP 서버와의 왕복시간(RTT)을 계산함으로써 연결 품질을 검사하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.The check message of step (c1) includes local time information of the UMTP agent, and the check confirmation message of step (c2) includes the local time information obtained from the check message. UDP multicast tunneling method of a multicast-based multiparty collaboration system, characterized in that the connection quality is checked by calculating a round trip time (RTT) with a UMTP server. 제 4 항에 있어서, The method of claim 4, wherein 상기 (d) 단계는, 상기 UMTP 서버 중 상기 왕복시간(RTT)이 가장 작은 순서대로 시도되는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.Step (d), UDP multicast tunneling method of the multicast based multi-party collaboration system, characterized in that the round trip time (RTT) of the UMTP server in the smallest order. 제 1 항에 있어서, The method of claim 1, 상기 (d) 단계는, In step (d), (d1) 상기 UMTP 에이전트에서 상기 UMTP 서버로 연결 요청 신호를 전송하는 단계; 및(d1) transmitting a connection request signal from the UMTP agent to the UMTP server; And (d2) 상기 연결 요청 신호를 전송받은 상기 UMTP 서버에 가용자원이 존재하는 경우에는 상기 UMTP 서버가 상기 UMTP 에이전트로 연결 허가 신호를 전송하고, 가용자원이 존재하지 않는 경우에는 연결 불가 신호를 전송하는 단계(d2) If an available resource exists in the UMTP server that has received the connection request signal, the UMTP server transmits a connection permission signal to the UMTP agent; step 를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of a multicast-based multi-party collaboration system comprising a. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서, The method according to any one of claims 1 to 6, (e) 상기 UMTP 에이전트가 상기 UDP 터널을 생성하여 연결된 상기 UMTP 서버로 JOIN_GROUP 메시지를 전송하는 단계; 및(e) the UMTP agent generating the UDP tunnel and transmitting a JOIN_GROUP message to the connected UMTP server; And (f) 상기 UMTP 서버가 상기 JOIN_GROUP 메시지에 대해 승인하는 메시지(JOIN_ACK 메시지)를 상기 UMTP 에이전트로 전송하는 단계(f) transmitting, by the UMTP server, a message (JOIN_ACK message) acknowledging the JOIN_GROUP message to the UMTP agent. 를 추가로 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of the multicast-based multi-party collaboration system, characterized in that it further comprises. 제 7 항에 있어서, The method of claim 7, wherein (g) 상기 UMTP 에이전트가 상기 UMTP 서버로부터 상기 JOIN_ACK 메시지를 수신받지 못한 경우 연결이 해제된 것으로 판단하고 새로운 UMTP 서버와의 연결을 시도하는 단계(g) determining that the connection is released when the UMTP agent does not receive the JOIN_ACK message from the UMTP server and attempts to connect with a new UMTP server. 를 추가로 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of the multicast-based multi-party collaboration system, characterized in that it further comprises. 멀티캐스트 기반 다자간 협업 시스템에 있어서, In the multicast-based multilateral collaboration system, 멀티캐스트 가능한 제 1 네트워크에 구비되어, 멀티캐스트 주소의 멀티캐스트 트래픽을 받아 요청자에게 전송하는 기능을 수행하는 UMTP 서버;A UMTP server provided in a multicast-capable first network and receiving a multicast traffic of a multicast address and transmitting the multicast traffic to a requester; 상기 제 1 네트워크와 멀티캐스트 연결성을 갖지 않는 제 2 네트워크에 구비되어, 상기 UMTP 서버와 UDP 터널을 생성함으로써 상기 멀티캐스트 트래픽의 전송을 가능하게 하는 UMTP 에이전트; 및A UMTP agent provided in a second network having no multicast connectivity with the first network to enable transmission of the multicast traffic by creating a UDP tunnel with the UMTP server; And 상기 UMTP 서버로부터 아이피 주소와 포트 번호를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하고, 상기 UMTP 에이전트의 요청에 따라 상기 UMTP 서버 등록 리스트를 상기 UMTP 에이전트로 전송하는 UMTP 등록 서버A UMTP registration server that receives registration information including an IP address and a port number from the UMTP server, generates a UMTP server registration list, and transmits the UMTP server registration list to the UMTP agent at the request of the UMTP agent. 를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템.Multicast-based multi-party collaboration system comprising a. 제 9 항에 있어서, The method of claim 9, 상기 UMTP 에이전트는 상기 UMTP 서버로 연결 상태 점검 메시지를 전송하고, 상기 UMTP 서버는 상기 UMTP 에이전트에 대해 상기 연결 상태 점검 메시지 수신에 따른 점검 확인 메시지를 송신하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템.And the UMTP agent transmits a connection status check message to the UMTP server, and the UMTP server transmits a check confirmation message upon receipt of the connection status check message to the UMTP agent. 제 9 항에 있어서, The method of claim 9, 상기 UMTP 에이전트는 상기 UMTP 서버로 상기 UDP 터널 생성을 위한 연결 요청을 하고, 상기 UMTP 서버는 가용 자원이 존재하는 경우에만 상기 UMTP 에이전트로 연결 허가 신호를 전송하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템.The UMTP agent makes a connection request for generating the UDP tunnel to the UMTP server, and the UMTP server transmits a connection permission signal to the UMTP agent only when there are available resources. . 제 9 항에 있어서, The method of claim 9, 상기 UMTP 에이전트와 상기 UMTP 서버 간에 상기 UDP 터널이 생성되어 연결된 경우, 상기 UMTP 서버는 상기 UMTP 에이전트의 JOIN_GROUP 메시지에 대해 승인하는 메시지를 상기 UMTP 에이전트로 전송하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템.And when the UDP tunnel is generated and connected between the UMTP agent and the UMTP server, the UMTP server transmits a message acknowledging a JOIN_GROUP message of the UMTP agent to the UMTP agent. NAT/방화벽이 구비된 사설 네트워크와 외부 멀티캐스트 네트워크 간의 멀티캐스트 연결성 확보를 위한 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법에 있어서, In the UDP multicast tunneling method of a multicast-based multiparty collaboration system for securing multicast connectivity between a private network having a NAT / firewall and an external multicast network, (a) 상기 사설 네트워크에 구비된 UMTP 에이전트로부터 상기 멀티캐스트 네트워크에 구비된 UMTP 서버로 연결을 요청하는 단계; 및(a) requesting a connection from a UMTP agent provided in the private network to a UMTP server provided in the multicast network; And (b) 상기 UMTP 에이전트와 상기 UMTP 서버간에 UDP 터널을 생성하는 단계(b) creating a UDP tunnel between the UMTP agent and the UMTP server 를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of a multicast-based multi-party collaboration system comprising a. 제 13 항에 있어서, The method of claim 13, (c) 상기 UMTP 서버로부터 상기 UMTP 에이전트로 멀티캐스트 데이터를 캡슐화하여 전송하고, 상기 UMTP 에이전트는 캡슐화된 상기 멀티캐스트 데이터를 역캡슐화하여 상기 사설 네트워크 내로 전송하는 단계(c) encapsulating and transmitting multicast data from the UMTP server to the UMTP agent, and the UMTP agent decapsulating the encapsulated multicast data and transmitting the encapsulated multicast data into the private network. 를 추가로 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of the multicast-based multi-party collaboration system, characterized in that it further comprises. 제 13 항 또는 제 14 항에 있어서, The method according to claim 13 or 14, 상기 (a) 단계는, In step (a), (a1) UMTP 등록 서버가 상기 UMTP 서버로부터 아이피 주소 및 포트 번호를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하는 단계;(a1) a UMTP registration server receiving registration information including an IP address and a port number from the UMTP server to generate a UMTP server registration list; (a2) 상기 사설 네트워크 내의 호스트가 베뉴 서버로부터 멀티캐스트 그룹 주소 리스트를 수신하는 단계;(a2) receiving a multicast group address list from a Venue server by a host in the private network; (a3) 상기 호스트가 상기 UMTP 에이전트로 멀티캐스트 주소에 대한 접속을 요청하는 단계; 및(a3) the host requesting access to a multicast address to the UMTP agent; And (a4) 상기 UMTP 에이전트가 상기 UMTP 등록 서버로부터 상기 UMTP 서버 등록 리스트를 수신한 후 상기 UMTP 서버 등록 리스트에 포함된 상기 UMTP 서버로 연결 요청하는 단계(a4) the UMTP agent receiving the UMTP server registration list from the UMTP registration server and requesting connection to the UMTP server included in the UMTP server registration list 를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템의 UDP 멀티캐스트 터널링 방법.UDP multicast tunneling method of a multicast-based multi-party collaboration system comprising a. NAT/방화벽이 구비된 사설 네트워크와 외부 멀티캐스트 네트워크 간의 멀티캐스트 연결성 확보를 위한 멀티캐스트 기반 다자간 협업 시스템에 있어서, In a multicast-based multi-party collaboration system for securing multicast connectivity between a private network with a NAT / firewall and an external multicast network, 상기 사설 네트워크에 구비되어, 상기 사설 네트워크 내의 특정 호스트가 요청하는 멀티캐스트 주소의 멀티캐스트 트래픽을 받아 전송하는 기능을 수행하는 UMTP 에이전트;A UMTP agent provided in the private network and configured to receive and transmit multicast traffic of a multicast address requested by a specific host in the private network; 상기 외부 멀티캐스트 네트워크에 구비되어, 상기 UMTP 에이전트와 UDP 터널을 생성함으로써 상기 멀티캐스트 트래픽의 전송을 가능하게 하는 UMTP 서버; A UMTP server provided in the external multicast network to enable transmission of the multicast traffic by creating a UDP tunnel with the UMTP agent; 상기 UMTP 서버로부터 아이피 주소와 포트 번호를 포함하는 등록 정보를 전송받아 UMTP 서버 등록 리스트를 생성하고, 상기 UMTP 에이전트의 요청에 따라 상기 UMTP 서버 등록 리스트를 상기 UMTP 에이전트로 전송하는 UMTP 등록 서버; 및A UMTP registration server receiving registration information including an IP address and a port number from the UMTP server, generating a UMTP server registration list, and transmitting the UMTP server registration list to the UMTP agent according to a request of the UMTP agent; And 상기 사설 네트워크 내의 상기 호스트에게 멀티캐스트 그룹 주소 리스트를 제공하며, 협업을 위한 가상 공간을 제공하는 베뉴 서버 Venue server providing a multicast group address list to the host in the private network and providing a virtual space for collaboration 를 포함하는 것을 특징으로 하는 멀티캐스트 기반 다자간 협업 시스템.Multicast-based multi-party collaboration system comprising a.
KR1020060096794A 2006-09-30 2006-09-30 Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor KR100764063B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060096794A KR100764063B1 (en) 2006-09-30 2006-09-30 Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060096794A KR100764063B1 (en) 2006-09-30 2006-09-30 Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor

Publications (1)

Publication Number Publication Date
KR100764063B1 true KR100764063B1 (en) 2007-10-05

Family

ID=39419306

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060096794A KR100764063B1 (en) 2006-09-30 2006-09-30 Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor

Country Status (1)

Country Link
KR (1) KR100764063B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101192389B1 (en) 2010-07-05 2012-10-17 주식회사 네이블커뮤니케이션즈 Push service providing method and push service providing system performing the same
WO2013029455A1 (en) * 2011-09-01 2013-03-07 Hangzhou H3C Technologies Co., Ltd. Constructing a network enabling layer-2 interconnection of data centers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02602A (en) * 1987-10-30 1990-01-05 Devars Ms Co Radiation-curable solid electrolyte and equipment for electrolysis by using it

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02602A (en) * 1987-10-30 1990-01-05 Devars Ms Co Radiation-curable solid electrolyte and equipment for electrolysis by using it

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문(2006. 02)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101192389B1 (en) 2010-07-05 2012-10-17 주식회사 네이블커뮤니케이션즈 Push service providing method and push service providing system performing the same
WO2013029455A1 (en) * 2011-09-01 2013-03-07 Hangzhou H3C Technologies Co., Ltd. Constructing a network enabling layer-2 interconnection of data centers
US9264305B2 (en) 2011-09-01 2016-02-16 Hangzhou H3C Technologies Co., Ltd. Constructing a network enabling layer-2 interconnection of data centers
US9716620B2 (en) 2011-09-01 2017-07-25 Hewlett Packard Enterprise Development Lp Constructing a network enabling layer-2 interconnection of data centers

Similar Documents

Publication Publication Date Title
Rahman et al. Group communication for the constrained application protocol (CoAP)
US8732236B2 (en) Managing network communications between network nodes and stream transport protocol
US7080157B2 (en) Performing multicast communication in computer networks by using overlay routing
KR101033057B1 (en) Method and apparatus for establishing multicast groups
KR100971273B1 (en) Method and system for setting up a multicast session between clients
EP1938530B1 (en) Application-level multicasting architecture
US9031069B2 (en) Method, system, and apparatus for extranet networking of multicast virtual private network
US7532622B2 (en) Methods, devices and software for merging multicast groups in a packet switched network
US8713662B2 (en) Method of monitoring and configuring
US20100302345A1 (en) System and Method for Extending Communications Between Participants in a Conferencing Environment
JP2004208302A (en) System and method for converting request between different multicast protocols in communication network
JP2004242063A (en) Data generating device
CN102546666B (en) The method preventing IGMP from cheating and to attack and device
US6594703B1 (en) Apparatus and method of minimizing internal multicast traffic
US8621083B2 (en) System and method for multicasting through a localized computer network
US8559353B2 (en) Multicast quality of service module and method
CN1917512B (en) Method for establishing direct connected peer-to-peer channel
US20140337478A1 (en) Peer-to-peer network communications
KR100764063B1 (en) Method for udp multicast tunneling in multicast-based multi-party collaboration environment, and system therefor
US8861520B1 (en) Packet cloning for enhanced delivery of communication from a source device to one or more destination devices
KR100703065B1 (en) Network address translation control system and method for providing multilateral-bidirectional audio communication service
Rahman et al. RFC 7390: Group Communication for the Constrained Application Protocol (CoAP)
Robert et al. XO: XMPP overlay service for distributed chat
Cisco Interdomain Multicast Solutions Using SSM
Kim et al. UDP-tunneling based multicast connectivity solution for multi-party collaborative environments

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

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130710

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee