KR20060023687A - Method and system for voting optimum route in multicasting - Google Patents

Method and system for voting optimum route in multicasting Download PDF

Info

Publication number
KR20060023687A
KR20060023687A KR1020040072488A KR20040072488A KR20060023687A KR 20060023687 A KR20060023687 A KR 20060023687A KR 1020040072488 A KR1020040072488 A KR 1020040072488A KR 20040072488 A KR20040072488 A KR 20040072488A KR 20060023687 A KR20060023687 A KR 20060023687A
Authority
KR
South Korea
Prior art keywords
relay
bowing
transmission path
terminal
path
Prior art date
Application number
KR1020040072488A
Other languages
Korean (ko)
Other versions
KR100628339B1 (en
Inventor
김용화
Original Assignee
주식회사 이지씨앤씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 이지씨앤씨 filed Critical 주식회사 이지씨앤씨
Priority to KR1020040072488A priority Critical patent/KR100628339B1/en
Publication of KR20060023687A publication Critical patent/KR20060023687A/en
Application granted granted Critical
Publication of KR100628339B1 publication Critical patent/KR100628339B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services

Abstract

본 발명은 메인 서버로부터 멀티캐스팅 된 일정 크기 이상의 멀티미디어 데이터를 스트림 형태로 수신하는 중에 비디오 스트림의 지연이나 끊김 등의 이상이 발생할 경우에, 다수의 오디오 전송 경로 중에 그 전송 속도가 가장 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하되, 각각의 전송 경로의 지연값과 임계값에 따라 레벨 업이나 레벨 다운 및 레벨 쉬프트를 통하여 전송 경로를 설정함으로써, 대용량의 멀티미디어 스트림을 끊김없이 빠르게 전송할 수 있도록 하는 멀티캐스팅에서의 최적 경로 보우팅 방법 및 시스템에 관한 것으로서, According to the present invention, when an abnormality such as delay or interruption of a video stream occurs while receiving multimedia data of a predetermined size or more multicasted from a main server, an audio transmission path having the fastest transmission speed among a plurality of audio transmission paths is generated. Is set as a video transmission path, but the transmission path is set through level up, level down, and level shift according to the delay value and the threshold value of each transmission path, so that a large capacity multimedia stream can be transmitted quickly and seamlessly. A method and system for optimal path bowing in

본 발명에 의하면, 멀티미디어 스트림을 전송함에 있어서 최적의 전송 경로를 항상 대기시켜 보다 빠르고 안정적으로 전송할 수 있다. 또한, 비디오 스트림의 수신에 이상이 있을 경우 다수의 오디오 수신 경로 중 가장 속도가 빠른 전송 경로를 비디오 수신 경로로 설정함으로써, 비디오 스트림을 지연이나 끊김이 없이 항상 계속적으로 수신할 수 있으며, 각 전송 경로의 지연값에 따라 전송 경로를 레벨 업이나 레벨 다운 및 레벨 쉬프트할 수 있다.According to the present invention, an optimal transmission path is always waiting for transmitting a multimedia stream, thereby enabling faster and more stable transmission. In addition, when there is an error in receiving the video stream, by setting the fastest transmission path among the plurality of audio reception paths as the video reception path, the video stream can be continuously received without delay or interruption at all times. The transmission path can be leveled up or down and level shifted according to the delay value of.

멀티캐스팅, 최적 경로, 보우팅, 지연값, 레벨, 라우터, 중계, 네트워크Multicasting, optimal path, bowing, delay, level, router, relay, network

Description

멀티캐스팅의 최적 경로 보우팅 방법 및 시스템{Method and System for Voting Optimum Route in Multicasting} Method and System for Voting Optimum Route in Multicasting             

도 1은 종래 일대일(Peer-to-Peer) 전송 기법을 적용한 멀티캐스트 네트워크 개념도,1 is a conceptual diagram of a multicast network applying a conventional peer-to-peer transmission scheme;

도 2는 본 발명의 실시예에 따른 최적 경로 보우팅 시스템의 구성을 개략적으로 나타낸 구성도,2 is a schematic view showing the configuration of an optimal path bowing system according to an embodiment of the present invention;

도 3은 중계형 브로커 단말기(220)의 내부 구성을 개략적으로 나타낸 구성도,3 is a configuration diagram schematically showing the internal configuration of the relay broker terminal 220,

도 4는 보우팅 중계형 브로커 단말기(230)의 내부 구성을 개략적으로 나타낸 구성도,4 is a configuration diagram schematically showing an internal configuration of a bowing relay broker terminal 230;

도 5는 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 방법에서, 상위 패어런트 단말기와 하위 차일드 단말기 간에 전송 경로의 이상으로 레벨 다운(Level Down)하는 과정을 설명하기 위한 순서도,FIG. 5 is a flowchart illustrating a process of leveling down a transmission path between an upper parent terminal and a lower child terminal in an optimal path bowing method in multicasting according to an embodiment of the present invention.

도 6은 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 방법에서, 상위 패어런트 단말기와 하위 차일드 단말기 간에 전송 경로의 이상으로 레벨 업(Level Up)하는 과정을 설명하기 위한 순서도,6 is a flowchart illustrating a process of leveling up an abnormal transmission path between an upper parent terminal and a lower child terminal in a method for optimal path bowing in multicasting according to an embodiment of the present invention;

도 7은 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 방법에서, 상위 패어런트 단말기와 하위 차일드 단말기 간에 전송 경로의 이상으로 레벨 쉬프트(Level Shift)하는 과정을 설명하기 위한 순서도이다.FIG. 7 is a flowchart illustrating a process of level shifting due to an abnormal transmission path between an upper parent terminal and a lower child terminal in a method for optimal path bowing in multicasting according to an embodiment of the present invention.

※ 도면의 주요 부분에 대한 부호의 설명 ※ Explanation of codes for main parts of drawing

105 : 데이터 소스 107 : 데이터 전송서버105: data source 107: data transmission server

109 : 라우터1 110 : 데이터소스측 네트워크109: router 1 110: data source side network

120 : 인터넷 130 : 클라이언트측 네트워크120: Internet 130: client side network

132 : 라우터2 134 ∼ 138 : 클라이언트132: Router 2 134 ~ 138: Client

200 : 최적 경로 보우팅 시스템 210 : 메인 서버200: optimal path bowing system 210: main server

220 ∼ 228 : 중계형 브로커 단말기 220-228: relay broker terminal

230 ∼ 238 : 보우팅-중계형 브로커 단말기230-238: bowing-relay broker terminal

240 ∼ 248 : 보우팅형 단말기 310 : 연결정보 관리부240 248: botting terminal 310: connection information management unit

320 : 데이터 송수신 컨트롤부 330 : 미디어 채널 관리부320: data transmission and reception control unit 330: media channel management unit

340 : 하위 리스트 관리부 350 : 데이터 송신부340: lower list management unit 350: data transmission unit

410 : 데이터 수신부 420 : 상위 리스트 관리부410: data receiving unit 420: upper list management unit

본 발명은 인터넷 방송 시스템에서의 멀티캐스팅 기술 분야에 관한 것으로서, 더욱 상세하게는 메인 서버로부터 멀티캐스팅 된 일정 크기 이상의 멀티미디어 데이터를 스트림 형태로 수신하는 중에 비디오 스트림의 지연이나 끊김 등의 이상이 발생할 경우에, 다수의 오디오 전송 경로 중에 그 전송 속도가 가장 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하되, 각각의 전송 경로의 지연값과 임계값에 따라 레벨 업이나 레벨 다운 및 레벨 쉬프트를 통하여 전송 경로를 설정함으로써, 대용량의 멀티미디어 스트림을 끊김없이 빠르게 전송할 수 있도록 하는 멀티캐스팅에서의 최적 경로 보우팅 방법 및 시스템에 관한 것이다.The present invention relates to the field of multicasting technology in an internet broadcasting system, and more particularly, when an abnormality such as delay or interruption of a video stream occurs while receiving multimedia data of a predetermined size or more multicasted from a main server in the form of a stream. For example, the audio transmission path having the fastest transmission speed among the plurality of audio transmission paths may be set as a video transmission path, and the transmission path may be set through level up, level down, and level shift according to the delay value and the threshold value of each transmission path. By setting up, the present invention relates to a method and system for optimal path bowing in multicasting to enable a fast and seamless transmission of a large multimedia stream.

인터넷 전송에서 라우터(Router)의 구성을 수정하는 것이 매우 어려운 일이 됨에 따라 최근에는 라우터를 전혀 수정하지 않고 송신단으로부터 유니캐스트(Unicast)로 데이터를 수신한 클라이언트가 해당 수신 데이터를 업로드(Upload)하여 중계함으로서 다른 클라이언트도 데이터를 수신할 수 있도록 한 멀티캐스트 방식이 개발되었다.As it is very difficult to modify the configuration of the router in the Internet transmission, recently, a client receiving data from the sender as unicast without uploading the router at all uploads the received data. By relaying, a multicast scheme has been developed that allows other clients to receive data.

도 1은 종래 일대일(Peer-to-Peer) 전송 기법을 적용한 멀티캐스트 네트워크 개념도이다. 1 is a conceptual diagram of a multicast network using a conventional peer-to-peer transmission scheme.

도 1에 도시된 바와 같이 멀티캐스트 방식은 데이터 소스(105)가 있는 네트 워크(110)의 데이터 전송 서버(107)로부터 클라이언트(134)가 속해 있는 네트워크(130)로 수신된 데이터를 다시 업로드하게 되면 해당 네트워크(130)의 다른 클라이언트(136 및 138)는 클라이언트(134)로부터 데이터를 수신하게 된다. 즉, 네트워크에 속한 중계 클라이언트가 데이터를 수신하면 해당 중계 클라이언트는 리피터로서의 기능을 수행하여 동일한 네트워크에 속한 다른 클라이언트에게도 수신 데이터를 전달할 수 있게 된다. 이때, 중계 클라이언트에는 중계 기능 수행 프로그램이 설치되어 있어, 중계 기능 수행 프로그램에 의해 멀티미디어 스트림을 다른 클라이언트에게 전송하는 것이다.As shown in FIG. 1, the multicast scheme allows uploading data received from the data transmission server 107 of the network 110 where the data source 105 is located to the network 130 to which the client 134 belongs. The other clients 136 and 138 of the network 130 will then receive data from the client 134. That is, when the relay client in the network receives the data, the relay client performs a function as a repeater so that the relayed client can deliver the received data to other clients in the same network. At this time, the relay client is provided with a relay function execution program, and the multimedia stream is transmitted to another client by the relay function execution program.

한편, 중계 클라이언트를 통해 멀티미디어 스트림을 수신하는 다른 클라이언트에게 있어서는 대용량의 데이터를 수신하기 위해서는 가장 빠른 전송 경로를 갖는 중계 클라이언트를 선택해야 한다. 가장 빠른 전송 경로를 찾는 일반적인 방식으로는 가장 적게 라우터를 경유하는 "Nearest" 방식과, 통신으로 "Ack" 신호를 전송하면서 응답 속도를 체크하고 가장 빨리 응답하는 경로를 찾는 "Fastest" 방식이 있다.Meanwhile, in order to receive a large amount of data, another client receiving a multimedia stream through the relay client should select a relay client having the fastest transmission path. Common methods of finding the fastest transmission path include the "Nearest" method, which passes the least number of routers, and the "Fastest" method, which checks the response speed while transmitting the "Ack" signal through communication and finds the path that responds the fastest.

"Nearest" 방식의 경우, 미디어 서버로부터 전송되는 라우터의 경로 중 가장 적은 수의 라우터를 채택하여 전송 경로를 설정함으로써 데이터를 스트리밍하는 방식이다. 이 경우 라우터의 수가 줄어들어 부하를 줄이고 라우터의 속도가 빠르다고 가정하였을 경우에 빠른 데이터의 전송에 의한 원활한 스트리밍을 제공한다. 그러나, 데이터 전송에 따른 스트리밍의 속도는 라우터의 갯수(홉수)에 절대적으로 비례하는 것이 아니므로, 속도가 저하된 라우터 3 개를 통과하는 것보다는 속도가 빠 른 라우터 4 개를 선별하여 경로를 설정하고 데이터를 전송하는 것이 효과적일 수 있다.In the case of the "Nearest" method, the data is streamed by setting the transmission path by adopting the least number of router paths transmitted from the media server. In this case, if the number of routers is reduced to reduce the load and the router speed is fast, smooth streaming by fast data transmission is provided. However, since the speed of streaming according to data transmission is not absolutely proportional to the number of hops (hops), the route is selected by selecting four routers that are faster than passing through three routers that are degraded. And transferring data may be effective.

"Fastest" 방식의 경우, 미디어 서버로부터 전송되는 라우터 중에서 가장 응답 속도가 빠른 라우터만을 선별하여 그 라우터들로만 경로를 설정하여 데이터를 전송하여 스트리밍하는 방식이다. 이 경우에 "Nearest" 방식의 경우보다 훨씬 더 신뢰성 있고 빠른 데이터 전송 속도를 갖는 장점이 있다. In the "Fastest" method, only the routers with the fastest response speed among the routers transmitted from the media server are selected, and only the routers are routed to transmit data and stream the data. In this case, there is an advantage that the data transmission rate is much more reliable and faster than that of the "Nearest" method.

그러나, "Fastest" 방식의 경우도 절대적일 수 없는데, 응답 속도만으로 대용량의 데이터를 전송하는데 적합하다고 할 수 없기 때문이다. 즉, 대역폭의 크기에 따라 전송의 크기가 변하는 것처럼 작은 대역폭의 응답 속도가 빠르다고 큰 대역폭을 가진 것보다 대용량의 데이터를 전송한다고 볼 수 없기 때문이다. 또한, 네트워크의 속도는 항상 변하는 유동적인 특성상 이 경로가 절대적이라고 할 수 없다.However, the "Fastest" method is not absolute either, because the response speed alone is not suitable for transmitting a large amount of data. In other words, because the response speed of a small bandwidth is fast, as the size of a transmission varies according to the size of the bandwidth, it is not considered that a large amount of data is transmitted than a large bandwidth. Also, because the speed of the network is constantly changing, this path is not absolute.

상기 문제점을 해결하기 위한 본 발명은, 메인 서버로부터 멀티캐스팅 된 일정 크기 이상의 멀티미디어 데이터를 스트림 형태로 수신하는 중에 비디오 스트림의 지연이나 끊김 등의 이상이 발생할 경우에, 다수의 오디오 전송 경로 중에 그 전송 속도가 가장 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하되, 각각의 전송 경로의 지연값과 임계값에 따라 레벨 업이나 레벨 다운 및 레벨 쉬프트를 통하여 전송 경로를 설정함으로써, 대용량의 멀티미디어 스트림을 끊김없이 빠르게 전송할 수 있도록 하는 멀티캐스팅에서의 최적 경로 보우팅 방법 및 시스템을 제공함에 그 목적이 있다.
In order to solve the above problems, the present invention is directed to a plurality of audio transmission paths when an abnormality such as delay or interruption of a video stream occurs while receiving multimedia data multicasted from a main server in a stream form. Set the fastest audio transmission path as the video transmission path, and set the transmission path through level up, level down, and level shift according to the delay value and the threshold value of each transmission path. It is an object of the present invention to provide a method and system for optimal path bowing in multicasting to enable fast transmission.

상기 목적을 달성하기 위해 본 발명은, 메인 서버로부터 멀티캐스팅되는 멀티미디어 스트림을 가장 빠르고 안정적으로 수신하는 경로를 보우팅하는 최적 경로 보우팅 시스템에 있어서, 상기 메인 서버로부터 멀티캐스팅된 상기 멀티미디어 스트림을 최초로 수신하여 하위 레벨의 단말기들에게 중계 전송하는 다수의 배송 단말기; 최적 경로 보우팅 프로그램이 설치되어 있으며, 자신에게 직접 연결된 상기 배송 단말기로부터 비디오 스트림을 수신하고, 나머지 다른 배송 단말기로부터 오디오 스트림을 수신하되, 상기 비디오 스트림의 수신 경로에 이상이 있는 경우에 각각의 오디오 전송 경로에 대해 수신양과 전송 속도를 비교하여 가장 빠른 전송 경로를 보우팅하여 새로운 비디오 전송 경로로 설정하고, 수신한 상기 멀티미디어 스트림을 하위 레벨의 단말기로 중계 전송해 주는 다수의 브로커 단말기; 상기 최적 경로 보우팅 프로그램이 설치되어 있으며, 상기 브로커 단말기로부터 상기 멀티미디어 스트림을 수신하되, 자신과 직접 연결된 상기 브로커 단말기로부터 상기 비디오 스트림을 수신하고, 나머지 다른 브로커 단말기들로부터 상기 오디오 스트림을 수신하며, 상기 비디오 스트림의 전송 경로에 이상이 있는 경우에 다수의 오디오 전송 경로 중 가장 전송이 빠른 오디오 전송 경로를 보우팅하여 상기 비디오 전송 경로로 설정하여 상기 비디오 스트림을 수신하는 보우팅 단말기를 포함하는 것 을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템을 제공한다.In order to achieve the above object, the present invention provides an optimal path bowing system for routing a path for receiving the most multimedia streams that are multicasted from the main server most quickly and stably. A plurality of delivery terminals that receive and relay to lower-level terminals; An optimal path bowing program is installed, and receives a video stream from the delivery terminal directly connected to itself, receives an audio stream from the other delivery terminal, and if there is an error in the receiving path of the video stream, each audio A plurality of broker terminals configured to compare the reception volume and the transmission speed with respect to the transmission path, set the newest video transmission path by bowing the fastest transmission path, and relay the received multimedia stream to a lower level terminal; The optimal path bowing program is installed, and receives the multimedia stream from the broker terminal, receives the video stream from the broker terminal directly connected thereto, and receives the audio stream from the other broker terminals. And a bowing terminal receiving the video stream by bowing the audio transmission path having the fastest transmission among a plurality of audio transmission paths and setting the video transmission path when there is an error in the transmission path of the video stream. An optimal path bowing system for multicasting is provided.

또한, 본 발명의 다른 목적에 의하면, 메인 서버로부터 배송 단말기를 통해 멀티미디어 스트림을 수신하고 하위 레벨의 단말기들에게 중계 전송하는 브로커 단말기와, 상기 브로커 단말기로부터 중계 전송된 상기 멀티미디어 스트림을 수신하는 보우팅 단말기를 포함하는 시스템의 최적 경로 보우팅 방법에 있어서, 상기 메인 서버로부터 전송 경로를 통해 비디오 및 오디오가 포함된 상기 멀티미디어 스트림을 수신하는 제 1 단계; 각각의 오디오 전송 경로에 대하여 수신양과 속도를 비교하여 전송 경로 상위 리스트 및 전송 경로 하위 리스트로 저장하는 제 2 단계; 비디오 스트림의 수신에 지연이나 끊김을 포함하는 이상이 발생하였는지를 판단하는 제 3 단계; 상기 각각의 오디오 전송 경로의 지연값을 통하여, 지연 평균값이 임계 설정값을 초과하는지를 판단하여 하나의 전송 경로에 이상이 있는 것인지, 전반적인 전송 경로에 이상이 있는지를 판단하는 제 4 단계; 상기 각각의 오디오 전송 경로 중 수신양과 전송 속도를 비교하여 가장 빠른 전송 경로를 보우팅하여 비디오 스트림의 수신 경로로 설정하는 제 5 단계를 포함하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법을 제공한다.According to another object of the present invention, a broker terminal for receiving a multimedia stream from a main server through a delivery terminal and relaying to lower level terminals, and a bowing for receiving the multimedia stream relayed from the broker terminal. An optimal path bowing method for a system including a terminal, comprising: a first step of receiving the multimedia stream including video and audio from a main server through a transmission path; A second step of comparing the reception amount and the speed for each audio transmission path and storing the transmission path upper list and the transmission path lower list; A third step of determining whether an abnormality including a delay or a truncation occurs in the reception of the video stream; A fourth step of determining whether the average delay value exceeds a threshold setting value through the delay values of the respective audio transmission paths to determine whether there is an error in one transmission path or an error in the overall transmission path; And a fifth step of comparing the reception amount and the transmission rate among the respective audio transmission paths and bowing the fastest transmission path to set the reception path of the video stream. to provide.

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

우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도 록 하고 있음에 유의해야 한다. First of all, in adding reference numerals to the components of each drawing, it should be noted that the same reference numerals have the same reference numerals as much as possible even if displayed 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.

먼저, 본 발명에 따른 이해를 돕기 위하여 본 발명의 기본적인 개념과, 실시예에서 설명되는 '보우팅(Voting)'이라는 용어에 대하여 설명한다.First, in order to help understanding according to the present invention, the basic concept of the present invention and the term 'voting' described in the embodiments will be described.

본 발명에서는 메인 서버(Dispatcher : Cast 365 Plus Server)로부터 송출된 멀티미디어 스트림에 대하여, 최초로 수신하여 하위 레벨의 단말기로 중계하는 다수의 단말기들을 1레벨 패어런트(Parent) 단말기라고 하고, 1레벨 패어런트 단말기를 통해 멀티미디어 스트림을 제공받는 단말기를 2레벨 차일드(Child) 단말기라고 한다. In the present invention, a plurality of terminals that initially receive the multimedia stream transmitted from the main server (Dispatcher: Cast 365 Plus Server) and relay it to a lower level terminal are called first level parent terminals, and are first level parent terminals. A terminal receiving a multimedia stream through the terminal is called a two-level child terminal.

또한, 2레벨 차일드 단말기가 1레벨 패어런트 단말기로부터 멀티미디어 스트림을 수신하여 하위 3레벨의 단말기로 중계하게 되는 경우에, 2레벨 차일드 단말기는 2레벨 패어런트 단말기가 되고, 2레벨 패어런트 단말기를 통해 멀티미디어 스트림을 제공받는 단말기는 3레벨 차일드 단말기가 된다.In addition, when the 2nd level child terminal receives the multimedia stream from the 1st level parent terminal and relays it to the lower level 3rd level terminal, the 2nd level child terminal becomes a 2nd level parent terminal, and through the 2nd level parent terminal The terminal receiving the multimedia stream becomes a three-level child terminal.

여기서, 메인 서버로부터 최적의 경로를 통해 멀티미디어 스트림을 수신하여 하위 2레벨의 단말기로 송출하는 1레벨 패어런트 단말기나, 1레벨 패어런트 단말기로부터 보우팅 경로를 통해 멀티미디어 스트림을 수신하여 하위 3레벨 차일드 단말기로 중계하는 2레벨 패어런트 단말기 등에 대하여, 멀티미디어 스트림을 수신하여 하위 레벨의 단말기로 중계하는 의미에서 "브로커(Broker) 단말기"라 칭한다.Here, the first level parent terminal receives the multimedia stream through the optimal path from the main server and transmits the multimedia stream to the lower level 2 terminal, or the lower level 3 child by receiving the multimedia stream through the bowing path from the first level parent terminal. A two-level parent terminal or the like for relaying to a terminal is referred to as a "broker terminal" in the sense of receiving a multimedia stream and relaying it to a lower level terminal.

한편, 본 발명은 트리(Tree) 구조의 멀티미디어 전송의 중계 시스템에서, 비디오 및 오디오(Audio) 데이터로 이루어진 전송 스트림을 구성하는 데이터 중 2 번째로 큰 대용량의 오디오 데이터에 대하여, 기본적으로 10 개 정도의 중계자 후보를 통해 지속적으로 데이터를 받고 그 상태를 갱신하면서 리스트를 유지함으로써 항상 최적의 중계자 후보를 찾도록 한다. 여기서, 후보자의 갯수는 설정 파일에서 임의로 조절할 수 있다.Meanwhile, the present invention basically provides about 10 second audio data of the second largest capacity among data constituting a transport stream composed of video and audio data in a tree-based multimedia transmission relay system. By constantly receiving data from the relay candidates and updating its status, the list is maintained to always find the best relay candidate. Here, the number of candidates can be arbitrarily adjusted in the configuration file.

이때, 수신 중인 비디오 스트림의 연결 지연이나 단절시, 기존 오디오 데이터 패킷으로 수신 중인 다수의 후보자 중계 리스트 중에서 '수신양'과 '전송속도'를 각각 비교하여 제일 속도가 빠른 가장 상위의 값을 갖는 우수한 오디오 경로를 비디오 전송 경로로 결정하는 것을 '보우팅(Voting)'한다고 한다. In this case, when the connection delay or disconnection of the received video stream is performed, a superior value having the highest value is obtained by comparing 'receive amount' and 'transmission rate' among a plurality of candidate relay lists being received as existing audio data packets. Determining the audio path as the video transmission path is called 'voting'.

따라서, 1 레벨의 브로커 단말기는 메인 서버(Dispatcher)로부터 멀티미디어 스트림을 일방적으로 수신하여 하위 2레벨의 브로커 단말기들에게 중계 전송해 줌으로써, 중계 기능을 강조하는 단말기이므로 "중계형 브로커 단말기"라 칭한다.Therefore, the broker terminal of one level receives the multimedia stream from the main server (Dispatcher) unilaterally and relays it to the broker terminals of the lower two levels, which is called a "relay broker terminal" because it is a terminal that emphasizes a relay function.

또한, 2 레벨의 브로커 단말기는 상위 1레벨 패어런트 단말기로부터 보우팅 과정을 통해 가장 전송이 빠른 경로로 멀티미디어 스트림을 수신하고, 또한 중계 기능에 따라 하위 3 레벨 차일드 단말기로 중계 전송하게 되므로, 보우팅 기능과 중계 기능을 겸하는 "보우팅-중계형 브로커 단말기"라 칭한다. In addition, the second level broker terminal receives the multimedia stream in the fastest transmission path through the bowing process from the upper level 1 parent terminal, and also relays the transmission to the lower level 3 child terminals according to the relay function. It is called a "bowing-relay broker terminal" which also functions as a relay.

그리고, 3 레벨의 브로커 단말기는 최종적인 단계의 레벨 단말기로서 중계 기능은 하지 않고, 멀티미디어 스트림을 보우팅 경로를 통해 수신만 하게 되므로, 보우팅 기능을 강조하는 "보우팅형 브로커 단말기"라 칭한다.The three-level broker terminal is called a "bowing broker terminal" that emphasizes the bowing function, because the terminal terminal of the final level does not have a relay function but only receives the multimedia stream through the bowing path.

전술한 바와 같이, 상위 레벨의 브로커 단말기로부터 멀티미디어 스트림을 수신하는 입장일 경우 차일드 단말기가 되고, 차일드 단말기이지만 수신한 멀티미디어 스트림을 하위 레벨의 브로커 단말기에게 중계해 줄 경우에 그 레벨의 패어런트 단말기가 되는 것이며, N 레벨의 전송 경로일 경우에도 동일하게 적용된다.As described above, when the terminal receives a multimedia stream from a higher level broker terminal, the terminal becomes a child terminal. When the terminal receives the multimedia stream to a lower level broker terminal, the parent terminal of that level The same applies to an N level transmission path.

이하, 본 발명의 실시예에서는 3 단계 레벨의 전송 경로를 예로 하여 설명하지만, N 단계 레벨의 전송 경로에도 동일하게 적용할 수 있음을 밝힌다.Hereinafter, an embodiment of the present invention will be described using three levels of transmission paths as an example, but the present invention can be equally applicable to transmission levels of N level levels.

도 2는 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 시스템(200)의 구성을 개략적으로 나타낸 구성도이다.2 is a schematic view showing the configuration of an optimal path bowing system 200 in multicasting according to an embodiment of the present invention.

본 발명의 실시예에 따른 최적 경로 보우팅 시스템(200)은, 메인 서버(Dispatcher)(210), 중계형 브로커 단말기(220 ∼ 228), 보우팅-중계형 브로커 단말기(230 ∼ 238), 보우팅형 브로커 단말기(240 ∼ 248) 등을 포함한 구성을 갖는다.Optimal route bowing system 200 according to an embodiment of the present invention, the main server (Dispatcher) 210, relay broker terminal (220 to 228), bowing-relay broker terminal (230 to 238), bow And configured brokering terminals 240 to 248 and the like.

메인 서버(210)는 'Cast 365 Plus Server'로서 동영상과 비디오 및 오디오를 포함하는 방송용 멀티미디어 데이터를 스트림 형태로 멀티캐스팅한다.The main server 210 is a 'Cast 365 Plus Server' and multicasts broadcasting multimedia data including video, video, and audio in a stream form.

중계형 브로커 단말기(220 ∼ 228)는 메인 서버(210)로부터 멀티캐스팅된 멀티미디어 스트림을 최초로 수신하여 네트워크에 연결된 클라이언트 단말기나 하위 레벨의 브로커 단말기들에게 멀티캐스팅 라우터를 통해 터널링을 수행하여 중계 전 송한다. 즉, 멀티미디어 전송의 브로커 단말기에서 중계 기능을 강조하는 단말기이다.The relay broker terminals 220 to 228 first receive the multicasted multimedia stream from the main server 210 and perform tunneling to the client terminals or lower level broker terminals connected to the network through a multicasting router. do. That is, the terminal emphasizing the relay function in the broker terminal of the multimedia transmission.

보우팅-중계형 브로커 단말기(230 ∼ 238)에는 최적 경로 보우팅 프로그램이 설치되어 있으며, 자신에게 직접 연결된 중계형 브로커 단말기(220)로부터 비디오 스트림을 수신하고, 나머지 중계형 브로커 단말기(222 ∼ 228)로부터 오디오 스트림을 수신하되, 비디오 스트림의 전송 경로에 이상이 있는 경우에 전술한 보우팅 과정을 통해 가장 전송이 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하여 비디오 스트림을 수신하며, 중계형 브로커 단말기로부터 수신한 멀티미디어 스트림을 하위 레벨의 보우팅형 브로커 단말기(240 ∼ 248)로 중계 전송해 준다.The optimal route bowing program is installed in the bowing-relay broker terminals 230 to 238, and receives a video stream from the relay broker terminal 220 directly connected to itself, and the remaining relay broker terminals 222 to 228. Receives an audio stream from the audio stream, but if there is an error in the transmission path of the video stream, the video stream is received by setting the fastest audio transmission path as the video transmission path through the above-described bowing process, and the relay broker terminal. It relays the multimedia stream received from the lower level boating broker terminals 240 to 248.

보우팅형 브로커 단말기(240 ∼ 248)는 최적 경로 보우팅 프로그램이 설치되어 있으며, 보우팅-중계형 브로커 단말기(230 ∼ 238)로부터 멀티미디어 스트림을 멀티캐스팅 라우터를 통해 수신하되, 자신과 직접 연결된 보우팅-중계형 브로커 단말기(230)로부터 비디오 스트림을 수신하고, 나머지 보우팅-중계형 브로커 단말기(232 ∼ 238)로부터 오디오 스트림을 수신하며, 비디오 스트림의 전송 경로에 이상 또는 오류가 있는 경우에 전술한 보우팅 과정을 통하여 다수의 오디오 전송 경로 중 가장 전송이 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하여 비디오 스트림을 수신하게 된다.The bowing broker terminals 240 to 248 are equipped with an optimal path bowing program, and receive the multimedia stream from the bowing relay broker terminals 230 to 238 through a multicasting router, but are directly connected to the bowing. In the case where the video stream is received from the relay broker terminal 230, the audio stream is received from the remaining bowing relay broker terminals 232 to 238, and there is an abnormality or an error in the transmission path of the video stream. Through the bowing process, the video transmission path is received by setting the fastest audio transmission path among a plurality of audio transmission paths.

메인 서버(210)에는 멀티캐스팅 중계 프로그램이 설치되어 있고, 메인 서버(210)는 멀티캐스팅 중계 프로그램과 각 클라이언트 단말기 간에 통신을 수행하기 위한 중계 기능 수행 프로그램을 각 클라이언트 단말기로 다운로드시키며, 보우팅- 중계형 브로커 단말기(230 ∼ 238) 및 보우팅형 브로커 단말기(240 ∼ 248)에는 메인 서버(210)로부터 다운로드(Download)한 중계 기능 수행 프로그램이 설치되어 있다.The main server 210 is provided with a multicasting relay program, and the main server 210 downloads a relay function performing program for communicating between the multicasting relay program and each client terminal to each client terminal. The relay broker terminals 230 to 238 and the bowling broker terminals 240 to 248 are provided with a relay function execution program downloaded from the main server 210.

중계 기능 수행 프로그램은 다수의 멀티캐스팅 라우터를 경유하여 메인 서버(210)내에 탑재된 멀티캐스팅 중계 프로그램과 일대일로 통신하여 메인 서버(210)로부터 제공되는 멀티미디어 스트림을 수신한다.The relay function performing program receives the multimedia stream provided from the main server 210 by communicating one-to-one with the multicasting relay program mounted in the main server 210 via a plurality of multicasting routers.

도 3은 중계형 브로커 단말기(220)의 내부 구성을 개략적으로 나타낸 구성도이다.3 is a configuration diagram schematically showing an internal configuration of the relay broker terminal 220.

도 3에 도시된 바와 같이, 중계형 브로커 단말기(220)는 멀티미디어 스트림을 전송하기 위하여 연결할 타겟 레벨(Target Level) 정보와 현재 연결의 속도 정보 값을 저장하는 연결정보 관리부(310), 데이터 전송에 필요한 각종 메시지들을 처리하고, 지연값(Latency)에 대한 처리를 하며, 다이나믹 라우팅(Dynamic Routing)에 대한 컨트롤(Control)를 담당(maxAccumLatency 도달시 처리)하는 데이터 송수신 컨트롤부(320), 해당 채널(Sub Stream)별로 연결을 관리하는 미디어채널 관리부(330), 멀티미디어 스트림을 하위 레벨의 단말기들에게 전송할 경로 리스트 정보를 저장하고 있는 하위(Junior) 리스트 관리부(340), 및 멀티미디어 스트림을 외부로 송출하는 데이터 송신부(350) 등을 포함한 구성을 갖는다.As shown in FIG. 3, the relay broker terminal 220 is configured to transmit target level information and a speed information value of a current connection to transmit a multimedia stream. Data transmission / reception control unit 320 for processing various messages required, processing for latency, and controlling the dynamic routing (processing when reaching maxAccumLatency), a corresponding channel ( A media channel manager 330 for managing connections for each sub stream, a lower list manager 340 for storing route list information for transmitting the multimedia stream to lower-level terminals, and transmitting the multimedia stream to the outside; It has a configuration including a data transmitter 350 and the like.

여기서, 데이터 송신부(350)의 경우, 하위 레벨의 차일드 단말기와의 연결 상태를 점검하여 다이나믹 라우팅이 이루어지도록 한다.In this case, the data transmitter 350 checks the connection state with the lower level child terminal so as to perform dynamic routing.

도 4는 보우팅-중계형 브로커 단말기(230)의 내부 구성을 개략적으로 나타낸 구성도이다.4 is a configuration diagram schematically showing an internal configuration of the bowing-relay broker terminal 230.

도 4의 보우팅-중계형 브로커 단말기(230)는 중계형 브로커 단말기(220)와 동일한 내부 구성 요소에, 중계형 브로커 단말기(220)로부터 송출된 멀티미디어 스트림을 수신하는 데이터 수신부(410)와, 상위 레벨의 단말기들로부터 멀티미디어 스트림을 수신하기 위한 전송 경로 리스트 정보를 저장하고 있는 상위(Senior) 리스트 관리부(420)를 추가로 더 포함한 구성을 갖는다.The bowing-relay broker terminal 230 of FIG. 4 includes a data receiver 410 for receiving a multimedia stream transmitted from the relay broker terminal 220 in the same internal component as the relay broker terminal 220; And further comprising a senior list manager 420 storing transmission path list information for receiving a multimedia stream from higher level terminals.

여기서, 하위 리스트 관리부(340) 및 상위 리스트 관리부(420)는 비디오 전송 경로 외에 다수의 오디오 전송 경로를 저장하고 있는데, 다음 수학식1과 같이 얻어진 오디오 스트림의 전송 속도(Speed)를 비교하여 빠른 순으로 리스트 정보를 정렬하여 저장하고 있다.Here, the lower list manager 340 and the upper list manager 420 store a plurality of audio transmission paths in addition to the video transmission paths. The lower list manager 340 and the upper list manager 420 compare the transmission speeds of the audio streams obtained as in Equation 1 below. List information is sorted and stored.

Figure 112004041116966-PAT00001
Figure 112004041116966-PAT00001

따라서, 하위 리스트 관리부(340) 및 상위 리스트 관리부(420)는 새로운 연결시 기존의 연결 리스트와 속도를 비교하여 내림차순으로 속도를 정렬하여 리스트를 갱신한다.Therefore, the lower list manager 340 and the upper list manager 420 compare the speed with the existing linked list and sort the speed in descending order to update the list when a new connection is made.

데이터 수신부(410)는 멀티미디어 스트림을 수신하는 중에 연결 지연이나 단절이 발생할 경우, 상위 리스트 관리부(420)의 현재 리스트에서 가장 상위의 값, 즉 제일 속도가 빠른 값을 읽어와 전송 경로로 설정한다. 또한, 연결 경로로 설정 된 전송 경로에 대해서는 그 속도 값을 1/2로 낮추어 후보자 리스트를 갱신한다.When a connection delay or disconnection occurs while receiving the multimedia stream, the data receiver 410 reads the highest value, that is, the fastest value, from the current list of the upper list manager 420 and sets the transmission path. In addition, for the transmission path set as the connection path, the rate value is lowered to 1/2 to update the candidate list.

이어, 전술한 바와 구성된 본 발명의 실시예에 따른 최적 경로 보우팅 시스템(200)의 동작에 대하여 설명한다.Next, an operation of the optimal path bowing system 200 according to the embodiment of the present invention configured as described above will be described.

본 발명의 실시예에서, 지연값(Latency)은 1레벨의 패어런트 단말기와 2 레벨의 차일드 단말기 간의 패킷의 전송에 대한 지연을 나타낸다. 또한, 수신 지연값(Receive Latency)은 차일드 단말기가 패킷을 수신해야 할 시간과 실제로 수신한 시간과의 차이를 나타낸다. 또한, 전송 지연값(Send Latency)은 패킷을 전송해야 할 시간과 실제로 전송한 시간과의 차이를 나타낸다. 그리고, 산정 지연값(Accumulate Latency)은 지연의 축적 값으로서, 이 값이 설정 값을 초과할 경우에 다이나믹 라우팅이 일어난다.In an embodiment of the present invention, the latency represents a delay for the transmission of a packet between a parent terminal of one level and a child terminal of two levels. In addition, the reception delay value (Receive Latency) represents the difference between the time that the child terminal should receive the packet and the actual received time. In addition, the send delay value represents a difference between the time at which the packet should be transmitted and the time at which the packet is actually transmitted. The calculation delay value (Accumulate Latency) is an accumulation value of delay, and dynamic routing occurs when this value exceeds a set value.

한편, 본 발명에서 상위 리스트(Senior List)는 차일드 단말기 입장에서 자신에게 멀티미디어 스트림을 전송해 주는 브로커 단말기들의 리스트이고, 하위 리스트(Junior List)는 패어런트 단말기 입장에서 자신으로부터 멀티미디어 스트림을 받는 브로커 단말기들의 리스트이다.Meanwhile, in the present invention, the senior list is a list of broker terminals transmitting a multimedia stream to the child terminal, and the lower list is a broker terminal receiving the multimedia stream from the parent terminal. List

따라서, 차일드 단말기 입장에서 브로커 단말기가 레벨 다운(Level Down)을 할 때, 새로 연결되는 패어런트 단말기가 차일드 단말기의 패어런드 단말기에게 하위 리스트를 요청하여 얻고, 새로운 패어런트 단말기는 새로 접속하는 차일드 단말기에게 하위 리스트를 넘겨준다. 이때, 차일드 단말기에게는 상위 리스트가 된다.Therefore, when the broker terminal level down from the child terminal point of view, the newly connected parent terminal requests a lower list from the parent terminal of the child terminal, and the new parent terminal newly connects the child terminal. Pass the sublist to. At this time, the child terminal becomes an upper list.

또한, 상위 및 하위 연결에 대한 오디오 패킷은 스트림 연결로 전송되며, 응 답을 먼저 한 패킷 순으로 전송을 하게 된다.In addition, audio packets for upper and lower connections are transmitted over the stream connection, and the response is transmitted in order of one packet first.

도 5는 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 방법에서, 전송 경로의 레벨 다운(Level Down)하는 과정을 설명하기 위한 순서도이다.FIG. 5 is a flowchart illustrating a process of leveling down a transmission path in an optimal path bowing method in multicasting according to an embodiment of the present invention.

먼저, 레벨 다운은 보우팅-중계형 브로커 단말기(230)가 상위 패어런트 레벨의 중계형 브로커 단말기(220)로부터 멀티미디어 스트림을 수신하는 중에 자신과의 경로에 이상이 발생하여 자신과의 경로를 한 단계 하향시키는 방법이다.First, the level down means that the path with the self occurs while the bowing-relay broker terminal 230 receives the multimedia stream from the relay broker terminal 220 of the upper parent level. Step down method.

차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 메인 서버(210)로부터 패어런트 레벨의 중계형 브로커 단말기(220)를 통해 멀티미디어 스트림을 수신하되, 비디오 스트림은 첫번째 중계형 브로커 단말기(220)로 수신하고, 오디오 스트림은 나머지 다른 중계형 브로커 단말기(222 ∼ 228)로부터 수신한다(S502).The child level bowling-relay broker terminal 230 receives the multimedia stream from the main server 210 through the parent level relay broker 220, but the video stream is the first relay broker terminal 220. And the audio stream is received from the other relay broker terminals 222 to 228 (S502).

차일드 단말기로서의 보우팅-중계형 브로커 단말기(230)는 서브 스트림으로 수신되는 각각의 오디오 전송 경로에 대하여, 전송량과 속도를 비교하여 가장 우수한 경로부터 경로 리스트로서 상위 리스트 관리부(420)에 저장 관리한다(S504).As the child terminal, the bowing-relay broker terminal 230 compares the transmission amount and the speed for each audio transmission path received in the sub-stream, and stores and manages it in the upper list manager 420 as the path list from the best path. (S504).

이후, 보우팅-중계형 브로커 단말기(230)는 멀티미디어 스트림을 수신하는 중에 지연(Latency)이나 연결 끊김 등의 이상이 있는지를 판단한다(S506).Thereafter, the bowling-relay broker terminal 230 determines whether there is an abnormality such as latency or disconnection while receiving the multimedia stream (S506).

멀티미디어 스트림을 수신하는 중에 이상이 발생한 경우, 보우팅-중계형 브로커 단말기(230)는 비디오 스트림의 전송 경로를 비롯한 다른 모든 오디오 전송 경로에 대하여, 각각의 경로에 대한 지연값을 얻은 후 전체적인 지연 평균값(Average Latency)을 구하고, 플래그 값(DownCount)을 증가시켜 임계 설정값을 초 과하는지를 판단하여, 상위 패어런트 단말기와 자신만의 이상인지 아니면 전체 수신 경로에 이상이 있는지를 판단한다(S508). 여기서, 지연 평균값이 전체 전송 경로들의 1/2 이상인 경우에 전체적으로 좋지 않다고 인식한다.If an error occurs while receiving the multimedia stream, the bowing- broker type broker terminal 230 obtains a delay value for each path for all other audio transmission paths, including the transmission path of the video stream, and then obtains an overall delay average value. (Average Latency) is obtained, the flag value (DownCount) is increased to determine whether the threshold setting value is exceeded, and it is determined whether or not there is an abnormality between the upper parent terminal and itself or the entire receiving path (S508). Here, it is recognized that the delay average value is not good overall when it is more than 1/2 of all transmission paths.

패어런트 레벨의 중계형 브로커 단말기(220)와 차일드 레벨의 보우팅-중계형 브로커 단말기(220) 자신 간의 이상으로 판단된 경우(S510), 차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 1레벨의 중계형 브로커 단말기(220)에게서 빠른 전송 경로의 하위 연결 정보를 수신한다(S512). 즉, 1레벨의 중계형 브로커 단말기(220)는 하위 차일드 레벨로의 전송에 이상이 발생할 경우, 하위 리스트 관리부(340)로부터 하위 연결 정보를 읽어와 2레벨의 보우팅-중계형 브로커 단말기(230)에게 제공해 준다.When it is determined that the abnormal level between the relay broker terminal 220 of the parent level and the child-level bowling-relay broker terminal 220 itself (S510), the child-level bowling-relay broker terminal 230 The lower level connection information of the fast transmission path is received from the relay broker terminal 220 of one level (S512). That is, when an abnormality occurs in the transmission to the lower child level, the relay broker terminal 220 of the first level reads the lower connection information from the lower list manager 340 and outputs the two-level relaying broker terminal 230. Provide).

따라서, 2레벨 차일드의 보우팅-중계형 브로커 단말기(230)는 1레벨 패어런트의 중계형 브로커 단말기(220)와 연결을 종료하고, 자신에 대해 차일드 레벨인 3레벨의 보우팅형 브로커 단말기(242)로 전환한다(S514). 즉, 설정값의 임계치를 비교하여 임계치를 초과할 경우에 전송 경로 설정의 레벨 다운(Level Down)이 발생하게 되는 것이다.Accordingly, the two-level child's bowling-relay broker terminal 230 terminates the connection with the one-level parent relay broker terminal 220 and has a three-level child-leveling broker terminal 242. (S514). That is, when the threshold value is exceeded by comparing the threshold value of the setting value, the level down of the transmission path setting occurs.

이어, 보우팅형 브로커 단말기(242)는 중계형 브로커 단말기(220)로부터 수신했던 하위 연결 정보를 상위리스트 관리부(420)에 상위 연결 정보로 저장하고, 상위 연결 정보를 근거로 2레벨의 패어런트 단말기 중에 가장 빠른 전송 경로의 보우팅-중계형 브로커 단말기(232)와 새로운 연결을 설정한다(S516).Subsequently, the bowing broker terminal 242 stores the lower connection information received from the relay broker terminal 220 as the upper connection information in the upper list manager 420, and the parent terminal of the second level based on the upper connection information. In step S516, a new connection is established with the bowing-relay broker terminal 232 of the fastest transmission path.

따라서, 보우팅형 브로커 단말기(242)는 가장 빠른 전송 경로의 새로운 보우 팅-중계형 브로커 단말기(232)를 통해 멀티미디어 스트림을 끊김이 없이 안전하게 수신할 수 있게 되는 것이다.Accordingly, the bowing broker terminal 242 can safely receive the multimedia stream through the new bowing-relay broker terminal 232 of the fastest transmission path.

도 6은 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 방법에서, 전송 경로의 레벨 업(Level Up)하는 과정을 설명하기 위한 순서도이다.6 is a flowchart illustrating a process of leveling up a transmission path in an optimal path bowing method in multicasting according to an embodiment of the present invention.

먼저, 레벨 업은 차일드 레벨의 보우팅형 브로커 단말기(240)가 상위 패어런트 레벨의 보우팅-중계형 브로커 단말기(230)로부터 멀티미디어 스트림을 수신하는 경로에 지연이나 끊김 등의 이상이 발생하여, 그 경로 이상이 전체 경로 중 1/2 이상인 경우에 상위 패어런트 단말기와의 전송 경로를 레벨 업시키는 방법이다.First, in the level up, an abnormality such as a delay or a disconnection occurs in a path where the child level bowling broker terminal 240 receives the multimedia stream from the high parent level bowling-relay broker terminal 230, This is a method of leveling up the transmission path with the upper parent terminal when the above is 1/2 or more of the entire paths.

차일드 레벨의 보우팅형 브로커 단말기(240)는 메인 서버(210)로부터 중계형 브로커 단말기(220) 및 패어런트 레벨의 보우팅-중계형 브로커 단말기(230)를 통해 멀티미디어 스트림을 수신한다(S602).The child level bowling broker terminal 240 receives a multimedia stream from the main server 210 through the relay broker terminal 220 and the parent level bowling-relay broker terminal 230 (S602).

차일드 단말기로서의 보우팅형 브로커 단말기(240)는 서브 스트림으로 수신되는 각각의 오디오 전송 경로에 대하여, 전송량과 속도를 비교하여 가장 우수한 전송 경로부터 경로(Path) 리스트로서 상위 리스트 관리부(420)에 저장 관리한다(S604).As the child terminal, the bowing broker terminal 240 compares the transmission amount and the speed for each audio transmission path received in the sub-stream, and stores and manages it in the upper list manager 420 as a path list from the best transmission path. (S604).

이후, 보우팅형 브로커 단말기(240)는 멀티미디어 스트림을 수신하는 중에 지연(Latency)이나 연결 끊김 등의 이상이 있는지를 판단한다(S606).Thereafter, the bowling broker terminal 240 determines whether there is an abnormality such as latency or disconnection while receiving the multimedia stream (S606).

멀티미디어 스트림의 수신에 이상이 발생한 경우, 보우팅형 브로커 단말기(240)는 비디오 스트림의 전송 경로를 비롯한 다른 모든 오디오 전송 경로에 대하 여, 각각의 경로에 대한 지연값을 얻어 전체적인 지연 평균값(Average Latency)을 구하고, 플래그 값(UpCount)을 증가시켜 임계 설정값을 초과하는지를 판단하여, 상위 패어런트 단말기와 자신만의 이상인지 아니면 전체 수신 경로에 이상이 있는지를 판단한다(S608). 여기서, 지연 평균값이 전체 전송 경로의 1/2 이상인 경우에 패어런트 레벨의 보우팅-중계형 브로커 단말기(230)를 통해 수신하는 전반적인 수신 경로의 연결 상황이 좋지 않다고 인식한다.In case of an abnormality in the reception of the multimedia stream, the bowing broker terminal 240 obtains a delay value for each path with respect to all other audio transmission paths including the transmission path of the video stream, thereby obtaining an overall average latency. It is determined whether the threshold value is exceeded by increasing the flag value UpCount, and it is determined whether there is an abnormality between the upper parent terminal and itself or whether there is an abnormality in the entire reception path (S608). Here, when the delay average value is 1/2 or more of the entire transmission path, it is recognized that the connection situation of the overall reception path received through the parent-level bowing- broker type broker terminal 230 is not good.

플래그 값을 증가시켜 임계 설정값과 비교하여 임계치를 초과한 경우(S610), 차일드 레벨의 보우팅형 브로커 단말기(240)는 2레벨의 패어런트인 보우팅-중계형 브로커 단말기(230)로부터 빠른 전송 경로의 상위 연결 정보를 수신한다(S612). 즉, 2레벨의 보우팅-중계형 브로커 단말기(230)는 하위 차일드 레벨로의 전송에 이상이 발생할 경우, 상위 리스트 관리부(420)로부터 상위 연결 정보를 읽어와 3레벨의 보우팅형 브로커 단말기(240)로 제공해 준다. If the flag value is increased and the threshold value is exceeded in comparison with the threshold setting value (S610), the child-level boating broker terminal 240 transmits quickly from the two-level parenting-relay broker terminal 230. The upper connection information of the path is received (S612). That is, when an abnormality occurs in the transmission to the lower child level, the two-level bowling-relay broker terminal 230 reads the upper connection information from the upper list management unit 420 and performs the three-level bowling broker terminal 240. )

