KR20060023687A - Method and system for voting optimum route in multicasting - Google Patents
Method and system for voting optimum route in multicasting Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/029—Firewall traversal, e.g. tunnelling or, creating pinholes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering 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
도 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
도 4는 보우팅 중계형 브로커 단말기(230)의 내부 구성을 개략적으로 나타낸 구성도,4 is a configuration diagram schematically showing an internal configuration of a bowing
도 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
한편, 중계 클라이언트를 통해 멀티미디어 스트림을 수신하는 다른 클라이언트에게 있어서는 대용량의 데이터를 수신하기 위해서는 가장 빠른 전송 경로를 갖는 중계 클라이언트를 선택해야 한다. 가장 빠른 전송 경로를 찾는 일반적인 방식으로는 가장 적게 라우터를 경유하는 "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
본 발명의 실시예에 따른 최적 경로 보우팅 시스템(200)은, 메인 서버(Dispatcher)(210), 중계형 브로커 단말기(220 ∼ 228), 보우팅-중계형 브로커 단말기(230 ∼ 238), 보우팅형 브로커 단말기(240 ∼ 248) 등을 포함한 구성을 갖는다.Optimal
메인 서버(210)는 'Cast 365 Plus Server'로서 동영상과 비디오 및 오디오를 포함하는 방송용 멀티미디어 데이터를 스트림 형태로 멀티캐스팅한다.The
중계형 브로커 단말기(220 ∼ 228)는 메인 서버(210)로부터 멀티캐스팅된 멀티미디어 스트림을 최초로 수신하여 네트워크에 연결된 클라이언트 단말기나 하위 레벨의 브로커 단말기들에게 멀티캐스팅 라우터를 통해 터널링을 수행하여 중계 전 송한다. 즉, 멀티미디어 전송의 브로커 단말기에서 중계 기능을 강조하는 단말기이다.The
보우팅-중계형 브로커 단말기(230 ∼ 238)에는 최적 경로 보우팅 프로그램이 설치되어 있으며, 자신에게 직접 연결된 중계형 브로커 단말기(220)로부터 비디오 스트림을 수신하고, 나머지 중계형 브로커 단말기(222 ∼ 228)로부터 오디오 스트림을 수신하되, 비디오 스트림의 전송 경로에 이상이 있는 경우에 전술한 보우팅 과정을 통해 가장 전송이 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하여 비디오 스트림을 수신하며, 중계형 브로커 단말기로부터 수신한 멀티미디어 스트림을 하위 레벨의 보우팅형 브로커 단말기(240 ∼ 248)로 중계 전송해 준다.The optimal route bowing program is installed in the bowing-
보우팅형 브로커 단말기(240 ∼ 248)는 최적 경로 보우팅 프로그램이 설치되어 있으며, 보우팅-중계형 브로커 단말기(230 ∼ 238)로부터 멀티미디어 스트림을 멀티캐스팅 라우터를 통해 수신하되, 자신과 직접 연결된 보우팅-중계형 브로커 단말기(230)로부터 비디오 스트림을 수신하고, 나머지 보우팅-중계형 브로커 단말기(232 ∼ 238)로부터 오디오 스트림을 수신하며, 비디오 스트림의 전송 경로에 이상 또는 오류가 있는 경우에 전술한 보우팅 과정을 통하여 다수의 오디오 전송 경로 중 가장 전송이 빠른 오디오 전송 경로를 비디오 전송 경로로 설정하여 비디오 스트림을 수신하게 된다.The
메인 서버(210)에는 멀티캐스팅 중계 프로그램이 설치되어 있고, 메인 서버(210)는 멀티캐스팅 중계 프로그램과 각 클라이언트 단말기 간에 통신을 수행하기 위한 중계 기능 수행 프로그램을 각 클라이언트 단말기로 다운로드시키며, 보우팅- 중계형 브로커 단말기(230 ∼ 238) 및 보우팅형 브로커 단말기(240 ∼ 248)에는 메인 서버(210)로부터 다운로드(Download)한 중계 기능 수행 프로그램이 설치되어 있다.The
중계 기능 수행 프로그램은 다수의 멀티캐스팅 라우터를 경유하여 메인 서버(210)내에 탑재된 멀티캐스팅 중계 프로그램과 일대일로 통신하여 메인 서버(210)로부터 제공되는 멀티미디어 스트림을 수신한다.The relay function performing program receives the multimedia stream provided from the
도 3은 중계형 브로커 단말기(220)의 내부 구성을 개략적으로 나타낸 구성도이다.3 is a configuration diagram schematically showing an internal configuration of the
도 3에 도시된 바와 같이, 중계형 브로커 단말기(220)는 멀티미디어 스트림을 전송하기 위하여 연결할 타겟 레벨(Target Level) 정보와 현재 연결의 속도 정보 값을 저장하는 연결정보 관리부(310), 데이터 전송에 필요한 각종 메시지들을 처리하고, 지연값(Latency)에 대한 처리를 하며, 다이나믹 라우팅(Dynamic Routing)에 대한 컨트롤(Control)를 담당(maxAccumLatency 도달시 처리)하는 데이터 송수신 컨트롤부(320), 해당 채널(Sub Stream)별로 연결을 관리하는 미디어채널 관리부(330), 멀티미디어 스트림을 하위 레벨의 단말기들에게 전송할 경로 리스트 정보를 저장하고 있는 하위(Junior) 리스트 관리부(340), 및 멀티미디어 스트림을 외부로 송출하는 데이터 송신부(350) 등을 포함한 구성을 갖는다.As shown in FIG. 3, the
여기서, 데이터 송신부(350)의 경우, 하위 레벨의 차일드 단말기와의 연결 상태를 점검하여 다이나믹 라우팅이 이루어지도록 한다.In this case, the
도 4는 보우팅-중계형 브로커 단말기(230)의 내부 구성을 개략적으로 나타낸 구성도이다.4 is a configuration diagram schematically showing an internal configuration of the bowing-
도 4의 보우팅-중계형 브로커 단말기(230)는 중계형 브로커 단말기(220)와 동일한 내부 구성 요소에, 중계형 브로커 단말기(220)로부터 송출된 멀티미디어 스트림을 수신하는 데이터 수신부(410)와, 상위 레벨의 단말기들로부터 멀티미디어 스트림을 수신하기 위한 전송 경로 리스트 정보를 저장하고 있는 상위(Senior) 리스트 관리부(420)를 추가로 더 포함한 구성을 갖는다.The bowing-
여기서, 하위 리스트 관리부(340) 및 상위 리스트 관리부(420)는 비디오 전송 경로 외에 다수의 오디오 전송 경로를 저장하고 있는데, 다음 수학식1과 같이 얻어진 오디오 스트림의 전송 속도(Speed)를 비교하여 빠른 순으로 리스트 정보를 정렬하여 저장하고 있다.Here, the
따라서, 하위 리스트 관리부(340) 및 상위 리스트 관리부(420)는 새로운 연결시 기존의 연결 리스트와 속도를 비교하여 내림차순으로 속도를 정렬하여 리스트를 갱신한다.Therefore, the
데이터 수신부(410)는 멀티미디어 스트림을 수신하는 중에 연결 지연이나 단절이 발생할 경우, 상위 리스트 관리부(420)의 현재 리스트에서 가장 상위의 값, 즉 제일 속도가 빠른 값을 읽어와 전송 경로로 설정한다. 또한, 연결 경로로 설정 된 전송 경로에 대해서는 그 속도 값을 1/2로 낮추어 후보자 리스트를 갱신한다.When a connection delay or disconnection occurs while receiving the multimedia stream, the
이어, 전술한 바와 구성된 본 발명의 실시예에 따른 최적 경로 보우팅 시스템(200)의 동작에 대하여 설명한다.Next, an operation of the optimal
본 발명의 실시예에서, 지연값(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-
차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 메인 서버(210)로부터 패어런트 레벨의 중계형 브로커 단말기(220)를 통해 멀티미디어 스트림을 수신하되, 비디오 스트림은 첫번째 중계형 브로커 단말기(220)로 수신하고, 오디오 스트림은 나머지 다른 중계형 브로커 단말기(222 ∼ 228)로부터 수신한다(S502).The child level bowling-
차일드 단말기로서의 보우팅-중계형 브로커 단말기(230)는 서브 스트림으로 수신되는 각각의 오디오 전송 경로에 대하여, 전송량과 속도를 비교하여 가장 우수한 경로부터 경로 리스트로서 상위 리스트 관리부(420)에 저장 관리한다(S504).As the child terminal, the bowing-
이후, 보우팅-중계형 브로커 단말기(230)는 멀티미디어 스트림을 수신하는 중에 지연(Latency)이나 연결 끊김 등의 이상이 있는지를 판단한다(S506).Thereafter, the bowling-
멀티미디어 스트림을 수신하는 중에 이상이 발생한 경우, 보우팅-중계형 브로커 단말기(230)는 비디오 스트림의 전송 경로를 비롯한 다른 모든 오디오 전송 경로에 대하여, 각각의 경로에 대한 지연값을 얻은 후 전체적인 지연 평균값(Average Latency)을 구하고, 플래그 값(DownCount)을 증가시켜 임계 설정값을 초 과하는지를 판단하여, 상위 패어런트 단말기와 자신만의 이상인지 아니면 전체 수신 경로에 이상이 있는지를 판단한다(S508). 여기서, 지연 평균값이 전체 전송 경로들의 1/2 이상인 경우에 전체적으로 좋지 않다고 인식한다.If an error occurs while receiving the multimedia stream, the bowing- broker
패어런트 레벨의 중계형 브로커 단말기(220)와 차일드 레벨의 보우팅-중계형 브로커 단말기(220) 자신 간의 이상으로 판단된 경우(S510), 차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 1레벨의 중계형 브로커 단말기(220)에게서 빠른 전송 경로의 하위 연결 정보를 수신한다(S512). 즉, 1레벨의 중계형 브로커 단말기(220)는 하위 차일드 레벨로의 전송에 이상이 발생할 경우, 하위 리스트 관리부(340)로부터 하위 연결 정보를 읽어와 2레벨의 보우팅-중계형 브로커 단말기(230)에게 제공해 준다.When it is determined that the abnormal level between the
따라서, 2레벨 차일드의 보우팅-중계형 브로커 단말기(230)는 1레벨 패어런트의 중계형 브로커 단말기(220)와 연결을 종료하고, 자신에 대해 차일드 레벨인 3레벨의 보우팅형 브로커 단말기(242)로 전환한다(S514). 즉, 설정값의 임계치를 비교하여 임계치를 초과할 경우에 전송 경로 설정의 레벨 다운(Level Down)이 발생하게 되는 것이다.Accordingly, the two-level child's bowling-
이어, 보우팅형 브로커 단말기(242)는 중계형 브로커 단말기(220)로부터 수신했던 하위 연결 정보를 상위리스트 관리부(420)에 상위 연결 정보로 저장하고, 상위 연결 정보를 근거로 2레벨의 패어런트 단말기 중에 가장 빠른 전송 경로의 보우팅-중계형 브로커 단말기(232)와 새로운 연결을 설정한다(S516).Subsequently, the bowing
따라서, 보우팅형 브로커 단말기(242)는 가장 빠른 전송 경로의 새로운 보우 팅-중계형 브로커 단말기(232)를 통해 멀티미디어 스트림을 끊김이 없이 안전하게 수신할 수 있게 되는 것이다.Accordingly, the bowing
도 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
차일드 레벨의 보우팅형 브로커 단말기(240)는 메인 서버(210)로부터 중계형 브로커 단말기(220) 및 패어런트 레벨의 보우팅-중계형 브로커 단말기(230)를 통해 멀티미디어 스트림을 수신한다(S602).The child level
차일드 단말기로서의 보우팅형 브로커 단말기(240)는 서브 스트림으로 수신되는 각각의 오디오 전송 경로에 대하여, 전송량과 속도를 비교하여 가장 우수한 전송 경로부터 경로(Path) 리스트로서 상위 리스트 관리부(420)에 저장 관리한다(S604).As the child terminal, the bowing
이후, 보우팅형 브로커 단말기(240)는 멀티미디어 스트림을 수신하는 중에 지연(Latency)이나 연결 끊김 등의 이상이 있는지를 판단한다(S606).Thereafter, the
멀티미디어 스트림의 수신에 이상이 발생한 경우, 보우팅형 브로커 단말기(240)는 비디오 스트림의 전송 경로를 비롯한 다른 모든 오디오 전송 경로에 대하 여, 각각의 경로에 대한 지연값을 얻어 전체적인 지연 평균값(Average Latency)을 구하고, 플래그 값(UpCount)을 증가시켜 임계 설정값을 초과하는지를 판단하여, 상위 패어런트 단말기와 자신만의 이상인지 아니면 전체 수신 경로에 이상이 있는지를 판단한다(S608). 여기서, 지연 평균값이 전체 전송 경로의 1/2 이상인 경우에 패어런트 레벨의 보우팅-중계형 브로커 단말기(230)를 통해 수신하는 전반적인 수신 경로의 연결 상황이 좋지 않다고 인식한다.In case of an abnormality in the reception of the multimedia stream, the bowing
플래그 값을 증가시켜 임계 설정값과 비교하여 임계치를 초과한 경우(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
따라서, 3레벨 차일드의 보우팅형 브로커 단말기(240)는 2레벨 패어런트의 첫번째 보우팅-중계형 브로커 단말기(230)와의 연결을 종료하고, 자신에 대해 패어런트 레벨인 2레벨의 두번째 보우팅-중계형 브로커 단말기(232)로 전환한다(S614).Accordingly, the three-level child's
이어, 새로운 보우팅-중계형 브로커 단말기(232)는 이전 중계형 브로커 단말기(220)로부터 수신했던 상위(Senior) 연결 정보를 근거로 1레벨의 중계형 브로커 단말기 중에 가장 빠른 전송 경로의 새로운 중계형 브로커 단말기(222)와 새로운 연결을 설정한다(S616).Subsequently, the new bowing-
따라서, 최하위 차일드 레벨의 보우팅형 브로커 단말기(240)가 상위 패어런 트 레벨의 보우팅-중계형 브로커 단말기(232)로 레벨 업되고, 상위 1레벨에 대해 차일드 레벨이었던 보우팅-중계형 브로커 단말기(230)는 상위 패어런트 레벨과의 관계를 판단한 후 중계형 브로커 단말기(222)와 다이나믹 라우팅을 하게 된다.Thus, the lowest child 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-
차일드 레벨의 보우팅-중계형 브로커 단말기(230)는 메인 서버(210)로부터 패어런트 레벨의 중계형 브로커 단말기(220)를 통해 멀티미디어 스트림을 수신하되, 비디오 스트림은 첫번째 중계형 브로커 단말기(220)를 통해 수신하고, 오디오 스트림은 나머지 다른 중계형 브로커 단말기(222 ∼ 228)를 통해 수신한다(S702).The child level bowling-
차일드 단말기로서의 보우팅-중계형 브로커 단말기(230)는 서브 스트림으로 수신되는 각각의 오디오 전송 경로에 대하여, 전송량과 속도를 비교하여 가장 우수한 전송 경로부터 경로 리스트로서 상위 리스트 관리부(420)에 저장 관리한다(S704).As the child terminal, the bowing-
이후, 보우팅-중계형 브로커 단말기(230)는 멀티미디어 스트림을 수신하는 중에 지연(Latency)이나 연결 끊김 등의 이상이 있는지를 판단한다(S706).Thereafter, the bowling-
멀티미디어 스트림을 수신하는 중에 이상이 발생한 경우, 보우팅-중계형 브로커 단말기(230)는 비디오 스트림의 전송 경로에 대하여 지연 평균값(Average Latency)을 구하고, 플래그 값을 증가시켜 레벨 쉬프트(ShiftCount) 임계 설정값을 초과했는지를 판단한다(S708). If an abnormality occurs while receiving the multimedia stream, the bowing- broker
플래그 값이 레벨 쉬프트 임계 설정값을 초과한 것으로 판단된 경우(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-
따라서, 보우팅-중계형 브로커 단말기(230)가 멀티미디어 스트림을 수신하는 중에 이상이 발생하게 될 경우, 비디오 경로에 대하여 지연 평균값을 구하고, 플래그 값을 증가시켜 레벨 쉬프트 임계값을 초과할 경우에, 상위 레벨의 패어런트 단말기를 쉬프트하여 새로운 연결을 설정함으로써, 멀티미디어 스트림의 수신을 끊임없이 계속적으로 수행할 수 있게 된다.Accordingly, when an abnormality occurs while receiving the multimedia stream, the bowing-
또한, 멀티미디어 스트림의 수신 경로가 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
한편, 중계형 브로커 단말기나 보우팅형 브로커 단말기는 한 개의 오디오 전송 경로가 비디오 전송 경로로 전환되면, 오디오 데이터의 수신을 위해 나머지 예비 경로 중 하나를 오디오 전송 경로에 추가시킨다. 따라서, 항상 최적의 중계자 후보를 대기시킴으로써 멀티미디어 스트림의 대용량 데이터를 보다 빠르게 수신할 수 있다.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)
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)
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004080434A (en) | 2002-08-19 | 2004-03-11 | Anritsu Corp | Network relay device |
-
2004
- 2004-09-10 KR KR1020040072488A patent/KR100628339B1/en not_active IP Right Cessation
Cited By (5)
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 |