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 PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1827—Network arrangements for conference optimisation or adaptation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow 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
Description
도 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
제 1 네트워크(100)에는 하나 이상의 UMTP 서버(110)가 구비되는데, UMTP 서버(110)는 멀티캐스트 주소의 멀티캐스트 트래픽을 받아 요청자에게 전송하는 기능을 수행한다. One or
한편, 제 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
본 발명의 특징적인 구성에 의하면, 본 발명의 바람직한 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템(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
이러한 본 발명의 바람직한 실시예에 따른 멀티 캐스트 기반 다자간 협업 시스템에 있어서 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 서버(110)는 상기 단계를 주기적으로 수행함으로써 UMTP 등록 서버(140)가 활성 상태에 있는 UMTP 서버 리스트를 갱신할 수 있도록 한다(S210). 이 때 UMTP 등록 서버(140)가 특정 UMTP 서버(110)로부터 일정 시간 이상 '등록' 메시지를 전송받지 못하는 경우에는 그 특정 UMTP 서버(110)는 활성 상태에 있지 않은 것으로 판단하고 UMTP 서버 등록 리스트에서 삭제한다. The
UMTP 에이전트(130)는 UMTP 등록 서버(140)로부터 UMTP 서버 등록 리스트를 수신한다(S220). The
UMTP 에이전트(130)는 UMTP 서버 등록 리스트를 이용하여 UMTP 서버 등록 리스트 상의 어느 하나의 UMTP 서버(110)와 실질적인 연결 절차를 수행하기 전에, 각 UMTP 서버(110)와의 연결 허가 가능성 및 연결 품질을 검사하도록 한다(S230). 이는 UMTP 서버(110)가 지원 가능한 것보다 더 많은 UMTP 에이전트(130)와 연결되는 것을 방지하고, 최선의 연결 상태를 보장하기 위함이다. 현재의 UMTP는 UMTP 에이전트(130)와 UMTP 서버(110) 간의 제어 절차를 규정하는데, 이는 단지 UMTP 에이전트(130)의 유효성을 검사하는 것에 불과하며, UMTP 서버(110)의 이용가능한 자원을 검사하지는 않는다. 또한, UMTP는 연결 속도도 측정하지 않는다. 이러한 문제를 해결하기 위해 상기 단계를 수행하도록 함이 바람직하다. The
이러한 과정을 도 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
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
다시 도 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 에이전트(130)는 최적의 UMTP 서버(110)와 연결되어 UDP 터널을 생성함으로써 네트워크 연결성을 확보한다(S250).Through this process, the
한편, 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 서버(110)가 UMTP 에이전트(110)의 JOIN_GROUP 메시지에 대해 승인하는 메시지('JOIN_ACK' 메시지라 호칭한다)를 전송하도록 하는 과정을 추가하도록 한다. In order to solve this problem, in the present invention, the
도 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 에이전트(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
다음으로 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템 및 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
공용 멀티캐스트 네트워크(300)에는 UMTP 서버(310)가 구비되고, 멀티캐스트 데이터를 생산하는 생산자 호스트(312a, 312b, 312c)가 포함된다. 사설 네트워크(320)에는 UMTP 에이전트(330)가 구비되고, 멀티캐스트 데이터를 요청하여 수신 받는 소비자 호스트(332)가 포함된다. The
UMTP 등록 서버(340)는 UMTP 서버(310)로부터 주기적으로 아이피 주소와 포트 번호를 등록받고, UMTP 에이전트(330)로 UMTP 서버 등록 리스트를 전송하는 기능을 수행한다. The
UMTP 에이전트(330)는 소비자 호스트(332)로부터 멀티캐스트 주소에 대한 요청을 받아 이를 UMTP 서버(310)로 전송하는 기능을 수행한다. UMTP 에이전트(330)는 UMTP 등록 서버(340)로부터 UMTP 서버(310)의 주소를 받아 UMTP 서버(310)와 접속을 생성하는데, UMTP 서버(310)와 UMTP 에이전트(330)는 서로 간에 UDP 터널(370)을 생성한다. UMTP 서버(310)는 각 네트워크에서 발생하는 멀티캐스트 데이터를 캡슐화하여 서로에게 전송하고, 전송된 캡슐화된 데이터는 역캡슐화되어 각 네트워크에 멀티캐스트 전송됨으로써 상호 간에 멀티캐스트 연결성을 제공한다. The
베뉴 서버(350)는 제공되는 협업 서비스들을 이용하여 참가자들이 공동 작업을 할 수 있는 가상의 공간을 마련하는 등 협업 환경을 중앙 집중 방식으로 관리하는 기능을 수행한다. 협업 환경에 참여하는 각 호스트는 생산자-소비자 모델에 따라 영상 또는 음성 정보를 제공하고 이용한다. 베뉴 서버(350)는 제공 가능한 협업 서비스에 대한 정보를 등록하여 저장하고 이러한 정보를 협업 서비스를 제공받기 원하는 호스트에 제공한다. 이를 위해 베뉴 서버(350)는 멀티캐스트 그룹에 대한 주소 정보를 구비한다.
이러한 본 발명의 바람직한 또 다른 실시예에 따른 멀티캐스트 기반 다자간 협업 시스템에 있어서 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
UMTP 등록 서버(340)는 UMTP 서버(310)로부터 아이피 주소 및 포트 번호를 전송받아 등록한다(S400). UMTP 서버(310)의 등록 정보는 주기적으로 갱신되는 것이 바람직하다. The
사설 네트워크(320) 내에 위치하는 소비자 호스트(332)는 베뉴 서버(350)로부터 멀티캐스트 그룹 주소 리스트(350)를 수신한다(S410). 이후 소비자 호스트(332)는 UMTP 에이전트(330)로 원하는 멀티캐스트 주소에 대한 접속을 요청한다(S420). The
UMTP 에이전트(330)는 UMTP 등록 서버(340)로부터 UMTP 서버 등록 리스트를 수신하고, UMTP 서버 등록 리스트에 포함된 어느 하나의 UMTP 서버(310)와 UDP 터널(370)을 생성하여 연결한다(S430). 이러한 S430 단계 중, UMTP 에이전트(330)까 UMTP 등록 서버(340)로부터 UMTP 서버 등록 리스트를 수신하는 것은 최초 S400 단계와 동시 또는 그 전후에 이루어지는 것도 가능함은 물론이다. The
UMTP 서버(310)는 멀티캐스트 데이터를 소비자 호스트(332)에서 요청된 멀티캐스트 주소로부터 수신하여 UMTP 에이전트(330)로 전송한다(S440). The
UMTP 에이전트(330)는 멀티캐스트 데이터를 소비사 호스트(332)로 전송한다(450). The
이러한 과정을 통해 공용 멀티캐스트 네트워크(300)와 NAT/방화벽 기반의 사설 네트워크(320) 간의 멀티캐스트 연결성이 제공되며, 이렇게 형성된 UDP 터널(370)을 이용하여 데이터의 전송이 가능하게 된다.Through this process, multicast connectivity between the
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.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)
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)
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)
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 |
-
2006
- 2006-09-30 KR KR1020060096794A patent/KR100764063B1/en not_active IP Right Cessation
Patent Citations (1)
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)
Title |
---|
논문(2006. 02) |
Cited By (4)
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 |