따라서, 3레벨 차일드의 보우팅형 브로커 단말기(240)는 2레벨 패어런트의 첫번째 보우팅-중계형 브로커 단말기(230)와의 연결을 종료하고, 자신에 대해 패어런트 레벨인 2레벨의 두번째 보우팅-중계형 브로커 단말기(232)로 전환한다(S614).Accordingly, the three-level child's bowling broker terminal 240 terminates the first bowling of the two-level parent-connection with the relay broker terminal 230 and the second-level second bowling, which is the parent level to itself. Switch to the relay broker terminal 232 (S614).

이어, 새로운 보우팅-중계형 브로커 단말기(232)는 이전 중계형 브로커 단말기(220)로부터 수신했던 상위(Senior) 연결 정보를 근거로 1레벨의 중계형 브로커 단말기 중에 가장 빠른 전송 경로의 새로운 중계형 브로커 단말기(222)와 새로운 연결을 설정한다(S616).Subsequently, the new bowing-relay broker terminal 232 is the new relay type of the fastest transmission path among the 1-level relay broker terminals based on the senior connection information received from the previous relay broker terminal 220. A new connection is established with the broker terminal 222 (S616).

따라서, 최하위 차일드 레벨의 보우팅형 브로커 단말기(240)가 상위 패어런 트 레벨의 보우팅-중계형 브로커 단말기(232)로 레벨 업되고, 상위 1레벨에 대해 차일드 레벨이었던 보우팅-중계형 브로커 단말기(230)는 상위 패어런트 레벨과의 관계를 판단한 후 중계형 브로커 단말기(222)와 다이나믹 라우팅을 하게 된다.Thus, the lowest child level bowling broker terminal 240 is leveled up to the high parental level bowling-relay broker terminal 232 and has been the child level for the upper one level, the bowling-relay broker terminal. 230 determines dynamic relationship with the relay broker terminal 222 after determining the relationship with the upper parent level.

도 7은 본 발명의 실시예에 따른 멀티캐스팅에서의 최적 경로 보우팅 방법에서, 전송 경로를 레벨 쉬프트(Level Shift)하는 과정을 설명하기 위한 순서도이다.FIG. 7 is a flowchart illustrating a process of level shifting a transmission path in an optimal path bowing method in multicasting according to an embodiment of the present invention.

먼저, 레벨 쉬프트는 전술한 레벨 다운이나 레벨 업의 조건에 해당하지 않을 때 발생하는 동작으로, 차일드 레벨의 보우팅-중계형 브로커 단말기(230)가 상위 패어런트 레벨의 첫번째 중계형 브로커 단말기(220)로부터 멀티미디어 스트림을 수신하는 경로에 지연이나 끊김 등의 이상이 발생하여, 상위 패어런트 단말기와의 전송 경로를 이전(Shift)시키는 방법이다. 따라서, 레벨 쉬프트의 임계값은 항상 레벨 업이나 레벨 다운의 임계값보다는 작다.First, the level shift is an operation that occurs when the above level down or level up conditions do not correspond, and the child level bowling-relay broker terminal 230 is the first relay broker terminal 220 of the upper parent level. In this case, a delay or disconnection occurs in a path for receiving a multimedia stream, and the transmission path with the upper parent terminal is shifted. Therefore, the threshold of level shift is always smaller than the threshold of level up or level down.

차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 메인 서버(210)로부터 패어런트 레벨의 중계형 브로커 단말기(220)를 통해 멀티미디어 스트림을 수신하되, 비디오 스트림은 첫번째 중계형 브로커 단말기(220)를 통해 수신하고, 오디오 스트림은 나머지 다른 중계형 브로커 단말기(222 ∼ 228)를 통해 수신한다(S702).The child level bowling-relay broker terminal 230 receives the multimedia stream from the main server 210 through the parent level relay broker 220, but the video stream is the first relay broker terminal 220. Received through, and receives the audio stream through the other relay broker terminal (222 ~ 228) (S702).

차일드 단말기로서의 보우팅-중계형 브로커 단말기(230)는 서브 스트림으로 수신되는 각각의 오디오 전송 경로에 대하여, 전송량과 속도를 비교하여 가장 우수한 전송 경로부터 경로 리스트로서 상위 리스트 관리부(420)에 저장 관리한다(S704).As the child terminal, the bowing-relay broker terminal 230 compares the transmission amount and the speed for each audio transmission path received in the sub-stream, and stores and manages it in the upper list manager 420 as a path list from the best transmission path. (S704).

이후, 보우팅-중계형 브로커 단말기(230)는 멀티미디어 스트림을 수신하는 중에 지연(Latency)이나 연결 끊김 등의 이상이 있는지를 판단한다(S706).Thereafter, the bowling-relay broker terminal 230 determines whether there is an abnormality such as latency or disconnection while receiving the multimedia stream (S706).

멀티미디어 스트림을 수신하는 중에 이상이 발생한 경우, 보우팅-중계형 브로커 단말기(230)는 비디오 스트림의 전송 경로에 대하여 지연 평균값(Average Latency)을 구하고, 플래그 값을 증가시켜 레벨 쉬프트(ShiftCount) 임계 설정값을 초과했는지를 판단한다(S708). If an abnormality occurs while receiving the multimedia stream, the bowing- broker type broker terminal 230 obtains an average latency of the transmission path of the video stream, increases the flag value, and sets a level shift threshold. It is determined whether the value is exceeded (S708).

플래그 값이 레벨 쉬프트 임계 설정값을 초과한 것으로 판단된 경우(S710), 차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 1 레벨 패어런트의 중계형 브로커 단말기(220)와의 연결을 종료하고, 상위 리스트 관리부(420)의 상위 리스트 중에서 가장 전송 경로가 빠른 전송 경로를 선택하여 새로운 연결을 설정한다(S712).If it is determined that the flag value exceeds the level shift threshold setting value (S710), the child-level bowing- broker broker 230 terminates the connection with the one-level parent relay broker 220. In step S712, a new connection is established by selecting a transmission path having the fastest transmission path from the upper list of the upper list management unit 420.

따라서, 보우팅-중계형 브로커 단말기(230)가 멀티미디어 스트림을 수신하는 중에 이상이 발생하게 될 경우, 비디오 경로에 대하여 지연 평균값을 구하고, 플래그 값을 증가시켜 레벨 쉬프트 임계값을 초과할 경우에, 상위 레벨의 패어런트 단말기를 쉬프트하여 새로운 연결을 설정함으로써, 멀티미디어 스트림의 수신을 끊임없이 계속적으로 수행할 수 있게 된다.Accordingly, when an abnormality occurs while receiving the multimedia stream, the bowing- broker type terminal 230 obtains a delay average value for the video path and increases the flag value to exceed the level shift threshold. By shifting a higher level parent terminal to establish a new connection, it is possible to continuously and continuously receive a multimedia stream.

또한, 멀티미디어 스트림의 수신 경로가 NAT(Network Address Translator) 또는 방화벽(Firewall) 환경에 있을 경우에, 메인 서버(210)에서 제공된 멀티미디어 스트림은 TCP 터널링에 의해 전송되고, 중앙 서버인 메인 서버(210)와의 접속을 계속 유지할 수 있다. 즉, 공인 IP를 가지고 있는 브로커 단말기가 NAT 안에 있는 브로커 단말기로 직접 접속을 할 수 없기 때문에 우선 메인 서버(210)로 자신의 연결 정보를 전달해 역접속(Reverse Connection)을 요청하면, 메인 서버(210)는 NAT 안에 있는 브로커 단말기에게 역접속 요청이 있음을 알려주면서 역접속을 요청한 브로커 단말기의 연결 정보를 전달해 주게 되고, NAT 안에 있는 브로커 단말기가 그 연결 정보를 이용하여 공인 IP 브로커 단말기로 접속을 하게 되는 것이다.In addition, when the reception path of the multimedia stream is in a network address translator (NAT) or firewall (Firewall) environment, the multimedia stream provided from the main server 210 is transmitted by TCP tunneling, and the main server 210 which is a central server. You can keep your connection with you. That is, since a broker terminal having a public IP cannot directly connect to a broker terminal in a NAT, first, when a request for reverse connection is made by transferring its connection information to the main server 210, the main server 210 is requested. ) Informs the broker terminal in NAT that there is a reverse connection request and delivers the connection information of the broker terminal that requested the reverse connection, and allows the broker terminal in the NAT to connect to the public IP broker terminal using the connection information. Will be.

한편, 중계형 브로커 단말기나 보우팅형 브로커 단말기는 한 개의 오디오 전송 경로가 비디오 전송 경로로 전환되면, 오디오 데이터의 수신을 위해 나머지 예비 경로 중 하나를 오디오 전송 경로에 추가시킨다. 따라서, 항상 최적의 중계자 후보를 대기시킴으로써 멀티미디어 스트림의 대용량 데이터를 보다 빠르게 수신할 수 있다.Meanwhile, if one audio transmission path is switched to the video transmission path, the relay broker terminal or the bowling broker terminal adds one of the remaining spare paths to the audio transmission path to receive the audio data. Therefore, it is possible to receive a large amount of data of the multimedia stream faster by always waiting for the optimal repeater candidate.

전술한 바와 같이 본 발명에 의하면, 메인 서버로부터 멀티캐스팅 된 일정 크기 이상의 멀티미디어 데이터를 스트림 형태로 수신하는 중에 비디오 스트림의 지연이나 끊김 등의 이상이 발생할 경우에, 다수의 오디오 전송 경로 중에 가장 전송 속도가 가장 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하되, 각각의 전송 경로의 지연값 임계값에 따라 레벨 업이나 레벨 다운 및 레벨 쉬프트를 통하여 전송 경로를 설정함으로써, 대용량의 멀티미디어 스트림을 끊김없이 빠르게 전송할 수 있도록 하는 멀티캐스팅에서의 최적 경로 보우팅 방법 및 시스템을 실현할 수 있다.As described above, according to the present invention, when an abnormality such as delay or interruption of a video stream occurs while receiving multimedia data of a predetermined size or more multicasted from the main server in the form of a stream, the transmission rate among the plurality of audio transmission paths is the highest. Sets the fastest audio transmission path as the video transmission path, but sets the transmission path through level up, level down, and level shift according to the delay threshold of each transmission path, so that a large amount of multimedia streams can be transmitted quickly and seamlessly. A method and system for optimal path bowing in multicasting can be realized.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention.

따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea 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 these embodiments.

본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.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.

이상에서 설명한 바와 같이 본 발명에 의하면, 멀티미디어 스트림을 전송함에 있어서 최적의 전송 경로를 항상 대기시켜 보다 빠르고 안정적으로 전송할 수 있다. 또한, 비디오 스트림의 수신에 이상이 있을 경우 다수의 오디오 수신 경로 중 가장 속도가 빠른 전송 경로를 비디오 수신 경로로 설정함으로써, 비디오 스트림을 지연이나 끊김이 없이 항상 계속적으로 수신할 수 있게 된다.As described above, according to the present invention, it is possible to transmit the multimedia stream more quickly and stably by always waiting for the optimum transmission path. In addition, when there is an error in receiving the video stream, by setting the fastest transmission path among the plurality of audio reception paths as the video reception path, the video stream can be continuously received without delay or interruption at all times.

가장 빠른 최적의 경로를 설정함에 있어서, 각 전송 경로의 지연값에 따라 전송 경로를 레벨 업이나 레벨 다운 및 레벨 쉬프트할 수 있다.In setting the fastest optimal path, the transmission path can be leveled up, down, and level shifted according to the delay value of each transmission path.

또한, 수시로 발생하는 트래픽 상황에 맞게 미리 자동적으로 대비하고 있다가 일정 누적시간 동안 데이터의 지연이 생기면 중계자 후보 중에서 다음 최적의 경로로 전환시킴으로써 데이터 전송의 연속성이 최대한 보장되는 장점이 있다.
In addition, if there is a delay of data for a predetermined cumulative time in advance automatically prepared for a traffic situation that occurs frequently, there is an advantage that the continuity of data transmission is guaranteed to the maximum by switching to the next optimal path among the candidate candidates.

Claims (16)

메인 서버로부터 멀티캐스팅되는 멀티미디어 스트림을 가장 빠르고 안정적으로 수신하는 경로를 보우팅(Voting)하는 최적 경로 보우팅 시스템에 있어서,In the optimal path bowing system for bowing the path that receives the multimedia stream that is multicasted from the main server fastest and reliably, 상기 메인 서버로부터 멀티캐스팅된 상기 멀티미디어 스트림을 최초로 수신하여 하위 레벨의 단말기들에게 중계 전송하는 중계형 브로커 단말기;A relay broker terminal which first receives the multimedia stream multicasted from the main server and relays the multimedia stream to lower level terminals; 자신에게 직접 연결된 상기 중계형 브로커 단말기로부터 비디오 스트림을 수신하고, 나머지 다른 중계형 브로커 단말기로부터 오디오 스트림을 수신하되, 상기 비디오 스트림의 수신 경로에 이상이 있는 경우에 각각의 오디오 전송 경로에 대해 수신양과 전송 속도를 비교하여 가장 빠른 전송 경로를 보우팅하여 새로운 비디오 전송 경로로 설정하고, 수신한 상기 멀티미디어 스트림을 하위 레벨의 단말기로 중계 전송해 주는 보우팅-중계형 브로커 단말기;Receive a video stream from the relay broker terminal directly connected to itself, and receives the audio stream from the other relay broker terminal, if there is an error in the receiving path of the video stream and the amount of reception for each audio transmission path A bowing-relay broker terminal configured to compare the transmission speeds, bow the fastest transmission path, set a new video transmission path, and relay the received multimedia stream to a lower level terminal; 상기 보우팅-중계형 브로커 단말기로부터 상기 멀티미디어 스트림을 수신하되, 자신과 직접 연결된 상기 보우팅-중계형 브로커 단말기로부터 상기 비디오 스트림을 수신하고, 나머지 다른 보우팅-중계형 브로커 단말기들로부터 상기 오디오 스트림을 수신하며, 상기 비디오 스트림의 전송 경로에 이상이 있는 경우에 다수의 오디오 전송 경로 중 가장 전송이 빠른 오디오 전송 경로를 보우팅하여 상기 비디오 전송 경로로 설정하여 상기 비디오 스트림을 수신하는 보우팅형 브로커 단말기를 포함하는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.Receive the multimedia stream from the bowing-relay broker terminal, receive the video stream from the bowing-relay broker terminal directly connected to it, and the audio stream from the other bowing-relay broker terminals. And a bowing broker terminal receiving the video stream by bowing the audio transmission path which is the fastest among a plurality of audio transmission paths and setting the video transmission path when there is an error in the transmission path of the video stream. Optimal path bowing system for multicasting comprising a. 제 1 항에 있어서,The method of claim 1, 상기 중계형 브로커 단말기는, 상기 멀티미디어 스트림을 전송하기 위하여 연결할 타겟 레벨(Target Level) 정보와 현재 연결의 속도 정보 값을 저장하는 연결정보 관리부; 데이터 전송에 필요한 각종 메시지들을 처리하고, 지연값(Latency)에 대한 처리를 하며, 다이나믹 라우팅(Dynamic Routing)에 대한 컨트롤(Control)을 담당하는 데이터 송수신 컨트롤부; 해당 채널(Sub Stream)별로 연결을 관리하는 미디어채널 관리부; 상기 멀티미디어 스트림을 하위 레벨의 단말기들에게 전송할 경로 리스트 정보를 저장하고 있는 하위(Junior) 리스트 관리부; 및 상기 멀티미디어 스트림을 외부로 송출하는 데이터 송신부를 포함하는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.The relay broker terminal may include: a connection information manager configured to store target level information and a speed information value of a current connection to transmit the multimedia stream; A data transmission / reception control unit for processing various messages required for data transmission, processing a delay value, and controlling a dynamic routing; A media channel manager managing a connection for each channel (Sub Stream); A lower list manager which stores route list information for transmitting the multimedia stream to lower-level terminals; And a data transmitter for transmitting the multimedia stream to the outside. 제 1 항에 있어서,The method of claim 1, 상기 보우팅-중계형 브로커 단말기는, 상기 중계형 단말기로부터 송출된 상기 멀티미디어 스트림을 수신하는 데이터 수신부; 상위 레벨의 단말기들로부터 상기 멀티미디어 스트림을 수신하기 위한 전송 경로 리스트 정보를 저장하고 있는 상위(Senior) 리스트 관리부; 상기 멀티미디어 스트림을 전송하기 위하여 연결할 타겟 레벨(Target Level) 정보와 현재 연결의 속도 정보 값을 저장하는 연결정보 관리부; 데이터 전송에 필요한 각종 메시지들을 처리하고, 지연값(Latency)에 대한 처리를 하며, 다이나믹 라우팅(Dynamic Routing)에 대한 컨트롤(Control)을 담당하는 데이터 송수신 컨트롤부; 해당 채널(Sub Stream)별로 연결을 관리하는 미디어채 널 관리부; 상기 멀티미디어 스트림을 하위 레벨의 단말기들에게 전송할 경로 리스트 정보를 저장하고 있는 하위(Junior) 리스트 관리부; 및 상기 멀티미디어 스트림을 외부로 송출하는 데이터 송신부를 포함하는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.The bowling-relay broker terminal may include: a data receiver configured to receive the multimedia stream transmitted from the relay terminal; A senior list manager configured to store transmission path list information for receiving the multimedia stream from upper level terminals; A connection information manager configured to store target level information and a speed information value of a current connection to transmit the multimedia stream; A data transmission / reception control unit for processing various messages required for data transmission, processing a delay value, and controlling a dynamic routing; A media channel manager managing a connection for each channel (Sub Stream); A lower list manager which stores route list information for transmitting the multimedia stream to lower-level terminals; And a data transmitter for transmitting the multimedia stream to the outside. 제 1 항에 있어서,The method of claim 1, 상기 오디오 전송 경로의 오디오 속도는 패킷의 크기*256/(현재시각-패킷전송시간)/하위레벨(Child)의 총수를 통해 얻는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.The audio speed of the audio transmission path is obtained by the total number of packet size * 256 / (current time-packet transmission time) / sub-level (Child). 제 1 항에 있어서,The method of claim 1, 상기 중계형 브로커 단말기와 상기 보우팅-중계형 브로커 단말기 및 상기 보우팅형 브로커 단말기에는 최적 경로 보우팅 프로그램이 설치되어 있는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.Optimal route bowing system for multicasting, characterized in that an optimal route bowing program is installed in the relay broker terminal, the bowing-relay broker terminal and the bowing broker terminal. 제 3 항에 있어서,The method of claim 3, wherein 상기 하위 리스트 관리부 및 상기 상위 리스트 관리부는 새로운 연결 설정시 기존의 연결 리스트와 속도를 비교하여 내림차순으로 속도를 정렬하여 리스트를 갱신하는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.And the lower list manager and the upper list manager update the list by comparing speeds in descending order by comparing speeds with existing linked lists when establishing a new connection. 제 3 항에 있어서,The method of claim 3, wherein 상기 데이터 수신부는 상기 멀티미디어 스트림을 수신하는 중에 연결 지연이나 단절이 발생할 경우, 상기 상위 리스트 관리부의 현재 리스트에서 제일 속도가 빠른 가장 상위의 값을 읽어와 전송 경로로 설정하고, 연결 경로로 설정된 상기 전송 경로에 대해서는 그 속도 값을 1/2로 낮추어 후보자 리스트를 갱신하는 것을 특징으로 하는 멀티캐스팅을 위한 최적 경로 보우팅 시스템.If a connection delay or disconnection occurs while receiving the multimedia stream, the data receiver reads the highest value of the fastest value from the current list of the upper list manager and sets the transmission path, and sets the transmission path. An optimal path bowing system for multicasting, wherein the path value is reduced to 1/2 to update the candidate list. 제 6 항에 있어서,The method of claim 6, 상기 멀티미디어 스트림의 수신 경로가 NAT(Network Address Translator) 또는 방화벽(Firewall) 환경에 있을 경우에, 상기 메인 서버에서 제공된 멀티미디어 스트림은 TCP 터널링에 의해 전송되고, 중앙 서버로서의 상기 메인 서버와의 접속을 계속 유지하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 시스템.When the reception path of the multimedia stream is in a network address translator (NAT) or firewall environment, the multimedia stream provided by the main server is transmitted by TCP tunneling and continues to connect with the main server as a central server. Optimal path bowing system in multicasting, characterized in that it is maintained. 메인 서버로부터 중계형 브로커 단말기를 통해 멀티미디어 스트림을 수신하고 하위 레벨의 단말기들에게 중계 전송하는 보우팅-중계형 브로커 단말기와, 상기 보우팅-중계형 브로커 단말기로부터 중계 전송된 상기 멀티미디어 스트림을 수신하는 보우팅(Voting)형 단말기를 포함하는 시스템의 최적 경로 보우팅 방법에 있어서,Receiving the multimedia stream through the relay broker terminal from the main server and relayed to the lower-level terminals, and receiving the multimedia stream relayed from the bowling-relay broker terminal In the optimal path bowing method of a system including a bowing terminal, 상기 메인 서버로부터 전송 경로를 통해 비디오 및 오디오가 포함된 상기 멀티미디어 스트림을 수신하는 제 1 단계;A first step of receiving the multimedia stream including video and audio from the main server through a transmission path; 각각의 오디오 전송 경로에 대하여 수신양과 속도를 비교하여 전송 경로를 상위 리스트 및 하위 리스트로 저장하는 제 2 단계;A second step of storing the transmission paths as an upper list and a lower list by comparing a reception amount and a speed for each audio transmission path; 비디오 스트림의 수신에 지연이나 끊김을 포함하는 이상이 발생하였는지를 판단하는 제 3 단계;A third step of determining whether an abnormality including a delay or a truncation occurs in the reception of the video stream; 비디오 전송 경로의 지연 평균값을 구하고, 플래그 값을 증가시켜 임계 설정값을 초과하는지를 판단하는 제 4 단계; 및Obtaining a delay average value of the video transmission path and increasing a flag value to determine whether a threshold setting value is exceeded; And 상기 플래그 값이 상기 임계 설정값을 초과시, 상기 각각의 오디오 전송 경로 중 수신양과 전송 속도를 비교하여 가장 빠른 전송 경로를 보우팅하여 비디오 스트림의 수신 경로로 설정하는 제 5 단계를 포함하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.And when the flag value exceeds the threshold setting value, comparing the received amount with the transmission rate among the respective audio transmission paths, bowing the fastest transmission path and setting it as a reception path of the video stream. Optimal Path Bowing Method in Multicasting. 제 9 항에 있어서,The method of claim 9, 상기 제 4 단계의 판단 결과, 상기 보우팅-중계형 브로커 단말기를 기준으로 상기 보우팅-중계형 브로커 단말기와 상기 중계형 단말기 간의 하나의 전송 경로에 이상이 있는 경우, 상기 보우팅-중계형 브로커 단말기는 상기 중계형 단말기로부터 빠른 전송 경로의 하위 연결 정보를 수신하고, 상기 중계형 단말기와의 연결을 종료하며, 하위 레벨의 상기 보우팅형 단말기로 전환하고 상기 하위 연결 정보를 상위 연결 정보로 하여 상기 상위 연결 정보를 근거로 가장 빠른 전송 경로의 다른 보우팅-중계형 브로커 단말기와 새로운 연결을 설정함으로써, 전송 경로의 레벨 다운(Level Down)을 수행하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우 팅 방법.As a result of the determination in the fourth step, when there is an error in one transmission path between the bowling-relay broker terminal and the relay terminal based on the bowing-relay broker terminal, the bowing-relay broker The terminal receives the lower connection information of the fast transmission path from the relay terminal, terminates the connection with the relay terminal, switches to the bowing terminal at a lower level, and sets the lower connection information as upper connection information. Optimal route bowing in multicasting characterized by performing a level down of the transmission path by establishing a new connection with another bowing-relay broker terminal of the fastest transmission path based on the upper connection information. Way. 제 9 항에 있어서,The method of claim 9, 상기 제 4 단계의 판단 결과, 상기 보우팅형 브로커 단말기가 상기 보우팅-중계형 브로커 단말기를 통해 상기 멀티미디어 스트림을 수신할 때, 상기 보우팅형 브로커 단말기와 상기 보우팅-중계형 브로커 단말기 간의 전반적인 전송 경로에 이상이 있는 경우, 상기 보우팅형 브로커 단말기는 상기 보우팅-중계형 브로커 단말기로부터 상위 연결 정보를 수신하고, 상기 상위 연결 정보를 근거로 상기 보우팅-중계형 브로커 단말기와의 연결을 종료하여 다른 보우팅-중계형 브로커 단말기로 전환하며, 가장 빠른 전송 경로의 다른 중계형 브로커 단말기와 새로운 연결을 설정함으로써, 전송 경로의 레벨 업(Level Up)을 수행하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.As a result of the determination of the fourth step, when the bowing broker terminal receives the multimedia stream through the bowing-relay broker terminal, an overall transmission path between the bowing broker terminal and the bowing-relay broker terminal If there is an error, the bowing broker terminal receives higher connection information from the bowing-relay broker terminal and terminates the connection with the bowing-relay broker terminal based on the higher connection information. Switching to a bowing-relay broker terminal and establishing a new connection with another relay broker terminal of the fastest transmission path, thereby performing a level up of the transmission path. How to bow. 제 9 항에 있어서,The method of claim 9, 상기 제 4 단계의 판단 결과, 상기 보우팅-중계형 브로커 단말기를 기준으로 상기 보우팅-중계형 브로커 단말기와 상기 중계형 브로커 단말기 간의 전송 경로에 이상이 있되, 하나의 전송 경로에 이상이 있는 것도 아니고 전반적인 전송 경로에 이상이 있는 것도 아닌 경우에, 상기 중계형 브로커 단말기와의 연결을 종료하고, 상위 리스트 관리부의 상위 리스트 중에서 가장 전송 경로가 빠른 전송 경로를 선택하여 해당 다른 중계형 브로커 단말기와 새로운 연결을 설정함으로써, 전송 경로 의 레벨 쉬프트(Level Shift)를 수행하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.As a result of the determination in the fourth step, there is an error in the transmission path between the bowling-relay broker terminal and the relay broker terminal based on the bowing-relay broker terminal, but there is an error in one transmission path. If there is no abnormality in the overall transmission path, the connection with the relay broker terminal is terminated, and the transmission path having the fastest transmission path is selected from the upper list of the upper list manager so that the other relay broker terminal may be newly connected. Optimal path bowing method in multicasting, characterized by performing level shift of a transmission path by establishing a connection. 제 9 항에 있어서,The method of claim 9, 상기 오디오 전송 경로의 오디오 속도는 패킷의 크기*256/(현재시각-패킷전송시간)/하위레벨(Child)의 총수를 통해 얻는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.The audio rate of the audio transmission path is obtained by the total number of packet size * 256 / (current time-packet transmission time) / sub-level (Child). 제 9 항에 있어서,The method of claim 9, 상기 멀티미디어 스트림의 수신 경로가 NAT(Network Address Translator) 또는 방화벽(Firewall) 환경에 있을 경우에, 상기 메인 서버에서 제공된 멀티미디어 스트림은 TCP 터널링에 의해 전송되고, 중앙 서버로서의 상기 메인 서버와의 접속을 계속 유지하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.When the reception path of the multimedia stream is in a network address translator (NAT) or firewall environment, the multimedia stream provided by the main server is transmitted by TCP tunneling and continues to connect with the main server as a central server. Optimal path bowing method in multicasting, characterized in that it is maintained. 제 9 항에 있어서,The method of claim 9, 연결 경로로 설정된 전송 경로에 대해서는 그 속도 값을 1/2로 낮추어 전송 경로 리스트를 갱신하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.The method for optimal path voting in multicasting, wherein the transmission path list is updated by reducing the speed value to 1/2 for the transmission path set as the connection path. 제 9 항에 있어서,The method of claim 9, 상기 중계형 브로커 단말기와, 상기 보우팅-중계형 브로커 단말기 및 상기 보우팅형 브로커 단말기는, 중계 기능 수행 프로그램에 따라 다수의 멀티캐스팅 라우터를 경유하여 상기 메인 서버내에 탑재된 멀티캐스팅 중계 프로그램과 일대일로 통신하여 상기 메인 서버로부터 제공되는 상기 멀티미디어 스트림을 수신하는 것을 특징으로 하는 멀티캐스팅에서의 최적 경로 보우팅 방법.The relay broker terminal, the bowling-relay broker terminal and the bowling broker terminal are one-to-one with a multicasting relay program mounted in the main server via a plurality of multicasting routers according to a relay function execution program. And receiving the multimedia stream provided from the main server by communicating with the main server.
KR1020040072488A 2004-09-10 2004-09-10 Method and System for Voting Optimum Route in Multicasting KR100628339B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040072488A KR100628339B1 (en) 2004-09-10 2004-09-10 Method and System for Voting Optimum Route in Multicasting

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040072488A KR100628339B1 (en) 2004-09-10 2004-09-10 Method and System for Voting Optimum Route in Multicasting

Publications (2)

Publication Number Publication Date
KR20060023687A true KR20060023687A (en) 2006-03-15
KR100628339B1 KR100628339B1 (en) 2006-09-27

Family

ID=37129798

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040072488A KR100628339B1 (en) 2004-09-10 2004-09-10 Method and System for Voting Optimum Route in Multicasting

Country Status (1)

Country Link
KR (1) KR100628339B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100741885B1 (en) * 2005-10-26 2007-07-23 지유소프트 주식회사 method for constructing application layer multicast group using tree structure and the method thereof
KR100959065B1 (en) * 2007-12-27 2010-05-20 주식회사 케이티 Method and system for minimizing delay time between terminal
KR101159580B1 (en) * 2010-02-28 2012-06-26 한양대학교 산학협력단 Re-configuration of wireless sensor network for an adaptive human cognition synchronization management
CN115348204A (en) * 2022-07-20 2022-11-15 慧之安信息技术股份有限公司 Real-time streaming media distribution network system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004080434A (en) 2002-08-19 2004-03-11 Anritsu Corp Network relay device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100741885B1 (en) * 2005-10-26 2007-07-23 지유소프트 주식회사 method for constructing application layer multicast group using tree structure and the method thereof
KR100959065B1 (en) * 2007-12-27 2010-05-20 주식회사 케이티 Method and system for minimizing delay time between terminal
KR101159580B1 (en) * 2010-02-28 2012-06-26 한양대학교 산학협력단 Re-configuration of wireless sensor network for an adaptive human cognition synchronization management
CN115348204A (en) * 2022-07-20 2022-11-15 慧之安信息技术股份有限公司 Real-time streaming media distribution network system
CN115348204B (en) * 2022-07-20 2024-03-29 慧之安信息技术股份有限公司 Real-time streaming media distribution network system

Also Published As

Publication number Publication date
KR100628339B1 (en) 2006-09-27

Similar Documents

Publication Publication Date Title
US9338096B2 (en) Multicast tree packing for multi-party video conferencing under SDN environment
US8159949B2 (en) Linked-list hybrid peer-to-peer system and method for optimizing throughput speed and preventing data starvation
US9602591B2 (en) Managing TCP anycast requests
US8612621B2 (en) Method for constructing network topology, and streaming delivery system
US8289979B2 (en) Optimising communications
US8289949B2 (en) Optimising communications
US10771540B2 (en) Anycast routing techniques in a network
US10397094B2 (en) Multicast routing system and method
Tu et al. Resource-aware video multicasting via access gateways in wireless mesh networks
US8040794B2 (en) Server to network signaling method for rapid switching between anycast multicast sources
KR20100043190A (en) Assisted peer-to-peer media streaming
US9014051B2 (en) Updating multicast group information of a client device of a wireless mesh network
JP2005508121A (en) Data transmission process and system
CN102546381B (en) Method of selecting IP (internet protocol) network data transmission path
US20090190586A1 (en) Method and system for voting optimal route in multicasting
US20220417147A1 (en) Traffic monitoring and orchestration
KR100628339B1 (en) Method and System for Voting Optimum Route in Multicasting
EP2940967B1 (en) Content-centric networking
Badhusha et al. Improved video streaming using MSVC and nonoverlapping zone routing multipath propagation over MANET s
EP1797675B1 (en) Source specific multicast routing
KR101089510B1 (en) Data transmitting method, operating method of download client and operating method of network server
Miyoshi et al. Congestion control for multi-source content retrieval in content centric networks
Fathima A content-centric efficient search with structured overlays in P2P-VoD system
WO2012011378A1 (en) Content distribution system, content distribution device, content distribution method and program
Karl et al. Mediating multimedia traffic with strict delivery constraints

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee
FPAY Annual fee payment

Payment date: 20110329

Year of fee payment: 5

R401 Registration of restoration